Teams, Players & Rosters
List teams
Each data.items[] entry has the same team-field schema as GET /v1/{league}/teams/{id}. This endpoint discovers team IDs and returns a directory; the detail endpoint fetches one known ID. Neither automatically adds roster, schedule, or season-stat blocks. Use the separate team endpoints for those datasets. The directory is limited by limit (default/max 500), has no cursor, and returns an empty items array when no teams match. Per-field provenance is available on the single-team read, not on each directory item.
Returns { "data": { "items": [...] } }. For soccer, league
membership is derived from all stored fixtures before joining the
shared club and national-team directories. This avoids leaking teams
from unrelated competitions that share the same canonical store.
Requires the odds entitlement (a paid plan). See Responses & Errors for the success envelope and availability rules.
https://api.sportquanta.com/v1/{league}/teamsReference context: WKBL.
Overview · Response conventions
Authorizations
AuthorizationstringheaderrequiredSend a workspace API token in the Authorization: Bearer <token> header.
Path Parameters
leagueenum<string>default:wkblrequiredLeague for this reference section: wkbl.
Available options: wkbl
Query Parameters
limitintegerdefault:500Required range: 1 <= x, x <= 500
Response
application/jsonTeam directory under data.items.
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 {league} segment is not in the Sportquanta catalog.
Query validation failed. Depending on the handler, invalid_query_parameter is returned with HTTP 400 or 422. Pre-read validation is non-billable.
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.itemsobject[]requireddata.items.idstringOpaque team identifier. Reuse the returned ID in team paths; do not construct one from a name or abbreviation.
data.items.canonical_idstringCanonical identity for this team, when exposed. Can match id; it is not an upstream provider ID.
data.items.external_idsobjectMap 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.items.external_ids.{key}stringdata.items.created_atstring<date-time>Canonical document creation timestamp, when present; not the scheduled start or event time.
data.items.updated_atstring<date-time>Canonical document update timestamp, when present. It is not a guarantee that every field was refreshed at this time; field provenance carries individual ingestion times.
data.items.abbreviationstringShort team code supplied by the source. Use id for lookups; abbreviations are display labels.
data.items.namestringSource-supplied base team name. It may be a nickname or common label rather than the full display name.
data.items.team_namestringTeam-name component supplied by the source, when available. May overlap with name or full_name.
data.items.full_namestringFull team display name supplied by the source, when available.
data.items.short_namestringShort display label supplied by the source, when available; not necessarily the abbreviation.
data.items.korean_namestringKorean short/common team name, when supplied by this projection.
data.items.korean_full_namestringKorean full team name, when supplied by this projection.
data.items.logo_asset_keystringStored asset key, when available. Prefer the materialized URL field for display instead of constructing a storage URL.
data.items.official_logo_urlstringStored official/provider logo URL, when available. May differ from the materialized logo_url; source and league determine availability.
data.items.activebooleanSource-supplied active flag. Omission means the flag is unavailable; it must not be treated as false.
data.items.logo_urlstringMaterialized logo URL for display, when resolvable. Omitted when no usable logo is available; use a UI fallback.
_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.