Syndai Docs

Publish a repository's app

POST
/api/v1/external/coding/customers/{customer_id}/repositories/{coding_repository_id}/publish

Publishes (or re-publishes) the repository's default branch as a hosted app after a content review, and answers 202 with the publication while the deploy continues in the background: poll GET .../publication or the app's deployments until state settles instead of assuming an order. A call while a deploy is already in flight returns that deploy rather than starting another. Publishing charges nothing; hosting above the app's included monthly usage is billed only while its owner has turned hosting_paid_on on. Needs coding:apps:publish; 422 PUBLISH_UNSUPPORTED_REPO (not a Syndai-hosted or publishable repository), 422 VERIFY_FAILED (content review failed or the site is suspended), 409 PUBLISH_IN_FLIGHT, 503 when hosting is unavailable.

Authorization

CustomerApiKey
headerAuthorizationBearer <API Key>

Customer API key sent as a bearer token

Path Parameters

customer_id*string
Formatuuid
coding_repository_id*string
Formatuuid

Response Body

Request accepted, processing continues off-line

application/json
  1. response
publication?|null
Example Request
curl -X POST 'https://api.syndai.ai/api/v1/external/coding/customers/497f6eca-6276-4993-bfeb-53cbbbba6f08/repositories/497f6eca-6276-4993-bfeb-53cbbbba6f08/publish'
Example Response
{  "publication": {    "accounts": true,    "auto_redeploy": true,    "feature_requests": "off",    "feature_requests_autostart_on": false,    "feature_requests_min_votes": 6,    "generation": 0,    "hosting": "syndai",    "hosting_over_limit": false,    "hosting_paid_cap_usd": 20,    "hosting_paid_on": false,    "hosting_usd_this_month": 0,    "id": "string",    "latest_deployment": {      "created_at": "string",      "error_cause": "string",      "error_kind": "string",      "error_message": "string",      "finished_at": "string",      "id": "string",      "sha": "string",      "status": "string",      "url": "string"    },    "members": true,    "operation_error_cause": "string",    "operation_error_kind": "string",    "operation_error_message": "string",    "pinned_sha": "string",    "search_visible": true,    "signup": "string",    "site_languages_consent_current": false,    "site_languages_max_usd": 0,    "site_languages_paid_on": false,    "site_languages_terms": "",    "site_languages_usage_markup": 0,    "slug": "string",    "state": "string",    "taps_counted": true,    "url": "string",    "visitors": true,    "writes_paused": true  }}