Persona Workflows API

Automation runs triggered by verification results or events.

Documentation

Specifications

Other Resources

OpenAPI Specification

withpersona-workflows-api-openapi.yml Raw ↑
openapi: 3.0.3
info:
  title: Persona Accounts Workflows API
  description: 'The Persona API is a configurable identity platform for KYC, KYB, AML, and fraud prevention. It exposes Inquiries, Inquiry Sessions, Accounts, Verifications, Reports, Cases, Transactions, Devices, Documents, Webhooks, Events, Importers, and Workflow Runs.


    All resources follow the JSON:API media type conventions: request and response payloads are wrapped in a top-level `data` object with `type`, `id`, `attributes`, and `relationships` members. Requests are authenticated with a Bearer API key. Two optional headers shape every request: `Persona-Version` pins the API version to a date (e.g. `2023-01-05`), and `Key-Inflection` selects the casing of JSON keys (`camel`, `kebab`, or `snake`). Idempotency is supported via the `Idempotency-Key` header.'
  termsOfService: https://withpersona.com/legal/terms-of-service
  contact:
    name: Persona Support
    url: https://help.withpersona.com
    email: support@withpersona.com
  version: '2023-01-05'
servers:
- url: https://api.withpersona.com/api/v1
  description: Production
security:
- bearerAuth: []
tags:
- name: Workflows
  description: Automation runs triggered by verification results or events.
paths:
  /workflow-runs:
    get:
      operationId: listAllWorkflowRuns
      tags:
      - Workflows
      summary: List all Workflow Runs
      parameters:
      - $ref: '#/components/parameters/PageAfter'
      - $ref: '#/components/parameters/PageSize'
      responses:
        '200':
          description: A list of Workflow Runs.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GenericList'
    post:
      operationId: createWorkflowRun
      tags:
      - Workflows
      summary: Create a Workflow Run
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/GenericResource'
      responses:
        '201':
          description: The created Workflow Run.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GenericResource'
  /workflow-runs/{workflow-run-id}:
    parameters:
    - name: workflow-run-id
      in: path
      required: true
      schema:
        type: string
    get:
      operationId: retrieveWorkflowRun
      tags:
      - Workflows
      summary: Retrieve a Workflow Run
      responses:
        '200':
          description: The requested Workflow Run.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GenericResource'
components:
  parameters:
    PageAfter:
      name: page[after]
      in: query
      required: false
      description: Cursor for the object after which to start the page.
      schema:
        type: string
    PageSize:
      name: page[size]
      in: query
      required: false
      description: Number of results per page (max 100).
      schema:
        type: integer
        default: 10
        maximum: 100
  schemas:
    ResourceObject:
      type: object
      description: A JSON:API resource object.
      properties:
        type:
          type: string
        id:
          type: string
        attributes:
          type: object
          additionalProperties: true
        relationships:
          type: object
          additionalProperties: true
    GenericList:
      type: object
      description: A JSON:API document wrapping a collection of resources.
      properties:
        data:
          type: array
          items:
            $ref: '#/components/schemas/ResourceObject'
        links:
          type: object
          properties:
            prev:
              type: string
              nullable: true
            next:
              type: string
              nullable: true
    GenericResource:
      type: object
      description: A JSON:API document wrapping a single resource.
      properties:
        data:
          $ref: '#/components/schemas/ResourceObject'
        included:
          type: array
          items:
            $ref: '#/components/schemas/ResourceObject'
        meta:
          type: object
          additionalProperties: true
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
      description: Persona API key passed as a Bearer token in the Authorization header.