Resolve a team's sign-in providers
const url = 'https://api.deploybase.eu/api/v1/api/v1/public/sso/example';const options = {method: 'GET'};
try { const response = await fetch(url, options); const data = await response.json(); console.log(data);} catch (error) { console.error(error);}curl --request GET \ --url https://api.deploybase.eu/api/v1/api/v1/public/sso/exampleReturns a team’s display name and its ACTIVE identity provider connections, so the sign-in page can render one button per provider. No authentication required, and deliberately incurious: only a name, a slug and the Zitadel provider id each button needs are returned — never the issuer, the client id or the scopes. An unknown team, a team being deleted and a team with no active connection all answer 404 with the same code, so the endpoint cannot be used to discover which teams exist or which have SSO configured. Rate limited per IP.
Parameters
Section titled “ Parameters ”Path Parameters
Section titled “ Path Parameters ”Team slug or UUID
Responses
Section titled “ Responses ”OK
object
object
object
object
IdpID is the Zitadel provider configuration id, and it IS public on purpose: the browser needs it to start the IdP intent (POST /v2/idp_intents), exactly as the GitHub button does with an id that lives in a frontend environment variable. It authenticates nobody — starting an intent against it still requires completing a sign-in at the customer’s own provider.
object
Example generated
{ "data": { "connections": [ { "id": "example", "idp_id": "example", "name": "example" } ], "team": { "name": "example", "slug": "example" } }, "meta": { "request_id": "example", "timestamp": "example", "trace_id": "example" }}SSO_NOT_FOUND
object
object
Example generated
{ "code": "example", "details": "example", "error": "example", "meta": { "request_id": "example", "timestamp": "example", "trace_id": "example" }}Rate limit exceeded
object
object
Example generated
{ "code": "example", "details": "example", "error": "example", "meta": { "request_id": "example", "timestamp": "example", "trace_id": "example" }}Internal Server Error
object
object
Example generated
{ "code": "example", "details": "example", "error": "example", "meta": { "request_id": "example", "timestamp": "example", "trace_id": "example" }}