Docs

Query identity provider connections

POST
/idps/query

Returns the identity provider connections of a project, paginated with a cursor. One row per connection, carrying its newest revision.

Authorization

headerAuthorizationBearer <token>

Scope: idp.read

Query Parameters

project_id*string

The unique identifier of the project

Match^[a-zA-Z0-9_-]+$

Request Body

Request to query the identity provider connections of a project.

application/json
  1. body

Request to query the identity provider connections of a project.

limit?limit
Range1 <= value <= 100
Default20
page_token?|

Token to retrieve the next page of results. Must be sent with the same sorting as the request that issued the token. Omitting sorting reuses the default sort and only succeeds when that default matches the token.

sorting?

Sort order. Defaults to created_at ascending; id breaks ties either way.

filter?array<>

Filter criteria for querying connections. Combined with AND.

Response Body

The list of identity provider connections was returned successfully.

application/json
  1. response

Paginated list of identity provider connections.

idps*array<>
next_page_token?|

Token to pass as page_token in the next request to fetch the following page. Absent when there are no more results. The follow-up request must repeat the same sorting that produced this token (omit only when both pages use the default).

import { configureZitadel, getApi } from "@zitadel/api/config";// In the browser, through the SDK proxy: the session cookie authenticates the call.const client = getApi(configureZitadel({ projectId: "proj_01KWH1P4MYS7F0N9WD3P2E4YM5" }));const idps = await client.queryIdps(  {    limit: 2,    sorting: { field: "created_at", direction: "desc" },  },  { project_id: "proj_01KWH1P4MYS7F0N9WD3P2E4YM5" },);
Example Response
{  "idps": [    {      "id": "idp_01KWHG09JXA7F0N9WD3P2E4YM5",      "revision_id": "idprev_01KWHG3B72K7M7F0N9WD3P2E4Y",      "slug": "acme_sso",      "created_at": "2026-07-15T11:02:00Z",      "updated_at": "2026-07-15T11:02:00Z",      "definition": {        "slug": "acme_sso",        "protocol": "oidc",        "display_name": "Acme SSO",        "claim_mapping": {          "email": "email",          "givenName": "given_name",          "familyName": "family_name"        },        "verified_claims": {          "email": "email_verified"        },        "provisioning": {          "creation": "auto"        },        "oidc": {          "issuer": "https://sso.acme.example",          "authorization_endpoint": "https://sso.acme.example/authorize",          "token_endpoint": "https://sso.acme.example/token",          "jwks_uri": "https://sso.acme.example/keys",          "userinfo_endpoint": "https://sso.acme.example/userinfo",          "id_token_mapping": false,          "client_id": "${{ ACME_CLIENT_ID }}",          "client_secret": "${{ ACME_CLIENT_SECRET }}",          "token_endpoint_auth_method": "client_secret_basic",          "scopes": [            "openid",            "profile",            "email"          ],          "pkce_enabled": true        }      }    },    {      "id": "idp_01KWH3B72K7M7F0N9WD3P2E4YM",      "revision_id": "idprev_01KWHF2XY6RN7F0N9WD3P2E4YM",      "slug": "google",      "created_at": "2026-07-14T09:11:00Z",      "updated_at": "2026-07-16T14:20:00Z",      "definition": {        "slug": "google",        "protocol": "oidc",        "template": "google",        "display_name": "Google",        "subject_claim": "sub",        "claim_mapping": {          "email": "email",          "givenName": "given_name",          "familyName": "family_name"        },        "verified_claims": {          "email": "email_verified"        },        "provisioning": {          "creation": "auto"        },        "oidc": {          "issuer": "https://accounts.google.com",          "id_token_mapping": false,          "client_id": "${{ GOOGLE_CLIENT_ID }}",          "client_secret": "${{ GOOGLE_CLIENT_SECRET }}",          "token_endpoint_auth_method": "client_secret_basic",          "scopes": [            "openid",            "profile",            "email",            "https://www.googleapis.com/auth/user.phonenumbers.read"          ],          "pkce_enabled": true,          "static_authorize_parameters": {            "prompt": "select_account"          }        }      }    }  ],  "next_page_token": "v1.dGhpcyBpcyBvcGFxdWU.SflKxwRJSMeKKF2QT4fw"}

Was this helpful?