Post Ad
HTTP Request
POST /v5/p2p/item/create
Request Parameters
Parameter | Required | Type | Comments |
---|---|---|---|
tokenId | true | string | Token ID. E.g. USDT,ETH,BTC |
currencyId | true | string | Currency ID. E.g. HKD,USD,EUR |
side | true | string | Buying or selling the token. 0 : buy; 1 : sell |
priceType | true | string | Pricing exchange rate model. 0 : fixed rate; 1 : floating rate |
premium | true | string | The premium applied to the floating exchange rate |
price | true | string | Price |
minAmount | true | string | Min. transaction amount |
maxAmount | true | string | Max. transaction amount |
remark | true | string | Ad description (max. length: 900) |
tradingPreferenceSet | true | Object | Trading preferences |
> hasUnPostAd | false | integer | Whether the counterparty must not have posted any advertisements. 0 : not required; 1 : required |
> isKyc | false | integer | Is it necessary for the counterparty to complete identity authentication? 0 : not required; 1 : required |
> isEmail | false | integer | Is it necessary for the counterparty to bind an email address? 0 : not required; 1 : required |
> isMobile | false | integer | Is it necessary for the counterparty to bind a mobile number? 0 : not required1 : required |
> hasRegisterTime | false | integer | Is the registration time required to be no less than {} days? 0 : not required; 1 : required |
> registerTimeThreshold | false | integer | Registration time threshold(Unit: Day) |
> orderFinishNumberDay30 | false | integer | Limit on number of completed orders in the last 30 days |
> completeRateDay30 | false | string | Completion rate in the last 30 days |
> nationalLimit | false | string | KYC restricted countries. Format: three-letter ISO country code |
> hasOrderFinishNumberDay30 | false | integer | Is it necessary to have no less than {} orders in the last 30 days? 0 : not required; 1 : required |
> hasCompleteRateDay30 | false | integer | Is it necessary to have a completion rate of no less than {} in the last 30 days? 0 : not required; 1 : required |
> hasNationalLimit | false | integer | Are country restrictions required? 0 : not required; 1 : required |
paymentIds | true | array[string] | Payment method type ID (len<=5) |
quantity | true | string | Number of ads |
paymentPeriod | true | string | Payment period (unit: minutes) |
itemType | true | string | ORIGIN : original P2P advertisement, generally refers to non-bulk advertisement; BULK : bulk advertisement |
Response Parameters
Parameter | Type | Comments |
---|---|---|
itemId | string | item Id |
securityRiskToken | string | security risk token |
riskTokenType | string | risk token type |
riskVersion | string | risk version |
needSecurityRisk | boolean | Whether security risk is necessary |
Request Example
- HTTP
- Python
POST /v5/p2p/item/create HTTP/1.1
Host: api-testnet.bybit.com
X-BAPI-SIGN: XXXXX
X-BAPI-API-KEY: xxxxxxxxxxxxxxxxxx
X-BAPI-TIMESTAMP: 1675866354698
X-BAPI-RECV-WINDOW: 5000
Content-Type: application/json
{
"tokenId": "USDT",
"currencyId":"EUR",
"side": "0",
"priceType":"0",
"premium":"",
"price":"0.92",
"minAmount":"20",
"maxAmount":"45000",
"paymentIds":["7110"],
"remark":"test",
"tradingPreferenceSet":{
"isKyc": "1",
"hasCompleteRateDay30": "1",
"completeRateDay30": "95",
"hasOrderFinishNumberDay30": "1",
"hasRegisterTime":"0",
"hasUnPostAd":"0",
"isEmail":"0",
"isMobile":"0",
"nationalLimit":"",
"orderFinishNumberDay30":"60",
"registerTimeThreshold": "0",
"verificationOrderLabels":[],
"verificationOrderSwitch": false
},
"quantity":"20000",
"paymentPeriod":"15",
"itemType":"ORIGIN"
}
from bybit_p2p import P2P
api = P2P(
testnet=True,
api_key="xxxxxxxxxxxxxxxxxx",
api_secret="xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
)
print(api.post_new_ad(
tokenId="USDT",
currencyId="EUR",
side="0",
priceType=0,
premium="",
price=0.92,
minAmount=20,
maxAmount=45000,
remark="test",
tradingPreferenceSet={
"hasUnPostAd": 0,
"isKyc": 1,
"isEmail": 0,
"isMobile": 0,
"hasRegisterTime": 0,
"registerTimeThreshold": 0,
"orderFinishNumberDay30": 60,
"completeRateDay30": 95,
"nationalLimit": "",
"hasOrderFinishNumberDay30": 1,
"hasCompleteRateDay30": 1
},
paymentIds=["7110"],
quantity="20000",
paymentPeriod="15",
itemType="ORIGIN"
))
Response Example
{
"ret_code": 0,
"ret_msg": "SUCCESS",
"result": {
"itemId": "1899659847717838848",
"securityRiskToken": "",
"riskTokenType": "",
"riskVersion": "",
"needSecurityRisk": false
},
"ext_code": "",
"ext_info": {},
"ext_map": {},
"time_now": "1741749176.939208"
}