Skip to contents

Latest round's results and the next round's fixtures of a FEB competition season.

Endpoint: GET https://baloncestoenvivo.feb.es/resultados.aspx?g={group}&t={season - 1}

section is results (the LATEST round of the shown phase; for a finished season the last playoff round) or next_round (empty once the season is over). comp_id ties the site group to the API's competition id (group 1 -> 115, 2 -> 118, 4 -> 210).

Usage

feb_results(group = 4, season)

Arguments

group

(integer default 4, Liga Femenina Endesa): The site's menu group: 1 Primera FEB, 2 Segunda FEB, 4 Liga Femenina Endesa, 9 and 10 LF-2, 67 LF Challenge, 73 Copa de Espana, 74 Liga U. A group is not a competition id (see comp_id).

season

(integer required): Season END year (2027 = 2026-27), sent to the site as its START-year key t = season - 1.

Value

A wehoop_data tibble with these columns:

col_nametypedescription
groupintegerThe site's menu group (1 Primera FEB, 2 Segunda FEB, 4 Liga Femenina Endesa); not a competition id.
seasonintegerSeason END year (2027 = 2026-27), the site's START-year key plus one.
competitioncharacterCompetition name on the page header ('PRIMERA FEB').
comp_idintegerCompetition id (CompID) read from the page; ties the site group to the API (group 1 -> 115, 2 -> 118, 4 -> 210).
sectioncharacterWhich table the row comes from: results (the latest round) or next_round (the following fixtures).
round_titlecharacterTitle of the table as printed ('Resultados Jornada 3(09/10/2026)').
game_idintegerFEB game id (one global sequence): the {gameId} of every LiveStats route and the p= of Partido.aspx. Game bodies do not print it, so it comes from the request.
home_team_idintegerHome team-season id (new every season; joins feb_overview and the game wrappers).
home_teamcharacterHome team name, uppercase.
away_team_idintegerAway team-season id (new every season).
away_teamcharacterAway team name, uppercase.
result_textcharacterResult cell verbatim: 'home-away' points when played; before the game the calendar shows the Spanish weekday, date and time and the results page shows '-'.
home_scoreintegerHome points; null before the game.
away_scoreintegerAway points; null before the game.
statuscharacterplayed when the result cell holds a score, scheduled otherwise.
dateDateGame date; null for played games on the schedule page (use round_date).
timecharacterTip-off 'HH:MM', Spanish local time; null for played games on the schedule page.

Details

The Spanish Basketball Federation (FEB) wrappers cover Primera FEB, Segunda FEB and Liga Femenina Endesa (plus the federation's other groups on the same routes). They mirror sdv-py's sportsdataverse.basketball.feb wrappers of the same names: same arguments, the same snake_case columns and types, one row per sdv-py row.

Legal notice. The FEB's aviso legal (legal notice) asserts intellectual-property rights over the site's content and its databases (the EU database right). It has no explicit scraping clause, and robots.txt answers 404 on both hosts. Fetching for your own use on your own machine is how these wrappers are meant to be used; check the notice before you republish the data.

Unofficial and unsupported. The LiveStats API (intrafeb.feb.es) is the federation's own widget backend, not a documented public API. It needs a bearer token, which is public: it is read from the home page of baloncestoenvivo.feb.es at run time, kept in memory for the R session (24 h validity, renewed once on an HTTP 401) and never printed, logged or written. Requests are spaced at least one second apart per host; 429 and 5xx answers are retried (three attempts).

Coverage. The game routes answer from 2020-21 (Liga Femenina Endesa from its first game; Primera FEB from 2021-03-12, so its earlier 2020-21 games and every earlier season answer 404). 2020-21 play-by-play is text only. The schedule pages go back to 1996-97 (season = 1997).

Seasons are END years (season = 2027 is 2026-27); the site's own t key is the START year, so the request sends t = season - 1.

Errors are classed conditions, never a warning plus an empty frame: wehoop_no_data (HTTP 404, an unknown group, a schedule page with no games, an empty overview window), wehoop_bad_request (HTTP 400 / 422, or a game_id, group or season that is not a non-negative integer) and wehoop_asset_fetch (any other failure: another status, a transport error, a token the API still rejects after one renewal, a non-JSON or non-HTML body, an error or changed envelope, a play-by-play of another game, a page for another group or season, or layout drift). All inherit wehoop_error.

Examples

# \donttest{
  try(feb_results(group = 1, season = 2027))
#> ── FEB results from baloncestoenvivo.feb.es ──────────────────── wehoop 3.1.0 ──
#> ℹ Data updated: 2026-10-22 02:35:25 UTC
#> # A tibble: 18 × 17
#>    group season competition comp_id section    round_title  game_id home_team_id
#>    <int>  <int> <chr>         <int> <chr>      <chr>          <int>        <int>
#>  1     1   2027 PRIMERA FEB     115 results    Resultados … 2535755      1008378
#>  2     1   2027 PRIMERA FEB     115 results    Resultados … 2535753      1008400
#>  3     1   2027 PRIMERA FEB     115 results    Resultados … 2535757      1009095
#>  4     1   2027 PRIMERA FEB     115 results    Resultados … 2535754      1009110
#>  5     1   2027 PRIMERA FEB     115 results    Resultados … 2535758      1008797
#>  6     1   2027 PRIMERA FEB     115 results    Resultados … 2535759      1009584
#>  7     1   2027 PRIMERA FEB     115 results    Resultados … 2535760      1008900
#>  8     1   2027 PRIMERA FEB     115 results    Resultados … 2535752      1009929
#>  9     1   2027 PRIMERA FEB     115 results    Resultados … 2535756      1010493
#> 10     1   2027 PRIMERA FEB     115 next_round Próxima Jor… 2535767      1009837
#> 11     1   2027 PRIMERA FEB     115 next_round Próxima Jor… 2535768      1010207
#> 12     1   2027 PRIMERA FEB     115 next_round Próxima Jor… 2535764      1009713
#> 13     1   2027 PRIMERA FEB     115 next_round Próxima Jor… 2535762      1008687
#> 14     1   2027 PRIMERA FEB     115 next_round Próxima Jor… 2535765      1009110
#> 15     1   2027 PRIMERA FEB     115 next_round Próxima Jor… 2535769      1010324
#> 16     1   2027 PRIMERA FEB     115 next_round Próxima Jor… 2535761      1009716
#> 17     1   2027 PRIMERA FEB     115 next_round Próxima Jor… 2535766      1010494
#> 18     1   2027 PRIMERA FEB     115 next_round Próxima Jor… 2535763      1009072
#> # ℹ 9 more variables: home_team <chr>, away_team_id <int>, away_team <chr>,
#> #   result_text <chr>, home_score <int>, away_score <int>, status <chr>,
#> #   date <date>, time <chr>
# }