Sign in with Apple and passkeys are different offerings, so which you want to use depends on your use case. With Sign in with Apple, you're getting an entire federated account that is tied to a specific Apple ID, which (depending on your use of the API) may have its own concept of fields like the user's name or email address.
A passkey, however, is just a credential; like a much much more secure password. Passkeys aren't federated through a separate service, don't have any notion of account information (it's up to you to handle this), and can be shared among people who want to have access to the same account.
Which you use depends on what you're looking for for your accounts. You can create accounts that exclusively use one or the other, or support both, either way without any need for handling passwords.