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

# Create job

> Create a job from an already-uploaded source asset identified by the upload slug.



## OpenAPI

````yaml https://www.renderjuice.com/docs/reference/renderjuice-api-sample.json post /jobs
openapi: 3.0.0
info:
  title: Renderjuice External API
  version: 0.0.1
  description: External API surface generated from the /api/external/v1 manifest.
servers:
  - url: https://api.renderjuice.com/api/external/v1
security:
  - ApiKeyAuth: []
paths:
  /jobs:
    post:
      tags:
        - Jobs
      summary: Create job
      description: >-
        Create a job from an already-uploaded source asset identified by the
        upload slug.
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ExternalCreateJobRequestBody'
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Job'
      security:
        - ApiKeyAuth: []
components:
  schemas:
    ExternalCreateJobRequestBody:
      type: object
      properties:
        slug:
          type: string
          minLength: 1
          description: >-
            Upload slug returned by the external upload endpoint. Use this to
            create the job after the file upload completes.
      required:
        - slug
    Job:
      type: object
      properties:
        id:
          type: string
          format: uuid
          example: 123e4567-e89b-12d3-a456-426614174000
          description: Unique identifier of the job
        status:
          type: string
          enum:
            - created
            - validating
            - validated
            - debugging
            - rendering
            - finalizing
            - completed
            - failed
            - canceled
            - booting
            - suspended
          example: completed
          description: Current status of the job
        userId:
          type: string
          format: uuid
          description: ID of the user who created the job
        workspaceId:
          type: string
          format: uuid
          description: ID of the workspace this job belongs to
        rootFolderId:
          type: string
          nullable: true
          format: uuid
          description: ID of the root folder containing the job files
        createdAt:
          type: string
          format: date-time
          description: ISO 8601 timestamp when the job was created
        updatedAt:
          type: string
          format: date-time
          description: ISO 8601 timestamp when the job was last updated
        normalizedSeconds:
          type: number
          description: Normalized rendering time in seconds (adjusted for GPU performance)
        previewUrl:
          type: string
          nullable: true
          format: uri
          description: URL to a preview image of the rendered output, if available
        failedReason:
          type: object
          nullable: true
          properties:
            name:
              type: string
              description: Name of the error that caused the failure
            type:
              type: string
              description: Type or category of the error
          required:
            - name
            - type
          description: Details about why the job failed, if applicable
        requestedConfig:
          nullable: true
          description: Override configuration that was requested for this job
        finalConfig:
          nullable: true
          description: >-
            Final configuration that was used for rendering (may differ from
            requested)
        output:
          type: object
          properties:
            isDeletedForClient:
              type: boolean
              description: >-
                Whether the output files have been deleted from
                client-accessible storage
          required:
            - isDeletedForClient
          description: Information about the job output files
        isAnalysisSkipped:
          type: boolean
          description: Whether scene file analysis was skipped for this job
        analysisId:
          type: string
          nullable: true
          format: uuid
          description: ID of the analysis associated with this job
        analysis:
          nullable: true
          description: Analysis results for the scene file
        sceneFile:
          nullable: true
          description: Information about the scene file used for rendering
      required:
        - id
        - status
        - workspaceId
        - createdAt
        - updatedAt
  securitySchemes:
    ApiKeyAuth:
      type: http
      scheme: bearer
      bearerFormat: RJ-XXX...
      description: >-
        API key authentication. Format: `Bearer RJ-XXX...`. Get your API key
        from the Renderjuice dashboard.

````