POST /api/v1/orders/create
Generate a new Seaport protocol order for an ENS name listing. Returns the complete order data ready for on-chain signing.
Authentication: None
Cache: None
Request Body
| Field | Type | Required | Default | Description |
|---|---|---|---|---|
tokenId | string | Yes | — | ENS name token ID |
price | string | Yes | — | Listing price |
currency | string | No | ETH (zero address) | Payment token address |
duration | number | No | 7 | Listing duration in days (1–365) |
offerer | string | Yes | — | Address of the seller/offerer |
Sample Request
curl -X POST -H "Content-Type: application/json" \
https://api.grails.app/api/v1/orders/create \
-d '{
"tokenId": "12345678901234567890",
"price": "100000000000000000",
"duration": 30,
"offerer": "0xabcd..."
}'Response
// 200 OK
{
"success": true,
"data": {
"offerer": "0xabcd...",
"zone": "0x0000000000000000000000000000000000000000",
"offer": [
{
"itemType": 2,
"token": "0x57f1887a8BF19b14fC0dF6Fd9B2acc9Af147eA85",
"identifierOrCriteria": "12345678901234567890",
"startAmount": "1",
"endAmount": "1"
}
],
"consideration": [
{
"itemType": 0,
"token": "0x0000000000000000000000000000000000000000",
"identifierOrCriteria": "0",
"startAmount": "100000000000000000",
"endAmount": "100000000000000000",
"recipient": "0xabcd..."
}
],
"orderType": 0,
"startTime": 1712505600,
"endTime": 1715097600,
"zoneHash": "0x0000000000000000000000000000000000000000000000000000000000000000",
"salt": "0x...",
"conduitKey": "0x0000000000000000000000000000000000000000000000000000000000000000",
"totalOriginalConsiderationItems": 1
},
"meta": {
"timestamp": "2026-04-07T12:00:00.000Z",
"version": "1.0.0"
}
}Error Responses
| Status | Code | Description |
|---|---|---|
| 400 | ORDER_CREATION_FAILED | Failed to create order (invalid parameters) |
Last updated on