Set the org’s own app at a sign-in provider
The app is the org’s, for every brand without its own. The app at the provider must register every one of `redirect_uris` exactly: each live brand’s own callback, on its issuer’s host. A brand made later adds its own, which the answer that makes it names. Checks the client id and secret with the provider first (a token request it refuses for the code, not the app, when it takes them), then keeps them in place of any before. Microsoft's needs Entra's `auth_time` optional claim turned on, or a fresh sign-in through it is refused. Apple takes no `client_secret`: send its Services ID as `client_id` with `team_id`, `key_id` and the `.p8` `private_key`, from which Synq signs each client secret it sends Apple. Apple delivers mail to private relay addresses only from domains registered with the app, so register the domain Synq sends your brands' email from (the domain of their sender address) under Sign in with Apple for Email Communication, or Synq's email to people who hid their address bounces. Every other provider takes `client_id` and `client_secret`. Recorded as `org.updated` (or `brand.updated`) with the client id, never the secret. 422 `connection_rejected` when the provider refuses the app; 503 when it can't be reached; at most 10 a minute per org (429). Needs `org.connections.edit`, and a plan with `auth.byo_connections` (403 `plan_feature_unavailable` otherwise, naming the plan in `required_plan`); forgetting one never does.
/v1/orgs/{org}/sign-in-providers/{provider}/appThe app is the org’s, for every brand without its own. The app at the provider must register every one of redirect_uris exactly: each live brand’s own callback, on its issuer’s host. A brand made later adds its own, which the answer that makes it names. Checks the client id and secret with the provider first (a token request it refuses for the code, not the app, when it takes them), then keeps them in place of any before. Microsoft's needs Entra's auth_time optional claim turned on, or a fresh sign-in through it is refused. Apple takes no client_secret: send its Services ID as client_id with team_id, key_id and the .p8 private_key, from which Synq signs each client secret it sends Apple. Apple delivers mail to private relay addresses only from domains registered with the app, so register the domain Synq sends your brands' email from (the domain of their sender address) under Sign in with Apple for Email Communication, or Synq's email to people who hid their address bounces. Every other provider takes client_id and client_secret. Recorded as org.updated (or brand.updated) with the client id, never the secret. 422 connection_rejected when the provider refuses the app; 503 when it can't be reached; at most 10 a minute per org (429). Needs org.connections.edit, and a plan with auth.byo_connections (403 plan_feature_unavailable otherwise, naming the plan in required_plan); forgetting one never does.
Authorization
bearer An org API key (sk_live_…, sk_test_…), or an access token from the Synq issuer (the synq brand, on the accounts host) for this API.
In: header
Path Parameters
Value in
- "google"
- "github"
- "microsoft"
- "apple"
- "facebook"
- "x"
- "discord"
- "telegram"
- "matrica"
Request Body
application/json
TypeScript Definitions
Use the request body type in TypeScript.
Response Body
application/json
application/problem+json
application/problem+json
application/problem+json
application/problem+json
application/problem+json
application/problem+json
curl -X PUT "https://example.com/v1/orgs/string/sign-in-providers/google/app" \ -H "Content-Type: application/json" \ -d '{ "client_id": "string" }'{ "client_id": "string", "redirect_uris": [ "string" ], "updated_at": "2019-08-24T14:15:22Z"}Set a brand’s own app at a sign-in provider PUT
The app is the brand’s own, which wins over the org’s. The app at the provider must register `redirect_uri` exactly: the brand’s own callback, on its issuer’s host. Checks the client id and secret with the provider first (a token request it refuses for the code, not the app, when it takes them), then keeps them in place of any before. Microsoft's needs Entra's `auth_time` optional claim turned on, or a fresh sign-in through it is refused. Apple takes no `client_secret`: send its Services ID as `client_id` with `team_id`, `key_id` and the `.p8` `private_key`, from which Synq signs each client secret it sends Apple. Apple delivers mail to private relay addresses only from domains registered with the app, so register the domain Synq sends your brands' email from (the domain of their sender address) under Sign in with Apple for Email Communication, or Synq's email to people who hid their address bounces. Every other provider takes `client_id` and `client_secret`. Recorded as `org.updated` (or `brand.updated`) with the client id, never the secret. 422 `connection_rejected` when the provider refuses the app; 503 when it can't be reached; at most 10 a minute per org (429). Needs `org.connections.edit`, and a plan with `auth.byo_connections` (403 `plan_feature_unavailable` otherwise, naming the plan in `required_plan`); forgetting one never does.
Check a slug GET
Whether an org could take it as its slug, and a brand as its issuer slug. A new org needs both, unless it names its default brand's issuer slug.