Skip to main content
EA Pro Clubs responses identify a club’s region with a numeric regionId. The SDK keeps that raw identifier and, when the value is known, adds a derived regionLabel on public club information.
This mapping is reverse-engineered from the EA Pro Clubs website. It is not an official EA contract and can change without notice. Unknown IDs never fail a request: regionId stays available and regionLabel is omitted.

Beginner example

clubs.search applies the same enrichment to nested clubInfo when a regionId is present. Match club details use the same ClubInfo shape, so they receive regionLabel too.

Known regions

Labels are copied exactly from EA, including Australia/NewZealand.

Mapping and helper

  • REGION_LABELS is a frozen object whose keys are the EA IDs as strings.
  • KnownRegionId and RegionLabel are derived from that constant.
  • resolveRegionLabel accepts string | number | null | undefined.
  • Surrounding whitespace on string IDs is ignored. There is no partial match and no numeric coercion beyond the exact string or number EA sent.
  • Consumers that only need the region table can import from the standalone subpath proclubs-sdk/regions without loading the HTTP client or native dependencies.

Drift detection

An unknown regionId is valid at runtime so a new EA region cannot break clubs.get or clubs.search. The structural drift detector from issue #17 can report that ID as unknown_value on a live compatibility check. Maintainers then confirm the EA label and update REGION_LABELS deliberately. The mapping does not depend on the full compatibility workflow.