API reference
Memberships
/subjects
A membership is what events are about. People are linked to memberships through /links. In the Political party pack a membership is, for example, “Musu's Membership” with reference MEM-2026-001.
GET/subjectsList · ?q ?external_refPOST/subjectsCreateGET/subjects/{subject_id}ReadPATCH/subjects/{subject_id}Update · attributes replaced wholeshown →POST/subjects/{subject_id}/deactivateDeactivate · no delete
PATCHUpdate a membership
Requires subjects:write. Send only the fields you are changing — except attributes, which is replaced whole. To change one attribute, send them all.
Path parameters
subject_iduuid · required
The membership id.
Body parameters
display_namestring · optional
external_refstring · optional · max 200
Changed here, never emptied: blank leaves the one on file alone.
attributesobject · optionalVaries by pack
Generated from the Political party pack's subject_schema. PATCH replaces the whole object; it does not merge.
KeyLabelKindAllowed valuesRequired
wingWingchoiceYouth · SeniorNo
levelLevelchoiceExecutive · Junior · EntryNo
branchBranchtext—No
standingStandingchoiceMember · SupporterNo
engagementEngagementchoiceActive · PassiveNo
Returns
200 with the updated membership. 400 if attributes contains an unknown key.
Response body
One membership: the same fields in every pack. Press Response on the sample to see one whole.
FieldTypeDescription
iduuid
tenant_iduuidThe instance.
external_refstring | nullYour own id, as you sent it.
display_namestring
attributesobjectShaped by the Political party pack's subject_schema.Varies by pack
statusactive | inactive
created_atdatetime
updated_atdatetime
On failure the body is { error, code } instead.