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

# Get SEO recommendation job

> Read a saved job with website content view access (viewer or higher). Results can contain evidence from submitted drafts. A completed result contains source-grounded recommendations, source_digest, token usage and warnings. Dollar cost is explicitly unavailable. Pending jobs wait for worker capacity; queued time does not expire an analysis. A failed worker returns a structured error; submit a new request_id to retry. Poll a bounded subset of jobs and back off while status remains pending; polling shares the organization-wide API request budget.



## OpenAPI

````yaml /api-reference/openapi.json get /api/v1/seo/recommendations/{job_id}
openapi: 3.1.0
info:
  title: AthenaHQ API
  description: >-
    AthenaHQ API provides programmatic access to manage your websites and
    prompts for AI-powered content optimization.
  version: 1.0.0
  contact:
    email: support@athenahq.ai
servers:
  - url: https://api.athenahq.ai
    description: Production server
security:
  - apiKey: []
tags:
  - name: Basics
    description: Core API operations for managing websites and prompts
  - name: Metrics
    description: Metrics and analytics endpoints for tracking AI visibility
  - name: Billing
    description: Billing and credits endpoints for managing usage
  - name: Team Management
    description: Endpoints for managing team members and invitations
  - name: Groups
    description: Endpoints for managing groups of websites
  - name: Content
    description: >-
      Endpoints for accessing Content Hub data — tabs, tracked URLs, and per-URL
      prompt breakdowns.
  - name: Pitch Workspace
    description: >-
      Endpoints for accessing pitch workspace reports — org-scoped pitch runs
      with competitors, prompts, attributes, and aggregate metrics.
  - name: Knowledge Base
    description: >-
      Endpoints for reading the brand Knowledge Base — approved brand facts and
      the pillars that organize them.
paths:
  /api/v1/seo/recommendations/{job_id}:
    get:
      tags:
        - SEO Recommendations
      summary: Get SEO recommendation job
      description: >-
        Read a saved job with website content view access (viewer or higher).
        Results can contain evidence from submitted drafts. A completed result
        contains source-grounded recommendations, source_digest, token usage and
        warnings. Dollar cost is explicitly unavailable. Pending jobs wait for
        worker capacity; queued time does not expire an analysis. A failed
        worker returns a structured error; submit a new request_id to retry.
        Poll a bounded subset of jobs and back off while status remains pending;
        polling shares the organization-wide API request budget.
      operationId: seoRecommendations.get
      parameters:
        - name: job_id
          in: path
          required: true
          schema:
            type: string
        - name: website_id
          in: query
          required: true
          schema:
            type: string
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                type: object
                properties:
                  job_id:
                    type: string
                  status:
                    type: string
                    enum:
                      - pending
                      - running
                      - completed
                      - failed
                  created_at:
                    type: string
                  completed_at:
                    anyOf:
                      - type: string
                      - type: 'null'
                  result:
                    anyOf:
                      - type: object
                        properties:
                          contract_version:
                            enum:
                              - seo-recommendations/v1
                            type: string
                          source_digest:
                            type: string
                          recommendations:
                            type: array
                            items:
                              type: object
                              properties:
                                id:
                                  type: string
                                priority:
                                  type: string
                                  enum:
                                    - high
                                    - medium
                                    - low
                                category:
                                  type: string
                                  enum:
                                    - seo
                                    - aio
                                title:
                                  type: string
                                change:
                                  type: string
                                evidence:
                                  type: string
                                heading_path:
                                  type: array
                                  items:
                                    type: string
                              required:
                                - id
                                - priority
                                - category
                                - title
                                - change
                                - evidence
                                - heading_path
                          usage:
                            type: object
                            properties:
                              input_characters:
                                type: integer
                              input_tokens:
                                anyOf:
                                  - type: integer
                                  - type: 'null'
                              output_tokens:
                                anyOf:
                                  - type: integer
                                  - type: 'null'
                              provider_cost_usd:
                                anyOf:
                                  - type: number
                                  - type: 'null'
                              cost_status:
                                enum:
                                  - unavailable
                                type: string
                            required:
                              - input_characters
                              - input_tokens
                              - output_tokens
                              - provider_cost_usd
                              - cost_status
                          warnings:
                            type: array
                            items:
                              type: string
                        required:
                          - contract_version
                          - source_digest
                          - recommendations
                          - usage
                          - warnings
                      - type: 'null'
                  error:
                    anyOf:
                      - type: object
                        properties:
                          code:
                            type: string
                          message:
                            type: string
                        required:
                          - code
                          - message
                      - type: 'null'
                required:
                  - job_id
                  - status
                  - created_at
                  - completed_at
                  - result
                  - error
        '400':
          description: 'Bad Request: validation failed'
          content:
            application/json:
              schema:
                type: object
                properties:
                  error:
                    type: string
                required:
                  - error
        '401':
          description: Unauthenticated
          content:
            application/json:
              schema:
                type: object
                properties:
                  error:
                    type: string
                required:
                  - error
        '403':
          description: Forbidden
          content:
            application/json:
              schema:
                type: object
                properties:
                  error:
                    type: string
                required:
                  - error
        '404':
          description: Not Found
          content:
            application/json:
              schema:
                type: object
                properties:
                  error:
                    type: string
                required:
                  - error
        '409':
          description: Conflict
          content:
            application/json:
              schema:
                type: object
                properties:
                  error:
                    type: string
                required:
                  - error
        '429':
          description: >-
            Rate limited: honor Retry-After before retrying with the same
            request ID
          content:
            application/json:
              schema:
                type: object
                properties:
                  error:
                    type: string
                required:
                  - error
          headers:
            Retry-After:
              description: Seconds to wait before retrying
              schema:
                type: integer
                minimum: 1
        '500':
          description: Internal Error
          content:
            application/json:
              schema:
                type: object
                properties:
                  error:
                    type: string
                required:
                  - error
components:
  securitySchemes:
    apiKey:
      type: apiKey
      in: header
      name: x-api-key
      description: >-
        API key for authentication. You can create one
        [here](https://app.athenahq.ai/organization?tab=api).

````