# Orgo Documentation ## Docs - [Create an adhesion](https://orgo.space/docs/api-reference/adhesion/create-an-adhesion.md): Creates a new adhesion application in draft (NEW) status. Members can create their own; HR staff with HR_LOCAL permission can create on behalf of another user by passing a userId. - [Download adhesion as PDF](https://orgo.space/docs/api-reference/adhesion/download-adhesion-as-pdf.md): Generates and returns a PDF document of the adhesion application form. - [Get an adhesion](https://orgo.space/docs/api-reference/adhesion/get-an-adhesion.md): Returns full details of an adhesion application including personal data, identity documents, interview notes, and current status. Access restricted to the applicant, HR staff, and parent local center admins. - [List adhesions](https://orgo.space/docs/api-reference/adhesion/list-adhesions.md): Returns a paginated list of adhesion applications. Filterable by status, user, and local center. Results are automatically scoped to the current user permissions. - [Send adhesion for review](https://orgo.space/docs/api-reference/adhesion/send-adhesion-for-review.md): Submits the adhesion application for HR review. Transitions status from NEW to PENDING. Requires both a signed document and an ID document to be uploaded. If submitted by the member (not HR), an email notification is sent to the responsible admin. - [Update adhesion data](https://orgo.space/docs/api-reference/adhesion/update-adhesion-data.md): Updates the personal and professional information on a draft adhesion. Only available while the adhesion is in NEW status. Clears any previously uploaded media. - [Update adhesion interview details](https://orgo.space/docs/api-reference/adhesion/update-adhesion-interview-details.md): Records or updates interview notes and details for an adhesion. Cannot be edited once the adhesion reaches a final status (REJECTED, SUCCESS). - [Update adhesion status](https://orgo.space/docs/api-reference/adhesion/update-adhesion-status.md): Transitions the adhesion to a new status. Valid statuses: NEW, VALIDATED, INTERVIEWED, REJECTED, SUCCESS. Each transition triggers specific side effects — VALIDATED sends a confirmation email, REJECTED sends a rejection email, SUCCESS assigns the member role and activates the membership. Resetting t… - [Upload adhesion video recording](https://orgo.space/docs/api-reference/adhesion/upload-adhesion-video-recording.md): Uploads a video recording for the adhesion application. Replaces any previously uploaded video. The video is recorded by the applicant answering predefined questions. - [Upload ID document for adhesion](https://orgo.space/docs/api-reference/adhesion/upload-id-document-for-adhesion.md): Uploads an identity document (ID card, passport) for the applicant. Creates or updates the user identity record and triggers OCR extraction of personal data. Required before the adhesion can be submitted. - [Upload signed adhesion document](https://orgo.space/docs/api-reference/adhesion/upload-signed-adhesion-document.md): Uploads the signed adhesion form as a file attachment. Replaces any previously uploaded signed document. Required before the adhesion can be submitted for review. - [Create a badge](https://orgo.space/docs/api-reference/badge/create-a-badge.md): Creates a new badge definition. Requires ADMIN_TENANT role. Badges can be hours-based (auto-awarded when a user logs enough hours) or manually assigned. - [Delete a badge](https://orgo.space/docs/api-reference/badge/delete-a-badge.md): Permanently deletes a badge definition. Requires tenant admin permission. Existing badge assignments may be affected. - [Get a badge](https://orgo.space/docs/api-reference/badge/get-a-badge.md): Retrieves a single badge by ID. Requires tenant admin permission. - [List badges](https://orgo.space/docs/api-reference/badge/list-badges.md): Returns all badges for the current tenant. Paginated with up to 1000 items per page. - [Update a badge](https://orgo.space/docs/api-reference/badge/update-a-badge.md): Updates badge properties such as name, description, hours threshold, or image. Requires tenant admin permission. - [Delete a badge hour entry](https://orgo.space/docs/api-reference/badgehour/delete-a-badge-hour-entry.md): Removes a badge hour log entry. Requires HR_ASSISTANT_LOCAL or HR_ASSISTANT_TENANT permission on the target user. The entry owner can also delete their own entries. - [Get a badge hour entry](https://orgo.space/docs/api-reference/badgehour/get-a-badge-hour-entry.md): Retrieves a single badge hour log entry by ID, showing the user, number of hours, and related badge context. - [List badge hours](https://orgo.space/docs/api-reference/badgehour/list-badge-hours.md): Returns all badge hour log entries for the current tenant. Each record represents hours contributed by a user toward earning hours-based badges. - [Log badge hours](https://orgo.space/docs/api-reference/badgehour/log-badge-hours.md): Records hours for a user toward badge completion. Sets the current user as the entry owner. Automatically recalculates the user total hours and awards any hours-based badges whose threshold is now met. Requires HR_ASSISTANT_LOCAL or HR_ASSISTANT_TENANT permission on the target user. - [Update a badge hour entry](https://orgo.space/docs/api-reference/badgehour/update-a-badge-hour-entry.md): Updates an existing badge hour log entry. Automatically recalculates the user total hours and awards any hours-based badges whose threshold is now met. Requires HR_ASSISTANT_LOCAL or HR_ASSISTANT_TENANT permission on the target user. - [Create a badge type](https://orgo.space/docs/api-reference/badgetype/create-a-badge-type.md): Creates a new badge type (category) for organizing badges. Requires ADMIN_TENANT role. - [Delete a badge type](https://orgo.space/docs/api-reference/badgetype/delete-a-badge-type.md): Permanently deletes a badge type (category). Requires tenant admin permission. Badges associated with this type may be affected. - [Get a badge type](https://orgo.space/docs/api-reference/badgetype/get-a-badge-type.md): Retrieves a single badge type (category) by ID. Requires tenant admin permission. - [List badge types](https://orgo.space/docs/api-reference/badgetype/list-badge-types.md): Returns all badge types (categories) for the current tenant. Paginated with up to 1000 items per page. - [Update a badge type](https://orgo.space/docs/api-reference/badgetype/update-a-badge-type.md): Updates a badge type (category) name or properties. Requires tenant admin permission. - [Assign a badge to a user](https://orgo.space/docs/api-reference/badgeuser/assign-a-badge-to-a-user.md): Manually assigns a badge to a user. Sets the current user as the assignment owner. Requires HR_ASSISTANT_LOCAL permission on the target user, or HR_ASSISTANT_TENANT permission. Validates that the badge belongs to the same tenant. - [Get a badge assignment](https://orgo.space/docs/api-reference/badgeuser/get-a-badge-assignment.md): Retrieves a single badge assignment record by ID, showing which user holds which badge and when it was awarded. - [List badge assignments](https://orgo.space/docs/api-reference/badgeuser/list-badge-assignments.md): Returns all badge-to-user assignments for the current tenant. Each record links a user to a badge they have earned or been awarded. - [Remove a badge from a user](https://orgo.space/docs/api-reference/badgeuser/remove-a-badge-from-a-user.md): Removes a badge assignment from a user. Requires HR_ASSISTANT_LOCAL permission on the target user, or HR_ASSISTANT_TENANT permission. The assignment owner can also remove their own assignments. - [Update a badge assignment](https://orgo.space/docs/api-reference/badgeuser/update-a-badge-assignment.md): Updates properties of an existing badge assignment. Requires HR_ASSISTANT_LOCAL permission on the target user, or HR_ASSISTANT_TENANT permission. The assignment owner can also edit their own assignments. - [Add member to bundle](https://orgo.space/docs/api-reference/bundlemember/add-member-to-bundle.md): Adds a user to a fee bundle by email address. Requires the request body to contain an "email" field. The target user must exist in the same tenant and not already belong to another bundle. The slot must be empty. Creates a product payment record cloned from the bundle coordinator last paid period an… - [Remove member from bundle](https://orgo.space/docs/api-reference/bundlemember/remove-member-from-bundle.md): Removes the current member from a bundle slot. Deletes all product payment records for the member associated with their bundle product price and resets their fee validity date to null. Only the bundle coordinator or a tenant admin can perform this action. - [Create a certification](https://orgo.space/docs/api-reference/certification/create-a-certification.md): Creates a new certification record on the authenticated user profile. The user is automatically set to the current authenticated user. - [Delete a certification](https://orgo.space/docs/api-reference/certification/delete-a-certification.md): Permanently deletes a certification record from the user profile. Only the certification owner can perform this action. - [Get a certification](https://orgo.space/docs/api-reference/certification/get-a-certification.md): Retrieves a single certification record by ID. Certifications represent professional credentials or qualifications on a user profile. - [List certifications](https://orgo.space/docs/api-reference/certification/list-certifications.md): Returns certifications filtered by the required "user" query parameter. The user parameter must be provided or access is denied. - [Update a certification](https://orgo.space/docs/api-reference/certification/update-a-certification.md): Updates a certification record. Only the certification owner can perform this action. - [Add member to company](https://orgo.space/docs/api-reference/company/add-member-to-company.md): Adds an existing user or contact as a member of the company. Provide either "userId" or "contactId" in the request body, along with an optional "role" (defaults to MEMBER). The user/contact must belong to the same tenant. - [Create a company](https://orgo.space/docs/api-reference/company/create-a-company.md): Creates a new company and adds the current user as primary contact. Requires the company feature to be enabled on the tenant. Tenant settings control whether all users or only admins can create companies. Non-admin users cannot create a company if they already belong to one. - [Create company bank transfer invoice](https://orgo.space/docs/api-reference/company/create-company-bank-transfer-invoice.md): Generates an unpaid invoice for company membership payment via bank transfer. Requires bank transfer and invoice features to be enabled on the tenant. Validates billing info (name, address) and checks for existing pending invoices. Sends the invoice by email. Requires COMPANY_MANAGE_PAYMENTS permiss… - [Delete a company](https://orgo.space/docs/api-reference/company/delete-a-company.md): Permanently deletes a company and all associated memberships. Restricted to tenant administrators only. - [Get a company](https://orgo.space/docs/api-reference/company/get-a-company.md): Retrieves a single company by ID. Requires COMPANY_VIEW permission on the company or tenant admin role. - [Get company payment checkout](https://orgo.space/docs/api-reference/company/get-company-payment-checkout.md): Creates a Stripe checkout session for the company membership fee. The company must have a membership plan selected. Returns a checkout session URL for redirect. Requires COMPANY_MANAGE_PAYMENTS permission or tenant admin role. - [Get company status counts](https://orgo.space/docs/api-reference/company/get-company-status-counts.md): Returns a breakdown of company counts grouped by status for the current tenant. Supports an optional "name" query parameter to filter counts by company name. - [Get my company](https://orgo.space/docs/api-reference/company/get-my-company.md): Returns the company the current user belongs to, along with their role in that company. Returns 204 No Content if the user is not a member of any company or if the company has been deleted. - [Leave a company](https://orgo.space/docs/api-reference/company/leave-a-company.md): Removes the current user from the company. If the user is the last remaining member, the company is soft-deleted (status set to DELETED) and the user membership is reset. Returns "companyDeleted" flag in the response. Requires active company membership. - [List companies](https://orgo.space/docs/api-reference/company/list-companies.md): Returns a paginated list of companies within the current tenant, ordered by name. Supports standard API Platform filters for status, name, and other fields. - [List company invitations](https://orgo.space/docs/api-reference/company/list-company-invitations.md): Returns all invitations for the specified company, including pending, accepted, declined, and revoked. Sensitive fields (hash, message) are excluded from the response. Requires COMPANY_MANAGE_INVITATIONS permission or tenant admin role. - [Remove member from company](https://orgo.space/docs/api-reference/company/remove-member-from-company.md): Removes a user from the company membership. Requires COMPANY_MANAGE_MEMBERS permission or tenant admin role. The user must be an active member of the company. - [Resend company invitation](https://orgo.space/docs/api-reference/company/resend-company-invitation.md): Resends the invitation email and resets the expiration date. The invitation must belong to the specified company. Requires COMPANY_MANAGE_INVITATIONS permission or tenant admin role. No request body needed. - [Revoke company invitation](https://orgo.space/docs/api-reference/company/revoke-company-invitation.md): Revokes a pending invitation, preventing the recipient from accepting it. The invitation must belong to the specified company. Requires COMPANY_MANAGE_INVITATIONS permission or tenant admin role. - [Send company invitation](https://orgo.space/docs/api-reference/company/send-company-invitation.md): Sends an email invitation to join the company. Requires "email", "firstName", and "lastName" in the request body. Optionally include "roles" (array) or legacy "role" (string) and a personal "message". Sends a branded invitation email with an accept/decline link. Requires COMPANY_MANAGE_INVITATIONS p… - [Set company member role](https://orgo.space/docs/api-reference/company/set-company-member-role.md): Toggles a role on a company member (adds if not present, removes if present). Requires the caller to be the company primary contact or a tenant admin. The member must have an active (non-ended) membership. Send "role" in the request body. - [Set member join date](https://orgo.space/docs/api-reference/company/set-member-join-date.md): Updates the join date for a company member (user or contact). Send "dateJoined" (ISO 8601) and optionally "memberType" ("user" or "contact", defaults to "user") in the request body. Requires COMPANY_MANAGE_MEMBERS permission or tenant admin role. - [Update a company](https://orgo.space/docs/api-reference/company/update-a-company.md): Updates company details such as name, address, VAT number, and contact information. Requires COMPANY_EDIT permission or tenant admin role. - [Accept company invitation](https://orgo.space/docs/api-reference/companyinvitation/accept-company-invitation.md): Public endpoint that accepts a company invitation by hash. If the invited email matches an existing user, adds them to the company and sends a login OTP. If no user exists, creates a new account with the invitation details and sends a login OTP. Rate-limited to prevent abuse. Returns tempToken for O… - [Decline company invitation](https://orgo.space/docs/api-reference/companyinvitation/decline-company-invitation.md): Declines a company invitation by hash. Marks the invitation as declined so it can no longer be accepted. Requires an authenticated user. No request body needed. - [Get a company invitation](https://orgo.space/docs/api-reference/companyinvitation/get-a-company-invitation.md): Retrieves a company invitation by its internal ID. Requires an authenticated user. - [Get public invitation by hash](https://orgo.space/docs/api-reference/companyinvitation/get-public-invitation-by-hash.md): Public endpoint (no auth required) that retrieves invitation details by its unique hash link. Returns company name, logo, inviter name, personal message, assigned roles, expiration date, and validity status. Used for the invitation landing page. - [Get a company user](https://orgo.space/docs/api-reference/companyuser/get-a-company-user.md): Retrieves a single company-user membership record, including the user details, roles, and join date. Requires COMPANY_VIEW permission on the parent company or tenant admin role. - [List company users](https://orgo.space/docs/api-reference/companyuser/list-company-users.md): Returns a paginated list of company memberships within the current tenant. Filter by company, user, or role using standard API Platform filters. Results include nested user/contact details with max depth support. - [Bulk delete contacts](https://orgo.space/docs/api-reference/contact/bulk-delete-contacts.md): Deletes multiple contacts in a single request. Expects a JSON body with a "contacts" array of contact IDs. Skips contacts that have successful product payments and returns a summary with deleted and skipped counts. Enforces tenant isolation on each contact. Requires HR_LOCAL or FINANCIAL_LOCAL permi… - [Create a contact](https://orgo.space/docs/api-reference/contact/create-a-contact.md): Creates a new contact record. If an email is provided, checks for duplicates against both contacts and existing user accounts, returning HTTP 409 if a conflict is found. Sets the source to MANUAL and persists any custom field values from the request. Requires HR_LOCAL or FINANCIAL_LOCAL permission. - [Delete a contact](https://orgo.space/docs/api-reference/contact/delete-a-contact.md): Permanently deletes a contact. Blocked if the contact has any successful product payments attached. Requires HR_LOCAL or FINANCIAL_LOCAL permission scoped to the contact local center. - [Export contacts as CSV](https://orgo.space/docs/api-reference/contact/export-contacts-as-csv.md): Exports contacts in CSV format. Requires HR_TENANT permission, or HR_LOCAL with a localCenter filter parameter. Creates an audit log entry recording the export action and request URI. Returns up to 500 records per page. - [Get a contact](https://orgo.space/docs/api-reference/contact/get-a-contact.md): Retrieves a single contact by ID. Requires HR_LOCAL or FINANCIAL_LOCAL permission scoped to the contact local center. - [Get contact newsletter statistics](https://orgo.space/docs/api-reference/contact/get-contact-newsletter-statistics.md): Returns aggregated newsletter subscription statistics for the current tenant, including counts of subscribed, unsubscribed, not-selected, and total contacts. Requires HR_LOCAL or FINANCIAL_LOCAL permission. Pagination is disabled; returns a single JSON object. - [Get contact status statistics](https://orgo.space/docs/api-reference/contact/get-contact-status-statistics.md): Returns aggregated contact status statistics for the current tenant, showing how many contacts are in each status. Requires HR_LOCAL or FINANCIAL_LOCAL permission. Pagination is disabled; returns a single JSON object. - [List contacts](https://orgo.space/docs/api-reference/contact/list-contacts.md): Returns a paginated list of contacts for the current tenant. Requires HR_LOCAL or FINANCIAL_LOCAL permission. Contacts are non-member records used for CRM and outreach purposes. Response is intentionally lean — call `GET /contacts/{id}` for full contact details. - [Unsubscribe contact from newsletter](https://orgo.space/docs/api-reference/contact/unsubscribe-contact-from-newsletter.md): Sets the contact newsletter subscription flag to false. Creates an audit log entry recording the unsubscription. Requires HR_TENANT permission. - [Update a contact](https://orgo.space/docs/api-reference/contact/update-a-contact.md): Updates contact fields and persists any custom field values from the request. Requires HR_LOCAL or FINANCIAL_LOCAL permission scoped to the contact local center. - [Clone a contract](https://orgo.space/docs/api-reference/contract/clone-a-contract.md): Creates a duplicate of an existing contract template with a new hash and "Copy " prefix on the name. The cloned contract is persisted immediately. Requires HR_TENANT permission. - [Create a contract](https://orgo.space/docs/api-reference/contract/create-a-contract.md): Creates a new contract template. Sets the tenant from the authenticated user and validates signature settings (e.g., whether digital signatures are required). Requires ADMIN_TENANT permission. - [Delete a contract](https://orgo.space/docs/api-reference/contract/delete-a-contract.md): Permanently deletes a contract template. Blocked if any contract users have signed (locked) instances of this contract. Requires HR_TENANT permission. - [Get a contract](https://orgo.space/docs/api-reference/contract/get-a-contract.md): Retrieves a single contract template by ID, including its content, signature settings, and associated unit. - [List contracts](https://orgo.space/docs/api-reference/contract/list-contracts.md): Returns all contract templates for the current tenant, ordered by creation date descending. Paginated with up to 500 items per page. - [List my contracts](https://orgo.space/docs/api-reference/contract/list-my-contracts.md): Returns contracts relevant to the authenticated user. Includes contracts marked as displayInProfile that belong to the user groups, plus contracts the user has already signed. Duplicates are removed. Useful for the user profile contract section. - [Request contract re-signing](https://orgo.space/docs/api-reference/contract/request-contract-re-signing.md): Regenerates the contract hash and cancels all existing unsigned contract-user instances by marking them with the current admin as canceledBy and setting the cancellation date. This forces all assigned users to re-sign the updated contract. Requires ADMIN_TENANT permission and tenant isolation is enf… - [Update a contract](https://orgo.space/docs/api-reference/contract/update-a-contract.md): Updates contract template properties such as name, content, signature settings, or unit assignment. Requires HR_TENANT permission. - [Apply default signature to contract](https://orgo.space/docs/api-reference/contractuser/apply-default-signature-to-contract.md): Applies the contract default (admin) signature to a contract-user instance. Validates that a default signature exists and that the admin has not already signed. Sets the admin signature, locks the contract, records the signature date, generates a signed PDF document uploaded to S3, generates a contr… - [Create a contract user](https://orgo.space/docs/api-reference/contractuser/create-a-contract-user.md): Assigns a contract to a user or contact. Requires either a user or contact reference and a contract reference. Validates tenant isolation across all linked entities. Populates the placeholder map from the contract template and resolves custom field and placeholder values. HR_LOCAL or HR_TENANT permi… - [Create contract user as admin](https://orgo.space/docs/api-reference/contractuser/create-contract-user-as-admin.md): Admin endpoint for assigning a contract to a user or contact with extended write permissions. Uses the contract_user_admin_write serialization group which allows setting additional fields. Requires HR_TENANT permission. - [Delete a contract user](https://orgo.space/docs/api-reference/contractuser/delete-a-contract-user.md): Permanently deletes a contract-user record. Only the assigned user or an HR_TENANT admin can perform this action. - [Edit contract user as admin](https://orgo.space/docs/api-reference/contractuser/edit-contract-user-as-admin.md): Admin endpoint for editing a contract-user record with extended write permissions. Uses the contract_user_admin_write serialization group. Requires HR_TENANT permission. - [Get a contract user](https://orgo.space/docs/api-reference/contractuser/get-a-contract-user.md): Retrieves a single contract-user record by ID. A contract user represents an individual instance of a contract assigned to a specific user or contact, including signature status, placeholder values, and validity dates. - [List contract users](https://orgo.space/docs/api-reference/contractuser/list-contract-users.md): Returns all contract-user records for the current tenant, ordered by ID descending. Paginated with 30 items per page. - [Mark contract users as signed](https://orgo.space/docs/api-reference/contractuser/mark-contract-users-as-signed.md): Manually marks a contract-user as fully signed without requiring actual signatures. Sets status to COMPLETE, locks the record, uses the validity start date as the signature date, and records the admin who performed the action. Validates that end date is after start date and enforces tenant isolation… - [Sign membership contract in advance](https://orgo.space/docs/api-reference/contractuser/sign-membership-contract-in-advance.md): Creates or retrieves an unsigned contract-user instance for the tenant membership contract. Looks up the membership contract ID from the tenant fee settings. If an unsigned instance already exists for the user, returns it instead of creating a duplicate. The actual signature and date calculation hap… - [Update a contract user](https://orgo.space/docs/api-reference/contractuser/update-a-contract-user.md): Updates a contract-user record. Sanitizes the placeholder map and populates the associated user or contact entity with custom field and placeholder values. Only the assigned user or an HR_TENANT admin can perform this action. - [Get a country](https://orgo.space/docs/api-reference/country/get-a-country.md): Retrieves a single country by ID. Returns the country name, code, and other reference data. - [List countries](https://orgo.space/docs/api-reference/country/list-countries.md): Returns all countries ordered by name ascending. Paginated with up to 1000 items per page. This is static reference data shared across all tenants. - [Get a county](https://orgo.space/docs/api-reference/county/get-a-county.md): Retrieves a single county by ID. Returns the county name and associated country reference. - [List counties](https://orgo.space/docs/api-reference/county/list-counties.md): Returns all counties (administrative subdivisions of a country). This is static reference data typically used for address forms and geographic filtering. - [Create a course](https://orgo.space/docs/api-reference/course/create-a-course.md): Creates a new course and sets the current user as creator. Updates tenant onboarding settings if applicable. Requires HR_TENANT permission. - [Delete a course](https://orgo.space/docs/api-reference/course/delete-a-course.md): Permanently deletes a course. Fails with 400 if the course has any existing enrollments. Requires HR_TENANT permission. - [Get a course](https://orgo.space/docs/api-reference/course/get-a-course.md): Returns full course details including sections, lessons, and enrollment info. HR_TENANT users can view all courses; other users can only access published courses available for their user type. Draft courses return 404 for non-admin users. - [List courses](https://orgo.space/docs/api-reference/course/list-courses.md): Returns a paginated list of courses. Supports search, ordering, and date filters. Tenant isolation is enforced automatically via Doctrine extensions. - [Update a course](https://orgo.space/docs/api-reference/course/update-a-course.md): Updates course properties such as title, description, status, or user type restrictions. Also updates tenant onboarding settings if applicable. Requires HR_TENANT permission. - [Delete a course enrollment](https://orgo.space/docs/api-reference/courseenrollment/delete-a-course-enrollment.md): Removes a course enrollment record. The enrolled user can unenroll themselves, or an HR_TENANT administrator can remove any enrollment. - [Enroll in a course](https://orgo.space/docs/api-reference/courseenrollment/enroll-in-a-course.md): Self-enrolls the current user in a course. Provide the course reference in the request body. - [Enroll student with notification](https://orgo.space/docs/api-reference/courseenrollment/enroll-student-with-notification.md): Admin-enrolls a user in a course and optionally sends a notification email. Pass notify: true in the request body to trigger the enrollment email. Prevents duplicate enrollments. Requires HR_TENANT permission. - [Export student enrollments as CSV](https://orgo.space/docs/api-reference/courseenrollment/export-student-enrollments-as-csv.md): Downloads a CSV file with enrollment data including student name, email, enrolled date, last accessed, progress percentage, status, and completion date. Requires course query parameter and optionally accepts status filter. Requires HR_TENANT permission. - [Get a course enrollment](https://orgo.space/docs/api-reference/courseenrollment/get-a-course-enrollment.md): Returns enrollment details including progress percentage, status, last accessed date, and completion date. Accessible by the enrolled user or HR_TENANT administrators. - [Get user enrollment for a course](https://orgo.space/docs/api-reference/courseenrollment/get-user-enrollment-for-a-course.md): Returns the enrollment record for the current user in a specific course. Filter by course to check enrollment status. Returns a lightweight response with course enrollment details. - [List course enrollments](https://orgo.space/docs/api-reference/courseenrollment/list-course-enrollments.md): Returns a paginated list of all course enrollments for the current tenant, ordered by enrollment date descending. Used by administrators for managing student lists. - [List my course enrollments](https://orgo.space/docs/api-reference/courseenrollment/list-my-course-enrollments.md): Returns a lightweight list of the current user's course enrollments with minimal course data. Used for the "My Courses" dashboard section. - [List user course enrollments](https://orgo.space/docs/api-reference/courseenrollment/list-user-course-enrollments.md): Returns all course enrollments for the current user, including course details and progress data. Used for the user profile courses tab. - [Update a course enrollment](https://orgo.space/docs/api-reference/courseenrollment/update-a-course-enrollment.md): Updates enrollment fields such as progress, last accessed date, or status. Accessible by the enrolled user (to track their own progress) or HR_TENANT administrators. - [Create a course lesson](https://orgo.space/docs/api-reference/courselesson/create-a-course-lesson.md): Creates a new lesson within a course section. Set the section reference, title, content, and optionally attach media. Requires HR_TENANT permission. - [Delete a course lesson](https://orgo.space/docs/api-reference/courselesson/delete-a-course-lesson.md): Permanently removes a lesson and its associated media from the course. Requires HR_TENANT permission. - [Get a course lesson](https://orgo.space/docs/api-reference/courselesson/get-a-course-lesson.md): Returns full lesson details including content, media references, and position within its section. Includes detail-level fields not present in the collection endpoint. - [List course lessons](https://orgo.space/docs/api-reference/courselesson/list-course-lessons.md): Returns a paginated list of course lessons. Supports search and ordering filters. Filter by section to get lessons within a specific course section. - [Remove media from lesson](https://orgo.space/docs/api-reference/courselesson/remove-media-from-lesson.md): Removes the attached media file (video, document, etc.) from a lesson. Deletes the Media entity and clears all media-related fields on the lesson. Requires HR_TENANT permission or lesson ownership. - [Update a course lesson](https://orgo.space/docs/api-reference/courselesson/update-a-course-lesson.md): Updates lesson properties such as title, content, position, or media attachment. Requires HR_TENANT permission. - [Delete a lesson attachment](https://orgo.space/docs/api-reference/courselessonattachment/delete-a-lesson-attachment.md): Removes the attachment and its underlying Media row when no other entity references it. Requires HR_TENANT or course-creator ownership. - [Get a single lesson attachment](https://orgo.space/docs/api-reference/courselessonattachment/get-a-single-lesson-attachment.md): Returns one attachment by UUID. Read access checked via voter. - [List lesson attachments](https://orgo.space/docs/api-reference/courselessonattachment/list-lesson-attachments.md): Returns attachments for a given lesson. Use the `lesson.uuid` filter (`?lesson.uuid=...`) to scope by lesson. Tenant isolation is enforced by Doctrine extension. - [Create a course quiz](https://orgo.space/docs/api-reference/coursequiz/create-a-course-quiz.md): Creates a new quiz within a course section. Configure the title, passing score, time limit, and maximum attempts. Questions and answers are managed separately. Requires HR_TENANT permission. - [Delete a course quiz](https://orgo.space/docs/api-reference/coursequiz/delete-a-course-quiz.md): Permanently deletes a quiz along with its questions, answers, and all attempt records. Requires HR_TENANT permission. - [Export quiz results as CSV](https://orgo.space/docs/api-reference/coursequiz/export-quiz-results-as-csv.md): Downloads a CSV file with all quiz attempts including student name, email, attempt number, score, pass/fail, time spent, and per-question answers with correctness. Requires the quiz query parameter. Requires HR_TENANT permission. - [Get a course quiz](https://orgo.space/docs/api-reference/coursequiz/get-a-course-quiz.md): Returns full quiz details including questions, answers, passing score, and attempt limits. Includes detail-level fields for rendering the quiz interface. - [List course quizzes](https://orgo.space/docs/api-reference/coursequiz/list-course-quizzes.md): Returns a paginated list of course quizzes. Filter by section to get quizzes within a specific course section. - [Update a course quiz](https://orgo.space/docs/api-reference/coursequiz/update-a-course-quiz.md): Updates quiz properties such as title, passing score, time limit, or maximum attempts. Requires HR_TENANT permission. - [Create a course section](https://orgo.space/docs/api-reference/coursesection/create-a-course-section.md): Creates a new section within a course. Set the course reference, title, and position. Lessons and quizzes are added separately. Requires HR_TENANT permission. - [Delete a course section](https://orgo.space/docs/api-reference/coursesection/delete-a-course-section.md): Permanently deletes a section and all its contained lessons and quizzes. Requires HR_TENANT permission. - [Get a course section](https://orgo.space/docs/api-reference/coursesection/get-a-course-section.md): Returns full section details including its lessons and quizzes. Includes detail-level fields for rendering the section content tree. - [List course sections](https://orgo.space/docs/api-reference/coursesection/list-course-sections.md): Returns a paginated list of course sections. Supports search and ordering filters. Filter by course to get sections within a specific course. - [Update a course section](https://orgo.space/docs/api-reference/coursesection/update-a-course-section.md): Updates section properties such as title, description, or position. Requires HR_TENANT permission. - [Create a custom field](https://orgo.space/docs/api-reference/customfield/create-a-custom-field.md): Creates a new custom field definition for the tenant. Requires ADMIN_TENANT permission, or EVENT_TENANT permission if the discriminator is "event". - [Delete a custom field](https://orgo.space/docs/api-reference/customfield/delete-a-custom-field.md): Deletes a custom field and cleans up all references in tenant setting forms (profile, registration, adhesion) and user-type registration form configurations. Requires ADMIN_TENANT for non-event fields or EVENT_TENANT for event-discriminated fields. - [Get a custom field](https://orgo.space/docs/api-reference/customfield/get-a-custom-field.md): Returns a single custom field definition including its type, options, and configuration. - [List custom fields](https://orgo.space/docs/api-reference/customfield/list-custom-fields.md): Returns all custom fields for the current tenant, ordered by position. Uses a cached provider for common queries (all fields, or filtered by discriminator). Supports discriminator filter (profile, form, event). - [Update a custom field](https://orgo.space/docs/api-reference/customfield/update-a-custom-field.md): Updates a custom field definition. Requires ADMIN_TENANT permission and tenant ownership. Validates tenant isolation. - [Create a custom field value](https://orgo.space/docs/api-reference/customfieldvalue/create-a-custom-field-value.md): Creates a single custom field value attached to one of a user, a contact, or an event attendance (exactly one of `user`, `contact`, `eventAttend` must be set; the others must be omitted or null). The `field` IRI is required. For file-type custom fields, send a `media` IRI and the `value` will be ign… - [Get a custom field value](https://orgo.space/docs/api-reference/customfieldvalue/get-a-custom-field-value.md): Returns a single custom field value with its associated field definition, stored answer, and any linked media. Tenant-isolated through `field.tenant`; cross-tenant reads return 404. - [List custom field values](https://orgo.space/docs/api-reference/customfieldvalue/list-custom-field-values.md): Returns custom field values whose `field.tenant` matches the authenticated user's tenant. Use the `field`, `user`, or `value` filters (all exact-match) to narrow the result set. The default response is paginated by API Platform's standard mechanism. - [Create a dashboard category](https://orgo.space/docs/api-reference/dashboardcategory/create-a-dashboard-category.md): Creates a new dashboard category for organizing widgets. Requires ADMIN_TENANT permission. - [Delete a dashboard category](https://orgo.space/docs/api-reference/dashboardcategory/delete-a-dashboard-category.md): Permanently removes a dashboard category. Requires ADMIN_TENANT permission and tenant ownership. - [Get a dashboard category](https://orgo.space/docs/api-reference/dashboardcategory/get-a-dashboard-category.md): Returns a single dashboard category by ID. Requires ROLE_USER authentication. - [List dashboard categories](https://orgo.space/docs/api-reference/dashboardcategory/list-dashboard-categories.md): Returns all dashboard categories for the current tenant. Pagination is disabled; all categories are returned in a single response. - [Update a dashboard category](https://orgo.space/docs/api-reference/dashboardcategory/update-a-dashboard-category.md): Updates a dashboard category name or configuration. Requires ADMIN_TENANT permission and tenant ownership. - [Create a welcome message](https://orgo.space/docs/api-reference/dashboardwelcomemessage/create-a-welcome-message.md): Creates a new welcome message for the tenant dashboard. Can be set as default or targeted to a specific user type. Requires ADMIN_TENANT permission. - [Delete a welcome message](https://orgo.space/docs/api-reference/dashboardwelcomemessage/delete-a-welcome-message.md): Permanently removes a welcome message. The default welcome message cannot be deleted unless the caller has SUPER_ADMIN permission. Requires ADMIN_TENANT or SUPER_ADMIN permission. - [Get a welcome message](https://orgo.space/docs/api-reference/dashboardwelcomemessage/get-a-welcome-message.md): Returns a single welcome message by ID. - [Get welcome message for current user](https://orgo.space/docs/api-reference/dashboardwelcomemessage/get-welcome-message-for-current-user.md): Returns the welcome message(s) applicable to the authenticated user. If the tenant has user types enabled, returns the user-type-specific message. If the tenant setting showGeneralAndUserTypeMessage is enabled, returns both the default and user-type messages. Falls back to the default message if no… - [List welcome messages](https://orgo.space/docs/api-reference/dashboardwelcomemessage/list-welcome-messages.md): Returns all welcome messages configured for the current tenant, up to 100 per page. - [Update a welcome message](https://orgo.space/docs/api-reference/dashboardwelcomemessage/update-a-welcome-message.md): Updates a welcome message title, body, or targeting settings. Requires ADMIN_TENANT or SUPER_ADMIN permission. - [Create a dashboard widget](https://orgo.space/docs/api-reference/dashboardwidget/create-a-dashboard-widget.md): Creates a new dashboard widget with the given type and configuration. Requires ADMIN_TENANT permission. - [Delete a dashboard widget](https://orgo.space/docs/api-reference/dashboardwidget/delete-a-dashboard-widget.md): Permanently removes a dashboard widget and deletes any associated photos from S3. System widgets cannot be deleted. Requires ADMIN_TENANT permission and tenant ownership. - [Get a dashboard widget](https://orgo.space/docs/api-reference/dashboardwidget/get-a-dashboard-widget.md): Returns a single dashboard widget by ID with its configuration. Requires ROLE_USER authentication. - [List dashboard widgets](https://orgo.space/docs/api-reference/dashboardwidget/list-dashboard-widgets.md): Returns all dashboard widgets for the current tenant. Pagination is disabled; all widgets are returned in a single response. - [Update a dashboard widget](https://orgo.space/docs/api-reference/dashboardwidget/update-a-dashboard-widget.md): Updates a dashboard widget configuration. If the defaultConfiguration contains photos, any removed photos are cleaned up from S3. Requires ADMIN_TENANT permission and tenant ownership. - [Create a discussion](https://orgo.space/docs/api-reference/discussion/create-a-discussion.md): Creates a new discussion with a main post. Sets the current user as owner, creates an initial view record, sends mention notifications to any users mentioned in the main post body, and auto-assigns issues to the default assignee when applicable. Also updates tenant onboarding progress. - [Delete a discussion](https://orgo.space/docs/api-reference/discussion/delete-a-discussion.md): Deletes a discussion. Only the discussion owner or a tenant admin can perform this action. When deleted by someone other than the main post author, a moderation log entry is created with the discussion title and content for audit purposes. - [Get a discussion](https://orgo.space/docs/api-reference/discussion/get-a-discussion.md): Retrieves a single discussion by ID, including its main post, namespace, tags, and metadata such as views count and posts count. - [List discussions](https://orgo.space/docs/api-reference/discussion/list-discussions.md): Returns a paginated list of discussions within the current tenant. Results are filtered by tenant automatically via Doctrine extensions. Supports standard API Platform filters. - [List reported issues](https://orgo.space/docs/api-reference/discussion/list-reported-issues.md): Returns a paginated list of discussions flagged as issues. These are discussions with issue tracking enabled, including assigned users, issue types, and status tracking. Returns 30 items per page. - [Update a discussion](https://orgo.space/docs/api-reference/discussion/update-a-discussion.md): Updates an existing discussion and its main post. Sanitizes HTML content, processes media attachments, and sends notifications to any newly mentioned users that were not already mentioned before the edit. - [Create a discussion namespace](https://orgo.space/docs/api-reference/discussionnamespace/create-a-discussion-namespace.md): Creates a new discussion namespace. Requires unit-level permission for the target unit. Namespaces serve as containers for organizing discussions within a unit or the tenant. - [Delete a discussion namespace](https://orgo.space/docs/api-reference/discussionnamespace/delete-a-discussion-namespace.md): Deletes a discussion namespace. Requires unit-level permission for the namespace. Removing a namespace will cascade to all discussions within it. - [Get a discussion namespace](https://orgo.space/docs/api-reference/discussionnamespace/get-a-discussion-namespace.md): Retrieves a single discussion namespace by ID, including its configuration, associated unit, and topic types. - [Get latest discussion in namespace](https://orgo.space/docs/api-reference/discussionnamespace/get-latest-discussion-in-namespace.md): Retrieves the most recently created discussion within a given namespace, filtered by tenant. Returns the full discussion object with discussion_read serialization groups. Returns null if no discussions exist in the namespace. - [List discussion namespaces](https://orgo.space/docs/api-reference/discussionnamespace/list-discussion-namespaces.md): Returns all discussion namespaces for the current tenant, paginated at 100 items per page. Namespaces organize discussions into categories and can be scoped to specific units. - [Update a discussion namespace](https://orgo.space/docs/api-reference/discussionnamespace/update-a-discussion-namespace.md): Updates an existing discussion namespace. Validates that the current user has permission to manage the namespace within its associated unit before applying changes. - [Delete a drive file](https://orgo.space/docs/api-reference/drive/delete-a-drive-file.md): Permanently deletes a drive entry and its associated media file. Requires DELETE permission on the object, which is granted to the file owner and unit admins. - [Get a drive file](https://orgo.space/docs/api-reference/drive/get-a-drive-file.md): Retrieves a single drive entry (file or folder) by ID, including its media reference, owner, parent folder, and unit association. - [List drive files](https://orgo.space/docs/api-reference/drive/list-drive-files.md): Returns a paginated list of drive files and folders for the current tenant, 100 items per page. Results are filtered by tenant and user access permissions via Doctrine extensions. Use query parameters to filter by parent folder, unit, or personal drive. - [List latest drive files](https://orgo.space/docs/api-reference/drive/list-latest-drive-files.md): Returns the 10 most recently uploaded or modified drive files accessible to the current user. Useful for displaying a recent files widget on the dashboard. - [Publish a public share link for a drive file](https://orgo.space/docs/api-reference/drive/publish-a-public-share-link-for-a-drive-file.md): Generates a unique short slug, creates a 1-year pre-signed S3 URL for the underlying media, and publishes an HTML redirect page to the go.orgo.space bucket. Returns the drive with slugGo and publicShareExpiresAt populated. Only the file owner can share, and only files with attached media are shareab… - [Revoke a public share link for a drive file](https://orgo.space/docs/api-reference/drive/revoke-a-public-share-link-for-a-drive-file.md): Removes the published HTML redirect from go.orgo.space and clears the slug and pre-signed URL on the drive. Only the file owner can revoke. - [Search drive files](https://orgo.space/docs/api-reference/drive/search-drive-files.md): Full-text search across drive file and folder names accessible to the current user. Requires a search query parameter with at least 2 characters. Returns up to 10 matching results scoped to the user accessible units. Pagination is disabled. - [Update a drive file](https://orgo.space/docs/api-reference/drive/update-a-drive-file.md): Updates a drive entry name, parent folder, or other properties. Requires EDIT permission on the object, which is granted to the file owner and unit admins. - [Upload a file to drive](https://orgo.space/docs/api-reference/drive/upload-a-file-to-drive.md): Creates a new drive entry (file or folder). When uploading a file, provide fileName, mediaType, and fileSize in the request body to create the associated Media record. Supports uploading to personal drives with access validation and cross-tenant protection. Sets the current user as owner. - [Get an education industry](https://orgo.space/docs/api-reference/educationindustry/get-an-education-industry.md): Retrieves a single education industry (field of study) by ID. - [List education industries](https://orgo.space/docs/api-reference/educationindustry/list-education-industries.md): Returns all education industries (fields of study). Read-only reference data used in user education profiles. Page size defaults to 1000. - [Create an email template](https://orgo.space/docs/api-reference/emailtemplate/create-an-email-template.md): Creates a custom email template for the current tenant, overriding the default system template for the specified type. Requires ADMIN_TENANT permission. The template HTML supports placeholders like {{firstName}}, {{organizationName}}, etc. - [Delete an email template](https://orgo.space/docs/api-reference/emailtemplate/delete-an-email-template.md): Deletes a custom email template. Requires ADMIN_TENANT permission. After deletion, the system will fall back to the built-in default Twig template for that email type. - [Get an email template](https://orgo.space/docs/api-reference/emailtemplate/get-an-email-template.md): Retrieves a single custom email template by ID, including its HTML content, subject line, and type. Requires ADMIN_TENANT permission. - [Get default email template by type](https://orgo.space/docs/api-reference/emailtemplate/get-default-email-template-by-type.md): Returns the built-in default Twig template for a given email type, rendered with placeholder context and the tenant language. Includes the default subject line and available placeholders. Requires ADMIN_TENANT permission. Useful for resetting a template back to system defaults. - [Get email template content by type](https://orgo.space/docs/api-reference/emailtemplate/get-email-template-content-by-type.md): Returns the active email template content for a given type. If a custom tenant template exists, returns it with source "custom". Otherwise, renders and returns the default Twig template with source "default". Always includes the available placeholders for the template type. Requires ADMIN_TENANT per… - [List email templates](https://orgo.space/docs/api-reference/emailtemplate/list-email-templates.md): Returns a paginated list of custom email templates for the current tenant. Requires ADMIN_TENANT permission. Returns 20 items per page. - [Preview an email template](https://orgo.space/docs/api-reference/emailtemplate/preview-an-email-template.md): Renders a preview of an email template by replacing all placeholders with real data from the current user context. Send html and subject in the request body. Returns processed HTML and subject with placeholders resolved to actual values. - [Send a test email](https://orgo.space/docs/api-reference/emailtemplate/send-a-test-email.md): Sends a test email to the current user email address using the provided HTML, subject, and templateType. Placeholders are replaced with the current user data, and the subject is prefixed with [TEST]. Uses the tenant configured from/reply-to addresses. Requires ADMIN_TENANT permission. - [Update an email template](https://orgo.space/docs/api-reference/emailtemplate/update-an-email-template.md): Updates an existing custom email template subject, HTML content, or type. Requires ADMIN_TENANT permission. - [Copy template logo to event](https://orgo.space/docs/api-reference/event/copy-template-logo-to-event.md): Copies the hero image from an event template to this event. Downloads the file from S3 and creates a new Media entity, then copies it to the public folder if the event is public or has ticketing. - [Create a sub-event](https://orgo.space/docs/api-reference/event/create-a-sub-event.md): Creates a new sub-event within a parent event. Requires parentEvent IRI in the body. Automatically sets tenant, owner, status, and position from parent. Requires event ownership or EVENT_LOCAL permission. - [Create an event](https://orgo.space/docs/api-reference/event/create-an-event.md): Creates a new event in draft status. Automatically sets the current user as owner and assigns tenant. If ticketing is enabled, a linked Stripe product is created. Supports propagation to all local centers via the propagateToLocalCenters flag. Non-financial users cannot enable ticketing or public vis… - [Delete a sub-event](https://orgo.space/docs/api-reference/event/delete-a-sub-event.md): Permanently deletes a sub-event. Permission is checked against the parent event. - [Delete an event](https://orgo.space/docs/api-reference/event/delete-an-event.md): Permanently deletes an event. Fails with 400 if any attendee has a payment attached. Events restricted to a specific user type require EVENT_TENANT permission; otherwise the owner or EVENT_LOCAL role suffices. - [Duplicate an event](https://orgo.space/docs/api-reference/event/duplicate-an-event.md): Creates a copy of the event with all settings, tickets, vouchers, custom fields, speakers, and agenda. Excludes attendees. The duplicated event is created as a draft. Accepts optional unit IRI to place the copy in a different group. - [Export event attendees](https://orgo.space/docs/api-reference/event/export-event-attendees.md): Downloads a CSV file containing all attendees with their name, email, phone, organisation, ticket type, price, registration/RSVP status, partner details, discount codes, and custom field values. Requires event ownership, EVENT_TENANT, or EVENT_LOCAL permission. - [Get an event](https://orgo.space/docs/api-reference/event/get-an-event.md): Returns full event details including settings, product/ticketing configuration, and media. Accessible to all authenticated tenant members. - [Get analytics for an event](https://orgo.space/docs/api-reference/event/get-analytics-for-an-event.md): Returns aggregated metrics for the event: attendee counts by registration status, RSVP breakdown, capacity utilization, total/refunded revenue (in cents), per-ticket-tier revenue breakdown, and daily registration counts. Accepts optional from/to query params (ISO 8601) to restrict to a date range. R… - [Get events report](https://orgo.space/docs/api-reference/event/get-events-report.md): Returns up to 200 events per page for reporting purposes. Uses the same filters as the standard event collection but with a higher page size suitable for dashboards and analytics. - [Get public event (anonymous)](https://orgo.space/docs/api-reference/event/get-public-event-anonymous.md): Returns event details for the public registration page, including ticket prices, add-ons, and registration form configuration with resolved custom fields. Response is cached in Redis. Only accessible for events that are public or have ticketing enabled. No authentication required. - [List events](https://orgo.space/docs/api-reference/event/list-events.md): Returns a paginated list of events for the current tenant, ordered by start date descending. Filterable by standard API Platform filters. Tenant isolation is enforced automatically via Doctrine extensions. Response is intentionally lean for list use — call `GET /events/{id}` for full event details. - [List events for newsletter](https://orgo.space/docs/api-reference/event/list-events-for-newsletter.md): Returns all events in the current tenant that have the newsletterEnabled flag set to true. Used for composing newsletter content. Requires EVENT_TENANT permission. - [List membership-restricted tickets for the current user](https://orgo.space/docs/api-reference/event/list-membership-restricted-tickets-for-the-current-user.md): Returns event tickets reserved for specific membership levels that match the current users feeTenantProductPrice. Returns an empty array if the user has no active membership level. Cached per (event, level) tuple in tenantCache with versioned invalidation. - [List public events](https://orgo.space/docs/api-reference/event/list-public-events.md): Returns published public events for a given tenant. Requires the tenant query parameter (slug). Supports date filtering via dateTimeBegin[after]/dateTimeBegin[before], or past/upcoming flags. Supports custom ordering via order[] parameters. No authentication required. - [Publish an event](https://orgo.space/docs/api-reference/event/publish-an-event.md): Sets the event status to published. For future events, creates a notification and dispatches an async message to notify unit members. Fails if the event is already published. Requires event ownership, EVENT_TENANT, or EVENT_LOCAL permission. - [Publish event via Go page](https://orgo.space/docs/api-reference/event/publish-event-via-go-page.md): Generates or updates the static Go landing page for the event. Creates a slug if one does not exist, then uploads the rendered HTML to the Go hosting service. Requires event ownership, EVENT_TENANT, or EVENT_LOCAL permission. - [Save event as template](https://orgo.space/docs/api-reference/event/save-event-as-template.md): Creates an event template from the current event configuration, including ticket types, voucher definitions, custom field definitions, and settings. Requires ADMIN_TENANT permission. - [Send event invitations](https://orgo.space/docs/api-reference/event/send-event-invitations.md): Dispatches an async message to send email invitations to all eligible members. The event must be published unless sending propagated invites. Marks the event invitesSent status as "sending". Pass propagated: true to send invites for all propagated copies. - [Update a sub-event](https://orgo.space/docs/api-reference/event/update-a-sub-event.md): Updates sub-event details. Permission is checked against the parent event owner or EVENT_LOCAL. - [Update an event](https://orgo.space/docs/api-reference/event/update-an-event.md): Updates event details. If ticketing is newly enabled, creates a Stripe product. Copies the event logo to the public S3 folder when the event is public or has ticketing. Requires event ownership or EVENT_LOCAL permission. - [Cancel event attendance](https://orgo.space/docs/api-reference/eventattend/cancel-event-attendance.md): Removes an event attendance record. Cannot delete attendances with a paid ticket (productPrice must be null). The attendee themselves, event owner, EVENT_TENANT, or EVENT_LOCAL can perform this action. - [Confirm invited attendee](https://orgo.space/docs/api-reference/eventattend/confirm-invited-attendee.md): Confirms an invited attendee, upgrading their status to success and sending them a ticket with QR code via email. Used for VIP/speaker/comp access. - [Download event ticket](https://orgo.space/docs/api-reference/eventattend/download-event-ticket.md): Generates and returns a PDF ticket for the attendance record, including a QR code for check-in. Only the attendee or users with HR_LOCAL permission can download the ticket. - [Generate guest tickets](https://orgo.space/docs/api-reference/eventattend/generate-guest-tickets.md): Creates guest tickets linked to an existing attendee. Max 20 per request. PDFs are generated async and sent via email. - [Get an event attendance](https://orgo.space/docs/api-reference/eventattend/get-an-event-attendance.md): Returns detailed attendance information including registration status, RSVP status, ticket type, payment details, and custom field values. - [Invite external user to event](https://orgo.space/docs/api-reference/eventattend/invite-external-user-to-event.md): Invites a person by email to an event. Looks up the email against existing Users, then Contacts; if no match is found, creates a new Contact record. Sends an invite email with registration link. Requires event ownership, EVENT_TENANT, or EVENT_LOCAL permission. Pass entity.email and entity.event (UU… - [List event attendances](https://orgo.space/docs/api-reference/eventattend/list-event-attendances.md): Returns a paginated list of event attendance records, ordered by ID descending (newest first). Supports client-configurable page size up to 100 items. - [List upcoming event attendances](https://orgo.space/docs/api-reference/eventattend/list-upcoming-event-attendances.md): Returns up to 6 upcoming event attendances for the current user, used to populate the dashboard sidebar widget. - [List user event attendances](https://orgo.space/docs/api-reference/eventattend/list-user-event-attendances.md): Returns event attendances for the current user with event details, ordered by event start date descending. Supports up to 100 items per page. Includes event-level data in the response for calendar and history views. - [Register for an event](https://orgo.space/docs/api-reference/eventattend/register-for-an-event.md): Creates a new event attendance. If the target user differs from the logged-in user, sets the attendance as an invitation and sends an invite email (for events with registration forms). Validates group membership for unit-scoped events, checks max capacity for non-ticketed events, and prevents duplic… - [Update event attendance](https://orgo.space/docs/api-reference/eventattend/update-event-attendance.md): Updates attendance fields such as RSVP or registration status. When setting statusRegistration to "success", validates that payment is completed (for ticketed events) and all required registration form fields are filled. Admins with EVENT_TENANT or EVENT_LOCAL bypass these validation checks. - [Delete event media](https://orgo.space/docs/api-reference/eventmedia/delete-event-media.md): Permanently removes a media item from an event. Requires event ownership, EVENT_TENANT, or EVENT_LOCAL permission on the event unit. - [Get event media](https://orgo.space/docs/api-reference/eventmedia/get-event-media.md): Returns a single event media item by ID, including its file URL and metadata. - [List event media](https://orgo.space/docs/api-reference/eventmedia/list-event-media.md): Returns all media items (images, documents) attached to events for the current tenant, up to 100 per page. - [Update event media](https://orgo.space/docs/api-reference/eventmedia/update-event-media.md): Updates event media metadata such as caption, sort order, or associated file reference. - [Upload event media](https://orgo.space/docs/api-reference/eventmedia/upload-event-media.md): Attaches a new media item (image or document) to an event. The media file should be associated with the event via the event relationship field. - [Add an event speaker](https://orgo.space/docs/api-reference/eventspeaker/add-an-event-speaker.md): Adds a speaker to an event. Provide either a user or contact reference, not both. Validates that the speaker is not already added to the event. Only the event owner or users with EVENT_LOCAL permission can add speakers. Tenant is automatically set from the event. - [Get an event speaker](https://orgo.space/docs/api-reference/eventspeaker/get-an-event-speaker.md): Returns a single event speaker record with their details and associated event reference. - [List event speakers](https://orgo.space/docs/api-reference/eventspeaker/list-event-speakers.md): Returns all speakers across events for the current tenant, up to 100 per page. Filter by event to get speakers for a specific event. - [Remove an event speaker](https://orgo.space/docs/api-reference/eventspeaker/remove-an-event-speaker.md): Removes a speaker from an event. Requires event ownership or ADMIN_TENANT permission. - [Update an event speaker](https://orgo.space/docs/api-reference/eventspeaker/update-an-event-speaker.md): Updates speaker details such as bio, title, or sort order. Requires event ownership or ADMIN_TENANT permission. - [Creates a EventStatus resource.](https://orgo.space/docs/api-reference/eventstatus/creates-a-eventstatus-resource.md): Creates a EventStatus resource. - [Removes the EventStatus resource.](https://orgo.space/docs/api-reference/eventstatus/removes-the-eventstatus-resource.md): Removes the EventStatus resource. - [Retrieves a EventStatus resource.](https://orgo.space/docs/api-reference/eventstatus/retrieves-a-eventstatus-resource.md): Retrieves a EventStatus resource. - [Retrieves the collection of EventStatus resources.](https://orgo.space/docs/api-reference/eventstatus/retrieves-the-collection-of-eventstatus-resources.md): Retrieves the collection of EventStatus resources. - [Updates the EventStatus resource.](https://orgo.space/docs/api-reference/eventstatus/updates-the-eventstatus-resource.md): Updates the EventStatus resource. - [Creates a EventTemplate resource.](https://orgo.space/docs/api-reference/eventtemplate/creates-a-eventtemplate-resource.md): Creates a EventTemplate resource. - [Removes the EventTemplate resource.](https://orgo.space/docs/api-reference/eventtemplate/removes-the-eventtemplate-resource.md): Removes the EventTemplate resource. - [Retrieves a EventTemplate resource.](https://orgo.space/docs/api-reference/eventtemplate/retrieves-a-eventtemplate-resource.md): Retrieves a EventTemplate resource. - [Retrieves the collection of EventTemplate resources.](https://orgo.space/docs/api-reference/eventtemplate/retrieves-the-collection-of-eventtemplate-resources.md): Retrieves the collection of EventTemplate resources. - [Retrieves the collection of EventTemplate resources.](https://orgo.space/docs/api-reference/eventtemplate/retrieves-the-collection-of-eventtemplate-resources-1.md): Retrieves the collection of EventTemplate resources. - [Updates the EventTemplate resource.](https://orgo.space/docs/api-reference/eventtemplate/updates-the-eventtemplate-resource.md): Updates the EventTemplate resource. - [Create an event type](https://orgo.space/docs/api-reference/eventtype/create-an-event-type.md): Creates a new event type and automatically assigns it to the current tenant. Requires ADMIN_TENANT permission. - [Delete an event type](https://orgo.space/docs/api-reference/eventtype/delete-an-event-type.md): Permanently removes an event type. Requires ADMIN_TENANT permission. Events already using this type are not affected. - [Get an event type](https://orgo.space/docs/api-reference/eventtype/get-an-event-type.md): Returns a single event type by ID. Accessible to all authenticated tenant members. - [List event types](https://orgo.space/docs/api-reference/eventtype/list-event-types.md): Returns all event types for the current tenant (up to 1000 per page). Used to populate event type selectors when creating or filtering events. - [Update an event type](https://orgo.space/docs/api-reference/eventtype/update-an-event-type.md): Updates an event type name or properties. Requires ADMIN_TENANT permission. - [Create an event voucher](https://orgo.space/docs/api-reference/eventvoucher/create-an-event-voucher.md): Creates a discount voucher for an event. Validates the discount type (percentage or fixed), value (percentage max 100), and code uniqueness per event. Fixed discounts require a currency. Optional limits: maxUses, maxTickets, maxDiscountAmount. Requires EVENT_TENANT permission. - [Delete an event voucher](https://orgo.space/docs/api-reference/eventvoucher/delete-an-event-voucher.md): Permanently removes a voucher. Already-applied discounts on existing payments are not affected. Requires EVENT_TENANT permission. - [Get an event voucher](https://orgo.space/docs/api-reference/eventvoucher/get-an-event-voucher.md): Returns a single voucher with its discount type, value, usage count, and limits. - [List event vouchers](https://orgo.space/docs/api-reference/eventvoucher/list-event-vouchers.md): Returns all event vouchers for the current tenant, ordered by creation date descending. Filter by event to get vouchers for a specific event. - [Update an event voucher](https://orgo.space/docs/api-reference/eventvoucher/update-an-event-voucher.md): Updates voucher properties such as discount value, usage limits, or active status. Requires EVENT_TENANT permission. - [Create an experience history entry](https://orgo.space/docs/api-reference/experiencehistory/create-an-experience-history-entry.md): Creates a new experience history record for the authenticated user. If a different user is specified in the payload, HR_LOCAL permission on that user's local center is required. Otherwise, the entry is automatically assigned to the authenticated user. - [Delete an experience history entry](https://orgo.space/docs/api-reference/experiencehistory/delete-an-experience-history-entry.md): Permanently removes an experience history record. Only the owning user or users with HR_LOCAL permission on the user's local center can delete. - [Get an experience history entry](https://orgo.space/docs/api-reference/experiencehistory/get-an-experience-history-entry.md): Returns a single experience history record including the role/position details, dates, and associated user. - [List experience history entries](https://orgo.space/docs/api-reference/experiencehistory/list-experience-history-entries.md): Returns a paginated list of experience history entries (20 per page). Requires the user query parameter to filter by a specific user. Tenant isolation is enforced automatically via Doctrine extensions. - [Update an experience history entry](https://orgo.space/docs/api-reference/experiencehistory/update-an-experience-history-entry.md): Updates an experience history record (role, dates, description, etc.). Only the owning user or users with HR_LOCAL permission on the user's local center can update. - [Create a family](https://orgo.space/docs/api-reference/familyentity/create-a-family.md): Creates a new family entity. If familyOwner is provided, the owner is automatically added as a parent-level FamilyMember with management permissions. A user can only own one family per tenant. Families without an owner can only be created by HR_LOCAL admins. - [Delete a family](https://orgo.space/docs/api-reference/familyentity/delete-a-family.md): Deletes a family and all its members within a transaction. Only the family owner or HR_LOCAL admins can delete. Fails if the family still has members other than the owner -- all members must be removed first. - [Delete a family](https://orgo.space/docs/api-reference/familyentity/delete-a-family-1.md): Permanently removes a family entity. Only the family owner or HR_LOCAL admins can delete. The standard Delete operation removes the entity via API Platform's default handler. - [Get a family](https://orgo.space/docs/api-reference/familyentity/get-a-family.md): Returns details of a specific family entity. Only accessible to users within the same tenant. - [Get current user families](https://orgo.space/docs/api-reference/familyentity/get-current-user-families.md): Returns all families the current user belongs to, including their role, ownership status, and member count. Accepts an optional userId query parameter to view another user's families (requires HR_LOCAL permission or parent management access for that user). - [Get family members](https://orgo.space/docs/api-reference/familyentity/get-family-members.md): Returns all members of a family with their details (level, permissions, user profile data). Accessible by family members or HR_LOCAL admins. For child members on a waitlist, also includes waitlist status and UUID. - [List families](https://orgo.space/docs/api-reference/familyentity/list-families.md): Returns a paginated list of family entities within the current tenant. Filtered automatically by tenant isolation via Doctrine extensions. - [Update a family](https://orgo.space/docs/api-reference/familyentity/update-a-family.md): Updates a family entity (name, privacy level, etc.). Only the family owner or users with HR_LOCAL permission for the owner's local center can update. - [Update family name](https://orgo.space/docs/api-reference/familyentity/update-family-name.md): Updates the name of a family entity. Only the family owner or HR_LOCAL admins can change the name. Requires a non-empty name field in the JSON payload. - [Add a family member](https://orgo.space/docs/api-reference/familymember/add-a-family-member.md): Adds a new member to a family. Requires familyId and either userId (existing user) or email/name (non-user contact). Only family owners, members with canManageChildren, or HR_LOCAL admins can add members. A user cannot belong to multiple families. Parents/guardians automatically receive child manage… - [Get a family member](https://orgo.space/docs/api-reference/familymember/get-a-family-member.md): Returns details of a specific family member. Only accessible within the same tenant by the family owner or users with HR_LOCAL permission for the owner's local center. - [List family members](https://orgo.space/docs/api-reference/familymember/list-family-members.md): Returns a paginated list of all family members within the current tenant. Filtered by tenant isolation via Doctrine extensions. - [Remove a family member](https://orgo.space/docs/api-reference/familymember/remove-a-family-member.md): Removes a member from a family. Only the family owner or HR_LOCAL admins can remove members. The family owner themselves cannot be removed -- delete the family instead. - [Update a family member](https://orgo.space/docs/api-reference/familymember/update-a-family-member.md): Updates a family member's level (parent, guardian, child) and management permissions. Only the family owner or HR_LOCAL admins can update. Changing level to parent or guardian automatically grants canManageChildren permission. - [Approve a fee payment](https://orgo.space/docs/api-reference/feepayment/approve-a-fee-payment.md): Approves a fee payment batch, setting its status to success. All associated product payments are also marked as successful. For each affected user, recalculates fee validity dates -- using local center fee validity for local center products or tenant-level fee validity otherwise. Deduplicates user p… - [Create a fee payment](https://orgo.space/docs/api-reference/feepayment/create-a-fee-payment.md): Creates a new fee payment batch record. This is a standard CRUD create with no custom controller logic. The fee payment acts as a container for individual product payments that are linked separately. Requires FINANCIAL_LOCAL permission. - [Delete a fee payment](https://orgo.space/docs/api-reference/feepayment/delete-a-fee-payment.md): Permanently deletes a fee payment batch record. This is a standard CRUD delete with no custom controller logic. Requires FINANCIAL_LOCAL permission for the fee payment local center. - [Get a fee payment](https://orgo.space/docs/api-reference/feepayment/get-a-fee-payment.md): Retrieves a single fee payment by ID with additional item-level detail (fee_read_item group includes associated product payments). Requires FINANCIAL_LOCAL permission for the fee payment local center. - [List fee payments](https://orgo.space/docs/api-reference/feepayment/list-fee-payments.md): Returns a list of fee payment records for the local center. Fee payments represent bulk offline payment batches (e.g. cash collected at a meeting) that group multiple individual product payments. Requires FINANCIAL_LOCAL permission. - [Update a fee payment](https://orgo.space/docs/api-reference/feepayment/update-a-fee-payment.md): Updates a fee payment batch record. This is a standard CRUD update with no custom controller logic. Requires FINANCIAL_LOCAL permission for the fee payment local center. - [Create a form](https://orgo.space/docs/api-reference/form/create-a-form.md): Creates a new form in the current tenant. The form is created in DRAFT status by default. - [Delete a form](https://orgo.space/docs/api-reference/form/delete-a-form.md): Soft-deletes a form by setting its status to DELETED. The form record is preserved in the database for audit purposes but hidden from listings. - [Get a form](https://orgo.space/docs/api-reference/form/get-a-form.md): Retrieves a single form by UUID. Returns full form details including fields configuration and settings. - [Get form statistics](https://orgo.space/docs/api-reference/form/get-form-statistics.md): Returns cached form analytics including submission overview (total, confirmed, pending, completion rate), per-field statistics with value distributions for choice fields and grouped text responses, and a list of the latest 100 confirmed submissions. Requires form ownership or EVENT_TENANT/COMMUNICAT… - [Get form submissions table](https://orgo.space/docs/api-reference/form/get-form-submissions-table.md): Returns a paginated table view of confirmed form submissions with dynamic columns based on form fields. Supports export mode (up to 10,000 rows) via ?export=true query parameter. Columns adapt based on submission mode (anonymous forms hide submitter columns). Requires form ownership or EVENT_TENANT/… - [Get public form (anonymous)](https://orgo.space/docs/api-reference/form/get-public-form-anonymous.md): Retrieves a form for public anonymous access. Only available for PUBLISHED or CLOSED forms. Checks device fingerprint (IP + User-Agent hash) against previous submissions when uniqueSubmissions is enabled, returning hasSubmitted and uniqueSubmissionsEnabled flags. Uses public_form_read_anonymous seri… - [List forms](https://orgo.space/docs/api-reference/form/list-forms.md): Returns a paginated list of forms belonging to the current tenant. Results are filtered by tenant via Doctrine extensions. Default pagination is 12 items per page. - [Publish a form](https://orgo.space/docs/api-reference/form/publish-a-form.md): Publishes a form by generating a unique 7-character alphanumeric short slug (if not already set) and uploading a shareable page to S3 for short link and social media previews. Requires form ownership or EVENT_TENANT/COMMUNICATION_TENANT permission. - [Recalculate form statistics](https://orgo.space/docs/api-reference/form/recalculate-form-statistics.md): Forces a full recalculation of form statistics, bypassing the cache. Returns the recalculated totals and timestamp. Useful when statistics appear stale. Requires form ownership or EVENT_TENANT/COMMUNICATION_TENANT permission in the same tenant. - [Resolve form by slug](https://orgo.space/docs/api-reference/form/resolve-form-by-slug.md): Resolves a short slug (slugGo) to its target entity. Searches forms, newsletters, and products in order. Returns the entity type (form/newsletter/product) and its UUID or slug. Throws 404 if no matching entity is found. - [Update a form](https://orgo.space/docs/api-reference/form/update-a-form.md): Partially updates an existing form. Can modify title, description, settings, and status fields. - [Create a form field](https://orgo.space/docs/api-reference/formfield/create-a-form-field.md): Creates a new form field linked to a form. Each form field wraps a custom field definition that specifies the field type (input, dropdown, radio, checkboxes, etc.) and options. - [Delete a form field](https://orgo.space/docs/api-reference/formfield/delete-a-form-field.md): Permanently removes a form field and its associated custom field definition. Existing submission answers referencing this field are orphaned. - [Get a form field](https://orgo.space/docs/api-reference/formfield/get-a-form-field.md): Retrieves a single form field by ID, including its linked custom field definition and configuration. - [List form fields](https://orgo.space/docs/api-reference/formfield/list-form-fields.md): Returns form fields ordered by position (ASC). Filter by form using ?form= query parameter to get fields for a specific form. - [Update a form field](https://orgo.space/docs/api-reference/formfield/update-a-form-field.md): Partially updates a form field. Can modify position, mandatory flag, description, and linked custom field properties. - [Create a form submission](https://orgo.space/docs/api-reference/formsubmission/create-a-form-submission.md): Creates a new form submission with associated answers. Submissions can be linked to a user, contact, or submitted anonymously depending on the form submission mode. - [Delete a form submission](https://orgo.space/docs/api-reference/formsubmission/delete-a-form-submission.md): Permanently removes a form submission and its associated answers. - [Get a form submission](https://orgo.space/docs/api-reference/formsubmission/get-a-form-submission.md): Retrieves a single form submission by ID, including submitter information and answer references. - [Get form submission details](https://orgo.space/docs/api-reference/formsubmission/get-form-submission-details.md): Returns detailed view of a single submission including submitter info (user/contact/anonymous), all form fields with their answers (both raw and formatted values), and field metadata (type, mandatory, description). Only the form owner can access submission details. - [List form submissions](https://orgo.space/docs/api-reference/formsubmission/list-form-submissions.md): Returns a paginated list of form submissions. Filter by form using ?form= query parameter. Results are tenant-isolated. - [Update a form submission](https://orgo.space/docs/api-reference/formsubmission/update-a-form-submission.md): Partially updates a form submission. Can modify validity status and other writable fields. - [Creates a FormSubmissionAnswer resource.](https://orgo.space/docs/api-reference/formsubmissionanswer/creates-a-formsubmissionanswer-resource.md): Creates a FormSubmissionAnswer resource. - [Removes the FormSubmissionAnswer resource.](https://orgo.space/docs/api-reference/formsubmissionanswer/removes-the-formsubmissionanswer-resource.md): Removes the FormSubmissionAnswer resource. - [Retrieves a FormSubmissionAnswer resource.](https://orgo.space/docs/api-reference/formsubmissionanswer/retrieves-a-formsubmissionanswer-resource.md): Retrieves a FormSubmissionAnswer resource. - [Retrieves the collection of FormSubmissionAnswer resources.](https://orgo.space/docs/api-reference/formsubmissionanswer/retrieves-the-collection-of-formsubmissionanswer-resources.md): Retrieves the collection of FormSubmissionAnswer resources. - [Updates the FormSubmissionAnswer resource.](https://orgo.space/docs/api-reference/formsubmissionanswer/updates-the-formsubmissionanswer-resource.md): Updates the FormSubmissionAnswer resource. - [Create a goal](https://orgo.space/docs/api-reference/goal/create-a-goal.md): Creates a new goal within a project. A project reference is required. Inherits the tenant from the project. Automatically assigns the next available position if not specified. Requires PROJECT_ACCESS permission on the parent project. - [Delete a goal](https://orgo.space/docs/api-reference/goal/delete-a-goal.md): Permanently removes a goal from its project. Requires PROJECT_EDIT permission (stricter than read access) on the parent project. - [Get a goal](https://orgo.space/docs/api-reference/goal/get-a-goal.md): Retrieves a single goal by ID. Requires PROJECT_ACCESS permission on the parent project. - [List goals](https://orgo.space/docs/api-reference/goal/list-goals.md): Returns a paginated list of goals ordered by position (ASC). Default pagination is 50 items per page. Filter by project using query parameters. - [Update a goal](https://orgo.space/docs/api-reference/goal/update-a-goal.md): Partially updates a goal (name, description, position, status, etc.). Requires PROJECT_ACCESS permission on the parent project. - [Create a group](https://orgo.space/docs/api-reference/group/create-a-group.md): Creates a new group and adds the current user as admin member with auto-follow. Tenant settings control who can create groups (ROLE_USER or higher). Community groups (isJoinable) can only be created by tenant admins. Project groups automatically receive default issue statuses and types. - [Delete a group](https://orgo.space/docs/api-reference/group/delete-a-group.md): Deletes a group permanently. Cannot delete groups that have an associated newsletter; remove the newsletter first or archive the group instead. Requires group admin access. - [Get a group](https://orgo.space/docs/api-reference/group/get-a-group.md): Retrieves a single group by ID. Access is validated based on group visibility settings and the user membership/role within the group. - [List groups](https://orgo.space/docs/api-reference/group/list-groups.md): Returns a paginated list of groups within the current tenant. The query isJoinable=1&status=ACTIVE is cached for performance. Supports filters for status, isJoinable, category, and other fields. - [List my groups](https://orgo.space/docs/api-reference/group/list-my-groups.md): Returns all groups, role groups, units, and local centers the current user is a member of. Results are filtered by the user effective user type and ordered with role groups, unit-type units, and local centers first, followed by regular groups. - [Update a group](https://orgo.space/docs/api-reference/group/update-a-group.md): Updates group properties such as name, description, visibility, and settings. Validates group-specific permissions including parent/category constraints. Requires group admin access. - [Create a group category](https://orgo.space/docs/api-reference/groupcategory/create-a-group-category.md): Creates a new group category for organizing groups. Restricted to tenant HR administrators. - [Delete a group category](https://orgo.space/docs/api-reference/groupcategory/delete-a-group-category.md): Deletes a group category. Groups assigned to this category will become uncategorized. Restricted to tenant HR administrators. - [Get a group category](https://orgo.space/docs/api-reference/groupcategory/get-a-group-category.md): Retrieves a single group category by ID. Restricted to tenant HR administrators. - [List group categories](https://orgo.space/docs/api-reference/groupcategory/list-group-categories.md): Returns all group categories for the current tenant. Categories are used to organize and classify groups. - [Update a group category](https://orgo.space/docs/api-reference/groupcategory/update-a-group-category.md): Updates the name or other properties of a group category. Restricted to tenant HR administrators. - [Create identity as anonymous](https://orgo.space/docs/api-reference/identity/create-identity-as-anonymous.md): Creates a new identity verification record without authentication. Used during anonymous payment flows (subscriptions or one-time payments). Requires a paymentUid or userId in the payload along with the document image. Triggers OCR processing via Lambda and notifies the financial team. Returns only… - [Create identity as member](https://orgo.space/docs/api-reference/identity/create-identity-as-member.md): Creates a new identity verification record as an authenticated member. Links the identity to a subscription profile or product payment (via paymentUid), or directly to the user. Uploads the document image, triggers OCR via Lambda, and optimizes the media. For subscriptions with automated identity va… - [Get an identity verification](https://orgo.space/docs/api-reference/identity/get-an-identity-verification.md): Returns the details of an identity verification record including document data, status, and associated media. Access is controlled by IdentityService.checkAccess -- typically restricted to the identity owner and financial/HR admins. - [Reject an identity](https://orgo.space/docs/api-reference/identity/reject-an-identity.md): Rejects an identity verification and sends a rejection notification email to the member. If isAdhesion is true in the payload, also resets the user's adhesion status to NEW and removes the uploaded document media. Marks all related payment identity reminders as sent to prevent further reminder email… - [Reopen an identity verification](https://orgo.space/docs/api-reference/identity/reopen-an-identity-verification.md): Resets a previously validated or rejected identity verification back to PENDING status, allowing the member to re-upload or update documents. Records the admin who performed the reopen action. - [Update identity data](https://orgo.space/docs/api-reference/identity/update-identity-data.md): Updates the extracted data fields of an identity verification (name, ID number, personal number, dates, etc.). If the identity is linked to a contact, also updates the contact's name. Validates the personal number format for Romanian IDs. Optionally removes the back media if mediaBack=false in the p… - [Update identity document](https://orgo.space/docs/api-reference/identity/update-identity-document.md): Replaces the front or back document image of an existing identity verification. Set mediaBack=true in the payload to update the back side. Validates the uploaded file is a valid image format, triggers OCR processing via Lambda, and optimizes the new media. If the identity was previously rejected, au… - [Upload identity document back side](https://orgo.space/docs/api-reference/identity/upload-identity-document-back-side.md): Uploads the back side of an identity document for an anonymous flow. Requires the identity hash and optionally paymentUuid/paymentType to validate ownership. Triggers OCR processing on the back image, updates contact name if applicable, and clears the identity hash after processing. If automated ide… - [Validate an identity](https://orgo.space/docs/api-reference/identity/validate-an-identity.md): Marks an identity verification as validated by an admin. Requires all mandatory fields (name, ID number, personal number, dates, ID type). Validates that the ID is not expired, the issue date is in the past, and the person is at least 18 years old. Updates linked subscription profiles to IDENTITY_VA… - [Cancel bank transfer invoice](https://orgo.space/docs/api-reference/invoice/cancel-bank-transfer-invoice.md): Cancels the most recent pending bank transfer invoice for the authenticated user. Finds the latest unpaid membership renewal invoice and sets its status to voided. Returns 404 if no pending bank transfer is found. No admin permission required -- available to any authenticated member. - [Create an invoice](https://orgo.space/docs/api-reference/invoice/create-an-invoice.md): Creates a manual invoice with auto-generated invoice number and hash. Sets status to unpaid and type to manual. Validates membership status if applicable. Generates the HTML body from the invoice template with placeholders replaced, builds the request payload for payment links, and automatically sen… - [Create bank transfer invoice](https://orgo.space/docs/api-reference/invoice/create-bank-transfer-invoice.md): Creates an unpaid membership renewal invoice for bank transfer payment by the authenticated user. Supports two modes: interval-based fees (pass fees object with date ranges and amounts) or regular fees (uses the user assigned product price). Validates no other pending bank transfer invoice exists. R… - [Delete an invoice](https://orgo.space/docs/api-reference/invoice/delete-an-invoice.md): Permanently deletes an invoice. This is a standard CRUD delete with no custom controller logic. Requires ADMIN_TENANT permission. - [Download invoice PDF](https://orgo.space/docs/api-reference/invoice/download-invoice-pdf.md): Generates and downloads the invoice as a PDF file (or HTML fallback if wkhtmltopdf is unavailable). The filename follows the format "Invoice - {TenantShortName} - {InvoiceNumber}.pdf". Requires ADMIN_TENANT permission. - [Get an invoice](https://orgo.space/docs/api-reference/invoice/get-an-invoice.md): Retrieves a single invoice by ID, including billing details, status, body HTML, and associated user/contact/company. Requires ADMIN_TENANT permission. - [List invoices](https://orgo.space/docs/api-reference/invoice/list-invoices.md): Returns a paginated list of invoices for the tenant (20 per page). Requires ADMIN_TENANT permission. Supports standard API Platform filters. - [Mark invoice as paid](https://orgo.space/docs/api-reference/invoice/mark-invoice-as-paid.md): Manually marks an invoice as paid for offline/bank transfer payments. Creates a ProductPayment record linked to the invoice. For membership invoices, updates the user or company fee validity dates and syncs membership to company users if applicable. For event registration invoices, confirms event re… - [Refund a paid invoice](https://orgo.space/docs/api-reference/invoice/refund-a-paid-invoice.md): Marks a paid invoice as refunded (record-keeping only; no payment gateway call). Sets status to refunded, records refundedBy and dateRefunded, and unwinds linked side-effects: ProductPayment becomes refunded; event registration EventAttends are canceled and ticket capacity is released; user fee vali… - [Send invoice by email](https://orgo.space/docs/api-reference/invoice/send-invoice-by-email.md): Sends the invoice to the recipient via email using the InvoiceService. The email includes the invoice HTML body. Can be used to resend invoices. Requires ADMIN_TENANT permission. - [Update an invoice](https://orgo.space/docs/api-reference/invoice/update-an-invoice.md): Updates an invoice and regenerates the HTML body from the template. Validates membership status if applicable. For non-event-registration invoices, also regenerates the request payload. Event registration invoices preserve their original payload format (with ticket details and eventUuid). Requires A… - [Void an invoice](https://orgo.space/docs/api-reference/invoice/void-an-invoice.md): Voids an invoice, setting its status to voided. For event registration invoices, also cancels associated event registrations (releasing ticket capacity) and sets the linked ProductPayment status to canceled. Requires ADMIN_TENANT permission. - [Create an invoice template](https://orgo.space/docs/api-reference/invoicetemplate/create-an-invoice-template.md): Creates a new invoice template for the tenant. Requires the invoice feature to be enabled in tenant settings. If isDefault is set to true, all other templates for the tenant are unset as default. Requires ADMIN_TENANT permission. - [Delete an invoice template](https://orgo.space/docs/api-reference/invoicetemplate/delete-an-invoice-template.md): Permanently deletes an invoice template. This is a standard CRUD delete with no custom controller logic. Requires ADMIN_TENANT permission. - [Get an invoice template](https://orgo.space/docs/api-reference/invoicetemplate/get-an-invoice-template.md): Retrieves a single invoice template by ID. Requires ADMIN_TENANT permission. - [List invoice templates](https://orgo.space/docs/api-reference/invoicetemplate/list-invoice-templates.md): Returns a paginated list of invoice templates for the tenant (50 per page). Templates define default tax rates, memos, footers, and custom fields applied to new invoices. Requires ADMIN_TENANT permission. - [Update an invoice template](https://orgo.space/docs/api-reference/invoicetemplate/update-an-invoice-template.md): Updates an existing invoice template. If isDefault is set to true, all other templates for the tenant are unset as default. Enforces tenant isolation. Requires ADMIN_TENANT permission. - [Create an issue status](https://orgo.space/docs/api-reference/issuestatus/create-an-issue-status.md): Creates a new issue status at tenant or unit level. For project-specific statuses, set the project field and PROJECT_ACCESS is required. For support ticket statuses, unit-level permission is validated. Includes name, color, position, and isClosed flag. - [Delete an issue status](https://orgo.space/docs/api-reference/issuestatus/delete-an-issue-status.md): Deletes an issue status. Unit-level permission is validated before deletion. Consider reassigning tasks/tickets using this status before deleting. - [Get an issue status](https://orgo.space/docs/api-reference/issuestatus/get-an-issue-status.md): Retrieves a single issue status by its identifier, including name, color, position, and whether it represents a closed state. - [List issue statuses](https://orgo.space/docs/api-reference/issuestatus/list-issue-statuses.md): Returns issue statuses ordered by position ascending. Must filter by either tenantSupport (tenant ID) or unit (unit ID) query parameter. Validates user access to the specified unit or tenant. - [Update an issue status](https://orgo.space/docs/api-reference/issuestatus/update-an-issue-status.md): Updates an issue status (name, color, position, isClosed). For project-specific statuses, PROJECT_ACCESS is required. For tenant/unit-level statuses, appropriate unit permission is validated. - [Create an issue type](https://orgo.space/docs/api-reference/issuetype/create-an-issue-type.md): Creates a new issue type (e.g., bug, feature request, question) at tenant or unit level. If a unit is specified, unit-level permission is validated. Otherwise, the type is created at tenant level. - [Delete an issue type](https://orgo.space/docs/api-reference/issuetype/delete-an-issue-type.md): Deletes an issue type. Unit-level permission is validated before deletion. Consider reassigning tickets using this type before deleting. - [Get an issue type](https://orgo.space/docs/api-reference/issuetype/get-an-issue-type.md): Retrieves a single issue type by its identifier, including its name, icon, and position. - [List issue types](https://orgo.space/docs/api-reference/issuetype/list-issue-types.md): Returns issue types ordered by position ascending. Must filter by either tenantSupport (tenant ID) or unit (unit ID) query parameter. Validates user access to the specified unit or tenant. - [Update an issue type](https://orgo.space/docs/api-reference/issuetype/update-an-issue-type.md): Updates an issue type (name, icon, position). Unit-level permission is validated. If the type belongs to the tenant level, tenant permission is required. - [Create a local center](https://orgo.space/docs/api-reference/localcenter/create-a-local-center.md): Creates a new local center within the tenant. A local center represents a geographic branch or chapter. Requires HR_TENANT permission. - [Delete a local center](https://orgo.space/docs/api-reference/localcenter/delete-a-local-center.md): Deletes a local center. If the center has blocking constraints (active members or related data), performs a soft delete by setting status to CLOSED with an end date. Otherwise performs a hard delete. Requires ADMIN_TENANT permission. - [Get a local center](https://orgo.space/docs/api-reference/localcenter/get-a-local-center.md): Retrieves a single local center by ID, including its associated town, region, contact details, and active/closed status. - [List all local centers unpaginated](https://orgo.space/docs/api-reference/localcenter/list-all-local-centers-unpaginated.md): Returns all local centers in a single response (up to 1000). Uses the same cached provider as the paginated endpoint. Designed for dropdown selectors and maps where all centers are needed at once. - [List local centers](https://orgo.space/docs/api-reference/localcenter/list-local-centers.md): Returns a paginated list of local centers ordered by town name. Results are cached when no filters are applied or only status=ACTIVE is set. Supports standard API Platform filters for status, town, and region. Default page size is 100 (max 1000). - [List local centers for map display](https://orgo.space/docs/api-reference/localcenter/list-local-centers-for-map-display.md): Returns lightweight local center data optimized for map rendering. Includes only coordinates, name, and contact info. Uses cached queries for performance. Authenticated users resolve tenant from token. - [List local centers for public map display](https://orgo.space/docs/api-reference/localcenter/list-local-centers-for-public-map-display.md): Public version of map data endpoint. Requires tenantSlug query parameter. Designed for iframe embedding. - [List public local centers](https://orgo.space/docs/api-reference/localcenter/list-public-local-centers.md): Returns local centers with public-facing information only. No authentication required. Designed for registration flows and public organization pages where users select their local center. - [Update a local center](https://orgo.space/docs/api-reference/localcenter/update-a-local-center.md): Updates local center properties such as contact details, address, and settings. Requires ADMIN_LOCAL permission on the specific local center. - [Approve a local center request](https://orgo.space/docs/api-reference/localcenterrequest/approve-a-local-center-request.md): Approves a pending transfer request. Moves the user to the new local center, ends their role at the old center, and creates a new role assignment at the new center. Sets status to APPROVED and sends a notification email to the user. - [Create a local center transfer request](https://orgo.space/docs/api-reference/localcenterrequest/create-a-local-center-transfer-request.md): Creates a request to transfer a user to a different local center. Sets status to PENDING and records the current local center. Validates the request and sends a notification email to HR admins of the target local center. The caller can submit for themselves or on behalf of another user by providing… - [Decline a local center request](https://orgo.space/docs/api-reference/localcenterrequest/decline-a-local-center-request.md): Declines a pending transfer request. Sets status to DECLINED and the user remains at their current local center. Sends a notification email to the user informing them of the decision. - [Get a local center request](https://orgo.space/docs/api-reference/localcenterrequest/get-a-local-center-request.md): Retrieves a single local center transfer request. Accessible to HR admins of the target local center or the user who submitted the request. - [List local center requests](https://orgo.space/docs/api-reference/localcenterrequest/list-local-center-requests.md): Returns all local center transfer requests ordered by request date (newest first). Results are automatically tenant-isolated via Doctrine extensions. - [Add a user preference](https://orgo.space/docs/api-reference/localcenteruserpreference/add-a-user-preference.md): Adds a local center to the current user favorites. Send "localCenterId" in the request body. If the local center is already a favorite, returns success without creating a duplicate. - [Delete a user preference](https://orgo.space/docs/api-reference/localcenteruserpreference/delete-a-user-preference.md): Removes a local center from the current user favorites. Users can only remove their own favorites. Returns the updated favorite status and local center ID. - [Get a user preference](https://orgo.space/docs/api-reference/localcenteruserpreference/get-a-user-preference.md): Retrieves a single local center favorite entry by ID, including the associated local center details. - [List user preferences](https://orgo.space/docs/api-reference/localcenteruserpreference/list-user-preferences.md): Returns all local center favorites for the current user. Used to display preferred/bookmarked local centers in the UI. - [Create a user type](https://orgo.space/docs/api-reference/localcenterusertype/create-a-user-type.md): Creates a new local center user type for categorizing members within local centers. Requires HR_TENANT permission. - [Delete a user type](https://orgo.space/docs/api-reference/localcenterusertype/delete-a-user-type.md): Permanently deletes a local center user type. Ensure no users are currently assigned this type before deletion. Requires ADMIN_TENANT permission. - [Get a user type](https://orgo.space/docs/api-reference/localcenterusertype/get-a-user-type.md): Retrieves a single local center user type by ID, including its name and configuration. - [List user types](https://orgo.space/docs/api-reference/localcenterusertype/list-user-types.md): Returns all local center user types for the current tenant. User types categorize members within local centers (e.g., volunteer, board member, regular member). - [Creates a user token.](https://orgo.space/docs/api-reference/login-check/creates-a-user-token.md): Creates a user token. - [Creates a Newsletter resource.](https://orgo.space/docs/api-reference/newsletter/creates-a-newsletter-resource.md): Creates a Newsletter resource. - [Removes the Newsletter resource.](https://orgo.space/docs/api-reference/newsletter/removes-the-newsletter-resource.md): Removes the Newsletter resource. - [Retrieves a Newsletter resource.](https://orgo.space/docs/api-reference/newsletter/retrieves-a-newsletter-resource.md): Retrieves a Newsletter resource. - [Retrieves a Newsletter resource.](https://orgo.space/docs/api-reference/newsletter/retrieves-a-newsletter-resource-1.md): Retrieves a Newsletter resource. - [Retrieves a Newsletter resource.](https://orgo.space/docs/api-reference/newsletter/retrieves-a-newsletter-resource-2.md): Retrieves a Newsletter resource. - [Retrieves a Newsletter resource.](https://orgo.space/docs/api-reference/newsletter/retrieves-a-newsletter-resource-3.md): Retrieves a Newsletter resource. - [Retrieves the collection of Newsletter resources.](https://orgo.space/docs/api-reference/newsletter/retrieves-the-collection-of-newsletter-resources.md): Retrieves the collection of Newsletter resources. - [Retrieves the collection of Newsletter resources.](https://orgo.space/docs/api-reference/newsletter/retrieves-the-collection-of-newsletter-resources-1.md): Retrieves the collection of Newsletter resources. - [Updates the Newsletter resource.](https://orgo.space/docs/api-reference/newsletter/updates-the-newsletter-resource.md): Updates the Newsletter resource. - [Updates the Newsletter resource.](https://orgo.space/docs/api-reference/newsletter/updates-the-newsletter-resource-1.md): Updates the Newsletter resource. - [Updates the Newsletter resource.](https://orgo.space/docs/api-reference/newsletter/updates-the-newsletter-resource-2.md): Updates the Newsletter resource. - [Updates the Newsletter resource.](https://orgo.space/docs/api-reference/newsletter/updates-the-newsletter-resource-3.md): Updates the Newsletter resource. - [Updates the Newsletter resource.](https://orgo.space/docs/api-reference/newsletter/updates-the-newsletter-resource-4.md): Updates the Newsletter resource. - [Updates the Newsletter resource.](https://orgo.space/docs/api-reference/newsletter/updates-the-newsletter-resource-5.md): Updates the Newsletter resource. - [Creates a NewsletterTemplate resource.](https://orgo.space/docs/api-reference/newslettertemplate/creates-a-newslettertemplate-resource.md): Creates a NewsletterTemplate resource. - [Removes the NewsletterTemplate resource.](https://orgo.space/docs/api-reference/newslettertemplate/removes-the-newslettertemplate-resource.md): Removes the NewsletterTemplate resource. - [Retrieves a NewsletterTemplate resource.](https://orgo.space/docs/api-reference/newslettertemplate/retrieves-a-newslettertemplate-resource.md): Retrieves a NewsletterTemplate resource. - [Retrieves the collection of NewsletterTemplate resources.](https://orgo.space/docs/api-reference/newslettertemplate/retrieves-the-collection-of-newslettertemplate-resources.md): Retrieves the collection of NewsletterTemplate resources. - [Updates the NewsletterTemplate resource.](https://orgo.space/docs/api-reference/newslettertemplate/updates-the-newslettertemplate-resource.md): Updates the NewsletterTemplate resource. - [Updates the NewsletterTemplate resource.](https://orgo.space/docs/api-reference/newslettertemplate/updates-the-newslettertemplate-resource-1.md): Updates the NewsletterTemplate resource. - [Create an objective](https://orgo.space/docs/api-reference/objective/create-an-objective.md): Creates a new objective within a project. Requires PROJECT_ACCESS on the target project. Automatically assigns the project tenant and sets position to the next available value if not provided. - [Delete an objective](https://orgo.space/docs/api-reference/objective/delete-an-objective.md): Permanently removes an objective. Requires PROJECT_EDIT permission on the parent project (stricter than read/update access). - [Get an objective](https://orgo.space/docs/api-reference/objective/get-an-objective.md): Returns a single objective. Requires PROJECT_ACCESS permission on the parent project. - [List objectives](https://orgo.space/docs/api-reference/objective/list-objectives.md): Returns objectives ordered by position (ASC). Filtered by tenant automatically via Doctrine extensions. - [Update an objective](https://orgo.space/docs/api-reference/objective/update-an-objective.md): Updates an existing objective. Requires PROJECT_ACCESS on the parent project. Validates the objective still belongs to a valid project. - [Create an official gazette entry](https://orgo.space/docs/api-reference/officialgazette/create-an-official-gazette-entry.md): Creates a new official gazette entry (decision, announcement, resolution). Requires HR_TENANT permission. - [Delete an official gazette entry](https://orgo.space/docs/api-reference/officialgazette/delete-an-official-gazette-entry.md): Permanently removes an official gazette entry. Requires HR_TENANT permission on the entry. - [Get an official gazette entry](https://orgo.space/docs/api-reference/officialgazette/get-an-official-gazette-entry.md): Returns a single official gazette entry by ID. Official gazettes are formal organizational documents (decisions, announcements, resolutions). - [List official gazette entries](https://orgo.space/docs/api-reference/officialgazette/list-official-gazette-entries.md): Returns official gazette entries ordered by documentDate (DESC) then by ID (DESC). Filtered by tenant automatically. - [Update an official gazette entry](https://orgo.space/docs/api-reference/officialgazette/update-an-official-gazette-entry.md): Updates an existing official gazette entry. Requires HR_TENANT permission on the entry. - [Get an official gazette type](https://orgo.space/docs/api-reference/officialgazettetype/get-an-official-gazette-type.md): Returns a single official gazette type by ID. Read-only reference data. - [List official gazette types](https://orgo.space/docs/api-reference/officialgazettetype/list-official-gazette-types.md): Returns all available official gazette types (e.g. decision, announcement, resolution). Read-only reference data. - [Create a discussion post](https://orgo.space/docs/api-reference/post/create-a-discussion-post.md): Creates a new comment on a discussion. Requires the discussion ID in the request body. Sanitizes HTML content, processes media attachments and @mentions (up to 50), sends notifications to mentioned users and discussion followers via async message queue, and auto-follows the discussion for the commen… - [Delete a discussion post](https://orgo.space/docs/api-reference/post/delete-a-discussion-post.md): Deletes a discussion comment. Only the post owner or a tenant admin can delete. If the post has visible replies, it is soft-deleted (content cleared but structure preserved). Admin deletions of other users posts are logged for audit purposes. - [Delete a post reply](https://orgo.space/docs/api-reference/post/delete-a-post-reply.md): Deletes a reply to a comment. Requires COMMUNICATION_TENANT permission or ownership of the reply. If the reply has visible children, it is soft-deleted to preserve thread structure. Otherwise, the reply is hard-deleted and the parent comment children count is decremented. Admin deletions are logged. - [Get a discussion post](https://orgo.space/docs/api-reference/post/get-a-discussion-post.md): Retrieves a single post by ID, including its content, owner, media attachments, mentions, reactions summary, and moderation status. - [Get reactions for a post](https://orgo.space/docs/api-reference/post/get-reactions-for-a-post.md): Returns all reactions on a post, grouped by reaction type ID. Each group contains an array of users (name, ID, logo) who reacted with that type. Validates that the current user belongs to the same tenant and has access to the discussion unit. - [List discussion posts](https://orgo.space/docs/api-reference/post/list-discussion-posts.md): Returns a paginated list of posts for a discussion, ordered by date created ascending. Requires a filter parameter: either discussion (ID), parent (post ID for replies), or owner (user ID, must match current user). Enriches each post with the current user reaction data. - [List discussion posts (legacy)](https://orgo.space/docs/api-reference/post/list-discussion-posts-legacy.md): Legacy endpoint for listing discussion posts, maintained for mobile app backward compatibility. Uses post_discussion_read serialization group. Prefer the standard /posts collection endpoint for new integrations. - [Moderate a discussion post](https://orgo.space/docs/api-reference/post/moderate-a-discussion-post.md): Hides a post from public view by marking it as moderated. Requires COMMUNICATION_LOCAL permission on the discussion. Decrements the discussion posts count, creates a moderation log entry with the original content, and links the log to the post. Fails if the post is already moderated. - [Moderate a post reply](https://orgo.space/docs/api-reference/post/moderate-a-post-reply.md): Hides a reply from public view by marking it as moderated. Requires COMMUNICATION_LOCAL permission on the discussion. Decrements the parent comment visible children count and creates a moderation log entry. Fails if the reply is already moderated. - [Remove moderation from a post](https://orgo.space/docs/api-reference/post/remove-moderation-from-a-post.md): Restores a previously moderated post to public visibility. Requires COMMUNICATION_LOCAL permission on the discussion. Increments the discussion posts count back and creates an unmoderation log entry. Fails if the post is not currently moderated. - [Remove moderation from a reply](https://orgo.space/docs/api-reference/post/remove-moderation-from-a-reply.md): Restores a previously moderated reply to public visibility. Requires COMMUNICATION_LOCAL permission on the discussion. Increments the parent comment visible children count and creates an unmoderation log entry. Fails if the reply is not currently moderated. - [Reply to a discussion post](https://orgo.space/docs/api-reference/post/reply-to-a-discussion-post.md): Creates a nested reply to an existing comment. Requires the parent post ID in the request body. Validates tenant isolation and unit access, processes media attachments and @mentions (up to 50), and sends a notification to the parent comment owner (unless replying to own comment). - [Report a discussion post](https://orgo.space/docs/api-reference/post/report-a-discussion-post.md): Flags a post as inappropriate by creating a PostReport record linked to the current user. Each user can only report a given post once; duplicate reports return a 400 error. - [Update a discussion post](https://orgo.space/docs/api-reference/post/update-a-discussion-post.md): Updates an existing post. Only the post owner can edit it. Handles mention updates by comparing existing and new mentions, and sends notifications only to newly mentioned users. Supports updating content and media attachments. - [Create a product](https://orgo.space/docs/api-reference/product/create-a-product.md): Creates a new product and syncs it to Stripe. Automatically generates slug, slugGo, and slugEnGo identifiers. For fee-type products, sets the local center default fee product if not already configured. For donation-type products, registers as the tenant default donation product if none exists. For m… - [Delete a product](https://orgo.space/docs/api-reference/product/delete-a-product.md): Deletes a product if it has no existing payments. If the product has a Stripe product ID, archives it in Stripe. Returns 400 if any payment is linked to this product. Requires FINANCIAL_TENANT or FINANCIAL_LOCAL permission. - [Get a product](https://orgo.space/docs/api-reference/product/get-a-product.md): Retrieves a single product by UUID. For fee-type products, filters out hidden prices and prices outside their valid date range for non-HR users. HR_TENANT users see all prices regardless of visibility or date validity. - [Get payment page comments](https://orgo.space/docs/api-reference/product/get-payment-page-comments.md): Returns paginated donor comments for a donation product public page. Supports page query parameter (30 comments per page). Donor names are anonymized to first name and last initial for public entries, or shown as "anonymous" for non-public ones. Requires the product commentSection setting to be enab… - [Get payment page info](https://orgo.space/docs/api-reference/product/get-payment-page-info.md): Returns public donation page statistics including comment count, top payments (with anonymized donor names), recent donation activity from the last 20% timeframe, and top recurring payment. Only available for donation-type products with commentSection or newestAndTopDonationSection settings enabled. - [Get payment page payments](https://orgo.space/docs/api-reference/product/get-payment-page-payments.md): Returns paginated latest payments for a donation product public page. Supports page query parameter (50 payments per page). Donor names are anonymized to first name and last initial, or shown as "anonymous" for non-public entries. Requires the product newestAndTopDonationSection setting to be enable… - [Get product by slug](https://orgo.space/docs/api-reference/product/get-product-by-slug.md): Looks up a product by its slug and tenant slug. Requires query parameters: slug (product slug) and tenant (tenant slug). Returns the product with product_read serialization group. Used for public-facing product pages. - [Get public product details](https://orgo.space/docs/api-reference/product/get-public-product-details.md): Returns product details via the public endpoint (no authentication required for external products). For fee-type products, filters out hidden prices and prices outside their valid date range for non-HR users. Response includes tenant-specific cache headers. - [Get tenant fee product](https://orgo.space/docs/api-reference/product/get-tenant-fee-product.md): Retrieves the tenant-level fee (membership) product by UUID. Filters out hidden product prices for non-HR users, so regular members only see prices they are eligible to select. - [List my products](https://orgo.space/docs/api-reference/product/list-my-products.md): Returns products available to the authenticated user based on their permissions and local center membership. Supports filters: exists[localCenter], exists[organisation], exists[isArchived], exists[hasLocalCenterOption], type, and excludeType. Fee product visibility is restricted by online payment el… - [List showcased products](https://orgo.space/docs/api-reference/product/list-showcased-products.md): Returns products marked as showcased for the authenticated user, filtered by their roles and local center. Also includes products the user has active subscriptions to. Results are deduplicated by product ID. - [Publish a product](https://orgo.space/docs/api-reference/product/publish-a-product.md): Publishes a product landing page via the GoPublisher service, uploading the product folder to the static hosting platform. Accepts an optional isEn flag in the request body to generate an English version. Requires FINANCIAL_TENANT or FINANCIAL_LOCAL permission. - [Update a product](https://orgo.space/docs/api-reference/product/update-a-product.md): Updates product fields and syncs changes to Stripe. If the Stripe product ID is stale, clears it and re-creates the Stripe product. Republishes the Go landing page if a slugGo exists. Non-HR users are automatically scoped to their local center. Requires FINANCIAL_TENANT or FINANCIAL_LOCAL permission… - [Update product without Stripe sync](https://orgo.space/docs/api-reference/product/update-product-without-stripe-sync.md): Updates product fields without triggering Stripe synchronization. Useful for updating metadata or non-financial fields that do not affect the Stripe product configuration. Non-HR users are automatically scoped to their local center. Requires FINANCIAL_TENANT or FINANCIAL_LOCAL permission. - [Create a product option](https://orgo.space/docs/api-reference/productoption/create-a-product-option.md): Creates a new option for a product (e.g. payment plan, duration variant). Requires FINANCIAL_TENANT permission. Validates access rights on the parent product. - [Delete a product option](https://orgo.space/docs/api-reference/productoption/delete-a-product-option.md): Permanently removes a product option. Requires FINANCIAL_TENANT permission. Fails if any ProductPayment or SubscriptionProfile records reference this option, to prevent orphaned payment data. - [Get a product option](https://orgo.space/docs/api-reference/productoption/get-a-product-option.md): Returns a single product option by ID. - [Update a product option](https://orgo.space/docs/api-reference/productoption/update-a-product-option.md): Updates an existing product option. Requires FINANCIAL_TENANT permission. Validates access rights on the parent product. - [Accept a payment](https://orgo.space/docs/api-reference/productpayment/accept-a-payment.md): Captures a held Stripe payment intent, completing the charge. Requires the payer to have a validated identity before acceptance. Sets the payment status to success and records the accepting user and date. Requires FINANCIAL_LOCAL permission. - [Approve payment comment](https://orgo.space/docs/api-reference/productpayment/approve-payment-comment.md): Approves a user-submitted comment on a donation payment, making it visible on the public donation page. Only applies to donation-type products with a non-empty comment. Requires FINANCIAL_LOCAL permission. - [Cancel a payment](https://orgo.space/docs/api-reference/productpayment/cancel-a-payment.md): Cancels a payment that is in pending_accept status via Stripe payment intent cancellation. The payment must not yet be captured. Sets the status to refunded and records the accepting user and date. Requires FINANCIAL_LOCAL permission. - [Download payment proof PDF](https://orgo.space/docs/api-reference/productpayment/download-payment-proof-pdf.md): Generates and downloads a PDF proof document for the payment. Requires the payer to have a validated identity with uploaded ID document. The PDF is populated from the tenant HTML template with placeholders for name, address, ID details, amounts, payment dates, validator signature, and Stripe/Orgo pa… - [Generate invoice for payment](https://orgo.space/docs/api-reference/productpayment/generate-invoice-for-payment.md): Generates an invoice for a successful event registration payment. Creates an Invoice entity with billing details pre-filled from the payer (user or contact), auto-generates invoice number and series, applies the default invoice template, and links the invoice to the payment. Only works for payments… - [Get a product payment](https://orgo.space/docs/api-reference/productpayment/get-a-product-payment.md): Retrieves a single product payment by ID. Accessible by the payment owner or users with FINANCIAL_LOCAL permission for the payment local center. - [List product payments](https://orgo.space/docs/api-reference/productpayment/list-product-payments.md): Returns a paginated list of product payments. Collection security is enforced via SecureSearchCollectionFilter and Doctrine extensions based on the user role. Regular users see only their own payments; FINANCIAL_LOCAL users see payments for their local center. Response is intentionally lean — call `… - [Refund a payment](https://orgo.space/docs/api-reference/productpayment/refund-a-payment.md): Processes a full refund through Stripe for a successful payment. Side effects: sets payment status to refunded, cancels any linked event registrations (releasing ticket capacity and decrementing sold counts), and recalculates fee validity dates for membership products. Only payments with status "suc… - [Reject payment comment](https://orgo.space/docs/api-reference/productpayment/reject-payment-comment.md): Rejects a user-submitted comment on a donation payment, preventing it from appearing on the public donation page. Only applies to donation-type products with a non-empty comment. Requires FINANCIAL_LOCAL permission. - [Create a product price](https://orgo.space/docs/api-reference/productprice/create-a-product-price.md): Creates a new price tier for a product and syncs it to Stripe if a connected Stripe account exists. For event products, validates that ticket dates fall within the event timeframe. For fee products, supports version chaining via previousVersion field, which automatically sets validTo on the previous… - [Delete a product price](https://orgo.space/docs/api-reference/productprice/delete-a-product-price.md): Deletes a product price if no payments are attached to it. If the price has a Stripe price ID, archives it in Stripe (skipped for demo tenants). Returns 400 if any payment references this price. Requires FINANCIAL_TENANT or FINANCIAL_LOCAL permission. - [Get a product price](https://orgo.space/docs/api-reference/productprice/get-a-product-price.md): Retrieves a single product price by ID. Returns price details including amount, currency, validity dates, and Stripe price ID. - [Get public product price](https://orgo.space/docs/api-reference/productprice/get-public-product-price.md): Retrieves a product price via the public endpoint. Accessible to authenticated users or for default prices (isDefault=true) without authentication. Used for public payment pages and external checkout flows. - [Update a product price](https://orgo.space/docs/api-reference/productprice/update-a-product-price.md): Updates a product price and syncs changes to Stripe. The price amount cannot be changed if payments already exist for this price tier. The tenant default fee price cannot be set as hidden (admin-assignable only). Lifetime membership prices automatically set the overwrite month period. Creates a Stri… - [Create a product price addon](https://orgo.space/docs/api-reference/productpriceaddon/create-a-product-price-addon.md): Creates a new addon for event ticket prices. Requires EVENT_TENANT permission. At least one ProductPrice must be linked. All linked prices must belong to the same product and tenant. Name is required, price cannot be negative, and maxQuantityPerTicket defaults to 1. Invalidates public event caches f… - [Delete a product price addon](https://orgo.space/docs/api-reference/productpriceaddon/delete-a-product-price-addon.md): Permanently removes a product price addon. Requires EVENT_TENANT permission and tenant ownership. Fails if any purchases (EventAttendAddon) exist for this addon -- archive it instead. Invalidates public event caches for all related events. - [Get a product price addon](https://orgo.space/docs/api-reference/productpriceaddon/get-a-product-price-addon.md): Returns a single product price addon by ID. Addons are optional extras attached to event ticket prices (e.g. meals, parking, merchandise). Requires authentication. - [List product price addons](https://orgo.space/docs/api-reference/productpriceaddon/list-product-price-addons.md): Returns product price addons (up to 100 per page). Requires authentication. - [Update a product price addon](https://orgo.space/docs/api-reference/productpriceaddon/update-a-product-price-addon.md): Updates an existing product price addon. Requires EVENT_TENANT permission and tenant ownership. Name cannot be empty, price cannot be negative, and maxQuantityPerTicket minimum is 1. Invalidates public event caches for all related events. - [Get a profession job](https://orgo.space/docs/api-reference/professionjob/get-a-profession-job.md): Retrieves a single profession job by ID, including its name and associated profession industry. - [List profession jobs](https://orgo.space/docs/api-reference/professionjob/list-profession-jobs.md): Returns all profession jobs ordered alphabetically. Profession jobs represent specific job titles within a profession industry (e.g., "Software Engineer" under "Technology"). Read-only reference data used in user profiles. - [Bulk toggle profession statuses](https://orgo.space/docs/api-reference/professiontype/bulk-toggle-profession-statuses.md): Enables or disables all professions of a given type in bulk for the current tenant. The "action" path parameter must be "enable" or "disable", and "type" must be "custom" or "default". Processes in batches of 20 for performance. Restricted to tenant administrators. - [Create a profession industry](https://orgo.space/docs/api-reference/professiontype/create-a-profession-industry.md): Creates a new profession industry. The tenant is automatically set from the current user context. Custom professions are scoped to the creating tenant. - [Delete a profession industry](https://orgo.space/docs/api-reference/professiontype/delete-a-profession-industry.md): Permanently deletes a profession industry. Only custom (tenant-owned) professions can be deleted. Tenant isolation is enforced. Restricted to tenant administrators. - [Get a profession industry](https://orgo.space/docs/api-reference/professiontype/get-a-profession-industry.md): Retrieves a single profession industry by ID, including its name and parent hierarchy. - [List profession industries](https://orgo.space/docs/api-reference/professiontype/list-profession-industries.md): Returns all profession industries (sectors/fields). Supports "tenantSlug" query parameter to filter by tenant and include per-tenant disabled status. Use "all=true" to include disabled professions. Without a tenantSlug, returns all professions with isDisabled=false. - [Toggle profession status](https://orgo.space/docs/api-reference/professiontype/toggle-profession-status.md): Toggles a profession industry enabled/disabled status for the current tenant. Send "professionTypeId" in the request body. If the profession is currently enabled, it becomes disabled (and vice versa). Does not delete the profession; only controls tenant-level visibility. Restricted to tenant adminis… - [Update a profession industry](https://orgo.space/docs/api-reference/professiontype/update-a-profession-industry.md): Updates a profession industry name or properties. Restricted to tenant administrators. - [Create a profile status](https://orgo.space/docs/api-reference/profilestatus/create-a-profile-status.md): Creates a new profile status for categorizing member states. Requires HR_TENANT or FINANCIAL_TENANT permission. - [Delete a profile status](https://orgo.space/docs/api-reference/profilestatus/delete-a-profile-status.md): Permanently removes a profile status. Requires HR_TENANT or FINANCIAL_TENANT permission. - [Get a profile status](https://orgo.space/docs/api-reference/profilestatus/get-a-profile-status.md): Returns a single profile status by ID. Requires HR_TENANT or FINANCIAL_TENANT permission. - [List profile statuses](https://orgo.space/docs/api-reference/profilestatus/list-profile-statuses.md): Returns all profile statuses for the current tenant. Profile statuses are tenant-defined labels for member states (e.g. Active, Suspended, Alumni). Filtered by tenant automatically. - [Replace a profile status](https://orgo.space/docs/api-reference/profilestatus/replace-a-profile-status.md): Fully replaces a profile status. Requires HR_TENANT or FINANCIAL_TENANT permission. - [Update a profile status](https://orgo.space/docs/api-reference/profilestatus/update-a-profile-status.md): Partially updates a profile status. Requires HR_TENANT or FINANCIAL_TENANT permission. - [Create a profile tag](https://orgo.space/docs/api-reference/profiletag/create-a-profile-tag.md): Creates a new profile tag that can be assigned to users or contacts. Requires HR_TENANT permission. - [Delete a profile tag](https://orgo.space/docs/api-reference/profiletag/delete-a-profile-tag.md): Permanently removes a profile tag. Requires HR_TENANT permission. - [Get a profile tag](https://orgo.space/docs/api-reference/profiletag/get-a-profile-tag.md): Returns a single profile tag by ID. Requires HR_TENANT permission. - [List profile tags](https://orgo.space/docs/api-reference/profiletag/list-profile-tags.md): Returns all profile tags for the current tenant. Profile tags are HR-managed labels that can be attached to user or contact profiles for classification and filtering. Requires HR_TENANT permission. - [List profile tags for a contact](https://orgo.space/docs/api-reference/profiletag/list-profile-tags-for-a-contact.md): Returns all profile tags assigned to a specific contact. The contact is identified by ID in the URL path. Requires HR_TENANT permission. - [List profile tags for a user](https://orgo.space/docs/api-reference/profiletag/list-profile-tags-for-a-user.md): Returns all profile tags assigned to a specific user. The user is identified by ID in the URL path. Requires HR_TENANT permission. - [Update a profile tag](https://orgo.space/docs/api-reference/profiletag/update-a-profile-tag.md): Updates an existing profile tag. Requires HR_TENANT permission. - [Add a project member](https://orgo.space/docs/api-reference/project/add-a-project-member.md): Adds a user as a member of the project. Pass userId in the request body. Prevents duplicate memberships. The user must belong to the same tenant. Requires PROJECT_EDIT permission. - [Create a project](https://orgo.space/docs/api-reference/project/create-a-project.md): Creates a new project and automatically generates three default task statuses (To do, In Progress, Done). The current user is set as the owner if not explicitly specified. - [Delete a project](https://orgo.space/docs/api-reference/project/delete-a-project.md): Permanently deletes a project and all associated tasks, objectives, goals, and statuses. Requires PROJECT_EDIT permission (project owner or tenant admin). - [Get a project](https://orgo.space/docs/api-reference/project/get-a-project.md): Retrieves a single project by its identifier. Requires PROJECT_ACCESS permission (owner, member, or group-based access). - [List my projects](https://orgo.space/docs/api-reference/project/list-my-projects.md): Returns projects accessible to the current user. Admin/HR users see all tenant projects. Regular users see projects where they are owner, member, or have group-based access. Ordered by name ascending. - [List project members](https://orgo.space/docs/api-reference/project/list-project-members.md): Returns all members of a project ordered by date added (newest first). Requires PROJECT_ACCESS permission on the project. - [List projects](https://orgo.space/docs/api-reference/project/list-projects.md): Returns all projects the current user has access to within their tenant. Filtered automatically by tenant isolation via Doctrine extensions. - [Remove a project member](https://orgo.space/docs/api-reference/project/remove-a-project-member.md): Removes a user from the project membership list. The userId is specified in the URL path. Requires PROJECT_EDIT permission on the project. - [Update a project](https://orgo.space/docs/api-reference/project/update-a-project.md): Updates project properties such as name, description, and status. Requires PROJECT_ACCESS permission. - [Create a quiz answer](https://orgo.space/docs/api-reference/quizanswer/create-a-quiz-answer.md): Creates a new answer option for a quiz question. Set the question reference, answer text, correctness flag, and position. Multiple answers can be marked as correct for multiple-choice questions. Requires HR_TENANT permission. - [Delete a quiz answer](https://orgo.space/docs/api-reference/quizanswer/delete-a-quiz-answer.md): Permanently removes an answer option from a quiz question. Requires HR_TENANT permission. - [Get a quiz answer](https://orgo.space/docs/api-reference/quizanswer/get-a-quiz-answer.md): Returns a single quiz answer option with its text, correctness flag, and position within the question. - [List quiz answers](https://orgo.space/docs/api-reference/quizanswer/list-quiz-answers.md): Returns all quiz answer options. Filter by question to get answers for a specific quiz question. - [Update a quiz answer](https://orgo.space/docs/api-reference/quizanswer/update-a-quiz-answer.md): Updates answer text, correctness flag, or position within the question. Requires HR_TENANT permission. - [Delete a quiz attempt](https://orgo.space/docs/api-reference/quizattempt/delete-a-quiz-attempt.md): Permanently removes a quiz attempt record. Access controlled by a custom voter (typically HR_TENANT administrators). - [Get a quiz attempt](https://orgo.space/docs/api-reference/quizattempt/get-a-quiz-attempt.md): Returns a single quiz attempt with score, pass/fail status, time spent, and per-question answers. Access controlled by a custom voter (typically the attempt owner or HR_TENANT). - [List quiz attempts](https://orgo.space/docs/api-reference/quizattempt/list-quiz-attempts.md): Returns a paginated list of quiz attempts. Filter by quiz and/or user to get attempts for a specific quiz or student. - [Start a quiz attempt](https://orgo.space/docs/api-reference/quizattempt/start-a-quiz-attempt.md): Creates and immediately scores a quiz attempt. The user must be enrolled in the course containing the quiz. Automatically calculates the attempt number, computes the score server-side from the submitted answers, and marks the attempt as submitted. Pass the quiz reference and answers map in the reque… - [Submit a quiz attempt](https://orgo.space/docs/api-reference/quizattempt/submit-a-quiz-attempt.md): Updates a quiz attempt with final answers. Access controlled by a custom voter (typically the attempt owner). - [Create a quiz question](https://orgo.space/docs/api-reference/quizquestion/create-a-quiz-question.md): Creates a new question for a quiz. Set the quiz reference, question text, type (single/multiple choice), and position. Answer options are managed separately via the quiz answer endpoints. Requires HR_TENANT permission. - [Delete a quiz question](https://orgo.space/docs/api-reference/quizquestion/delete-a-quiz-question.md): Permanently removes a quiz question and its answer options. Existing quiz attempts referencing this question retain their stored answers. Requires HR_TENANT permission. - [Get a quiz question](https://orgo.space/docs/api-reference/quizquestion/get-a-quiz-question.md): Returns a single quiz question with its text, type, position, and associated answer options including correctness flags. - [List quiz questions](https://orgo.space/docs/api-reference/quizquestion/list-quiz-questions.md): Returns a paginated list of quiz questions. Filter by quiz to get questions for a specific course quiz. - [Update a quiz question](https://orgo.space/docs/api-reference/quizquestion/update-a-quiz-question.md): Updates question text, type, or position within the quiz. Requires HR_TENANT permission. - [Delete a referral](https://orgo.space/docs/api-reference/referral/delete-a-referral.md): Permanently removes a referral. Requires ADMIN_TENANT permission on the referral user. - [Get a referral](https://orgo.space/docs/api-reference/referral/get-a-referral.md): Returns a single referral with its current status and associated referral users (vouchers). - [List referrals](https://orgo.space/docs/api-reference/referral/list-referrals.md): Returns a paginated list of referrals within the tenant. Referrals track the vouch-based signup process where existing members vouch for prospective members. - [Update a referral](https://orgo.space/docs/api-reference/referral/update-a-referral.md): Updates a referral record. Requires ADMIN_TENANT permission. Can be used to change referral status or other administrative fields. - [Create a referral user](https://orgo.space/docs/api-reference/referraluser/create-a-referral-user.md): Creates a voucher record for a referral. The authenticated user is set as the voucher unless HR_LOCAL permission allows vouching on behalf of another user. Validates the referral is not already complete (STATUS_SUCCESS). Checks for duplicate vouchers, updates the referral status based on progress, a… - [Delete a referral user](https://orgo.space/docs/api-reference/referraluser/delete-a-referral-user.md): Removes a voucher record from a referral. Requires ADMIN_TENANT permission on the referral user. - [Get a referral user](https://orgo.space/docs/api-reference/referraluser/get-a-referral-user.md): Returns a single referral user record. Accessible by the vouching user themselves or users with HR_LOCAL permission on the user local center. - [List referral users](https://orgo.space/docs/api-reference/referraluser/list-referral-users.md): Returns a paginated list of referral user records (vouchers). Each record represents one user vouching for a prospective member. - [Create a region](https://orgo.space/docs/api-reference/region/create-a-region.md): Creates a new geographic region within the tenant. Requires ROLE_ADMIN_TENANT permission. - [Delete a region](https://orgo.space/docs/api-reference/region/delete-a-region.md): Permanently removes a region. Requires ROLE_ADMIN_TENANT permission. Ensure no local centers are still assigned to this region before deleting. - [Get a region](https://orgo.space/docs/api-reference/region/get-a-region.md): Returns a single region. Regions are geographic subdivisions used for organizing local centers and users within a tenant. - [List regions](https://orgo.space/docs/api-reference/region/list-regions.md): Returns all regions within the tenant. Returns up to 1000 items per page. Used for populating region dropdowns and geographic filtering. - [Update a region](https://orgo.space/docs/api-reference/region/update-a-region.md): Partially updates a region. Requires ROLE_ADMIN_TENANT permission. - [Approve a resignation request](https://orgo.space/docs/api-reference/resignationrequest/approve-a-resignation-request.md): Approves a pending resignation request. Sets status to APPROVED, records the approving user and resignation date. If the tenant setting autoCloseAccountsThatResign is enabled, the member is set to INACTIVE. Otherwise, the stayActive flag on the request determines the member status. Optionally reassi… - [Create a resignation request](https://orgo.space/docs/api-reference/resignationrequest/create-a-resignation-request.md): Creates a new resignation request with PENDING status. Sets the authenticated user as the requestedBy. If no target user is specified, the request is created for the authenticated user. Validates the request and sends a notification email to relevant administrators. - [Delete a resignation request](https://orgo.space/docs/api-reference/resignationrequest/delete-a-resignation-request.md): Permanently removes a resignation request. Allowed for ROLE_ADMIN_TENANT, or the user who created the request, or the user the request was created for. - [Get a resignation request](https://orgo.space/docs/api-reference/resignationrequest/get-a-resignation-request.md): Returns a single resignation request. Access is checked via the ResignationRequestService to verify the user has permission to view it (request owner, requested-by user, or HR admin). - [List resignation requests](https://orgo.space/docs/api-reference/resignationrequest/list-resignation-requests.md): Returns a paginated list of resignation requests ordered by creation date (newest first). Returns 30 items per page. - [Create a role](https://orgo.space/docs/api-reference/role/create-a-role.md): Creates a new role within the tenant. Roles define positions within the organizational structure and can be assigned to users within units. Restricted to tenant administrators. - [Delete a role](https://orgo.space/docs/api-reference/role/delete-a-role.md): Deletes a role from the tenant. Fails with an error if the role is currently assigned as a user type on any unit. Restricted to tenant administrators with tenant isolation enforced. - [Get a role](https://orgo.space/docs/api-reference/role/get-a-role.md): Retrieves a single role by ID. Tenant isolation is enforced: only roles belonging to the current user tenant are accessible. - [List roles](https://orgo.space/docs/api-reference/role/list-roles.md): Returns all roles for the current tenant, ordered by unit type. Results are cached when no filters are applied. Page size defaults to 1000. Supports standard API Platform filters. - [Update a role](https://orgo.space/docs/api-reference/role/update-a-role.md): Updates role properties such as name and permissions. Automatically recalculates permissions for users assigned to this role (up to 300 users inline; larger sets require async processing). Restricted to tenant administrators. - [Create a role group](https://orgo.space/docs/api-reference/rolegroup/create-a-role-group.md): Creates a new role group with optional role and industry associations. Send "roles" (array of role IDs) and/or "industries" (array of industry IDs) in the request body alongside standard fields. Roles must belong to the same tenant. Requires tenant admin permission. - [Delete a role group](https://orgo.space/docs/api-reference/rolegroup/delete-a-role-group.md): Deletes a role group and its associated role/industry assignments. Validates admin access before deletion. Requires HR_TENANT permission. - [Get a role group](https://orgo.space/docs/api-reference/rolegroup/get-a-role-group.md): Retrieves a single role group with full item-level detail including associated roles and industries. Requires HR_TENANT permission or active membership in the role group. - [List role groups](https://orgo.space/docs/api-reference/rolegroup/list-role-groups.md): Returns a paginated list of role groups within the current tenant. Role groups are special units that aggregate users by their organizational roles and optionally by industries. - [Update a role group](https://orgo.space/docs/api-reference/rolegroup/update-a-role-group.md): Updates a role group including its name, description, and associated roles and industries. Roles and industries are synced: new ones are added and removed ones are deleted. Send "roles" (array of role IDs) and/or "industries" (array of industry IDs) in the request body. Requires tenant admin permiss… - [Accept a subscription profile](https://orgo.space/docs/api-reference/subscriptionprofile/accept-a-subscription-profile.md): Marks a subscription profile as accepted by an administrator. Requires FINANCIAL_TENANT permission. Sets the acceptedBy user and acceptedDate. Validates access via the Stripe connected service before acceptance. - [Create a pending subscription](https://orgo.space/docs/api-reference/subscriptionprofile/create-a-pending-subscription.md): Creates a pending subscription for an authenticated user or external contact. Resolves the product, price, option, and local center from the request payload. For authenticated users, links the subscription to their account and checks identity verification status. For anonymous users, creates or retr… - [Create pending subscription for external contact](https://orgo.space/docs/api-reference/subscriptionprofile/create-pending-subscription-for-external-contact.md): Creates a pending subscription for an external (non-member) contact. Resolves the product, price, option, and local center from the request payload. Creates or retrieves a Contact record by email, sets identity verification status, and stores profile fields (organisation, social links, town). Return… - [Get a pending subscription](https://orgo.space/docs/api-reference/subscriptionprofile/get-a-pending-subscription.md): Retrieves a pending subscription ready for payment. Returns an error if the subscription is already active or canceled, or if identity verification has not been completed (status must be IDENTITY_VALIDATED). - [Get a subscription profile](https://orgo.space/docs/api-reference/subscriptionprofile/get-a-subscription-profile.md): Returns a single subscription profile. Requires FINANCIAL_LOCAL permission or ownership of the subscription profile. - [List subscription profiles](https://orgo.space/docs/api-reference/subscriptionprofile/list-subscription-profiles.md): Returns a paginated list of subscription profiles. Security is enforced via GetCollectionWithSecureFilterSubscriber: available to ROLE_USER (own subscriptions) and FINANCIAL_LOCAL (local center subscriptions). Returns 20 items per page. - [List subscriptions for external contact](https://orgo.space/docs/api-reference/subscriptionprofile/list-subscriptions-for-external-contact.md): Returns subscription profiles with additional contact-level detail for external (non-member) contacts. Includes subscription_contact serialization group. - [Create a support team](https://orgo.space/docs/api-reference/supportteam/create-a-support-team.md): Adds a user to the support team. Prevents duplicate entries for the same user. The user must belong to the same tenant. Requires tenant admin permission. - [Delete a support team](https://orgo.space/docs/api-reference/supportteam/delete-a-support-team.md): Removes a user from the support team. Automatically unassigns the user from all issue types and support ticket discussions they were assigned to. Requires tenant admin permission. - [Get a support team](https://orgo.space/docs/api-reference/supportteam/get-a-support-team.md): Retrieves a single support team member entry. Available to all authenticated users. - [List support teams](https://orgo.space/docs/api-reference/supportteam/list-support-teams.md): Returns all support team members for the current tenant. Returns up to 100 items per page. Available to all authenticated users. - [Update a support team](https://orgo.space/docs/api-reference/supportteam/update-a-support-team.md): Updates a support team member entry. Requires tenant admin permission and same-tenant access. - [Create a tag](https://orgo.space/docs/api-reference/tag/create-a-tag.md): Creates a new tag within the tenant. Requires ADMIN_TENANT permission. - [Delete a tag](https://orgo.space/docs/api-reference/tag/delete-a-tag.md): Permanently removes a tag. Requires ADMIN_TENANT permission. Entities previously associated with this tag will lose the association. - [Get a tag](https://orgo.space/docs/api-reference/tag/get-a-tag.md): Returns a single tag with its name and associated metadata. - [List tags](https://orgo.space/docs/api-reference/tag/list-tags.md): Returns a paginated list of tags within the tenant. Tags are used to categorize and label entities such as users, events, and discussions. - [Update a tag](https://orgo.space/docs/api-reference/tag/update-a-tag.md): Partially updates a tag. Requires ADMIN_TENANT permission. - [Add a comment to a task](https://orgo.space/docs/api-reference/task/add-a-comment-to-a-task.md): Posts a new top-level comment on a task. Supports HTML content (sanitized) and media attachments. Sends in-app notifications and emails to the task assignee and creator. Content is sanitized for UTF-8 encoding and XSS prevention. - [Create a task](https://orgo.space/docs/api-reference/task/create-a-task.md): Creates a new task within a project. Supports rich content via mainPost (HTML body with media attachments), subtasks/checklist items, and multiple assignees in a single request. Requires PROJECT_ACCESS permission on the target project. - [Delete a task](https://orgo.space/docs/api-reference/task/delete-a-task.md): Permanently deletes a task and its associated comments, history, and assignee records. Requires PROJECT_EDIT permission (project owner or tenant admin). - [Get a task](https://orgo.space/docs/api-reference/task/get-a-task.md): Retrieves a single task with all details including assignees, status, subtasks, and blocking dependencies. Requires PROJECT_ACCESS permission on the parent project. - [List my assigned tasks](https://orgo.space/docs/api-reference/task/list-my-assigned-tasks.md): Returns open tasks assigned to the current user across all active projects. Includes tasks assigned via both legacy assignee field and multi-assignee relationships. Ordered by due date (soonest first, nulls last), then by priority. Accepts an optional limit parameter (default 10, max 50). - [List task comments](https://orgo.space/docs/api-reference/task/list-task-comments.md): Returns comments on a task ordered by creation date ascending. Supports filtering by parent comment ID for threaded replies. Includes emoji reactions on each comment. Use exists[parent]=false to get only top-level comments. - [List tasks](https://orgo.space/docs/api-reference/task/list-tasks.md): Returns a paginated list of tasks within the current tenant. Filterable by project, status, assignee, and other standard API Platform filters. - [Reply to a task comment](https://orgo.space/docs/api-reference/task/reply-to-a-task-comment.md): Posts a reply to an existing task comment. Requires a parent comment ID in the request body. Sends an in-app notification to the parent comment author (unless replying to own comment). Supports media attachments. - [Update a task](https://orgo.space/docs/api-reference/task/update-a-task.md): Updates task properties including status, priority, assignees, due date, subtasks, blocking dependencies, and rich content. All changes are tracked in task history. Validates circular dependency chains and prevents closing tasks with incomplete blockers. Accessible by admin, project owner, assignee,… - [Assign user to a task](https://orgo.space/docs/api-reference/taskassignee/assign-user-to-a-task.md): Assigns a user to a task. Prevents duplicate assignments to the same task. The user must belong to the same tenant. Requires PROJECT_ACCESS permission on the parent project. - [Get a task assignee](https://orgo.space/docs/api-reference/taskassignee/get-a-task-assignee.md): Retrieves a single task assignee record including completion status. Requires PROJECT_ACCESS permission on the parent project. - [List task assignees](https://orgo.space/docs/api-reference/taskassignee/list-task-assignees.md): Returns all assignee records for tasks within the current tenant. Filterable by task or user via standard API Platform filters. - [Remove assignee from a task](https://orgo.space/docs/api-reference/taskassignee/remove-assignee-from-a-task.md): Removes a user assignment from a task. Requires PROJECT_EDIT permission on the parent project. - [Toggle task completion status](https://orgo.space/docs/api-reference/taskassignee/toggle-task-completion-status.md): Toggles the completion status of a task assignment for a specific assignee. Only the assigned user themselves or a tenant admin can toggle completion. Requires PROJECT_ACCESS permission on the parent project. - [Creates a TenantProfessionDisabled resource.](https://orgo.space/docs/api-reference/tenantprofessiondisabled/creates-a-tenantprofessiondisabled-resource.md): Creates a TenantProfessionDisabled resource. - [Removes the TenantProfessionDisabled resource.](https://orgo.space/docs/api-reference/tenantprofessiondisabled/removes-the-tenantprofessiondisabled-resource.md): Removes the TenantProfessionDisabled resource. - [Retrieves a TenantProfessionDisabled resource.](https://orgo.space/docs/api-reference/tenantprofessiondisabled/retrieves-a-tenantprofessiondisabled-resource.md): Retrieves a TenantProfessionDisabled resource. - [Retrieves the collection of TenantProfessionDisabled resources.](https://orgo.space/docs/api-reference/tenantprofessiondisabled/retrieves-the-collection-of-tenantprofessiondisabled-resources.md): Retrieves the collection of TenantProfessionDisabled resources. - [Updates the TenantProfessionDisabled resource.](https://orgo.space/docs/api-reference/tenantprofessiondisabled/updates-the-tenantprofessiondisabled-resource.md): Updates the TenantProfessionDisabled resource. - [Create a topic](https://orgo.space/docs/api-reference/topic/create-a-topic.md): Creates a new topic within the tenant. Available to authenticated users. - [Delete a topic](https://orgo.space/docs/api-reference/topic/delete-a-topic.md): Permanently removes a topic. Requires ADMIN_TENANT permission. Discussions associated with this topic will lose the association. - [Get a topic](https://orgo.space/docs/api-reference/topic/get-a-topic.md): Returns a single topic. Requires ADMIN_TENANT permission. - [List topics](https://orgo.space/docs/api-reference/topic/list-topics.md): Returns a paginated list of topics within the tenant. Topics are used to categorize discussions and content. - [Update a topic](https://orgo.space/docs/api-reference/topic/update-a-topic.md): Partially updates a topic. Requires ADMIN_TENANT permission. - [Create a topic type](https://orgo.space/docs/api-reference/topictype/create-a-topic-type.md): Creates a new topic type that can be used to categorize discussions within namespaces. - [Get a topic type](https://orgo.space/docs/api-reference/topictype/get-a-topic-type.md): Retrieves a single topic type by ID. Topic types define categories that can be assigned to discussions within a namespace. - [List topic types](https://orgo.space/docs/api-reference/topictype/list-topic-types.md): Returns all topic types for the current tenant, paginated at 100 items per page. Topic types are used to categorize discussions within namespaces. - [Get a town](https://orgo.space/docs/api-reference/town/get-a-town.md): Returns a single town with its name, county, country, and population data. - [List towns](https://orgo.space/docs/api-reference/town/list-towns.md): Returns a paginated list of towns ordered by population (descending), then name, then county name. Returns 20 items per page. Used for address selection and geographic filtering. Supports keyword search filtering. - [Assign a trainer to a training](https://orgo.space/docs/api-reference/trainingtrainer/assign-a-trainer-to-a-training.md): Creates a new trainer-to-training assignment, linking a user as a trainer for a specific training event. - [Get a training trainer](https://orgo.space/docs/api-reference/trainingtrainer/get-a-training-trainer.md): Retrieves a single training trainer assignment by its identifier. - [List training trainers](https://orgo.space/docs/api-reference/trainingtrainer/list-training-trainers.md): Returns all trainer assignments for trainings, paginated at 100 items per page. - [Remove a trainer from a training](https://orgo.space/docs/api-reference/trainingtrainer/remove-a-trainer-from-a-training.md): Removes a trainer assignment from a training. Only the training event owner or users with ADMIN_TENANT permission can perform this action. - [Create a training type](https://orgo.space/docs/api-reference/trainingtype/create-a-training-type.md): Creates a new training type. Requires ADMIN_TENANT permission. - [Delete a training type](https://orgo.space/docs/api-reference/trainingtype/delete-a-training-type.md): Deletes a training type. Requires ADMIN_TENANT permission and tenant ownership of the resource. - [Get a training type](https://orgo.space/docs/api-reference/trainingtype/get-a-training-type.md): Retrieves a single training type by its identifier. - [List training types](https://orgo.space/docs/api-reference/trainingtype/list-training-types.md): Returns all training types for the current tenant, paginated at 1000 items per page. Training types categorize trainings offered within the organization. - [Update a training type](https://orgo.space/docs/api-reference/trainingtype/update-a-training-type.md): Updates an existing training type. Requires ADMIN_TENANT permission and tenant ownership of the resource. - [Create a unit](https://orgo.space/docs/api-reference/unit/create-a-unit.md): Creates a new unit under the tenant. If the unit type is marked as local, the unit is automatically assigned to the current user local center. HR_TENANT can create any unit type; HR_LOCAL can create standard units only. Local centers and role groups require HR_TENANT permission. - [Delete a unit](https://orgo.space/docs/api-reference/unit/delete-a-unit.md): Deletes a unit and its associated data (roles, members, etc.). Requires unit admin access, verified through the unit permission hierarchy. - [Get a unit](https://orgo.space/docs/api-reference/unit/get-a-unit.md): Retrieves a single unit by ID. For groups, validates access based on group visibility and membership. For role groups, requires HR_TENANT permission or active membership in the role group. - [List tenant role groups](https://orgo.space/docs/api-reference/unit/list-tenant-role-groups.md): Returns all role groups configured for the current tenant. Role groups are special units that automatically aggregate users based on their assigned roles. - [List unit user roles](https://orgo.space/docs/api-reference/unit/list-unit-user-roles.md): Returns all active units for a given local center with their nested user role assignments. Requires the "localCenter" query parameter and HR_LOCAL permission on that local center. Each unit includes its members with full user details and role information. - [List units](https://orgo.space/docs/api-reference/unit/list-units.md): Returns a paginated list of units within the current tenant, ordered by user type. Default page size is 200. Supports standard API Platform filters. - [Record a group visit](https://orgo.space/docs/api-reference/unit/record-a-group-visit.md): Records that the current user visited a unit/group page. Used for tracking recently visited groups and activity analytics. No request body needed. - [Update a unit](https://orgo.space/docs/api-reference/unit/update-a-unit.md): Updates unit properties such as name, description, and settings. Requires unit admin access, verified through the unit permission hierarchy. - [Create a unit industry](https://orgo.space/docs/api-reference/unitindustry/create-a-unit-industry.md): Associates a profession industry with a unit, categorizing the unit under that industry. - [Delete a unit industry](https://orgo.space/docs/api-reference/unitindustry/delete-a-unit-industry.md): Removes an industry association from a unit. - [Get a unit industry](https://orgo.space/docs/api-reference/unitindustry/get-a-unit-industry.md): Retrieves a single unit-industry association by ID. - [List unit industries](https://orgo.space/docs/api-reference/unitindustry/list-unit-industries.md): Returns all industry associations for units within the current tenant. Unit industries link profession industries to specific units for categorization. - [Update a unit industry](https://orgo.space/docs/api-reference/unitindustry/update-a-unit-industry.md): Updates the properties of a unit-industry association. - [Create a unit role](https://orgo.space/docs/api-reference/unitrole/create-a-unit-role.md): Assigns a role to a unit, making that role available for user assignments within the unit. - [Delete a unit role](https://orgo.space/docs/api-reference/unitrole/delete-a-unit-role.md): Removes a role assignment from a unit. Users currently holding this role within the unit may lose their assignment. - [Get a unit role](https://orgo.space/docs/api-reference/unitrole/get-a-unit-role.md): Retrieves a single unit-role assignment by ID, including the associated unit and role details. - [List unit roles](https://orgo.space/docs/api-reference/unitrole/list-unit-roles.md): Returns all role assignments within units for the current tenant. Unit roles define which organizational roles are available within a specific unit. - [Update a unit role](https://orgo.space/docs/api-reference/unitrole/update-a-unit-role.md): Updates the properties of a unit-role assignment. - [Create a unit type](https://orgo.space/docs/api-reference/unittype/create-a-unit-type.md): Creates a new unit type for the tenant. Unit types define the structure of the organizational hierarchy. Restricted to tenant administrators. - [Delete a unit type](https://orgo.space/docs/api-reference/unittype/delete-a-unit-type.md): Deletes a unit type. Ensure no units are currently using this type before deletion. Tenant isolation is enforced. Restricted to tenant administrators. - [Get a unit type](https://orgo.space/docs/api-reference/unittype/get-a-unit-type.md): Retrieves a single unit type by ID, including its configuration such as whether it is local-scoped. - [List unit types](https://orgo.space/docs/api-reference/unittype/list-unit-types.md): Returns all unit types for the current tenant, ordered by discriminator. Unit types define the categories of organizational units (e.g., committee, department, chapter). Page size defaults to 1000. - [Update a unit type](https://orgo.space/docs/api-reference/unittype/update-a-unit-type.md): Updates unit type properties such as name and local scope setting. Tenant isolation is enforced. Restricted to tenant administrators. - [Change user email](https://orgo.space/docs/api-reference/user/change-user-email.md): Initiates an email change for a user. Admins (ADMIN_LOCAL or HR_TENANT) can change the email immediately; non-admin users trigger a confirmation email to the current address. Validates that the new email is not already registered. The change is logged for audit purposes. Accessible by the user thems… - [Change user password](https://orgo.space/docs/api-reference/user/change-user-password.md): Changes the password for a user. Accepts newPassword and optionally currentPassword for verification. If currentPassword is omitted (OTP login flow), the password is set directly. Supports skipPasswordSetup to clear the forcePasswordReset flag without changing the password. Password changes propagat… - [Delete a user](https://orgo.space/docs/api-reference/user/delete-a-user.md): Permanently deletes a user account. Restricted to ROLE_SUPER_ADMIN only. This action is irreversible and removes all associated data. - [Export users as CSV](https://orgo.space/docs/api-reference/user/export-users-as-csv.md): Exports users as a CSV file (up to 500 per page). Requires HR_TENANT permission for full export, or HR_LOCAL with a localCenter filter parameter for scoped export. Logs the export action for audit. Supports the same filters as the standard user list endpoint. Returns text/csv content type. - [Get a user](https://orgo.space/docs/api-reference/user/get-a-user.md): Returns the public profile of a user within the same tenant. Enforces profile privacy settings at both user and tenant level. Deleted users return an error, and inactive users are only visible to HR admins. When tenant-level profile privatization is enabled, only users sharing common units (groups,… - [Get current authenticated user](https://orgo.space/docs/api-reference/user/get-current-authenticated-user.md): Returns the full profile of the currently authenticated user including private fields, roles, and tenant settings. Refreshes the user's permissions on each call (unless impersonating). Auto-detects and sets the user's timezone from the HTTP_USER_TIMEZONE header if not already set. Also logs the acce… - [Get user identity documents](https://orgo.space/docs/api-reference/user/get-user-identity-documents.md): Returns the user profile with identity document information (adhesion identity data). Accessible only by the user themselves or users with HR_TENANT permission. - [Get user map clusters](https://orgo.space/docs/api-reference/user/get-user-map-clusters.md): Returns clustered user locations for interactive map display. Requires viewport bounds (north, south, east, west) and optional zoom level. Cluster precision adjusts automatically based on zoom (from 111m at street level to 1110km at world view). Supports filters: status, unit, professionIndustry, lo… - [Get user personal drive files](https://orgo.space/docs/api-reference/user/get-user-personal-drive-files.md): Returns files and folders from a user's personal drive. Supports an optional parent query parameter to navigate subdirectories. Access is controlled by DrivePermissionService -- users can view their own drive, and admins can view drives within their scope. Cross-tenant access is denied. - [List user recommendations](https://orgo.space/docs/api-reference/user/list-user-recommendations.md): Returns a paginated list of recommended users based on a scoring algorithm (cached for 48 hours). Recommendations are scoped by tenant visibility settings: general unit access or local center access. Returns up to 50 total recommendations with a recommendationScore for each. Supports page and itemsP… - [List users](https://orgo.space/docs/api-reference/user/list-users.md): Returns a paginated list of users in the current tenant (50 per page). Supports standard API Platform filters including keyword search, localCenter, status, professionIndustry, townCurrent, country, permissions, feeType, customField, and ordering. Collection-level tenant isolation is enforced via Do… - [List users for map display](https://orgo.space/docs/api-reference/user/list-users-for-map-display.md): Returns a paginated list of users with map coordinates for list+map views. Includes lightweight user data (name, photo, profession, location) optimized for performance. Respects privacy settings (town privacy, profile privatization) and hides minors unless user has HR permissions. Supports the same… - [List users with fee prices](https://orgo.space/docs/api-reference/user/list-users-with-fee-prices.md): Returns a paginated list of users with fee-related data (fee type, payment status, valid fee date). Intended for financial administration views to review membership fee statuses. - [List users with profession data](https://orgo.space/docs/api-reference/user/list-users-with-profession-data.md): Returns a paginated list of users with profession-specific serialization groups (industry, job title, organisation). Useful for member directories filtered by professional attributes. - [Register a child account](https://orgo.space/docs/api-reference/user/register-a-child-account.md): Creates a child user account linked to the authenticated parent user. Automatically creates or reuses the parent's FamilyEntity and adds both parent and child as FamilyMembers. If the tenant has waitlist enabled and the child's local center qualifies, the child is placed on the waitlist. Supports op… - [Register a member as admin](https://orgo.space/docs/api-reference/user/register-a-member-as-admin.md): Creates a new user account on behalf of an admin. Requires HR_LOCAL or higher. Sets forcePasswordReset, assigns the user to the admin's local center (if not HR_TENANT), validates email uniqueness, and sends a welcome email with login link. Supports optional rawUserRoles and userType in the payload.… - [Register a new user](https://orgo.space/docs/api-reference/user/register-a-new-user.md): Public self-registration endpoint. Creates a new user in the specified tenant (via tenant IRI or tenantSlug). Includes anti-spam protection (honeypot field, form completion time check). Supports optional parentOptIn, volunteeringOptIn, userTypeSlug for role assignment, referrerId for referral tracki… - [Update a user as admin](https://orgo.space/docs/api-reference/user/update-a-user-as-admin.md): Updates a user profile with admin-level fields (status, permissions, admin-only attributes). Requires HR_LOCAL permission for the user's local center or parent-level access. Also persists custom field values submitted in the request payload. Permission validation for customPermissions is enforced vi… - [Update own profile](https://orgo.space/docs/api-reference/user/update-own-profile.md): Allows a user to update their own profile fields (name, bio, contact info, etc.). The authenticated user can only edit their own profile -- attempting to edit another user's profile returns a 403 error. Also persists custom field values included in the request. - [Update user roles](https://orgo.space/docs/api-reference/user/update-user-roles.md): Bulk-updates all roles for a user. Accepts rawUserRoles (array of roleId_unitId strings) and optional userType. Compares against existing active roles to determine additions and removals. Requires HR_LOCAL or higher permission; tenant setting allowLocalAdminsToModifyUserPermissions can restrict loca… - [Create an API token](https://orgo.space/docs/api-reference/userapitoken/create-an-api-token.md): Generates a new API token for the authenticated admin user. Accepts optional name, expiresAt, and isReadOnly fields in the request body. The raw token value is returned only once in the response and cannot be retrieved later. Requires ADMIN_TENANT permission. - [Delete an API token](https://orgo.space/docs/api-reference/userapitoken/delete-an-api-token.md): Permanently deletes an API token. Users can only delete their own tokens. Requires ADMIN_TENANT permission. - [List API tokens](https://orgo.space/docs/api-reference/userapitoken/list-api-tokens.md): Returns all API tokens for the current tenant. Requires ADMIN_TENANT permission. Token secrets are not included in the response. - [Revoke an API token](https://orgo.space/docs/api-reference/userapitoken/revoke-an-api-token.md): Revokes an active API token, preventing further API access. Users can only revoke their own tokens. Requires ADMIN_TENANT permission. - [Accept or reject a connection request](https://orgo.space/docs/api-reference/userconnection/accept-or-reject-a-connection-request.md): Updates a pending connection request status. Only the recipient can accept or reject. The connection must be in pending state. - [Get a connection](https://orgo.space/docs/api-reference/userconnection/get-a-connection.md): Retrieves a single connection record. Only the requester or recipient of the connection can view it. - [Get connection status with a user](https://orgo.space/docs/api-reference/userconnection/get-connection-status-with-a-user.md): Returns the connection status between the current user and the target user. Possible statuses: self (same user), connected, pending_sent, pending_received, cooldown (recently rejected, includes cooldownEndDate), or none. - [Get total connection count](https://orgo.space/docs/api-reference/userconnection/get-total-connection-count.md): Returns the total number of accepted connections for the current user. - [List accepted connections](https://orgo.space/docs/api-reference/userconnection/list-accepted-connections.md): Returns all accepted (active) connections for the current user. - [List pending connection requests](https://orgo.space/docs/api-reference/userconnection/list-pending-connection-requests.md): Returns pending connection requests received by the current user that are awaiting a response. - [List sent connection requests](https://orgo.space/docs/api-reference/userconnection/list-sent-connection-requests.md): Returns connection requests sent by the current user that are still pending a response from the recipient. - [List user connections](https://orgo.space/docs/api-reference/userconnection/list-user-connections.md): Returns a paginated list of user connections for the current user, including pending, accepted, and rejected connections. Paginated at 30 items per page. - [Remove a connection](https://orgo.space/docs/api-reference/userconnection/remove-a-connection.md): Removes a connection. For accepted connections, fully deletes the record (disconnect). For pending connections, marks as rejected which triggers a cooldown period preventing immediate re-requests. Either party can perform this action. - [Send a connection request](https://orgo.space/docs/api-reference/userconnection/send-a-connection-request.md): Sends a connection request from the authenticated user to a target user. Creates a connection with pending status. The recipient must accept before the connection is established. - [Create a user list](https://orgo.space/docs/api-reference/userlist/create-a-user-list.md): Creates a new user list. Tenant and owner are set server-side from the authenticated user. Lists can be static (members added manually via user list links) or dynamic (members computed from criteria and scope). Requires HR_TENANT or COMMUNICATION_TENANT permission. - [Delete a user list](https://orgo.space/docs/api-reference/userlist/delete-a-user-list.md): Deletes a user list and all its member links. Requires HR_TENANT or COMMUNICATION_TENANT permission. - [Get a user list](https://orgo.space/docs/api-reference/userlist/get-a-user-list.md): Retrieves a single user list by its identifier, including its type, criteria, and scope configuration. Requires HR_TENANT or COMMUNICATION_TENANT permission. - [Get members from a user list](https://orgo.space/docs/api-reference/userlist/get-members-from-a-user-list.md): Returns the members of a user list. The type parameter controls filtering: omit for subscribed only, "all" for all members, "not-subscribed" for non-subscribed. For dynamic lists, members are computed from criteria and scope (members only, contacts only, or both). For static lists, returns user list… - [List user lists](https://orgo.space/docs/api-reference/userlist/list-user-lists.md): Returns all user lists for the current tenant. User lists can be static (manually curated) or dynamic (criteria-based). Requires HR_TENANT or COMMUNICATION_TENANT permission. - [Update a user list](https://orgo.space/docs/api-reference/userlist/update-a-user-list.md): Updates user list properties such as name, criteria, and scope. Requires HR_TENANT or COMMUNICATION_TENANT permission. - [Create a user list link](https://orgo.space/docs/api-reference/userlistlink/create-a-user-list-link.md): Adds a user or contact to a static user list by creating a link record. The link must reference either a user or a contact. Requires ADMIN_TENANT permission. - [Delete a user list link](https://orgo.space/docs/api-reference/userlistlink/delete-a-user-list-link.md): Removes a user or contact from a static user list by deleting the link record. Requires ADMIN_TENANT permission. - [Get a user list link](https://orgo.space/docs/api-reference/userlistlink/get-a-user-list-link.md): Retrieves a single user list link by its identifier, showing the associated user list and linked user or contact. Requires ADMIN_TENANT permission. - [List user list links](https://orgo.space/docs/api-reference/userlistlink/list-user-list-links.md): Returns all user list links for the current tenant. Each link connects a user or contact to a static user list. Requires ADMIN_TENANT permission. - [Creates a UserOption resource.](https://orgo.space/docs/api-reference/useroption/creates-a-useroption-resource.md): Creates a UserOption resource. - [Removes the UserOption resource.](https://orgo.space/docs/api-reference/useroption/removes-the-useroption-resource.md): Removes the UserOption resource. - [Retrieves a UserOption resource.](https://orgo.space/docs/api-reference/useroption/retrieves-a-useroption-resource.md): Retrieves a UserOption resource. - [Retrieves the collection of UserOption resources.](https://orgo.space/docs/api-reference/useroption/retrieves-the-collection-of-useroption-resources.md): Retrieves the collection of UserOption resources. - [Updates the UserOption resource.](https://orgo.space/docs/api-reference/useroption/updates-the-useroption-resource.md): Updates the UserOption resource. - [Create a user role](https://orgo.space/docs/api-reference/userrole/create-a-user-role.md): Assigns a user to a unit with a specific role. Permission checks vary by unit type: RoleGroup requires HR_TENANT or group admin, Group requires group admin, LocalCenter requires HR_LOCAL. Automatically creates a UserUnitRoleGroup record and a follow relationship for the user. Admin flag assignment r… - [Delete a user role](https://orgo.space/docs/api-reference/userrole/delete-a-user-role.md): Removes a user role assignment. Requires HR_LOCAL permission on the user local center (for unit or user-type roles) or HR_TENANT permission. - [Get a user role](https://orgo.space/docs/api-reference/userrole/get-a-user-role.md): Retrieves a single user role assignment by its identifier, including the associated user, unit, and role details. - [Join a group via invite link](https://orgo.space/docs/api-reference/userrole/join-a-group-via-invite-link.md): Allows the authenticated user to join a group via an invite link. The group must be marked as joinable and belong to the same tenant. Prevents duplicate membership. Sets the user as a regular member (no admin or role assignment). - [List members for org chart](https://orgo.space/docs/api-reference/userrole/list-members-for-org-chart.md): Returns user role assignments formatted for organizational chart display, paginated at 100 items per page. Uses a specialized serialization group optimized for chart rendering. - [List user roles](https://orgo.space/docs/api-reference/userrole/list-user-roles.md): Returns a paginated list of user role assignments, ordered by end date descending. Paginated at 20 items per page. - [Update a user role](https://orgo.space/docs/api-reference/userrole/update-a-user-role.md): Updates a user role assignment (e.g., change role, set end date, toggle admin flag). Requires HR_LOCAL permission on the user local center (for unit or user-type roles) or HR_TENANT permission. - [Export user role groups as CSV](https://orgo.space/docs/api-reference/userunitrolegroup/export-user-role-groups-as-csv.md): Exports user-unit-role-group data as a CSV file. Requires the unit query parameter specifying a role group. For non-HR_TENANT users, the role group must belong to a local center where the user has HR_LOCAL permission. Logs the export action for audit purposes. Maximum 500 records per page. - [Get a user unit role group](https://orgo.space/docs/api-reference/userunitrolegroup/get-a-user-unit-role-group.md): Retrieves a single user-unit-role-group membership record by its identifier, including the associated user and unit details. - [List user unit role groups](https://orgo.space/docs/api-reference/userunitrolegroup/list-user-unit-role-groups.md): Returns a paginated list of user-unit-role-group membership records, showing which users belong to which units. Paginated at 50 items per page. - [Create a vote](https://orgo.space/docs/api-reference/vote/create-a-vote.md): Creates a new vote question within a vote collection. Automatically generates two default options. The vote collection must be in editable state (draft). Requires ownership of the vote collection or HR_LOCAL permission. - [Delete a vote](https://orgo.space/docs/api-reference/vote/delete-a-vote.md): Deletes a vote question from its collection. The vote collection must be in editable state (not open or locked). Requires HR_LOCAL permission. Event-attached votes can only be deleted by the event owner. - [Get a vote](https://orgo.space/docs/api-reference/vote/get-a-vote.md): Retrieves a vote with computed results including per-option totals, percentages, total voted, and total eligible voters. Subscribes the client to real-time Mercure updates for live result streaming. - [Update a vote](https://orgo.space/docs/api-reference/vote/update-a-vote.md): Updates a vote question. The vote must be in editable state (not locked). For non-general votes, the current user is automatically added as an eligible voter if not already present. Requires ownership or HR_LOCAL permission. - [Create a vote box](https://orgo.space/docs/api-reference/votebox/create-a-vote-box.md): Submits ballot answers for all questions in a vote collection. All questions must be answered in a single request. For each question, the value is either a single option id (single-choice) or an array of option ids (multiple-choice). Validates voter eligibility, prevents double voting, and checks vo… - [Get a vote box](https://orgo.space/docs/api-reference/votebox/get-a-vote-box.md): Retrieves a single vote box entry containing the recorded answer for a vote question. - [Archive a vote collection](https://orgo.space/docs/api-reference/votecollection/archive-a-vote-collection.md): Archives a closed vote collection to remove it from active lists. The collection must not be in editable state (must be closed first). Cannot archive an already archived collection. - [Check for active live votes](https://orgo.space/docs/api-reference/votecollection/check-for-active-live-votes.md): Returns a boolean indicating whether there are any currently active (open) vote collections the authenticated user is eligible to participate in. Used to show live voting indicators in the UI. - [Clone a vote collection](https://orgo.space/docs/api-reference/votecollection/clone-a-vote-collection.md): Creates a complete copy of the vote collection including all questions, options, and eligible voters. The clone starts as a draft with new dates (now to +1 hour). Vote results are not copied. For event-attached votes, only the event owner can clone. - [Close a vote collection](https://orgo.space/docs/api-reference/votecollection/close-a-vote-collection.md): Manually closes an open vote collection, preventing any further votes from being cast. The collection must be published and currently open (not draft, not already closed). Publishes a real-time Mercure update. - [Create a vote collection](https://orgo.space/docs/api-reference/votecollection/create-a-vote-collection.md): Creates a new vote collection with a default question and two answer options. Validates event/unit/date constraints. For private vote collections, the creator is automatically added as an eligible voter. Requires HR_LOCAL permission. - [Delete a vote collection](https://orgo.space/docs/api-reference/votecollection/delete-a-vote-collection.md): Permanently deletes a vote collection and all associated votes, options, and ballot records. Requires ownership or HR_LOCAL permission. - [Export vote collection results](https://orgo.space/docs/api-reference/votecollection/export-vote-collection-results.md): Downloads vote results as a CSV file containing vote questions, answers, and cryptographic seals for audit purposes. The vote collection must be closed before export is allowed. Returns a file attachment response. - [Get a vote collection](https://orgo.space/docs/api-reference/votecollection/get-a-vote-collection.md): Retrieves a vote collection with computed results for all questions including per-option totals and percentages, total voted, and total eligible counts. Subscribes the client to real-time Mercure updates for live result streaming. - [List vote collections](https://orgo.space/docs/api-reference/votecollection/list-vote-collections.md): Returns a paginated list of vote collections for the current tenant, ordered by creation date descending. Filterable by standard API Platform filters. - [Publish a vote collection](https://orgo.space/docs/api-reference/votecollection/publish-a-vote-collection.md): Transitions a vote collection from draft to published state. Validates event/unit/date constraints before publishing. Sends notification emails to eligible voters. Publishes a real-time Mercure update. The collection must be in editable (draft) state. - [Update a vote collection](https://orgo.space/docs/api-reference/votecollection/update-a-vote-collection.md): Updates properties of a vote collection such as name, dates, and settings. Requires ownership or HR_LOCAL permission. - [Create a vote option](https://orgo.space/docs/api-reference/voteoption/create-a-vote-option.md): Adds a new answer option to a vote question. The vote must be in editable state. Publishes a real-time Mercure update to all connected clients. Requires ownership of the vote collection or HR_LOCAL permission. - [Delete a vote option](https://orgo.space/docs/api-reference/voteoption/delete-a-vote-option.md): Removes an answer option from a vote question. The vote must be in editable state (not open or locked). Publishes a real-time Mercure update. Requires ownership or HR_LOCAL permission. - [Get a vote option](https://orgo.space/docs/api-reference/voteoption/get-a-vote-option.md): Retrieves a single vote option by its identifier. - [Update a vote option](https://orgo.space/docs/api-reference/voteoption/update-a-vote-option.md): Updates the title or other properties of a vote option. The vote must be in editable state. Publishes a real-time Mercure update. Requires ownership of the vote collection or HR_LOCAL permission. - [Cast a vote as user](https://orgo.space/docs/api-reference/voteuser/cast-a-vote-as-user.md): Adds a user as an eligible voter in a private vote collection. Prevents duplicate entries. The vote collection must be in editable state. Only the vote collection owner can add voters. - [Get a vote user](https://orgo.space/docs/api-reference/voteuser/get-a-vote-user.md): Retrieves details of a single vote user entry including their voting status and alias. - [List vote users](https://orgo.space/docs/api-reference/voteuser/list-vote-users.md): Returns a paginated list of users eligible to vote in a vote collection, including their voting status. Returns up to 100 items per page. - [Remove a vote user](https://orgo.space/docs/api-reference/voteuser/remove-a-vote-user.md): Removes a user from the eligible voters list. Cannot remove users who have already cast their vote. The vote collection must be in editable state. Only the vote collection owner can remove voters. - [Update vote user alias](https://orgo.space/docs/api-reference/voteuser/update-vote-user-alias.md): Updates the display alias for a vote user (used for anonymous voting). Cannot be changed after the user has already voted. Only the vote collection owner can modify aliases. - [Bulk approve waitlist entries](https://orgo.space/docs/api-reference/waitlistentry/bulk-approve-waitlist-entries.md): Approve multiple waitlist entries at once - [Bulk change priority](https://orgo.space/docs/api-reference/waitlistentry/bulk-change-priority.md): Change priority for multiple waitlist entries at once - [Bulk reject waitlist entries](https://orgo.space/docs/api-reference/waitlistentry/bulk-reject-waitlist-entries.md): Reject multiple waitlist entries at once with a reason - [Bulk send notifications](https://orgo.space/docs/api-reference/waitlistentry/bulk-send-notifications.md): Send notifications to multiple waitlist entries at once - [Delete a waitlist entry](https://orgo.space/docs/api-reference/waitlistentry/delete-a-waitlist-entry.md): Deletes a waitlist entry and recalculates queue positions for remaining entries. Users can delete their own entry only if it is in "waiting" status. HR_LOCAL admins can delete any entry. Positions are recalculated within a transaction to ensure consistency. - [Get a waitlist entry](https://orgo.space/docs/api-reference/waitlistentry/get-a-waitlist-entry.md): Retrieves a single waitlist entry with full detail including queue position, status, priority, and estimated processing date. Requires HR_LOCAL permission or parent access to the entry user. - [Get my waitlist status](https://orgo.space/docs/api-reference/waitlistentry/get-my-waitlist-status.md): Get current user waitlist status and position - [Get public waitlist status](https://orgo.space/docs/api-reference/waitlistentry/get-public-waitlist-status.md): Returns the public-facing status of a waitlist entry by UUID. Does not require authentication. Intended for shareable status links. - [Get waitlist statistics](https://orgo.space/docs/api-reference/waitlistentry/get-waitlist-statistics.md): Returns aggregate queue metrics for a specific local center including total waiting, total approved, average wait time, and processing velocity. Requires the localCenter query parameter. Requires HR_LOCAL permission. - [Join a waitlist](https://orgo.space/docs/api-reference/waitlistentry/join-a-waitlist.md): Creates a waitlist entry for the authenticated user at a specified local center. Validates eligibility (not already on the waitlist, meets local center requirements). The user is automatically assigned a queue position and priority based on tenant waitlist settings. - [List waitlist entries](https://orgo.space/docs/api-reference/waitlistentry/list-waitlist-entries.md): Returns a paginated list of waitlist entries for the current tenant. Supports pagination (default 30, max 100 items per page). Filterable by local center, status, and priority via standard API Platform filters. - [Update a waitlist entry](https://orgo.space/docs/api-reference/waitlistentry/update-a-waitlist-entry.md): Admin-only update of a waitlist entry. Allows changing status, priority, notes, and estimated processing date. Uses admin-specific write groups. Requires HR_LOCAL permission on the entry. - [Withdraw from waitlist](https://orgo.space/docs/api-reference/waitlistentry/withdraw-from-waitlist.md): User withdraws their own waitlist entry - [Create a waitlist priority setting](https://orgo.space/docs/api-reference/waitlistprioritysetting/create-a-waitlist-priority-setting.md): Creates a new waitlist priority setting for a user type. The user type must be marked as isUserType and belong to the same tenant. Only one priority setting per user type is allowed. Requires HR_TENANT permission. - [Delete a waitlist priority setting](https://orgo.space/docs/api-reference/waitlistprioritysetting/delete-a-waitlist-priority-setting.md): Deletes a waitlist priority setting. Requires ADMIN_TENANT permission. - [Get a waitlist priority setting](https://orgo.space/docs/api-reference/waitlistprioritysetting/get-a-waitlist-priority-setting.md): Retrieves a single waitlist priority setting by its identifier. Requires HR_TENANT permission. - [List waitlist priority settings](https://orgo.space/docs/api-reference/waitlistprioritysetting/list-waitlist-priority-settings.md): Returns all waitlist priority settings for the current tenant. Defines how different user types are prioritized in event waitlists. Any authenticated user can view settings. - [Update a waitlist priority setting](https://orgo.space/docs/api-reference/waitlistprioritysetting/update-a-waitlist-priority-setting.md): Updates the priority value for a waitlist priority setting. Enforces tenant isolation. Requires HR_TENANT permission. - [Create a webhook subscription](https://orgo.space/docs/api-reference/webhooksubscription/create-a-webhook-subscription.md): Creates a new webhook subscription or updates an existing one if a subscription with the same URL already exists for the tenant. Accepts url (required), eventTypes, name, secret, isActive, maxRetries, timeoutSeconds, description, headers, and metadata. Validates all fields before persisting. Require… - [Delete a webhook subscription](https://orgo.space/docs/api-reference/webhooksubscription/delete-a-webhook-subscription.md): Permanently deletes a webhook subscription and its delivery logs. Requires ADMIN_TENANT permission. - [Get a webhook subscription](https://orgo.space/docs/api-reference/webhooksubscription/get-a-webhook-subscription.md): Retrieves a single webhook subscription with full detail including event types, headers, metadata, and configuration. Requires ADMIN_TENANT permission. - [Get webhook delivery logs](https://orgo.space/docs/api-reference/webhooksubscription/get-webhook-delivery-logs.md): Returns recent delivery attempt logs for a webhook subscription, including request/response details and status codes. Accepts an optional limit query parameter (default 100, max 500). Requires ADMIN_TENANT permission. - [List webhook subscriptions](https://orgo.space/docs/api-reference/webhooksubscription/list-webhook-subscriptions.md): Returns a paginated list of webhook subscriptions for the current tenant, 25 items per page. - [Test a webhook subscription](https://orgo.space/docs/api-reference/webhooksubscription/test-a-webhook-subscription.md): Sends a test payload to the webhook URL and returns the delivery result including HTTP status code, response body, and timing. Useful for verifying the endpoint is reachable and correctly configured. Requires ADMIN_TENANT permission. - [Update a webhook subscription](https://orgo.space/docs/api-reference/webhooksubscription/update-a-webhook-subscription.md): Updates an existing webhook subscription properties such as event types, URL, secret, retry settings, and active status. Requires ADMIN_TENANT permission. - [Create a newsletter widget](https://orgo.space/docs/api-reference/widget/create-a-newsletter-widget.md): Creates a new newsletter subscription widget. Applies default newsletter settings if none provided. If this is the first newsletter widget for the tenant, it is automatically set as the default in tenant settings. Requires COMMUNICATION_TENANT or EVENT_TENANT permission. - [Create a widget](https://orgo.space/docs/api-reference/widget/create-a-widget.md): Creates a new payment widget linked to a product. The product is required and must belong to the same tenant. Automatically sets the tenant from the authenticated user. Requires FINANCIAL_TENANT permission. - [Delete a newsletter widget](https://orgo.space/docs/api-reference/widget/delete-a-newsletter-widget.md): Deletes a newsletter widget. Cannot delete the last remaining newsletter widget for the tenant. If deleting the default widget, another widget is automatically promoted as the new default. Requires COMMUNICATION_TENANT or EVENT_TENANT permission. - [Delete a widget](https://orgo.space/docs/api-reference/widget/delete-a-widget.md): Deletes a payment widget. Enforces tenant isolation. Requires FINANCIAL_TENANT permission. - [Get a newsletter widget by UUID](https://orgo.space/docs/api-reference/widget/get-a-newsletter-widget-by-uuid.md): Retrieves a newsletter widget by its UUID for rendering on external or public pages. No authentication required. - [Get a public widget](https://orgo.space/docs/api-reference/widget/get-a-public-widget.md): Retrieves a widget by its public UUID for embedding on external websites. Only active widgets are accessible. No authentication required. - [Get a widget](https://orgo.space/docs/api-reference/widget/get-a-widget.md): Retrieves a single payment widget by its identifier. Requires FINANCIAL_TENANT permission. - [List newsletter widget subscribers](https://orgo.space/docs/api-reference/widget/list-newsletter-widget-subscribers.md): Returns a paginated list of subscribers for a newsletter widget, including linked user or contact information. Supports page and itemsPerPage query parameters (max 100 per page). Only available for widgets with type "newsletter". Requires COMMUNICATION_TENANT or EVENT_TENANT permission. - [List newsletter widgets](https://orgo.space/docs/api-reference/widget/list-newsletter-widgets.md): Returns all newsletter widgets for the current tenant with subscriber counts pre-computed in a single query. Ordered by creation date descending. Requires COMMUNICATION_TENANT or EVENT_TENANT permission. - [List widgets](https://orgo.space/docs/api-reference/widget/list-widgets.md): Returns a paginated list of payment widgets for the current tenant, 30 items per page. Requires FINANCIAL_TENANT permission. - [Update a newsletter widget](https://orgo.space/docs/api-reference/widget/update-a-newsletter-widget.md): Updates a newsletter widget configuration such as name, settings, and styling. The widget must belong to a tenant. Requires COMMUNICATION_TENANT or EVENT_TENANT permission. - [Update a widget](https://orgo.space/docs/api-reference/widget/update-a-widget.md): Updates a payment widget configuration. Validates tenant isolation and that any referenced product belongs to the same tenant. Requires FINANCIAL_TENANT permission. - [Activate a workflow](https://orgo.space/docs/api-reference/workflow/activate-a-workflow.md): Activates a workflow so it will be triggered by matching events. The workflow must have at least one trigger and one action configured. Requires tenant admin permission. - [Create a workflow](https://orgo.space/docs/api-reference/workflow/create-a-workflow.md): Creates a new automation workflow with triggers, condition groups, and actions in a single request. The workflow starts in inactive state. Triggers define which events activate the workflow, conditions filter eligibility, and actions define what happens (e.g., send email). Requires tenant admin perm… - [Deactivate a workflow](https://orgo.space/docs/api-reference/workflow/deactivate-a-workflow.md): Deactivates a workflow so it will no longer be triggered by events. The workflow configuration is preserved and can be reactivated later. Requires tenant admin permission. - [Delete a workflow](https://orgo.space/docs/api-reference/workflow/delete-a-workflow.md): Permanently deletes a workflow and all its associated triggers, conditions, and actions. Requires tenant admin permission and same-tenant access. - [Duplicate a workflow](https://orgo.space/docs/api-reference/workflow/duplicate-a-workflow.md): Creates a complete copy of the workflow including all triggers, condition groups, conditions, and actions. The copy is created in inactive state with " (Copy)" appended to the name. Requires tenant admin permission. - [Get a workflow](https://orgo.space/docs/api-reference/workflow/get-a-workflow.md): Retrieves a single workflow with its triggers, condition groups, and actions. Requires tenant admin permission and same-tenant access. - [List workflows](https://orgo.space/docs/api-reference/workflow/list-workflows.md): Returns a paginated list of automation workflows for the current tenant. Requires tenant admin permission. Returns up to 50 items per page. - [Test a workflow](https://orgo.space/docs/api-reference/workflow/test-a-workflow.md): Performs a dry-run execution of the workflow against a test user without persisting any changes. Returns the evaluation result for each trigger, condition, and action. Optionally specify a userId and test payload in the request body. Requires tenant admin permission. - [Update a workflow](https://orgo.space/docs/api-reference/workflow/update-a-workflow.md): Updates a workflow including its triggers, condition groups, and actions. Nested entities (triggers, conditions, actions) are cleared and recreated on each update. Supports updating name, description, active status, priority, and canvas layout data. Requires tenant admin permission. - [Get a workflow execution](https://orgo.space/docs/api-reference/workflowexecution/get-a-workflow-execution.md): Retrieves details of a single workflow execution including trigger event, conditions evaluated, actions performed, and execution status. Requires tenant admin permission and same-tenant access. - [List workflow executions](https://orgo.space/docs/api-reference/workflowexecution/list-workflow-executions.md): Returns a paginated list of workflow execution logs for the current tenant, showing when workflows were triggered and their results. Requires tenant admin permission. Returns up to 50 items per page. - [Changelog](https://orgo.space/docs/changelog/index.md): What's new in ORGO platform - [API Access](https://orgo.space/docs/platform/api.md): Integrate with Orgo using the REST API - [Badges & Gamification](https://orgo.space/docs/platform/badges.md): Recognize achievements — training, milestones, service hours, and special contributions - [Contacts](https://orgo.space/docs/platform/contacts.md): Track non-members — donors, newsletter subscribers, partners, and potential members - [E-Documents](https://orgo.space/docs/platform/contracts.md): Create documents members sign electronically — contracts, waivers, policies, certificates - [Courses & LMS](https://orgo.space/docs/platform/courses.md): Build online courses for your members — lessons, quizzes, progress tracking, and certificates - [Dashboard Organizer](https://orgo.space/docs/platform/customization/dashboard-organizer.md): Choose which widgets appear on the member dashboard and in what order - [Dashboard Welcome](https://orgo.space/docs/platform/customization/dashboard-welcome.md): A personalized welcome message on the dashboard — with dynamic fields, rich text, and user type targeting - [Data Import](https://orgo.space/docs/platform/customization/import.md): Bulk-import members, local centers, roles, events, badges, products, and more from CSV files - [Customization](https://orgo.space/docs/platform/customization/index.md): Make Orgo match your organization — language, terminology, navigation, dashboard, and data import - [Labels & Terminology](https://orgo.space/docs/platform/customization/labels.md): Rename default terms to match your organization — "Members" becomes "Scouts", "Groups" becomes "Patrols" - [Languages](https://orgo.space/docs/platform/customization/languages.md): Enable multiple languages so members use Orgo in their preferred language - [Menu Organizer](https://orgo.space/docs/platform/customization/menu-organizer.md): Rearrange, hide, and rename sidebar navigation items — with permission-based visibility and custom categories - [Discussion Namespaces](https://orgo.space/docs/platform/discussion/discussion-namespaces.md): Organize discussions into categories so members can find and filter by topic - [Discussions](https://orgo.space/docs/platform/discussion/index.md): Forum-style posts and conversations within every group - [E-Voting](https://orgo.space/docs/platform/e-voting.md): Run secure elections and polls — anonymous voting, timed ballots, and transparent results - [Event Attendance](https://orgo.space/docs/platform/events/attendance.md): Check in attendees with QR codes, track who showed up, and manage no-shows - [Create Event](https://orgo.space/docs/platform/events/create-event.md): Step-by-step guide to creating events, from simple meetings to ticketed conferences - [Event Types](https://orgo.space/docs/platform/events/event-types.md): Categorize events for filtering, reporting, and clear communication - [Events](https://orgo.space/docs/platform/events/index.md): Create events, sell tickets, track attendance, and report on impact - [Public Event Page](https://orgo.space/docs/platform/events/public-page.md): Shareable, branded event pages for promoting events outside your organization - [Event Ticketing](https://orgo.space/docs/platform/events/ticketing.md): Sell tickets with multiple price tiers, member discounts, and Stripe checkout - [Donations](https://orgo.space/docs/platform/fees/donations.md): Run fundraising campaigns with public pages, donation goals, A/B testing, donor comments, and embeddable widgets - [Membership Fees](https://orgo.space/docs/platform/fees/fees.md): Collect membership dues, track who has paid, send reminders, and manage subscriptions - [Products](https://orgo.space/docs/platform/fees/products.md): Create fee products, donation campaigns, and payment pages - [Stripe Integration](https://orgo.space/docs/platform/fees/stripe-integration.md): Connect Stripe to accept online payments for fees, donations, tickets, and merchandise - [Files & Documents](https://orgo.space/docs/platform/files.md): Centralized document storage — share policies, templates, and resources with your members - [Groups & Teams](https://orgo.space/docs/platform/groups/index.md): Organize members into collaborative spaces — from org-wide to project-specific - [Local Centers](https://orgo.space/docs/platform/groups/local-groups.md): Geographic chapters and branches with their own admins, events, and member communities - [Main Group](https://orgo.space/docs/platform/groups/main-group.md): The organization-wide hub that automatically includes every member - [Private Groups](https://orgo.space/docs/platform/groups/private-groups.md): Member-created spaces for project teams, committees, interest groups, and working groups - [Role Groups](https://orgo.space/docs/platform/groups/role-groups.md): Automatically populated groups based on user type, age, gender, or custom fields - [Help Desk](https://orgo.space/docs/platform/help-desk.md): A support ticket system — members submit requests, your team resolves them - [Identity Validation](https://orgo.space/docs/platform/identity-validation.md): Verify member identities with document scanning, OCR, and admin review - [Welcome to Orgo](https://orgo.space/docs/platform/index.md): The all-in-one platform for managing members, events, payments, and communications in your organization - [Integrations](https://orgo.space/docs/platform/integrations.md): Connect Orgo with Stripe, Google, HubSpot, n8n, and other tools your organization uses - [Issues & Tasks](https://orgo.space/docs/platform/issues.md): Track tasks, assign work, and manage projects within groups — with backlog and kanban views - [Local Center Fees](https://orgo.space/docs/platform/local-group-fees/create-local-fees.md): Collect branch-level membership fees with separate Stripe accounts - [Mobile Apps](https://orgo.space/docs/platform/mobile-apps.md): Orgo on iOS and Android — push notifications, event check-in, and community on the go - [Newsletter](https://orgo.space/docs/platform/newsletter.md): Send email campaigns to your members with segmentation, templates, and analytics - [Notifications](https://orgo.space/docs/platform/notifications.md): In-app, push, and email notifications that keep members informed - [OAuth Server](https://orgo.space/docs/platform/oauth.md): Use Orgo as an identity provider — let members log in to external apps with their Orgo account - [Branding](https://orgo.space/docs/platform/organisation/branding.md): Your logos and login screen — make the platform look like yours. - [Organization Settings](https://orgo.space/docs/platform/organisation/index.md): Your workspace identity, branding, forms, and emails — all in one place. - [Modules](https://orgo.space/docs/platform/organisation/modules.md): Turn features on and off. Configure exactly how each one behaves. - [Organization Info](https://orgo.space/docs/platform/organisation/organisation-info.md): Your name, contact details, legal info, currency, and social links — the identity card for your entire platform. - [Organisational Chart](https://orgo.space/docs/platform/organisational-chart.md): Visualize your leadership structure — who holds which roles at central and local levels - [Permissions](https://orgo.space/docs/platform/permissions.md): Comprehensive guide to the permission system and access levels - [Adhesion (Membership Applications)](https://orgo.space/docs/platform/users/adhesion.md): Require a formal application and approval process before granting membership - [Custom Fields](https://orgo.space/docs/platform/users/custom-fields.md): Create organization-specific data fields for profiles, registration, and applications - [Deletion of Account](https://orgo.space/docs/platform/users/deletion-of-account.md): Permanently remove a member account and personal data - [Family Members](https://orgo.space/docs/platform/users/family-members.md): Link parent-child accounts, manage minors, and enable family memberships - [Users & Profiles](https://orgo.space/docs/platform/users/index.md): Set up registration, manage members, and handle the complete member lifecycle - [Member Invitations](https://orgo.space/docs/platform/users/invitations.md): Let existing members invite new people to join your organization - [Privacy Settings](https://orgo.space/docs/platform/users/privacy-settings.md): Control who can see member profile information — admin defaults and member overrides - [Profile Fields](https://orgo.space/docs/platform/users/profile-fields.md): Configure what members can add to their profiles — and force-collect data with the splash screen - [Referral Program](https://orgo.space/docs/platform/users/referral.md): Track which members bring in new people — and optionally make registration invite-only - [Registration Form](https://orgo.space/docs/platform/users/registration-form.md): Design what new members fill out when joining your organization - [Resignation](https://orgo.space/docs/platform/users/resignation.md): Formal member departure with reason tracking and admin approval - [User Statuses](https://orgo.space/docs/platform/users/statuses.md): Control member access with Active, Inactive, Suspended, and Unapproved statuses - [User Types & Roles](https://orgo.space/docs/platform/users/user-types.md): Categorize members by type and model your organizational structure with positions - [Waitlist](https://orgo.space/docs/platform/users/waitlist.md): Queue interested people when membership is full or closed ## OpenAPI Specs - [openapi](https://orgo.space/docs/api-reference/openapi.json)