Recent searches

in

Organizations

On this page

  1. GETList my Organizations
  2. GETGet an Organization
  3. PUTUpdate an Organization
  4. GETDownload an Organization's access review as CSV
  5. GETList an Organization's Activity
  6. GETGet an Organization's Build duration analytics
  7. GETGet an Organization's total Build duration
  8. GETGet an Organization's Hosting Bandwidth
  9. GETGet an Organization's Hosting Bandwidth per Site
  10. GETGet an Organization's Hosting Bandwidth per URL
  11. GETGet an Organization's total Hosting Bandwidth
  12. GETList an Organization's API Keys
  13. POSTCreate an Organization's API Key with scoped permissions
  14. GETGet an Organization's API Key
  15. DELETEDelete an Organization's API Key
  16. GETList an Organization's Base Domains
  17. POSTAdd a Base Domain
  18. PUTUpdate an Organization's billing details
  19. GETList an Organization's DAMs
  20. POSTAdd a DAM
  21. GETList an Organization's Permission Groups
  22. POSTCreate a custom Permission Group with scoped permissions
  23. GETList an Organization's Inboxes
  24. POSTCreate an Inbox
  25. GETList an Organization's Members
  26. GETGet an Organization's Member or pending Member
  27. DELETERemove an Organization's Member or cancel a pending invitation
  28. GETList an Organization's pending Members
  29. GETList my Permission Groups for an Organization
  30. GETList an Organization's Projects
  31. POSTCreate a Project
  32. GETList a Git Provider's app installations
  33. GETList a Git Provider's repositories
  34. GETList a repository's branches
  35. POSTCreate a branch from an existing branch
  36. GETList an Organization's Site Mountings
  37. GETList an Organization's Sites
  38. POSTCreate a Site
  39. POSTCreate a Site by copying a repository, without connecting Git
  40. GETList an Organization's SSL Certificates
  41. POSTCreate an SSL Certificate
  42. GETView an Organization's Badge
  43. GETView an Organization's Sites Browser Logo

List my Organizations

GET/api/v0/orgs
Filters:
exclude_partner_clientsboolean#

Exclude Organizations managed as clients of my partner Organizations

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 an Organization

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 an Organization

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's 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 an Organization's 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 an Organization's Build duration analytics

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

The start of the reporting period

end_timestringRequired#

The end of the reporting period

periodstringRequired#

The interval to group results by

Allowed values: hourly daily weekly

timezonestringRequired#

The timezone for the reporting period

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 an Organization's total Build duration

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

The start of the reporting period

end_timestringRequired#

The end of the reporting period

periodstringRequired#

The interval to group results by

Allowed values: hourly daily weekly

timezonestringRequired#

The timezone for the reporting period

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 an Organization's Hosting Bandwidth

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

The start of the reporting period

end_timestringRequired#

The end of the reporting period

periodstringRequired#

The interval to group results by

Allowed values: hourly daily weekly

timezonestringRequired#

The timezone for the reporting period

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 an Organization's Hosting Bandwidth per Site

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

The start of the reporting period

end_timestringRequired#

The end of the reporting period

periodstringRequired#

The interval to group results by

Allowed values: hourly daily weekly

timezonestringRequired#

The timezone for the reporting period

offsetinteger#

The number of results to skip

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 an Organization's Hosting Bandwidth per URL

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

The start of the reporting period

end_timestringRequired#

The end of the reporting period

periodstringRequired#

The interval to group results by

Allowed values: hourly daily weekly

timezonestringRequired#

The timezone for the reporting period

offsetinteger#

The number of results to skip

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 an Organization's total Hosting Bandwidth

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

The start of the reporting period

end_timestringRequired#

The end of the reporting period

periodstringRequired#

The interval to group results by

Allowed values: hourly daily weekly

timezonestringRequired#

The timezone for the reporting period

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's 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's 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's 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"
}

List an Organization's 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"
}

Add a 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 an Organization's 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": {}
}

List an Organization's 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"
}

Add a 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 Permission 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#

Filter Permission Groups by name

only_member_ofboolean#

Only include Permission Groups I'm 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 Permission 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": {}
}

List an Organization's 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 an Inbox

POST/api/v0/orgs/{org_uuid}/inboxes
Path parameters:
org_uuidUUIDRequired#
Request body:
namestringRequired#

A name for the Inbox.

keystringRequired#

The Inbox's unique key.

monthly_quotaintegerNullable#

The maximum number of submissions to accept per month.

keep_form_hook_daysintegerNullable#

The number of days to retain submissions.

captcha_keystringNullable#

The captcha provider's site key.

captcha_secretstringNullable#

The captcha provider's secret key.

captcha_typestringNullable#

The captcha provider: google (reCAPTCHA), hcaptcha, or turnstile.

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 an Organization's 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's Member or pending Member

GET/api/v0/orgs/{org_uuid}/members/{email}
Path parameters:
org_uuidUUIDRequired#
emailstringRequired#

The Member or pending Member's email address

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's Member or cancel a pending invitation

DELETE/api/v0/orgs/{org_uuid}/members/{email}
Path parameters:
org_uuidUUIDRequired#
emailstringRequired#

The Member or pending Member's email address

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

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",
    "invited_by": "string",
    "invited_by_uuid": "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"
}

List my 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": {}
}

List an Organization's 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#

Filter Projects by name

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 a 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 a Git Provider's app installations

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

The Git Provider

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 a Git Provider's repositories

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

The Git Provider

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 a repository's branches

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

The Git Provider

Allowed values: github github_enterprise_server gitlab bitbucket self_hosted_gitlab

repositorystringRequired#

The repository's full name

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": {}
}

Create a branch from an existing branch

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

The Git Provider

Allowed values: github github_enterprise_server gitlab bitbucket self_hosted_gitlab

repositorystringRequired#

The repository's full name

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": {}
}

List an Organization's 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"
}

List an Organization's 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#

Filter Sites by a search term

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 a 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 a Site by copying a repository, without connecting 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": {}
}

List an Organization's 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 an 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": {}
}

View an Organization's Badge

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"
}

View an Organization's Sites Browser 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