Skip to main content

Documentation Index

Fetch the complete documentation index at: https://docs.tented.ai/llms.txt

Use this file to discover all available pages before exploring further.

Endpoint

GET /v1/tents/{tentId}
Use this endpoint to poll the status of a tent created or edited through the Vibe Coding API.

Status Values

StatusMeaning
queuedThe generation record exists but work has not started yet
generatingTented is actively generating the HTML
completedGeneration finished successfully
failedGeneration failed
While the tent is still processing, Tented returns:
Retry-After: 10
Poll no more frequently than every 10 seconds.

Request Example

curl --request GET \
  --url https://api.tented.ai/v1/tents/f11ef3cf-8664-4fe5-a261-c5b4d647b7d1 \
  --header "Authorization: Bearer $TENTED_API_KEY"

Response Examples

In-Progress Response

{
  "id": "f11ef3cf-8664-4fe5-a261-c5b4d647b7d1",
  "status": "queued",
  "created_at": "2026-04-08T12:30:00.000Z",
  "updated_at": "2026-04-08T12:30:00.000Z"
}

Completed Response

{
  "id": "f11ef3cf-8664-4fe5-a261-c5b4d647b7d1",
  "status": "completed",
  "created_at": "2026-04-08T12:30:00.000Z",
  "updated_at": "2026-04-08T12:31:02.000Z"
}

Failed Response

If generation fails, the response includes an error field:
{
  "id": "f11ef3cf-8664-4fe5-a261-c5b4d647b7d1",
  "status": "failed",
  "created_at": "2026-04-08T12:30:00.000Z",
  "updated_at": "2026-04-08T12:30:47.000Z",
  "error": "Upstream generation failed."
}

Publication Object

If the create or edit request used auto_publish: true, the status response can also include a publication object.
FieldTypeNotes
statuspending | published | published_with_warnings | failedPublication lifecycle state
published_urlstringPresent when the tent was published
requested_custom_page_aliasstring | nullThe alias you asked for
applied_custom_page_aliasstring | nullThe alias that was actually applied. null means publish fell back or failed
warningsarrayReturned when publish succeeded with warnings
errorobjectReturned when publish failed

Published Response

{
  "id": "f11ef3cf-8664-4fe5-a261-c5b4d647b7d1",
  "status": "completed",
  "created_at": "2026-04-08T12:30:00.000Z",
  "updated_at": "2026-04-08T12:31:02.000Z",
  "publication": {
    "status": "published",
    "published_url": "https://your-workspace.tented-pages.com/launch-page",
    "requested_custom_page_alias": "launch-page",
    "applied_custom_page_alias": "launch-page"
  }
}

Published With Warning Response

If the requested alias is already taken, Tented still publishes the tent at its default path and returns a warning:
{
  "publication": {
    "status": "published_with_warnings",
    "published_url": "https://your-workspace.tented-pages.com/f11ef3cf-8664-4fe5-a261-c5b4d647b7d1",
    "requested_custom_page_alias": "launch-page",
    "applied_custom_page_alias": null,
    "warnings": [
      {
        "code": "CUSTOM_PAGE_ALIAS_UNAVAILABLE",
        "message": "Requested alias is already in use. Published using default tent URL."
      }
    ]
  }
}

Publication Failure Response

If generation succeeds but publishing fails, the generation status remains completed and the failure is reported under publication:
{
  "publication": {
    "status": "failed",
    "applied_custom_page_alias": null,
    "error": {
      "code": "PUBLISH_LIMIT_EXCEEDED",
      "message": "Free users can only have 1 published tent. Upgrade to publish more."
    }
  }
}

Root Page Publishing Response

If you requested / as the alias, the status response returns /:
{
  "publication": {
    "status": "published",
    "published_url": "https://your-workspace.tented-pages.com/",
    "requested_custom_page_alias": "/",
    "applied_custom_page_alias": "/"
  }
}

Common Errors

StatusCause
400 Bad RequesttentId is missing or not a valid UUID
401 UnauthorizedMissing or invalid bearer token
404 Not FoundThe tent does not exist in the workspace associated with your API key

Back to API Overview

Review the full Vibe Coding API workflow and endpoint map.