---
title: "Discover the identity providers an email can log in through"
method: POST
path: "/auth/idp-discovery"
tags: ["Auth"]
---

# Discover the identity providers an email can log in through

`POST /auth/idp-discovery`

## Request

- Base URL: `https://api.carbonvoice.app`
- URL: `https://api.carbonvoice.app/auth/idp-discovery`
- Auth: none declared

Resolves the workspace mapped to the email's domain, or — when no domain is mapped — the IdPs of the workspaces the email is a member of. Public: the login screen calls it before there is a session, so an unknown email and an email without SSO return the same empty answer.

## Request body

- IdpDiscoveryRequest
  - `email` string, required: The email address typed on the login screen.

## Response `200`

- IdpDiscoveryResponse
  - `match` 'domain' | 'identity' | 'none', required
  - `providers` AuthenticationRequirement[], required
    - `workspace_id` string, required
    - `workspace_name` string, required
    - `authentication_provider_id` string, required
    - `keycloak_idp_alias` string, nullable

---

[API](https://skmtc.dev/carbonvoice/apis/carbon-voice-api.md) · [All operations](https://skmtc.dev/carbonvoice/apis/carbon-voice-api/llms.txt) · [OpenAPI document](https://skmtc.dev/carbonvoice/apis/carbon-voice-api/revisions/b91c5c845122?raw)
