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

# Get personas for a job

> Returns the LLM-generated personas for the job. Allowed for demo user when unauthenticated; otherwise requires access to the job (session or API key).



## OpenAPI

````yaml openapi.json get /api/v1/jobs/{jobId}/personas
openapi: 3.1.0
info:
  title: SuprKeywords API
  version: 0.1.0
  description: >-
    API for keyword research jobs: create jobs, list results, fetch personas,
    keywords, clusters, and export CSV. Programmatic access is authenticated
    with API keys (Authorization: Bearer <key>). The dashboard uses session
    cookies when using the web app in a browser.
  contact:
    name: SuprKeywords Support
    url: https://www.suprkeywords.com
    email: support@suprkeywords.com
servers:
  - url: https://www.suprkeywords.com
    description: Production
  - url: http://localhost:4605
    description: Local (for testing against a local API)
security:
  - bearerAuth: []
  - SessionAuth: []
tags: []
paths:
  /api/v1/jobs/{jobId}/personas:
    get:
      tags:
        - Jobs
      summary: Get personas for a job
      description: >-
        Returns the LLM-generated personas for the job. Allowed for demo user
        when unauthenticated; otherwise requires access to the job (session or
        API key).
      parameters:
        - in: path
          name: jobId
          required: true
          schema:
            type: string
            format: uuid
      responses:
        '200':
          description: List of personas with intent weights and optional avatar_name
          content:
            application/json:
              schema:
                type: object
                properties:
                  personas:
                    type: array
                    items:
                      type: object
                      properties:
                        id:
                          type: string
                        name:
                          type: string
                        avatarName:
                          type: string
                          nullable: true
                        description:
                          type: string
                        intentWeights:
                          type: object
        '404':
          description: Job not found or access denied
        '500':
          description: Internal server error
      security:
        - bearerAuth: []
        - SessionAuth: []
components:
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
      bearerFormat: API key
      description: >-
        API key for programmatic access. Create keys in Settings (Agency plan).
        Send as Authorization: Bearer <your-api-key> or X-API-KEY:
        <your-api-key>. Unauthenticated requests return 401.
    SessionAuth:
      type: apiKey
      in: cookie
      name: __session
      description: >-
        Session cookie when using the dashboard in a browser. For scripts and
        server-to-server calls, use BearerAuth (API key) instead. Demo job
        access is allowed for GET job and sub-resources when applicable.

````