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

# Get Job Details

> Retrieve a specific job and its associated runs.

<Info>
  **Permission Required**: `project:read-runs`
</Info>

Retrieve details for a specific job, including associated runs.

## Path Parameters

<ParamField path="jobId" type="string" required>
  The job ID (UUID)
</ParamField>

## Response

The response uses the same Job object described in [List Jobs](/api-reference/jobs/list-jobs).

<RequestExample>
  ```bash cURL theme={"theme":{"light":"catppuccin-latte","dark":"catppuccin-mocha"}}
  curl -X GET "https://nunu.ai/api/v1/project/your-project-id/jobs/f80f6230-3a4f-431a-9d55-d11b867fed4e" \
    -H "X-Api-Key: YOUR_API_TOKEN"
  ```
</RequestExample>

<ResponseExample>
  ```json 200 theme={"theme":{"light":"catppuccin-latte","dark":"catppuccin-mocha"}}
  {
    "job_id": "f80f6230-3a4f-431a-9d55-d11b867fed4e",
    "project_id": "test",
    "status": "COMPLETED",
    "created_at": "2026-03-03T15:50:19.544603+00:00",
    "completed_at": "2026-03-03T15:54:24.463635+00:00",
    "multiplayer_test_id": "a5060a07-d386-4279-98ce-b33fb884201e",
    "test_name": "IP & GPS Geolocation Verification",
    "platform": "lt_phone",
    "build_id": null,
    "test_plan_execution_id": null,
    "queue_rejection_reason": null,
    "templating_enabled": true,
    "template_data": {
      "country": "Switzerland"
    },
    "stopped_by": null,
    "tags": ["location", "templatable"],
    "retries": {
      "total": 0,
      "remaining": 0
    },
    "runs": [
      {
        "multiplayer_run_id": "lkkg6t5612m",
        "state": "COMPLETED",
        "result": "SUCCESS",
        "started_at": "2026-03-03T15:50:23.601048+00:00",
        "completed_at": "2026-03-03T15:54:24.261038+00:00",
        "players": 1
      }
    ]
  }
  ```
</ResponseExample>


## OpenAPI

````yaml GET /project/{projectId}/jobs/{jobId}
openapi: 3.1.0
info:
  title: nunu.ai API
  description: >-
    The nunu.ai Public API allows you to programmatically interact with your
    projects, manage test runs, and upload builds.
  version: 1.0.0
servers:
  - url: https://nunu.ai/api/v1
security:
  - apiKeyAuth: []
paths:
  /project/{projectId}/jobs/{jobId}:
    parameters:
      - name: projectId
        in: path
        required: true
        schema:
          type: string
        description: >-
          The project ID. You can copy it from the project settings page or the
          project URL in the dashboard.
    get:
      tags:
        - Runs
      summary: Get Job Details
      description: Retrieve a specific job and its associated runs.
      operationId: getJobDetails
      parameters:
        - name: jobId
          in: path
          required: true
          description: The job ID
          schema:
            type: string
            format: uuid
      responses:
        '200':
          description: Successful response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Job'
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '404':
          description: Job not found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
components:
  schemas:
    Job:
      type: object
      properties:
        job_id:
          type: string
          format: uuid
        project_id:
          type: string
          format: uuid
        status:
          type: string
          enum:
            - QUEUED
            - STARTING
            - RUNNING
            - STOPPING
            - CLEANING_UP
            - COMPLETED
        created_at:
          type: string
          format: date-time
        completed_at:
          type: string
          format: date-time
          nullable: true
        multiplayer_test_id:
          type: string
          format: uuid
        test_name:
          type: string
          nullable: true
        platform:
          type: string
          nullable: true
        build_id:
          type: string
          format: uuid
          nullable: true
        test_plan_execution_id:
          type: string
          format: uuid
          nullable: true
        queue_rejection_reason:
          type: string
          nullable: true
        templating_enabled:
          type: boolean
        template_data:
          type: object
          nullable: true
        stopped_by:
          type: object
          nullable: true
        tags:
          type: array
          items:
            type: string
        retries:
          $ref: '#/components/schemas/JobRetries'
        runs:
          type: array
          items:
            $ref: '#/components/schemas/JobRunSummary'
    Error:
      type: object
      properties:
        error:
          type: string
        code:
          type: string
        details:
          type: object
    JobRetries:
      type: object
      properties:
        total:
          type: integer
        remaining:
          type: integer
    JobRunSummary:
      type: object
      properties:
        multiplayer_run_id:
          type: string
        state:
          type: string
          nullable: true
        result:
          type: string
          nullable: true
        started_at:
          type: string
          format: date-time
          nullable: true
        completed_at:
          type: string
          format: date-time
          nullable: true
        players:
          type: integer
  securitySchemes:
    apiKeyAuth:
      type: apiKey
      in: header
      name: X-Api-Key
      description: API key for authentication

````