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

# Create bulk render job from JSON

> Create a bulk render job with an array of variable sets. Each item generates one document.



## OpenAPI

````yaml /api-reference/openapi.json post /api/v1/dev/bulk-render
openapi: 3.0.0
info:
  title: Autype Developer API
  description: >-
    Autype Developer API for programmatic document generation.


    ## Authentication

    All endpoints require an API key. Include it in the `X-API-Key` header or as
    a Bearer token.


    ## Rate Limiting

    API requests are rate-limited to 100 requests per minute per API key.


    ## Token Billing

    Rendering operations consume tokens from your organization's balance.
  version: '1.0'
  contact: {}
servers:
  - url: https://api.autype.com
    description: Production
security: []
tags:
  - name: Temporary Images
    description: Upload and manage temporary images for document rendering
  - name: Render
    description: Render documents to PDF, DOCX, or ODT
  - name: Bulk Render
    description: Bulk document generation with variable substitution
  - name: Documents
    description: Document variable inspection
  - name: Projects
    description: List organization projects
paths:
  /api/v1/dev/bulk-render:
    post:
      tags:
        - developer-api
      summary: Create bulk render job from JSON
      description: >-
        Create a bulk render job with an array of variable sets. Each item
        generates one document.
      operationId: BulkRenderController_createBulkRenderFromJson_v1
      parameters: []
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/BulkRenderFromJsonDto'
      responses:
        '201':
          description: Bulk render job created
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/BulkRenderResponseDto'
        '400':
          description: Validation error or insufficient credits
        '401':
          description: Invalid or missing API key
        '403':
          description: Document does not belong to organization
        '404':
          description: Document not found
      security:
        - api-key: []
components:
  schemas:
    BulkRenderFromJsonDto:
      type: object
      properties:
        documentId:
          type: string
          description: Document ID to render
        format:
          type: string
          enum:
            - PDF
            - DOCX
            - ODT
          example: PDF
        items:
          type: array
          items:
            type: object
          description: >-
            Array of variable sets. Each object represents one document to
            generate.
          example:
            - companyName: Acme Inc
              date: '2024-01-01'
            - companyName: Beta Corp
              date: '2024-01-02'
        webhook:
          description: >-
            Optional webhook configuration. Receives a POST when the bulk job
            completes or fails.
          allOf:
            - $ref: '#/components/schemas/WebhookConfigDto'
      required:
        - documentId
        - format
        - items
    BulkRenderResponseDto:
      type: object
      properties:
        bulkJobId:
          type: string
          description: Bulk job ID for status polling
        status:
          type: string
          enum:
            - PENDING
            - PROCESSING
            - COMPLETED
            - FAILED
        format:
          type: string
          enum:
            - PDF
            - DOCX
            - ODT
        totalItems:
          type: number
          description: Total number of items to render
        completedItems:
          type: number
          description: Number of completed items
        failedItems:
          type: number
          description: Number of failed items
        webhookUrl:
          type: string
          description: Webhook URL if configured
        createdAt:
          format: date-time
          type: string
      required:
        - bulkJobId
        - status
        - format
        - totalItems
        - completedItems
        - failedItems
        - createdAt
    WebhookConfigDto:
      type: object
      properties:
        webhookUrl:
          type: string
          example: https://example.com/webhook
          description: URL to receive a POST notification when the job completes or fails
        webhookAuth:
          description: >-
            Optional authentication for the webhook request (custom header or
            Basic Auth)
          allOf:
            - $ref: '#/components/schemas/WebhookAuthDto'
    WebhookAuthDto:
      type: object
      properties:
        headerName:
          type: string
          example: X-API-Key
          description: Custom header name
        headerValue:
          type: string
          example: my-secret-key
          description: Custom header value
        basicAuthUsername:
          type: string
          example: user
          description: Username for Basic Auth
        basicAuthPassword:
          type: string
          example: pass
          description: Password for Basic Auth
  securitySchemes:
    api-key:
      type: apiKey
      in: header
      name: X-API-Key
      description: API Key (starts with ak_...)

````