Skip to main content

Club Events Listing API

How to pull your club's public events schedule using your Club ID, and use it on your own website.

Written by Haris K

How to Use This Data

PadelOS offers a set of public APIs — web addresses that return your club's live data (events, open matches, and more) instead of a web page. Each one works the same basic way:

  • The address returns data in a format called JSON — a structured format, not ready-made HTML. It isn't meant to be viewed directly, it's meant to be read by code.

  • Whoever builds or manages your website (a developer) fetches that address, reads the fields out of the response, and uses them to generate the HTML your visitors actually see — a name, a price, a date, and so on.

  • In practice, that means four steps on the developer's side:

    1. Fetch the data — call the address and get the response back.

    2. Parse it — convert the raw response into a usable object so individual fields can be read out of it.

    3. Loop through the list — the data comes back as a list of items (events, matches, etc.); the code goes through it one item at a time.

    4. Build the HTML — for each item, pull out the fields you want to show and insert them into the page.

This same pattern applies to every PadelOS public API — only the address and the specific fields returned change. Below is how it works for the Club Events API specifically.


About the Club Events API

This endpoint returns the public and competition events at your club — no player login required. It's meant for clubs that want to display their events calendar on their own website, or pull it into another system. Invite-only events are never included in this list.

The Basic Request

Every request starts from the same address, with your Club ID added on:

Replace YOUR_CLUB_ID with your club's ID, provided by PadelOS.

Example — for a club called PadelART:

Asking for More Than One Club

If you manage multiple locations and want one combined list, separate the Club IDs with a comma:

(216933 here is a placeholder for a second location — swap in your actual second Club ID.)

Narrowing the Results

You can add extra filters to the address to only show certain events. Add each one after an &.

Filter

What it does

eventType

Choose which events to show — active shows events that are open or upcoming, past shows events that have already finished. Leave it out to show every event, regardless of timing.

sport

Only show events for one sport, e.g. sport=padel. Leave it out to show all sports.

day

Only show events on a specific weekday, e.g. day=Friday.

startTime / endTime

Only show events starting or ending within a time window, e.g. startTime=18:00.

startDate / endDate

Only show events within a specific date range — both must be supplied together, e.g. startDate=2026-11-01&endDate=2026-11-30.

categoryIds / categoryNames

Only show events linked to one or more specific categories (comma-separated).

rating

Only show events open to players around a specific skill rating.

availability

available shows only events with open spots, slots_full shows only full ones. Leave it out to show both.

hideFilters

Hide certain events from the list entirely — sold_out hides full events, registration_closed hides ones that aren't open for sign-up yet.

sortBy / orderBy

Sort the results by a field, e.g. sortBy=startDate, and direction, e.g. orderBy=ASC or orderBy=DESC.

Example — only padel events with open spots at PadelART:

If you enter a value a filter doesn't recognise, that one filter is simply ignored — the rest of the request still works.

Splitting Results Into Pages

If your club runs a lot of events, you can ask for the list in smaller chunks instead of all at once:

  • limit — how many events per page, e.g. limit=10.

  • page — which page to fetch, e.g. page=2.

Leave both out and every matching event comes back in one response.

What You Get Back

The response is a list of events, each including:

  • Name, dates, and time

  • Which sport(s) it's for, and whether it's a public event or a competition

  • The organiser(s) running it

  • Price, including the original price and any discount applied

  • How many spots are filled and how many are available

  • Whether registration is currently open, and if not, when it opens

  • Any rating or gender restriction on who can join

Sample response — showing what one event in the list looks like:

  • name: Halloween Doubles Night

  • clubId: 216932

  • clubName: PadelART

  • startDate: 2026-10-31

  • startTime: 18:00

  • endTime: 21:00

  • eventType: Competition

  • price: €20 (originalPrice: €20, no discount applied)

  • capacity: 12 of 16 spots filled

  • isRegistrationOpen: true

  • rating range: 1.5–3.5

  • gender restriction: none

Did this answer your question?