انتقل إلى المحتوى
CLUP.life

المطوّرون API reference

API reference

All routes of the CLUP.life REST API v1 with parameters, responses and examples — generated from the OpenAPI description. Download as JSON and YAML.

الوثائق التقنية متوفرة بالألمانية والإنجليزية؛ نعرض النسخة الإنجليزية بلغتك.

This reference is generated from the real OpenAPI description; it cannot drift from the API. A development test fails as soon as a route is missing or the description no longer matches the documentation.

العنوان الأساسي: https://api.clup.life/api/v1 · OpenAPI 3.1.0 · الإصدار 1.0.0

GET /ext/me

GET/ext/me

Who am I? Account, scopes of the key, memberships

المجالات: profile:read

تسري صلاحيات صاحب المفتاح دون تغيير؛ والمنظمات الأجنبية أو غير المرئية تردّ بالرمز 404.

الحالةالمعنى
200Success
401Key invalid, expired or revoked (INVALID_API_KEY)
403Scope missing (INSUFFICIENT_SCOPE), right missing (FORBIDDEN) or Premium required (PREMIUM_REQUIRED)
404Not found — also for organizations the key may not see
429Too many requests (RATE_LIMITED); respect Retry-After
curl -H "Authorization: Bearer clup_k_…" \
  "https://api.clup.life/api/v1/ext/me"

GET /ext/directory/organizations

GET/ext/directory/organizations

Search the club directory (public organizations only)

المجالات: directory:read

تسري صلاحيات صاحب المفتاح دون تغيير؛ والمنظمات الأجنبية أو غير المرئية تردّ بالرمز 404.

الاسمالموقعالالتزامالوصف
cursorالاستعلاممعطّلContinuation from nextCursor of the previous response (no page numbers, no OFFSET)
limitالاستعلاممعطّل1–100, default 30
qالاستعلاممعطّلSearch term (display name; in the directory: name, short name or place)
categoriesالاستعلاممعطّلTopics, separated with |
typesالاستعلاممعطّلCLUB, ASSOCIATION, GROUP, MUNICIPALITY (comma-separated)
stateالاستعلاممعطّلFederal state as a code, e.g. DE-RP (comma-separated)
placeالاستعلاممعطّلTown or postal code
radiusKmالاستعلاممعطّلRadius 1–300 (with place)
ageFromالاستعلاممعطّلOffer for ages from
ageToالاستعلاممعطّلOffer for ages up to
membersMinالاستعلاممعطّلMinimum number of members
membersMaxالاستعلاممعطّلMaximum number of members
foundedFromالاستعلاممعطّلFounded from (year)
foundedToالاستعلاممعطّلFounded up to (year)
acceptingالاستعلاممعطّل1 = accepts new members
sortالاستعلاممعطّلrelevance, distance, name, size or new
الحالةالمعنى
200Success
401Key invalid, expired or revoked (INVALID_API_KEY)
403Scope missing (INSUFFICIENT_SCOPE), right missing (FORBIDDEN) or Premium required (PREMIUM_REQUIRED)
404Not found — also for organizations the key may not see
429Too many requests (RATE_LIMITED); respect Retry-After
curl -H "Authorization: Bearer clup_k_…" \
  "https://api.clup.life/api/v1/ext/directory/organizations"

GET /ext/events

GET/ext/events

Events in a period

المجالات: events:read

تسري صلاحيات صاحب المفتاح دون تغيير؛ والمنظمات الأجنبية أو غير المرئية تردّ بالرمز 404.

الاسمالموقعالالتزامالوصف
fromالاستعلاممفعّلStart of the period (ISO 8601, e.g. 2026-11-01T00:00:00Z)
toالاستعلاممفعّلEnd of the period (at most 400 days after from)
organizationالاستعلاممعطّلOnly events of this organization (slug)
الحالةالمعنى
200Success
401Key invalid, expired or revoked (INVALID_API_KEY)
403Scope missing (INSUFFICIENT_SCOPE), right missing (FORBIDDEN) or Premium required (PREMIUM_REQUIRED)
404Not found — also for organizations the key may not see
429Too many requests (RATE_LIMITED); respect Retry-After
curl -H "Authorization: Bearer clup_k_…" \
  "https://api.clup.life/api/v1/ext/events?from=2026-11-01T00:00:00Z&to=2026-12-01T00:00:00Z"

POST /ext/organizations/{org}/events

POST/ext/organizations/{org}/events

Create an event

المجالات: events:writePremium (مفتاح المنظمة)

تسري صلاحيات صاحب المفتاح دون تغيير؛ والمنظمات الأجنبية أو غير المرئية تردّ بالرمز 404.

الاسمالموقعالالتزامالوصف
orgالمسارمفعّلIdentifier (slug) of the organization
{
  "title": "Sommerfest",
  "startsAt": "2026-07-04T14:00:00Z",
  "endsAt": "2026-07-04T20:00:00Z",
  "visibility": "MEMBERS"
}
الحالةالمعنى
200Success
401Key invalid, expired or revoked (INVALID_API_KEY)
403Scope missing (INSUFFICIENT_SCOPE), right missing (FORBIDDEN) or Premium required (PREMIUM_REQUIRED)
404Not found — also for organizations the key may not see
429Too many requests (RATE_LIMITED); respect Retry-After
curl -X POST -H "Authorization: Bearer clup_k_…" \
  -H "Content-Type: application/json" \
  -d '{"title":"Sommerfest","startsAt":"2026-07-04T14:00:00Z","endsAt":"2026-07-04T20:00:00Z","visibility":"MEMBERS"}' \
  "https://api.clup.life/api/v1/ext/organizations/mein-verein/events"

GET /ext/organizations/{org}/members

GET/ext/organizations/{org}/members

Member list (only if the person’s role shows it)

المجالات: members:read

تسري صلاحيات صاحب المفتاح دون تغيير؛ والمنظمات الأجنبية أو غير المرئية تردّ بالرمز 404.

الاسمالموقعالالتزامالوصف
orgالمسارمفعّلIdentifier (slug) of the organization
cursorالاستعلاممعطّلContinuation from nextCursor of the previous response (no page numbers, no OFFSET)
limitالاستعلاممعطّل1–100, default 30
qالاستعلاممعطّلSearch term (display name; in the directory: name, short name or place)
الحالةالمعنى
200Success
401Key invalid, expired or revoked (INVALID_API_KEY)
403Scope missing (INSUFFICIENT_SCOPE), right missing (FORBIDDEN) or Premium required (PREMIUM_REQUIRED)
404Not found — also for organizations the key may not see
429Too many requests (RATE_LIMITED); respect Retry-After
curl -H "Authorization: Bearer clup_k_…" \
  "https://api.clup.life/api/v1/ext/organizations/mein-verein/members"

GET /ext/organizations/{org}/posts

GET/ext/organizations/{org}/posts

Posts

المجالات: posts:read

تسري صلاحيات صاحب المفتاح دون تغيير؛ والمنظمات الأجنبية أو غير المرئية تردّ بالرمز 404.

الاسمالموقعالالتزامالوصف
orgالمسارمفعّلIdentifier (slug) of the organization
cursorالاستعلاممعطّلContinuation from nextCursor of the previous response (no page numbers, no OFFSET)
limitالاستعلاممعطّل1–100, default 30
الحالةالمعنى
200Success
401Key invalid, expired or revoked (INVALID_API_KEY)
403Scope missing (INSUFFICIENT_SCOPE), right missing (FORBIDDEN) or Premium required (PREMIUM_REQUIRED)
404Not found — also for organizations the key may not see
429Too many requests (RATE_LIMITED); respect Retry-After
curl -H "Authorization: Bearer clup_k_…" \
  "https://api.clup.life/api/v1/ext/organizations/mein-verein/posts"

GET /ext/organizations/{org}/announcements

GET/ext/organizations/{org}/announcements

Announcements

المجالات: announcements:read

تسري صلاحيات صاحب المفتاح دون تغيير؛ والمنظمات الأجنبية أو غير المرئية تردّ بالرمز 404.

الاسمالموقعالالتزامالوصف
orgالمسارمفعّلIdentifier (slug) of the organization
cursorالاستعلاممعطّلContinuation from nextCursor of the previous response (no page numbers, no OFFSET)
limitالاستعلاممعطّل1–100, default 30
الحالةالمعنى
200Success
401Key invalid, expired or revoked (INVALID_API_KEY)
403Scope missing (INSUFFICIENT_SCOPE), right missing (FORBIDDEN) or Premium required (PREMIUM_REQUIRED)
404Not found — also for organizations the key may not see
429Too many requests (RATE_LIMITED); respect Retry-After
curl -H "Authorization: Bearer clup_k_…" \
  "https://api.clup.life/api/v1/ext/organizations/mein-verein/announcements"

POST /ext/organizations/{org}/announcements

POST/ext/organizations/{org}/announcements

Publish an announcement

المجالات: announcements:writePremium (مفتاح المنظمة)

تسري صلاحيات صاحب المفتاح دون تغيير؛ والمنظمات الأجنبية أو غير المرئية تردّ بالرمز 404.

الاسمالموقعالالتزامالوصف
orgالمسارمفعّلIdentifier (slug) of the organization
{
  "title": "Hallenzeiten ändern sich",
  "body": "Ab Montag trainieren wir in der kleinen Halle."
}
الحالةالمعنى
200Success
401Key invalid, expired or revoked (INVALID_API_KEY)
403Scope missing (INSUFFICIENT_SCOPE), right missing (FORBIDDEN) or Premium required (PREMIUM_REQUIRED)
404Not found — also for organizations the key may not see
429Too many requests (RATE_LIMITED); respect Retry-After
curl -X POST -H "Authorization: Bearer clup_k_…" \
  -H "Content-Type: application/json" \
  -d '{"title":"Hallenzeiten ändern sich","body":"Ab Montag trainieren wir in der kleinen Halle."}' \
  "https://api.clup.life/api/v1/ext/organizations/mein-verein/announcements"

GET /ext/organizations/{org}/tasks

GET/ext/organizations/{org}/tasks

Tasks

المجالات: tasks:read

تسري صلاحيات صاحب المفتاح دون تغيير؛ والمنظمات الأجنبية أو غير المرئية تردّ بالرمز 404.

الاسمالموقعالالتزامالوصف
orgالمسارمفعّلIdentifier (slug) of the organization
scopeالاستعلاممعطّلopen (default) or done
cursorالاستعلاممعطّلContinuation from nextCursor of the previous response (no page numbers, no OFFSET)
limitالاستعلاممعطّل1–100, default 30
الحالةالمعنى
200Success
401Key invalid, expired or revoked (INVALID_API_KEY)
403Scope missing (INSUFFICIENT_SCOPE), right missing (FORBIDDEN) or Premium required (PREMIUM_REQUIRED)
404Not found — also for organizations the key may not see
429Too many requests (RATE_LIMITED); respect Retry-After
curl -H "Authorization: Bearer clup_k_…" \
  "https://api.clup.life/api/v1/ext/organizations/mein-verein/tasks"

POST /ext/organizations/{org}/tasks

POST/ext/organizations/{org}/tasks

Create a task

المجالات: tasks:writePremium (مفتاح المنظمة)

تسري صلاحيات صاحب المفتاح دون تغيير؛ والمنظمات الأجنبية أو غير المرئية تردّ بالرمز 404.

الاسمالموقعالالتزامالوصف
orgالمسارمفعّلIdentifier (slug) of the organization
{
  "title": "Zelte prüfen",
  "dueDate": "2026-06-20"
}
الحالةالمعنى
200Success
401Key invalid, expired or revoked (INVALID_API_KEY)
403Scope missing (INSUFFICIENT_SCOPE), right missing (FORBIDDEN) or Premium required (PREMIUM_REQUIRED)
404Not found — also for organizations the key may not see
429Too many requests (RATE_LIMITED); respect Retry-After
curl -X POST -H "Authorization: Bearer clup_k_…" \
  -H "Content-Type: application/json" \
  -d '{"title":"Zelte prüfen","dueDate":"2026-06-20"}' \
  "https://api.clup.life/api/v1/ext/organizations/mein-verein/tasks"

GET /ext/presse/posts

GET/ext/presse/posts

Published press releases and news

المجالات: presse:read

تسري صلاحيات صاحب المفتاح دون تغيير؛ والمنظمات الأجنبية أو غير المرئية تردّ بالرمز 404.

الاسمالموقعالالتزامالوصف
artالاستعلاممعطّلPRESS_RELEASE or NEWS
langالاستعلاممعطّلLanguage code, e.g. de, en (falls back to German)
cursorالاستعلاممعطّلContinuation from nextCursor of the previous response (no page numbers, no OFFSET)
limitالاستعلاممعطّل1–100, default 30
الحالةالمعنى
200Success
401Key invalid, expired or revoked (INVALID_API_KEY)
403Scope missing (INSUFFICIENT_SCOPE), right missing (FORBIDDEN) or Premium required (PREMIUM_REQUIRED)
404Not found — also for organizations the key may not see
429Too many requests (RATE_LIMITED); respect Retry-After
curl -H "Authorization: Bearer clup_k_…" \
  "https://api.clup.life/api/v1/ext/presse/posts"

POST /ext/presse/posts

POST/ext/presse/posts

Create a press release or news item as a draft

المجالات: presse:writePremium (مفتاح المنظمة)

تسري صلاحيات صاحب المفتاح دون تغيير؛ والمنظمات الأجنبية أو غير المرئية تردّ بالرمز 404.

{
  "kind": "NEWS",
  "slug": "neue-funktion",
  "texts": [
    {
      "locale": "de",
      "title": "Neue Funktion",
      "summary": "Kurzer Anreißer der Meldung.",
      "body": "Text in einfachem Markdown."
    }
  ]
}
الحالةالمعنى
200Success
401Key invalid, expired or revoked (INVALID_API_KEY)
403Scope missing (INSUFFICIENT_SCOPE), right missing (FORBIDDEN) or Premium required (PREMIUM_REQUIRED)
404Not found — also for organizations the key may not see
429Too many requests (RATE_LIMITED); respect Retry-After
curl -X POST -H "Authorization: Bearer clup_k_…" \
  -H "Content-Type: application/json" \
  -d '{"kind":"NEWS","slug":"neue-funktion","texts":[{"locale":"de","title":"Neue Funktion","summary":"Kurzer Anreißer der Meldung.","body":"Text in einfachem Markdown."}]}' \
  "https://api.clup.life/api/v1/ext/presse/posts"

GET /ext/presse/posts/{ref}

GET/ext/presse/posts/{ref}

One post by slug (with presse:write also by id, including drafts)

المجالات: presse:read

تسري صلاحيات صاحب المفتاح دون تغيير؛ والمنظمات الأجنبية أو غير المرئية تردّ بالرمز 404.

الاسمالموقعالالتزامالوصف
refالمسارمفعّلSlug or identifier of the post
langالاستعلاممعطّلLanguage code, e.g. de, en (falls back to German)
الحالةالمعنى
200Success
401Key invalid, expired or revoked (INVALID_API_KEY)
403Scope missing (INSUFFICIENT_SCOPE), right missing (FORBIDDEN) or Premium required (PREMIUM_REQUIRED)
404Not found — also for organizations the key may not see
429Too many requests (RATE_LIMITED); respect Retry-After
curl -H "Authorization: Bearer clup_k_…" \
  "https://api.clup.life/api/v1/ext/presse/posts/{ref}"

PUT /ext/presse/posts/{id}

PUT/ext/presse/posts/{id}

Change a post

المجالات: presse:writePremium (مفتاح المنظمة)

تسري صلاحيات صاحب المفتاح دون تغيير؛ والمنظمات الأجنبية أو غير المرئية تردّ بالرمز 404.

الاسمالموقعالالتزامالوصف
idالمسارمفعّلIdentifier of the post
{
  "kind": "NEWS",
  "slug": "neue-funktion",
  "texts": [
    {
      "locale": "de",
      "title": "Neue Funktion",
      "summary": "Kurzer Anreißer der Meldung.",
      "body": "Geänderter Text."
    }
  ]
}
الحالةالمعنى
200Success
401Key invalid, expired or revoked (INVALID_API_KEY)
403Scope missing (INSUFFICIENT_SCOPE), right missing (FORBIDDEN) or Premium required (PREMIUM_REQUIRED)
404Not found — also for organizations the key may not see
429Too many requests (RATE_LIMITED); respect Retry-After
curl -H "Authorization: Bearer clup_k_…" \
  -H "Content-Type: application/json" \
  -d '{"kind":"NEWS","slug":"neue-funktion","texts":[{"locale":"de","title":"Neue Funktion","summary":"Kurzer Anreißer der Meldung.","body":"Geänderter Text."}]}' \
  "https://api.clup.life/api/v1/ext/presse/posts/{id}"

POST /ext/presse/posts/{id}/publish

POST/ext/presse/posts/{id}/publish

Publish a post now

المجالات: presse:writePremium (مفتاح المنظمة)

تسري صلاحيات صاحب المفتاح دون تغيير؛ والمنظمات الأجنبية أو غير المرئية تردّ بالرمز 404.

الاسمالموقعالالتزامالوصف
idالمسارمفعّلIdentifier of the post
الحالةالمعنى
200Success
401Key invalid, expired or revoked (INVALID_API_KEY)
403Scope missing (INSUFFICIENT_SCOPE), right missing (FORBIDDEN) or Premium required (PREMIUM_REQUIRED)
404Not found — also for organizations the key may not see
429Too many requests (RATE_LIMITED); respect Retry-After
curl -X POST -H "Authorization: Bearer clup_k_…" \
  "https://api.clup.life/api/v1/ext/presse/posts/{id}/publish"

POST /ext/presse/posts/{id}/schedule

POST/ext/presse/posts/{id}/schedule

Schedule publication

المجالات: presse:writePremium (مفتاح المنظمة)

تسري صلاحيات صاحب المفتاح دون تغيير؛ والمنظمات الأجنبية أو غير المرئية تردّ بالرمز 404.

الاسمالموقعالالتزامالوصف
idالمسارمفعّلIdentifier of the post
{
  "publishAt": "2026-11-01T08:00:00Z"
}
الحالةالمعنى
200Success
401Key invalid, expired or revoked (INVALID_API_KEY)
403Scope missing (INSUFFICIENT_SCOPE), right missing (FORBIDDEN) or Premium required (PREMIUM_REQUIRED)
404Not found — also for organizations the key may not see
429Too many requests (RATE_LIMITED); respect Retry-After
curl -X POST -H "Authorization: Bearer clup_k_…" \
  -H "Content-Type: application/json" \
  -d '{"publishAt":"2026-11-01T08:00:00Z"}' \
  "https://api.clup.life/api/v1/ext/presse/posts/{id}/schedule"

GET /ext/exports/events.ics

GET/ext/exports/events.ics

Events as iCal

المجالات: exports:read

تسري صلاحيات صاحب المفتاح دون تغيير؛ والمنظمات الأجنبية أو غير المرئية تردّ بالرمز 404.

الاسمالموقعالالتزامالوصف
fromالاستعلاممفعّلStart of the period (ISO 8601, e.g. 2026-11-01T00:00:00Z)
toالاستعلاممفعّلEnd of the period (at most 400 days after from)
organizationالاستعلاممعطّلOnly events of this organization (slug)
الحالةالمعنى
200 (text/calendar)Success
401Key invalid, expired or revoked (INVALID_API_KEY)
403Scope missing (INSUFFICIENT_SCOPE), right missing (FORBIDDEN) or Premium required (PREMIUM_REQUIRED)
404Not found — also for organizations the key may not see
429Too many requests (RATE_LIMITED); respect Retry-After
curl -H "Authorization: Bearer clup_k_…" \
  "https://api.clup.life/api/v1/ext/exports/events.ics?from=2026-11-01T00:00:00Z&to=2026-12-01T00:00:00Z"

GET /ext/exports/events.csv

GET/ext/exports/events.csv

Events as CSV

المجالات: exports:read

تسري صلاحيات صاحب المفتاح دون تغيير؛ والمنظمات الأجنبية أو غير المرئية تردّ بالرمز 404.

الاسمالموقعالالتزامالوصف
fromالاستعلاممفعّلStart of the period (ISO 8601, e.g. 2026-11-01T00:00:00Z)
toالاستعلاممفعّلEnd of the period (at most 400 days after from)
organizationالاستعلاممعطّلOnly events of this organization (slug)
الحالةالمعنى
200 (text/csv)Success
401Key invalid, expired or revoked (INVALID_API_KEY)
403Scope missing (INSUFFICIENT_SCOPE), right missing (FORBIDDEN) or Premium required (PREMIUM_REQUIRED)
404Not found — also for organizations the key may not see
429Too many requests (RATE_LIMITED); respect Retry-After
curl -H "Authorization: Bearer clup_k_…" \
  "https://api.clup.life/api/v1/ext/exports/events.csv?from=2026-11-01T00:00:00Z&to=2026-12-01T00:00:00Z"

GET /ext/exports/organizations/{org}/members.csv

GET/ext/exports/organizations/{org}/members.csv

Member list as CSV (leadership only, logged)

المجالات: exports:read, members:read

تسري صلاحيات صاحب المفتاح دون تغيير؛ والمنظمات الأجنبية أو غير المرئية تردّ بالرمز 404.

الاسمالموقعالالتزامالوصف
orgالمسارمفعّلIdentifier (slug) of the organization
الحالةالمعنى
200 (text/csv)Success
401Key invalid, expired or revoked (INVALID_API_KEY)
403Scope missing (INSUFFICIENT_SCOPE), right missing (FORBIDDEN) or Premium required (PREMIUM_REQUIRED)
404Not found — also for organizations the key may not see
429Too many requests (RATE_LIMITED); respect Retry-After
curl -H "Authorization: Bearer clup_k_…" \
  "https://api.clup.life/api/v1/ext/exports/organizations/mein-verein/members.csv"
API reference · CLUP.life