Skip to main content
POST
/
api
/
{blockchain}
/
order
TypeScript
const options = {
  method: 'POST',
  headers: {'Content-Type': 'application/json'},
  body: JSON.stringify({
    maker: '<string>',
    makerSrcOrToken: '<string>',
    params: {
      makerTraits: {
        allowMultipleFills: true,
        allowPartialFills: true,
        allowedSenderSuffix: '<string>',
        expiration: 1,
        hasExtension: true,
        needCheckEpochManager: true,
        needPostInteractionCall: true,
        needPreInteractionCall: true,
        nonceOrEpoch: 1,
        series: 1,
        unwrapWeth: true,
        usePermit2: true
      },
      makingAmount: '<string>',
      salt: '<string>',
      signature: '<string>',
      takingAmount: '<string>',
      extension: '<string>'
    },
    takerSrcOrToken: '<string>'
  })
};

fetch('https://swap.ggp.gg/api/{blockchain}/order', options)
  .then(res => res.json())
  .then(res => console.log(res))
  .catch(err => console.error(err));
curl --request POST \
--url https://swap.ggp.gg/api/{blockchain}/order \
--header 'Content-Type: application/json' \
--data '
{
"maker": "<string>",
"makerSrcOrToken": "<string>",
"params": {
"makerTraits": {
"allowMultipleFills": true,
"allowPartialFills": true,
"allowedSenderSuffix": "<string>",
"expiration": 1,
"hasExtension": true,
"needCheckEpochManager": true,
"needPostInteractionCall": true,
"needPreInteractionCall": true,
"nonceOrEpoch": 1,
"series": 1,
"unwrapWeth": true,
"usePermit2": true
},
"makingAmount": "<string>",
"salt": "<string>",
"signature": "<string>",
"takingAmount": "<string>",
"extension": "<string>"
},
"takerSrcOrToken": "<string>"
}
'
import requests

url = "https://swap.ggp.gg/api/{blockchain}/order"

payload = {
"maker": "<string>",
"makerSrcOrToken": "<string>",
"params": {
"makerTraits": {
"allowMultipleFills": True,
"allowPartialFills": True,
"allowedSenderSuffix": "<string>",
"expiration": 1,
"hasExtension": True,
"needCheckEpochManager": True,
"needPostInteractionCall": True,
"needPreInteractionCall": True,
"nonceOrEpoch": 1,
"series": 1,
"unwrapWeth": True,
"usePermit2": True
},
"makingAmount": "<string>",
"salt": "<string>",
"signature": "<string>",
"takingAmount": "<string>",
"extension": "<string>"
},
"takerSrcOrToken": "<string>"
}
headers = {"Content-Type": "application/json"}

response = requests.post(url, json=payload, headers=headers)

print(response.text)
{
  "orderHash": "0xaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa"
}
{
"code": 400,
"error": "string"
}
{
"code": 408,
"error": "string"
}
{
"code": 500,
"error": "string"
}

Path Parameters

blockchain
enum<string>
required
Available options:
ethereum,
bsc,
arbitrum

Body

application/json

Order params with signatures and extensions

maker
string
required

Maker wallet or contract address

makerSrcOrToken
string
required

Address of the maker asset (ERC20 token contract)

orderType
enum<string>
required

Order type

Available options:
limit,
twap
params
object
required

Limit order params

takerSrcOrToken
string
required

Address of the taker asset (ERC20 token contract)

recipient
string | null

Other destination wallet or contract

Response

Success creation order with orderHash

orderHash
string
required

Order hash (id in bytes32)