Wolkra API tokenləri wk_ ilə başlayan, layihə səviyyəsində işləyən açarlardır. https://api.wolkra.com/v1 ünvanındakı REST API-ni çağırmaq üçün tokeni Authorization: Bearer başlığında göndərin. Token oxuma və ya oxuma/yazma girişi, istəyə bağlı IP icazə siyahısı və istəyə bağlı bitmə tarixi ilə yaradılır.
Token yaradın
- Konsolda tokenin giriş əldə edəcəyi layihəyə keçin.
- API tokens bölməsini açın və Create token seçin.
- Ona harada istifadə olunduğunu göstərən ad verin, məsələn,
ci-deployvə yamonitoring-readonly. - Giriş səviyyəsini seçin:
- Oxuma: yalnız resursları siyahılamaq və baxmaq.
- Oxuma/yazma: həmçinin resursları yaratmaq, dəyişmək və silmək.
- İstəyə görə IP icazə siyahısı əlavə edin: yalnız bu ünvanlardan və ya diapazonlardan gələn sorğular qəbul olunur.
- İstəyə görə bitmə tarixi təyin edin.
- Tokeni yaradın və dərhal kopyalayın. Onu parol kimi saxlayın, məsələn, secret manager-də və ya CI sisteminizin gizli dəyişənlərində.
İlk sorğunuzu göndərin
Layihədəki serverləri siyahılayın:
curl -H "Authorization: Bearer wk_…" https://api.wolkra.com/v1/servers
Skriptlərdə tokeni əmrin içində deyil, mühit dəyişənində saxlayın:
export WOLKRA_TOKEN='wk_…'
curl -s -H "Authorization: Bearer $WOLKRA_TOKEN" https://api.wolkra.com/v1/servers | jq .
jq (sudo apt install -y jq ilə quraşdırın) JSON cavabını formatlayır.
Resurslar
API konsoldakı resursların eynisini əhatə edir:
| Yol | Resurs |
|---|---|
/servers |
bulud serverlər |
/ssh_keys |
saxlanılmış SSH açarları |
/volumes |
blok yaddaş volume-ları |
/networks |
şəxsi şəbəkələr |
/firewalls |
firewall-lar |
/load_balancers |
yük balanslaşdırıcıları |
/floating_ips |
üzən IP-lər |
/actions |
qidalanma dəyişiklikləri kimi əməliyyatlar və onların statusu |
Bütün yollar https://api.wolkra.com/v1 ünvanına nisbətəndir. Məsələn, volume-ları siyahılamaq üçün:
curl -s -H "Authorization: Bearer $WOLKRA_TOKEN" https://api.wolkra.com/v1/volumes
Əməliyyatlar (actions)
Serveri işə salmaq və ya volume qoşmaq kimi vaxt aparan dəyişikliklər əməliyyat (action) kimi icra olunur. Dəyişikliyin tamamlandığını güman etmək əvəzinə, skripti davam etdirməzdən əvvəl onların gedişatını /actions ünvanında yoxlayın.
Xətalar
API standart HTTP status kodları ilə cavab verir. Tipik mənalar:
| Status | Mənası |
|---|---|
401 |
Token yoxdur, yanlışdır və ya müddəti bitib |
403 |
İcazə yoxdur, məsələn, yalnız oxuma tokeni ilə yazma və ya icazə siyahısından kənardan gələn sorğu |
404 |
Resurs bu layihədə mövcud deyil |
429 |
Həddən çox sorğu; gözləyin və yenidən cəhd edin |
5xx |
Müvəqqəti problem; fasilə ilə yenidən cəhd edin |
Sazlama zamanı status kodunu çap edin:
curl -s -o /dev/null -w '%{http_code}\n' \
-H "Authorization: Bearer $WOLKRA_TOKEN" https://api.wolkra.com/v1/servers
Yaxşı təcrübələr
- Hər istifadə üçün bir token. CI üçün bir token, monitorinq üçün başqası, noutbukunuz üçün başqası. Birini ləğv etmək digərlərini pozmur.
- Minimum səlahiyyət. Dashboard-lar və monitorinq üçün oxuma tokenlərindən istifadə edin.
- Ünvana görə məhdudlaşdırın. Sabit serverlərdən və ya CI runner-lərdən istifadə olunan tokenlərə IP icazə siyahısı əlavə edin.
- Tokenlərə bitmə tarixi qoyun, xüsusilə müəyyən layihə və ya ayrılacaq şəxs üçün nəzərdə tutulanlara.
- Tokenləri heç vaxt git-ə commit etməyin. Biri sızarsa, onu dərhal konsolda silin və yenisini yaradın.
- Token siyahısını və təşkilatın fəaliyyət jurnalını vaxtaşırı nəzərdən keçirin.
Tokeni ləğv edin
API tokens bölməsini açın, tokeni tapın və silin. Bundan sonra onunla göndərilən sorğular uğursuz olur.
Avtomatlaşdırma
Skriptlər API-ni birbaşa HTTPS üzərindən çağırır. curl, Python-un requests, Go-nun net/http kitabxanası və ya istənilən HTTP müştərisi işləyir. Serverləri ilk açılışda tam konfiqurasiya etmək üçün API-ni cloud-init user data ilə birləşdirin.
Məhsul səhifəsində ətraflı: API. Hesabın özünü qorumaq üçün hesab təhlükəsizliyi səhifəsinə baxın.
Tez-tez verilən suallar
Wolkra API harada yerləşir?
https://api.wolkra.com/v1 ünvanında. Bu, JSON və Bearer token autentifikasiyasından istifadə edən REST API-dir.
Token nəyə giriş əldə edə bilər?
Bir layihəyə. Hər token yaradıldığı layihəyə aiddir və onun resurslarına ya oxuma, ya da oxuma/yazma girişinə malikdir.
Tokeni serverlərimin ünvanları ilə məhdudlaşdıra bilərəmmi?
Bəli. Tokeni yaradarkən IP icazə siyahısı əlavə edin, başqa istənilən ünvandan gələn sorğular rədd ediləcək.
Hansı alətlər API-ni çağıra bilər?
İstənilən HTTP müştərisi: curl, Python requests, Go net/http, JavaScript fetch və ya CI sisteminizin HTTP addımları.