DocumentationGuides
Volleyball competitions and standings guide
Competitions and standings
World championships and tours down to national leagues and cups, each with its matches and a table for every stage and pool, worked out from the results.
What it covers
World championships, the Nations League, the beach tours, and national leagues and cups, each with its season, dates and matches. Standings are worked out from the results: a table for every stage and pool, with played, won, lost, league points, sets and rally points for and against, and the last five results.
The endpoints
| Endpoint | What it returns |
|---|---|
| GET /v1/competitions | Competitions, newest first, filtered by discipline, gender, season or name |
| GET /v1/competitions/{id} | One competition, with its dates and match count |
| GET /v1/competitions/{id}/matches | A competition's matches |
| GET /v1/competitions/{id}/standings | League tables for a competition, one per pool, worked out from its results |
| GET /v1/competitions/{id}/rosters | The players each team registered for a competition: shirt, captain, libero, birth date and height |
How the records link
Every match names its competition by id. Teams in a table are linked by id, so a table row leads to that team's matches.
Find a competition
By discipline, gender, season or a word in its name.
# Find a competition curl "https://api.volleyballapi.com/v1/competitions?discipline=beach&per_page=5" \ -H "Authorization: Bearer $VBA_KEY"
$q = http_build_query(['discipline' => 'beach', 'per_page' => '5']); $ch = curl_init('https://api.volleyballapi.com/v1/competitions?' . $q); curl_setopt_array($ch, [ CURLOPT_HTTPHEADER => ['Authorization: Bearer ' . getenv('VBA_KEY')], CURLOPT_RETURNTRANSFER => true, ]); $res = json_decode(curl_exec($ch), true); print_r($res['data']);
import os, requests r = requests.get( "https://api.volleyballapi.com/v1/competitions", params={"discipline": "beach", "per_page": "5"}, headers={"Authorization": f"Bearer {os.environ['VBA_KEY']}"}, ) print(r.json()["data"])
const res = await fetch("https://api.volleyballapi.com/v1/competitions?discipline=beach&per_page=5", { headers: { "X-API-Key": process.env.VBA_KEY }, }); const { data, meta } = await res.json();
The table
Indoor gives 3 points for a 3-0 or 3-1 win, 2 for a 3-2 win and 1 for a 2-3 loss; beach pools 2 for a win and 1 for a loss. Knockout rounds are left out unless you send stage=all.
# The table curl "https://api.volleyballapi.com/v1/competitions/cp_x2e5f59m/standings" \ -H "Authorization: Bearer $VBA_KEY"
$ch = curl_init('https://api.volleyballapi.com/v1/competitions/cp_x2e5f59m/standings'); curl_setopt_array($ch, [ CURLOPT_HTTPHEADER => ['Authorization: Bearer ' . getenv('VBA_KEY')], CURLOPT_RETURNTRANSFER => true, ]); $res = json_decode(curl_exec($ch), true); print_r($res['data']);
import os, requests r = requests.get( "https://api.volleyballapi.com/v1/competitions/cp_x2e5f59m/standings", headers={"Authorization": f"Bearer {os.environ['VBA_KEY']}"}, ) print(r.json()["data"])
const res = await fetch("https://api.volleyballapi.com/v1/competitions/cp_x2e5f59m/standings", { headers: { "X-API-Key": process.env.VBA_KEY }, }); const { data, meta } = await res.json();
Every match in it
Fixtures and results, every round and pool.
# Every match in it curl "https://api.volleyballapi.com/v1/competitions/cp_p80k5t4s/matches?per_page=2" \ -H "Authorization: Bearer $VBA_KEY"
$q = http_build_query(['per_page' => '2']); $ch = curl_init('https://api.volleyballapi.com/v1/competitions/cp_p80k5t4s/matches?' . $q); curl_setopt_array($ch, [ CURLOPT_HTTPHEADER => ['Authorization: Bearer ' . getenv('VBA_KEY')], CURLOPT_RETURNTRANSFER => true, ]); $res = json_decode(curl_exec($ch), true); print_r($res['data']);
import os, requests r = requests.get( "https://api.volleyballapi.com/v1/competitions/cp_p80k5t4s/matches", params={"per_page": "2"}, headers={"Authorization": f"Bearer {os.environ['VBA_KEY']}"}, ) print(r.json()["data"])
const res = await fetch("https://api.volleyballapi.com/v1/competitions/cp_p80k5t4s/matches?per_page=2", { headers: { "X-API-Key": process.env.VBA_KEY }, }); const { data, meta } = await res.json();
Stuck on something?
Ask support