Firm order#
OKX DEX will request relevant data using the parameters below.
Request Parameters#
| Parameter | Type | Required | Description | 
|---|---|---|---|
| chainIndex | String | Yes | Unique identifier for the chain. e.g., 1: Ethereum.See more here. | 
| takerAsset | Array | Yes | Address of takerToken | 
| makerAsset | String | Yes | Address of makerToken | 
| takerAmount | String | Yes | Trade quantity of takerToken | 
| takerAddress | String | Yes | Address of Taker | 
| rfqId | Long | Yes | A unique identifier assigned to each quote request. | 
| expiryDuration | Integer | Yes | This parameter sets the validity duration of a quote or request, indicating the time interval from when the quote/request is generated until it expires. | 
| callData | String | No | The transaction needs to be signed, this requirement applies to Solana only. | 
Response Parameters#
| Parameter | Type | Required | Description | 
|---|---|---|---|
| chainIndex | String | Yes | Unique identifier for the chain. e.g., 1: Ethereum.See more here. | 
| makerAmount | Array | Yes | Trade quantity of makerToken | 
| makerAddress | String | Yes | Address of order signer | 
| takerAsset | String | Yes | Address of takerToken | 
| makerAsset | String | Yes | Address of makerToken | 
| takerAmount | String | Yes | Trade quantity of takerToken | 
| takerAddress | String | Yes | Address of Taker | 
| rfqId | String | Yes | A unique identifier assigned to each quote request. | 
| expiry | Timestamp | Yes | Expiration time. | 
| signature | String | Yes | The signature of market maker. | 
| callData | String | No | The signed transaction and the modified calldata.(required for solana) | 
| signatureScheme | String | No | EIP-712 or EIP-1271(required for EVM) | 
| usePermit2 | Boolean | No | Use Permit2 to approve, default is false.(required for EVM) | 
Request Example#
shell
`firm-order` Solana Example
{
    "chainIndex" : "501",
    "takerAsset": "11111111111111111111111111111111",  // Address of takerToken
    "makerAsset": "Es9vMFrzaCERmJfrF4H2FYD4KCoNkY11McCe8BenwNYB",  // Address of makerToken
    "takerAmount": "6000000000000000", // Quantity of takerToken
    "takerAddress": "taker address", // Address of order taker
    "rfqId": "12345678", // uniqueId for the rfq
    "expiryDuration": 60,
    "callData": "d1KVBN6xw6sF1YzS5gDGGEp64jSmoB54umQyZeuHU8Mgctmok5vVvekq8DNUoPHDnb7Ydr42CyiQHAgkr8TnGFjk1AVr7yYF5MadmGPuLLRrn7KgMd7VHXccReChopuK8iJ2Co7CNmKULx75VtcZj7UMN2qeSQAPeMeAS2deNny3qiKnHXDYKFZRDyeZWnQrRPeSiithSiqc2fLb3XsN7S82Ho2M2D2Y5VbZnGZrJ7XVuPmTQrA5VXwGZpEYZg9QsqR6biy811YFHhvHTMTzMVbUhG988xyJSdxmVRkXBwbvLM2WCfr1Dppewg9pej9sqTG3zKx4NYSW27H9n5fV6SjgLReZCsX1RosN6Wk9ZpkUUHoWDfiGBCQWNdfaMD1mk8eFYXcgReCG2JDwQw8VRoVMhpUAf31Xyt7Ec2e9ug2X6XpXCctk4Adh9UMEJRqs7agEEzZwx638Cm99WfnDh7scDLBMYp4UaAkSmDVvnT8UpQoehrSxJefdzawFXhxVifkfPxi1VNKc4uinyHc4UWdhn9FFp37qJq2WsiACbRwEBmV8SQrZ77AL7MwcUPD8RqyR57Pxezk8KpH9PgEj7g6yRQjUzowDmesP5U9uVPSywUtgKDbtWVJXq4SgQUuSXY5YGWwxkQ6HYkPe6ga7ntziGfBQFbb7t9z1MDw6KAZcP7YPwGC9biEjgQxMyEaCBWzXDHWSvpYdrcLX4HRRLp8cWA3QBPcTZ6JFLFnRHLtn9fBwhz9G8v2544VzdNoVCj3pMsS9UZapDSnzbTFi2xKcyNQtDnRnnumUdz7pS4XtGz8V4tnfNozWCRC4TRg77vcCk81r8dPGrXKZQa2vusp7EvjtUyinmEuEhJvbwuvmRc1YsbrqibrRD2r6XEWFKLFE5adWz8gSZWwTj6ZWZDZtBw2QqVd1cSkuR1tEEaDs91nNGcgRitXeTJTuRNpGJWhcgNotEmK3NWTSmJZCiL7qaZeoatnYcVd6X3axxnyr2Dz4SwQePnVi5wVwJPtNiaWZ1V9kqpNwjTfuuk1aRyaWT55LGL71wSBWBgVuNxUYu9jTQ6cpyXxQiHYMHdhEcpdxYPzwe4gEx2EbPVSgL5mazUJHJoTwwhj9CFSsaXeiMaH2QsBw1TZVvLJboMw7Sa7eeAF6S9Q4CYyh4YSyjL6oLMmutz1a3X4xw3HkJHeEn3M2syP7GVP1xHreS9sso92MWHo3v7PyNgUwm3HyzgMNjXd"
}
`firm-order` EVM Example
{
    "chainIndex" : "1",
    "takerAsset": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2",  // Address of takerToken
    "makerAsset": "0xdac17f958d2ee523a2206206994597c13d831ec7",  // Address of makerToken
    "takerAmount": "6000000000000000", // Quantity of takerToken
    "takerAddress": "taker address", // Address of order taker
    "rfqId": "12345678", // uniqueId for the rfq
    "expiryDuration": 60
}
Response Example#
200
`firm-order` Solana Example 
{
    "code": "0",       
    "msg": "",
    "data": {
        "chainIndex" : "501",
        "rfqId" : "12345678",
        "expiry": 172120120102,
        "makerAsset": "11111111111111111111111111111111", //Address of makerToken
        "takerAsset": "Es9vMFrzaCERmJfrF4H2FYD4KCoNkY11McCe8BenwNYB", //Address of takerToken
        "makerAddress": "DmTcmrZ7Dz8asHuuvk2G419JMzqdx58brUBidAegaevp", //Address of order signer
        "takerAddress": "3owrzVrYU5bpWH6LpTRiG5BQ8F4szDtFXavrBWXRohgW", //Address of trading user
        "makerAmount": 100000000,    //Trade quantity of makerToken. TakerAmount * takerTokenRate
        "takerAmount": "6000000000000000",    //Trade quantity of takerToken
        "signature": "c64bf62b7619edda019fe491da256b9fbe892fbfeac91f9d1fce168478ad53053dde038584f063fe21e267fcb4e758bcf420036cd2838fe5cbd993ec6d3dde561b",
        "callData": "d1KVBN6xw6sF1YzS5gDGGEp64jSmoB54umQyZeuHU8Mgctmok5vVvekq8DNUoPHDnb7Ydr42CyiQHAgkr8TnGFjk1AVr7yYF5MadmGPuLLRrn7KgMd7VHXccReChopuK8iJ2Co7CNmKULx75VtcZj7UMN2qeSQAPeMeAS2deNny3qiKnHXDYKFZRDyeZWnQrRPeSiithSiqc2fLb3XsN7S82Ho2M2D2Y5VbZnGZrJ7XVuPmTQrA5VXwGZpEYZg9QsqR6biy811YFHhvHTMTzMVbUhG988xyJSdxmVRkXBwbvLM2WCfr1Dppewg9pej9sqTG3zKx4NYSW27H9n5fV6SjgLReZCsX1RosN6Wk9ZpkUUHoWDfiGBCQWNdfaMD1mk8eFYXcgReCG2JDwQw8VRoVMhpUAf31Xyt7Ec2e9ug2X6XpXCctk4Adh9UMEJRqs7agEEzZwx638Cm99WfnDh7scDLBMYp4UaAkSmDVvnT8UpQoehrSxJefdzawFXhxVifkfPxi1VNKc4uinyHc4UWdhn9FFp37qJq2WsiACbRwEBmV8SQrZ77AL7MwcUPD8RqyR57Pxezk8KpH9PgEj7g6yRQjUzowDmesP5U9uVPSywUtgKDbtWVJXq4SgQUuSXY5YGWwxkQ6HYkPe6ga7ntziGfBQFbb7t9z1MDw6KAZcP7YPwGC9biEjgQxMyEaCBWzXDHWSvpYdrcLX4HRRLp8cWA3QBPcTZ6JFLFnRHLtn9fBwhz9G8v2544VzdNoVCj3pMsS9UZapDSnzbTFi2xKcyNQtDnRnnumUdz7pS4XtGz8V4tnfNozWCRC4TRg77vcCk81r8dPGrXKZQa2vusp7EvjtUyinmEuEhJvbwuvmRc1YsbrqibrRD2r6XEWFKLFE5adWz8gSZWwTj6ZWZDZtBw2QqVd1cSkuR1tEEaDs91nNGcgRitXeTJTuRNpGJWhcgNotEmK3NWTSmJZCiL7qaZeoatnYcVd6X3axxnyr2Dz4SwQePnVi5wVwJPtNiaWZ1V9kqpNwjTfuuk1aRyaWT55LGL71wSBWBgVuNxUYu9jTQ6cpyXxQiHYMHdhEcpdxYPzwe4gEx2EbPVSgL5mazUJHJoTwwhj9CFSsaXeiMaH2QsBw1TZVvLJboMw7Sa7eeAF6S9Q4CYyh4YSyjL6oLMmutz1a3X4xw3HkJHeEn3M2syP7GVP1xHreS9sso92MWHo3v7PyNgUwm3HyzgMNjXd"
    }
}
`firm-order` EVM Example 
{
    "chainIndex" : "1",
    "takerAsset": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2",  // Address of takerToken
    "makerAsset": "0xdac17f958d2ee523a2206206994597c13d831ec7",  // Address of makerToken
    "takerAmount": "6000000000000000", // Quantity of takerToken
    "takerAddress": "taker address", // Address of order taker
    "rfqId": "12345678", // uniqueId for the rfq
    "expiryDuration": 60
}
