En andra transitoperatör live i Chișinău — 20 Gbps blandad transitkapacitet. 20 Gbps blandad uppkoppling nu i drift Varför Republiken Moldavien

En token, och allt panelen klarar av

JSON via HTTPS. Inget SDK krävs, inget separat utvecklarkonto, och ingen slutpunkt som finns i panelen men inte här.

Skapa en server

curl -X POST https://api.vpsoffshore.com/v1/servers \
  -H "Authorization: Bearer $TOKEN" \
  -d '{"plan":"reef","image":"debian-13"}'

Returnerar ett bygg-ID omedelbart. Maskinen svarar på SSH cirka sextio sekunder senare, och adressen routas innan autentiseringsuppgifterna skickas.

20 slutpunkter

Allt, i fem grupper

Bas-URL https://api.vpsoffshore.com/v1. Versionshanterad i sökvägen; v1 fortsätter fungera när v2 finns, och datumet då den upphör meddelas ett år i förväg.

Servrar

GET /servers Varje tjänst på kontot, med status, plan och adresser.
POST /servers Skapa en. Returnerar omedelbart ett build-id; servern är nåbar cirka en minut senare.
GET /servers/{id} En tjänst, inklusive resursanvändning i realtid under den senaste timmen.
PATCH /servers/{id} Byt plan. Storleken ändras utan ominstallation där disken tillåter det.
DELETE /servers/{id} Förstör den. Diskarna sparas i 14 dagar, och rensas sedan innan de återutfärdas.
POST /servers/{id}/actions reboot · shutdown · start · rebuild · rescue · reset-password.

Lagring

GET /servers/{id}/snapshots Ögonblicksbilder för en tjänst, nyaste först.
POST /servers/{id}/snapshots Ta en. Tunn, så den är snabb och inte dubblar din diskanvändning.
POST /snapshots/{id}/restore Återställ på plats, eller till en annan tjänst med samma plan eller större.
DELETE /snapshots/{id} Ta bort en ögonblicksbild.

Nätverk

GET /servers/{id}/addresses Adresser routade till en tjänst, v4 och v6.
POST /servers/{id}/addresses Begär en extra adress, eller ett /29.
PUT /addresses/{ip}/rdns Ställ in omvänd DNS. Träder i kraft inom en minut, inte vid nästa zonuppdatering.
GET /servers/{id}/bandwidth Överföringsräknare. Informativt — det finns ingen kvot att överskrida.

Katalog

GET /plans Varje plan med sin specifikation och sitt pris. Samma källa som den här sajten renderas från.
GET /images Tillgängliga avbildningar och ISO-filer, inklusive de du har laddat upp.
POST /images Ladda upp en ISO via URL. Startar med en ansluten konsol.

Fakturering

GET /invoices Fakturor, betalda och obetalda, med mynt och kedjetransaktion.
POST /invoices/{id}/pay Utfärda en betalningsadress för ett av de 8 godkända mynten.
GET /credits Tillämpade SLA-kompensationer, med den incident som orsakade var och en.

Allt panelen klarar av finns här, och inget här saknas i panelen. När de två skiljer sig åt är det en bugg — meddela oss från panelen, så åtgärdas det i stället för att dokumenteras som avsett beteende.

Hur det beter sig

Fyra beslut du märker inom en timme

Ett API bedöms utifrån sina dåliga vägar, inte sina goda. Tre av de fyra nedan handlar om vad som händer när något går fel.

En token, skapad i panelen

Skickas som en bearer-token. Begränsa den till skrivskyddad åtkomst eller till en enda tjänst om du vill; token är oberoende av ditt lösenord och att återkalla en loggar aldrig ut dig.

JSON in, JSON ut, ingen SDK behövs

Ren HTTPS utan anpassat kuvert, ingen XML-reserv och ingen signeringsritual. Om curl klarar det har du en klient. Officiella bibliotek finns för Go, Python och TypeScript och inget av dem krävs.

Frekvensgränser du inte råkar överskrida

600 förfrågningar per minut och token, 60 för skapandeanrop. Varje svar innehåller den återstående budgeten i en header, och vid överskridande returneras 429 med antalet sekunder att vänta — aldrig ett tyst bortfall.

Felmeddelanden som säger vad du ska göra

En 4xx innehåller en maskinläsbar kod, en förklarande mening och det fält som är felaktigt. Vi vill hellre returnera ett långt felmeddelande än ett kort som du måste gissa dig till.

De två sakerna du skriver en gång

Autentisering, och hur ett fel ser ut

Båda är värda att läsa innan du skriver det första anropet snarare än efter det första felet.

Autentisera

curl https://api.vpsoffshore.com/v1/servers \
  -H "Authorization: Bearer $TOKEN"

Tokens skapas i kundpanelen och kan begränsas till skrivskyddad åtkomst eller till en enskild tjänst. De är oberoende av ditt lösenord, och att återkalla en token loggar inte ut dig någonstans.

Läs om hastighetsbegränsningen

X-RateLimit-Remaining: 574
X-RateLimit-Reset: 41

På varje svar, inte bara det som misslyckas. Överskrids gränsen returneras 429 med antalet sekunder att vänta, aldrig en tyst utebliven leverans och aldrig ett förkortat svar.

Ett felmeddelande anger fältet

{"error":"plan_unknown",
 "message":"No plan named 'reff'. Did you mean 'reef'?",
 "field":"plan"}

En maskinläsbar kod, en mening på vanligt språk och fältet som orsakar felet. Långa felmeddelanden är billigare än korta som man måste gissa sig till.

Kontrollera byggstatus

curl https://api.vpsoffshore.com/v1/servers/$ID \
  -H "Authorization: Bearer $TOKEN" | jq .state

Går från buildingrunning. Det finns ingen webhook du måste registrera innan du kan skapa något, och att pinga en gång per sekund ligger inom gränsen.

Inget att ansöka om

Token finns i panelen, och panelen ingår med den första servern

Inget utvecklarkonto, inget godkännande, ingen sandbox som beter sig annorlunda än produktionen.

Språk

Läs den här webbplatsen på ditt språk

Tillgängligt på 28 språk idag. Resten håller på att översättas.