Trustmining API v1
Welcome to the TrustMining integration guide. Our API allows you to automate ad management in the mining hardware (ASIC miners) category.
🔑 Authorization and Restrictions
To use the API, you need a personal access token, which you can generate in your personal account. Authentication is performed using Laravel Sanctum.
Important Requirement
Each API request must contain a header Accept: application/json.
Without it, the server will return an incorrect response in HTML format instead of JSON.
Maximum 60 requests per minute
per account. If the limit is exceeded, will be returned a code 429 Too Many Requests.
/api/v1/ads/get
— Getting a list of ASIC miner ads
Return data structure:
| Field | Type | Description / Validation |
|---|---|---|
| id | int | Internal unique ID of the ad in the system |
| name | string | ASIC miner model name |
| office | string | City of sales point |
| props | object | An object with specific product characteristics |
| └ condition | string | Device status: new
or used |
| └ availability | string | Availability status: in_stock or preorder |
| └ warranty | int|null | Warranty in months. (mandatory only if condition == used) |
| └ waiting | int|null | Delivery lead time in days. (mandatory only if availability == preorder) |
| price | int | Unit cost |
| coin | string | Settlement currency: rub, usdt or
cny
|
| with_vat | boolean | Is VAT included in the stated price |
| hidden | boolean | Visibility status: true (ad hidden), false (active on the site) |
Example of a successful JSON response (200 OK):
{
"ads": [
{
"id": 1045,
"name": "Bitmain Antminer S19 Pro 110Th",
"office": "Moscow",
"props": {
"condition": "used",
"availability": "in_stock",
"warranty": 3,
"waiting": null
},
"price": 145000,
"coin": "rub",
"with_vat": false,
"hidden": false
},
{
"id": 1046,
"name": "MicroBT Whatsminer M50 120Th",
"props": {
"condition": "new",
"availability": "preorder",
"warranty": null,
"waiting": 14
},
"price": 1850,
"coin": "usdt",
"with_vat": true,
"hidden": false
}
]
}
/api/v1/ads/update
— Bulk editing of ad parameters
Editing restrictions
Fields name,
office,
props.condition
and
props.availability
are not editable.
Changing them is blocked in this method. If you need to list an item with a different name, condition, or availability status, you must create a completely new listing.
Editable request body parameters (Payload):
| Field | Type | Validation Rules |
|---|---|---|
| ads.id | int | Required | Your existing listing ID |
| ads.price | int | Optional | Positive integer (> 0) |
| ads.coin | string | Optional | Acceptable Values: rub, usdt, cny |
| ads.with_vat | boolean | Optional | Boolean value (true/false) |
| ads.hidden | boolean | Optional | Boolean value (true/false) |
| ads.props.warranty | int | Optional | Number of warranty months from 0 to 12 (for used only) |
| ads.props.waiting | int | Optional | Waiting period in days from 1 to 120 (for pre-order only) |
Example of a JSON array passed in a request:
{
"ads": [
{
"id": 1045,
"price": 149000,
"hidden": false,
"props": {
"warranty": 6
}
},
{
"id": 1046,
"price": 1810,
"with_vat": false
}
]
}