Access
- Request
GET https://api.sports.csap.ai/api/v1/search- Auth
- Header X-API-Key: <your key> (Authorization: Bearer <key> also works; ?key= is still accepted but discouraged, because the key ends up in URLs and logs)
- External keys
- AvailableAny valid API key can call this endpoint.
- Rate limits
- 3000 per minute · 200000 per day · Set per key (rate_per_min and quota_daily returned by /api/v1/account are authoritative; the numbers above are a trial key's). Beyond them the answer is 429. In addition, heavy requests such as whole-table snapshots and statistics lists without a match id are processed 2 at a time for the whole platform; a request that cannot get a slot receives 429 with Retry-After. Responses do not carry X-RateLimit-* headers for now. See the general guide
Request parameters 3
| Parameter | Type | required | Example | Description |
|---|---|---|---|---|
| q | string | required | Arsenal | Keyword (required) |
| lang | string | optional | zh | zh / en |
| limit | integer | optional | 2 | Rows per type |
Example request
curl "https://api.sports.csap.ai/api/v1/search?limit=2&q=Arsenal" \ -H "X-API-Key: YOUR_API_KEY"
Try it
Example response
{
"code": 0,
"data": {
"competitions": [],
"players": [],
"teams": [
{
"country_zh": "英格兰",
"gtid": 3152,
"name_zh": "阿森纳",
"name": "Arsenal"
},
{
"country_zh": "英格兰",
"gtid": 6950,
"name_zh": "阿森纳U21",
"name": "Arsenal U21"
}
]
},
"message": "success",
"success": true
}Response fields 3
competitionsarray
playersarray
teamsarray<object>· 4
Errors
| HTTP | message | When |
|---|---|---|
| 401 | missing API key / unauthorized | No X-API-Key, or the key is invalid or disabled |
| 429 | rate limit exceeded / daily quota exceeded | The key's per-minute rate or daily quota is exceeded |
| 429 | server busy, retry later | The server's concurrency slots are full (only 2 heavy requests at a time); retry after Retry-After seconds |
| 500 | query error | The query failed on the server; you may retry |