123FormBuilder · Arazzo Workflow

123FormBuilder Authenticate and List Forms

Version 1.0.0

Obtain a JWT token and list the forms available to the authenticated user.

1 workflow 1 source API 1 provider
View Spec View on GitHub Online FormsForm BuilderSurveysWorkflowData CollectionSubmissionsWebhooksHIPAAGDPRPaymentsArazzoWorkflows

Provider

123formbuilder

Workflows

authenticate-and-list-forms
Log in for a JWT token and list the account's forms.
Authenticates against the token endpoint to mint a JWT, then lists the forms visible to the account using that token as the required JWT query parameter.
2 steps inputs: page, password, perPage, username outputs: forms, token, total
1
authenticate
login-user-login
Authenticate with the username and password to obtain a JWT token that will be supplied as the JWT query parameter on subsequent requests.
2
listForms
forms-list-forms
List the forms available to the authenticated account, passing the JWT obtained during login as the required JWT query parameter.

Source API Descriptions

Arazzo Workflow Specification

123formbuilder-authenticate-and-list-forms-workflow.yml Raw ↑
arazzo: 1.0.1
info:
  title: 123FormBuilder Authenticate and List Forms
  summary: Obtain a JWT token and list the forms available to the authenticated user.
  description: >-
    The entry point for every 123FormBuilder integration. The workflow logs in
    with a username or email and password to obtain a JWT token, then uses that
    token to page through the forms owned by the account. Every step spells out
    its request inline so the flow can be read and executed without opening the
    underlying OpenAPI description.
  version: 1.0.0
sourceDescriptions:
- name: formBuilderApi
  url: ../openapi/123formbuilder-rest-api-v2-openapi.yml
  type: openapi
workflows:
- workflowId: authenticate-and-list-forms
  summary: Log in for a JWT token and list the account's forms.
  description: >-
    Authenticates against the token endpoint to mint a JWT, then lists the
    forms visible to the account using that token as the required JWT query
    parameter.
  inputs:
    type: object
    required:
    - username
    - password
    properties:
      username:
        type: string
        description: The 123FormBuilder username to authenticate with.
      password:
        type: string
        description: The plain text password for the account.
      perPage:
        type: integer
        description: How many forms to return per page (default 100, max 1000).
      page:
        type: integer
        description: The page number of forms to retrieve.
  steps:
  - stepId: authenticate
    description: >-
      Authenticate with the username and password to obtain a JWT token that
      will be supplied as the JWT query parameter on subsequent requests.
    operationId: login-user-login
    parameters:
    - name: username
      in: query
      value: $inputs.username
    - name: password
      in: query
      value: $inputs.password
    successCriteria:
    - condition: $statusCode == 200
    outputs:
      token: $response.body#/token
  - stepId: listForms
    description: >-
      List the forms available to the authenticated account, passing the JWT
      obtained during login as the required JWT query parameter.
    operationId: forms-list-forms
    parameters:
    - name: JWT
      in: query
      value: $steps.authenticate.outputs.token
    - name: per_page
      in: query
      value: $inputs.perPage
    - name: page
      in: query
      value: $inputs.page
    successCriteria:
    - condition: $statusCode == 200
    outputs:
      forms: $response.body#/data
      total: $response.body#/meta/pagination/total
  outputs:
    token: $steps.authenticate.outputs.token
    forms: $steps.listForms.outputs.forms
    total: $steps.listForms.outputs.total