openapi: "3.0.3" info: version: 1.40.0 title: FusionAuth API license: name: Apache2 servers: - url: http://localhost:9011 security: - ApiKeyAuth: [] components: schemas: TenantLambdaConfiguration: description: '' type: object properties: scimEnterpriseUserRequestConverterId: type: string format: uuid scimEnterpriseUserResponseConverterId: type: string format: uuid scimGroupRequestConverterId: type: string format: uuid scimGroupResponseConverterId: type: string format: uuid scimUserRequestConverterId: type: string format: uuid scimUserResponseConverterId: type: string format: uuid UserActionReason: description: Models action reasons. type: object properties: code: type: string id: type: string format: uuid insertInstant: "$ref": "#/components/schemas/ZonedDateTime" lastUpdateInstant: "$ref": "#/components/schemas/ZonedDateTime" localizedTexts: "$ref": "#/components/schemas/LocalizedStrings" text: type: string AuthenticationTokenConfiguration: type: object properties: enabled: type: boolean AuditLogCreateEvent: description: Event event to an audit log was created. type: object properties: auditLog: "$ref": "#/components/schemas/AuditLog" createInstant: "$ref": "#/components/schemas/ZonedDateTime" id: type: string format: uuid info: "$ref": "#/components/schemas/EventInfo" tenantId: type: string format: uuid type: "$ref": "#/components/schemas/EventType" FusionAuthConnectorConfiguration: description: Models the FusionAuth connector. type: object properties: data: type: object additionalProperties: type: object debug: type: boolean id: type: string format: uuid insertInstant: "$ref": "#/components/schemas/ZonedDateTime" lastUpdateInstant: "$ref": "#/components/schemas/ZonedDateTime" name: type: string type: "$ref": "#/components/schemas/ConnectorType" AuditLogRequest: description: '' type: object properties: auditLog: "$ref": "#/components/schemas/AuditLog" eventInfo: "$ref": "#/components/schemas/EventInfo" IPAccessControlList: description: '' type: object properties: data: type: object additionalProperties: type: object entries: type: array items: "$ref": "#/components/schemas/IPAccessControlEntry" id: type: string format: uuid insertInstant: "$ref": "#/components/schemas/ZonedDateTime" lastUpdateInstant: "$ref": "#/components/schemas/ZonedDateTime" name: type: string FormRequest: description: Form response. type: object properties: form: "$ref": "#/components/schemas/Form" UserCommentRequest: description: '' type: object properties: userComment: "$ref": "#/components/schemas/UserComment" DeleteConfiguration: type: object properties: numberOfDaysToRetain: type: integer enabled: type: boolean FormDataType: description: '' type: string enum: - bool - consent - date - email - number - string ApplicationRegistrationDeletePolicy: description: A Application-level policy for deleting Users. type: object properties: unverified: "$ref": "#/components/schemas/TimeBasedDeletePolicy" UserRegistrationDeleteEvent: description: Models the User Delete Registration Event. type: object properties: applicationId: type: string format: uuid registration: "$ref": "#/components/schemas/UserRegistration" user: "$ref": "#/components/schemas/User" createInstant: "$ref": "#/components/schemas/ZonedDateTime" id: type: string format: uuid info: "$ref": "#/components/schemas/EventInfo" tenantId: type: string format: uuid type: "$ref": "#/components/schemas/EventType" AccessToken: description: '' type: object properties: expires_in: type: integer id_token: type: string refresh_token: type: string refresh_token_id: type: string format: uuid scope: type: string access_token: type: string token_type: "$ref": "#/components/schemas/TokenType" userId: type: string format: uuid GroupMemberSearchRequest: description: Search request for Group Members. type: object properties: search: "$ref": "#/components/schemas/GroupMemberSearchCriteria" MultiFactorSMSTemplate: type: object properties: templateId: type: string format: uuid UserComment: description: A log for an event that happened to a User. type: object properties: comment: type: string commenterId: type: string format: uuid id: type: string format: uuid insertInstant: "$ref": "#/components/schemas/ZonedDateTime" userId: type: string format: uuid GroupDeleteCompleteEvent: description: Models the Group Create Complete Event. type: object properties: group: "$ref": "#/components/schemas/Group" createInstant: "$ref": "#/components/schemas/ZonedDateTime" id: type: string format: uuid info: "$ref": "#/components/schemas/EventInfo" tenantId: type: string format: uuid type: "$ref": "#/components/schemas/EventType" InstanceEvent: description: A marker interface indicating this event is not scoped to a tenant and will be sent to all webhooks. type: object properties: {} UserActionEvent: description: Models the user action Event. type: object properties: applicationIds: type: array items: type: string format: uuid action: type: string actionId: type: string format: uuid actioneeUserId: type: string format: uuid actionerUserId: type: string format: uuid comment: type: string email: "$ref": "#/components/schemas/Email" emailedUser: type: boolean expiry: "$ref": "#/components/schemas/ZonedDateTime" localizedAction: type: string localizedDuration: type: string localizedOption: type: string localizedReason: type: string notifyUser: type: boolean option: type: string phase: "$ref": "#/components/schemas/UserActionPhase" reason: type: string reasonCode: type: string createInstant: "$ref": "#/components/schemas/ZonedDateTime" id: type: string format: uuid info: "$ref": "#/components/schemas/EventInfo" tenantId: type: string format: uuid type: "$ref": "#/components/schemas/EventType" BreachedPasswordStatus: description: '' type: string enum: - None - ExactMatch - SubAddressMatch - PasswordOnly - CommonPassword SMSMessage: description: '' type: object properties: phoneNumber: type: string textMessage: type: string TwitterApplicationConfiguration: description: '' type: object properties: buttonText: type: string consumerKey: type: string consumerSecret: type: string data: type: object additionalProperties: type: object createRegistration: type: boolean LambdaConfiguration: type: object properties: accessTokenPopulateId: type: string format: uuid idTokenPopulateId: type: string format: uuid samlv2PopulateId: type: string format: uuid RegistrationUnverifiedOptions: description: '' type: object properties: behavior: "$ref": "#/components/schemas/UnverifiedBehavior" ConsentStatus: description: Models a consent. type: string enum: - Active - Revoked VerifyRegistrationRequest: description: '' type: object properties: oneTimeCode: type: string verificationId: type: string eventInfo: "$ref": "#/components/schemas/EventInfo" UserinfoResponse: description: '' type: object properties: {} EmailTemplate: description: Stores an email template used to send emails to users. type: object properties: defaultFromName: type: string defaultHtmlTemplate: type: string defaultSubject: type: string defaultTextTemplate: type: string fromEmail: type: string id: type: string format: uuid insertInstant: "$ref": "#/components/schemas/ZonedDateTime" lastUpdateInstant: "$ref": "#/components/schemas/ZonedDateTime" localizedFromNames: "$ref": "#/components/schemas/LocalizedStrings" localizedHtmlTemplates: "$ref": "#/components/schemas/LocalizedStrings" localizedSubjects: "$ref": "#/components/schemas/LocalizedStrings" localizedTextTemplates: "$ref": "#/components/schemas/LocalizedStrings" name: type: string UserEmailVerifiedEvent: description: Models the User Email Verify Event. type: object properties: user: "$ref": "#/components/schemas/User" createInstant: "$ref": "#/components/schemas/ZonedDateTime" id: type: string format: uuid info: "$ref": "#/components/schemas/EventInfo" tenantId: type: string format: uuid type: "$ref": "#/components/schemas/EventType" ApplicationAccessControlConfiguration: description: '' type: object properties: uiIPAccessControlListId: type: string format: uuid FormResponse: description: Form response. type: object properties: form: "$ref": "#/components/schemas/Form" forms: type: array items: "$ref": "#/components/schemas/Form" ApplicationMultiFactorTrustPolicy: description: '' type: string enum: - Any - This - None JSONWebKey: description: A JSON Web Key as defined by RFC 7517 JSON Web Key (JWK) Section 4 and RFC 7518 JSON Web Algorithms (JWA). type: object properties: alg: "$ref": "#/components/schemas/Algorithm" crv: type: string d: type: string dp: type: string dq: type: string e: type: string kid: type: string kty: "$ref": "#/components/schemas/KeyType" n: type: string other: type: object additionalProperties: type: object p: type: string q: type: string qi: type: string use: type: string x: type: string x5c: type: array items: type: string x5t: type: string x5t#S256: type: string y: type: string UserReactivateEvent: description: Models the User Reactivate Event. type: object properties: user: "$ref": "#/components/schemas/User" createInstant: "$ref": "#/components/schemas/ZonedDateTime" id: type: string format: uuid info: "$ref": "#/components/schemas/EventInfo" tenantId: type: string format: uuid type: "$ref": "#/components/schemas/EventType" OpenIdConfiguration: description: OpenID Connect Configuration as described by the OpenID Provider Metadata. type: object properties: authorization_endpoint: type: string backchannel_logout_supported: type: boolean claims_supported: type: array items: type: string device_authorization_endpoint: type: string end_session_endpoint: type: string frontchannel_logout_supported: type: boolean grant_types_supported: type: array items: type: string id_token_signing_alg_values_supported: type: array items: type: string issuer: type: string jwks_uri: type: string response_modes_supported: type: array items: type: string response_types_supported: type: array items: type: string scopes_supported: type: array items: type: string subject_types_supported: type: array items: type: string token_endpoint: type: string token_endpoint_auth_methods_supported: type: array items: type: string userinfo_endpoint: type: string userinfo_signing_alg_values_supported: type: array items: type: string UserSearchCriteria: description: This class is the user query. It provides a build pattern as well as public fields for use on forms and in actions. type: object properties: accurateTotal: type: boolean ids: type: array items: type: string format: uuid query: type: string queryString: type: string sortFields: type: array items: "$ref": "#/components/schemas/SortField" UserState: description: '' type: string enum: - Authenticated - AuthenticatedNotRegistered - AuthenticatedNotVerified - AuthenticatedRegistrationNotVerified RefreshToken: description: Models a JWT Refresh Token. type: object properties: applicationId: type: string format: uuid data: type: object additionalProperties: type: object id: type: string format: uuid insertInstant: "$ref": "#/components/schemas/ZonedDateTime" metaData: "$ref": "#/components/schemas/MetaData" startInstant: "$ref": "#/components/schemas/ZonedDateTime" tenantId: type: string format: uuid token: type: string userId: type: string format: uuid EntityGrantSearchCriteria: description: Search criteria for entity grants. type: object properties: entityId: type: string format: uuid name: type: string userId: type: string format: uuid numberOfResults: type: integer orderBy: type: string startRow: type: integer Email: description: This class is an abstraction of a simple email message. type: object properties: attachments: type: array items: "$ref": "#/components/schemas/Attachment" bcc: type: array items: "$ref": "#/components/schemas/EmailAddress" cc: type: array items: "$ref": "#/components/schemas/EmailAddress" from: "$ref": "#/components/schemas/EmailAddress" html: type: string replyTo: "$ref": "#/components/schemas/EmailAddress" subject: type: string text: type: string to: type: array items: "$ref": "#/components/schemas/EmailAddress" AuditLog: description: An audit log. type: object properties: data: type: object additionalProperties: type: object id: type: integer format: int64 insertInstant: "$ref": "#/components/schemas/ZonedDateTime" insertUser: type: string message: type: string newValue: type: object oldValue: type: object reason: type: string UserIdentityProviderLinkEvent: description: Models the User Identity Provider Link Event. type: object properties: identityProviderLink: "$ref": "#/components/schemas/IdentityProviderLink" user: "$ref": "#/components/schemas/User" createInstant: "$ref": "#/components/schemas/ZonedDateTime" id: type: string format: uuid info: "$ref": "#/components/schemas/EventInfo" tenantId: type: string format: uuid type: "$ref": "#/components/schemas/EventType" OAuthConfigurationResponse: description: '' type: object properties: httpSessionMaxInactiveInterval: type: integer logoutURL: type: string format: URI oauthConfiguration: "$ref": "#/components/schemas/OAuth2Configuration" PendingResponse: description: '' type: object properties: users: type: array items: "$ref": "#/components/schemas/User" SteamIdentityProvider: description: Steam gaming login provider. type: object properties: buttonText: type: string client_id: type: string scope: type: string webAPIKey: type: string data: type: object additionalProperties: type: object applicationConfiguration: type: object additionalProperties: "$ref": "#/components/schemas/SteamApplicationConfiguration" debug: type: boolean id: type: string format: uuid insertInstant: "$ref": "#/components/schemas/ZonedDateTime" lambdaConfiguration: "$ref": "#/components/schemas/ProviderLambdaConfiguration" lastUpdateInstant: "$ref": "#/components/schemas/ZonedDateTime" linkingStrategy: "$ref": "#/components/schemas/IdentityProviderLinkingStrategy" name: type: string tenantConfiguration: type: object additionalProperties: "$ref": "#/components/schemas/IdentityProviderTenantConfiguration" type: "$ref": "#/components/schemas/IdentityProviderType" GrantType: description: Authorization Grant types as defined by the The OAuth 2.0 Authorization Framework - RFC 6749.

Specific names as defined by OAuth 2.0 Dynamic Client Registration Protocol - RFC 7591 Section 4.1 type: string enum: - authorization_code - implicit - password - client_credentials - refresh_token - unknown - device_code GroupMember: description: A User's membership into a Group type: object properties: data: type: object additionalProperties: type: object groupId: type: string format: uuid id: type: string format: uuid insertInstant: "$ref": "#/components/schemas/ZonedDateTime" user: "$ref": "#/components/schemas/User" userId: type: string format: uuid UserUpdateEvent: description: Models the User Update Event. type: object properties: original: "$ref": "#/components/schemas/User" user: "$ref": "#/components/schemas/User" createInstant: "$ref": "#/components/schemas/ZonedDateTime" id: type: string format: uuid info: "$ref": "#/components/schemas/EventInfo" tenantId: type: string format: uuid type: "$ref": "#/components/schemas/EventType" LoginPreventedResponse: description: The summary of the action that is preventing login to be returned on the login response. type: object properties: actionId: type: string format: uuid actionerUserId: type: string format: uuid expiry: "$ref": "#/components/schemas/ZonedDateTime" localizedName: type: string localizedOption: type: string localizedReason: type: string name: type: string option: type: string reason: type: string reasonCode: type: string EntitySearchCriteria: description: This class is the entity query. It provides a build pattern as well as public fields for use on forms and in actions. type: object properties: accurateTotal: type: boolean ids: type: array items: type: string format: uuid query: type: string queryString: type: string sortFields: type: array items: "$ref": "#/components/schemas/SortField" ThemeRequest: description: Theme API request object. type: object properties: sourceThemeId: type: string format: uuid theme: "$ref": "#/components/schemas/Theme" PasswordlessSendRequest: description: '' type: object properties: applicationId: type: string format: uuid code: type: string loginId: type: string state: type: object additionalProperties: type: object UserLoginNewDeviceEvent: description: Models the User Login event for a new device (un-recognized) type: object properties: applicationId: type: string format: uuid authenticationType: type: string connectorId: type: string format: uuid identityProviderId: type: string format: uuid identityProviderName: type: string ipAddress: type: string user: "$ref": "#/components/schemas/User" KeyResponse: description: Key API response object. type: object properties: key: "$ref": "#/components/schemas/Key" keys: type: array items: "$ref": "#/components/schemas/Key" TwoFactorStartRequest: description: '' type: object properties: applicationId: type: string format: uuid code: type: string loginId: type: string state: type: object additionalProperties: type: object trustChallenge: type: string userId: type: string format: uuid GroupCreateEvent: description: Models the Group Create Event. type: object properties: group: "$ref": "#/components/schemas/Group" createInstant: "$ref": "#/components/schemas/ZonedDateTime" id: type: string format: uuid info: "$ref": "#/components/schemas/EventInfo" tenantId: type: string format: uuid type: "$ref": "#/components/schemas/EventType" ConnectorPolicy: description: '' type: object properties: connectorId: type: string format: uuid data: type: object additionalProperties: type: object domains: type: array uniqueItems: true items: {} migrate: type: boolean FormField: description: '' type: object properties: confirm: type: boolean consentId: type: string format: uuid control: "$ref": "#/components/schemas/FormControl" data: type: object additionalProperties: type: object description: type: string id: type: string format: uuid insertInstant: "$ref": "#/components/schemas/ZonedDateTime" key: type: string lastUpdateInstant: "$ref": "#/components/schemas/ZonedDateTime" name: type: string options: type: array items: type: string required: type: boolean type: "$ref": "#/components/schemas/FormDataType" validator: "$ref": "#/components/schemas/FormFieldValidator" FamilyConfiguration: description: '' type: object properties: allowChildRegistrations: type: boolean confirmChildEmailTemplateId: type: string format: uuid deleteOrphanedAccounts: type: boolean deleteOrphanedAccountsDays: type: integer familyRequestEmailTemplateId: type: string format: uuid maximumChildAge: type: integer minimumOwnerAge: type: integer parentEmailRequired: type: boolean parentRegistrationEmailTemplateId: type: string format: uuid enabled: type: boolean TwitchApplicationConfiguration: description: '' type: object properties: buttonText: type: string client_id: type: string client_secret: type: string scope: type: string data: type: object additionalProperties: type: object createRegistration: type: boolean DisplayableRawLogin: description: A displayable raw login that includes application name and user loginId. type: object properties: applicationName: type: string location: "$ref": "#/components/schemas/Location" loginId: type: string SAMLv2SingleLogout: type: object properties: keyId: type: string format: uuid url: type: string format: URI xmlSignatureC14nMethod: "$ref": "#/components/schemas/CanonicalizationMethod" enabled: type: boolean OpenIdConnectApplicationConfiguration: description: '' type: object properties: buttonImageURL: type: string format: URI buttonText: type: string oauth2: "$ref": "#/components/schemas/IdentityProviderOauth2Configuration" data: type: object additionalProperties: type: object createRegistration: type: boolean ApplicationFormConfiguration: description: '' type: object properties: adminRegistrationFormId: type: string format: uuid selfServiceFormId: type: string format: uuid TimeBasedDeletePolicy: description: A policy for deleting Users. type: object properties: numberOfDaysToRetain: type: integer enabled: type: boolean ReactorFeatureStatus: description: '' type: string enum: - ACTIVE - DISCONNECTED - PENDING - DISABLED - UNKNOWN RefreshRequest: description: '' type: object properties: refreshToken: type: string token: type: string eventInfo: "$ref": "#/components/schemas/EventInfo" UserLoginIdDuplicateOnCreateEvent: description: Models an event where a user is being created with an "in-use" login Id (email or username). type: object properties: duplicateEmail: type: string duplicateUsername: type: string existing: "$ref": "#/components/schemas/User" user: "$ref": "#/components/schemas/User" createInstant: "$ref": "#/components/schemas/ZonedDateTime" id: type: string format: uuid info: "$ref": "#/components/schemas/EventInfo" tenantId: type: string format: uuid type: "$ref": "#/components/schemas/EventType" LoginRequest: description: Login API request object. type: object properties: loginId: type: string oneTimePassword: type: string password: type: string twoFactorTrustId: type: string applicationId: type: string format: uuid ipAddress: type: string metaData: "$ref": "#/components/schemas/MetaData" newDevice: type: boolean noJWT: type: boolean RecentLoginResponse: description: Response for the user login report. type: object properties: logins: type: array items: "$ref": "#/components/schemas/DisplayableRawLogin" UserConsentRequest: description: API response for User consent. type: object properties: userConsent: "$ref": "#/components/schemas/UserConsent" FamilyEmailRequest: description: API request for sending out family requests to parent's. type: object properties: parentEmail: type: string EntitySearchRequest: description: Search request for entities type: object properties: search: "$ref": "#/components/schemas/EntitySearchCriteria" RequiresCORSConfiguration: description: Interface describing the need for CORS configuration. type: object properties: {} AuditLogResponse: description: Audit log response. type: object properties: auditLog: "$ref": "#/components/schemas/AuditLog" SteamApplicationConfiguration: description: '' type: object properties: buttonText: type: string client_id: type: string scope: type: string webAPIKey: type: string data: type: object additionalProperties: type: object createRegistration: type: boolean TenantMultiFactorConfiguration: description: '' type: object properties: authenticator: "$ref": "#/components/schemas/MultiFactorAuthenticatorMethod" email: "$ref": "#/components/schemas/MultiFactorEmailMethod" loginPolicy: "$ref": "#/components/schemas/MultiFactorLoginPolicy" sms: "$ref": "#/components/schemas/MultiFactorSMSMethod" XboxIdentityProvider: description: Xbox gaming login provider. type: object properties: buttonText: type: string client_id: type: string client_secret: type: string scope: type: string data: type: object additionalProperties: type: object applicationConfiguration: type: object additionalProperties: "$ref": "#/components/schemas/XboxApplicationConfiguration" debug: type: boolean id: type: string format: uuid insertInstant: "$ref": "#/components/schemas/ZonedDateTime" lambdaConfiguration: "$ref": "#/components/schemas/ProviderLambdaConfiguration" lastUpdateInstant: "$ref": "#/components/schemas/ZonedDateTime" linkingStrategy: "$ref": "#/components/schemas/IdentityProviderLinkingStrategy" name: type: string tenantConfiguration: type: object additionalProperties: "$ref": "#/components/schemas/IdentityProviderTenantConfiguration" type: "$ref": "#/components/schemas/IdentityProviderType" ProofKeyForCodeExchangePolicy: description: '' type: string enum: - Required - NotRequired - NotRequiredWhenUsingClientAuthentication AuditLogSearchResponse: description: Audit log response. type: object properties: auditLogs: type: array items: "$ref": "#/components/schemas/AuditLog" total: type: integer format: int64 TokenType: description: