跳至主要内容

List Agreements API

HTTP Request​

GET /v5/pay/agreement/list

Query agreement list under merchant with pagination and filtering support.


Request Parameters​

ParameterTypeRequiredDescription
merchantIdstringYesMerchant ID
userIdstringNoPlatform user ID (filter by user)
agreementTypestringNoSign type: CYCLE / NON_CYCLE / SINGLE (query all if not provided)
statusstringNoStatus filter: INIT / PENDING / PROCESSING / SIGNED / SUSPENDED / UNSIGNED / EXPIRED / REJECTED / FAILED / TIMEOUT
sceneCodestringNoScene code filter
startTimestringNoSign start time (ISO8601)
endTimestringNoSign end time (ISO8601)
pageNointYesPage number, minimum 1
pageSizeintYesPage size, range 1-100

Response Parameters​

ParameterTypeDescription
retCodeintResponse code
retMsgstringResponse message
resultobjectResponse data
result.totalintTotal record count
result.pageNointCurrent page number
result.pageSizeintPage size
result.listarrayAgreement list
result.list[].agreementNostringPlatform agreement number
result.list[].externalAgreementNostringMerchant agreement number
result.list[].userIdstringPlatform user ID
result.list[].merchantUserIdstringMerchant-side user ID
result.list[].agreementTypestringSign type
result.list[].sceneCodestringScene code
result.list[].statusstringAgreement status
result.list[].signTimestringSign time
result.list[].validTimestringValidity period

Request Examples​

List All Active Agreements​

GET /v5/pay/agreement/list?merchantId=M123456789&status=SIGNED&pageNo=1&pageSize=20 HTTP/1.1
Host: api.bybit.com
X-Request-Id: 550e8400-e29b-41d4-a716-446655440000
X-Timestamp: 1736233200000
X-Signature: {signature}
Authorization: Bearer {access_token}

List Agreements for Specific User​

GET /v5/pay/agreement/list?merchantId=M123456789&userId=U_123456789&pageNo=1&pageSize=20 HTTP/1.1
Host: api.bybit.com
X-Request-Id: 550e8400-e29b-41d4-a716-446655440000
X-Timestamp: 1736233200000
X-Signature: {signature}
Authorization: Bearer {access_token}

List Agreements by Scene and Time Range​

GET /v5/pay/agreement/list?merchantId=M123456789&sceneCode=SUBSCRIPTION&startTime=2026-01-01T00:00:00Z&endTime=2026-01-31T23:59:59Z&pageNo=1&pageSize=50 HTTP/1.1
Host: api.bybit.com
X-Request-Id: 550e8400-e29b-41d4-a716-446655440000
X-Timestamp: 1736233200000
X-Signature: {signature}
Authorization: Bearer {access_token}

Response Example​

{
"retCode": 20000,
"retMsg": "Success",
"result": {
"total": 150,
"pageNo": 1,
"pageSize": 20,
"list": [
{
"agreementNo": "AGR202601070001",
"externalAgreementNo": "MERCHANT_AGR_001",
"userId": "U_123456789",
"merchantUserId": "merchant_user_123",
"agreementType": "CYCLE",
"sceneCode": "SUBSCRIPTION",
"status": "SIGNED",
"signTime": "2026-01-07T10:30:00Z",
"validTime": "2027-01-07T10:30:00Z"
},
{
"agreementNo": "AGR202601060001",
"externalAgreementNo": "MERCHANT_AGR_002",
"userId": "U_987654321",
"merchantUserId": "merchant_user_456",
"agreementType": "CYCLE",
"sceneCode": "TAXI",
"status": "SIGNED",
"signTime": "2026-01-06T15:20:00Z",
"validTime": "2027-01-06T15:20:00Z"
}
]
}
}

Notes​

  • Use pagination for large result sets to avoid timeout
  • Combine filters for efficient querying
  • signTime is used for time range filtering