OAuthÉmettre un jeton d’accès

OAuth

Émettre un jeton d’accès

Échange des client_credentials, un authorization_code avec PKCE ou un refresh_token à usage unique contre un jeton opaque de 3600 s pour un Workspace.

POSThttps://api.sofia-post.com/api/v1/oauth/token

Corps

application/x-www-form-urlencoded, application/json

  • grant_typestringrequis

    Le grant à échanger : client_credentials, authorization_code ou refresh_token

    Valeurs autorisées : client_credentialsauthorization_coderefresh_token

  • client_idstringrequis

    Identifiant de l’application cliente

  • client_secretstring

    Secret d’un client confidentiel (client_secret_post), ou dans l’en-tête Authorization: Basic (client_secret_basic), jamais les deux ; aucun pour un client public

  • scopestring

    Permissions demandées, séparées par une espace ; absent : toutes celles du grant

  • workspace_idstring

    Le Workspace sur lequel agit le jeton : obligatoire quand l’application en détient plusieurs avec client_credentials, facultatif quand elle n’en a qu’un

  • codestring

    authorization_code : le code reçu à l’adresse de redirection

  • code_verifierstring

    authorization_code : le vérificateur PKCE (RFC 7636)

  • redirect_uristring

    authorization_code : la même adresse de redirection qu’à l’autorisation

  • refresh_tokenstring

    refresh_token : le refresh token, à usage unique

Réponse

200application/json

Le jeton d’accès, avec un refresh_token seulement si offline_access a été accordé.

  • access_tokenstringrequis

    Le jeton d’accès opaque

  • token_typestringrequis

    Toujours Bearer

    Valeurs autorisées : Bearer

  • expires_innumberrequis

    Durée de validité en secondes

  • scopestringrequis

    Renvoie une publication avec l’état de chaque réseau, son lien une fois publiée et son erreur éventuelle. En live, toute publication du Workspace ; en test, simulée.

  • refresh_tokenstring

    authorization_code et refresh_token seulement, quand offline_access a été accordé : à usage unique, il change à chaque échange

400

invalid_request, invalid_grant, unsupported_grant_type, invalid_scope ou unauthorized_client.

401

invalid_client : client inconnu, secret erroné ou absent, ou application révoquée.