En küçük kapsamlı token'ı oluşturun
Token'lar panelde hesap altında oluşturulur ve read, write, billing kapsamlarını taşır. write kapsamına sahip bir token sunucu sipariş edebilir, yani sızdırılmış bir token size para kaybettirir. Bir izleme scriptine yalnızca read verin, başka bir şey vermeyin.
Oradayken kullanmaya değer iki ayar: bir son kullanma tarihi ve token'ı otomasyonunuzun çalıştığı ön eke sabitleyen bir kaynak kısıtlaması. Her ikisi de isteğe bağlıdır. Her ikisi de ucuzdur.
Değer yalnızca bir kez gösterilir, çünkü token yerine hash'ini saklarız. Kaybetmek yenisini oluşturmak anlamına gelir.
export Paragon_TOKEN=...Kabuk geçmişinden daha iyidir, katılımsız çalışan bir makinede:
systemd-creds encrypt token.txt /etc/credstore.encrypted/paragon-tokenİlk çağrı
curl -s https://paragonvps.com/api/v1/account -H "Authorization: Bearer $Paragon_TOKEN" | jq .Her şey JSON'dur, her şey /api/v1 altında yaşar ve her yanıt bir request_id başlığı taşır. Bir bilette bunu alıntılarsanız, size saatin kaç olduğunu sormak yerine saniyeler içinde tam çağrıyı buluruz.
curl -s https://paragonvps.com/api/v1/instances -H "Authorization: Bearer $Paragon_TOKEN" | jq -r '.[] | .id + " " + .hostname + " " + .site + " " + .state'Sipariş verme
curl -s -X POST https://paragonvps.com/api/v1/instances -H "Authorization: Bearer $Paragon_TOKEN" -H "Content-Type: application/json" -H "Idempotency-Key: 2026-07-16-edge-01" -d '{"plan":"r-8","site":"AMS-01","image":"debian-13","hostname":"edge-01","ssh_keys":["primary"]}'Idempotency-Key başlığını gönderin. POST'u bu başlık olmadan tekrarlamak, insanların iki sunucu ve bir niyetle kalmasına neden olur; anahtar yirmi dört saat boyunca hatırlanır ve ikinci bir örnek oluşturmak yerine orijinal sonucu döndürür. Cloud-init user-data'sı aynı gövdede, base64 kodlu, user_data_b64 altında gönderilir.
Bir sipariş, bakiye ilk döngüyü karşılıyorsa hesap bakiyesinden düşer. Aksi takdirde yanıt bir fatura ve bir ödeme adresi taşır ve örnek, fatura ödendiğinde ortaya çıkar.
Hız limitleri ve hatalar
Token başına dakikada altı yüz istek. Bunu aşarsanız, bir 429 ve okunması gereken bir Retry-After başlığı alırsınız; döngüde sabit bir uyku ile değiştirilmesi gereken bir şey değildir.
Hatalar bir code, bir insan message ve request_id taşıyan JSON'dur. Durum size sınıfı verir: 400 yanlış bir şey gönderdiniz, 401 token geçersiz veya iptal edildi, 403 token kapsamdan yoksun, 404 mevcut değil veya size ait değil, 409 örnek bunu yapamayacak bir durumda ve 5xx bizim hatamız.
Sayfalama ve yoklama
Koleksiyonlar ?page= ve ?per_page= alır ve bir Link başlığı döndürür. Uzun işlemler engellemek yerine size bir iş verir; bu, sağlama, geçiş ve geri yüklemeyi kapsar:
curl -s https://paragonvps.com/api/v1/jobs/<job-id> -H "Authorization: Bearer $Paragon_TOKEN" | jq -r .stateBunu birkaç saniyede bir yoklayın veya bir webhook kaydedin ve yoklamayı tamamen bırakın. Webhook'lar imzalıdır; birine göre hareket etmeden önce imzayı kontrol edin.
İptal etme
Anında, panelden veya başka bir token ile:
curl -s -X DELETE https://paragonvps.com/api/v1/tokens/<token-id> -H "Authorization: Bearer $Paragon_TOKEN"Devam eden istekler biter ve bir sonraki 401 alır. Bir token'ın sızdığından şüpheleniyorsanız, önce iptal edin ve ardından araştırın. Bir token hesap e-postanızı veya ikinci faktörünüzü değiştiremez, ancak kesinlikle para harcayabilir.
Tam referans, her uç nokta ve her alan /docs/api adresindedir.