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

# Get a job by ID

> Retrieves a single job by its ID within the project.



## OpenAPI

````yaml https://api.mentionlab.io/api/docs-json get /api/jobs/{id}
openapi: 3.0.0
info:
  title: MentionLab Public API v0.3.4-rc
  description: ''
  version: 0.3.4-rc
  contact: {}
servers:
  - url: https://api.mentionlab.io
security: []
tags: []
paths:
  /api/jobs/{id}:
    get:
      tags:
        - Jobs
      summary: Get a job by ID
      description: Retrieves a single job by its ID within the project.
      operationId: JobsController_findOne
      parameters:
        - name: id
          required: true
          in: path
          description: The UUID of the job to retrieve.
          schema:
            type: string
            format: uuid
        - name: x-project-id
          in: header
          description: Project ID to specify the project context
          required: true
          schema:
            type: string
      responses:
        '200':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/JobResponse'
        '400':
          description: >-
            The request failed validation — the body, query or path parameters
            are malformed or out of range.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiErrorResponse'
        '401':
          description: The request is missing valid authentication credentials.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiErrorResponse'
        '403':
          description: >-
            The authenticated principal lacks the required permission, or access
            to the requested organisation/project.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiErrorResponse'
components:
  schemas:
    JobResponse:
      type: object
      properties:
        id:
          type: string
          format: uuid
          description: Unique identifier of the job.
          example: 01234567-89ab-cdef-0123-456789abcdef
        project:
          description: >-
            Project the job belongs to. Returned as the project identifier
            (UUID) when not populated, or as the full project object when
            expanded.
          oneOf:
            - type: string
              format: uuid
            - $ref: '#/components/schemas/ProjectResponse'
          example: 01234567-89ab-cdef-0123-456789abcdef
        createdBy:
          description: >-
            User who created the job. May be null when the creator is unknown or
            no longer available.
          nullable: true
          type: object
          allOf:
            - $ref: '#/components/schemas/JobCreatedByResponse'
        totalExecutions:
          type: number
          description: Total number of executions associated with the job.
          example: 100
        pendingExecutions:
          type: number
          description: Number of executions that are still pending processing.
          example: 10
        retryingExecutions:
          type: number
          description: Number of executions currently being retried after a failure.
          example: 2
        successExecutions:
          type: number
          description: Number of executions that completed successfully.
          example: 80
        failedExecutions:
          type: number
          description: Number of executions that failed.
          example: 8
        status:
          type: string
          enum:
            - pending
            - processing
            - completed
            - failed
            - partial_failed
          description: Overall status of the job, derived from the state of its executions.
          example: processing
        createdAt:
          format: date-time
          type: string
          description: Timestamp at which the job was created.
          example: '2026-06-08T12:00:00.000Z'
        updatedAt:
          format: date-time
          type: string
          description: Timestamp at which the job was last updated.
          example: '2026-06-08T12:30:00.000Z'
      required:
        - id
        - project
        - totalExecutions
        - pendingExecutions
        - retryingExecutions
        - successExecutions
        - failedExecutions
        - status
        - createdAt
        - updatedAt
    ApiErrorResponse:
      type: object
      properties:
        statusCode:
          type: number
          description: HTTP status code of the error.
          example: 400
        message:
          type: string
          description: >-
            Human-readable description of the error. Validation failures return
            an array of per-field validation errors instead of a single string.
          example: Validation failed
        error:
          type: string
          description: Short name of the HTTP error.
          example: Bad Request
      required:
        - statusCode
    ProjectResponse:
      type: object
      properties:
        id:
          type: string
          description: Unique identifier for the project
          example: 01234567-89ab-cdef-0123-456789abcdef
        name:
          type: string
          description: Name of the project
          example: My Project
        slug:
          type: string
          description: Slug of the project
          example: my-project
        description:
          type: string
          description: Description of the project
          example: My Project Description
        industry:
          type: string
          description: Industry of the project
          example: Technology
        website:
          type: string
          description: Website of the project
          example: https://www.mentionlab.io
        nameAliases:
          description: Name aliases of the project
          example:
            - My Project
            - My Project 2
          type: array
          items:
            type: string
        blackListAliases:
          description: Blacklist aliases of the project
          example:
            - My Project
            - My Project 2
          type: array
          items:
            type: string
        organisation:
          type: object
          description: Organisation that owns this project
          example: 01234567-89ab-cdef-0123-456789abcdef
        updatedAt:
          format: date-time
          type: string
          description: Last update timestamp
          example: '2021-01-01T00:00:00.000Z'
        currentPo:
          type: string
          description: Active purchase order reference for this project.
          example: PO-2026-Q2-1234
        themeAnalysisEnabled:
          type: boolean
          description: >-
            Whether the async Brand Perception & Intelligence theme-analysis
            batch is enabled for this project.
          example: false
        themeLanguage:
          type: string
          description: >-
            Theme language for this project: a language code forces a
            monolingual taxonomy, 'auto' follows each answer.
          example: en
        themeClusteringConfig:
          description: >-
            Advanced per-project theme-clustering threshold overrides; absent
            knobs use the defaults.
          allOf:
            - $ref: '#/components/schemas/ThemeClusteringConfigDto'
        settings:
          description: >-
            Free-form per-project settings owned by the frontend (e.g. saved
            custom filters).
          allOf:
            - $ref: '#/components/schemas/ProjectSettingsDto'
      required:
        - id
        - name
        - organisation
        - updatedAt
    JobCreatedByResponse:
      type: object
      properties:
        id:
          type: string
          format: uuid
          description: Unique identifier of the user who created the job.
          example: 01234567-89ab-cdef-0123-456789abcdef
        firstName:
          type: string
          description: First name of the user who created the job.
          example: Jane
        lastName:
          type: string
          description: Last name of the user who created the job.
          example: Doe
        email:
          type: string
          description: Email address of the user who created the job.
          example: jane.doe@example.com
      required:
        - firstName
        - lastName
        - email
    ThemeClusteringConfigDto:
      type: object
      properties:
        mint:
          type: number
          description: 'Resolve: below this cosine, mint a new theme.'
          example: 0.74
          minimum: 0
          maximum: 1
        fold:
          type: number
          description: 'Resolve: at/above this cosine, fold into the nearest theme.'
          example: 0.82
          minimum: 0
          maximum: 1
        consGrayLo:
          type: number
          description: 'Consolidate: below this cosine, not a merge candidate.'
          example: 0.74
          minimum: 0
          maximum: 1
        autoMerge:
          type: number
          description: 'Consolidate: at/above this cosine, auto-merge without the LLM.'
          example: 0.92
          minimum: 0
          maximum: 1
        singletonAbsorbLo:
          type: number
          description: 'Consolidate: raw floor for the singleton-absorption pass.'
          example: 0.62
          minimum: 0
          maximum: 1
        whitenGate:
          type: number
          description: >-
            Consolidate: whitened-cosine anisotropy guard on merge candidates
            (higher = splits more aggressively; 0 disables).
          example: 0.2
          minimum: -1
          maximum: 1
        superAssignFloor:
          type: number
          description: >-
            Super-themes: min whitened cosine to assign a theme to a category;
            below it the theme stays ungrouped.
          example: 0.05
          minimum: -1
          maximum: 1
        superMax:
          type: number
          description: 'Super-themes: max super-themes per project.'
          example: 15
          minimum: 1
          maximum: 100
    ProjectSettingsDto:
      type: object
      properties:
        customFilters:
          description: Saved custom filters (tag-group / continent / …).
          example:
            - type: tag-group
              id: 01234567-89ab-cdef-0123-456789abcdef
            - type: continent
              id: Europe
          type: array
          items:
            $ref: '#/components/schemas/ProjectCustomFilterDto'
    ProjectCustomFilterDto:
      type: object
      properties:
        type:
          type: string
          example: tag-group
          description: Filter kind, e.g. 'tag-group' or 'continent'.
        id:
          type: string
          example: 01234567-89ab-cdef-0123-456789abcdef
          description: 'Target id: a tag-group uuid, or the continent label.'
      required:
        - type
        - id

````