/api/fc/ routes, so a URL alone does not identify the yearly release.
The observations below were checked against EA on 2026-09-30.
Nintendo namespace checks were expanded on 2026-10-01.
This is an undocumented API; these observations are not an EA support promise.
Start with the symptom
Last-gen requests fail with HTTP 400
EA rejectscommon-gen4, the former PS4 and Xbox One pool.
From proclubs-sdk@0.3.1, it is deprecated. It stays in the TypeScript
union for source compatibility, but requests reach EA and fail.
The SDK emits PROCLUBS_DEP001 once per client.
Nintendo has one API pool
Useplatform: 'nx'. Searches using nx2, nx-2, switch2,
switch-2, or common-nx returned HTTP 400.
Across 28 distinct league matches, 118 player-match rows from 15 club
rosters carried namespace: "4". The checks exposed no separate platform
or namespace to distinguish Switch from Switch 2.
The Nintendo label mapping is tracked in
issue #76.
Check the release notes before depending on derived Nintendo labels.
Keep raw namespaces and avoid guessing a hardware generation. The sampled
clubs returned no playoff matches; this expanded sample confirms league
behavior.
Recheck saved club IDs
During the FC 27 switchover, a club ID saved from FC 26 resolved to a different club. Search by name again and verify the result before updating stored links. EA exposes no game-version selector here. Your saved FC 26 matches remain your own archive; the SDK cannot retrieve them through a historical-year parameter.Understand HTTP 403
The default transport uses Impit with a Chrome network profile. Default HTTP mode accepts a 403 only when its JSON validates against that exact endpoint’s schema.{ "error": "Forbidden" } is never
accepted as club data.
When every 403 must stop a probe, choose strict mode:
Report unexpected shapes
Some Nintendo match responses on 2026-10-01 containedclubs.*.details: null. The current match schema expects an object
when details is present and rejects those responses with
ProClubsResponseError. This is separate from the namespace mapping.
Include the SDK version, platform, endpoint, HTTP status if available,
and unexpected field path in a bug report. Remove player identities
and unnecessary response data.
For an explicit, low-volume probe from a clone of the SDK repository:
unverified; a successful connection
does not prove every response contract.