Docs
Connexion partenaire →

Référence de l’API partenaires

Accès

Obtenir un jeton pour une organisation qui a connecté l'application, puis lire ce que ce jeton ouvre : l'organisation, les sites et les droits effectifs. Le jeton vaut 60 minutes ; réutilisez-le jusqu'à son expiration plutôt que d'en demander un à chaque appel.

Lire ce que le jeton ouvre

GET/api/partner/v1/me#

Tout jeton valide

Rend l'application, l'organisation, les sites ouverts et les droits effectifs du jeton. Premier appel conseillé après l'obtention d'un jeton : il donne les identifiants de sites à passer aux écritures quand l'organisation en a ouvert plusieurs. Aucun droit particulier n'est exigé.

Réponse

200L'application, l'organisation, les sites et les droits.

Champs de la réponse (5)
appobject

L'application partenaire.

iduuid

Identifiant de l'application.

namestring

Nom de l'application, tel que les cliniques le voient.

companystring

Éditeur.

peut être null
environmentenum

SANDBOX : application de recette, connectable seulement à une organisation de test qui n'envoie aucun email ni SMS. LIVE : production.

SANDBOXLIVE
organizationobject

L'organisation qui a connecté l'application.

iduuid

Identifiant de l'organisation.

namestring

Nom de l'organisation.

peut être null
sitesobject[]

Sites ouverts à l'application. Toute lecture se limite à ces sites ; une ressource d'un autre site répond 404.

iduuid

Identifiant du site.

namestring

Nom du site.

scopesstring[]

Droits effectifs : ceux que l'organisation a accordés, dans la limite de ceux que Treats a ouverts à l'application.

grantobject

L'autorisation donnée par l'organisation.

iduuid

Identifiant de l'autorisation.

allSitesboolean

true : tous les sites de l'organisation, y compris ceux ouverts plus tard.

grantedAtdate-time

Date de l'autorisation.

Erreurs propres à cette opération

401 INVALID_TOKEN

Jeton inconnu, expiré, ou dont l'autorisation a été retirée (UNAUTHORIZED : jeton absent).

Et les erreurs communes à toutes les opérations : erreurs et limites.

Obtenir un jeton d'accès

POST/api/partner/v1/oauth/token#

Sans jeton

Échange les identifiants de l'application contre un jeton pour UNE organisation (OAuth 2, client_credentials). Les identifiants passent dans le corps (client_id, client_secret) ou en HTTP Basic ; le corps est un formulaire (application/x-www-form-urlencoded, la norme OAuth) ou du JSON. L'organisation doit avoir connecté l'application, sinon unauthorized_client.

Le jeton est opaque, vaut 60 minutes et porte les droits de l'autorisation au moment de l'appel. Il est relu à chaque appel : une autorisation retirée, un droit retiré ou une application suspendue mordent tout de suite. Demandes de jeton plafonnées à 60 par minute et par adresse IP, et 30 par minute et par application (429, Retry-After). Seule route de l'API dont les erreurs suivent le format OAuth (TokenError) et non l'enveloppe commune.

Corps de la requête application/x-www-form-urlencoded

grant_typeenumrequis

Toujours client_credentials.

client_credentials
client_idstring

Identifiant de l'application (ou en HTTP Basic).

client_secretstring

Secret de l'application (ou en HTTP Basic). Rendu une seule fois par Treats ; à garder côté serveur.

organization_iduuidrequis

Organisation pour laquelle le jeton est demandé.

Réponse

200Jeton émis. En-têtes `Cache-Control: no-store`.

Champs de la réponse (5)
access_tokenstring

Jeton à passer en Authorization: Bearer … sur chaque appel.

token_typeenum

Toujours Bearer.

Bearer
expires_ininteger

Durée de validité en secondes (3600).

scopestring

Droits effectifs, séparés par des espaces.

organization_iduuid

Organisation du jeton.

Erreurs propres à cette opération

400 invalid_request

grant_type, client_id, client_secret ou organization_id absent ou illisible (treats_code : INVALID_REQUEST, INVALID_ORGANIZATION_ID, INVALID_BODY).

400 unsupported_grant_type

Autre grant_type que client_credentials.

401 invalid_client

Identifiant ou secret faux, secret retiré, ou application suspendue (treats_code : INVALID_CLIENT, PARTNER_APP_SUSPENDED).

403 unauthorized_client

L'organisation n'a pas connecté l'application, ou l'a déconnectée (treats_code : NO_GRANT).

429 slow_down

Trop de demandes de jeton (treats_code : RATE_LIMITED). Réutiliser le jeton : il vaut 60 minutes.

Et les erreurs communes à toutes les opérations : erreurs et limites.

esc
↵ ouvrir↑↓ naviguerrésultats limités à ce site