Teams, Players & Rosters
Venue details
V-League Men: exact competition and season scope. Canonical payload fields retain camelCase, including provider-native statistic keys; the public envelope uses its established metadata spelling. Requires the stats entitlement. Source-dependent fields may be omitted or null. The implemented source routes are gated by operator controls; this schema does not assert that production data has been collected.
https://api.sportquanta.com/v1/vleaguemen/venues/{id}Reference context: V-League Men.
Overview · Response conventions
Authorizations
AuthorizationstringheaderrequiredSend a workspace API token in the Authorization: Bearer <token> header.
Path Parameters
idstringrequiredOpaque canonical entity ID returned by this competition's reader.
Query Parameters
seasonenum<string>requiredExact edition/season label is required; the reader never substitutes another competition or season.
Available options: 2025-26, 2026-27
phaseenum<string>default:regularV-League regular is the default. Postseason and Cup remain separate partitions.
Available options: regular, postseason
limitintegerdefault:100Maximum rows returned. Only event routes provide cursor pagination.
Required range: 1 <= x, x <= 1000
provenancebooleandefault:falseInclude raw per-field _prov on canonical records.
Response
application/jsonScoped canonical response; an empty collection does not imply complete source coverage.
Query validation failed. Depending on the handler, invalid_query_parameter is returned with HTTP 400 or 422. Pre-read validation is non-billable.
Missing or invalid bearer API token.
Access is forbidden: the token lacks api.read scope, the plan lacks an endpoint/bookmaker capability, or configured billing access is inactive. Inspect error.code and details.feature when present.
The id is well-formed but no document has been ingested for it yet.
Hourly rate ceiling or monthly quota exceeded. The error code disambiguates
which limit was hit. X-RateLimit-* and X-Requests-*-Month response headers
carry the current state of both counters.
Token validation or an internal handler failed. Token-store failures use api_token_lookup_failed; unsupported internal sport dispatch can use data_layer_unavailable.
The data layer (Mongo / ClickHouse / Redis cache) is temporarily unreachable. The server attempted the lookup; it failed. Retry with backoff. Per the spec's order of evaluation, this DOES consume monthly quota — the request reached step 6.
The configured billing provider could not verify API access. The request is refused before the data handler and does not consume monthly quota.
dataobjectrequireddata.canonicalIdstringdata.externalIdsobjectMap from the exact stored source/namespace key to that provider's identifier for this entity. Keys vary by entity and league. Values are strings, even when the provider ID looks numeric. Use the exact key and value for external-ID lookups; these are distinct from the canonical ID. SOURCE_KEY below is an illustrative placeholder.
data.externalIds.{key}stringdata.namestringdata.citystring | nulldata.countrystring | nulldata.timeZoneIdstring | nulldata.createdAtstring<date-time>Optional canonical storage creation time.
data.updatedAtstring<date-time>Canonical write time; individual field freshness is recorded under _prov.
data._provobjectOptional raw field provenance, returned only with provenance=true. Keys name the canonical camelCase fields; entries retain source, runId and ingestedAt. Map keyed by canonical source field name. Each value identifies the winning source, ingestion run, and ingestion timestamp for that field. Keys can use the stored camelCase field name even when the response uses snake_case.
data._prov.{key}objectdata._prov.{key}.sourcestringdata._prov.{key}.runIdstringdata._prov.{key}.ingestedAtstring<date-time>data.evidenceobjectdata.evidence.sourcesstring[]data.evidence.observedAtstring | nulldata.evidence.ageMsnumber | nulldata.evidence.fieldObservedAtobjectCanonical-field names mapped to source observation timestamps. Individual field age can differ from the document write time.
data.evidence.fieldObservedAt.{key}stringdata.evidence.staleAfterMsnumberdata.evidence.stalebooleandata.evidence.availabilityenum<string>Available options: available, unavailable
data.scopeobjectdata.scope.directorytruedata.scope.historicalMembershipVerifiedfalse_metaobjectResponse request/cache metadata. Optional evidence fields are specific to this handler; cache TTL does not measure source-data freshness.
_meta.request_idstring_meta.served_fromenum<string>Available options: live, cache
_meta.cache_ttl_secondsintegerResponse cache TTL; independent of source freshness. Omitted when zero.
errorobjectrequirederror.codestringrequiredStable machine-readable error code.
error.messagestringrequiredUser-facing error summary.
error.detailsanyOptional error details.