Skip to main content

Endpoint

GET /v1/bulk-jobs/{bulkJobId}
Use this endpoint to monitor a bulk tent creation request submitted through POST /v1/tents/bulk.

Bulk Job Status Values

StatusMeaning
acceptedThe bulk job was admitted and is about to start processing
runningOne or more accepted items are still queued or generating
completedAll accepted items finished successfully
completed_with_failuresSome accepted items completed and some failed
failedNo accepted items completed successfully

Item Status Values

StatusMeaning
rejectedThe item was rejected during admission and never queued
queuedThe item was accepted but generation has not started yet
generatingTented is actively generating the tent
completedThe tent generation finished successfully
failedGeneration failed after the item was accepted

Request Example

curl --request GET \
  --url https://api.tented.ai/v1/bulk-jobs/01JQZB4H8A7T5B3R2W1X9Y6Z0K \
  --header "Authorization: Bearer $TENTED_API_KEY"

Response Examples

In-Progress Response

{
  "bulk_job_id": "01JQZB4H8A7T5B3R2W1X9Y6Z0K",
  "status": "running",
  "template_id": "tpl_01JABC123XYZ",
  "auto_publish": true,
  "total": 3,
  "queued": 1,
  "generating": 1,
  "completed": 1,
  "failed": 0,
  "items": [
    {
      "index": 0,
      "client_item_id": "acme-row-001",
      "tent_id": "b6f8d617-7cfe-4d63-a8e9-5d971780d57f",
      "tent_name": "Acme Onboarding Page 1",
      "status": "completed",
      "publication_status": "published",
      "published_url": "https://your-workspace.tented-pages.com/acme-onboarding-jane"
    },
    {
      "index": 1,
      "client_item_id": "acme-row-002",
      "tent_id": "85833f2b-40ba-4af4-b820-cf13f7356d7a",
      "tent_name": "Acme onboarding 2",
      "status": "generating",
      "publication_status": "pending"
    },
    {
      "index": 2,
      "client_item_id": "acme-row-003",
      "tent_id": "53e8237e-0c87-495d-8d10-946db64dbf8d",
      "tent_name": "Acme onboarding 3",
      "status": "queued",
      "publication_status": "pending"
    }
  ],
  "credits": {
    "reserved": 3,
    "consumed": 1,
    "refunded": 0,
    "pending_reconciliation": 2
  },
  "created_at": "2026-03-25T14:30:00.000Z",
  "updated_at": "2026-03-25T14:31:10.000Z"
}

Completed Response

{
  "bulk_job_id": "01JQZB4H8A7T5B3R2W1X9Y6Z0K",
  "status": "completed",
  "template_id": "tpl_01JABC123XYZ",
  "auto_publish": true,
  "total": 3,
  "queued": 0,
  "generating": 0,
  "completed": 3,
  "failed": 0,
  "items": [
    {
      "index": 0,
      "client_item_id": "acme-row-001",
      "tent_id": "b6f8d617-7cfe-4d63-a8e9-5d971780d57f",
      "tent_name": "Acme Onboarding Page 1",
      "status": "completed",
      "publication_status": "published",
      "published_url": "https://your-workspace.tented-pages.com/acme-onboarding-jane"
    },
    {
      "index": 1,
      "client_item_id": "acme-row-002",
      "tent_id": "85833f2b-40ba-4af4-b820-cf13f7356d7a",
      "tent_name": "Acme onboarding 2",
      "status": "completed",
      "publication_status": "published",
      "published_url": "https://your-workspace.tented-pages.com/acme-onboarding-michael"
    },
    {
      "index": 2,
      "client_item_id": "acme-row-003",
      "tent_id": "53e8237e-0c87-495d-8d10-946db64dbf8d",
      "tent_name": "Acme onboarding 3",
      "status": "completed",
      "publication_status": "published",
      "published_url": "https://your-workspace.tented-pages.com/acme-onboarding-sarah"
    }
  ],
  "credits": {
    "reserved": 3,
    "consumed": 3,
    "refunded": 0,
    "pending_reconciliation": 0
  },
  "created_at": "2026-03-25T14:30:00.000Z",
  "updated_at": "2026-03-25T14:32:10.000Z"
}

Completed With Failures Response

{
  "bulk_job_id": "01JQZB4H8A7T5B3R2W1X9Y6Z0K",
  "status": "completed_with_failures",
  "items": [
    {
      "index": 0,
      "client_item_id": "acme-row-001",
      "tent_id": "b6f8d617-7cfe-4d63-a8e9-5d971780d57f",
      "tent_name": "Acme Onboarding Page 1",
      "status": "completed",
      "publication_status": "published",
      "published_url": "https://your-workspace.tented-pages.com/acme-onboarding-jane"
    },
    {
      "index": 1,
      "client_item_id": "acme-row-002",
      "tent_id": "85833f2b-40ba-4af4-b820-cf13f7356d7a",
      "tent_name": "Acme onboarding 2",
      "status": "failed",
      "message": "Upstream generation failed"
    },
    {
      "index": 2,
      "client_item_id": "acme-row-003",
      "status": "rejected",
      "error_code": "INSUFFICIENT_CREDITS",
      "message": "Insufficient credits for generation"
    }
  ],
  "credits": {
    "reserved": 2,
    "consumed": 1,
    "refunded": 1,
    "pending_reconciliation": 0
  }
}

Response Fields

Top-Level Fields

FieldTypeNotes
bulk_job_idstringBulk job identifier returned by POST /v1/tents/bulk
statusstringBulk job status
template_idstringTemplate used for this batch
auto_publishbooleanWhether the batch requested auto-publish
totalintegerTotal number of submitted items
queuedintegerAccepted items waiting to start
generatingintegerAccepted items currently generating
completedintegerAccepted items that completed successfully
failedintegerAccepted items that failed after admission
itemsarrayPer-item statuses and tent references
creditsobjectAggregate bulk job credit accounting
created_atstringBulk job creation timestamp
updated_atstringLast aggregate update timestamp

Item Fields

FieldTypeNotes
indexintegerZero-based index from the original request
client_item_idstringYour per-item identifier, when supplied
tent_iduuidPresent for accepted items
tent_namestringTent name used for generation
statusstringItem status
publication_statusstringPresent when publication state exists for the current generation
published_urlstringPresent when the tent has been published
error_codestringPresent for rejected items
messagestringPresent for rejected or failed items

Publication Behavior

If the original bulk request used auto_publish: true, item responses can include:
  • publication_status: pending
  • publication_status: published
  • publication_status: published_with_warnings
  • publication_status: failed
published_url appears when a tent is successfully published.

Common Errors

StatusCause
400 Bad RequestbulkJobId is missing or malformed
401 UnauthorizedMissing or invalid bearer token
404 Not FoundThe bulk job does not exist in the workspace associated with your API key

Back: Create Bulk Tents

Review the bulk request format and admission response.