A French cloud API
A public HTTPS and JSON API at api.corcelink.fr/v1, included with every account: list and reboot your VPS, read their metrics, manage firewalls, private networks, backups, invoices and support requests from your scripts. Every route is documented on docs.corcelink.fr, with ready-to-copy examples and an “Essayer” (try it) button.

- with every account, at no extra cost
- Included
- requests per key, including 120 writes
- 600/min
- active per account, with scoped permissions
- 20 keys
- of service at least for a superseded version
- 12 months
What is the CorceLink API?
The CorceLink API is a public REST API, over HTTPS and JSON, that lets you control your CorceLink services programmatically at https://api.corcelink.fr/v1. It reads and drives your Nova VPS (power, metrics, reinstall, firewall, reverse DNS, backups), your private networks, your invoices, quotes and support requests. It is included with every client account, at no extra cost, and every route is described on docs.corcelink.fr.
Key terms
- Scoped API key
- A clk_live_… key that can only do what its permissions allow, family by family: vps:read to read VPS, vps:write to act on them, billing:read for invoices.
- Idempotency
- The guarantee that a write resent with the same Idempotency-Key header is executed only once, even after a network cut.
- Long-running operation
- An action on the machine (reboot, backup, reinstall) that returns 202 straight away, with an op-… operation to track until it completes.
What the API already controls
Every route of version 1 is live. Each family has its own permissions: a monitoring key can read everything without being able to change anything.
VPS
ReferenceList and read your VPS
Filtered by region or status.
vps:read
Start, reboot, shut down
Or force stop, as a tracked operation.
vps:write
Metrics and event log
CPU, memory, network and disk, from 1 hour to 30 days.
vps:read
Reinstall and access
Root password, SSH keys, console, ISO images.
vps:write
Firewall and IP addresses
ReferenceRead the firewall and its rules
vps:read
Change the firewall
Enable or disable, default policies; add, edit, delete rules.
vps:write
IPv4 and IPv6 addresses
Those of each VPS.
vps:read
Reverse DNS
Set or remove it, address by address.
vps:write
Backups
ReferenceList with quota
And read the backup schedule.
vps:read
Create, protect, delete
vps:write
Restore
As a tracked operation, until it completes.
vps:write
Private networks
ReferenceList and read
Networks, their attached VPS and their routes.
network:read
Rename, attach, detach
Attach a VPS from the same region, edit or detach it.
network:write
Static routes
Add or delete them, up to 20 per network.
network:write
Billing and support
ReferenceInvoices and quotes
List, line-by-line detail and PDF document.
billing:read
Read your support requests
Departments, requests and message threads.
support:read
Open, reply, close
A request, through the same channel as the client area.
support:write
Account and tracking
ReferenceAccount and key in use
account:read
Inventory of your services
All your services, across every family.
account:read
Regions and catalog
Plans with their prices, operating systems and ISO images.
vps:read
Long-running operations
Those from the last seven days, filterable by status.
vps:read
or network:read
A complete service, with no surprises
Scoped keys
Each key only has the permissions it needs, family by family, can be restricted to IPv4 or IPv6 addresses and expires after 30, 90, 180 or 365 days, or never. Revocation is immediate.
Idempotency
With the Idempotency-Key header, a write resent after a network cut is never executed twice: the original response is replayed, for 24 hours.
Tracked operations
Starting, backing up or reinstalling a VPS returns 202 straight away, with an operation to track until it completes, available for 7 days. One action at a time per VPS, and each one shows in the VPS event log.
Nothing gets overwritten
Editable resources carry an ETag: with If-Match, the API refuses a change if the resource changed since you read it (412), instead of overwriting a change made in the meantime.
Errors in French or English
RFC 9457 format, stable codes to test in your programs, messages in French or English depending on Accept-Language, and a request_id to quote to support.
“Essayer” (try it) button
Read routes can be tested from the documentation with your key, which stays in your browser. Ready-to-copy examples in cURL, Python and JavaScript.
An API that evolves without breaking your scripts
Within a version, changes are additive only: your integrations keep working as long as they tolerate unknown fields and values. Upcoming product families, such as dedicated servers, web hosting, business email and domain names, will add their own routes without changing existing ones.
- Major version in the address: /v1
- Breaking change: new version, the old one served for at least 12 months
- Deprecation and Sunset headers with the shutdown date
- Responding version in the CorceLink-Api-Version header
A single point of contact, measurable results.
We simplify your IT so you can stay focused on your business.
Talk to an expertThe common rules, in figures
The same rules for every route, documented once and for all.
Address and format
- Address
- https://api.corcelink.fr/v1
- Protocol
- HTTPS only
- Data
- JSON in UTF-8, snake_case fields
- Dates
- ISO 8601, in UTC
- Amounts
- In cents, with their currency
Keys and quotas
- Authentication
- Authorization: Bearer clk_live_…
- Active keys
- 20 per account, managed by the holder
- Requests
- 600 per minute per key
- Of which writes
- 120 per minute
- Beyond that
- 429 response with Retry-After
Pages, writes and errors
- Pagination
- Cursor-based, 1 to 100 items (20 by default)
- Idempotency
- Key kept for 24 hours
- Long-running operations
- 202 response, tracked for 7 days
- Concurrency
- ETag and If-Match (412), If-None-Match (304)
- Errors
- RFC 9457, in French or English
API documentation
Guides and reference on docs.corcelink.fr (in French): every route with its parameters and responses, examples in cURL, Python and JavaScript, and an “Essayer” (try it) button on read routes.
Guides
All documentationCreate a key, make a first call and read the response, in five minutes.
Permissions, allowed addresses, expiry and revocation of keys.
Every VPS route, with its parameters, responses and ready-to-copy examples.
Track a reboot, a backup or a reinstall until it completes.
Retry a write without the risk of doing it twice.
The RFC 9457 format, stable codes and what to do for each.
Frequently asked questions
Is the CorceLink API paid?
No: the API is included with every client account, at no extra cost. You only pay for your services, for example a Nova VPS from €7.90 per month. Each account can have up to 20 active keys, and each key gets 600 requests per minute, including 120 writes.
What can the API control today?
The account and the inventory of your services, regions and the catalog, VPS (power, metrics, event log, reinstall, SSH keys, console, ISO images), their IP addresses and reverse DNS, their firewall, private networks, VPS backups, invoices and quotes, support requests and operation tracking. Every route of version 1 is live.
Can I order a VPS through the API?
No, not today: version 1 of the API has no ordering route. A Nova VPS is ordered in the client area, where it is delivered in under 2 minutes; the API then takes over to control it: start, reinstall, firewall, reverse DNS, backups, private networks. The /v1/services inventory already lists all your services, whatever their family.
How do I protect an API key?
Give each use its own key, with minimal permissions, an expiry date and, whenever possible, a list of allowed IP addresses. Keep it in an environment variable or a secrets vault, never in a Git repository: it is only shown once, when created. At the slightest doubt, revoke it under My account > API access: it takes effect immediately.
What happens if I resend a request after a network cut?
Nothing bad if you use idempotency: send each write with a unique Idempotency-Key header, such as a UUID, and reuse it to retry. For 24 hours, the API returns the original response without repeating the action. A reboot sent twice therefore does not reboot the server twice.
How does the API evolve without breaking my scripts?
The major version is in the address (/v1) and, within a version, changes are additive only: new routes, new fields, new values. A breaking change would open a new version, and the old one would keep running for at least 12 months, with Deprecation and Sunset headers. Your programs just need to tolerate unknown fields.
Can I try the API without writing code?
Yes: in the reference on docs.corcelink.fr, read routes have an “Essayer” (try it) button that sends the request with your key, which stays in your browser and is only sent to api.corcelink.fr. Every route also has ready-to-copy examples in cURL, Python and JavaScript.
What language are error messages in?
French by default, English with the Accept-Language: en header. Errors follow the RFC 9457 format, with a stable code (missing_scope, rate_limited…) that your programs should test rather than the text, and a request_id to quote to support. Codes and values never change with the language.
Complete your infrastructure
Automate your infrastructure
An integration to build, or a product family you are waiting for in the API? Talk to our team: reply within 24 hours.
A quick question? Call 04 82 53 00 01