Returns all identity providers with the provided protocol and type in the specified federation. If no protocol is specified, only SAML identity providers will be returned. If no idpType is specified, only WORKFORCE identity providers will be returned. To use this resource, the requesting Service Account or API Key must have the Organization Owner role in one of the connected organizations.
Unique 24-hexadecimal digit string that identifies your federation.
Format should match the following pattern: ^([a-f0-9]{24})$.
Flag that indicates whether Application wraps the response in an envelope JSON object. Some API clients cannot access the HTTP response headers or status code. To remediate this, set envelope=true in the query. Endpoints that return a list of results use the results object as an envelope. Application adds the status parameter to the response body.
Default value is false.
Number of items that the response returns per page.
Minimum value is 1, maximum value is 500. Default value is 100.
Number of the page that displays the current set of the total objects that the response returns.
Minimum value is 1. Default value is 1.
The protocols of the target identity providers.
Values are SAML or OIDC. Default value is SAML.
The types of the target identity providers.
Values are WORKFORCE or WORKLOAD. Default value is WORKFORCE.
atlas api federatedAuthentication listIdentityProviders --help
import (
"os"
"context"
"log"
sdk "go.mongodb.org/atlas-sdk/v20250312001/admin"
)
func main() {
ctx := context.Background()
clientID := os.Getenv("MONGODB_ATLAS_CLIENT_ID")
clientSecret := os.Getenv("MONGODB_ATLAS_CLIENT_SECRET")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.ListFederationSettingIdentityProvidersApiParams{}
sdkResp, httpResp, err := client.FederatedAuthenticationApi.
ListFederationSettingIdentityProvidersWithParams(ctx, params).
Execute()
}
curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/federationSettings/{federationSettingsId}/identityProviders?pretty=true"
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/federationSettings/{federationSettingsId}/identityProviders?pretty=true"
# Headers
# Payload
{
"links": [
{
"href": "https://cloud.mongodb.com/api/atlas",
"rel": "self"
}
],
"results": [
{
"associatedOrgs": [
{
"dataAccessIdentityProviderIds": [
"string"
],
"domainAllowList": [
"string"
],
"domainRestrictionEnabled": true,
"identityProviderId": "string",
"instantUserProvisioningDisabled": true,
"orgId": "32b6e34b3d91647abb20e7b8",
"postAuthRoleGrants": [
"ORG_OWNER"
],
"roleMappings": [
{
"externalGroupName": "string",
"id": "32b6e34b3d91647abb20e7b8",
"roleAssignments": [
{
"groupId": "32b6e34b3d91647abb20e7b8",
"orgId": "32b6e34b3d91647abb20e7b8",
"role": "string"
}
]
}
],
"userConflicts": [
{
"emailAddress": "hello@example.com",
"federationSettingsId": "32b6e34b3d91647abb20e7b8",
"firstName": "string",
"lastName": "string",
"userId": "32b6e34b3d91647abb20e7b8"
}
]
}
],
"createdAt": "2026-05-04T09:42:00Z",
"description": "string",
"displayName": "string",
"id": "32b6e34b3d91647abb20e7b8",
"idpType": "WORKFORCE",
"issuerUri": "string",
"oktaIdpId": "string",
"protocol": "SAML",
"updatedAt": "2026-05-04T09:42:00Z",
"acsUrl": "string",
"associatedDomains": [
"string"
],
"audienceUri": "string",
"pemFileInfo": {
"certificates": [
{
"notAfter": "2026-05-04T09:42:00Z",
"notBefore": "2026-05-04T09:42:00Z"
}
],
"fileName": "string"
},
"requestBinding": "HTTP-POST",
"responseSignatureAlgorithm": "SHA-1",
"slug": "string",
"ssoDebugEnabled": true,
"ssoUrl": "string",
"status": "ACTIVE"
}
],
"totalCount": 42
}
{
"detail": "(This is just an example, the exception may not be related to this endpoint) No provider AWS exists.",
"error": 400,
"errorCode": "VALIDATION_ERROR",
"reason": "Bad Request"
}
{
"detail": "(This is just an example, the exception may not be related to this endpoint)",
"error": 401,
"errorCode": "NOT_ORG_GROUP_CREATOR",
"reason": "Unauthorized"
}
{
"detail": "(This is just an example, the exception may not be related to this endpoint)",
"error": 403,
"errorCode": "CANNOT_CHANGE_GROUP_NAME",
"reason": "Forbidden"
}
{
"detail": "(This is just an example, the exception may not be related to this endpoint) Cannot find resource AWS",
"error": 404,
"errorCode": "RESOURCE_NOT_FOUND",
"reason": "Not Found"
}
{
"detail": "(This is just an example, the exception may not be related to this endpoint)",
"error": 429,
"errorCode": "RATE_LIMITED",
"reason": "Too Many Requests"
}
{
"detail": "(This is just an example, the exception may not be related to this endpoint)",
"error": 500,
"errorCode": "UNEXPECTED_ERROR",
"reason": "Internal Server Error"
}