Sign in with Apple is broken: any OAuth login attempt through the Apple provider
redirects to appleid.apple.com/auth/authorize and immediately fails with:
invalid_request
response_mode must be form_post when name or email scope is requested.
For Apple trailbase always request the name and email scopes, but the
authorization URL is built without response_mode=form_post (Apple requires form_post whenever any scope is requested).
On top of that, the OAuth callback only accepts GET requests, so form_post alone would not be enough - the
callback needs to accept the POST form redirect from Apple too.
Environment
- Docker image
trailbase/trailbase:0.33.1
- Apple provider type: Services ID (
client_id), client secret (JWT)
- Auth flow from the client:
/api/auth/v1/oauth/apple/login?redirect_uri=...&response_type=code&pkce_code_challenge=... (authorization code + PKCE)
Sign in with Apple is broken: any OAuth login attempt through the Apple provider
redirects to
appleid.apple.com/auth/authorizeand immediately fails with:For Apple trailbase always request the
nameandemailscopes, but theauthorization URL is built without
response_mode=form_post(Apple requiresform_postwhenever any scope is requested).On top of that, the OAuth callback only accepts GET requests, so
form_postalone would not be enough - thecallback needs to accept the POST form redirect from Apple too.
Environment
trailbase/trailbase:0.33.1client_id), client secret (JWT)/api/auth/v1/oauth/apple/login?redirect_uri=...&response_type=code&pkce_code_challenge=...(authorization code + PKCE)