# Clubs - Memberships
# Events
--- CLUB_MEMBERSHIP_CREATED ---
{
"event": "CLUB_MEMBERSHIP_CREATED",
"data": {
"club_id": 123,
"person_id": 999,
"year": 2021
}
}
--- CLUB_MEMBERSHIP_DELETED ---
{
"event": "CLUB_MEMBERSHIP_DELETED",
"data": {
"club_id": 123,
"person_id": 999,
"year": 2021
}
}
# Validation
{
"year": [
"required",
"unique per club and person_id"
],
"person_id": [
"required",
"a valid person"
]
}
# List
--- ENDPOINT ---
Domain: equidata
Paginated: true
Url: /clubs/123/members?page=2&year=2020
Method: GET
# Filters
| filter | value | required | info |
|---|---|---|---|
| year | numeric | optional | Use this to only fetch memberships for a given year |
--- EXAMPLE RESPONSE ---
{
// pagination meta,
"data": [
{
"year": 2021,
"person_id": 999
},
/* other entries */
]
}
# Create
--- ENDPOINT ---
Domain: equidata
Url: /clubs/123/members
Method: POST
--- EXAMPLE PAYLOAD ---
{
"year": 2021,
"person_id": 999
}
--- EXAMPLE RESPONSE ---
{
"year": 2021,
"person_id": 999
}
# Delete
--- ENDPOINT ---
Domain: equidata
Url: /clubs/123/members
Method: DELETE
--- EXAMPLE PAYLOAD ---
{
"year": 2021,
"person_id": 999
}
--- EXAMPLE RESPONSE ---
// empty, simply a HTTP 200 status code