یک تراکنش یا فهرست تراکنشها
GET
/v1/transactionsبا id یک تراکنش را میدهد. بی id یک صفحه از تراکنشهای کیف پولهای همین کلید را میدهد، تازهترین اول. sweep و شارژ ایستگاه کارمزد در این فهرست نیستند. همهی فیلترها اختیاریاند، فقط مقدار دقیق را میسنجند و با هم ترکیب میشوند. فهرست صفحهبهصفحه است: next_cursor هر پاسخ را در cursor درخواست بعد بفرستید تا خالی شود. اندازهی صفحه پیشفرض 50 و حداکثر 200 است.
درخواست
curl 'https://api.romu.ir/v1/transactions?network=TRON&status=pending&limit=50' \ -H "X-Custody-Key-Id: $KEY_ID" \ -H "X-Custody-Timestamp: $TIMESTAMP" \ -H "X-Custody-Nonce: $NONCE" \ -H "X-Custody-Signature: $SIGNATURE"import { romu } from "./romu.ts";
const res = await romu.get("/v1/transactions", { query: "network=TRON&status=pending&limit=50",});console.log(res.status, res.body);status, body, err := client.Get("/v1/transactions", "network=TRON&status=pending&limit=50")import romu
status, body = romu.get( "/v1/transactions", query="network=TRON&status=pending&limit=50",)print(status, body)امضای درخواست را کتابخانه انجام میدهد؛ جزئیات: صفحهی امضا
پارامترهای query
idUUIDشناسهی تراکنش.
wallet_idUUIDشناسهی کیف پول، مثل
0192f19f-1d2c-7f3b-8a4e-6b7c8d9e0f12.assetstringکد دارایی، مثل
TRON_USDT.networkstringشبکه، مثل
TRON.TRONBSCstatusstringیکی از
pending، checking، confirmed، failed و cancelled، مثل pending. تکرارپذیر است.pendingcheckingconfirmedfailedcancelledtypestringنوع تراکنش، مثل
withdrawal.withdrawalinternaloriginstringمحل ساخت تراکنش، مثل
api.apiconsolestagestringقدم، مثل
waiting_approval. تکرارپذیر است.requestedwaiting_approvalwaiting_phonesigningsigning_retrysignedbroadcastconfirmingto_addressstringآدرس مقصد، مثل
TQn9Y2khEsLJW1ChVWFMSMeRDow5KcbLSE.tx_hashstringهش زنجیره، مثل
a3f1c2d4e5b6978877665544332211ffeeddccbbaa99887766554433221100aa. حروف بزرگ و کوچک هش hex فرقی ندارند. اگر برداشتی روی شبکهی BSC با کارمزد بالاتر دوباره فرستاده شده باشد، با همان هشی بگردید که API یا Webhook به شما داده است.external_refstringمرجع خود شما، مثل
user-1207.fromRFC 3339شروع بازه روی
created_at، خود این لحظه هم حساب است. RFC 3339، مثل 2026-10-01T00:00:00Z.toRFC 3339پایان بازه روی
created_at، تا پیش از این لحظه. RFC 3339، مثل 2026-11-01T00:00:00Z.cursorstringمقدار
next_cursor پاسخ قبلی.limitinteger1 تا 200.
پاسخ
200یک تراکنش (با id) یا یک صفحه.
{ "transaction": { "id": "0192f1a2-5e4f-7a10-b2c3-d4e5f6a7b8c9", "wallet_id": "0192f19f-1d2c-7f3b-8a4e-6b7c8d9e0f12", "idempotency_key": "withdraw-8841", "type": "withdrawal", "origin": "api", "network": "TRON", "asset": "TRON_USDT", "amount": "100.5", "amount_raw": "100500000", "to_address": "TQn9Y2khEsLJW1ChVWFMSMeRDow5KcbLSE", "external_ref": "user-1207", "status": "pending", "stage": "waiting_approval", "reason": null, "tx_hash": "", "expires_at": "2026-10-06T13:00:00Z", "created_at": "2026-10-06T12:00:00Z", "policy": { "decision": "needs_approval", "matched_rule": { "rule_id": "0192f1c1-0000-7000-8000-000000000001", "name": "تراکنش بزرگ" } } }}{ "transactions": [ { "id": "0192f1a2-5e4f-7a10-b2c3-d4e5f6a7b8c9", "wallet_id": "0192f19f-1d2c-7f3b-8a4e-6b7c8d9e0f12", "idempotency_key": "withdraw-8841", "type": "withdrawal", "origin": "api", "network": "TRON", "asset": "TRON_USDT", "amount": "100.5", "amount_raw": "100500000", "to_address": "TQn9Y2khEsLJW1ChVWFMSMeRDow5KcbLSE", "external_ref": "user-1207", "status": "pending", "stage": "waiting_approval", "reason": null, "tx_hash": "", "expires_at": "2026-10-06T13:00:00Z", "created_at": "2026-10-06T12:00:00Z", "policy": { "decision": "needs_approval", "matched_rule": { "rule_id": "0192f1c1-0000-7000-8000-000000000001", "name": "تراکنش بزرگ" } } } ], "next_cursor": "MjAyNi0xMC0wNlQxMjowMDowMFo", "total": 12}فیلدها با id
transactionobjectلازمtransaction.idUUIDلازمtransaction.wallet_idUUIDلازمtransaction.idempotency_keystringtransaction.typestringفقطخواندنی.
internal جابهجایی از کنسول است. sweep فقط با ?id= دیده میشود.withdrawalinternalsweeptransaction.originstringفقطخواندنی.
system فقط برای sweep است.apiconsolesystemtransaction.networkstringلازمTRONBSCtransaction.assetstringلازمکد دارایی، مثل
TRON_USDT.transaction.amountstringلازمرشتهی اعشاری در واحد خود دارایی، مثل
100.5.transaction.amount_rawstringهمان مبلغ در کوچکترین واحد، برای تطبیق دقیق.
transaction.amount_usdstring | nullارزش مبلغ به دلار آمریکا وقتی قانونها آن را سنجیدند، رشتهی اعشاری مثل
301.5. پیش از آن، یا وقتی دارایی نرخ نداشت، null.transaction.usd_ratestring | nullنرخ دلاری هر واحد دارایی که
amount_usd با آن حساب شد، مثل 1.005. هر وقت amount_usd نباشد، null.transaction.usd_rate_atRFC 3339 | nullزمانی که آن نرخ خوانده شد. هر وقت
amount_usd نباشد، null.transaction.from_addressstring | nullآدرس سازمان که تراکنش از آن فرستاده میشود: آدرس اصلی کیف پول یا یکی از آدرسهای جمعآوری. اگر شناخته نباشد،
null.transaction.from_labelstring | nullبرچسب همان آدرس، همان که الان دارد. بی برچسب،
null.transaction.to_addressstringtransaction.external_refstringtransaction.statusstringلازمpendingcheckingconfirmedfailedcancelledtransaction.stagestring | nullکجای کار است. فقط در
pending و checking، وگرنه null.requestedwaiting_approvalwaiting_phonesigningsigning_retrysignedbroadcastconfirmingtransaction.reasonstring | nullچرا شکست خورد. فقط در
failed، وگرنه null.rejectedexpiredsigning_failedbroadcast_failedreorgedtransaction.tx_hashstringهش زنجیره، پس از ارسال.
transaction.expires_atRFC 3339transaction.created_atRFC 3339transaction.superseded_bystringجانشین تراکنش، فقط وقتی هست که جانشین ساخته شده باشد.
transaction.policyobject | nullتصمیم قانونها. وقتی تصمیمی ثبت نشده باشد
null است.transaction.policy.decisionstringauto_approveneeds_approvalrejecttransaction.policy.matched_ruleobject | nulltransaction.policy.matched_rule.rule_idstringtransaction.policy.matched_rule.namestringفیلدها بی id
transactionsobject[]لازمtransactions[].idUUIDلازمtransactions[].wallet_idUUIDلازمtransactions[].idempotency_keystringtransactions[].typestringفقطخواندنی.
internal جابهجایی از کنسول است. sweep فقط با ?id= دیده میشود.withdrawalinternalsweeptransactions[].originstringفقطخواندنی.
system فقط برای sweep است.apiconsolesystemtransactions[].networkstringلازمTRONBSCtransactions[].assetstringلازمکد دارایی، مثل
TRON_USDT.transactions[].amountstringلازمرشتهی اعشاری در واحد خود دارایی، مثل
100.5.transactions[].amount_rawstringهمان مبلغ در کوچکترین واحد، برای تطبیق دقیق.
transactions[].amount_usdstring | nullارزش مبلغ به دلار آمریکا وقتی قانونها آن را سنجیدند، رشتهی اعشاری مثل
301.5. پیش از آن، یا وقتی دارایی نرخ نداشت، null.transactions[].usd_ratestring | nullنرخ دلاری هر واحد دارایی که
amount_usd با آن حساب شد، مثل 1.005. هر وقت amount_usd نباشد، null.transactions[].usd_rate_atRFC 3339 | nullزمانی که آن نرخ خوانده شد. هر وقت
amount_usd نباشد، null.transactions[].from_addressstring | nullآدرس سازمان که تراکنش از آن فرستاده میشود: آدرس اصلی کیف پول یا یکی از آدرسهای جمعآوری. اگر شناخته نباشد،
null.transactions[].from_labelstring | nullبرچسب همان آدرس، همان که الان دارد. بی برچسب،
null.transactions[].to_addressstringtransactions[].external_refstringtransactions[].statusstringلازمpendingcheckingconfirmedfailedcancelledtransactions[].stagestring | nullکجای کار است. فقط در
pending و checking، وگرنه null.requestedwaiting_approvalwaiting_phonesigningsigning_retrysignedbroadcastconfirmingtransactions[].reasonstring | nullچرا شکست خورد. فقط در
failed، وگرنه null.rejectedexpiredsigning_failedbroadcast_failedreorgedtransactions[].tx_hashstringهش زنجیره، پس از ارسال.
transactions[].expires_atRFC 3339transactions[].created_atRFC 3339transactions[].superseded_bystringجانشین تراکنش، فقط وقتی هست که جانشین ساخته شده باشد.
transactions[].policyobject | nullتصمیم قانونها. وقتی تصمیمی ثبت نشده باشد
null است.transactions[].policy.decisionstringauto_approveneeds_approvalrejecttransactions[].policy.matched_ruleobject | nulltransactions[].policy.matched_rule.rule_idstringtransactions[].policy.matched_rule.namestringtransactions[].approvalsobjectفقط وقتی
stage برابر waiting_approval است.transactions[].approvals.approvedintegertransactions[].approvals.requiredintegernext_cursorstringلازمدر صفحهی آخر خالی است.
totalinteger | nullلازمهمهی ردیفهای منطبق در صفحهی اول، و
null در صفحههای بعد.خطاها
400
invalid request یا malformed request body: بدنه، پارامتر یا فیلد نادرست است، یا فیلد ناشناخته دارد.401
unauthenticated: هر شکست احراز هویت همین پاسخ را دارد.403
permission denied: کلید دسترسی این مسیر را ندارد.404
not found: مسیر یا شیء پیدا نشد. خواندن کیف پولی بیرون از فهرست کلید هم همین است.429
too many requests: بیش از سقف نرخ. پس از Retry-After ثانیه دوباره بفرستید.503
try again later: سرویس موقتاً در دسترس نیست.بدنهی خطا همیشه {"error":"..."} است. راهنمای خطاها میگوید برای هر کد چه باید کرد.