Volleyball API
DocumentationLiveCoveragePricingMCPStatusSign inGet a free key

DocumentationCompetitions

Volleyball competition API

GET/v1/competitions/{id}

One competition with its discipline, gender, season and dates, the number of matches you can read in it and the first and last of them.

PlansFree keyLiveArchiveComplete
Base URLhttps://api.volleyballapi.com
Answerone object

Parameters

This endpoint takes the parameters below.

NameTypeWhat it doesExample
idpathThe competition id, in the address. Required.cp_tayx7he8

Request

Send your key in the Authorization header as a Bearer token, or in X-API-Key. A key in the address is refused, so it never ends up in a log.

# One competition, with its dates and match count
curl "https://api.volleyballapi.com/v1/competitions/cp_tayx7he8" \
  -H "Authorization: Bearer $VBA_KEY"

Response

Every answer is data plus meta. This is a real answer to the request above, counted 2026-10-12, with long lists cut short.

200 application/json
{
  "data": {
    "id": "cp_tayx7he8",
    "name": "Women's Asian Senior Championship 2023",
    "discipline": "indoor",
    "gender": "women",
    "season": 2023,
    "start_date": "2023-08-30",
    "end_date": "2023-09-06",
    "country_code": "TH",
    "matches": 43,
    "first_match": "2023-08-30",
    "last_match": "2023-09-06"
  },
  "meta": { "plan": "Complete" }
}

Fields

FieldTypeWhat it holds
idstringStable competition id, cp_
namestringThe competition's name
disciplineenumindoor or beach
genderenummen, women or mixed
seasonintThe year the season starts in
start_date, end_datedateFirst and last day, where known
country_codestringTwo-letter country of a national competition
matchesintMatches in it your plan can read
first_match, last_matchdateThe first and last of them

Errors

Errors come back as {"error": {"code", "message", "docs"}}, with plan and pricing added when a plan would answer. Every error.

HTTPCodeWhen
401unauthorizedNo key, or a key that is not known or was revoked
404not_foundAn id that does not exist
422unknown_parameterA parameter this endpoint does not take; the answer lists the ones it does
429rate_limitedToo many calls this minute; Retry-After says when to try again
429quota_exceededThe day's or month's allowance is used; the answer says when it resets

Try it

Fill in what you need; the request is built as you type. Paste your key to run it here, straight against the API.