Recent searches

in

Organizations

On this page

  1. GETGet organization list
  2. GETGet organization details
  3. PUTUpdate organisation details
  4. GETDownload an organization access review as CSV
  5. GETList activity
  6. GETGet organization build duration analytics
  7. GETGet total organization build duration
  8. GETGet organization bandwidth usage analytics
  9. GETGet organization bandwidth usage by site
  10. GETGet organization bandwidth usage by URL
  11. GETGet total organization bandwidth usage
  12. GETList an organization's API keys
  13. POSTCreate an organization API key with scoped permissions
  14. GETGet an organization API key
  15. DELETEDelete an organization API key
  16. GETGet organization base domains
  17. POSTCreate base domain
  18. PUTUpdate organisation billing details
  19. GETGet organization DAMs
  20. POSTCreate DAM
  21. GETList an organization's groups
  22. POSTCreate a custom group with scoped permissions
  23. GETGet organization inboxes
  24. POSTCreate inbox
  25. GETList organization members
  26. GETGet an organization member or pending member by email
  27. DELETERemove an organization member or cancel a pending invitation by email
  28. GETList an organization's pending members grouped by email
  29. GETGet the current user's permission groups for an organization
  30. GETGet organization projects
  31. POSTCreate project
  32. GETList app installations
  33. GETList repositories
  34. GETList branches from repository
  35. POSTClone a branch from the selected branch
  36. GETGet organization site mountings
  37. GETGet organization sites
  38. POSTCreate site
  39. POSTCreate site from a remote repo without keeping the connection with git
  40. GETGet organization Ssl Certificates
  41. POSTCreate Ssl Certificate
  42. GETRedirect to whitelabel logo
  43. GETRedirect to brand logo

Get organization list

GET/api/v0/orgs
Filters:
exclude_partner_clientsboolean#

Exclude organisations managed as clients of the current user's partner organisations

billing_issuestring | integer | boolean | string (date-time)#
billing_statusstring#
build_time_limit_exceededboolean#
countrystring#
created_at_gtstring#
created_at_gtestring#
created_at_ltstring#
created_at_ltestring#
domain_limit_exceededboolean#
expiredstring | integer | boolean | string (date-time)#
given_user_is_sole_ownerstring | integer | boolean | string (date-time)#
has_addressstring | integer | boolean | string (date-time)#
has_billing_emailstring | integer | boolean | string (date-time)#
has_billing_namestring | integer | boolean | string (date-time)#
has_build_failuresstring | integer | boolean | string (date-time)#
has_custom_ssl_expiringstring | integer | boolean | string (date-time)#
has_dns_errorsstring | integer | boolean | string (date-time)#
has_domain_issuesstring | integer | boolean | string (date-time)#
has_expired_certsstring | integer | boolean | string (date-time)#
has_expiring_certsstring | integer | boolean | string (date-time)#
has_failing_formsstring | integer | boolean | string (date-time)#
has_failing_sitesstring | integer | boolean | string (date-time)#
has_organisation_typestring | integer | boolean | string (date-time)#
has_output_errorsstring | integer | boolean | string (date-time)#
has_partner_organisation_idinteger#
has_site_domain_failuresstring | integer | boolean | string (date-time)#
has_ssl_auto_failuresstring | integer | boolean | string (date-time)#
has_sync_errorsstring | integer | boolean | string (date-time)#
hosting_limit_exceededboolean#
hubspot_migratedboolean#
idinteger#
in_partner_programstring | integer | boolean | string (date-time)#
inactivestring | integer | boolean | string (date-time)#
lockedstring | integer | boolean | string (date-time)#
needs_attentionstring | integer | boolean | string (date-time)#
organisation_typestring#
partner_organisation_idinteger#
planstring#
plan_periodstring | integer | boolean | string (date-time)#
provider_account_linkedstring | integer | boolean | string (date-time)#
storage_provider_uuidstring#
trialstring | integer | boolean | string (date-time)#
trial_ending_soonstring | integer | boolean | string (date-time)#
unattachedstring | integer | boolean | string (date-time)#
updated_at_gtstring#
updated_at_gtestring#
updated_at_ltstring#
updated_at_ltestring#
user_limit_exceededboolean#
user_uuidstring#
uuidstring#
Sorting:
sort_attributestring#

Attribute to sort the results by

Defaults to: "created_at"

Allowed values: id uuid name partner_points updated_at created_at estimated_monthly_cost

sort_directionstring#

Direction to sort the results

Defaults to: "DESC"

Allowed values: ASC DESC

Pagination:
pageinteger#

Page number to fetch (1-indexed)

itemsinteger#

Number of items per page

Example request:
Bash
Copied to clipboard
curl https://app.cloudcannon.com/api/v0/orgs \
  -H "X-API-KEY: <your-api-key>"
Responses:
200OK
JSON
Copied to clipboard
[
  {
    "uuid": "00000000-0000-0000-0000-000000000000",
    "id": 0,
    "name": "string",
    "stable_domain_suffix": "string",
    "country": "string",
    "billing_name": "string",
    "billing_email": "string",
    "billing_line1": "string",
    "billing_line2": "string",
    "billing_postal_code": "string",
    "billing_state": "string",
    "billing_city": "string",
    "billing_country": "string",
    "billing_status": "string",
    "address": "string",
    "brand_color": "string",
    "plan": "string",
    "brand_logo": "string",
    "white_label_logo": "string",
    "site_soft_limit": 0,
    "business_type": "string",
    "organisation_type": "string",
    "partner_organisation_id": 0,
    "flags": {},
    "build_time_limit_exceeded": true,
    "user_limit_exceeded": true,
    "hosting_limit_exceeded": true,
    "domain_limit_exceeded": true,
    "last_hosting_limit_email_value": 0,
    "last_build_time_limit_email_value": 0,
    "allow_overage_charges": true,
    "trial_offer_enabled": true,
    "initial_saml_user_group_id": 0,
    "subscription_current_period_start": "2024-01-01T00:00:00Z",
    "subscription_current_period_end": "2024-01-01T00:00:00Z",
    "current_overage_period": {},
    "additional_features": [
      "string"
    ],
    "additional_build_time": 0,
    "additional_bandwidth": 0,
    "additional_domains": 0,
    "additional_shares": 0,
    "additional_custom_groups": 0,
    "active_quest": "string",
    "created_at": "2024-01-01T00:00:00Z",
    "updated_at": "2024-01-01T00:00:00Z",
    "cc_expires_at": "2024-01-01T00:00:00Z",
    "mfa_required_after": "2024-01-01T00:00:00Z",
    "sso_required_after": "2024-01-01T00:00:00Z",
    "custom_billing_active": true,
    "custom_billing_period": "string",
    "custom_contract_value": 0,
    "is_owner": true,
    "partner_points": 0,
    "earns_partner_points": true,
    "card_action_banner": "string",
    "payment_locked": true,
    "custom_billing_start_date": "string",
    "trial_end": "2024-01-01T00:00:00Z"
  }
]

Get organization details

GET/api/v0/orgs/{org_uuid}
Path parameters:
org_uuidUUIDRequired#
Example request:
Bash
Copied to clipboard
curl https://app.cloudcannon.com/api/v0/orgs/{org_uuid} \
  -H "X-API-KEY: <your-api-key>"
Responses:
200OK
JSON
Copied to clipboard
{
  "uuid": "00000000-0000-0000-0000-000000000000",
  "id": 0,
  "name": "string",
  "stable_domain_suffix": "string",
  "country": "string",
  "billing_name": "string",
  "billing_email": "string",
  "billing_line1": "string",
  "billing_line2": "string",
  "billing_postal_code": "string",
  "billing_state": "string",
  "billing_city": "string",
  "billing_country": "string",
  "billing_status": "string",
  "address": "string",
  "brand_color": "string",
  "plan": "string",
  "brand_logo": "string",
  "white_label_logo": "string",
  "site_soft_limit": 0,
  "business_type": "string",
  "organisation_type": "string",
  "partner_organisation_id": 0,
  "flags": {},
  "build_time_limit_exceeded": true,
  "user_limit_exceeded": true,
  "hosting_limit_exceeded": true,
  "domain_limit_exceeded": true,
  "last_hosting_limit_email_value": 0,
  "last_build_time_limit_email_value": 0,
  "allow_overage_charges": true,
  "trial_offer_enabled": true,
  "initial_saml_user_group_id": 0,
  "subscription_current_period_start": "2024-01-01T00:00:00Z",
  "subscription_current_period_end": "2024-01-01T00:00:00Z",
  "current_overage_period": {},
  "additional_features": [
    "string"
  ],
  "additional_build_time": 0,
  "additional_bandwidth": 0,
  "additional_domains": 0,
  "additional_shares": 0,
  "additional_custom_groups": 0,
  "active_quest": "string",
  "created_at": "2024-01-01T00:00:00Z",
  "updated_at": "2024-01-01T00:00:00Z",
  "cc_expires_at": "2024-01-01T00:00:00Z",
  "mfa_required_after": "2024-01-01T00:00:00Z",
  "sso_required_after": "2024-01-01T00:00:00Z",
  "custom_billing_active": true,
  "custom_billing_period": "string",
  "custom_contract_value": 0,
  "initial_saml_user_group_uuid": "string",
  "is_github_app": true,
  "github_account_linked": true,
  "github_account_is_latest": true,
  "github_enterprise_server_account_linked": true,
  "github_enterprise_server_account_is_latest": true,
  "gitlab_account_linked": true,
  "gitlab_account_is_latest": true,
  "self_hosted_gitlab_account_linked": true,
  "self_hosted_gitlab_account_is_latest": true,
  "bitbucket_account_linked": true,
  "bitbucket_account_is_latest": true,
  "self_hosted_gitlab_data": {},
  "github_enterprise_server_data": {},
  "partner_organisation": {}
}
403Forbidden
JSON
Copied to clipboard
{
  "error": "string"
}

Update organisation details

PUT/api/v0/orgs/{org_uuid}
Path parameters:
org_uuidUUIDRequired#
Request body:
namestringRequired#
billing_namestringNullable#
billing_emailstringNullable#
billing_citystringNullable#
billing_countrystringNullable#
billing_line1stringNullable#
billing_line2stringNullable#
billing_postal_codestringNullable#
billing_statestringNullable#
brand_colorstringNullable#
business_typestringNullable#
mfa_required_afterstring (date-time)Nullable#
sso_required_afterstring (date-time)Nullable#
flagsobject#
Example request:
Bash
Copied to clipboard
curl https://app.cloudcannon.com/api/v0/orgs/{org_uuid} \
  -X PUT \
  -H "X-API-KEY: <your-api-key>" \
  -H "Content-Type: application/json" \
  -d '{
    "name": "string",
    "billing_name": "string",
    "billing_email": "string",
    "billing_city": "string",
    "billing_country": "string",
    "billing_line1": "string",
    "billing_line2": "string",
    "billing_postal_code": "string",
    "billing_state": "string",
    "brand_color": "string",
    "business_type": "string",
    "mfa_required_after": "2024-01-01T00:00:00Z",
    "sso_required_after": "2024-01-01T00:00:00Z",
    "flags": {}
  }'
Responses:
200OK
JSON
Copied to clipboard
{
  "uuid": "00000000-0000-0000-0000-000000000000",
  "id": 0,
  "name": "string",
  "stable_domain_suffix": "string",
  "country": "string",
  "billing_name": "string",
  "billing_email": "string",
  "billing_line1": "string",
  "billing_line2": "string",
  "billing_postal_code": "string",
  "billing_state": "string",
  "billing_city": "string",
  "billing_country": "string",
  "billing_status": "string",
  "address": "string",
  "brand_color": "string",
  "plan": "string",
  "brand_logo": "string",
  "white_label_logo": "string",
  "site_soft_limit": 0,
  "business_type": "string",
  "organisation_type": "string",
  "partner_organisation_id": 0,
  "flags": {},
  "build_time_limit_exceeded": true,
  "user_limit_exceeded": true,
  "hosting_limit_exceeded": true,
  "domain_limit_exceeded": true,
  "last_hosting_limit_email_value": 0,
  "last_build_time_limit_email_value": 0,
  "allow_overage_charges": true,
  "trial_offer_enabled": true,
  "initial_saml_user_group_id": 0,
  "subscription_current_period_start": "2024-01-01T00:00:00Z",
  "subscription_current_period_end": "2024-01-01T00:00:00Z",
  "current_overage_period": {},
  "additional_features": [
    "string"
  ],
  "additional_build_time": 0,
  "additional_bandwidth": 0,
  "additional_domains": 0,
  "additional_shares": 0,
  "additional_custom_groups": 0,
  "active_quest": "string",
  "created_at": "2024-01-01T00:00:00Z",
  "updated_at": "2024-01-01T00:00:00Z",
  "cc_expires_at": "2024-01-01T00:00:00Z",
  "mfa_required_after": "2024-01-01T00:00:00Z",
  "sso_required_after": "2024-01-01T00:00:00Z",
  "custom_billing_active": true,
  "custom_billing_period": "string",
  "custom_contract_value": 0,
  "is_owner": true,
  "partner_points": 0,
  "earns_partner_points": true,
  "card_action_banner": "string",
  "payment_locked": true,
  "custom_billing_start_date": "string",
  "trial_end": "2024-01-01T00:00:00Z"
}
403Forbidden
JSON
Copied to clipboard
{
  "error": "string"
}
422Unprocessable
JSON
Copied to clipboard
{
  "errors": {}
}

Download an organization access review as CSV

GET/api/v0/orgs/{org_uuid}/access-review
Path parameters:
org_uuidUUIDRequired#
Example request:
Bash
Copied to clipboard
curl https://app.cloudcannon.com/api/v0/orgs/{org_uuid}/access-review \
  -H "X-API-KEY: <your-api-key>"
Responses:
200OK
403Forbidden
JSON
Copied to clipboard
{
  "error": "string"
}

List activity

GET/api/v0/orgs/{org_uuid}/activity
Path parameters:
org_uuidUUIDRequired#
Filters:
created_at_gtstring#
created_at_gtestring#
created_at_ltstring#
created_at_ltestring#
idinteger#
org_idinteger#
org_uuidstring#
organisation_uuidstring#
site_idinteger#
site_uuidstring#
size_gtstring | integer | boolean | string (date-time)#
size_gtestring | integer | boolean | string (date-time)#
size_ltstring | integer | boolean | string (date-time)#
size_ltestring | integer | boolean | string (date-time)#
updated_at_gtstring#
updated_at_gtestring#
updated_at_ltstring#
updated_at_ltestring#
uuidstring#
searchstring#
Sorting:
sort_attributestring#

Attribute to sort the results by

Defaults to: "happened_at"

Allowed values: id uuid updated_at happened_at created_at

sort_directionstring#

Direction to sort the results

Defaults to: "DESC"

Allowed values: ASC DESC

Pagination:
pageinteger#

Page number to fetch (1-indexed)

itemsinteger#

Number of items per page

Example request:
Bash
Copied to clipboard
curl https://app.cloudcannon.com/api/v0/orgs/{org_uuid}/activity \
  -H "X-API-KEY: <your-api-key>"
Responses:
200OK
JSON
Copied to clipboard
[
  {
    "uuid": "string",
    "id": 0,
    "data": "string",
    "identifier": "string",
    "identifier_data": "string",
    "happened_at": "2024-01-01T00:00:00Z",
    "created_at": "2024-01-01T00:00:00Z",
    "updated_at": "2024-01-01T00:00:00Z",
    "user": {
      "uuid": "00000000-0000-0000-0000-000000000000",
      "id": 0,
      "first_name": "string",
      "surname": "string",
      "email": "string",
      "otp_required_for_login": true
    },
    "site_uuid": "00000000-0000-0000-0000-000000000000"
  }
]
401Unauthorized
JSON
Copied to clipboard
{
  "error": "string"
}
403Forbidden
JSON
Copied to clipboard
{
  "error": "string"
}

Get organization build duration analytics

GET/api/v0/orgs/{org_uuid}/analytics/build/duration
Path parameters:
org_uuidUUIDRequired#
Query parameters:
start_timestringRequired#
end_timestringRequired#
periodstringRequired#

Allowed values: hourly daily weekly

timezonestringRequired#
Example request:
Bash
Copied to clipboard
curl https://app.cloudcannon.com/api/v0/orgs/{org_uuid}/analytics/build/duration \
  -H "X-API-KEY: <your-api-key>"
Responses:
200OK
JSON
Copied to clipboard
[
  {
    "date": "2024-01-01T00:00:00Z",
    "duration": 0
  }
]
401Unauthorized
JSON
Copied to clipboard
{
  "error": "string"
}
403Forbidden
JSON
Copied to clipboard
{
  "error": "string"
}
422Unprocessable
JSON
Copied to clipboard
{
  "errors": {}
}

Get total organization build duration

GET/api/v0/orgs/{org_uuid}/analytics/build/duration-total
Path parameters:
org_uuidUUIDRequired#
Query parameters:
start_timestringRequired#
end_timestringRequired#
periodstringRequired#

Allowed values: hourly daily weekly

timezonestringRequired#
Example request:
Bash
Copied to clipboard
curl https://app.cloudcannon.com/api/v0/orgs/{org_uuid}/analytics/build/duration-total \
  -H "X-API-KEY: <your-api-key>"
Responses:
200OK
JSON
Copied to clipboard
{
  "used": 0
}
401Unauthorized
JSON
Copied to clipboard
{
  "error": "string"
}
403Forbidden
JSON
Copied to clipboard
{
  "error": "string"
}
422Unprocessable
JSON
Copied to clipboard
{
  "errors": {}
}

Get organization bandwidth usage analytics

GET/api/v0/orgs/{org_uuid}/analytics/hosting/bandwidth
Path parameters:
org_uuidUUIDRequired#
Query parameters:
start_timestringRequired#
end_timestringRequired#
periodstringRequired#

Allowed values: hourly daily weekly

timezonestringRequired#
Example request:
Bash
Copied to clipboard
curl https://app.cloudcannon.com/api/v0/orgs/{org_uuid}/analytics/hosting/bandwidth \
  -H "X-API-KEY: <your-api-key>"
Responses:
200OK
JSON
Copied to clipboard
[
  {
    "date": "2024-01-01T00:00:00Z",
    "bandwidth": 0
  }
]
401Unauthorized
JSON
Copied to clipboard
{
  "error": "string"
}
403Forbidden
JSON
Copied to clipboard
{
  "error": "string"
}
422Unprocessable
JSON
Copied to clipboard
{
  "errors": {}
}

Get organization bandwidth usage by site

GET/api/v0/orgs/{org_uuid}/analytics/hosting/bandwidth-by-site
Path parameters:
org_uuidUUIDRequired#
Query parameters:
start_timestringRequired#
end_timestringRequired#
periodstringRequired#

Allowed values: hourly daily weekly

timezonestringRequired#
offsetinteger#

Defaults to: 0

Example request:
Bash
Copied to clipboard
curl https://app.cloudcannon.com/api/v0/orgs/{org_uuid}/analytics/hosting/bandwidth-by-site \
  -H "X-API-KEY: <your-api-key>"
Responses:
200OK
JSON
Copied to clipboard
[
  {
    "site_id": 0,
    "host": "string",
    "total_bandwidth": 0,
    "total_requests": 0
  }
]
401Unauthorized
JSON
Copied to clipboard
{
  "error": "string"
}
403Forbidden
JSON
Copied to clipboard
{
  "error": "string"
}
422Unprocessable
JSON
Copied to clipboard
{
  "errors": {}
}

Get organization bandwidth usage by URL

GET/api/v0/orgs/{org_uuid}/analytics/hosting/bandwidth-by-url
Path parameters:
org_uuidUUIDRequired#
Query parameters:
start_timestringRequired#
end_timestringRequired#
periodstringRequired#

Allowed values: hourly daily weekly

timezonestringRequired#
offsetinteger#

Defaults to: 0

Example request:
Bash
Copied to clipboard
curl https://app.cloudcannon.com/api/v0/orgs/{org_uuid}/analytics/hosting/bandwidth-by-url \
  -H "X-API-KEY: <your-api-key>"
Responses:
200OK
JSON
Copied to clipboard
[
  {
    "url": "string",
    "site_id": 0,
    "host": "string",
    "total_bandwidth": 0,
    "total_requests": 0
  }
]
401Unauthorized
JSON
Copied to clipboard
{
  "error": "string"
}
403Forbidden
JSON
Copied to clipboard
{
  "error": "string"
}
422Unprocessable
JSON
Copied to clipboard
{
  "errors": {}
}

Get total organization bandwidth usage

GET/api/v0/orgs/{org_uuid}/analytics/hosting/bandwidth-total
Path parameters:
org_uuidUUIDRequired#
Query parameters:
start_timestringRequired#
end_timestringRequired#
periodstringRequired#

Allowed values: hourly daily weekly

timezonestringRequired#
boundstring#

Set to "upper" to include all hosting log entries

Allowed values: upper

Example request:
Bash
Copied to clipboard
curl https://app.cloudcannon.com/api/v0/orgs/{org_uuid}/analytics/hosting/bandwidth-total \
  -H "X-API-KEY: <your-api-key>"
Responses:
200OK
JSON
Copied to clipboard
{
  "used": 0
}
401Unauthorized
JSON
Copied to clipboard
{
  "error": "string"
}
403Forbidden
JSON
Copied to clipboard
{
  "error": "string"
}
422Unprocessable
JSON
Copied to clipboard
{
  "errors": {}
}

List an organization's API keys

GET/api/v0/orgs/{org_uuid}/api-keys
Path parameters:
org_uuidUUIDRequired#
Filters:
searchstring#

Filter API keys by name

Sorting:
sort_attributestring#

Attribute to sort the results by

Defaults to: "id"

Allowed values: id uuid name created_at

sort_directionstring#

Direction to sort the results

Defaults to: "ASC"

Allowed values: ASC DESC

Pagination:
pageinteger#

Page number to fetch (1-indexed)

itemsinteger#

Number of items per page

Example request:
Bash
Copied to clipboard
curl https://app.cloudcannon.com/api/v0/orgs/{org_uuid}/api-keys \
  -H "X-API-KEY: <your-api-key>"
Responses:
200OK
JSON
Copied to clipboard
[
  {
    "uuid": "00000000-0000-0000-0000-000000000000",
    "id": 0,
    "name": "string",
    "key_snippet": "string",
    "created_at": "2024-01-01T00:00:00Z",
    "group": {
      "permissions": [
        {}
      ]
    }
  }
]
403Forbidden
JSON
Copied to clipboard
{
  "error": "string"
}

Create an organization API key with scoped permissions

POST/api/v0/orgs/{org_uuid}/api-keys
Path parameters:
org_uuidUUIDRequired#
Request body:
namestring#
permissionsArray<object>#
resourcestring#
exceptboolean#
global_scopeboolean#
group_scope_uuidstring#
site_scope_uuidstring#
base_domain_scope_uuidstring#
project_scope_uuidstring#
file_globstring#
Example request:
Bash
Copied to clipboard
curl https://app.cloudcannon.com/api/v0/orgs/{org_uuid}/api-keys \
  -X POST \
  -H "X-API-KEY: <your-api-key>" \
  -H "Content-Type: application/json" \
  -d '{
    "name": "string",
    "permissions": [
      {
        "resource": "string",
        "except": true,
        "global_scope": true,
        "group_scope_uuid": "string",
        "site_scope_uuid": "string",
        "base_domain_scope_uuid": "string",
        "project_scope_uuid": "string",
        "file_glob": "string"
      }
    ]
  }'
Responses:
201Created
JSON
Copied to clipboard
{
  "key": "string"
}
403Forbidden
JSON
Copied to clipboard
{
  "error": "string"
}
422Unprocessable
JSON
Copied to clipboard
{
  "errors": {}
}

Get an organization API key

GET/api/v0/orgs/{org_uuid}/api-keys/{api_key_uuid}
Path parameters:
org_uuidUUIDRequired#
api_key_uuidUUIDRequired#
Example request:
Bash
Copied to clipboard
curl https://app.cloudcannon.com/api/v0/orgs/{org_uuid}/api-keys/{api_key_uuid} \
  -H "X-API-KEY: <your-api-key>"
Responses:
200OK
JSON
Copied to clipboard
{
  "uuid": "00000000-0000-0000-0000-000000000000",
  "id": 0,
  "name": "string",
  "key_snippet": "string",
  "created_at": "2024-01-01T00:00:00Z",
  "group": {
    "permissions": [
      {
        "uuid": "00000000-0000-0000-0000-000000000000",
        "id": 0,
        "resource": "string",
        "global_scope": true,
        "group_scope_uuid": "string",
        "base_domain_scope_uuid": "string",
        "project_scope_uuid": "string",
        "site_scope_uuid": "string",
        "file_glob": "string",
        "except": true,
        "group_id": 0,
        "group_uuid": "string",
        "organisation_uuid": "string"
      }
    ]
  }
}
403Forbidden
JSON
Copied to clipboard
{
  "error": "string"
}

Delete an organization API key

DELETE/api/v0/orgs/{org_uuid}/api-keys/{api_key_uuid}
Path parameters:
org_uuidUUIDRequired#
api_key_uuidUUIDRequired#
Example request:
Bash
Copied to clipboard
curl https://app.cloudcannon.com/api/v0/orgs/{org_uuid}/api-keys/{api_key_uuid} \
  -X DELETE \
  -H "X-API-KEY: <your-api-key>"
Responses:
204Deleted
403Forbidden
JSON
Copied to clipboard
{
  "error": "string"
}

Get organization base domains

GET/api/v0/orgs/{org_uuid}/base-domains
Path parameters:
org_uuidUUIDRequired#
Filters:
auto_ssl_retriesstring | integer | boolean | string (date-time)#
base_domainstring#
created_at_gtstring | integer | boolean | string (date-time)#
created_at_gtestring | integer | boolean | string (date-time)#
created_at_ltstring | integer | boolean | string (date-time)#
created_at_ltestring | integer | boolean | string (date-time)#
dns_failingstring | integer | boolean | string (date-time)#
has_cloudflare_zone_create_errorstring | integer | boolean | string (date-time)#
has_cloudflare_zone_idinteger#
has_zone_idinteger#
idinteger#
organisation_idinteger#
organisation_uuidstring#
updated_at_gtstring | integer | boolean | string (date-time)#
updated_at_gtestring | integer | boolean | string (date-time)#
updated_at_ltstring | integer | boolean | string (date-time)#
updated_at_ltestring | integer | boolean | string (date-time)#
uses_dnsboolean#
uuidstring#
searchstring#
Sorting:
sort_attributestring#

Attribute to sort the results by

Defaults to: "id"

Allowed values: id uuid base_domain auto_generate_ssl_failures next_ssl_generate_attempt_at

sort_directionstring#

Direction to sort the results

Defaults to: "ASC"

Allowed values: ASC DESC

Pagination:
pageinteger#

Page number to fetch (1-indexed)

itemsinteger#

Number of items per page

Example request:
Bash
Copied to clipboard
curl https://app.cloudcannon.com/api/v0/orgs/{org_uuid}/base-domains \
  -H "X-API-KEY: <your-api-key>"
Responses:
200OK
JSON
Copied to clipboard
[
  {
    "base_domain": "string",
    "uses_dns": true,
    "auto_generate_ssl_failures": 0,
    "auto_generate_ssl_max_failures": 0,
    "next_ssl_generate_attempt_at": "2024-01-01T00:00:00Z",
    "ssl_generation_failing_email_sent_at": "2024-01-01T00:00:00Z",
    "in_cloudflare_beta": true,
    "cloudflare_dns_migrated": true,
    "cloudflare_zone_id": "string",
    "cloudflare_zone_create_error": "string",
    "cloudflare_zone_create_error_from_cloudflare": true,
    "mx_record": "string",
    "spf_record": "string",
    "minimum_tls_version": "string",
    "site_count": 0,
    "subdomain_count": 0,
    "fallback_domain": "string",
    "organisation_uuid": "00000000-0000-0000-0000-000000000000",
    "name_server_checks": [
      {
        "uuid": "00000000-0000-0000-0000-000000000000",
        "id": 0,
        "base_domain": "string",
        "base_domain_uuid": "string"
      }
    ]
  }
]
403Forbidden
JSON
Copied to clipboard
{
  "error": "string"
}

Create base domain

POST/api/v0/orgs/{org_uuid}/base-domains
Path parameters:
org_uuidUUIDRequired#
Request body:
base_domainstringRequired#
uses_dnsboolean#
Example request:
Bash
Copied to clipboard
curl https://app.cloudcannon.com/api/v0/orgs/{org_uuid}/base-domains \
  -X POST \
  -H "X-API-KEY: <your-api-key>" \
  -H "Content-Type: application/json" \
  -d '{
    "base_domain": "string",
    "uses_dns": true
  }'
Responses:
201Created
JSON
Copied to clipboard
{
  "base_domain": "string",
  "uses_dns": true,
  "auto_generate_ssl_failures": 0,
  "auto_generate_ssl_max_failures": 0,
  "next_ssl_generate_attempt_at": "2024-01-01T00:00:00Z",
  "ssl_generation_failing_email_sent_at": "2024-01-01T00:00:00Z",
  "in_cloudflare_beta": true,
  "cloudflare_dns_migrated": true,
  "cloudflare_zone_id": "string",
  "cloudflare_zone_create_error": "string",
  "cloudflare_zone_create_error_from_cloudflare": true,
  "mx_record": "string",
  "spf_record": "string",
  "minimum_tls_version": "string",
  "site_count": 0,
  "subdomain_count": 0,
  "fallback_domain": "string",
  "organisation_uuid": "00000000-0000-0000-0000-000000000000",
  "name_server_checks": [
    {
      "uuid": "00000000-0000-0000-0000-000000000000",
      "id": 0,
      "base_domain": "string",
      "base_domain_uuid": "string"
    }
  ]
}
401Unauthorized
JSON
Copied to clipboard
{
  "error": "string"
}
403Forbidden
JSON
Copied to clipboard
{
  "error": "string"
}
422Unprocessable
JSON
Copied to clipboard
{
  "errors": {}
}

Update organisation billing details

PUT/api/v0/orgs/{org_uuid}/billing
Path parameters:
org_uuidUUIDRequired#
Request body:
billing_namestringNullable#
billing_emailstringNullable#
billing_citystringNullable#
billing_countrystringNullable#
billing_line1stringNullable#
billing_line2stringNullable#
billing_postal_codestringNullable#
billing_statestringNullable#
Example request:
Bash
Copied to clipboard
curl https://app.cloudcannon.com/api/v0/orgs/{org_uuid}/billing \
  -X PUT \
  -H "X-API-KEY: <your-api-key>" \
  -H "Content-Type: application/json" \
  -d '{
    "billing_name": "string",
    "billing_email": "string",
    "billing_city": "string",
    "billing_country": "string",
    "billing_line1": "string",
    "billing_line2": "string",
    "billing_postal_code": "string",
    "billing_state": "string"
  }'
Responses:
200OK
JSON
Copied to clipboard
{
  "uuid": "00000000-0000-0000-0000-000000000000",
  "id": 0,
  "name": "string",
  "stable_domain_suffix": "string",
  "country": "string",
  "billing_name": "string",
  "billing_email": "string",
  "billing_line1": "string",
  "billing_line2": "string",
  "billing_postal_code": "string",
  "billing_state": "string",
  "billing_city": "string",
  "billing_country": "string",
  "billing_status": "string",
  "address": "string",
  "brand_color": "string",
  "plan": "string",
  "brand_logo": "string",
  "white_label_logo": "string",
  "site_soft_limit": 0,
  "business_type": "string",
  "organisation_type": "string",
  "partner_organisation_id": 0,
  "flags": {},
  "build_time_limit_exceeded": true,
  "user_limit_exceeded": true,
  "hosting_limit_exceeded": true,
  "domain_limit_exceeded": true,
  "last_hosting_limit_email_value": 0,
  "last_build_time_limit_email_value": 0,
  "allow_overage_charges": true,
  "trial_offer_enabled": true,
  "initial_saml_user_group_id": 0,
  "subscription_current_period_start": "2024-01-01T00:00:00Z",
  "subscription_current_period_end": "2024-01-01T00:00:00Z",
  "current_overage_period": {},
  "additional_features": [
    "string"
  ],
  "additional_build_time": 0,
  "additional_bandwidth": 0,
  "additional_domains": 0,
  "additional_shares": 0,
  "additional_custom_groups": 0,
  "active_quest": "string",
  "created_at": "2024-01-01T00:00:00Z",
  "updated_at": "2024-01-01T00:00:00Z",
  "cc_expires_at": "2024-01-01T00:00:00Z",
  "mfa_required_after": "2024-01-01T00:00:00Z",
  "sso_required_after": "2024-01-01T00:00:00Z",
  "custom_billing_active": true,
  "custom_billing_period": "string",
  "custom_contract_value": 0,
  "is_owner": true,
  "partner_points": 0,
  "earns_partner_points": true,
  "card_action_banner": "string",
  "payment_locked": true,
  "custom_billing_start_date": "string",
  "trial_end": "2024-01-01T00:00:00Z"
}
403Forbidden
JSON
Copied to clipboard
{
  "error": "string"
}
422Unprocessable
JSON
Copied to clipboard
{
  "errors": {}
}

Get organization DAMs

GET/api/v0/orgs/{org_uuid}/dams
Path parameters:
org_uuidUUIDRequired#
Filters:
created_at_gtstring#
created_at_gtestring#
created_at_ltstring#
created_at_ltestring#
dam_typestring#
idinteger#
namestring#
organisation_idinteger#
organisation_uuidstring#
site_uuidstring#
unlinked_site_uuidstring#
updated_at_gtstring#
updated_at_gtestring#
updated_at_ltstring#
updated_at_ltestring#
uuidstring#
searchstring#
Sorting:
sort_attributestring#

Attribute to sort the results by

Defaults to: "id"

Allowed values: id uuid name type base_url

sort_directionstring#

Direction to sort the results

Defaults to: "ASC"

Allowed values: ASC DESC

Pagination:
pageinteger#

Page number to fetch (1-indexed)

itemsinteger#

Number of items per page

Example request:
Bash
Copied to clipboard
curl https://app.cloudcannon.com/api/v0/orgs/{org_uuid}/dams \
  -H "X-API-KEY: <your-api-key>"
Responses:
200OK
JSON
Copied to clipboard
[
  {
    "uuid": "00000000-0000-0000-0000-000000000000",
    "id": 0,
    "access_key": "string",
    "base_url": "string",
    "created_at": "2024-01-01T00:00:00Z",
    "dam_type": "string",
    "name": "string",
    "updated_at": "2024-01-01T00:00:00Z",
    "max_upload_size": 0,
    "organisation_uuid": "00000000-0000-0000-0000-000000000000",
    "config": {},
    "extra_params": "string"
  }
]
403Forbidden
JSON
Copied to clipboard
{
  "error": "string"
}

Create DAM

POST/api/v0/orgs/{org_uuid}/dams
Path parameters:
org_uuidUUIDRequired#
Request body:
dam_typeenumRequired#

Allowed values: s3 tenovos cloudinary azure google cloudflare digitalocean bynder

namestringRequired#
configstringRequired#
base_urlstringRequired#
access_keystringNullable#
access_secretstringNullable#
max_upload_sizeintegerNullable#
Example request:
Bash
Copied to clipboard
curl https://app.cloudcannon.com/api/v0/orgs/{org_uuid}/dams \
  -X POST \
  -H "X-API-KEY: <your-api-key>" \
  -H "Content-Type: application/json" \
  -d '{
    "dam_type": "s3",
    "name": "string",
    "config": "string",
    "base_url": "string",
    "access_key": "string",
    "access_secret": "string",
    "max_upload_size": 0
  }'
Responses:
201Created
JSON
Copied to clipboard
{
  "uuid": "00000000-0000-0000-0000-000000000000",
  "id": 0,
  "access_key": "string",
  "base_url": "string",
  "created_at": "2024-01-01T00:00:00Z",
  "dam_type": "string",
  "name": "string",
  "updated_at": "2024-01-01T00:00:00Z",
  "max_upload_size": 0,
  "organisation_uuid": "00000000-0000-0000-0000-000000000000",
  "config": {},
  "extra_params": "string"
}
401Unauthorized
JSON
Copied to clipboard
{
  "error": "string"
}
403Forbidden
JSON
Copied to clipboard
{
  "error": "string"
}
422Unprocessable
JSON
Copied to clipboard
{
  "errors": {}
}

List an organization's groups

GET/api/v0/orgs/{org_uuid}/groups
Path parameters:
org_uuidUUIDRequired#
Filters:
api_keystring | integer | boolean | string (date-time)#
created_at_gtstring#
created_at_gtestring#
created_at_ltstring#
created_at_ltestring#
creation_typestring#
idinteger#
namestring#
organisation_uuidstring#
updated_at_gtstring#
updated_at_gtestring#
updated_at_ltstring#
updated_at_ltestring#
user_uuidstring#
uuidstring#
searchstring#
only_member_ofboolean#

Only include groups the current user is a member of

Sorting:
sort_attributestring#

Attribute to sort the results by

Defaults to: "id"

Allowed values: id uuid name

sort_directionstring#

Direction to sort the results

Defaults to: "ASC"

Allowed values: ASC DESC

Pagination:
pageinteger#

Page number to fetch (1-indexed)

itemsinteger#

Number of items per page

Example request:
Bash
Copied to clipboard
curl https://app.cloudcannon.com/api/v0/orgs/{org_uuid}/groups \
  -H "X-API-KEY: <your-api-key>"
Responses:
200OK
JSON
Copied to clipboard
[
  {
    "permissions": [
      {
        "uuid": "00000000-0000-0000-0000-000000000000",
        "id": 0,
        "resource": "string",
        "global_scope": true,
        "group_scope_uuid": "string",
        "base_domain_scope_uuid": "string",
        "project_scope_uuid": "string",
        "site_scope_uuid": "string",
        "file_glob": "string",
        "except": true,
        "group_id": 0,
        "group_uuid": "string",
        "organisation_uuid": "string"
      }
    ]
  }
]
403Forbidden
JSON
Copied to clipboard
{
  "error": "string"
}

Create a custom group with scoped permissions

POST/api/v0/orgs/{org_uuid}/groups
Path parameters:
org_uuidUUIDRequired#
Request body:
namestring#
permissionsArray<object>#
resourcestring#
exceptboolean#
global_scopeboolean#
group_scope_uuidstring#
site_scope_uuidstring#
base_domain_scope_uuidstring#
project_scope_uuidstring#
file_globstring#
Example request:
Bash
Copied to clipboard
curl https://app.cloudcannon.com/api/v0/orgs/{org_uuid}/groups \
  -X POST \
  -H "X-API-KEY: <your-api-key>" \
  -H "Content-Type: application/json" \
  -d '{
    "name": "string",
    "permissions": [
      {
        "resource": "string",
        "except": true,
        "global_scope": true,
        "group_scope_uuid": "string",
        "site_scope_uuid": "string",
        "base_domain_scope_uuid": "string",
        "project_scope_uuid": "string",
        "file_glob": "string"
      }
    ]
  }'
Responses:
201Created
JSON
Copied to clipboard
{
  "permissions": [
    {
      "uuid": "00000000-0000-0000-0000-000000000000",
      "id": 0,
      "resource": "string",
      "global_scope": true,
      "group_scope_uuid": "string",
      "base_domain_scope_uuid": "string",
      "project_scope_uuid": "string",
      "site_scope_uuid": "string",
      "file_glob": "string",
      "except": true,
      "group_id": 0,
      "group_uuid": "string",
      "organisation_uuid": "string"
    }
  ]
}
402FeatureNotOnPlan
JSON
Copied to clipboard
{
  "errors": {}
}
403Forbidden
JSON
Copied to clipboard
{
  "error": "string"
}
422Unprocessable
JSON
Copied to clipboard
{
  "errors": {}
}

Get organization inboxes

GET/api/v0/orgs/{org_uuid}/inboxes
Path parameters:
org_uuidUUIDRequired#
Filters:
captcha_typestring#
created_at_gtstring#
created_at_gtestring#
created_at_ltstring#
created_at_ltestring#
idinteger#
namestring#
organisation_idinteger#
organisation_uuidstring#
site_uuidstring#
updated_at_gtstring#
updated_at_gtestring#
updated_at_ltstring#
updated_at_ltestring#
uuidstring#
searchstring#
Sorting:
sort_attributestring#

Attribute to sort the results by

Defaults to: "name"

Allowed values: created_at updated_at id key name uuid

sort_directionstring#

Direction to sort the results

Defaults to: "ASC"

Allowed values: ASC DESC

Pagination:
pageinteger#

Page number to fetch (1-indexed)

itemsinteger#

Number of items per page

Example request:
Bash
Copied to clipboard
curl https://app.cloudcannon.com/api/v0/orgs/{org_uuid}/inboxes \
  -H "X-API-KEY: <your-api-key>"
Responses:
200OK
JSON
Copied to clipboard
[
  {
    "uuid": "00000000-0000-0000-0000-000000000000",
    "id": 0,
    "name": "string",
    "key": "string",
    "monthly_quota": 0,
    "keep_form_hook_days": 0,
    "organisation_id": 0,
    "captcha_type": "string",
    "captcha_key": "string",
    "captcha_secret": "string",
    "created_at": "2024-01-01T00:00:00Z",
    "updated_at": "2024-01-01T00:00:00Z",
    "organisation_uuid": "00000000-0000-0000-0000-000000000000",
    "inbox_targets": [
      {
        "uuid": "00000000-0000-0000-0000-000000000000",
        "id": 0,
        "target_type": "string",
        "target": "string",
        "validated": true,
        "config": {},
        "inbox_uuid": "00000000-0000-0000-0000-000000000000",
        "created_at": "2024-01-01T00:00:00Z",
        "updated_at": "2024-01-01T00:00:00Z"
      }
    ]
  }
]
403Forbidden
JSON
Copied to clipboard
{
  "error": "string"
}

Create inbox

POST/api/v0/orgs/{org_uuid}/inboxes
Path parameters:
org_uuidUUIDRequired#
Request body:
namestringRequired#
keystringRequired#
monthly_quotaintegerNullable#
keep_form_hook_daysintegerNullable#
captcha_keystringNullable#
captcha_secretstringNullable#
captcha_typestringNullable#
Example request:
Bash
Copied to clipboard
curl https://app.cloudcannon.com/api/v0/orgs/{org_uuid}/inboxes \
  -X POST \
  -H "X-API-KEY: <your-api-key>" \
  -H "Content-Type: application/json" \
  -d '{
    "name": "string",
    "key": "string",
    "monthly_quota": 0,
    "keep_form_hook_days": 0,
    "captcha_key": "string",
    "captcha_secret": "string",
    "captcha_type": "string"
  }'
Responses:
201Created
JSON
Copied to clipboard
{
  "uuid": "00000000-0000-0000-0000-000000000000",
  "id": 0,
  "name": "string",
  "key": "string",
  "monthly_quota": 0,
  "keep_form_hook_days": 0,
  "organisation_id": 0,
  "captcha_type": "string",
  "captcha_key": "string",
  "captcha_secret": "string",
  "created_at": "2024-01-01T00:00:00Z",
  "updated_at": "2024-01-01T00:00:00Z",
  "organisation_uuid": "00000000-0000-0000-0000-000000000000",
  "inbox_targets": [
    {
      "uuid": "00000000-0000-0000-0000-000000000000",
      "id": 0,
      "target_type": "string",
      "target": "string",
      "validated": true,
      "config": {},
      "inbox_uuid": "00000000-0000-0000-0000-000000000000",
      "created_at": "2024-01-01T00:00:00Z",
      "updated_at": "2024-01-01T00:00:00Z"
    }
  ]
}
401Unauthorized
JSON
Copied to clipboard
{
  "error": "string"
}
403Forbidden
JSON
Copied to clipboard
{
  "error": "string"
}
422Unprocessable
JSON
Copied to clipboard
{
  "errors": {}
}

List organization members

GET/api/v0/orgs/{org_uuid}/members
Path parameters:
org_uuidUUIDRequired#
Filters:
searchstring#

Filter members by name or email

Sorting:
sort_attributestring#

Attribute to sort the results by

Defaults to: "created_at"

Allowed values: id uuid email first_name last_sign_in_at created_at

sort_directionstring#

Direction to sort the results

Defaults to: "DESC"

Allowed values: ASC DESC

Pagination:
pageinteger#

Page number to fetch (1-indexed)

itemsinteger#

Number of items per page

Example request:
Bash
Copied to clipboard
curl https://app.cloudcannon.com/api/v0/orgs/{org_uuid}/members \
  -H "X-API-KEY: <your-api-key>"
Responses:
200OK
JSON
Copied to clipboard
[
  {
    "uuid": "00000000-0000-0000-0000-000000000000",
    "id": 0,
    "first_name": "string",
    "surname": "string",
    "email": "string",
    "otp_required_for_login": true
  }
]
403Forbidden
JSON
Copied to clipboard
{
  "error": "string"
}

Get an organization member or pending member by email

GET/api/v0/orgs/{org_uuid}/members/{email}
Path parameters:
org_uuidUUIDRequired#
emailstringRequired#
Example request:
Bash
Copied to clipboard
curl https://app.cloudcannon.com/api/v0/orgs/{org_uuid}/members/{email} \
  -H "X-API-KEY: <your-api-key>"
Responses:
200OK
JSON
Copied to clipboard
{
  "uuid": "00000000-0000-0000-0000-000000000000",
  "id": 0,
  "first_name": "string",
  "surname": "string",
  "email": "string",
  "otp_required_for_login": true
}
403Forbidden
JSON
Copied to clipboard
{
  "error": "string"
}

Remove an organization member or cancel a pending invitation by email

DELETE/api/v0/orgs/{org_uuid}/members/{email}
Path parameters:
org_uuidUUIDRequired#
emailstringRequired#
Example request:
Bash
Copied to clipboard
curl https://app.cloudcannon.com/api/v0/orgs/{org_uuid}/members/{email} \
  -X DELETE \
  -H "X-API-KEY: <your-api-key>"
Responses:
204Deleted
403Forbidden
JSON
Copied to clipboard
{
  "error": "string"
}

List an organization's pending members grouped by email

GET/api/v0/orgs/{org_uuid}/pending-members
Path parameters:
org_uuidUUIDRequired#
Example request:
Bash
Copied to clipboard
curl https://app.cloudcannon.com/api/v0/orgs/{org_uuid}/pending-members \
  -H "X-API-KEY: <your-api-key>"
Responses:
200OK
JSON
Copied to clipboard
[
  {
    "id": 0,
    "uuid": "string",
    "first_name": "string",
    "surname": "string",
    "email": "string",
    "groups": [
      {
        "uuid": "00000000-0000-0000-0000-000000000000",
        "id": 0,
        "creation_type": "string",
        "organisation_id": 0,
        "name": "string",
        "organisation_uuid": "string"
      }
    ]
  }
]
403Forbidden
JSON
Copied to clipboard
{
  "error": "string"
}

Get the current user's permission groups for an organization

GET/api/v0/orgs/{org_uuid}/permissions
Path parameters:
org_uuidUUIDRequired#
Example request:
Bash
Copied to clipboard
curl https://app.cloudcannon.com/api/v0/orgs/{org_uuid}/permissions \
  -H "X-API-KEY: <your-api-key>"
Responses:
200OK
JSON
Copied to clipboard
[
  {
    "uuid": "00000000-0000-0000-0000-000000000000",
    "id": 0,
    "resource": "string",
    "global_scope": true,
    "group_scope_uuid": "string",
    "base_domain_scope_uuid": "string",
    "project_scope_uuid": "string",
    "site_scope_uuid": "string",
    "file_glob": "string",
    "except": true,
    "group_id": 0,
    "group_uuid": "string",
    "organisation_uuid": "string"
  }
]
403Forbidden
JSON
Copied to clipboard
{
  "error": "string"
}
422Unprocessable
JSON
Copied to clipboard
{
  "errors": {}
}

Get organization projects

GET/api/v0/orgs/{org_uuid}/projects
Path parameters:
org_uuidUUIDRequired#
Filters:
created_at_gtstring#
created_at_gtestring#
created_at_ltstring#
created_at_ltestring#
git_repositorystring#
idinteger#
last_compiledstring#
last_compiled_successstring#
last_syncedstring#
namestring#
organisation_idinteger#
organisation_uuidstring#
updated_at_gtstring#
updated_at_gtestring#
updated_at_ltstring#
updated_at_ltestring#
uuidstring#
searchstring#
Sorting:
sort_attributestring#

Attribute to sort the results by

Defaults to: "id"

Allowed values: id uuid name external_url git_repository main_git_branch updated_at created_at last_synced last_compiled last_compiled_success provider

sort_directionstring#

Direction to sort the results

Defaults to: "ASC"

Allowed values: ASC DESC

Pagination:
pageinteger#

Page number to fetch (1-indexed)

itemsinteger#

Number of items per page

Example request:
Bash
Copied to clipboard
curl https://app.cloudcannon.com/api/v0/orgs/{org_uuid}/projects \
  -H "X-API-KEY: <your-api-key>"
Responses:
200OK
JSON
Copied to clipboard
[
  {
    "uuid": "00000000-0000-0000-0000-000000000000",
    "id": 0,
    "name": "string",
    "description": "string",
    "git_repository": "string",
    "allow_all_branching": true,
    "prevent_permissions_granted_on_branch": true,
    "main_git_branch": "string",
    "external_url": "string",
    "links": [
      {
        "name": "string",
        "link": "string"
      }
    ],
    "provider": "string",
    "default_destroy_on_publish": true,
    "default_authentication": "string",
    "default_publish_mode": "string",
    "last_synced": "2024-01-01T00:00:00Z",
    "last_compiled": "2024-01-01T00:00:00Z",
    "last_compiled_success": "2024-01-01T00:00:00Z",
    "auto_create_site_on_pr": true,
    "comment_on_pr": true,
    "pr_comment_skip_drafts": true,
    "pr_comment_footer": "string",
    "auto_create_skip_drafts": true,
    "pr_tab_visible": true,
    "publishing_tab_visible": true,
    "branches_tab_visible": true,
    "created_at": "2024-01-01T00:00:00Z",
    "updated_at": "2024-01-01T00:00:00Z",
    "has_default_password": true,
    "organisation_uuid": "00000000-0000-0000-0000-000000000000",
    "main_site": {
      "site_name": "string",
      "subpath": "string",
      "stable_domain": "string",
      "ssg": "string",
      "last_synced": "2024-01-01T00:00:00Z",
      "last_output": "2024-01-01T00:00:00Z",
      "last_compiled": "2024-01-01T00:00:00Z",
      "last_compressed": "2024-01-01T00:00:00Z",
      "last_internationalised": "2024-01-01T00:00:00Z",
      "last_published": "2024-01-01T00:00:00Z",
      "last_cleaned": "2024-01-01T00:00:00Z",
      "storage_provider": "string",
      "client_author_name": "string",
      "client_author_email": "string",
      "create_source": "string",
      "hosting_choice": "string",
      "building_locked": true,
      "editing_locked": true,
      "uploads_locked": true,
      "browsing_locked": true,
      "last_compiled_success": "2024-01-01T00:00:00Z",
      "preview_url": "string",
      "documentation_url": "string",
      "support_url": "string",
      "client_editor_route": "string",
      "active_quest": "string",
      "created_at": "2024-01-01T00:00:00Z",
      "updated_at": "2024-01-01T00:00:00Z",
      "mode": "string",
      "project_id": 0,
      "project_uuid": "string",
      "pr_number": 0,
      "pr_external_url": "string",
      "cloudcannon_config_path": "string",
      "output_storage_provider": "string",
      "base_domain": {
        "uuid": "00000000-0000-0000-0000-000000000000",
        "id": 0,
        "base_domain": "string",
        "uses_dns": true,
        "auto_generate_ssl_failures": 0,
        "auto_generate_ssl_max_failures": 0,
        "next_ssl_generate_attempt_at": "2024-01-01T00:00:00Z",
        "ssl_generation_failing_email_sent_at": "2024-01-01T00:00:00Z",
        "in_cloudflare_beta": true,
        "cloudflare_dns_migrated": true,
        "cloudflare_zone_id": "string",
        "cloudflare_zone_create_error": "string",
        "cloudflare_zone_create_error_from_cloudflare": true,
        "mx_record": "string",
        "spf_record": "string",
        "minimum_tls_version": "string",
        "cloudflare_name_servers": [],
        "name_servers": [],
        "cloudflare_dns_migration": [],
        "a_record": [],
        "cname_record": [],
        "txt_record": []
      }
    }
  }
]
401Unauthorized
JSON
Copied to clipboard
{
  "error": "string"
}
403Forbidden
JSON
Copied to clipboard
{
  "error": "string"
}

Create project

POST/api/v0/orgs/{org_uuid}/projects
Path parameters:
org_uuidUUIDRequired#
Request body:
namestringRequired#
external_urlstringNullable#
descriptionstringNullable#
default_destroy_on_publishboolean#
default_authenticationstringNullable#
default_publish_modestringNullable#
default_passwordstring | boolean#
pr_tab_visibleboolean#
publishing_tab_visibleboolean#
branches_tab_visibleboolean#
git_repositorystringRequired#
allow_all_branchingboolean#
prevent_permissions_granted_on_branchboolean#
main_git_branchstringNullable#
providerstringRequired#
auto_create_site_on_prboolean#
auto_create_skip_draftsboolean#
comment_on_prboolean#
pr_comment_skip_draftsboolean#
Example request:
Bash
Copied to clipboard
curl https://app.cloudcannon.com/api/v0/orgs/{org_uuid}/projects \
  -X POST \
  -H "X-API-KEY: <your-api-key>" \
  -H "Content-Type: application/json" \
  -d '{
    "name": "string",
    "external_url": "string",
    "description": "string",
    "links": "string",
    "default_destroy_on_publish": true,
    "default_authentication": "string",
    "default_publish_mode": "string",
    "default_password": "string",
    "pr_tab_visible": true,
    "publishing_tab_visible": true,
    "branches_tab_visible": true,
    "git_repository": "string",
    "allow_all_branching": true,
    "prevent_permissions_granted_on_branch": true,
    "main_git_branch": "string",
    "provider": "string",
    "auto_create_site_on_pr": true,
    "auto_create_skip_drafts": true,
    "comment_on_pr": true,
    "pr_comment_skip_drafts": true,
    "pr_comment_footer": "string"
  }'
Responses:
201Created
JSON
Copied to clipboard
{
  "uuid": "00000000-0000-0000-0000-000000000000",
  "id": 0,
  "name": "string",
  "description": "string",
  "git_repository": "string",
  "allow_all_branching": true,
  "prevent_permissions_granted_on_branch": true,
  "main_git_branch": "string",
  "external_url": "string",
  "links": [
    {
      "name": "string",
      "link": "string"
    }
  ],
  "provider": "string",
  "default_destroy_on_publish": true,
  "default_authentication": "string",
  "default_publish_mode": "string",
  "last_synced": "2024-01-01T00:00:00Z",
  "last_compiled": "2024-01-01T00:00:00Z",
  "last_compiled_success": "2024-01-01T00:00:00Z",
  "auto_create_site_on_pr": true,
  "comment_on_pr": true,
  "pr_comment_skip_drafts": true,
  "pr_comment_footer": "string",
  "auto_create_skip_drafts": true,
  "pr_tab_visible": true,
  "publishing_tab_visible": true,
  "branches_tab_visible": true,
  "created_at": "2024-01-01T00:00:00Z",
  "updated_at": "2024-01-01T00:00:00Z",
  "has_default_password": true,
  "organisation_uuid": "00000000-0000-0000-0000-000000000000",
  "main_site": {
    "site_name": "string",
    "subpath": "string",
    "stable_domain": "string",
    "ssg": "string",
    "last_synced": "2024-01-01T00:00:00Z",
    "last_output": "2024-01-01T00:00:00Z",
    "last_compiled": "2024-01-01T00:00:00Z",
    "last_compressed": "2024-01-01T00:00:00Z",
    "last_internationalised": "2024-01-01T00:00:00Z",
    "last_published": "2024-01-01T00:00:00Z",
    "last_cleaned": "2024-01-01T00:00:00Z",
    "storage_provider": "string",
    "client_author_name": "string",
    "client_author_email": "string",
    "create_source": "string",
    "hosting_choice": "string",
    "building_locked": true,
    "editing_locked": true,
    "uploads_locked": true,
    "browsing_locked": true,
    "last_compiled_success": "2024-01-01T00:00:00Z",
    "preview_url": "string",
    "documentation_url": "string",
    "support_url": "string",
    "client_editor_route": "string",
    "active_quest": "string",
    "created_at": "2024-01-01T00:00:00Z",
    "updated_at": "2024-01-01T00:00:00Z",
    "mode": "string",
    "project_id": 0,
    "project_uuid": "string",
    "pr_number": 0,
    "pr_external_url": "string",
    "cloudcannon_config_path": "string",
    "output_storage_provider": "string",
    "base_domain": {
      "uuid": "00000000-0000-0000-0000-000000000000",
      "id": 0,
      "base_domain": "string",
      "uses_dns": true,
      "auto_generate_ssl_failures": 0,
      "auto_generate_ssl_max_failures": 0,
      "next_ssl_generate_attempt_at": "2024-01-01T00:00:00Z",
      "ssl_generation_failing_email_sent_at": "2024-01-01T00:00:00Z",
      "in_cloudflare_beta": true,
      "cloudflare_dns_migrated": true,
      "cloudflare_zone_id": "string",
      "cloudflare_zone_create_error": "string",
      "cloudflare_zone_create_error_from_cloudflare": true,
      "mx_record": "string",
      "spf_record": "string",
      "minimum_tls_version": "string",
      "cloudflare_name_servers": [
        "string"
      ],
      "name_servers": [
        "string"
      ],
      "cloudflare_dns_migration": [
        {}
      ],
      "a_record": [
        {}
      ],
      "cname_record": [
        {}
      ],
      "txt_record": [
        {}
      ]
    }
  }
}
401Unauthorized
JSON
Copied to clipboard
{
  "error": "string"
}
403Forbidden
JSON
Copied to clipboard
{
  "error": "string"
}
422Unprocessable
JSON
Copied to clipboard
{
  "errors": {}
}

List app installations

GET/api/v0/orgs/{org_uuid}/providers/{provider}/installations
Path parameters:
org_uuidUUIDRequired#
providerstringRequired#

Allowed values: github github_enterprise_server gitlab bitbucket self_hosted_gitlab

Example request:
Bash
Copied to clipboard
curl https://app.cloudcannon.com/api/v0/orgs/{org_uuid}/providers/{provider}/installations \
  -H "X-API-KEY: <your-api-key>"
Responses:
200OK
JSON
Copied to clipboard
[
  {
    "id": 0,
    "app_id": 0,
    "single_file_name": "string",
    "app_slug": "string",
    "html_url": "string",
    "provider": "string",
    "account": {
      "avatar_url": "string",
      "login": "string",
      "type": "string"
    }
  }
]
401Unauthorized
JSON
Copied to clipboard
{
  "error": "string"
}
403Forbidden
JSON
Copied to clipboard
{
  "error": "string"
}
422Unprocessable
JSON
Copied to clipboard
{
  "errors": {}
}

List repositories

GET/api/v0/orgs/{org_uuid}/providers/{provider}/repositories
Path parameters:
org_uuidUUIDRequired#
providerstringRequired#

Allowed values: github github_enterprise_server gitlab bitbucket self_hosted_gitlab

Example request:
Bash
Copied to clipboard
curl https://app.cloudcannon.com/api/v0/orgs/{org_uuid}/providers/{provider}/repositories \
  -H "X-API-KEY: <your-api-key>"
Responses:
200OK
JSON
Copied to clipboard
[
  {
    "full_name": "string",
    "name": "string",
    "language": "string",
    "private": true,
    "avatar_url": "string",
    "size": 0,
    "permissions": {
      "admin": true,
      "push": true,
      "pull": true
    }
  }
]
401Unauthorized
JSON
Copied to clipboard
{
  "error": "string"
}
403Forbidden
JSON
Copied to clipboard
{
  "error": "string"
}
422Unprocessable
JSON
Copied to clipboard
{
  "errors": {}
}

List branches from repository

GET/api/v0/orgs/{org_uuid}/providers/{provider}/repositories/{repository}/branches
Path parameters:
org_uuidUUIDRequired#
providerstringRequired#

Allowed values: github github_enterprise_server gitlab bitbucket self_hosted_gitlab

repositorystringRequired#
Example request:
Bash
Copied to clipboard
curl https://app.cloudcannon.com/api/v0/orgs/{org_uuid}/providers/{provider}/repositories/{repository}/branches \
  -H "X-API-KEY: <your-api-key>"
Responses:
200OK
JSON
Copied to clipboard
[
  {
    "name": "string",
    "sha": "string",
    "updated_at": "2024-01-01T00:00:00Z"
  }
]
401Unauthorized
JSON
Copied to clipboard
{
  "error": "string"
}
403Forbidden
JSON
Copied to clipboard
{
  "error": "string"
}
422Unprocessable
JSON
Copied to clipboard
{
  "errors": {}
}

Clone a branch from the selected branch

POST/api/v0/orgs/{org_uuid}/providers/{provider}/repositories/{repository}/branches
Path parameters:
org_uuidUUIDRequired#
providerstringRequired#

Allowed values: github github_enterprise_server gitlab bitbucket self_hosted_gitlab

repositorystringRequired#
Request body:
namestringRequired#
branch_fromstringRequired#
Example request:
Bash
Copied to clipboard
curl https://app.cloudcannon.com/api/v0/orgs/{org_uuid}/providers/{provider}/repositories/{repository}/branches \
  -X POST \
  -H "X-API-KEY: <your-api-key>" \
  -H "Content-Type: application/json" \
  -d '{
    "name": "string",
    "branch_from": "string"
  }'
Responses:
200OK
JSON
Copied to clipboard
{
  "name": "string",
  "sha": "string",
  "updated_at": "2024-01-01T00:00:00Z"
}
401Unauthorized
JSON
Copied to clipboard
{
  "error": "string"
}
403Forbidden
JSON
Copied to clipboard
{
  "error": "string"
}
422Unprocessable
JSON
Copied to clipboard
{
  "errors": {}
}

Get organization site mountings

GET/api/v0/orgs/{org_uuid}/site-mountings
Path parameters:
org_uuidUUIDRequired#
Filters:
created_at_gtstring#
created_at_gtestring#
created_at_ltstring#
created_at_ltestring#
idinteger#
local_site_idinteger#
local_site_uuidstring#
org_idinteger#
org_uuidstring#
organisation_uuidstring#
remote_site_idinteger#
remote_site_uuidstring#
site_idinteger#
site_uuidstring#
updated_at_gtstring#
updated_at_gtestring#
updated_at_ltstring#
updated_at_ltestring#
uuidstring#
searchstring#
Pagination:
pageinteger#

Page number to fetch (1-indexed)

itemsinteger#

Number of items per page

Example request:
Bash
Copied to clipboard
curl https://app.cloudcannon.com/api/v0/orgs/{org_uuid}/site-mountings \
  -H "X-API-KEY: <your-api-key>"
Responses:
200OK
JSON
Copied to clipboard
[
  {
    "uuid": "string",
    "id": 0,
    "local_site_id": 0,
    "local_path": "string",
    "remote_site_id": 0,
    "remote_path": "string",
    "remote_artifact": "string",
    "local_site": {
      "uuid": "00000000-0000-0000-0000-000000000000",
      "id": 0,
      "site_name": "string",
      "subpath": "string",
      "stable_domain": "string",
      "ssg": "string",
      "last_synced": "2024-01-01T00:00:00Z",
      "last_output": "2024-01-01T00:00:00Z",
      "last_compiled": "2024-01-01T00:00:00Z",
      "last_compressed": "2024-01-01T00:00:00Z",
      "last_internationalised": "2024-01-01T00:00:00Z",
      "last_published": "2024-01-01T00:00:00Z",
      "last_cleaned": "2024-01-01T00:00:00Z",
      "storage_provider": "string",
      "client_author_name": "string",
      "client_author_email": "string",
      "create_source": "string",
      "hosting_choice": "string",
      "building_locked": true,
      "editing_locked": true,
      "uploads_locked": true,
      "browsing_locked": true,
      "last_compiled_success": "2024-01-01T00:00:00Z",
      "preview_url": "string",
      "documentation_url": "string",
      "support_url": "string",
      "client_editor_route": "string",
      "active_quest": "string",
      "created_at": "2024-01-01T00:00:00Z",
      "updated_at": "2024-01-01T00:00:00Z",
      "mode": "string",
      "project_id": 0,
      "project_uuid": "string",
      "pr_number": 0,
      "pr_external_url": "string",
      "cloudcannon_config_path": "string",
      "output_storage_provider": "string",
      "domain_name": "string",
      "site_icon_state": "string",
      "sync_error": "string",
      "output_error": "string",
      "has_open_editing_session": true,
      "storage_provider_details": {},
      "output_storage_provider_data": {},
      "has_site_password": true,
      "has_client_password": true,
      "has_main_source_dam": true,
      "build_configuration": {}
    },
    "remote_site": {
      "uuid": "00000000-0000-0000-0000-000000000000",
      "id": 0,
      "site_name": "string",
      "subpath": "string",
      "stable_domain": "string",
      "ssg": "string",
      "last_synced": "2024-01-01T00:00:00Z",
      "last_output": "2024-01-01T00:00:00Z",
      "last_compiled": "2024-01-01T00:00:00Z",
      "last_compressed": "2024-01-01T00:00:00Z",
      "last_internationalised": "2024-01-01T00:00:00Z",
      "last_published": "2024-01-01T00:00:00Z",
      "last_cleaned": "2024-01-01T00:00:00Z",
      "storage_provider": "string",
      "client_author_name": "string",
      "client_author_email": "string",
      "create_source": "string",
      "hosting_choice": "string",
      "building_locked": true,
      "editing_locked": true,
      "uploads_locked": true,
      "browsing_locked": true,
      "last_compiled_success": "2024-01-01T00:00:00Z",
      "preview_url": "string",
      "documentation_url": "string",
      "support_url": "string",
      "client_editor_route": "string",
      "active_quest": "string",
      "created_at": "2024-01-01T00:00:00Z",
      "updated_at": "2024-01-01T00:00:00Z",
      "mode": "string",
      "project_id": 0,
      "project_uuid": "string",
      "pr_number": 0,
      "pr_external_url": "string",
      "cloudcannon_config_path": "string",
      "output_storage_provider": "string",
      "domain_name": "string",
      "site_icon_state": "string",
      "sync_error": "string",
      "output_error": "string",
      "has_open_editing_session": true,
      "storage_provider_details": {},
      "output_storage_provider_data": {},
      "has_site_password": true,
      "has_client_password": true,
      "has_main_source_dam": true,
      "build_configuration": {}
    }
  }
]
403Forbidden
JSON
Copied to clipboard
{
  "error": "string"
}

Get organization sites

GET/api/v0/orgs/{org_uuid}/sites
Path parameters:
org_uuidUUIDRequired#
Filters:
authenticationstring#
auto_generate_sslboolean#
base_domain_idinteger#
base_domain_uuidstring#
bearer_tokensstring | integer | boolean | string (date-time)#
browsing_lockedboolean#
building_lockedboolean#
cloudflare_errorstring#
cloudflare_hostnamestring | integer | boolean | string (date-time)#
cloudflare_hostname_uuidstring#
compile_errorstring#
compiledstring | integer | boolean | string (date-time)#
created_at_gtstring#
created_at_gtestring#
created_at_ltstring#
created_at_ltestring#
custom_ssl_expiringstring | integer | boolean | string (date-time)#
dam_uuidstring#
domain_namestring#
domain_not_resolvingstring | integer | boolean | string (date-time)#
editing_lockedboolean#
errorstring | integer | boolean | string (date-time)#
failing_formsstring | integer | boolean | string (date-time)#
filesstring#
force_sslboolean#
has_client_passwordstring | integer | boolean | string (date-time)#
has_domain_namestring | integer | boolean | string (date-time)#
has_output_storage_providerstring | integer | boolean | string (date-time)#
has_sourcestring | integer | boolean | string (date-time)#
has_storage_providerstring | integer | boolean | string (date-time)#
has_subpathstring | integer | boolean | string (date-time)#
has_unsaved_changesstring | integer | boolean | string (date-time)#
hosting_choicestring#
idinteger#
inactivestring | integer | boolean | string (date-time)#
inbox_uuidstring#
last_compiledstring#
last_compiled_statusstring | integer | boolean | string (date-time)#
last_compiled_successstring#
last_syncedstring#
latest_hosted_build_idinteger#
localesstring#
needs_cleanboolean#
never_syncedstring | integer | boolean | string (date-time)#
old_includesstring | integer | boolean | string (date-time)#
organisation_idinteger#
organisation_uuidstring#
output_errorstring#
output_storage_providerstring#
owner_lockedstring | integer | boolean | string (date-time)#
owner_trialstring | integer | boolean | string (date-time)#
project_idinteger#
project_uuidstring#
publish_branchstring | integer | boolean | string (date-time)#
repeatablesstring | integer | boolean | string (date-time)#
site_namestring#
site_scannerstring | integer | boolean | string (date-time)#
sourcestring | integer | boolean | string (date-time)#
ssgstring#
ssl_certificatestring | integer | boolean | string (date-time)#
ssl_certificate_expiredstring | integer | boolean | string (date-time)#
ssl_certificate_idinteger#
storage_providerstring#
storage_provider_details_full_namestring | integer | boolean | string (date-time)#
sync_errorstring#
updated_at_gtstring#
updated_at_gtestring#
updated_at_ltstring#
updated_at_ltestring#
uploads_lockedboolean#
use_rbenv_buildsboolean#
uses_i18nboolean#
uuidstring#
searchstring#
Sorting:
sort_attributestring#

Attribute to sort the results by

Defaults to: "id"

Allowed values: id uuid site_name domain_name created_at updated_at last_synced last_compressed last_compiled last_cleaned priority_domain_at storage_provider stable_domain subpath sync_error

sort_directionstring#

Direction to sort the results

Defaults to: "ASC"

Allowed values: ASC DESC

Pagination:
pageinteger#

Page number to fetch (1-indexed)

itemsinteger#

Number of items per page

Example request:
Bash
Copied to clipboard
curl https://app.cloudcannon.com/api/v0/orgs/{org_uuid}/sites \
  -H "X-API-KEY: <your-api-key>"
Responses:
200OK
JSON
Copied to clipboard
[
  {
    "uuid": "00000000-0000-0000-0000-000000000000",
    "id": 0,
    "site_name": "string",
    "subpath": "string",
    "stable_domain": "string",
    "ssg": "string",
    "last_synced": "2024-01-01T00:00:00Z",
    "last_output": "2024-01-01T00:00:00Z",
    "last_compiled": "2024-01-01T00:00:00Z",
    "last_compressed": "2024-01-01T00:00:00Z",
    "last_internationalised": "2024-01-01T00:00:00Z",
    "last_published": "2024-01-01T00:00:00Z",
    "last_cleaned": "2024-01-01T00:00:00Z",
    "storage_provider": "string",
    "client_author_name": "string",
    "client_author_email": "string",
    "create_source": "string",
    "hosting_choice": "string",
    "building_locked": true,
    "editing_locked": true,
    "uploads_locked": true,
    "browsing_locked": true,
    "last_compiled_success": "2024-01-01T00:00:00Z",
    "preview_url": "string",
    "documentation_url": "string",
    "support_url": "string",
    "client_editor_route": "string",
    "active_quest": "string",
    "created_at": "2024-01-01T00:00:00Z",
    "updated_at": "2024-01-01T00:00:00Z",
    "mode": "string",
    "project_id": 0,
    "project_uuid": "string",
    "pr_number": 0,
    "pr_external_url": "string",
    "cloudcannon_config_path": "string",
    "output_storage_provider": "string",
    "domain_name": "string",
    "site_icon_state": "string",
    "sync_error": "string",
    "output_error": "string",
    "has_open_editing_session": true,
    "storage_provider_details": {},
    "output_storage_provider_data": {},
    "has_site_password": true,
    "has_client_password": true,
    "has_main_source_dam": true,
    "build_configuration": {}
  }
]
401Unauthorized
JSON
Copied to clipboard
{
  "error": "string"
}
403Forbidden
JSON
Copied to clipboard
{
  "error": "string"
}

Create site

POST/api/v0/orgs/{org_uuid}/sites
Path parameters:
org_uuidUUIDRequired#
Request body:
site_namestringRequired#
editing_lockedbooleanNullable#
active_queststringNullable#
cloudcannon_config_pathstringNullable#
stable_domainstring#
flagsobject#
Example request:
Bash
Copied to clipboard
curl https://app.cloudcannon.com/api/v0/orgs/{org_uuid}/sites \
  -X POST \
  -H "X-API-KEY: <your-api-key>" \
  -H "Content-Type: application/json" \
  -d '{
    "site_name": "string",
    "editing_locked": true,
    "active_quest": "string",
    "cloudcannon_config_path": "string",
    "stable_domain": "string",
    "flags": {}
  }'
Responses:
201Created
JSON
Copied to clipboard
{
  "auto_generate_ssl": true,
  "authentication": "string",
  "default_locale": "string",
  "uses_i18n": true,
  "geolocation": true,
  "serve_extensionless": true,
  "flags": {},
  "force_extensionless": true,
  "force_ssl": true,
  "keep_form_hook_days": 0,
  "needs_clean": true,
  "automatic_builds_state": "string",
  "publish_mode": "string",
  "destroy_on_publish": true,
  "priority_domain_at": "2024-01-01T00:00:00Z",
  "prevent_client_password_save": true,
  "recaptcha_key": "string",
  "recaptcha_secret": "string",
  "saml_data": "string",
  "compiler_order": [
    "string"
  ],
  "base_domain_id": 0,
  "latest_hosted_build_id": 0,
  "ssl_certificate_id": 0,
  "main_source_dam": "string",
  "editor_group_uuid": "00000000-0000-0000-0000-000000000000",
  "technical_editor_group_uuid": "00000000-0000-0000-0000-000000000000",
  "client_share_group_uuid": "00000000-0000-0000-0000-000000000000",
  "organisation_uuid": "00000000-0000-0000-0000-000000000000",
  "base_domain_uuid": "00000000-0000-0000-0000-000000000000",
  "cloudflare_hostname_uuid": "00000000-0000-0000-0000-000000000000",
  "latest_hosted_build_uuid": "00000000-0000-0000-0000-000000000000",
  "pending_transfer_request_uuid": "00000000-0000-0000-0000-000000000000",
  "site_inboxes": [
    {
      "uuid": "00000000-0000-0000-0000-000000000000",
      "id": 0,
      "default_inbox": true,
      "site_id": 0,
      "inbox_uuid": "string",
      "visible": true,
      "require_captcha": true,
      "created_at": "2024-01-01T00:00:00Z",
      "updated_at": "2024-01-01T00:00:00Z",
      "site_uuid": "00000000-0000-0000-0000-000000000000",
      "inbox": {
        "uuid": "00000000-0000-0000-0000-000000000000",
        "id": 0,
        "name": "string",
        "key": "string",
        "monthly_quota": 0,
        "keep_form_hook_days": 0,
        "organisation_id": 0,
        "captcha_type": "string",
        "captcha_key": "string",
        "captcha_secret": "string",
        "created_at": "2024-01-01T00:00:00Z",
        "updated_at": "2024-01-01T00:00:00Z",
        "organisation_uuid": "00000000-0000-0000-0000-000000000000",
        "inbox_targets": []
      }
    }
  ],
  "base_domain": {
    "uuid": "00000000-0000-0000-0000-000000000000",
    "id": 0,
    "base_domain": "string",
    "uses_dns": true,
    "auto_generate_ssl_failures": 0,
    "auto_generate_ssl_max_failures": 0,
    "next_ssl_generate_attempt_at": "2024-01-01T00:00:00Z",
    "ssl_generation_failing_email_sent_at": "2024-01-01T00:00:00Z",
    "in_cloudflare_beta": true,
    "cloudflare_dns_migrated": true,
    "cloudflare_zone_id": "string",
    "cloudflare_zone_create_error": "string",
    "cloudflare_zone_create_error_from_cloudflare": true,
    "mx_record": "string",
    "spf_record": "string",
    "minimum_tls_version": "string",
    "cloudflare_name_servers": [
      "string"
    ],
    "name_servers": [
      "string"
    ],
    "cloudflare_dns_migration": [
      {}
    ],
    "a_record": [
      {
        "subdomain": "string",
        "target": "string"
      }
    ],
    "cname_record": [
      {
        "subdomain": "string",
        "target": "string"
      }
    ],
    "txt_record": [
      {
        "subdomain": "string",
        "target": "string"
      }
    ]
  },
  "site_dams": [
    {
      "uuid": "string",
      "id": 0,
      "site_id": 0,
      "dam_uuid": "string",
      "config": {},
      "created_at": "2024-01-01T00:00:00Z",
      "updated_at": "2024-01-01T00:00:00Z",
      "uploads_locked": true,
      "reference_key": "string",
      "site_uuid": "00000000-0000-0000-0000-000000000000",
      "dam": {
        "uuid": "00000000-0000-0000-0000-000000000000",
        "id": 0,
        "access_key": "string",
        "base_url": "string",
        "created_at": "2024-01-01T00:00:00Z",
        "dam_type": "string",
        "name": "string",
        "updated_at": "2024-01-01T00:00:00Z",
        "max_upload_size": 0,
        "organisation_uuid": "00000000-0000-0000-0000-000000000000",
        "config": {},
        "extra_params": "string"
      }
    }
  ]
}
401Unauthorized
JSON
Copied to clipboard
{
  "error": "string"
}
403Forbidden
JSON
Copied to clipboard
{
  "error": "string"
}
422Unprocessable
JSON
Copied to clipboard
{
  "errors": {}
}

Create site from a remote repo without keeping the connection with git

POST/api/v0/orgs/{org_uuid}/sites/connect
Path parameters:
org_uuidUUIDRequired#
Request body:
providerstringRequired#
repostringRequired#
branchstringRequired#
folderstring#
site_namestringRequired#
editing_lockedbooleanNullable#
active_queststringNullable#
cloudcannon_config_pathstringNullable#
stable_domainstring#
flagsobject#
Example request:
Bash
Copied to clipboard
curl https://app.cloudcannon.com/api/v0/orgs/{org_uuid}/sites/connect \
  -X POST \
  -H "X-API-KEY: <your-api-key>" \
  -H "Content-Type: application/json" \
  -d '{
    "provider": "string",
    "repo": "string",
    "branch": "string",
    "folder": "string",
    "site_name": "string",
    "editing_locked": true,
    "active_quest": "string",
    "cloudcannon_config_path": "string",
    "stable_domain": "string",
    "flags": {}
  }'
Responses:
201Created
JSON
Copied to clipboard
{
  "auto_generate_ssl": true,
  "authentication": "string",
  "default_locale": "string",
  "uses_i18n": true,
  "geolocation": true,
  "serve_extensionless": true,
  "flags": {},
  "force_extensionless": true,
  "force_ssl": true,
  "keep_form_hook_days": 0,
  "needs_clean": true,
  "automatic_builds_state": "string",
  "publish_mode": "string",
  "destroy_on_publish": true,
  "priority_domain_at": "2024-01-01T00:00:00Z",
  "prevent_client_password_save": true,
  "recaptcha_key": "string",
  "recaptcha_secret": "string",
  "saml_data": "string",
  "compiler_order": [
    "string"
  ],
  "base_domain_id": 0,
  "latest_hosted_build_id": 0,
  "ssl_certificate_id": 0,
  "main_source_dam": "string",
  "editor_group_uuid": "00000000-0000-0000-0000-000000000000",
  "technical_editor_group_uuid": "00000000-0000-0000-0000-000000000000",
  "client_share_group_uuid": "00000000-0000-0000-0000-000000000000",
  "organisation_uuid": "00000000-0000-0000-0000-000000000000",
  "base_domain_uuid": "00000000-0000-0000-0000-000000000000",
  "cloudflare_hostname_uuid": "00000000-0000-0000-0000-000000000000",
  "latest_hosted_build_uuid": "00000000-0000-0000-0000-000000000000",
  "pending_transfer_request_uuid": "00000000-0000-0000-0000-000000000000",
  "site_inboxes": [
    {
      "uuid": "00000000-0000-0000-0000-000000000000",
      "id": 0,
      "default_inbox": true,
      "site_id": 0,
      "inbox_uuid": "string",
      "visible": true,
      "require_captcha": true,
      "created_at": "2024-01-01T00:00:00Z",
      "updated_at": "2024-01-01T00:00:00Z",
      "site_uuid": "00000000-0000-0000-0000-000000000000",
      "inbox": {
        "uuid": "00000000-0000-0000-0000-000000000000",
        "id": 0,
        "name": "string",
        "key": "string",
        "monthly_quota": 0,
        "keep_form_hook_days": 0,
        "organisation_id": 0,
        "captcha_type": "string",
        "captcha_key": "string",
        "captcha_secret": "string",
        "created_at": "2024-01-01T00:00:00Z",
        "updated_at": "2024-01-01T00:00:00Z",
        "organisation_uuid": "00000000-0000-0000-0000-000000000000",
        "inbox_targets": []
      }
    }
  ],
  "base_domain": {
    "uuid": "00000000-0000-0000-0000-000000000000",
    "id": 0,
    "base_domain": "string",
    "uses_dns": true,
    "auto_generate_ssl_failures": 0,
    "auto_generate_ssl_max_failures": 0,
    "next_ssl_generate_attempt_at": "2024-01-01T00:00:00Z",
    "ssl_generation_failing_email_sent_at": "2024-01-01T00:00:00Z",
    "in_cloudflare_beta": true,
    "cloudflare_dns_migrated": true,
    "cloudflare_zone_id": "string",
    "cloudflare_zone_create_error": "string",
    "cloudflare_zone_create_error_from_cloudflare": true,
    "mx_record": "string",
    "spf_record": "string",
    "minimum_tls_version": "string",
    "cloudflare_name_servers": [
      "string"
    ],
    "name_servers": [
      "string"
    ],
    "cloudflare_dns_migration": [
      {}
    ],
    "a_record": [
      {
        "subdomain": "string",
        "target": "string"
      }
    ],
    "cname_record": [
      {
        "subdomain": "string",
        "target": "string"
      }
    ],
    "txt_record": [
      {
        "subdomain": "string",
        "target": "string"
      }
    ]
  },
  "site_dams": [
    {
      "uuid": "string",
      "id": 0,
      "site_id": 0,
      "dam_uuid": "string",
      "config": {},
      "created_at": "2024-01-01T00:00:00Z",
      "updated_at": "2024-01-01T00:00:00Z",
      "uploads_locked": true,
      "reference_key": "string",
      "site_uuid": "00000000-0000-0000-0000-000000000000",
      "dam": {
        "uuid": "00000000-0000-0000-0000-000000000000",
        "id": 0,
        "access_key": "string",
        "base_url": "string",
        "created_at": "2024-01-01T00:00:00Z",
        "dam_type": "string",
        "name": "string",
        "updated_at": "2024-01-01T00:00:00Z",
        "max_upload_size": 0,
        "organisation_uuid": "00000000-0000-0000-0000-000000000000",
        "config": {},
        "extra_params": "string"
      }
    }
  ]
}
401Unauthorized
JSON
Copied to clipboard
{
  "error": "string"
}
403Forbidden
JSON
Copied to clipboard
{
  "error": "string"
}
422Unprocessable
JSON
Copied to clipboard
{
  "errors": {}
}

Get organization Ssl Certificates

GET/api/v0/orgs/{org_uuid}/ssl-certificates
Path parameters:
org_uuidUUIDRequired#
Filters:
autorenewboolean#
created_at_gtstring#
created_at_gtestring#
created_at_ltstring#
created_at_ltestring#
expiredstring | integer | boolean | string (date-time)#
expires_at_gtstring#
expires_at_gtestring#
expires_at_ltstring#
expires_at_ltestring#
has_cloudflare_idinteger#
idinteger#
namestring#
organisation_idinteger#
organisation_uuidstring#
updated_at_gtstring#
updated_at_gtestring#
updated_at_ltstring#
updated_at_ltestring#
uuidstring#
searchstring#
Sorting:
sort_attributestring#

Attribute to sort the results by

Defaults to: "id"

Allowed values: id uuid name expires_at created_at

sort_directionstring#

Direction to sort the results

Defaults to: "ASC"

Allowed values: ASC DESC

Pagination:
pageinteger#

Page number to fetch (1-indexed)

itemsinteger#

Number of items per page

Example request:
Bash
Copied to clipboard
curl https://app.cloudcannon.com/api/v0/orgs/{org_uuid}/ssl-certificates \
  -H "X-API-KEY: <your-api-key>"
Responses:
200OK
JSON
Copied to clipboard
[
  {
    "uuid": "00000000-0000-0000-0000-000000000000",
    "id": 0,
    "name": "string",
    "autorenew": true,
    "expires_at": "2024-01-01T00:00:00Z",
    "cloudflare_id": "string",
    "cloudflare_data": {},
    "organisation_uuid": "00000000-0000-0000-0000-000000000000",
    "sites": "string"
  }
]
401Unauthorized
JSON
Copied to clipboard
{
  "error": "string"
}
403Forbidden
JSON
Copied to clipboard
{
  "error": "string"
}

Create Ssl Certificate

POST/api/v0/orgs/{org_uuid}/ssl-certificates
Path parameters:
org_uuidUUIDRequired#
Request body:
namestringRequired#
expires_atstring (date-time)Required#
crtstringRequired#
keystringRequired#
chainstring#
autorenewbooleanNullable#
cipherstring#
Example request:
Bash
Copied to clipboard
curl https://app.cloudcannon.com/api/v0/orgs/{org_uuid}/ssl-certificates \
  -X POST \
  -H "X-API-KEY: <your-api-key>" \
  -H "Content-Type: application/json" \
  -d '{
    "name": "string",
    "expires_at": "2024-01-01T00:00:00Z",
    "crt": "string",
    "key": "string",
    "chain": "string",
    "autorenew": true,
    "cipher": "string"
  }'
Responses:
201Created
JSON
Copied to clipboard
{
  "uuid": "00000000-0000-0000-0000-000000000000",
  "id": 0,
  "name": "string",
  "autorenew": true,
  "expires_at": "2024-01-01T00:00:00Z",
  "cloudflare_id": "string",
  "cloudflare_data": {},
  "organisation_uuid": "00000000-0000-0000-0000-000000000000",
  "sites": "string"
}
401Unauthorized
JSON
Copied to clipboard
{
  "error": "string"
}
403Forbidden
JSON
Copied to clipboard
{
  "error": "string"
}
422Unprocessable
JSON
Copied to clipboard
{
  "errors": {}
}

Redirect to whitelabel logo

GET/api/v0/orgs/{org_uuid}/whitelabel
Path parameters:
org_uuidUUIDRequired#
Example request:
Bash
Copied to clipboard
curl https://app.cloudcannon.com/api/v0/orgs/{org_uuid}/whitelabel \
  -H "X-API-KEY: <your-api-key>"
Responses:
204Not present
307Redirect
402FeatureNotOnPlan
JSON
Copied to clipboard
{
  "errors": {}
}
403Forbidden
JSON
Copied to clipboard
{
  "error": "string"
}

Redirect to brand logo

GET/api/v0/orgs/{org_uuid}/whitelabel/brand
Path parameters:
org_uuidUUIDRequired#
Example request:
Bash
Copied to clipboard
curl https://app.cloudcannon.com/api/v0/orgs/{org_uuid}/whitelabel/brand \
  -H "X-API-KEY: <your-api-key>"
Responses:
204Not present
307Redirect
402FeatureNotOnPlan
JSON
Copied to clipboard
{
  "errors": {}
}
403Forbidden
JSON
Copied to clipboard
{
  "error": "string"
}
Open in a new tab