title | Description | type | keywords | |||||
---|---|---|---|---|---|---|---|---|
APIv4 Reference |
Reference documentation for the Clever Cloud APIv4. Includes methods and examples for billing, deployments, load balacers, logs, etc. |
docs |
|
Clever Cloud provides a public REST API used by its own services and customers, known as /v2
.
As our platform evolves, we're progressively moving to /v4
endpoints, adding functionalities, with a more modern approach:
https://api.clever-cloud.com/v4/
While the documentation moves towards completion, this page presents the most useful endpoints and example requests available now.
{{< callout type="info" >}}
Each query response contains a Sozu-Id
. If you need help from our support team, it can help to provide it.
{{< /callout>}}
/v4/billing/organisations/{orgid}/invoices
/v4/billing/organisations/{orgid}/invoices/{invoiceid}
/v4/billing/organisations/{orgid}/invoices/{invoiceid}.html
/v4/billing/organisations/{orgid}/invoices/{invoiceid}.pdf
- Type:
GET
You can use optional parameters to filter it:
Parameter | Type | Comment |
---|---|---|
limit |
int |
|
since |
string |
ISO 8601 formatted |
until |
string |
ISO 8601 formatted |
Example response, for each invoice:
[
{
"invoice_number": "",
"kind": "",
"owner_id": "",
"address": {
"address_id": "",
"owner_id": "",
"name": "",
"company": "",
"address": "",
"city": "",
"zipcode": "",
"country_alpha2": "",
"vat_number": "",
"vat_percent": float,
"customer_cost_center": "",
"customer_purchase_order": ""
},
"emission_date": "",
"pay_date": "",
"status": "",
"currency": "",
"price_factor": float,
"discount": float,
"vat_percent": float,
"total_tax_excluded": {
"currency": "",
"amount": float,
"amount_formatted": "",
"default_display": ""
},
"total_tax": {
"currency": "",
"amount": float,
"amount_formatted": "",
"default_display": ""
},
"category": "",
"payment_provider": "",
"transaction_id": "",
"customer_order_id": ""
},
{...}
]
/v4/orchestration/organisations/{ownerId}/applications/{applicationId}/deployments
/v4/orchestration/organisations/{ownerId}/applications/{applicationId}/deployments/{deploymentId}
- Type:
GET
Example response, for each deployment:
[
{
"id": "",
"ownerId": "",
"applicationId": "",
"startDate": "",
"state": "",
"steps": [
{
"state": "",
"date": ""
},
{
"state": "",
"date": ""
},
{
"state": "",
"date": ""
}
],
"version": {
"commitId": ""
},
"origin": {
"action": "",
"cause": "",
"source": "",
"authorId": "",
"constraints": [
""
],
"priority": ""
},
"hasDedicatedBuild": boolean
},
{...}
]
/v4/orchestration/organisations/{ownerId}/applications/{applicationId}/instances
- Type:
GET
You can use optional parameters to filter it:
Parameter | Type | Comment |
---|---|---|
deploymentId |
string |
|
limit |
int |
|
excludeDeleted |
boolean |
|
since |
string |
ISO 8601 formatted |
until |
string |
ISO 8601 formatted |
order |
string |
ASC or DESC |
includeState |
string |
case sensitive, repeated |
excludeState |
string |
case sensitive, repeated |
Example response, for each instance:
[
{
"id": "",
"ownerId": "",
"applicationId": "",
"deploymentId": "",
"name": "",
"flavor": "",
"index": int,
"state": "",
"creationDate": "",
"deletionDate": "",
"network": {
"ip": "",
"port": int
},
"isBuildVm": boolean
},
{...}
]
/v4/load-balancers/organisations/{ownerId}/applications/{applicationId}/load-balancers/default
- Type:
GET
Example response:
[
{
"id": "",
"name": "",
"zoneId": "",
"dns": {
"cname": "",
"a": []
}
}
]
/v4/logs/organisations/{ownerId}/applications/{applicationId}/logs
- Type:
GET
Answers with logs in a SSE (Server-Sent Events) stream. You can use optional parameters to filter it:
Parameter | Type | Comment |
---|---|---|
deploymentId |
string |
|
instanceId |
string |
|
since |
string |
ISO 8601 formatted |
until |
string |
ISO 8601 formatted |
field |
string |
Allow to get only asked fields, repeated |
filter |
string |
Case insensitive contains type search |
limit |
int64 |
Minimum: 1 |
service |
string |
systemd service name, repeated (default: bas and bas-deploy , can be all ) |
throttleElements |
int |
Maximum elements read per throttlePerInMilliseconds , default 100 |
throttlePerInMilliseconds |
long |
Default 300 |
/v4/products/zones
/v4/products/zones/{name}
- Type:
GET
Example response, for each zone:
[
{
"id": "",
"name": "",
"country": "",
"countryCode": "",
"city": "",
"displayName": "",
"lat": float,
"lon": float,
"outboundIPs": [],
"tags": []
},
{...}
]
/v4/addon-providers/addon-pulsar/addons/{addon-id}/storage-policies
- Type:
GET
/PATCH
Define or get offload/retention policies of a [Pulsar add-on]({{< ref "/doc/addons/pulsar" >}}). Retention is how long messages are kept in the topic. Offload is how long messages are kept in the hot storage (NVMe SSD) before being moved to Cellar object storage (S3 compatible, HDD).
Example query/response:
{
"retentionPolicies": {
"sizeInMB": number,
"durationInDays": number
},
"offloadPolicies": {
"durationInDays": number,
"sizeInMB": number
}
}
A null
value means an infinite retention or no offload.