Strivacity Journey Flow API

The Native Journey (Journey Flow) API used by native and single-page applications to render Strivacity login, registration, MFA, passkey, password-reset and account-activation journeys in their own UI instead of redirecting to hosted no-code components, plus the Simple Authentication API for identifier-and-password authentication.

Operations 23

POST /flow/api/v1/form/additionalActions/{id} Perform additional actions #
POST /flow/api/v1/form/customerInput Authenticate account using password #
POST /flow/api/v1/form/externalLoginProvider/{id} #
POST /flow/api/v1/form/forgottenPasswordEmail Send forgotten password email #
POST /flow/api/v1/form/forgottenPasswordPhone Start a password recovery flow using a phone as verification method #
POST /flow/api/v1/form/forgottenUsername Send forgotten username reminder #
POST /flow/api/v1/form/genericAction/{id} #
POST /flow/api/v1/form/genericResult Generic result point of flow #
POST /flow/api/v1/form/identifier Identify account #
POST /flow/api/v1/form/mfaEnrollChallenge Challenge point of the MFA enrollment #
POST /flow/api/v1/form/mfaEnrollStart Starting point of the MFA enrollment #
POST /flow/api/v1/form/mfaEnrollTargetSelect Target select point of the MFA enrollment #
POST /flow/api/v1/form/mfaMethod Select MFA method #
POST /flow/api/v1/form/mfaPasscode Authenticate account using MFA passcode #
POST /flow/api/v1/form/password Authenticate account using password #
POST /flow/api/v1/form/passwordEnroll #
POST /flow/api/v1/form/passwordReset Reset password #
POST /flow/api/v1/form/progressiveProfiling Progressive profiling #
POST /flow/api/v1/form/proofingData Authenticate account using password #
POST /flow/api/v1/form/registration Registration request #
POST /flow/api/v1/form/reset Reset the flow #
POST /flow/api/v1/form/sendAccountActivation #
POST /flow/api/v1/init Initialize a native flow #

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/strivacity-journey-flow-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no email required.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

strivacity-native-journey-openapi.yml Raw ↑
openapi: 3.0.1
info:
  description: API documentation of Native Journey API
  title: Native Journey API
  version: v0.0.1
servers:
- url: https://{tenant}
  variables:
    tenant:
      default: example.strivacity.com
      description: Your strivacity tenant
paths:
  /flow/api/v1/form/additionalActions/{id}:
    post:
      description: 'A request made to perform additional actions, eg.: forgotten password, forgotten username action. This endpoint can be called to post the values the customer entered in the form which
        has the id of `additionalActions`'
      operationId: additionalActions
      parameters:
      - in: path
        name: id
        required: true
        schema:
          type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Screen'
          description: OK
        '401':
          description: Unauthorized
        '403':
          description: Forbidden
      summary: Perform additional actions
      tags:
      - Native Journey API
  /flow/api/v1/form/customerInput:
    post:
      description: A request made to store collected data during customer input step in a journey. This endpoint can be called to post the values the customer entered in the form which has the id of `customerInput`
      operationId: customerInput
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CustomerInputRequest'
        required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Screen'
          description: OK
        '401':
          description: Unauthorized
        '403':
          description: Forbidden
      summary: Authenticate account using password
      tags:
      - Native Journey API
  /flow/api/v1/form/externalLoginProvider/{id}:
    post:
      operationId: externalLoginProvider
      parameters:
      - in: path
        name: id
        required: true
        schema:
          type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/MappingJacksonValue'
          description: OK
        '401':
          description: Unauthorized
        '403':
          description: Forbidden
      tags:
      - Native Journey API
  /flow/api/v1/form/forgottenPasswordEmail:
    post:
      description: A request made to send a forgotten password email. This endpoint can be called to post to form which has the id of `forgottenPasswordEmail`
      operationId: forgottenPasswordEmail
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ForgottenPasswordEmailRequest'
        required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Screen'
          description: OK
        '401':
          description: Unauthorized
        '403':
          description: Forbidden
      summary: Send forgotten password email
      tags:
      - Native Journey API
  /flow/api/v1/form/forgottenPasswordPhone:
    post:
      description: A request made to start a password recovery flow using a phone as verification method. This endpoint can be called to post to form which has the id of `forgottenPasswordPhone`
      operationId: forgottenPasswordPhone
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ForgottenPasswordPhoneRequest'
        required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Screen'
          description: OK
        '401':
          description: Unauthorized
        '403':
          description: Forbidden
      summary: Start a password recovery flow using a phone as verification method
      tags:
      - Native Journey API
  /flow/api/v1/form/forgottenUsername:
    post:
      description: A request made to send a username reminder. This endpoint can be called to post the values the customer entered in the form which has the id of `forgottenUsername`
      operationId: forgottenUsername
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ForgottenUsernameRequest'
        required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Screen'
          description: OK
        '401':
          description: Unauthorized
        '403':
          description: Forbidden
      summary: Send forgotten username reminder
      tags:
      - Native Journey API
  /flow/api/v1/form/genericAction/{id}:
    post:
      operationId: genericAction
      parameters:
      - in: path
        name: id
        required: true
        schema:
          type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/MappingJacksonValue'
          description: OK
        '401':
          description: Unauthorized
        '403':
          description: Forbidden
      tags:
      - Native Journey API
  /flow/api/v1/form/genericResult:
    post:
      description: A request made to continue flow. This endpoint can be called to post to form which has the id of `genericResult`
      operationId: genericResult
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/GenericResultRequest'
        required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Screen'
          description: OK
        '401':
          description: Unauthorized
        '403':
          description: Forbidden
      summary: Generic result point of flow
      tags:
      - Native Journey API
  /flow/api/v1/form/identifier:
    post:
      description: A request made to identify an account. This endpoint can be called to post the values the customer entered in the form which has the id of `identifier`
      operationId: identifier
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/IdentificationRequest'
        required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Screen'
          description: OK
        '401':
          description: Unauthorized
        '403':
          description: Forbidden
      summary: Identify account
      tags:
      - Native Journey API
  /flow/api/v1/form/mfaEnrollChallenge:
    post:
      description: A request made to give the challenge.This endpoint can be called to passcode the customer entered in the form which has the id of `mfaEnrollChallenge`
      operationId: mfaEnrollChallenge
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/MfaEnrollChallengeRequest'
        required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Screen'
          description: OK
        '401':
          description: Unauthorized
        '403':
          description: Forbidden
      summary: Challenge point of the MFA enrollment
      tags:
      - Native Journey API
  /flow/api/v1/form/mfaEnrollStart:
    post:
      description: A request made to start MFA enrollment. This endpoint can be called to post the authenticator types the customer entered in the form which has the id of `mfaEnrollStart`
      operationId: mfaEnrollStart
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/MfaEnrollStartRequest'
        required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Screen'
          description: OK
        '401':
          description: Unauthorized
        '403':
          description: Forbidden
      summary: Starting point of the MFA enrollment
      tags:
      - Native Journey API
  /flow/api/v1/form/mfaEnrollTargetSelect:
    post:
      description: A request made to select target of MFA to enroll. This endpoint can be called to post the target and method the customer entered in the form which has the id of `mfaEnrollTargetSelect`
      operationId: mfaEnrollTargetSelect
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/MfaEnrollTargetSelectRequest'
        required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Screen'
          description: OK
        '401':
          description: Unauthorized
        '403':
          description: Forbidden
      summary: Target select point of the MFA enrollment
      tags:
      - Native Journey API
  /flow/api/v1/form/mfaMethod:
    post:
      description: A request made to select an MFA method for two-factor authentication. This endpoint can be called to post the values the customer entered in the form which has the id of `mfaMethod`
      operationId: mfaMethod
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/MfaMethodSelectionRequest'
        required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Screen'
          description: OK
        '401':
          description: Unauthorized
        '403':
          description: Forbidden
      summary: Select MFA method
      tags:
      - Native Journey API
  /flow/api/v1/form/mfaPasscode:
    post:
      description: A request made to authenticate an account using MFA passcode. This endpoint can be called to post the values the customer entered in the form which has the id of `mfaPasscode`
      operationId: mfaPasscode
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/MfaPasscodeAuthenticationRequest'
        required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Screen'
          description: OK
        '401':
          description: Unauthorized
        '403':
          description: Forbidden
      summary: Authenticate account using MFA passcode
      tags:
      - Native Journey API
  /flow/api/v1/form/password:
    post:
      description: A request made to authenticate an account using password. This endpoint can be called to post the values the customer entered in the form which has the id of `password`
      operationId: password
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PasswordAuthenticationRequest'
        required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Screen'
          description: OK
        '401':
          description: Unauthorized
        '403':
          description: Forbidden
      summary: Authenticate account using password
      tags:
      - Native Journey API
  /flow/api/v1/form/passwordEnroll:
    post:
      operationId: passwordEnroll
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PasswordEnrollRequest'
        required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/MappingJacksonValue'
          description: OK
        '401':
          description: Unauthorized
        '403':
          description: Forbidden
      tags:
      - Native Journey API
  /flow/api/v1/form/passwordReset:
    post:
      description: A request made to change the password of a customer. This endpoint can be called to post the values the customer entered in the form which has the id of `passwordReset`
      operationId: passwordReset
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PasswordResetRequest'
        required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Screen'
          description: OK
        '401':
          description: Unauthorized
        '403':
          description: Forbidden
      summary: Reset password
      tags:
      - Native Journey API
  /flow/api/v1/form/progressiveProfiling:
    post:
      description: A request made to store collected data during progressive profiling. This endpoint can be called to post the values the customer entered in the form which has the id of `progressiveProfiling`
      operationId: progressiveProfiling
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ProgressiveProfilingRequest'
        required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Screen'
          description: OK
        '401':
          description: Unauthorized
        '403':
          description: Forbidden
      summary: Progressive profiling
      tags:
      - Native Journey API
  /flow/api/v1/form/proofingData:
    post:
      description: A request made to temporarily store data collected in an identity verification flow. This endpoint can be called to post the values the customer entered in the form which has the id of
        `proofingData`
      operationId: proofingData
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ProofingDataRequest'
        required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Screen'
          description: OK
        '401':
          description: Unauthorized
        '403':
          description: Forbidden
      summary: Authenticate account using password
      tags:
      - Native Journey API
  /flow/api/v1/form/registration:
    post:
      description: A request made to store collected data during a registration flow. This endpoint can be called to post the values the customer entered in the form which has the id of `registration`
      operationId: registration
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/RegistrationRequest'
        required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/MappingJacksonValue'
          description: OK
        '401':
          description: Unauthorized
        '403':
          description: Forbidden
      summary: Registration request
      tags:
      - Native Journey API
  /flow/api/v1/form/reset:
    post:
      description: Reset the flow to it's initial state
      operationId: reset
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Screen'
          description: OK
        '401':
          description: Unauthorized
        '403':
          description: Forbidden
      summary: Reset the flow
      tags:
      - Native Journey API
  /flow/api/v1/form/sendAccountActivation:
    post:
      operationId: sendAccountActivation
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/MappingJacksonValue'
          description: OK
        '401':
          description: Unauthorized
        '403':
          description: Forbidden
      tags:
      - Native Journey API
  /flow/api/v1/init:
    post:
      description: Request to fetch the data required to render the initial screen
      operationId: init
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Screen'
          description: OK
        '401':
          description: Unauthorized
        '403':
          description: Forbidden
      summary: Initialize a native flow
      tags:
      - Native Journey API
components:
  schemas:
    Branding:
      type: object
      properties:
        copyright:
          type: string
        logoUrl:
          type: string
        privacyPolicyUrl:
          type: string
        siteTermUrl:
          type: string
        styling:
          type: object
          additionalProperties:
            type: string
      description: Contains branding data, describes the styling of the screen
    CheckboxWidget:
      type: object
      properties:
        id:
          type: string
        label:
          type: string
        readonly:
          type: boolean
        render:
          $ref: '#/components/schemas/CheckboxWidgetRender'
        type:
          type: string
        validator:
          $ref: '#/components/schemas/CheckboxWidgetValidator'
        value:
          type: boolean
      description: A widget which is used for customer data input and can be either `true` or `false`
    CheckboxWidgetRender:
      type: object
      properties:
        labelType:
          type: string
          enum:
          - text
          - html
        type:
          type: string
          enum:
          - checkboxHidden
          - checkboxShown
    CheckboxWidgetValidator:
      type: object
      properties:
        required:
          type: boolean
    CustomerInputRequest:
      type: object
      properties:
        attributes:
          type: object
          additionalProperties:
            type: object
        local:
          type: object
          additionalProperties:
            type: object
    DateWidget:
      type: object
      properties:
        id:
          type: string
        label:
          type: string
        readonly:
          type: boolean
        render:
          $ref: '#/components/schemas/DateWidgetRender'
        type:
          type: string
        validator:
          $ref: '#/components/schemas/DateWidgetValidator'
        value:
          type: string
      description: A widget which is used for date input
    DateWidgetRender:
      type: object
      properties:
        type:
          type: string
          enum:
          - native
          - fieldSet
    DateWidgetValidator:
      type: object
      properties:
        notAfter:
          type: string
        notBefore:
          type: string
        required:
          type: boolean
    FilterProvider:
      type: object
    ForgottenPasswordEmailRequest:
      type: object
    ForgottenPasswordPhoneRequest:
      type: object
      properties:
        voice:
          type: boolean
    ForgottenUsernameRequest:
      required:
      - recipient
      type: object
      properties:
        recipient:
          type: string
    FormWidget:
      type: object
      properties:
        id:
          type: string
        type:
          type: string
        widgets:
          type: array
          items:
            $ref: '#/components/schemas/GenericWidget'
      description: A form widget containing multiple widgets
    GenericLayout:
      type: object
      description: Describes the layout of the screen
      oneOf:
      - $ref: '#/components/schemas/WidgetLayout'
      - $ref: '#/components/schemas/HorizontalLayout'
      - $ref: '#/components/schemas/VerticalLayout'
      - $ref: '#/components/schemas/GridLayout'
    GenericResultRequest:
      type: object
    GenericWidget:
      type: object
      oneOf:
      - $ref: '#/components/schemas/FormWidget'
      - $ref: '#/components/schemas/SubmitWidget'
      - $ref: '#/components/schemas/StaticWidget'
      - $ref: '#/components/schemas/InputWidget'
      - $ref: '#/components/schemas/CheckboxWidget'
      - $ref: '#/components/schemas/PasswordWidget'
      - $ref: '#/components/schemas/DateWidget'
      - $ref: '#/components/schemas/PhoneWidget'
      - $ref: '#/components/schemas/SelectWidget'
      - $ref: '#/components/schemas/MultiSelectWidget'
    GridLayout:
      type: object
      properties:
        type:
          type: string
          enum:
          - widget
          - horizontal
          - vertical
          - grid
      description: A layout which displays items in multiple rows and columns
    Hint:
      type: object
      properties:
        icon:
          type: string
        variant:
          type: string
    HorizontalLayout:
      type: object
      properties:
        items:
          type: array
          items:
            $ref: '#/components/schemas/GenericLayout'
        type:
          type: string
          enum:
          - widget
          - horizontal
          - vertical
          - grid
      description: A layout which displays items in multiple columns
    IdentificationRequest:
      required:
      - identifier
      type: object
      properties:
        identifier:
          type: string
        rememberAccount:
          type: boolean
    InputWidget:
      type: object
      properties:
        autocomplete:
          type: string
        id:
          type: string
        inputmode:
          type: string
          enum:
          - email
        label:
          type: string
        readonly:
          type: boolean
        type:
          type: string
        validator:
          $ref: '#/components/schemas/InputWidgetValidator'
        value:
          type: string
      description: A widget which is used for customer data input
    InputWidgetValidator:
      type: object
      properties:
        maxLength:
          type: integer
          format: int32
        minLength:
          type: integer
          format: int32
        regex:
          type: string
        required:
          type: boolean
    MappingJacksonValue:
      type: object
      properties:
        filters:
          $ref: '#/components/schemas/FilterProvider'
        value:
          type: object
    Message:
      type: object
      properties:
        text:
          type: string
        type:
          type: string
    Messages:
      type: object
      properties:
        global:
          $ref: '#/components/schemas/Message'
      description: Contains error messages during the flow
    MfaEnrollChallengeRequest:
      required:
      - passcode
      type: object
      properties:
        passcode:
          type: string
        rememberDevice:
          type: boolean
    MfaEnrollStartRequest:
      type: object
      properties:
        mandatory:
          type: array
          items:
            type: string
            enum:
            - password
            - phone
            - email
            - softToken
            - webAuthnSecurityKey
            - webAuthnDeviceBiometrics
            - passkey
            - custom
        optional:
          type: array
          items:
            type: string
            enum:
            - password
            - phone
            - email
            - softToken
            - webAuthnSecurityKey
            - webAuthnDeviceBiometrics
            - passkey
            - custom
        rememberDevice:
          type: boolean
    MfaEnrollTargetSelectRequest:
      required:
      - method
      - target
      type: object
      properties:
        method:
          pattern: ^(passcode|voice|magicLink)$
          type: string
        target:
          type: string
    MfaMethodSelectionRequest:
      required:
      - id
      type: object
      properties:
        id:
          pattern: '[0-9a-fA-F-]{36}/(passcode|magicLink|voice|publicKey)'
          type: string
        rememberDevice:
          type: boolean
    MfaPasscodeAuthenticationRequest:
      required:
      - passcode
      type: object
      properties:
        passcode:
          type: string
        rememberDevice:
          type: boolean
    MultiSelectWidget:
      type: object
      properties:
        id:
          type: string
        label:
          type: string
        options:
          type: array
          description: Contains the items in the multi select widget with additional groupings
          items:
            $ref: '#/components/schemas/Options'
        readonly:
          type: boolean
        type:
          type: string
        validator:
          $ref: '#/components/schemas/MultiSelectWidgetValidator'
        value:
          type: array
          items:
            type: string
      description: A widget which is used to receive inputs from a predefined set of values
    MultiSelectWidgetValidator:
      type: object
      properties:
        maxSelectable:
          type: integer
          format: int32
        minSelectable:
          type: integer
          format: int32
    Options:
      type: object
      properties:
        label:
          type: string
        options:
          type: array
          items:
            $ref: '#/components/schemas/Options'
        type:
          type: string
          enum:
          - group
          - item
        value:
          type: string
    PasswordAuthenticationRequest:
      required:
      - password
      type: object
      properties:
        keepMeLoggedIn:
          type: boolean
        password:
          maxLength: 256
          minLength: 1
          type: string
    PasswordEnrollRequest:
      required:
      - password
      type: object
      properties:
        keepMeLoggedIn:
          type: boolean
        password:
          maxLength: 256
          minLength: 1
          type: string
        passwordConfirmation:
          type: string
    PasswordResetRequest:
      required:
      - password
      type: object
      properties:
        password:
          maxLength: 256
          minLength: 1
          type: string
        passwordConfirmation:
          type: string
    PasswordWidget:
      type: object
      properties:
        id:
          type: string
        label:
          type: string
        qualityIndicator:
          type: boolean
        type:
          type: string
        validator:
          $ref: '#/components/schemas/PasswordWidgetValidator'
      description: A widget which is used for password input
    PasswordWidgetValidator:
      type: object
      properties:
        maxLength:
          type: integer
          format: int32
        maxNumericCharacterSequences:
          type: integer
          format: int32
        maxRepeatedCharacters:
          type: integer
          format: int32
        minLength:
          type: integer
          format: int32
        mustContain:
          type: array
          items:
            type: string
            enum:
            - UPPERCASE
            - LOWERCASE
            - NUMERIC
            - SPECIAL
        restrictedCharacters:
          type: string
    PhoneWidget:
      type: object
      properties:
        id:
          type: string
        label:
          type: string
        readonly:
          type: boolean
        type:
          type: string
        validator:
          $ref: '#/components/schemas/PhoneWidgetValidator'
        value:
          type: string
      description: A widget which is used for phone input
    PhoneWidgetValidator:
      type: object
      properties:
        required:
          type: boolean
    ProgressiveProfilingRequest:
      type: object
      properties:
        attributes:
          type: object
          additionalProperties:
            type: object
        consents:
          type: object
          additionalProperties:
            type: boolean
    ProofingDataRequest:
      type: object
      properties:
        attributes:
          type: object
          additionalProperties:
            type: object
    RegistrationRequest:
      type: object
      properties:
        attributes:
          type: object
          additionalProperties:
            type: object
        consents:
          type: object
          additionalProperties:
            type: boolean
        email:
          type: string
        keepMeLoggedIn:
          type: boolean
        password:
          maxLength: 256
          minLength: 1
          type: string
        passwordConfirmation:
          type: string
        phone:
          type: string
        userName:
          type: string
    Screen:
      type: object
      properties:
        branding:
          $ref: '#/components/schemas/Branding'
        finalizeUrl:
          type: string
          description: URL to redirect to at the end of the flow
        forms:
          type: array
          description: Contains the widgets appearing on the screen
          items:
            $ref: '#/components/schemas/FormWidget'
        hostedUrl:
          type: string
          description: Fallback URL to continue the flow in case of an unknown widget cannot be rendered natively
        layout:
          $ref: '#/components/schemas/GenericLayout'
        messages:
          $ref: '#/components/schemas/Messages'
        screen:
          type: string
          description: Name of the screen
    SelectWidget:
      type: object
      properties:
        id:
          type: string
        label:
          type: string
        options:
          type: array
          description: Contains the items in the select widget with additional groupings
          items:
            $ref: '#/components/schemas/Options'
        readonly:
          type: boolean
        render:
          $ref: '#/components/schemas/SelectWidgetRender'
        type:
          type: string
        validator:
          $ref: '#/components/schemas/SelectWidgetValidator'
        value:
          type: string
      description: A widget which is used to receive input from a predefined set of values
    SelectWidgetRender:
      type: object
      properties:
        type:
          type: string
          enum:
          - dropdown
          - radio
    SelectWidgetValidator:
      type: object
      properties:
        required:
          type: boolean
    StaticWidget:
      type: object
      properties:
        id:
          type: string
        render:
          $ref: '#/components/schemas/StaticWidgetRender'
        type:
          type: string
        value:
          type: string
      description: A widget which contains static text to display on the form
    StaticWidgetRender:
      type: object
      properties:
        type:
          type: string
          enum:
          - text
          - html
    SubmitWidget:
      type: object
      properties:
        id:
          type: string
        label:
          type: string
        render:
          $ref: '#/components/schemas/SubmitWidgetRender'
        type:
          type: string
      description: A widget which is used to submit a form
    SubmitWidgetRender:
      type: object
      properties:
        bgColor:
          type: string
        hint:
          $ref: '#/components/schemas/Hint'
        textColor:
          type: string
        type:
          type: string
          enum:
          - button
          - link
    VerticalLayout:
      type: object
      properties:
        type:
          type: string
          enum:
          - widget
          - horizontal
          - vertical
          - grid
      description: A layout which displays items in multiple rows
    WidgetLayout:
      type: object
      properties:
        formId:
          type: string
        type:
          type: string
          enum:
          - widget
          - horizontal
          - vertical
          - grid
        widgetId:
          type: string
      description: A layout which refers to a widget within a form
  securitySchemes:
    securityScheme:
      scheme: bearer
      type: http
x-readme:
  explorer-enabled: true
  proxy-enabled: true