POST /apiv2/billing/limits
Netts tarafından belirlenen kredi limiti dahilinde kendi limitlerinizi oluşturun, değiştirin, kapatın ve açın. Netts tarafından belirlenen limitler bu uç noktalarla değiştirilemez. Sonradan ödemeli faturalandırmanın bir parçasıdır.
Uç Noktalar
| Uç Nokta | Ne Yapar |
|---|---|
POST /apiv2/billing/limits | kendi limitinizi oluşturur |
PUT /apiv2/billing/limits/{id}?scope=account | değerini değiştirir |
POST /apiv2/billing/limits/{id}/disable?scope=account | kapatır — uygulanması durur, hiçbir şey silinmez |
POST /apiv2/billing/limits/{id}/enable?scope=account | yeniden açar |
{id}, limitler bölümündeki limit id değeridir. Değişiklikler için scope=account zorunludur.
İstek Başlıkları
| Başlık | Zorunlu | Açıklama |
|---|---|---|
X-API-KEY | evet | limits.write iznine sahip API anahtarı |
X-Real-IP | evet | Anahtar beyaz listesindeki bir adres |
Idempotency-Key | evet | benzersiz bir dize, 8–128 karakter, değişiklik başına bir adet |
Content-Type | evet | application/json |
Idempotency-Key, yeniden denemeyi güvenli hale getirir. İsteği aynı anahtar ve aynı gövde ile tekrarladığınızda — örneğin bir zaman aşımından sonra — orijinal yanıtı geri alırsınız; değişiklik iki kez yapılmaz. Farklı bir gövdeye sahip aynı anahtar 409 idempotency_conflict ile reddedilir.
expectedRevision, görmediğiniz bir değişikliğin üzerine yazmanızı engeller. En son okuduğunuz revision değerini gönderin (bir limit oluştururken 0). Limit bu arada değiştiyse, istek 409 revision_conflict ile reddedilir — limitler bölümünü tekrar okuyun ve yeniden deneyin.
Bir limit oluşturma
| Alan | Tür | Zorunlu | Açıklama |
|---|---|---|---|
productCode | string veya null | hayır | energy_1h, energy_5m, bandwidth, activation, aml_check; genel limitiniz için null veya atlanmış |
period | string | evet | outstanding, day, week veya order |
value | string | evet | tutar, Netts limitinin para biriminde, ondan yüksek olamaz |
expectedRevision | integer | evet | 0 |
Her ürün ve dönem için kendinize ait bir limite sahip olabilirsiniz. Para birimi Netts limitinden alınır — para birimi alanı yoktur.
curl -s -X POST 'https://netts.io/apiv2/billing/limits' \
-H 'X-API-KEY: your-api-key' \
-H 'X-Real-IP: 203.0.113.10' \
-H 'Idempotency-Key: 6f1c2b8e-limit-5m-day' \
-H 'Content-Type: application/json' \
-d '{"productCode": "energy_5m", "period": "day", "value": "200", "expectedRevision": 0}'{
"success": true,
"data": {
"id": 5,
"scope": "account",
"origin": "client",
"productCode": "energy_5m",
"period": "day",
"enabled": true,
"limit": { "unit": "USD", "value": "200.000000" },
"equivalent": { "unit": "TRX", "value": "604.514867" },
"revision": 1,
"fx": { "usdPerTrx": "0.33084276", "at": "2026-10-19T20:24:23.449930+00:00" },
"fxStatus": "ok"
},
"timestamp": "2026-10-19T20:30:02+00:00"
}Limit, bir sonraki siparişe hemen uygulanır.
Bir limiti değiştirme
curl -s -X PUT 'https://netts.io/apiv2/billing/limits/5?scope=account' \
-H 'X-API-KEY: your-api-key' \
-H 'X-Real-IP: 203.0.113.10' \
-H 'Idempotency-Key: 6f1c2b8e-limit-5m-300' \
-H 'Content-Type: application/json' \
-d '{"value": "300", "expectedRevision": 1}'| Alan | Tür | Zorunlu | Açıklama |
|---|---|---|---|
value | string | evet | yeni tutar, Netts limitinden yüksek olamaz |
expectedRevision | integer | evet | limitin geçerli revision değeri |
Yanıt, revision değerinin bir artırılması dışında yukarıdakiyle aynı formata sahiptir.
Bir limiti kapatma veya açma
curl -s -X POST 'https://netts.io/apiv2/billing/limits/5/disable?scope=account' \
-H 'X-API-KEY: your-api-key' \
-H 'X-Real-IP: 203.0.113.10' \
-H 'Idempotency-Key: 6f1c2b8e-limit-5m-off' \
-H 'Content-Type: application/json' \
-d '{"expectedRevision": 2}'Gövdede yalnızca expectedRevision bulunur. /enable aynı şekilde çalışır. Kapatılan bir limit listede "enabled": false olarak kalır ve daha sonra açılabilir; borcunuz ve ücretlendirmeleriniz etkilenmez.
Yapamayacağınız işlemler
"origin": "netts"olan bir limiti veya bir anahtar limitini değiştirmek ya da kapatmak — düşürmek için bile olsa403 netts_limit_readonly.- Netts limitinden daha yüksek bir değer belirlemek —
422 above_account_limit. - Aynı ürün ve dönem için ikinci bir limit oluşturmak —
409 limit_exists; bunun yerine mevcut olanı değiştirin. - Netts hesabınızın kredi limitini belirlemeden önce bir limit oluşturmak —
409 no_account_limit. - Para birimi mevcut Netts limitinden farklı olan bir limiti açmak —
422 unit_mismatch; önce yeni bir değer belirleyin.
Hatalar
| HTTP | code | Anlamı |
|---|---|---|
| 400 | invalid_request, invalid_amount | bir alan eksik veya hatalı bir formatta |
| 400 | idempotency_key_required, invalid_idempotency_key | Idempotency-Key yok veya 8–128 karakter arasında değil |
| 401 | -1, -2 | anahtar eksik veya geçersiz, ya da IP beyaz listede değil — API ağ geçidi tarafından yanıtlanır, bkz. yanıt formatı |
| 403 | forbidden | anahtarın limits.write izni yok |
| 403 | postpaid_disabled | sonradan ödemeli faturalandırma duraklatıldı: limitler değiştirilemez |
| 403 | netts_limit_readonly | limit Netts tarafından belirlenmiştir |
| 404 | not_found | hesabınızda böyle bir limit yok |
| 409 | revision_conflict, limit_exists, idempotency_conflict, no_account_limit | yukarıya bakın |
| 422 | above_account_limit, product_not_postpaid, unit_mismatch | Netts limitinin üzerinde değer, bilinmeyen ürün, Netts limitinin para birimi değişti |
Tüm kodlar sonradan ödemeli faturalandırma sayfasında listelenmiştir.