ادفع باستخدام Gamma
اشترِ UR Pro وباقات البيانات باستخدام gamma الخاصة بـ SN25، بالكامل عبر واجهة API الخاصة بـ URnetwork. الخطوة الوحيدة خارجها هي السكّ الذي توقّعه بمفتاح coldkey الخاص بك.
ما هي Gamma
Gamma ميزة في سلسلة Bittensor، وليست تطبيقًا أو محفظة تحتاج إلى تثبيتها. لكل شبكة فرعية gamma خاصة بها، وقيمة gamma الواحدة دولار أمريكي واحد. تسكّ gamma الخاصة بـ SN25 بمفتاح coldkey الخاص بك في إيداع مرتبط بمفتاح hotkey، وتخصم URnetwork من هذا الإيداع ثمن ما تشتريه.
يشتري السكّ alpha الخاصة بـ SN25 بعملات TAO التي تملكها ثم يحرقها. لا تقبل URnetwork إلا gamma الخاصة بـ SN25.
كل خطوة أخرى استدعاء لواجهة API، لذا يستطيع برنامج نصي أو وكيل إنجازها كلها: قراءة الشروط، وبدء عملية شراء، والتحقق من حالتها، واختيار الخصومات التلقائية.
ما تحتاج إليه
- حساب URnetwork ورمز bearer له (الخطوة 1).
- مفتاح coldkey على Bittensor فيه ما يكفي من TAO للثمن ورسوم المعاملة.
btcli، الذي يأتي مع حزمة Pythonbittensorبدءًا من الإصدار 11.3.2:pip install "bittensor>=11.3.2"
خطوة بخطوة
تُرسَل كل الاستدعاءات إلى https://api.bringyour.com. تجد كل حقل وكل خطأ في مرجع API.
احصل على رمز bearer
الاستدعاءات التي تحتاج إلى رمز ترسله بصيغة
Authorization: Bearer <token>. الرمز هو JWT للشبكة أو مفتاح API.يمنحك تسجيل الدخول رمز JWT للشبكة في
network.by_jwt. مثلًا بكلمة مرور:curl -X POST https://api.bringyour.com/auth/login-with-password \ -H "Content-Type: application/json" \ -d '{"user_auth":"me@example.com","password":"<password>"}'يبقى مفتاح API صالحًا حتى تزيله. أنشئ واحدًا باستخدام JWT: يبدأ بـ
urn_، وهذه الاستجابة هي المرة الوحيدة التي تراه فيها.curl -X POST https://api.bringyour.com/account/api-key \ -H "Authorization: Bearer <network_jwt>" \ -H "Content-Type: application/json" \ -d '{"name":"gamma"}'{ "id": "…", "api_key": "urn_…", "name": "gamma" }تقبل الإعدادات في الخطوة 6 رمز JWT للشبكة أو مفتاح API، وترفض رمز JWT للعميل الصادر من
POST /network/auth-client.اقرأ الشروط
لا تحتاج الشروط إلى رمز. تذكر الشبكة الفرعية، ومفتاح hotkey الخاص بخدمة URnetwork وحساب الإنفاق الخاص بها، وكل خطة وباقة بيانات بثمنها بـ gamma والحد اليومي الذي يحتاجه الإيداع لها، وما إذا كان السكّ يعمل الآن.
curl https://api.bringyour.com/pay/gamma/terms{ "available": true, "mint_available": true, "netuid": 25, "service_hotkey": "5CyQFykVpfa9xgZVGgBsiNUpjbo1EihBTSkPvDC1FZbL1wxG", "spender": "5EUQU938kFzJsVBjn9ch5RNNG4191j7mSz5Djf5vghrmWgUC", "max_price_age_blocks": 300, "min_mint_gamma": "0.1", "items": [ { "plan": "monthly", "price_gamma": "5", "min_daily_cap_gamma": "5", "renews": true, "indicative_tao": "0.023645" }, { "plan": "yearly", "price_gamma": "40", "min_daily_cap_gamma": "40", "renews": true, "indicative_tao": "0.189165" }, { "item_id": "data_1tib", "price_gamma": "3", "min_daily_cap_gamma": "3", "renews": false, "indicative_tao": "0.014187" }, { "item_id": "data_10tib", "price_gamma": "20", "min_daily_cap_gamma": "20", "renews": false, "indicative_tao": "0.094583" }, { "item_id": "data_256gib", "price_gamma": "0.75", "min_daily_cap_gamma": "0.75", "renews": false, "indicative_tao": "0.003547" } ], "auto_min_daily_cap_gamma": "40", … }- تكون قيمة
availableهيfalseما دامت المشتريات متوقفة، ويوضّحunavailable_reasonالسبب. - تكون قيمة
mint_availableهيfalseما دام السكّ متوقفًا، ويوضّحmint_unavailable_reasonالسبب:gamma_disabledأوsubnet_gamma_disabledأوprice_stale. يظل بإمكان الإيداع الذي يحتوي الثمن بالفعل أن يدفع. indicative_taoهو مقدار TAO التقريبي الذي يحتاجه سكّ بقيمة الثمن: محاكاة السلسلة نفسها للسكّ، مضافًا إليها 3%.
- تكون قيمة
ابدأ عملية شراء
أرسل
planالذي تريده:monthlyأوyearly، أوyearly_onboardingلعرض الترحيب ما دام بإمكانك استخدامه. لباقة بيانات، أرسلitem_idبدلًا من ذلك:data_1tibأوdata_10tibأوdata_256gib(256 GiB مقابل $0.75، ولا تُباع إلا عبر Gamma وx402).curl -X POST https://api.bringyour.com/pay/gamma/intent \ -H "Authorization: Bearer urn_..." \ -H "Content-Type: application/json" \ -d '{"plan":"yearly"}'لتحصل على باقة بيانات كرمز رصيد بدلًا من ذلك، أضف
"delivery":"code". ومعemailنرسل الرمز بالبريد الإلكتروني أيضًا.curl -X POST https://api.bringyour.com/pay/gamma/intent \ -H "Authorization: Bearer urn_..." \ -H "Content-Type: application/json" \ -d '{"item_id":"data_1tib","delivery":"code","email":"me@example.com"}'الاستجابة، على سبيل المثال:
{ "intent_id": "0b6f2f7e-4f1c-4a8e-9d1a-1f6a2b3c4d5e", "status_token": "<status_token>", "plan": "yearly", "amount_gamma": "40", "reference": "0x5d0c6b9e3e3c5c0a5b8f2a0f1d4a3e9b7c6d5e4f3a2b1c0d9e8f7a6b5c4d3e2f", "netuid": 25, "deposit_hotkey": "<deposit_hotkey>", "service_hotkey": "5CyQFykVpfa9xgZVGgBsiNUpjbo1EihBTSkPvDC1FZbL1wxG", "min_daily_cap_gamma": "40", "auto_min_daily_cap_gamma": "40", "min_mint_gamma": "0.1", "indicative_tao": "0.189165", "mint_available": true, "mint_dry_run_command": "btcli tx mint-gamma --netuid 25 --hotkey <deposit_hotkey> … --dry-run", "mint_command": "btcli tx mint-gamma --netuid 25 --hotkey <deposit_hotkey> … -w <your_coldkey>", "expires_at": "2026-11-12T12:00:00Z", … }deposit_hotkeyهو مفتاح hotkey الذي خصصته URnetwork لحسابك على الشبكة الفرعية 25. تسكّ فيه، ويخدم أيضًا كل عملية شراء لاحقة. إنه ليس عنوانًا للدفع: لا ترسل إليه TAO أبدًا.amount_gammaهو الثمن بـ gamma، وهو بالضبط ما يأخذه خصمنا.referenceهو المعرّف الخاص بهذه العملية بطول 32 بايت، والذي يحمله خصمنا على السلسلة.min_daily_cap_gammaهو أصغر حد يومي للإنفاق يسمح بخصم هذه العملية، وauto_min_daily_cap_gammaأصغر حد يسمح بمرور كل خصم تلقائي.- يقرأ
status_tokenحالة هذه العملية. احتفظ به سرًّا، بعيدًا عن عناوين URL والسجلات. - إذا فشل السكّ مع
NonAssociatedColdKey، فإن الإيداع على مفتاح hotkey هذا يملكه مفتاح coldkey آخر. اطلب مرة أخرى معcoldkey، وهو عنوان SS58 لمفتاح coldkey الذي تسكّ به، لتحصل على مفتاح hotkey يمكنه استخدامه. - تبقى عملية الشراء مفتوحة حتى
expires_at. إذا طلبت السلعة نفسها مرة أخرى، تعود إليك العملية المفتوحة معstatus_tokenجديد.
سُكّ gamma في إيداعك
قبل أن تسكّ، اقرأ التنبيهات أدناه.
هذه هي الخطوة الوحيدة خارج واجهة API، والتوقيع الوحيد. عاين السكّ أولًا: مع
--dry-runيعرض btcli ما ستحصل عليه ولا يرسل شيئًا.btcli tx mint-gamma --netuid 25 --hotkey <deposit_hotkey> --amount-tao <TAO> \ --service-hotkey 5CyQFykVpfa9xgZVGgBsiNUpjbo1EihBTSkPvDC1FZbL1wxG --dry-runثم سُكّ موقّعًا بمفتاح coldkey الخاص بك: الأمر نفسه مع
-w <your_coldkey>بدلًا من--dry-run. تمنحك عملية الشراء الأمرين معًا وقد مُلئ فيهما مفتاح hotkey الخاص بك ومبلغ، باسمmint_dry_run_commandوmint_command.btcli tx mint-gamma --netuid 25 --hotkey <deposit_hotkey> --amount-tao <TAO> \ --service-hotkey 5CyQFykVpfa9xgZVGgBsiNUpjbo1EihBTSkPvDC1FZbL1wxG -w <your_coldkey>يجعل
--service-hotkeyالإيداع الجديد يحدد حساب الإنفاق الخاص بـ URnetwork، ويرفض إيداعًا يحدد حسابًا آخر. سُكّ ما لا يقل عن الثمن، أي نحوindicative_taoمن TAO؛ ويفشل السكّ الأقل منmin_mint_gammagamma.يمكنك أيضًا فتح الإيداع بحد يومي للإنفاق،
--daily-spend-cap-gamma <gamma>. اجعلهmin_daily_cap_gammaعلى الأقل، وauto_min_daily_cap_gammaعلى الأقل إذا أبقيت الخصومات التلقائية. لتغيير الحد لاحقًا:btcli gamma set-cap --netuid 25 --hotkey <deposit_hotkey> \ --daily-spend-cap-gamma <gamma> -w <your_coldkey>من Python، تعاين حزمة SDK الخاصة بـ
bittensorالسكّ نفسه وتنفذه:import asyncio import bittensor as bt async def main(): wallet = bt.Wallet(name="<your_coldkey>") mint = bt.MintGamma( netuid=25, hotkey_ss58="<deposit_hotkey>", amount_tao="<TAO>", service_hotkey_ss58="5CyQFykVpfa9xgZVGgBsiNUpjbo1EihBTSkPvDC1FZbL1wxG", ) async with bt.Subtensor() as client: plan = await client.plan(mint, wallet) # the dry run: submits nothing print(plan.preview) await client.execute(mint, wallet) asyncio.run(main())تحقّق من الحالة
استعلم عن عملية الشراء باستخدام
status_tokenالخاص بها؛ لا يحتاج هذا الاستدعاء إلى رمز bearer. لا نضيف عملية شراء إلى رصيدك إلا عندما يُثبَّت نهائيًا على السلسلة خصمُنا نحن الذي يحملreferenceالخاص بها، ولا نفعل ذلك أبدًا بناءً على السكّ وحده.curl -X POST https://api.bringyour.com/pay/gamma/status \ -H "Content-Type: application/json" \ -d '{"intent_id":"<intent_id>","status_token":"<status_token>"}'{ "intent_id": "0b6f2f7e-4f1c-4a8e-9d1a-1f6a2b3c4d5e", "status": "paid", "amount_gamma": "40", "deposit_balance_gamma": "10", "remaining_gamma": "0", "spent_block": 9479641, "credited_at": "2026-11-11T12:01:12Z", … }pending- لا توجد gamma في
deposit_hotkeyبعد. seen- في الإيداع gamma لكنه لا يستطيع الدفع بعد:
remaining_gammaهو مقدار ما يلزم سكّه أيضًا، أو يوضّحerror.codeما يمنع الخصم. confirming- يغطي الإيداع الثمن. خصمنا في الطريق، أو وصل وتُسجَّل الإضافة إلى رصيدك.
paid- أُضيفت إلى رصيدك، بناءً على خصمنا المثبَّت نهائيًا في الكتلة
spent_block. رمز الرصيد موجود فيbalance_code. expired- لم يُخصم شيء قبل
expires_at. تبقى gamma غير المنفقة في الإيداع لعملية الشراء التالية. review- يراجعها أحد أعضاء فريقنا؛ يوضّح
review_reasonالسبب. unknown- لا توجد عملية شراء كهذه، أو أن الرمز غير مطابق.
عندما لا يستطيع الإيداع الدفع، أو تتخطى السلسلة خصمنا، يوضّح
error.codeالسبب:insufficient_gamma- كان في الإيداع أقل من الثمن. سُكّ المزيد.
daily_cap_too_low- الحد اليومي للإيداع أقل من الثمن. ارفعه إلى
min_daily_cap_gammaعلى الأقل. daily_cap_exceeded- ستتجاوز خصومات اليوم الحد اليومي للإيداع. ارفع الحد.
wrong_spender- يحدد الإيداع حساب إنفاق آخر. أعده إلى حساب URnetwork بالأمر أدناه.
btcli gamma set-spender --netuid 25 --hotkey <deposit_hotkey> \ --service-hotkey 5CyQFykVpfa9xgZVGgBsiNUpjbo1EihBTSkPvDC1FZbL1wxG \ -w <your_coldkey> no_deposit- لا يوجد إيداع على مفتاح hotkey هذا. سُكّ في
deposit_hotkey.
الخصم الذي تتخطاه السلسلة لا يأخذ شيئًا ولا يشتري شيئًا. لا نعيد المحاولة إلا بعد أن يتغير إيداعك: عندما تسكّ المزيد، أو ترفع الحد، أو تصحح حساب الإنفاق.
اختر الخصومات التلقائية
الدفع باستخدام Gamma يفعّل التجديد والتعبئة التلقائيين لحسابك. اقرأهما وغيّرهما باستخدام رمز JWT للشبكة أو مفتاح API؛ ويبقى الحقل الذي تتركه كما هو.
curl https://api.bringyour.com/pay/gamma/settings \ -H "Authorization: Bearer urn_..." curl -X POST https://api.bringyour.com/pay/gamma/settings \ -H "Authorization: Bearer urn_..." \ -H "Content-Type: application/json" \ -d '{"auto_renew":false,"monthly_limit_gamma":"20"}'auto_renew- في نهاية كل مدة لخطة مدفوعة بـ Gamma، يُخصم ثمن الخطة من الإيداع، ما لم تدفع مقابل Pro بطريقة أخرى لما بعد تلك المدة. تتجدد سنة عرض الترحيب بالسعر السنوي. مفعّل افتراضيًا.
auto_topup- عندما تنفد بياناتك، يُشترى
topup_item_id، مرة واحدة في الساعة على الأكثر. وعندما يبلغ حساب مجاني حد العملاء الخاص به، يُشترى Pro، مرة واحدة في اليوم على الأكثر؛ ولا تغيّر الترقية التلقائية أبدًا الطريقة التي تزوّد بها شبكتك النطاق الترددي. مفعّل افتراضيًا. topup_item_iddata_1tib، وهو الافتراضي، أوdata_10tibأوdata_256gib.monthly_limit_gamma- أقصى ما تأخذه الخصومات التلقائية في شهر تقويمي، بتوقيت UTC. تزيل
""أو"0"الحد.
لكل خصم تلقائي معرّفه الخاص، ويُرسل إيصالًا بالبريد الإلكتروني. إذا تخطته السلسلة، يصلك إشعار واحد، ولا تُعاد المحاولة إلا بعد أن يتغير الإيداع.
قبل أن تسكّ
لا يمكن استرداد Gamma أو تحويلها. نتقاضى فقط ثمن ما تشتريه. تبقى Gamma غير المنفقة في إيداعك ولا تعمل إلا على SN25.
حلّ شبكة فرعية يُتلف gamma الخاصة بها.
ما لم توقفها، نخصم تلقائيًا من الإيداع نفسه: تتجدد الخطط المدفوعة بـ Gamma في نهاية كل مدة، وتُضاف باقة بيانات (1 TiB ما لم تختر غيرها) عندما تنفد بياناتك، ويُرقّى الحساب المجاني الذي يبلغ حد العملاء الخاص به إلى Pro.
- يفشل السكّ ما دام سعر TAO/USD على السلسلة أقدم من 300 كتلة، أي نحو ساعة. تعرض الشروط حينها
mint_availableبقيمةfalseمعprice_stale. ادفع في الأثناء بعملة مشفّرة أو عبر x402. - مفتاح hotkey الخاص بالإيداع ليس عنوانًا للدفع. لا ترسل إليه TAO أبدًا. إن فعلت، فاكتب إلى support@ur.io لاستعادتها.
- يأخذ الخصم مبلغه كاملًا أو لا شيء، لذا يجب ألا يقل الحد اليومي عن الثمن، وألا يقل عن
auto_min_daily_cap_gammaللخصومات التلقائية. ليس للإيداع حد ما لم تضع واحدًا. - الإيداع ومفتاح coldkey الذي سكّ فيه علنيان على السلسلة.
- تحقّق من أنك تدفع لـ URnetwork: يسرد
btcli query services --netuid 25خدمات SN25، وخدمتنا هي المعلَّمة بـowner. - يحرق السكّ alpha الخاصة بـ SN25. لا تتلقى URnetwork أي TAO.