Skip to main content

Admin Get OTC Deal Detail

Returns one OTC offer, keyed by its deal id within the token — the same key Accept and Cancel use, so a caller that can list a token's offers already holds everything this needs.

Request

GET /v2/admin/otcs/tokens/{token_id}/deals/{deal_id}

Parameters

NameTypeInDescription
token_idstringpathRequired. The token the offer is on
deal_idintegerpathRequired. The deal ID of the offer

Headers

NameTypeDescription
AuthorizationRequired. Bearer token for authentication

Example

curl --location '\{\{baseUrl\}\}/v2/admin/otcs/tokens/68ae06cfcccf4e8fc19362d1/deals/2' \
--header 'Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...'

Response

{
"id": "6a8b5d02f9129816a6cc79f4",
"token_id": "68ae06cfcccf4e8fc19362d1",
"node_id": "6810a8e5b45680e7d2f95bad",
"user_id": "680c02896d91ca0145cfeb81",
"deal_id": 2,
"price": {
"amount": 5,
"decimal": 6,
"symbol": "USDT",
"address": "0x78fccec69e21dc0b331b59f283d4d5b41ff36654"
},
"quantity": 1,
"status": 0,
"created_at": "2026-08-23T17:41:22.913Z",
"updated_at": "2026-08-23T17:41:22.913Z",
"user": {
"id": "680c02896d91ca0145cfeb81",
"name": "Ada",
"surname": "Yılmaz",
"email": "ada@example.com"
},
"transaction": null
}

Response Fields

FieldTypeDescription
idstringThe offer's own ID. Use it with Get Otc Offer By ID and the transaction endpoints
deal_idintegerThe on-chain deal ID, unique within the token contract
priceobjectUnit price of the offer
price.amountnumberPrice of one token
price.decimalintegerDecimals of the currency token
price.symbolstringCurrency token symbol
price.addressstringCurrency token contract address
quantityintegerNumber of tokens offered
statusintegerOffer status
userobjectThe buyer who made the offer. Omitted if the user cannot be resolved — a deleted buyer must not hide the offer
user.name, user.surnamestringOptional; omitted when unset
transactionobjectThe latest accept or cancel acting on the offer, or null while no action has been taken
transaction.statusinteger1 Started, 2 InProgress, 3 Done, 4 Error, 5 PendingReceipt
transaction.typeinteger1 accept, 2 cancel

The list endpoints answer "what offers are there"; this answers "what happened to this one" — which needs the buyer's identity and the on-chain outcome, neither of which belongs on every row of a list.

Status Codes

Status CodeDescription
200Success - offer detail retrieved
400Bad Request - unknown deal, or a deal id paired with a token it does not belong to
401Unauthorized - invalid or missing authentication token
500Internal Server Error

Notes

  • An offer on a token belonging to another node is not readable.
  • transaction reflects the latest attempt only. A failed accept can be retried, so the full history lives at List Otc Transactions.