ArthurAI Tenant Signup API

The Tenant Signup API from ArthurAI — 1 operation(s) for tenant signup.

OpenAPI Specification

arthurai-tenant-signup-api-openapi.yml Raw ↑
openapi: 3.1.0
info:
  title: Arthur GenAI Engine Agent Discovery Tenant Signup API
  version: 2.1.688
tags:
- name: Tenant Signup
paths:
  /api/v2/tenant/signup:
    post:
      tags:
      - Tenant Signup
      summary: Create Tenant Signup
      description: Public tenant signup. Accepts try-it-out onboarding form data, persists an onboarding submission, and creates a new organization, a default demo task scoped to that org, and a TENANT-USER API key with `org_scope` set to the new org. Returns the four identifiers; the raw `api_key` value appears only in this response (the DB stores only its hash). Gated by GENAI_ENGINE_DEMO_MODE — returns 404 when disabled.
      operationId: create_tenant_signup_api_v2_tenant_signup_post
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/TenantSignupRequest'
        required: true
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DemoTaskSignupResponse'
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
components:
  schemas:
    DemoTaskSignupResponse:
      properties:
        org_id:
          type: string
          format: uuid
          title: Org Id
        task_id:
          type: string
          title: Task Id
        task_name:
          type: string
          title: Task Name
        api_key:
          type: string
          title: Api Key
      type: object
      required:
      - org_id
      - task_id
      - task_name
      - api_key
      title: DemoTaskSignupResponse
    ValidationError:
      properties:
        loc:
          items:
            anyOf:
            - type: string
            - type: integer
          type: array
          title: Location
        msg:
          type: string
          title: Message
        type:
          type: string
          title: Error Type
        input:
          title: Input
        ctx:
          type: object
          title: Context
      type: object
      required:
      - loc
      - msg
      - type
      title: ValidationError
    OnboardingTryItOutFormData:
      properties:
        first_name:
          type: string
          minLength: 1
          title: First Name
        last_name:
          type: string
          minLength: 1
          title: Last Name
        email:
          type: string
          minLength: 1
          title: Email
        job_title:
          type: string
          minLength: 1
          title: Job Title
        company:
          type: string
          minLength: 1
          title: Company
        maturity:
          type: string
          minLength: 1
          title: Maturity
        brings:
          type: string
          minLength: 1
          title: Brings
        brings_other:
          type: string
          title: Brings Other
          default: ''
        competitors:
          items:
            type: string
          type: array
          minItems: 1
          title: Competitors
        competitor_other:
          anyOf:
          - type: string
          - type: 'null'
          title: Competitor Other
        attribution:
          type: string
          minLength: 1
          title: Attribution
        attribution_other:
          anyOf:
          - type: string
          - type: 'null'
          title: Attribution Other
      type: object
      required:
      - first_name
      - last_name
      - email
      - job_title
      - company
      - maturity
      - brings
      - competitors
      - attribution
      title: OnboardingTryItOutFormData
      description: Try-it-out onboarding form fields (matches UI TryItOutSubmission).
    HTTPValidationError:
      properties:
        detail:
          items:
            $ref: '#/components/schemas/ValidationError'
          type: array
          title: Detail
      type: object
      title: HTTPValidationError
    TenantSignupRequest:
      properties:
        form_variant:
          anyOf:
          - type: string
            enum:
            - linear
            - wizard
          - type: 'null'
          title: Form Variant
          description: Which onboarding form variant was submitted.
        form_data:
          $ref: '#/components/schemas/OnboardingTryItOutFormData'
        recaptcha_token:
          anyOf:
          - type: string
          - type: 'null'
          title: Recaptcha Token
          description: reCAPTCHA Enterprise token obtained client-side. Required when reCAPTCHA is configured server-side; ignored otherwise.
      type: object
      required:
      - form_data
      title: TenantSignupRequest
      description: Public tenant signup payload; includes try-it-out onboarding form data.
  securitySchemes:
    API Key:
      type: http
      description: Bearer token authentication with an API key
      scheme: bearer