> ## Documentation Index
> Fetch the complete documentation index at: https://docs.goparlay.io/llms.txt
> Use this file to discover all available pages before exploring further.

# Async persona assignment from recordings

> Submit N recording_urls OR N analysis_ids. We run each through the pipeline (cached 30 days by URL), then meta-analyze to determine the rep's persona. 202 + job_id returned; final result delivered via persona.assigned webhook or polled via GET /v1/orgs/:org_id/reps/:rep_id/intel-jobs/:job_id.



## OpenAPI

````yaml https://api.goparlay.io/docs/json post /v1/orgs/{org_id}/reps/{rep_id}/persona/assign
openapi: 3.0.3
info:
  title: Parlay API
  description: >-
    Partner-facing API for Parlay pitch scoring, rep intelligence, and coaching.
    See API.md for the full spec.
  version: 0.1.0
servers:
  - url: http://localhost:3000
    description: production
security:
  - ApiKeyAuth: []
tags:
  - name: Health
    description: Service health and platform status
  - name: Analyses
    description: Submit and retrieve pitch scoring analyses
  - name: Orgs
    description: Partner org management
  - name: Reps
    description: Rep management
  - name: Keys
    description: API key lifecycle
  - name: Webhooks
    description: Webhook registration and delivery
  - name: Personas
    description: Rep persona intelligence
  - name: Methodologies
    description: Rep methodology intelligence
  - name: Synthesis
    description: Profile synthesis
  - name: Insights
    description: Org-level insights
  - name: Playbooks
    description: Playbook management + AI drafting
  - name: Prompts
    description: Custom AI prompts
  - name: Scoring
    description: Scoring profile config
  - name: Chat
    description: Scout AI chat
  - name: Dispositions
    description: Call dispositions
  - name: Practice
    description: Practice sessions
  - name: Bulk
    description: Batch and export
  - name: Usage
    description: Usage and billing
  - name: Audit
    description: Audit log
paths:
  /v1/orgs/{org_id}/reps/{rep_id}/persona/assign:
    post:
      tags:
        - Personas
      summary: Async persona assignment from recordings
      description: >-
        Submit N recording_urls OR N analysis_ids. We run each through the
        pipeline (cached 30 days by URL), then meta-analyze to determine the
        rep's persona. 202 + job_id returned; final result delivered via
        persona.assigned webhook or polled via GET
        /v1/orgs/:org_id/reps/:rep_id/intel-jobs/:job_id.
      parameters:
        - schema:
            type: string
          in: path
          name: org_id
          required: true
        - schema:
            type: string
          in: path
          name: rep_id
          required: true
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                recording_urls:
                  type: array
                  items:
                    type: string
                    format: uri
                  minItems: 1
                  maxItems: 50
                analysis_ids:
                  type: array
                  items:
                    type: string
                    format: uuid
                  minItems: 1
                  maxItems: 50
                callback_url:
                  type: string
                  format: uri
              additionalProperties: false
      responses:
        '200':
          description: Default Response
components:
  securitySchemes:
    ApiKeyAuth:
      type: http
      scheme: bearer
      bearerFormat: API Key (pk_sandbox_* or pk_live_*)

````