@lap v0.3
# Machine-readable API spec. Each @endpoint block is one API call.
@api Single Sign-On Overview
@base https://api.frontegg.com/team
@version 1.0
@auth Bearer bearer
@endpoints 29
@hint download_for_search
@toc resources(29)

@endpoint GET /resources/sso/v1/saml/configurations/vendor-config
@returns(200)

@endpoint GET /resources/sso/v1/saml/configurations/sp-certificate
@returns(200)

@endpoint GET /resources/sso/v1/saml/configurations/sp-metadata
@required {frontegg-tenant-id: str}
@returns(200)

@endpoint POST /resources/sso/v1/configurations
@required {frontegg-tenant-id: str, enabled: bool, ssoEndpoint: str, publicCertificate: str, signRequest: bool, acsUrl: str, spEntityId: str, type: str, oidcClientId: str, oidcSecret: str, configMetadata: map, overrideActiveTenant: bool, subAccountAccessLimit: num, idpClientId: str, idpClientSecret: str}
@returns(201)

@endpoint GET /resources/sso/v1/configurations
@required {frontegg-tenant-id: str}
@returns(200)

@endpoint DELETE /resources/sso/v1/configurations/{configurationId}
@required {frontegg-tenant-id: str, configurationId: str}
@returns(200)

@endpoint PATCH /resources/sso/v1/configurations/{configurationId}
@required {frontegg-tenant-id: str, configurationId: str, enabled: bool, ssoEndpoint: str, publicCertificate: str, signRequest: bool, acsUrl: str, spEntityId: str, type: str, oidcClientId: str, oidcSecret: str, configMetadata: map, overrideActiveTenant: bool, subAccountAccessLimit: num, idpClientId: str, idpClientSecret: str}
@returns(200)

@endpoint POST /resources/sso/v1/configurations/metadata
@required {frontegg-tenant-id: str, metadata: str}
@returns(201)

@endpoint PUT /resources/sso/v1/configurations/{configurationId}/metadata
@required {frontegg-tenant-id: str, configurationId: str, metadata: str}
@returns(200)

@endpoint POST /resources/sso/v1/configurations/{configurationId}/domains
@required {frontegg-tenant-id: str, configurationId: str}
@returns(201)

@endpoint DELETE /resources/sso/v1/configurations/{configurationId}/domains/{domainId}
@required {frontegg-tenant-id: str, configurationId: str, domainId: str}
@returns(200)

@endpoint PUT /resources/sso/v1/configurations/{configurationId}/domains/{domainId}/validate/email
@required {frontegg-tenant-id: str, configurationId: str, domainId: str}
@returns(200)

@endpoint PUT /resources/sso/v2/configurations/{configurationId}/domains/{domainId}/validate
@required {frontegg-tenant-id: str, configurationId: str, domainId: str}
@returns(200)

@endpoint PUT /resources/sso/v1/configurations/{configurationId}/roles
@required {frontegg-tenant-id: str, configurationId: str, roleIds: [str]}
@returns(201)

@endpoint GET /resources/sso/v1/configurations/{configurationId}/roles
@required {frontegg-tenant-id: str, configurationId: str}
@returns(200)

@endpoint POST /resources/sso/v1/configurations/{configurationId}/groups
@required {frontegg-tenant-id: str, configurationId: str, group: str, roleIds: [str]}
@returns(201)

@endpoint GET /resources/sso/v1/configurations/{configurationId}/groups
@required {frontegg-tenant-id: str, configurationId: str}
@returns(200)

@endpoint PATCH /resources/sso/v1/configurations/{configurationId}/groups/{groupId}
@required {frontegg-tenant-id: str, configurationId: str, groupId: str, group: str, roleIds: [str]}
@returns(200)

@endpoint DELETE /resources/sso/v1/configurations/{configurationId}/groups/{groupId}
@required {frontegg-tenant-id: str, configurationId: str, groupId: str}
@returns(200)

@endpoint POST /resources/sso/v1/configurations/excluded-emails
@required {email: str}
@returns(201)

@endpoint GET /resources/sso/v1/configurations/excluded-emails
@returns(200)

@endpoint DELETE /resources/sso/v1/configurations/excluded-emails/{email}
@required {email: str}
@returns(200)

@endpoint PUT /resources/sso/v1/configurations/domains/{domain}/force-validate
@required {domain: str}
@returns(200)

@endpoint GET /resources/sso/v1/configurations/multiple-sso-per-domain
@returns(200)

@endpoint PUT /resources/sso/v1/configurations/multiple-sso-per-domain
@required {unspecifiedTenantStrategy: str, active: bool, useActiveTenant: bool}
@returns(201)

@endpoint PUT /resources/sso/v1/configurations/domains
@required {allowVerifiedUsersToAddDomains: bool, skipDomainVerification: bool, bypassDomainCrossValidation: bool}
@returns(201)

@endpoint GET /resources/sso/v1/configurations/domains
@returns(200)

@endpoint GET /resources/sso/v1/oidc/configurations
@returns(201)

@endpoint POST /resources/sso/v1/oidc/configurations
@required {active: bool}
@optional {redirectUri: str}
@returns(201)

@end
