users

Update user clubs

Join or leave an existing club as the account owner or an admin. Club identity is resolved from id; the optional slug is ignored compatibility metadata. This endpoint never creates, renames or reassigns shared clubs. Unknown clubs return 404. Cookie-authenticated writes must send Content-Type: application/json and an Origin exactly matching the configured AUTH_ISSUER_URL origin (https://auth.myltv.cloud in production). Missing headers or a cross-site origin return 403 Forbidden. OAuth bearer callers use Authorization: Bearer ... and are not subject to this cookie-session check.

put/users/{userId}/clubs

Request

  • Base URL: https://api.leisurevans.com
  • URL: https://api.leisurevans.com/users/{userId}/clubs
  • Auth: one of:
    • API key in cookie myltv.session_token
    • HTTP bearer

Path parameters

userIdstring required

Query parameters

action'join' | 'leave' required

Request body

idstring required

Existing club UUID, slug or numeric legacy WordPress ID.

slugstring

Accepted for compatibility; cannot change club identity or metadata.

Response

User clubs update response.

messagestring
requestIdstring uuid required

Example response

{
  "data": [
    {
      "id": "14ba0c2d-27f9-4de1-927c-4d8d6da5480a",
      "slug": "southwest-ltv-roadrunners-rv-club",
      "joinDate": "2026-02-01T12:00:00.000Z",
      "isLeader": false
    }
  ],
  "meta": {
    "total": 1,
    "limit": 50,
    "offset": 0,
    "nextCursor": null
  },
  "requestId": "0d8b5744-7544-4bb0-8f95-65be635315d8"
}

Changes

No recorded changes to this operation across all 1 revision of this API.