सर्वर संदर्भ
सर्वर API
पृष्ठ कॉपी करें
अपने एप्प के अपने सर्वर कॉल के साथ API। सत्र की पुष्टि करें, उत्पादों की सूची, पुष्टि, वितरण और रिफंड चार्ज करें, अपने पूल से पुरस्कार भुगतान करें, सूचनाएं भेजें, विज्ञापन जांचें और सार्वजनिक तालिकाएं सूचीबद्ध करें।
#बुनियादी बातें
| आधार एड्रेस | https://api.lialabs.org/api/apps/v1 |
| प्रमाणीकरण | Authorization: Bearer <your key>, आपका परीक्षण कुंजी (lia_test_…या लाइव कुंजी (lia_live_…) |
| शरीर | JSON, साथ में Content-Type: application/json |
| राशि | $LIA में, संख्याओं के रूप में, 6 दशमलव स्थानों तक |
| समय | से मिलीसेकंड 1970 (UTC) |
केवल अपने सर्वर से इसे कॉल करें। आपकी कुंजी एक रहस्य है: इसे कभी भी अपने पृष्ठ में न डालें।
curl https://api.lialabs.org/api/apps/v1/pool \
-H "Authorization: Bearer $LIA_KEY"नीचे दिए गए उदाहरणों में उपयोग किया जाने वाला एक छोटा सहायक:
const LIA = "https://api.lialabs.org/api/apps/v1";
export async function lia(method, path, body) {
const res = await fetch(LIA + path, {
method,
headers: { Authorization: `Bearer ${process.env.LIA_KEY}`, "Content-Type": "application/json" },
body: body === undefined ? undefined : JSON.stringify(body),
});
const data = await res.json();
if (!res.ok) throw Object.assign(new Error(data.error), { status: res.status, data });
return data;
}#कुंजी और मोड
एक कुंजी केवल अपने एप्प को देखती है, और केवल अपने ही मोड: परीक्षण कुंजी परीक्षण सत्र, भुगतान, खिलाड़ी और विज्ञापन देखती है; लाइव कुंजी लाइव वालों को देखती है। किसी अन्य मोड से कुछ भी not_found (या valid: false. देखें परीक्षण और जीवंत.
#त्रुटियां
त्रुटियां 4xx स्थिति के साथ उत्तर देती हैं और एक बॉडी के साथ error कोड, कभी-कभी अधिक क्षेत्रों के साथ:
{ "error": "pool_empty", "pool": 3.5 }| स्थिति | कोड | जब |
|---|---|---|
| 401 | bad_key | कोई कुंजी, गलत आकार की कुंजी, अज्ञात कुंजी, जब आपका एप नहीं है'लाइव नहीं है, या इसके दौरान कोई भी कुंजी दबाएं'आपके रोक दिया गया है। |
प्रत्येक एंडपॉइंट अपनी सूची रखता है। प्रत्येक कोड अपने अंदर होता है त्रुटि कोड.
#सत्र
#POST/session/verify
# Set LIA_KEY on your server. Reuse Idempotency-Key only for the same request.
curl --request POST 'https://api.lialabs.org/api/apps/v1/session/verify' \
--header "Authorization: Bearer $LIA_KEY" \
--header 'Content-Type: application/json' \
--header 'Idempotency-Key: example-request-1' \
--data-raw '{
"session": "lias_example_session"
}'एक सत्र टोकन की जांच करता है Lia.init() या Lia.session(), और आपको बताता है कि यह किसका है।
POST /api/apps/v1/session/verify
Authorization: Bearer lia_live_…
Content-Type: application/json
{ "session": "lias_eyJhcHAiOi…" }| क्षेत्र | प्रकार | |
|---|---|---|
session | स्ट्रिंग | पृष्ठ से टोकन। |
उत्तर 200 किसी भी तरह से:
{ "valid": true, "playerId": "p_3f9c0a6d1b2e4f5a6b7c", "mode": "live", "exp": 1761998400000 }{ "valid": false }एक टोकन तब वैध होता है जब Lia द्वारा हस्ताक्षरित किया गया होता है, यह'के लिए आपके एप्स और आपके कुंजी'मोड, और यह नहीं है'तब समाप्त हो गया है (जब इसे बनाया गया था 15 मिनट बाद)।
#उत्पाद
#GET/products
# Set LIA_KEY on your server. Reuse Idempotency-Key only for the same request.
curl --request GET 'https://api.lialabs.org/api/apps/v1/products' \
--header "Authorization: Bearer $LIA_KEY"जो आपके एप से बेचा जाता है, Lia में कीमतों पर'के रिकॉर्ड। केवल सक्रिय उत्पाद, सबसे सस्ता पहले।
{
"products": [
{ "id": "extra-lives", "name": "3 extra lives", "price": 5, "active": true },
{ "id": "gold-pack", "name": "Gold pack", "price": 25, "active": true }
]
}#शुल्क
एक चार्ज Lia पर एक भुगतान है'के पेमेंट शीट। देखें भुगतान.
शुल्क ऑब्जेक्ट:
| क्षेत्र | प्रकार | |
|---|---|---|
id | स्ट्रिंग | पसंद करें ch_9b1f…. |
playerId | स्ट्रिंग | कौन भुगतान करता है। |
productId | स्ट्रिंग | जिसके लिए वे भुगतान करते हैं। |
amount | संख्या | जिसके लिए वे भुगतान करते हैं, $LIA में। |
status | स्ट्रिंग | paid, delivered या refunded. |
mode | स्ट्रिंग | test या live. |
createdAt | संख्या | जब यह भुगतान किया गया था। |
deliveredAt | संख्या या null | जब आपने इसे डिलीवर कर दिया। |
refundedAt | संख्या या null | जब यह वापस कर दिया गया था। |
#GET/charges/:id
# Set LIA_KEY on your server. Reuse Idempotency-Key only for the same request.
curl --request GET 'https://api.lialabs.org/api/apps/v1/charges/id_example' \
--header "Authorization: Bearer $LIA_KEY"क्या यह शुल्क वास्तविक, भुगतान किया गया है और किसका है? डिलीवर करने से पहले हमेशा यहां जांचें: कभी भी पृष्ठ को ले लो'या एक वेबहुक'राज्य के लिए शब्द।
{
"charge": {
"id": "ch_9b1f4c2e7a0d5b8f3e6a1c4d",
"playerId": "p_3f9c0a6d1b2e4f5a6b7c",
"productId": "extra-lives",
"amount": 5,
"status": "paid",
"mode": "live",
"createdAt": 1761998400000,
"deliveredAt": null,
"refundedAt": null
}
}| स्थिति | कोड | जब |
|---|---|---|
| 404 | not_found | आपके कुंजी में आपके एप के लिए कोई शुल्क नहीं'मोड। |
#POST/charges/:id/deliver
# Set LIA_KEY on your server. Reuse Idempotency-Key only for the same request.
curl --request POST 'https://api.lialabs.org/api/apps/v1/charges/id_example/deliver' \
--header "Authorization: Bearer $LIA_KEY" \
--header 'Idempotency-Key: example-request-1'एक भुगतान वितरित करता है, जब आप'आपने व्यक्ति को जो वे खरीदे थे, दे दिया। दोहराने के लिए सुरक्षित: डिलीवर किए गए चार्ज को डिलीवर करना कुछ भी नहीं बदलता है और एक ही उत्तर देता है। कोई भी शरीर नहीं।
{ "charge": { "id": "ch_9b1f…", "status": "delivered", "deliveredAt": 1761998405000, "…": "…" } }| स्थिति | कोड | जब |
|---|---|---|
| 404 | not_found | आपके कुंजी में कोई शुल्क नहीं'मोड। |
| 409 | refunded | इसे वापस कर दिया गया था, इसलिए नहीं'तब इसे डिलीवर करें। शरीर में इसके साथ है charge भी। |
#POST/charges/:id/refund
# Set LIA_KEY on your server. Reuse Idempotency-Key only for the same request.
curl --request POST 'https://api.lialabs.org/api/apps/v1/charges/id_example/refund' \
--header "Authorization: Bearer $LIA_KEY" \
--header 'Idempotency-Key: example-request-1'जब आप उसे वापस कर सकते हैं, तो $LIA को व्यक्ति को वापस कर दें।'तब वे खरीदे गए चीजों को डिलीवर करें। भुगतान या डिलीवर किए गए शुल्क पर काम करता है। दोहराना सुरक्षित है: एक वापसी शुल्क की वापसी इसके साथ उत्तर देता है और कुछ अधिक भुगतान नहीं करता। कोई शरीर नहीं।
{ "charge": { "id": "ch_9b1f…", "status": "refunded", "refundedAt": 1761998410000, "…": "…" } }पूरी कीमत वापस व्यक्ति को जाती है'अपने बैलेंस, लाइव मोड में, Lia से बाहर'आपके हिस्सा और आपका हिस्सा। एक charge.refunded वेबहुक भेजा गया।
| स्थिति | कोड | जब |
|---|---|---|
| 404 | not_found | आपके कुंजी में कोई शुल्क नहीं'मोड। |
#पुरस्कार
देखो पुरस्कार जमा.
#POST/rewards
# Set LIA_KEY on your server. Reuse Idempotency-Key only for the same request.
curl --request POST 'https://api.lialabs.org/api/apps/v1/rewards' \
--header "Authorization: Bearer $LIA_KEY" \
--header 'Content-Type: application/json' \
--header 'Idempotency-Key: example-request-1' \
--data-raw '{
"playerId": "player_example",
"amount": 1,
"key": "reward-example-1",
"reason": "Level completed"
}'अपने एप्स से खिलाड़ी को भुगतान करता है'के पुरस्कार पूल, प्रति कुंजी।
POST /api/apps/v1/rewards
Authorization: Bearer lia_live_…
Content-Type: application/json
{
"playerId": "p_3f9c0a6d1b2e4f5a6b7c",
"amount": 25,
"key": "tournament-2026-11-01:p_3f9c0a6d1b2e4f5a6b7c",
"reason": "Weekly tournament, 1st place"
}| क्षेत्र | प्रकार | |
|---|---|---|
playerId | स्ट्रिंग | भुगतान करने वाला खिलाड़ी। |
amount | संख्या | $LIA में, 0 से अधिक और अधिकतम 10,000, से 6 दशमलव स्थान। |
key | स्ट्रिंग | आपका, 1 से 128 अक्षर, अंक, _, ., : और -. एक कुंजी एक बार भुगतान करती है, हमेशा के लिए। इसके बिना, दुनिया में Idempotency-Key हैडर का उपयोग किया जाता है। |
reason | स्ट्रिंग | वैकल्पिक, अधिकतम 80 अक्षर (लंबा काट दिया जाता है)। खिलाड़ी में दिखाया जाता है'से अपने एप्लिकेशन के नीचे गतिविधि'अपना नाम। |
भुगतान:
{ "status": "paid", "amount": 25, "pool": 975 }समान कुंजी फिर से कुछ नहीं भुगतान करती है और पहले वाले द्वारा भुगतान किए गए के बराबर उत्तर देती है:
{ "status": "duplicate", "amount": 25, "pool": 975 }pool क्या है'आपके पूल में बचा हुआ है। परीक्षण मोड में पुरस्कार केवल कल्पना है: पूल नहीं है'तेज उपयोग किया गया है और दैनिक सीमा नहीं't लागू करें।
| स्थिति | कोड | जब |
|---|---|---|
| 400 | bad_amount | amount नहीं't 0 से ऊपर एक संख्या और 10,000. तक |
| 400 | bad_key_field | key कमी है या सही आकार में नहीं है। |
| 404 | unknown_player | आपके एप में कोई ऐसा खेलकर आईडी नहीं। |
| 409 | pool_empty | पूल नहीं है'तब रखें amount. शरीर में pool, क्या'बचा हुआ। |
| 429 | daily_limit | यह खिलाड़ी आपके एप्प के पार ले जाएगा'के दैनिक सीमा प्रति खिलाड़ी (में $LIA, प्रति UTC दिन)। शरीर है dailyCapPerPlayer. |
A reward.paid हर पुरस्कार के लिए वेबहुक भेजा जाता है (डुप्लिकेट के लिए नहीं)।
#GET/pool
# Set LIA_KEY on your server. Reuse Idempotency-Key only for the same request.
curl --request GET 'https://api.lialabs.org/api/apps/v1/pool' \
--header "Authorization: Bearer $LIA_KEY"क्या'आपके पुरस्कार पूल में बचा हुआ है, और एक दिन में एक खिलाड़ी इससे अधिकतम क्या प्राप्त कर सकता है।
{ "balance": 975, "dailyCapPerPlayer": 50, "mode": "live" }dailyCapPerPlayer है 0 जब वहां'कोई दैनिक सीमा नहीं। balance है लाइव पूल, जब आप अपने परीक्षण कुंजी के साथ पूछते हैं तो भी।
#अपडेट
देखो अपडेट.
#POST/notifications
# Set LIA_KEY on your server. Reuse Idempotency-Key only for the same request.
curl --request POST 'https://api.lialabs.org/api/apps/v1/notifications' \
--header "Authorization: Bearer $LIA_KEY" \
--header 'Content-Type: application/json' \
--header 'Idempotency-Key: example-request-1' \
--data-raw '{
"playerId": "player_example",
"text": "Ready for another round?",
"startParam": "round_2"
}'एक खिलाड़ी को जिसने उन्हें अनुमति दी है। यह आपके एप के नीचे दिखाई देता है'अपना नाम खोलता है आपके साथ अपने startParam.
POST /api/apps/v1/notifications
Authorization: Bearer lia_live_…
Content-Type: application/json
{ "playerId": "p_3f9c0a6d1b2e4f5a6b7c", "text": "It's your move against @amara.", "startParam": "match-8k2d" }| क्षेत्र | प्रकार | |
|---|---|---|
playerId | स्ट्रिंग | किसे सूचित करें। |
text | स्ट्रिंग | 1 से 180 अक्षर। अंतराल और नई पंक्तियां एकल अंतराल बन जाते हैं। कोई लिंक, फोन नंबर या धोखाधड़ी में उपयोग किए गए शब्द नहीं। |
startParam | स्ट्रिंग | वैकल्पिक। 1 से 64 अक्षर, अंक, _ और -. आपकी पृष्ठ इसे बाहर से पढ़ती है Lia.startParam. |
भेजा गया:
{ "sent": true, "pushed": true }pushed है false जब यह Lia तक पहुंचा'अपने घंटी लेकिन फोन नहीं (व्यक्ति के पास Lia है'के बाहर बंद कर देता है।
| स्थिति | कोड | जब |
|---|---|---|
| 400 | bad_text | खाली, बहुत लंबा, या अनुमति नहीं है। जब यह'राज्य के टेक्स्ट के अनुसार, problem है link, phone या scam. |
| 400 | bad_start_param | startParam नहीं'तब सही आकार में। |
| 403 | notifications_off | आपके एप्प को नोटिफिकेशन भेजने की अनुमति नहीं हो सकती है (इसकी दैनिक संख्या 0 है।) |
| 403 | not_allowed | इस खिलाड़ी के पास नहीं है't आपके एप्प के लिए अनुमति दी गई है'सूचनाएं, या उन्हें रोक दिया गया। |
| 404 | unknown_player | आपके कुंजी में कोई ऐसा खेलकर आईडी नहीं, या नहीं है'मोड तक पहुंचता है (एक परीक्षण कुंजी केवल आपके परीक्षकों तक पहुंचती है)। |
| 429 | rate_limited | एक सीमा पहुंच गई। आपके एप्प के लिए'अपनी सीमा शरीर में है retryAt, जब आप पुनः प्रयास कर सकते हैं। |
#विज्ञापन
देखो विज्ञापन.
#POST/ads/verify
# Set LIA_KEY on your server. Reuse Idempotency-Key only for the same request.
curl --request POST 'https://api.lialabs.org/api/apps/v1/ads/verify' \
--header "Authorization: Bearer $LIA_KEY" \
--header 'Content-Type: application/json' \
--header 'Idempotency-Key: example-request-1' \
--data-raw '{
"adId": "ad_example"
}'क्या यह विज्ञापन वास्तव में देखा गया था, और किसने देखा? प्रोत्साहित वीडियो के लिए कुछ भी देने से पहले जांचें।
POST /api/apps/v1/ads/verify
Authorization: Bearer lia_live_…
Content-Type: application/json
{ "adId": "ad_8e1c4b0f2a9d47c6b3e15a07" }{ "adId": "ad_8e1c4b0f2a9d47c6b3e15a07", "playerId": "p_3f9c0a6d1b2e4f5a6b7c", "format": "rewarded", "watched": true, "watchedAt": 1761998400000 }| क्षेत्र | प्रकार | |
|---|---|---|
adId | स्ट्रिंग | आईडी से Lia.showAd(). |
playerId | स्ट्रिंग | खिलाड़ी जिसे दिखाया गया था। इसकी जांच करें'राज्य के एक पूछता है। |
format | स्ट्रिंग या नल | "rewarded", "rewardedInterstitial", "interstitial", "banner" या "native" (SDK 1.7 से पहले विज्ञापनों के लिए शून्य)। केवल "rewarded" और "rewardedInterstitial" एक पुरस्कार के बराबर हैं। |
watched | बूलियन | अंत तक देखा गया (या, एक इंटरसिशियल, बैनर या नैविव विज्ञापन के लिए, दिखाया गया)। |
watchedAt | संख्या या null | जब |
एक टेस्ट मोड वाले विज्ञापन में जिस मोड में विज्ञापन दिखाया गया था उसके कुंजी के साथ: हमेशा गूगल में से एक'राज्य परीक्षण विज्ञापन, कमाई के लिए गिने नहीं जाते) है not_found लाइव कुंजी के लिए।
Lia कर सकता है नहीं'आप इसे सत्यापित करते समय एक विज्ञापन को उपयोग किया गया चिह्नित करें, इसलिए प्रत्येक के लिए भुगतान करें adId अपने आप के लिए (उपयोग करें ad:<adId> पुरस्कार कुंजी के रूप में।
| स्थिति | कोड | जब |
|---|---|---|
| 404 | not_found | आपके कुंजी में आपके एप के लिए कोई विज्ञापन नहीं'मोड। |
#लॉबी
सार्वजनिक टेबल जो कोई भी Lia पर पाएगा। Lia केवल सूची रखता है: आपका सर्वर टेबल चलाता है। देखें सार्वजनिक टेबल.
तालिका ऑब्जेक्ट:
| क्षेत्र | प्रकार | |
|---|---|---|
id | स्ट्रिंग | आपकी तालिका'आईडी। |
game | स्ट्रिंग | आपका एप्प'आईडी। |
host | वस्तु | { name }: होस्ट'से Lia उपयोगकर्ता नाम। |
seats, taken | संख्या | सभी में सीटें, और ले लिए गए। |
title | स्ट्रिंग या नल | सभी लोगों द्वारा Lia पर पढ़े गए जैसे फ़िल्टर किया गया। |
stake, pot | संख्या | LIA में, दिखाने के लिए। |
createdAt, expiresAt | संख्या |
#POST/lobby/tables
# Set LIA_KEY on your server. Reuse Idempotency-Key only for the same request.
curl --request POST 'https://api.lialabs.org/api/apps/v1/lobby/tables' \
--header "Authorization: Bearer $LIA_KEY" \
--header 'Content-Type: application/json' \
--header 'Idempotency-Key: example-request-1' \
--data-raw '{
"tableId": "table_example",
"hostPlayerId": "player_example",
"seats": 2,
"taken": 1,
"title": "A friendly game",
"stake": 1,
"pot": 1,
"expiresIn": 1800
}'एक टेबल की सूची जो'राज्य खिलाड़ियों की प्रतीक्षा कर रहा है, या इसकी सूची अपडेट करता है (यह सूची में अपनी जगह बनाए रखता है)। जब भी इसकी सीटें बदलती हैं, इसे फिर से सूचीबद्ध करें।
{ "tableId": "t8k2d", "hostPlayerId": "p_3f9c0a6d1b2e4f5a6b7c", "seats": 2, "taken": 1, "title": "Quick game", "stake": 5, "expiresIn": 900 }| क्षेत्र | प्रकार | |
|---|---|---|
tableId | स्ट्रिंग | आपका, 1 से 57 अक्षर, अंक, _ और - या इतना छोटा हो कि startParam में फिट हो जाए lobby-<id>). |
hostPlayerId | स्ट्रिंग | खिलाड़ी होस्टिंग कर रहा है। |
seats | संख्या | वैकल्पिक। 2 से 10, 2 डिफ़ॉल्ट। |
taken | संख्या | वैकल्पिक। सीटें भर गई हैं, होस्ट'शामिल हैं: 1 से seats, 1 डिफ़ॉल्ट के रूप में। |
title | स्ट्रिंग | वैकल्पिक, अधिकतम 40 अक्षर। |
stake, pot | संख्या | वैकल्पिक। LIA में, 0 से 10,000, केवल सूची में दिखाए जाते हैं। Lia है'तब इन्हें रखें या ले जाएं: अपने उत्पाद के साथ चार्ज स्टेक। |
expiresIn | संख्या | वैकल्पिक। सूची के अवधि के सेकंड, 60 से 3600, 1800 डिफ़ॉल्ट। |
{ "listed": true, "tableId": "t8k2d", "seats": 2, "taken": 1, "expiresAt": 1761999300000 }जब taken पहुंचता है seats, तालिका सूची से बाहर ले ली जाती है, और उत्तर है { "listed": false }.
| स्थिति | कोड | जब |
|---|---|---|
| 400 | bad_table_id, bad_seats, bad_taken, bad_title, bad_amount, bad_expires_in | एक क्षेत्र नहीं है'तब फिट हो जाए। |
| 404 | unknown_player | आपके एप में कोई ऐसा होस्ट नहीं है। |
| 429 | too_many_tables | होस्ट के पास आपके एप्प में 3 खुले टेबल हैं। बॉडी में है max. |
#GET/lobby/tables
# Set LIA_KEY on your server. Reuse Idempotency-Key only for the same request.
curl --request GET 'https://api.lialabs.org/api/apps/v1/lobby/tables' \
--header "Authorization: Bearer $LIA_KEY"आपका एप्प'आपके कुंजी में खुले टेबल'मोड, नवीनतम पहले, अप से 200: प्रत्येक होस्ट'लिखता है, ब्लॉक्स के साथ छोड़ दिया गया (जिसके लिए'के लिए प्रति खिलाड़ी'अपने दृष्टिकोण)।
{ "tables": [{ "id": "t8k2d", "game": "your-app", "host": { "name": "amara" }, "seats": 2, "taken": 1, "title": "Quick game", "stake": 5, "pot": 0, "createdAt": 1761998400000, "expiresAt": 1761999300000 }] }#POST/lobby/tables/:id/sit
# Set LIA_KEY on your server. Reuse Idempotency-Key only for the same request.
curl --request POST 'https://api.lialabs.org/api/apps/v1/lobby/tables/id_example/sit' \
--header "Authorization: Bearer $LIA_KEY" \
--header 'Content-Type: application/json' \
--header 'Idempotency-Key: example-request-1' \
--data-raw '{
"playerId": "player_example"
}'अपने सर्वर द्वारा उन्हें आमंत्रित करने से पहले एक सूचीबद्ध मेज पर एक खिलाड़ी को बैठाता है। Lia अक्सर ब्लॉक किए गए लोगों या जिन्होंने मेजबान को ब्लॉक किया है, उन्हें अस्वीकृत कर देता है। जब अंतिम सीट ले ली जाती है, तो मेज सूची से बाहर हो जाती है।
{ "playerId": "p_8a1e0c4d2b7f9e3a5c6d" }{ "seated": true, "taken": 2, "seats": 2, "full": true }| स्थिति | कोड | जब |
|---|---|---|
| 404 | unknown_player | आपके एप में कोई ऐसा खेलकर आईडी नहीं। |
| 404 | not_found | तालिका नहीं है'अस्तित्व में नहीं है, समाप्त हो गया है, या होस्ट और खिलाड़ी एक दूसरे को ब्लॉक कर दिया है। |
| 409 | full | हर सीट ली गई है। |
| 409 | own_table | खिलाड़ी होस्ट है। |
#DELETE/lobby/tables/:id
# Set LIA_KEY on your server. Reuse Idempotency-Key only for the same request.
curl --request DELETE 'https://api.lialabs.org/api/apps/v1/lobby/tables/id_example' \
--header "Authorization: Bearer $LIA_KEY" \
--header 'Idempotency-Key: example-request-1'जब इसका खेल शुरू होता है या बंद होता है तो एक तालिका सूची से बाहर आ जाती है। दोहराना सुरक्षित है।
{ "removed": true }removed है false जब यह नहीं है'अस्तित्व में नहीं है।
#पुनः प्रयास कर रहा है
एक भेजें Idempotency-Key हर POST, और उसी एक के साथ प्रत्येक पुनः प्रयास पर। एक पुनः प्रयास फिर कभी-भी कुछ भी दो बार नहीं करता है, और पहले मामले के समान जवाब देता है।
POST /api/apps/v1/notifications
Authorization: Bearer lia_live_…
Content-Type: application/json
Idempotency-Key: 6f1c2a9e-0b7d-4c35-9e1a-2d8f4b7c3a10
{ "playerId": "p_3f9c0a6d1b2e4f5a6b7c", "text": "It's your move." }- कोई भी कुंजी जो आप चाहें, 1 अक्षर, अंक, से 128
_,-,.और:. प्रत्येक ऑपरेशन के लिए एक UUID सही है। - पहला अनुरोध चल रहा है। अगर यह सफल होता है (2xx), तो इसका उत्तर 24 घंटे के लिए रखा जाता है, और उसी कुंजी और उसी शरीर के साथ एक पुनः प्रयास उसी उत्तर के साथ फिर से मिलता है, हेडर के साथ
Idempotent-Replayed: true. - एक अस्वीकृति कुछ भी नहीं रखती (4xx या 5xx), इसलिए आप कारण को ठीक कर सकते हैं और उसी कुंजी के साथ पुनः प्रयास कर सकते हैं।
- अलग बॉडी के साथ एक ही कुंजी है
422 idempotency_key_reused. - पहले के साथ एक ही कुंजी जब तक वह अभी भी चल रहा है है
409 idempotency_key_in_useसाथ मेंRetry-After: 1. पुनः प्रयास करें, और आपको पहला मिलता है'उत्तर। - कुंजी आपके एप्प हैं'अपना, और जीवित और परीक्षण अपने अलग-अलग रखते हैं। दूसरे एंडपॉइंट पर एक ही कुंजी एक अन्य कुंजी है।
हेडर के बिना, अधिकांश एंडपॉइंट अभी भी पुनः प्रयास करने के लिए सुरक्षित हैं: पढ़ना कुछ भी बदल नहीं सकता, डिलीवरिंग और रिफंड करना दोहराने के लिए सुरक्षित है, और पुरस्कार प्रति key. सूचनाएं अपवाद हैं: हेडर के बिना, एक पुनः प्रयास सूचना फिर से भेजता है।
स्वचालित अनुवाद। अंग्रेजी सत्य का स्रोत है। अंग्रेजी में पढ़ें