Référence APIRécupérer la configuration SSO du workspace
GET/v1/workspace/sso/providers

Récupérer la configuration SSO du workspace

Retourne la configuration SSO SAML locale du workspace courant, croisée avec l'état réel du provider côté Supabase.

2 min de lectureTélécharger en PDF

Réponse exemple

{
"plan": "entreprise",
"local": {
"domains": [
"acme-corp.com",
"acme.fr"
],
"enabled": true,
"created_at": "2026-05-20T11:02:44.000Z",
"updated_at": "2026-05-28T09:14:02.000Z",
"workspace_id": "ws_8f3a21c0",
"last_tested_at": "2026-05-28T09:14:02.000Z",
"idp_metadata_url": "https://login.acme-corp.com/saml/metadata",
"last_test_result": "success",
"supabase_provider_id": "b1d4e8a2-7c9f-4a31-9e10-5d2c0f6a8b44"
},
"entreprise": true,
"workspace_id": "ws_8f3a21c0",
"supabase_provider": {
"id": "b1d4e8a2-7c9f-4a31-9e10-5d2c0f6a8b44",
"saml": {
"entity_id": "https://login.acme-corp.com/saml/metadata",
"metadata_url": "https://login.acme-corp.com/saml/metadata"
},
"domains": [
{
"domain": "acme-corp.com",
"created_at": "2026-05-20T11:02:44.000Z"
},
{
"domain": "acme.fr",
"created_at": "2026-05-20T11:02:44.000Z"
}
],
"created_at": "2026-05-20T11:02:44.000Z",
"updated_at": "2026-05-28T09:14:02.000Z"
}
}
GET/v1/workspace/sso/providersLit la configuration SSO SAML du workspace dont l'utilisateur authentifié est owner.

Ce point d'accès retourne la configuration SSO SAML du workspace actif de l'utilisateur. Il résout d'abord le premier workspace dont l'utilisateur est owner (statut de membership active), puis lit la ligne unique stockée localement dans coffrify_sso_configs (une seule configuration SSO par workspace). Pour éviter toute dérive, la réponse croise cette config locale avec la Supabase Management API : si un supabase_provider_id est enregistré localement, le handler interroge la liste réelle des providers du projet et joint l'objet correspondant. Si l'appel Management échoue, l'erreur est journalisée côté serveur mais la réponse reste un 200 avec supabase_provider à null (dégradation gracieuse).

Comportement notable : contrairement à POST, le GET n'exige pas le plan Entreprise. Le champ entreprise de la réponse indique simplement si le plan courant ouvre droit au SSO, ce qui permet à l'interface d'afficher l'état même sur un plan non éligible.

Authentification

Requiert une session utilisateur valide (cookie d'authentification Supabase, via requireUser). Aucun scope spécifique n'est requis, mais l'utilisateur doit être owner d'au moins un workspace : à défaut, l'accès est refusé. Une requête non authentifiée renvoie 401.

Paramètres de requête

Aucun paramètre de requête (query string) n'est lu. Le workspace est déterminé automatiquement à partir de l'utilisateur authentifié (premier workspace où il est owner).

Réponse

La réponse 200 contient l'identifiant et le plan du workspace résolu, un drapeau d'éligibilité, et les deux vues de la configuration SSO :

ChampTypeDescription
workspace_idstringIdentifiant du workspace résolu (premier workspace dont l'utilisateur est owner).
planstringPlan courant du workspace (ex. entreprise).
entreprisebooleantrue si le plan ouvre droit au SSO (entreprise ou enterprise).
localobject | nullLigne coffrify_sso_configs : workspace_id, supabase_provider_id, domains, enabled, idp_metadata_url, last_tested_at, last_test_result, created_at, updated_at. null si aucune config.
supabase_providerobject | nullProvider réel renvoyé par la Supabase Management API (id, created_at, updated_at, saml, domains), ou null si introuvable, non configuré, ou si l'appel Management a échoué.

Erreurs

CodeQuandRésolution
401Aucune session utilisateur valide.Authentifiez-vous et réessayez avec un cookie de session valide.
403L'utilisateur n'est owner d'aucun workspace (Workspace introuvable ou vous n'êtes pas owner).Utilisez un compte owner du workspace cible.

Voir aussi