API · v1 · stabil
CODEMETA OSDeveloper Center
Konsole öffnen
Entity · course_shares

Course Share Schema

Schema-ID
course_share
Collection
course_shares
Permissions
  • Lesencourse_share_view
  • Anlegencourse_share_create
  • Änderncourse_share_edit
  • Löschencourse_share_delete
Beziehungen

Felder

Course Share Schema

course_shares4 Permissions

Cross-tenant sharing configuration for an academy course

courseIduuiderforderlich→ course

Reference to a course in the sharing (MSP) tenant

recipientTypestringerforderlich

Type of recipient. Phase 1 of ADR 0066b only implements TENANT; TEAM/USER reserved.

TENANTTEAMUSER
recipientIduuiderforderlich

ID of the recipient tenant (or team/user in future phases)

pricingSnapshotobjectoptional

Frozen pricing terms at the time of the share. Phase 1 stores the values; actual charging happens in Phase 2 (course_charges).

Default: {}
modestringoptional

Pricing mode. Phase 1 supports free + fixed_per_seat.

freefixed_per_seat
Default: "free"
amountCentsintegeroptional

Charge per enrollment in EUR cents (gross).

≥ 0Default: 0
currencystringoptional
Default: "EUR"
taxRatePercentnumberoptional
0 – 100Default: 19
chargingModestringoptional

wholesale: charge is bundled into the customer-tenant wholesale invoice (Phase 2). direct_stripe: customer pays in real-time via Stripe Connect on the MSP account (Phase 3).

wholesaledirect_stripe
Default: "wholesale"
publishToPublicCatalogbooleanoptional

If true, the course is listed on the MSP public catalog at /academy/:mspSlug. Anonymous users can browse and self-register via email-token flow.

Default: false
maxEnrollmentsintegeroptional

Optional cap on total enrollments via this share. Null = unlimited.

≥ 1Default: nullnullable
enrollmentDeadlinedatetimeoptional

Optional ISO date-time after which no further enrollments are allowed.

Default: nullnullable
allowSelfEnrollmentbooleanoptional

If true, customer-tenant users can self-enroll; if false, only a customer-tenant manager may enroll others.

Default: true
requireManagerApprovalbooleanoptional

If true, self-enrollments are pending until a customer-tenant manager approves them.

Default: false
shareSettingsobjectoptional

Per-share rendering and branding tweaks

Default: {}
showMspBrandingbooleanoptional

Show the MSP-tenant logo on certificates and course pages.

Default: true
statusstringoptional

Share lifecycle. Auto-paused when either tenant loses the required academy module.

activepausedrevoked
Default: "active"
createdByuuidoptional

User ID (in source tenant) who created the share.

read-only
updatedBystringoptional

User ID who last updated the share.

Patternread-onlynullable

Standard-Endpoints

Diese Resource folgt dem generischen CRUD-Vertrag der Plattform. Lesen Sie die Konventionen für Pagination, Idempotenz, Optimistic Locking und Audit. Die wichtigsten Endpoints:

  • GET /api/v1/course_shares — Liste, paginiert + filterbar
  • GET /api/v1/course_shares/<id> — Einzelne Entity
  • POST /api/v1/course_shares — Anlegen
  • PATCH /api/v1/course_shares/<id> — Teil-Update
  • DELETE /api/v1/course_shares/<id> — Soft-Delete
  • GET /api/v1/course_shares/<id>/timeline — Audit + Aktivitäten

Suche