ruby-authenticationlisted
Install: claude install-skill MuHamza30/paypal-api-plugin
# Authenticating an APIMatic Ruby SDK client
How you authenticate depends on the security scheme(s) the API uses. APIMatic surfaces **one named
parameter per scheme on `Client.new`**, and — for every scheme except custom authentication — **an
immutable credentials class to pass to it** (see `ruby-client-initialization`).
> **Custom authentication is the exception.** Its file holds only the scheme class (e.g.
> `class CustomAuth < CoreLibrary::HeaderAuth`), built from the whole configuration and shipped as a
> stub for the SDK's maintainer to complete. There is **no `{SchemeCredentials}` class to build**, even
> though the `{scheme}_credentials:` parameter still exists. Check the scheme's file for a credentials
> class before writing the call — a custom scheme means the SDK has to be completed or regenerated, not
> configured from your application.
## Finding which schemes this SDK accepts
Three places, in order of directness:
1. `lib/paypal_server_sdk/configuration.rb` — the credential parameters on `Configuration#initialize`.
**These are the source of truth**; the same parameters appear on `Client#initialize`.
2. `lib/paypal_server_sdk/http/auth/` — one file per scheme, each holding the scheme class and, for every
scheme but custom authentication, its `{SchemeCredentials}` data class. The credentials class is a
**sibling** of the scheme class in the same module, not nested inside it, so it is referenced as
`PaypalServerSdk::{SchemeCredentials}`. A file with