{"openapi":"3.0.3","info":{"title":"EventZero API v2","version":"2.0.0","description":"Fresh, strictly org-scoped REST API over the EventZero data model. Every endpoint (except /health and these docs) requires a Cognito bearer token. The caller is scoped to a single organization derived from their identity. APP_ADMIN and SUPPLIER callers must select the org with the `X-Organization-Id` header; org admins/managers/users are scoped to their own org automatically and cannot override it."},"servers":[{"url":"https://api.eventzero.io/api/v2","description":"This deployment."}],"security":[{"bearerAuth":[]}],"tags":[{"name":"Events","description":"Event management (org-scoped)."},{"name":"System","description":"Public liveness and API-metadata endpoints; no authentication required."},{"name":"Children","description":"Per-event carbon-source child records (shared CRUD contract). Authorization: any member of the owning organization (admin/manager/user) OR a supplier assigned to the event may READ these records; writing (create/update/delete/submit) is managers+ or an assigned supplier — a plain organization user is read-only here, matching their access to the parent event. Suppliers are confined to their own rows and are refused entirely (403 SUPPLIER_NOT_PERMITTED) on activity, product, service, which have no supplierId column to scope them by. The submit/review/approve workflow exists only on types with workflow columns — not on transport-overseas, activity, product, service. Ownership (eventId/supplierId), workflow flags (reviewed/submitted/approved/feedback) and timestamps are server-controlled."},{"name":"Profile","description":"The caller's own account."},{"name":"Organization","description":"The caller's organization settings."},{"name":"Users","description":"Org user management (org-scoped)."},{"name":"Results","description":"Computed carbon results (read-only)."},{"name":"Suppliers","description":"The caller org's supplier pool (read)."},{"name":"Auth","description":"Public token endpoints: obtain and refresh access tokens."},{"name":"Configuration","description":"Org configuration. categories/departments/user-groups are org-scoped (reads: members, writes: managers+). industry-types are GLOBAL reference data (reads: any member, writes: APP_ADMIN)."}],"paths":{"/health":{"get":{"operationId":"getHealth","tags":["System"],"summary":"Liveness probe (public)","security":[],"responses":{"200":{"description":"Service is up.","content":{"application/json":{"schema":{"type":"object","required":["success","data"],"properties":{"success":{"type":"boolean","example":true},"data":{"type":"object","properties":{"status":{"type":"string"},"version":{"type":"string"}}}}}}}}}}},"/openapi.json":{"get":{"operationId":"getOpenApiDocument","tags":["System"],"summary":"This OpenAPI 3 document (public)","security":[],"responses":{"200":{"description":"The OpenAPI 3 document.","content":{"application/json":{"schema":{"type":"object"}}}}}}},"/docs":{"get":{"operationId":"getDocsUi","tags":["System"],"summary":"Swagger UI for this API (public)","security":[],"responses":{"200":{"description":"Swagger UI HTML page.","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/events":{"get":{"operationId":"listEvents","tags":["Events"],"summary":"List events in the caller's organization","parameters":[{"$ref":"#/components/parameters/OrgHeader"},{"$ref":"#/components/parameters/Page"},{"$ref":"#/components/parameters/Limit"}],"responses":{"200":{"description":"Paginated events.","content":{"application/json":{"schema":{"type":"object","required":["success","data"],"properties":{"success":{"type":"boolean","example":true},"data":{"type":"object","properties":{"items":{"type":"array","items":{"$ref":"#/components/schemas/Event"}},"pagination":{"$ref":"#/components/schemas/Pagination"}}}}}}}},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"}}},"post":{"operationId":"createEvent","tags":["Events"],"summary":"Create an event (manager+)","parameters":[{"$ref":"#/components/parameters/OrgHeader"}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/EventCreate"}}}},"responses":{"201":{"description":"Created event.","content":{"application/json":{"schema":{"type":"object","required":["success","data"],"properties":{"success":{"type":"boolean","example":true},"data":{"$ref":"#/components/schemas/Event"}}}}}},"400":{"$ref":"#/components/responses/ValidationError"},"401":{"$ref":"#/components/responses/Unauthorized"},"402":{"$ref":"#/components/responses/PaymentRequired"},"403":{"$ref":"#/components/responses/Forbidden"},"429":{"$ref":"#/components/responses/RateLimited"}}}},"/events/{id}":{"parameters":[{"$ref":"#/components/parameters/EventId"},{"$ref":"#/components/parameters/OrgHeader"}],"get":{"operationId":"getEvent","tags":["Events"],"summary":"Get an event by id (must belong to the caller's org)","responses":{"200":{"description":"The event.","content":{"application/json":{"schema":{"type":"object","required":["success","data"],"properties":{"success":{"type":"boolean","example":true},"data":{"$ref":"#/components/schemas/Event"}}}}}},"400":{"$ref":"#/components/responses/ValidationError"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"}}},"patch":{"operationId":"updateEvent","tags":["Events"],"summary":"Update an event (manager+)","requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/EventUpdate"}}}},"responses":{"200":{"description":"Updated event.","content":{"application/json":{"schema":{"type":"object","required":["success","data"],"properties":{"success":{"type":"boolean","example":true},"data":{"$ref":"#/components/schemas/Event"}}}}}},"400":{"$ref":"#/components/responses/ValidationError"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/RateLimited"}}},"delete":{"operationId":"deleteEvent","tags":["Events"],"summary":"Soft-delete an event (manager+)","responses":{"204":{"description":"Deleted."},"400":{"$ref":"#/components/responses/ValidationError"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/RateLimited"}}}},"/events/{eventId}/accommodation":{"parameters":[{"$ref":"#/components/parameters/EventIdPath"},{"$ref":"#/components/parameters/OrgHeader"}],"get":{"operationId":"listAccommodationRecords","tags":["Children"],"summary":"List accommodation records for an event","parameters":[{"$ref":"#/components/parameters/Page"},{"$ref":"#/components/parameters/Limit"}],"responses":{"200":{"description":"Paginated records.","content":{"application/json":{"schema":{"type":"object","required":["success","data"],"properties":{"success":{"type":"boolean","example":true},"data":{"type":"object","properties":{"items":{"type":"array","items":{"$ref":"#/components/schemas/ChildRecord"}},"pagination":{"$ref":"#/components/schemas/Pagination"}}}}}}}},"400":{"$ref":"#/components/responses/ValidationError"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"}}},"post":{"operationId":"createAccommodationRecord","tags":["Children"],"summary":"Create a accommodation record","requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ChildInput"}}}},"responses":{"201":{"description":"Created record.","content":{"application/json":{"schema":{"type":"object","required":["success","data"],"properties":{"success":{"type":"boolean","example":true},"data":{"$ref":"#/components/schemas/ChildRecord"}}}}}},"400":{"$ref":"#/components/responses/ValidationError"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/RateLimited"}}}},"/events/{eventId}/accommodation/{recordId}":{"parameters":[{"$ref":"#/components/parameters/EventIdPath"},{"$ref":"#/components/parameters/RecordId"},{"$ref":"#/components/parameters/OrgHeader"}],"get":{"operationId":"getAccommodationRecord","tags":["Children"],"summary":"Get a accommodation record","responses":{"200":{"description":"The record.","content":{"application/json":{"schema":{"type":"object","required":["success","data"],"properties":{"success":{"type":"boolean","example":true},"data":{"$ref":"#/components/schemas/ChildRecord"}}}}}},"400":{"$ref":"#/components/responses/ValidationError"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"}}},"patch":{"operationId":"updateAccommodationRecord","tags":["Children"],"summary":"Update a accommodation record","requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ChildInput"}}}},"responses":{"200":{"description":"Updated record.","content":{"application/json":{"schema":{"type":"object","required":["success","data"],"properties":{"success":{"type":"boolean","example":true},"data":{"$ref":"#/components/schemas/ChildRecord"}}}}}},"400":{"$ref":"#/components/responses/ValidationError"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/RateLimited"}}},"delete":{"operationId":"deleteAccommodationRecord","tags":["Children"],"summary":"Delete a accommodation record","responses":{"204":{"description":"Deleted."},"400":{"$ref":"#/components/responses/ValidationError"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/RateLimited"}}}},"/events/{eventId}/flights":{"parameters":[{"$ref":"#/components/parameters/EventIdPath"},{"$ref":"#/components/parameters/OrgHeader"}],"get":{"operationId":"listFlightsRecords","tags":["Children"],"summary":"List flights records for an event","parameters":[{"$ref":"#/components/parameters/Page"},{"$ref":"#/components/parameters/Limit"}],"responses":{"200":{"description":"Paginated records.","content":{"application/json":{"schema":{"type":"object","required":["success","data"],"properties":{"success":{"type":"boolean","example":true},"data":{"type":"object","properties":{"items":{"type":"array","items":{"$ref":"#/components/schemas/ChildRecord"}},"pagination":{"$ref":"#/components/schemas/Pagination"}}}}}}}},"400":{"$ref":"#/components/responses/ValidationError"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"}}},"post":{"operationId":"createFlightsRecord","tags":["Children"],"summary":"Create a flights record","requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ChildInput"}}}},"responses":{"201":{"description":"Created record.","content":{"application/json":{"schema":{"type":"object","required":["success","data"],"properties":{"success":{"type":"boolean","example":true},"data":{"$ref":"#/components/schemas/ChildRecord"}}}}}},"400":{"$ref":"#/components/responses/ValidationError"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/RateLimited"}}}},"/events/{eventId}/flights/{recordId}":{"parameters":[{"$ref":"#/components/parameters/EventIdPath"},{"$ref":"#/components/parameters/RecordId"},{"$ref":"#/components/parameters/OrgHeader"}],"get":{"operationId":"getFlightsRecord","tags":["Children"],"summary":"Get a flights record","responses":{"200":{"description":"The record.","content":{"application/json":{"schema":{"type":"object","required":["success","data"],"properties":{"success":{"type":"boolean","example":true},"data":{"$ref":"#/components/schemas/ChildRecord"}}}}}},"400":{"$ref":"#/components/responses/ValidationError"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"}}},"patch":{"operationId":"updateFlightsRecord","tags":["Children"],"summary":"Update a flights record","requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ChildInput"}}}},"responses":{"200":{"description":"Updated record.","content":{"application/json":{"schema":{"type":"object","required":["success","data"],"properties":{"success":{"type":"boolean","example":true},"data":{"$ref":"#/components/schemas/ChildRecord"}}}}}},"400":{"$ref":"#/components/responses/ValidationError"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/RateLimited"}}},"delete":{"operationId":"deleteFlightsRecord","tags":["Children"],"summary":"Delete a flights record","responses":{"204":{"description":"Deleted."},"400":{"$ref":"#/components/responses/ValidationError"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/RateLimited"}}}},"/events/{eventId}/travel":{"parameters":[{"$ref":"#/components/parameters/EventIdPath"},{"$ref":"#/components/parameters/OrgHeader"}],"get":{"operationId":"listTravelRecords","tags":["Children"],"summary":"List travel records for an event","parameters":[{"$ref":"#/components/parameters/Page"},{"$ref":"#/components/parameters/Limit"}],"responses":{"200":{"description":"Paginated records.","content":{"application/json":{"schema":{"type":"object","required":["success","data"],"properties":{"success":{"type":"boolean","example":true},"data":{"type":"object","properties":{"items":{"type":"array","items":{"$ref":"#/components/schemas/ChildRecord"}},"pagination":{"$ref":"#/components/schemas/Pagination"}}}}}}}},"400":{"$ref":"#/components/responses/ValidationError"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"}}},"post":{"operationId":"createTravelRecord","tags":["Children"],"summary":"Create a travel record","requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ChildInput"}}}},"responses":{"201":{"description":"Created record.","content":{"application/json":{"schema":{"type":"object","required":["success","data"],"properties":{"success":{"type":"boolean","example":true},"data":{"$ref":"#/components/schemas/ChildRecord"}}}}}},"400":{"$ref":"#/components/responses/ValidationError"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/RateLimited"}}}},"/events/{eventId}/travel/{recordId}":{"parameters":[{"$ref":"#/components/parameters/EventIdPath"},{"$ref":"#/components/parameters/RecordId"},{"$ref":"#/components/parameters/OrgHeader"}],"get":{"operationId":"getTravelRecord","tags":["Children"],"summary":"Get a travel record","responses":{"200":{"description":"The record.","content":{"application/json":{"schema":{"type":"object","required":["success","data"],"properties":{"success":{"type":"boolean","example":true},"data":{"$ref":"#/components/schemas/ChildRecord"}}}}}},"400":{"$ref":"#/components/responses/ValidationError"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"}}},"patch":{"operationId":"updateTravelRecord","tags":["Children"],"summary":"Update a travel record","requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ChildInput"}}}},"responses":{"200":{"description":"Updated record.","content":{"application/json":{"schema":{"type":"object","required":["success","data"],"properties":{"success":{"type":"boolean","example":true},"data":{"$ref":"#/components/schemas/ChildRecord"}}}}}},"400":{"$ref":"#/components/responses/ValidationError"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/RateLimited"}}},"delete":{"operationId":"deleteTravelRecord","tags":["Children"],"summary":"Delete a travel record","responses":{"204":{"description":"Deleted."},"400":{"$ref":"#/components/responses/ValidationError"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/RateLimited"}}}},"/events/{eventId}/transport":{"parameters":[{"$ref":"#/components/parameters/EventIdPath"},{"$ref":"#/components/parameters/OrgHeader"}],"get":{"operationId":"listTransportRecords","tags":["Children"],"summary":"List transport records for an event","parameters":[{"$ref":"#/components/parameters/Page"},{"$ref":"#/components/parameters/Limit"}],"responses":{"200":{"description":"Paginated records.","content":{"application/json":{"schema":{"type":"object","required":["success","data"],"properties":{"success":{"type":"boolean","example":true},"data":{"type":"object","properties":{"items":{"type":"array","items":{"$ref":"#/components/schemas/ChildRecord"}},"pagination":{"$ref":"#/components/schemas/Pagination"}}}}}}}},"400":{"$ref":"#/components/responses/ValidationError"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"}}},"post":{"operationId":"createTransportRecord","tags":["Children"],"summary":"Create a transport record","requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ChildInput"}}}},"responses":{"201":{"description":"Created record.","content":{"application/json":{"schema":{"type":"object","required":["success","data"],"properties":{"success":{"type":"boolean","example":true},"data":{"$ref":"#/components/schemas/ChildRecord"}}}}}},"400":{"$ref":"#/components/responses/ValidationError"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/RateLimited"}}}},"/events/{eventId}/transport/{recordId}":{"parameters":[{"$ref":"#/components/parameters/EventIdPath"},{"$ref":"#/components/parameters/RecordId"},{"$ref":"#/components/parameters/OrgHeader"}],"get":{"operationId":"getTransportRecord","tags":["Children"],"summary":"Get a transport record","responses":{"200":{"description":"The record.","content":{"application/json":{"schema":{"type":"object","required":["success","data"],"properties":{"success":{"type":"boolean","example":true},"data":{"$ref":"#/components/schemas/ChildRecord"}}}}}},"400":{"$ref":"#/components/responses/ValidationError"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"}}},"patch":{"operationId":"updateTransportRecord","tags":["Children"],"summary":"Update a transport record","requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ChildInput"}}}},"responses":{"200":{"description":"Updated record.","content":{"application/json":{"schema":{"type":"object","required":["success","data"],"properties":{"success":{"type":"boolean","example":true},"data":{"$ref":"#/components/schemas/ChildRecord"}}}}}},"400":{"$ref":"#/components/responses/ValidationError"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/RateLimited"}}},"delete":{"operationId":"deleteTransportRecord","tags":["Children"],"summary":"Delete a transport record","responses":{"204":{"description":"Deleted."},"400":{"$ref":"#/components/responses/ValidationError"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/RateLimited"}}}},"/events/{eventId}/transport-overseas":{"parameters":[{"$ref":"#/components/parameters/EventIdPath"},{"$ref":"#/components/parameters/OrgHeader"}],"get":{"operationId":"listTransportOverseasRecords","tags":["Children"],"summary":"List transport-overseas records for an event","parameters":[{"$ref":"#/components/parameters/Page"},{"$ref":"#/components/parameters/Limit"}],"responses":{"200":{"description":"Paginated records.","content":{"application/json":{"schema":{"type":"object","required":["success","data"],"properties":{"success":{"type":"boolean","example":true},"data":{"type":"object","properties":{"items":{"type":"array","items":{"$ref":"#/components/schemas/ChildRecord"}},"pagination":{"$ref":"#/components/schemas/Pagination"}}}}}}}},"400":{"$ref":"#/components/responses/ValidationError"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"}}},"post":{"operationId":"createTransportOverseasRecord","tags":["Children"],"summary":"Create a transport-overseas record","requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ChildInput"}}}},"responses":{"201":{"description":"Created record.","content":{"application/json":{"schema":{"type":"object","required":["success","data"],"properties":{"success":{"type":"boolean","example":true},"data":{"$ref":"#/components/schemas/ChildRecord"}}}}}},"400":{"$ref":"#/components/responses/ValidationError"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/RateLimited"}}}},"/events/{eventId}/transport-overseas/{recordId}":{"parameters":[{"$ref":"#/components/parameters/EventIdPath"},{"$ref":"#/components/parameters/RecordId"},{"$ref":"#/components/parameters/OrgHeader"}],"get":{"operationId":"getTransportOverseasRecord","tags":["Children"],"summary":"Get a transport-overseas record","responses":{"200":{"description":"The record.","content":{"application/json":{"schema":{"type":"object","required":["success","data"],"properties":{"success":{"type":"boolean","example":true},"data":{"$ref":"#/components/schemas/ChildRecord"}}}}}},"400":{"$ref":"#/components/responses/ValidationError"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"}}},"patch":{"operationId":"updateTransportOverseasRecord","tags":["Children"],"summary":"Update a transport-overseas record","requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ChildInput"}}}},"responses":{"200":{"description":"Updated record.","content":{"application/json":{"schema":{"type":"object","required":["success","data"],"properties":{"success":{"type":"boolean","example":true},"data":{"$ref":"#/components/schemas/ChildRecord"}}}}}},"400":{"$ref":"#/components/responses/ValidationError"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/RateLimited"}}},"delete":{"operationId":"deleteTransportOverseasRecord","tags":["Children"],"summary":"Delete a transport-overseas record","responses":{"204":{"description":"Deleted."},"400":{"$ref":"#/components/responses/ValidationError"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/RateLimited"}}}},"/events/{eventId}/private-jets":{"parameters":[{"$ref":"#/components/parameters/EventIdPath"},{"$ref":"#/components/parameters/OrgHeader"}],"get":{"operationId":"listPrivateJetsRecords","tags":["Children"],"summary":"List private-jets records for an event","parameters":[{"$ref":"#/components/parameters/Page"},{"$ref":"#/components/parameters/Limit"}],"responses":{"200":{"description":"Paginated records.","content":{"application/json":{"schema":{"type":"object","required":["success","data"],"properties":{"success":{"type":"boolean","example":true},"data":{"type":"object","properties":{"items":{"type":"array","items":{"$ref":"#/components/schemas/ChildRecord"}},"pagination":{"$ref":"#/components/schemas/Pagination"}}}}}}}},"400":{"$ref":"#/components/responses/ValidationError"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"}}},"post":{"operationId":"createPrivateJetsRecord","tags":["Children"],"summary":"Create a private-jets record","requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ChildInput"}}}},"responses":{"201":{"description":"Created record.","content":{"application/json":{"schema":{"type":"object","required":["success","data"],"properties":{"success":{"type":"boolean","example":true},"data":{"$ref":"#/components/schemas/ChildRecord"}}}}}},"400":{"$ref":"#/components/responses/ValidationError"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/RateLimited"}}}},"/events/{eventId}/private-jets/{recordId}":{"parameters":[{"$ref":"#/components/parameters/EventIdPath"},{"$ref":"#/components/parameters/RecordId"},{"$ref":"#/components/parameters/OrgHeader"}],"get":{"operationId":"getPrivateJetsRecord","tags":["Children"],"summary":"Get a private-jets record","responses":{"200":{"description":"The record.","content":{"application/json":{"schema":{"type":"object","required":["success","data"],"properties":{"success":{"type":"boolean","example":true},"data":{"$ref":"#/components/schemas/ChildRecord"}}}}}},"400":{"$ref":"#/components/responses/ValidationError"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"}}},"patch":{"operationId":"updatePrivateJetsRecord","tags":["Children"],"summary":"Update a private-jets record","requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ChildInput"}}}},"responses":{"200":{"description":"Updated record.","content":{"application/json":{"schema":{"type":"object","required":["success","data"],"properties":{"success":{"type":"boolean","example":true},"data":{"$ref":"#/components/schemas/ChildRecord"}}}}}},"400":{"$ref":"#/components/responses/ValidationError"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/RateLimited"}}},"delete":{"operationId":"deletePrivateJetsRecord","tags":["Children"],"summary":"Delete a private-jets record","responses":{"204":{"description":"Deleted."},"400":{"$ref":"#/components/responses/ValidationError"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/RateLimited"}}}},"/events/{eventId}/activity":{"parameters":[{"$ref":"#/components/parameters/EventIdPath"},{"$ref":"#/components/parameters/OrgHeader"}],"get":{"operationId":"listActivityRecords","tags":["Children"],"summary":"List activity records for an event","parameters":[{"$ref":"#/components/parameters/Page"},{"$ref":"#/components/parameters/Limit"}],"responses":{"200":{"description":"Paginated records.","content":{"application/json":{"schema":{"type":"object","required":["success","data"],"properties":{"success":{"type":"boolean","example":true},"data":{"type":"object","properties":{"items":{"type":"array","items":{"$ref":"#/components/schemas/ChildRecord"}},"pagination":{"$ref":"#/components/schemas/Pagination"}}}}}}}},"400":{"$ref":"#/components/responses/ValidationError"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"}}},"post":{"operationId":"createActivityRecord","tags":["Children"],"summary":"Create a activity record","requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ChildInput"}}}},"responses":{"201":{"description":"Created record.","content":{"application/json":{"schema":{"type":"object","required":["success","data"],"properties":{"success":{"type":"boolean","example":true},"data":{"$ref":"#/components/schemas/ChildRecord"}}}}}},"400":{"$ref":"#/components/responses/ValidationError"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/RateLimited"}}}},"/events/{eventId}/activity/{recordId}":{"parameters":[{"$ref":"#/components/parameters/EventIdPath"},{"$ref":"#/components/parameters/RecordId"},{"$ref":"#/components/parameters/OrgHeader"}],"get":{"operationId":"getActivityRecord","tags":["Children"],"summary":"Get a activity record","responses":{"200":{"description":"The record.","content":{"application/json":{"schema":{"type":"object","required":["success","data"],"properties":{"success":{"type":"boolean","example":true},"data":{"$ref":"#/components/schemas/ChildRecord"}}}}}},"400":{"$ref":"#/components/responses/ValidationError"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"}}},"patch":{"operationId":"updateActivityRecord","tags":["Children"],"summary":"Update a activity record","requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ChildInput"}}}},"responses":{"200":{"description":"Updated record.","content":{"application/json":{"schema":{"type":"object","required":["success","data"],"properties":{"success":{"type":"boolean","example":true},"data":{"$ref":"#/components/schemas/ChildRecord"}}}}}},"400":{"$ref":"#/components/responses/ValidationError"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/RateLimited"}}},"delete":{"operationId":"deleteActivityRecord","tags":["Children"],"summary":"Delete a activity record","responses":{"204":{"description":"Deleted."},"400":{"$ref":"#/components/responses/ValidationError"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/RateLimited"}}}},"/events/{eventId}/food-beverage":{"parameters":[{"$ref":"#/components/parameters/EventIdPath"},{"$ref":"#/components/parameters/OrgHeader"}],"get":{"operationId":"listFoodBeverageRecords","tags":["Children"],"summary":"List food-beverage records for an event","parameters":[{"$ref":"#/components/parameters/Page"},{"$ref":"#/components/parameters/Limit"}],"responses":{"200":{"description":"Paginated records.","content":{"application/json":{"schema":{"type":"object","required":["success","data"],"properties":{"success":{"type":"boolean","example":true},"data":{"type":"object","properties":{"items":{"type":"array","items":{"$ref":"#/components/schemas/ChildRecord"}},"pagination":{"$ref":"#/components/schemas/Pagination"}}}}}}}},"400":{"$ref":"#/components/responses/ValidationError"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"}}},"post":{"operationId":"createFoodBeverageRecord","tags":["Children"],"summary":"Create a food-beverage record","requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ChildInput"}}}},"responses":{"201":{"description":"Created record.","content":{"application/json":{"schema":{"type":"object","required":["success","data"],"properties":{"success":{"type":"boolean","example":true},"data":{"$ref":"#/components/schemas/ChildRecord"}}}}}},"400":{"$ref":"#/components/responses/ValidationError"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/RateLimited"}}}},"/events/{eventId}/food-beverage/{recordId}":{"parameters":[{"$ref":"#/components/parameters/EventIdPath"},{"$ref":"#/components/parameters/RecordId"},{"$ref":"#/components/parameters/OrgHeader"}],"get":{"operationId":"getFoodBeverageRecord","tags":["Children"],"summary":"Get a food-beverage record","responses":{"200":{"description":"The record.","content":{"application/json":{"schema":{"type":"object","required":["success","data"],"properties":{"success":{"type":"boolean","example":true},"data":{"$ref":"#/components/schemas/ChildRecord"}}}}}},"400":{"$ref":"#/components/responses/ValidationError"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"}}},"patch":{"operationId":"updateFoodBeverageRecord","tags":["Children"],"summary":"Update a food-beverage record","requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ChildInput"}}}},"responses":{"200":{"description":"Updated record.","content":{"application/json":{"schema":{"type":"object","required":["success","data"],"properties":{"success":{"type":"boolean","example":true},"data":{"$ref":"#/components/schemas/ChildRecord"}}}}}},"400":{"$ref":"#/components/responses/ValidationError"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/RateLimited"}}},"delete":{"operationId":"deleteFoodBeverageRecord","tags":["Children"],"summary":"Delete a food-beverage record","responses":{"204":{"description":"Deleted."},"400":{"$ref":"#/components/responses/ValidationError"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/RateLimited"}}}},"/events/{eventId}/drinks":{"parameters":[{"$ref":"#/components/parameters/EventIdPath"},{"$ref":"#/components/parameters/OrgHeader"}],"get":{"operationId":"listDrinksRecords","tags":["Children"],"summary":"List drinks records for an event","parameters":[{"$ref":"#/components/parameters/Page"},{"$ref":"#/components/parameters/Limit"}],"responses":{"200":{"description":"Paginated records.","content":{"application/json":{"schema":{"type":"object","required":["success","data"],"properties":{"success":{"type":"boolean","example":true},"data":{"type":"object","properties":{"items":{"type":"array","items":{"$ref":"#/components/schemas/ChildRecord"}},"pagination":{"$ref":"#/components/schemas/Pagination"}}}}}}}},"400":{"$ref":"#/components/responses/ValidationError"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"}}},"post":{"operationId":"createDrinksRecord","tags":["Children"],"summary":"Create a drinks record","requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ChildInput"}}}},"responses":{"201":{"description":"Created record.","content":{"application/json":{"schema":{"type":"object","required":["success","data"],"properties":{"success":{"type":"boolean","example":true},"data":{"$ref":"#/components/schemas/ChildRecord"}}}}}},"400":{"$ref":"#/components/responses/ValidationError"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/RateLimited"}}}},"/events/{eventId}/drinks/{recordId}":{"parameters":[{"$ref":"#/components/parameters/EventIdPath"},{"$ref":"#/components/parameters/RecordId"},{"$ref":"#/components/parameters/OrgHeader"}],"get":{"operationId":"getDrinksRecord","tags":["Children"],"summary":"Get a drinks record","responses":{"200":{"description":"The record.","content":{"application/json":{"schema":{"type":"object","required":["success","data"],"properties":{"success":{"type":"boolean","example":true},"data":{"$ref":"#/components/schemas/ChildRecord"}}}}}},"400":{"$ref":"#/components/responses/ValidationError"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"}}},"patch":{"operationId":"updateDrinksRecord","tags":["Children"],"summary":"Update a drinks record","requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ChildInput"}}}},"responses":{"200":{"description":"Updated record.","content":{"application/json":{"schema":{"type":"object","required":["success","data"],"properties":{"success":{"type":"boolean","example":true},"data":{"$ref":"#/components/schemas/ChildRecord"}}}}}},"400":{"$ref":"#/components/responses/ValidationError"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/RateLimited"}}},"delete":{"operationId":"deleteDrinksRecord","tags":["Children"],"summary":"Delete a drinks record","responses":{"204":{"description":"Deleted."},"400":{"$ref":"#/components/responses/ValidationError"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/RateLimited"}}}},"/events/{eventId}/venue":{"parameters":[{"$ref":"#/components/parameters/EventIdPath"},{"$ref":"#/components/parameters/OrgHeader"}],"get":{"operationId":"listVenueRecords","tags":["Children"],"summary":"List venue records for an event","parameters":[{"$ref":"#/components/parameters/Page"},{"$ref":"#/components/parameters/Limit"}],"responses":{"200":{"description":"Paginated records.","content":{"application/json":{"schema":{"type":"object","required":["success","data"],"properties":{"success":{"type":"boolean","example":true},"data":{"type":"object","properties":{"items":{"type":"array","items":{"$ref":"#/components/schemas/ChildRecord"}},"pagination":{"$ref":"#/components/schemas/Pagination"}}}}}}}},"400":{"$ref":"#/components/responses/ValidationError"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"}}},"post":{"operationId":"createVenueRecord","tags":["Children"],"summary":"Create a venue record","requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ChildInput"}}}},"responses":{"201":{"description":"Created record.","content":{"application/json":{"schema":{"type":"object","required":["success","data"],"properties":{"success":{"type":"boolean","example":true},"data":{"$ref":"#/components/schemas/ChildRecord"}}}}}},"400":{"$ref":"#/components/responses/ValidationError"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/RateLimited"}}}},"/events/{eventId}/venue/{recordId}":{"parameters":[{"$ref":"#/components/parameters/EventIdPath"},{"$ref":"#/components/parameters/RecordId"},{"$ref":"#/components/parameters/OrgHeader"}],"get":{"operationId":"getVenueRecord","tags":["Children"],"summary":"Get a venue record","responses":{"200":{"description":"The record.","content":{"application/json":{"schema":{"type":"object","required":["success","data"],"properties":{"success":{"type":"boolean","example":true},"data":{"$ref":"#/components/schemas/ChildRecord"}}}}}},"400":{"$ref":"#/components/responses/ValidationError"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"}}},"patch":{"operationId":"updateVenueRecord","tags":["Children"],"summary":"Update a venue record","requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ChildInput"}}}},"responses":{"200":{"description":"Updated record.","content":{"application/json":{"schema":{"type":"object","required":["success","data"],"properties":{"success":{"type":"boolean","example":true},"data":{"$ref":"#/components/schemas/ChildRecord"}}}}}},"400":{"$ref":"#/components/responses/ValidationError"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/RateLimited"}}},"delete":{"operationId":"deleteVenueRecord","tags":["Children"],"summary":"Delete a venue record","responses":{"204":{"description":"Deleted."},"400":{"$ref":"#/components/responses/ValidationError"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/RateLimited"}}}},"/events/{eventId}/virtual":{"parameters":[{"$ref":"#/components/parameters/EventIdPath"},{"$ref":"#/components/parameters/OrgHeader"}],"get":{"operationId":"listVirtualRecords","tags":["Children"],"summary":"List virtual records for an event","parameters":[{"$ref":"#/components/parameters/Page"},{"$ref":"#/components/parameters/Limit"}],"responses":{"200":{"description":"Paginated records.","content":{"application/json":{"schema":{"type":"object","required":["success","data"],"properties":{"success":{"type":"boolean","example":true},"data":{"type":"object","properties":{"items":{"type":"array","items":{"$ref":"#/components/schemas/ChildRecord"}},"pagination":{"$ref":"#/components/schemas/Pagination"}}}}}}}},"400":{"$ref":"#/components/responses/ValidationError"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"}}},"post":{"operationId":"createVirtualRecord","tags":["Children"],"summary":"Create a virtual record","requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ChildInput"}}}},"responses":{"201":{"description":"Created record.","content":{"application/json":{"schema":{"type":"object","required":["success","data"],"properties":{"success":{"type":"boolean","example":true},"data":{"$ref":"#/components/schemas/ChildRecord"}}}}}},"400":{"$ref":"#/components/responses/ValidationError"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/RateLimited"}}}},"/events/{eventId}/virtual/{recordId}":{"parameters":[{"$ref":"#/components/parameters/EventIdPath"},{"$ref":"#/components/parameters/RecordId"},{"$ref":"#/components/parameters/OrgHeader"}],"get":{"operationId":"getVirtualRecord","tags":["Children"],"summary":"Get a virtual record","responses":{"200":{"description":"The record.","content":{"application/json":{"schema":{"type":"object","required":["success","data"],"properties":{"success":{"type":"boolean","example":true},"data":{"$ref":"#/components/schemas/ChildRecord"}}}}}},"400":{"$ref":"#/components/responses/ValidationError"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"}}},"patch":{"operationId":"updateVirtualRecord","tags":["Children"],"summary":"Update a virtual record","requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ChildInput"}}}},"responses":{"200":{"description":"Updated record.","content":{"application/json":{"schema":{"type":"object","required":["success","data"],"properties":{"success":{"type":"boolean","example":true},"data":{"$ref":"#/components/schemas/ChildRecord"}}}}}},"400":{"$ref":"#/components/responses/ValidationError"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/RateLimited"}}},"delete":{"operationId":"deleteVirtualRecord","tags":["Children"],"summary":"Delete a virtual record","responses":{"204":{"description":"Deleted."},"400":{"$ref":"#/components/responses/ValidationError"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/RateLimited"}}}},"/events/{eventId}/waste":{"parameters":[{"$ref":"#/components/parameters/EventIdPath"},{"$ref":"#/components/parameters/OrgHeader"}],"get":{"operationId":"listWasteRecords","tags":["Children"],"summary":"List waste records for an event","parameters":[{"$ref":"#/components/parameters/Page"},{"$ref":"#/components/parameters/Limit"}],"responses":{"200":{"description":"Paginated records.","content":{"application/json":{"schema":{"type":"object","required":["success","data"],"properties":{"success":{"type":"boolean","example":true},"data":{"type":"object","properties":{"items":{"type":"array","items":{"$ref":"#/components/schemas/ChildRecord"}},"pagination":{"$ref":"#/components/schemas/Pagination"}}}}}}}},"400":{"$ref":"#/components/responses/ValidationError"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"}}},"post":{"operationId":"createWasteRecord","tags":["Children"],"summary":"Create a waste record","requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ChildInput"}}}},"responses":{"201":{"description":"Created record.","content":{"application/json":{"schema":{"type":"object","required":["success","data"],"properties":{"success":{"type":"boolean","example":true},"data":{"$ref":"#/components/schemas/ChildRecord"}}}}}},"400":{"$ref":"#/components/responses/ValidationError"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/RateLimited"}}}},"/events/{eventId}/waste/{recordId}":{"parameters":[{"$ref":"#/components/parameters/EventIdPath"},{"$ref":"#/components/parameters/RecordId"},{"$ref":"#/components/parameters/OrgHeader"}],"get":{"operationId":"getWasteRecord","tags":["Children"],"summary":"Get a waste record","responses":{"200":{"description":"The record.","content":{"application/json":{"schema":{"type":"object","required":["success","data"],"properties":{"success":{"type":"boolean","example":true},"data":{"$ref":"#/components/schemas/ChildRecord"}}}}}},"400":{"$ref":"#/components/responses/ValidationError"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"}}},"patch":{"operationId":"updateWasteRecord","tags":["Children"],"summary":"Update a waste record","requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ChildInput"}}}},"responses":{"200":{"description":"Updated record.","content":{"application/json":{"schema":{"type":"object","required":["success","data"],"properties":{"success":{"type":"boolean","example":true},"data":{"$ref":"#/components/schemas/ChildRecord"}}}}}},"400":{"$ref":"#/components/responses/ValidationError"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/RateLimited"}}},"delete":{"operationId":"deleteWasteRecord","tags":["Children"],"summary":"Delete a waste record","responses":{"204":{"description":"Deleted."},"400":{"$ref":"#/components/responses/ValidationError"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/RateLimited"}}}},"/events/{eventId}/printed-materials":{"parameters":[{"$ref":"#/components/parameters/EventIdPath"},{"$ref":"#/components/parameters/OrgHeader"}],"get":{"operationId":"listPrintedMaterialsRecords","tags":["Children"],"summary":"List printed-materials records for an event","parameters":[{"$ref":"#/components/parameters/Page"},{"$ref":"#/components/parameters/Limit"}],"responses":{"200":{"description":"Paginated records.","content":{"application/json":{"schema":{"type":"object","required":["success","data"],"properties":{"success":{"type":"boolean","example":true},"data":{"type":"object","properties":{"items":{"type":"array","items":{"$ref":"#/components/schemas/ChildRecord"}},"pagination":{"$ref":"#/components/schemas/Pagination"}}}}}}}},"400":{"$ref":"#/components/responses/ValidationError"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"}}},"post":{"operationId":"createPrintedMaterialsRecord","tags":["Children"],"summary":"Create a printed-materials record","requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ChildInput"}}}},"responses":{"201":{"description":"Created record.","content":{"application/json":{"schema":{"type":"object","required":["success","data"],"properties":{"success":{"type":"boolean","example":true},"data":{"$ref":"#/components/schemas/ChildRecord"}}}}}},"400":{"$ref":"#/components/responses/ValidationError"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/RateLimited"}}}},"/events/{eventId}/printed-materials/{recordId}":{"parameters":[{"$ref":"#/components/parameters/EventIdPath"},{"$ref":"#/components/parameters/RecordId"},{"$ref":"#/components/parameters/OrgHeader"}],"get":{"operationId":"getPrintedMaterialsRecord","tags":["Children"],"summary":"Get a printed-materials record","responses":{"200":{"description":"The record.","content":{"application/json":{"schema":{"type":"object","required":["success","data"],"properties":{"success":{"type":"boolean","example":true},"data":{"$ref":"#/components/schemas/ChildRecord"}}}}}},"400":{"$ref":"#/components/responses/ValidationError"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"}}},"patch":{"operationId":"updatePrintedMaterialsRecord","tags":["Children"],"summary":"Update a printed-materials record","requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ChildInput"}}}},"responses":{"200":{"description":"Updated record.","content":{"application/json":{"schema":{"type":"object","required":["success","data"],"properties":{"success":{"type":"boolean","example":true},"data":{"$ref":"#/components/schemas/ChildRecord"}}}}}},"400":{"$ref":"#/components/responses/ValidationError"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/RateLimited"}}},"delete":{"operationId":"deletePrintedMaterialsRecord","tags":["Children"],"summary":"Delete a printed-materials record","responses":{"204":{"description":"Deleted."},"400":{"$ref":"#/components/responses/ValidationError"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/RateLimited"}}}},"/events/{eventId}/production-items":{"parameters":[{"$ref":"#/components/parameters/EventIdPath"},{"$ref":"#/components/parameters/OrgHeader"}],"get":{"operationId":"listProductionItemsRecords","tags":["Children"],"summary":"List production-items records for an event","parameters":[{"$ref":"#/components/parameters/Page"},{"$ref":"#/components/parameters/Limit"}],"responses":{"200":{"description":"Paginated records.","content":{"application/json":{"schema":{"type":"object","required":["success","data"],"properties":{"success":{"type":"boolean","example":true},"data":{"type":"object","properties":{"items":{"type":"array","items":{"$ref":"#/components/schemas/ChildRecord"}},"pagination":{"$ref":"#/components/schemas/Pagination"}}}}}}}},"400":{"$ref":"#/components/responses/ValidationError"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"}}},"post":{"operationId":"createProductionItemsRecord","tags":["Children"],"summary":"Create a production-items record","requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ChildInput"}}}},"responses":{"201":{"description":"Created record.","content":{"application/json":{"schema":{"type":"object","required":["success","data"],"properties":{"success":{"type":"boolean","example":true},"data":{"$ref":"#/components/schemas/ChildRecord"}}}}}},"400":{"$ref":"#/components/responses/ValidationError"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/RateLimited"}}}},"/events/{eventId}/production-items/{recordId}":{"parameters":[{"$ref":"#/components/parameters/EventIdPath"},{"$ref":"#/components/parameters/RecordId"},{"$ref":"#/components/parameters/OrgHeader"}],"get":{"operationId":"getProductionItemsRecord","tags":["Children"],"summary":"Get a production-items record","responses":{"200":{"description":"The record.","content":{"application/json":{"schema":{"type":"object","required":["success","data"],"properties":{"success":{"type":"boolean","example":true},"data":{"$ref":"#/components/schemas/ChildRecord"}}}}}},"400":{"$ref":"#/components/responses/ValidationError"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"}}},"patch":{"operationId":"updateProductionItemsRecord","tags":["Children"],"summary":"Update a production-items record","requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ChildInput"}}}},"responses":{"200":{"description":"Updated record.","content":{"application/json":{"schema":{"type":"object","required":["success","data"],"properties":{"success":{"type":"boolean","example":true},"data":{"$ref":"#/components/schemas/ChildRecord"}}}}}},"400":{"$ref":"#/components/responses/ValidationError"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/RateLimited"}}},"delete":{"operationId":"deleteProductionItemsRecord","tags":["Children"],"summary":"Delete a production-items record","responses":{"204":{"description":"Deleted."},"400":{"$ref":"#/components/responses/ValidationError"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/RateLimited"}}}},"/events/{eventId}/product":{"parameters":[{"$ref":"#/components/parameters/EventIdPath"},{"$ref":"#/components/parameters/OrgHeader"}],"get":{"operationId":"listProductRecords","tags":["Children"],"summary":"List product records for an event","parameters":[{"$ref":"#/components/parameters/Page"},{"$ref":"#/components/parameters/Limit"}],"responses":{"200":{"description":"Paginated records.","content":{"application/json":{"schema":{"type":"object","required":["success","data"],"properties":{"success":{"type":"boolean","example":true},"data":{"type":"object","properties":{"items":{"type":"array","items":{"$ref":"#/components/schemas/ChildRecord"}},"pagination":{"$ref":"#/components/schemas/Pagination"}}}}}}}},"400":{"$ref":"#/components/responses/ValidationError"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"}}},"post":{"operationId":"createProductRecord","tags":["Children"],"summary":"Create a product record","requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ChildInput"}}}},"responses":{"201":{"description":"Created record.","content":{"application/json":{"schema":{"type":"object","required":["success","data"],"properties":{"success":{"type":"boolean","example":true},"data":{"$ref":"#/components/schemas/ChildRecord"}}}}}},"400":{"$ref":"#/components/responses/ValidationError"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/RateLimited"}}}},"/events/{eventId}/product/{recordId}":{"parameters":[{"$ref":"#/components/parameters/EventIdPath"},{"$ref":"#/components/parameters/RecordId"},{"$ref":"#/components/parameters/OrgHeader"}],"get":{"operationId":"getProductRecord","tags":["Children"],"summary":"Get a product record","responses":{"200":{"description":"The record.","content":{"application/json":{"schema":{"type":"object","required":["success","data"],"properties":{"success":{"type":"boolean","example":true},"data":{"$ref":"#/components/schemas/ChildRecord"}}}}}},"400":{"$ref":"#/components/responses/ValidationError"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"}}},"patch":{"operationId":"updateProductRecord","tags":["Children"],"summary":"Update a product record","requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ChildInput"}}}},"responses":{"200":{"description":"Updated record.","content":{"application/json":{"schema":{"type":"object","required":["success","data"],"properties":{"success":{"type":"boolean","example":true},"data":{"$ref":"#/components/schemas/ChildRecord"}}}}}},"400":{"$ref":"#/components/responses/ValidationError"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/RateLimited"}}},"delete":{"operationId":"deleteProductRecord","tags":["Children"],"summary":"Delete a product record","responses":{"204":{"description":"Deleted."},"400":{"$ref":"#/components/responses/ValidationError"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/RateLimited"}}}},"/events/{eventId}/service":{"parameters":[{"$ref":"#/components/parameters/EventIdPath"},{"$ref":"#/components/parameters/OrgHeader"}],"get":{"operationId":"listServiceRecords","tags":["Children"],"summary":"List service records for an event","parameters":[{"$ref":"#/components/parameters/Page"},{"$ref":"#/components/parameters/Limit"}],"responses":{"200":{"description":"Paginated records.","content":{"application/json":{"schema":{"type":"object","required":["success","data"],"properties":{"success":{"type":"boolean","example":true},"data":{"type":"object","properties":{"items":{"type":"array","items":{"$ref":"#/components/schemas/ChildRecord"}},"pagination":{"$ref":"#/components/schemas/Pagination"}}}}}}}},"400":{"$ref":"#/components/responses/ValidationError"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"}}},"post":{"operationId":"createServiceRecord","tags":["Children"],"summary":"Create a service record","requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ChildInput"}}}},"responses":{"201":{"description":"Created record.","content":{"application/json":{"schema":{"type":"object","required":["success","data"],"properties":{"success":{"type":"boolean","example":true},"data":{"$ref":"#/components/schemas/ChildRecord"}}}}}},"400":{"$ref":"#/components/responses/ValidationError"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/RateLimited"}}}},"/events/{eventId}/service/{recordId}":{"parameters":[{"$ref":"#/components/parameters/EventIdPath"},{"$ref":"#/components/parameters/RecordId"},{"$ref":"#/components/parameters/OrgHeader"}],"get":{"operationId":"getServiceRecord","tags":["Children"],"summary":"Get a service record","responses":{"200":{"description":"The record.","content":{"application/json":{"schema":{"type":"object","required":["success","data"],"properties":{"success":{"type":"boolean","example":true},"data":{"$ref":"#/components/schemas/ChildRecord"}}}}}},"400":{"$ref":"#/components/responses/ValidationError"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"}}},"patch":{"operationId":"updateServiceRecord","tags":["Children"],"summary":"Update a service record","requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ChildInput"}}}},"responses":{"200":{"description":"Updated record.","content":{"application/json":{"schema":{"type":"object","required":["success","data"],"properties":{"success":{"type":"boolean","example":true},"data":{"$ref":"#/components/schemas/ChildRecord"}}}}}},"400":{"$ref":"#/components/responses/ValidationError"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/RateLimited"}}},"delete":{"operationId":"deleteServiceRecord","tags":["Children"],"summary":"Delete a service record","responses":{"204":{"description":"Deleted."},"400":{"$ref":"#/components/responses/ValidationError"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/RateLimited"}}}},"/profile":{"get":{"operationId":"getProfile","tags":["Profile"],"summary":"Get my profile","responses":{"200":{"description":"Your user.","content":{"application/json":{"schema":{"type":"object","required":["success","data"],"properties":{"success":{"type":"boolean","example":true},"data":{"$ref":"#/components/schemas/User"}}}}}},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"}}},"patch":{"operationId":"updateProfile","tags":["Profile"],"summary":"Update my profile","requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ProfileUpdate"}}}},"responses":{"200":{"description":"Updated user.","content":{"application/json":{"schema":{"type":"object","required":["success","data"],"properties":{"success":{"type":"boolean","example":true},"data":{"$ref":"#/components/schemas/User"}}}}}},"400":{"$ref":"#/components/responses/ValidationError"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"429":{"$ref":"#/components/responses/RateLimited"}}}},"/organization":{"parameters":[{"$ref":"#/components/parameters/OrgHeader"}],"get":{"operationId":"getOrganization","tags":["Organization"],"summary":"Get my organization","responses":{"200":{"description":"Your organization.","content":{"application/json":{"schema":{"type":"object","required":["success","data"],"properties":{"success":{"type":"boolean","example":true},"data":{"type":"object","additionalProperties":true}}}}}},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"}}},"patch":{"operationId":"updateOrganization","tags":["Organization"],"summary":"Update my organization (admin)","requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/OrganizationUpdate"}}}},"responses":{"200":{"description":"Updated organization.","content":{"application/json":{"schema":{"type":"object","required":["success","data"],"properties":{"success":{"type":"boolean","example":true},"data":{"type":"object","additionalProperties":true}}}}}},"400":{"$ref":"#/components/responses/ValidationError"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/RateLimited"}}}},"/users":{"parameters":[{"$ref":"#/components/parameters/OrgHeader"},{"$ref":"#/components/parameters/Page"},{"$ref":"#/components/parameters/Limit"}],"get":{"operationId":"listUsers","tags":["Users"],"summary":"List org users (manager+)","responses":{"200":{"description":"Paginated users.","content":{"application/json":{"schema":{"type":"object","required":["success","data"],"properties":{"success":{"type":"boolean","example":true},"data":{"type":"object","properties":{"items":{"type":"array","items":{"$ref":"#/components/schemas/User"}},"pagination":{"$ref":"#/components/schemas/Pagination"}}}}}}}},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"}}},"post":{"operationId":"inviteUser","tags":["Users"],"summary":"Invite a user into the org (admin). organizationId is forced from the caller.","requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UserInvite"}}}},"responses":{"201":{"description":"Invited user (PENDING, no Cognito until acceptance).","content":{"application/json":{"schema":{"type":"object","required":["success","data"],"properties":{"success":{"type":"boolean","example":true},"data":{"$ref":"#/components/schemas/User"}}}}}},"400":{"$ref":"#/components/responses/ValidationError"},"401":{"$ref":"#/components/responses/Unauthorized"},"402":{"$ref":"#/components/responses/PaymentRequired"},"403":{"$ref":"#/components/responses/Forbidden"},"409":{"description":"Conflict.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"$ref":"#/components/responses/RateLimited"}}}},"/users/{id}":{"parameters":[{"$ref":"#/components/parameters/UserId"},{"$ref":"#/components/parameters/OrgHeader"}],"get":{"operationId":"getUser","tags":["Users"],"summary":"Get an org user (manager+)","responses":{"200":{"description":"The user.","content":{"application/json":{"schema":{"type":"object","required":["success","data"],"properties":{"success":{"type":"boolean","example":true},"data":{"$ref":"#/components/schemas/User"}}}}}},"400":{"$ref":"#/components/responses/ValidationError"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"}}},"patch":{"operationId":"updateUser","tags":["Users"],"summary":"Update an org user (admin)","requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UserUpdate"}}}},"responses":{"200":{"description":"Updated user.","content":{"application/json":{"schema":{"type":"object","required":["success","data"],"properties":{"success":{"type":"boolean","example":true},"data":{"$ref":"#/components/schemas/User"}}}}}},"400":{"$ref":"#/components/responses/ValidationError"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/RateLimited"}}},"delete":{"operationId":"deleteUser","tags":["Users"],"summary":"Remove a user (admin). Blocks self-delete + last-admin delete.","responses":{"204":{"description":"Deleted."},"400":{"$ref":"#/components/responses/ValidationError"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"409":{"description":"Conflict.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"$ref":"#/components/responses/RateLimited"}}}},"/users/{id}/status":{"parameters":[{"$ref":"#/components/parameters/UserId"},{"$ref":"#/components/parameters/OrgHeader"}],"patch":{"operationId":"setUserStatus","tags":["Users"],"summary":"Activate/deactivate an org user (admin)","requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"active":{"type":"boolean","description":"Set true to activate the record or false to deactivate it."}}}}}},"responses":{"200":{"description":"Updated user.","content":{"application/json":{"schema":{"type":"object","required":["success","data"],"properties":{"success":{"type":"boolean","example":true},"data":{"$ref":"#/components/schemas/User"}}}}}},"400":{"$ref":"#/components/responses/ValidationError"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"409":{"description":"Conflict.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"$ref":"#/components/responses/RateLimited"}}}},"/events/{eventId}/results":{"parameters":[{"$ref":"#/components/parameters/EventIdPath"},{"$ref":"#/components/parameters/OrgHeader"}],"get":{"operationId":"getEventResults","tags":["Results"],"summary":"Get the computed carbon result for an event","responses":{"200":{"description":"The result.","content":{"application/json":{"schema":{"type":"object","required":["success","data"],"properties":{"success":{"type":"boolean","example":true},"data":{"type":"object","additionalProperties":true}}}}}},"400":{"$ref":"#/components/responses/ValidationError"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"}}}},"/suppliers":{"parameters":[{"$ref":"#/components/parameters/OrgHeader"},{"$ref":"#/components/parameters/Page"},{"$ref":"#/components/parameters/Limit"},{"name":"includeDisabled","in":"query","required":false,"schema":{"type":"boolean"},"description":"When true, include disabled (unlinked) supplier pool entries in the list; by default only active entries are returned."}],"get":{"operationId":"listSuppliers","tags":["Suppliers"],"summary":"List the org supplier pool (manager+)","responses":{"200":{"description":"Paginated suppliers.","content":{"application/json":{"schema":{"type":"object","required":["success","data"],"properties":{"success":{"type":"boolean","example":true},"data":{"type":"object","properties":{"items":{"type":"array","items":{"$ref":"#/components/schemas/Supplier"}},"pagination":{"$ref":"#/components/schemas/Pagination"}}}}}}}},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"}}},"post":{"operationId":"addSupplier","tags":["Suppliers"],"summary":"Add a supplier to the pool (managers+). Creates the supplier user if needed.","parameters":[{"$ref":"#/components/parameters/OrgHeader"}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SupplierAdd"}}}},"responses":{"201":{"description":"Pool entry.","content":{"application/json":{"schema":{"type":"object","required":["success","data"],"properties":{"success":{"type":"boolean","example":true},"data":{"$ref":"#/components/schemas/Supplier"}}}}}},"400":{"$ref":"#/components/responses/ValidationError"},"401":{"$ref":"#/components/responses/Unauthorized"},"402":{"$ref":"#/components/responses/PaymentRequired"},"403":{"$ref":"#/components/responses/Forbidden"},"409":{"description":"Conflict.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"$ref":"#/components/responses/RateLimited"}}}},"/suppliers/{id}":{"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string"}},{"$ref":"#/components/parameters/OrgHeader"}],"get":{"operationId":"getSupplier","tags":["Suppliers"],"summary":"Get a supplier from the org pool (manager+)","responses":{"200":{"description":"The supplier.","content":{"application/json":{"schema":{"type":"object","required":["success","data"],"properties":{"success":{"type":"boolean","example":true},"data":{"$ref":"#/components/schemas/Supplier"}}}}}},"400":{"$ref":"#/components/responses/ValidationError"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"}}},"delete":{"operationId":"removeSupplier","tags":["Suppliers"],"summary":"Remove from the pool (managers+) — disables if the supplier has live events, else unlinks.","responses":{"200":{"description":"{outcome: 'DISABLED'|'UNLINKED', supplier}.","content":{"application/json":{"schema":{"type":"object","required":["success","data"],"properties":{"success":{"type":"boolean","example":true},"data":{"type":"object","additionalProperties":true}}}}}},"400":{"$ref":"#/components/responses/ValidationError"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/RateLimited"}}}},"/auth/login":{"post":{"operationId":"login","tags":["Auth"],"summary":"Log in with email + password → tokens (incl. refresh token)","security":[],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","required":["email","password"],"properties":{"email":{"type":"string","format":"email","description":"The account's email address; required, and rejected if not a valid email."},"password":{"type":"string","description":"The account's password; required for sign-in."}}}}}},"responses":{"200":{"description":"Token bundle.","content":{"application/json":{"schema":{"type":"object","required":["success","data"],"properties":{"success":{"type":"boolean","example":true},"data":{"$ref":"#/components/schemas/TokenBundle"}}}}}},"400":{"$ref":"#/components/responses/ValidationError"},"401":{"$ref":"#/components/responses/Unauthorized"},"429":{"$ref":"#/components/responses/RateLimited"},"503":{"$ref":"#/components/responses/ServiceUnavailable"}}}},"/auth/refresh":{"post":{"operationId":"refreshToken","tags":["Auth"],"summary":"Exchange a refresh token for a new access token (no credentials)","security":[],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","required":["refreshToken"],"properties":{"refreshToken":{"type":"string","description":"The Cognito refresh token (previously returned by POST /auth/login) exchanged at POST /auth/refresh for a new access and ID token; required."}}}}}},"responses":{"200":{"description":"New access/id token.","content":{"application/json":{"schema":{"type":"object","required":["success","data"],"properties":{"success":{"type":"boolean","example":true},"data":{"$ref":"#/components/schemas/TokenBundle"}}}}}},"400":{"$ref":"#/components/responses/ValidationError"},"401":{"$ref":"#/components/responses/Unauthorized"},"429":{"$ref":"#/components/responses/RateLimited"},"503":{"$ref":"#/components/responses/ServiceUnavailable"}}}},"/categories":{"parameters":[{"$ref":"#/components/parameters/OrgHeader"},{"$ref":"#/components/parameters/Page"},{"$ref":"#/components/parameters/Limit"}],"get":{"operationId":"listCategories","tags":["Configuration"],"summary":"List categories","responses":{"200":{"description":"Paginated items.","content":{"application/json":{"schema":{"type":"object","required":["success","data"],"properties":{"success":{"type":"boolean","example":true},"data":{"type":"object","properties":{"items":{"type":"array","items":{"type":"object","additionalProperties":true}},"pagination":{"$ref":"#/components/schemas/Pagination"}}}}}}}},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"}}},"post":{"operationId":"createCategoriesItem","tags":["Configuration"],"summary":"Create (managers+)","requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","required":["name","description"],"properties":{"name":{"type":"string","description":"Name of the configuration item — the category, department, user-group, or industry name."},"description":{"type":"string","description":"Free-text description of the configuration item."}}}}}},"responses":{"201":{"description":"Created.","content":{"application/json":{"schema":{"type":"object","required":["success","data"],"properties":{"success":{"type":"boolean","example":true},"data":{"type":"object","additionalProperties":true}}}}}},"400":{"$ref":"#/components/responses/ValidationError"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"409":{"description":"Conflict.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"$ref":"#/components/responses/RateLimited"}}}},"/categories/{id}":{"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string"}},{"$ref":"#/components/parameters/OrgHeader"}],"get":{"operationId":"getCategoriesItem","tags":["Configuration"],"summary":"Get a categories item","responses":{"200":{"description":"The item.","content":{"application/json":{"schema":{"type":"object","required":["success","data"],"properties":{"success":{"type":"boolean","example":true},"data":{"type":"object","additionalProperties":true}}}}}},"400":{"$ref":"#/components/responses/ValidationError"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"}}},"patch":{"operationId":"updateCategoriesItem","tags":["Configuration"],"summary":"Update (managers+)","requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"responses":{"200":{"description":"Updated.","content":{"application/json":{"schema":{"type":"object","required":["success","data"],"properties":{"success":{"type":"boolean","example":true},"data":{"type":"object","additionalProperties":true}}}}}},"400":{"$ref":"#/components/responses/ValidationError"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"409":{"description":"Conflict.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"$ref":"#/components/responses/RateLimited"}}},"delete":{"operationId":"deleteCategoriesItem","tags":["Configuration"],"summary":"Delete (managers+)","responses":{"204":{"description":"Deleted."},"400":{"$ref":"#/components/responses/ValidationError"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/RateLimited"}}}},"/departments":{"parameters":[{"$ref":"#/components/parameters/OrgHeader"},{"$ref":"#/components/parameters/Page"},{"$ref":"#/components/parameters/Limit"}],"get":{"operationId":"listDepartments","tags":["Configuration"],"summary":"List departments","responses":{"200":{"description":"Paginated items.","content":{"application/json":{"schema":{"type":"object","required":["success","data"],"properties":{"success":{"type":"boolean","example":true},"data":{"type":"object","properties":{"items":{"type":"array","items":{"type":"object","additionalProperties":true}},"pagination":{"$ref":"#/components/schemas/Pagination"}}}}}}}},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"}}},"post":{"operationId":"createDepartmentsItem","tags":["Configuration"],"summary":"Create (managers+)","requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","required":["name","description"],"properties":{"name":{"type":"string","description":"Name of the configuration item — the category, department, user-group, or industry name."},"description":{"type":"string","description":"Free-text description of the configuration item."}}}}}},"responses":{"201":{"description":"Created.","content":{"application/json":{"schema":{"type":"object","required":["success","data"],"properties":{"success":{"type":"boolean","example":true},"data":{"type":"object","additionalProperties":true}}}}}},"400":{"$ref":"#/components/responses/ValidationError"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"409":{"description":"Conflict.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"$ref":"#/components/responses/RateLimited"}}}},"/departments/{id}":{"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string"}},{"$ref":"#/components/parameters/OrgHeader"}],"get":{"operationId":"getDepartmentsItem","tags":["Configuration"],"summary":"Get a departments item","responses":{"200":{"description":"The item.","content":{"application/json":{"schema":{"type":"object","required":["success","data"],"properties":{"success":{"type":"boolean","example":true},"data":{"type":"object","additionalProperties":true}}}}}},"400":{"$ref":"#/components/responses/ValidationError"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"}}},"patch":{"operationId":"updateDepartmentsItem","tags":["Configuration"],"summary":"Update (managers+)","requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"responses":{"200":{"description":"Updated.","content":{"application/json":{"schema":{"type":"object","required":["success","data"],"properties":{"success":{"type":"boolean","example":true},"data":{"type":"object","additionalProperties":true}}}}}},"400":{"$ref":"#/components/responses/ValidationError"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"409":{"description":"Conflict.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"$ref":"#/components/responses/RateLimited"}}},"delete":{"operationId":"deleteDepartmentsItem","tags":["Configuration"],"summary":"Delete (managers+)","responses":{"204":{"description":"Deleted."},"400":{"$ref":"#/components/responses/ValidationError"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/RateLimited"}}}},"/departments/{id}/status":{"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string"}},{"$ref":"#/components/parameters/OrgHeader"}],"patch":{"operationId":"setDepartmentsItemStatus","tags":["Configuration"],"summary":"Activate/deactivate (managers+)","requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"active":{"type":"boolean","description":"Set true to activate the record or false to deactivate it."}}}}}},"responses":{"200":{"description":"Updated.","content":{"application/json":{"schema":{"type":"object","required":["success","data"],"properties":{"success":{"type":"boolean","example":true},"data":{"type":"object","additionalProperties":true}}}}}},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/RateLimited"}}}},"/user-groups":{"parameters":[{"$ref":"#/components/parameters/OrgHeader"},{"$ref":"#/components/parameters/Page"},{"$ref":"#/components/parameters/Limit"}],"get":{"operationId":"listUserGroups","tags":["Configuration"],"summary":"List user-groups","responses":{"200":{"description":"Paginated items.","content":{"application/json":{"schema":{"type":"object","required":["success","data"],"properties":{"success":{"type":"boolean","example":true},"data":{"type":"object","properties":{"items":{"type":"array","items":{"type":"object","additionalProperties":true}},"pagination":{"$ref":"#/components/schemas/Pagination"}}}}}}}},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"}}},"post":{"operationId":"createUserGroupsItem","tags":["Configuration"],"summary":"Create (managers+)","requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","required":["name","description"],"properties":{"name":{"type":"string","description":"Name of the configuration item — the category, department, user-group, or industry name."},"description":{"type":"string","description":"Free-text description of the configuration item."}}}}}},"responses":{"201":{"description":"Created.","content":{"application/json":{"schema":{"type":"object","required":["success","data"],"properties":{"success":{"type":"boolean","example":true},"data":{"type":"object","additionalProperties":true}}}}}},"400":{"$ref":"#/components/responses/ValidationError"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"409":{"description":"Conflict.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"$ref":"#/components/responses/RateLimited"}}}},"/user-groups/{id}":{"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string"}},{"$ref":"#/components/parameters/OrgHeader"}],"get":{"operationId":"getUserGroupsItem","tags":["Configuration"],"summary":"Get a user-groups item","responses":{"200":{"description":"The item.","content":{"application/json":{"schema":{"type":"object","required":["success","data"],"properties":{"success":{"type":"boolean","example":true},"data":{"type":"object","additionalProperties":true}}}}}},"400":{"$ref":"#/components/responses/ValidationError"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"}}},"patch":{"operationId":"updateUserGroupsItem","tags":["Configuration"],"summary":"Update (managers+)","requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"responses":{"200":{"description":"Updated.","content":{"application/json":{"schema":{"type":"object","required":["success","data"],"properties":{"success":{"type":"boolean","example":true},"data":{"type":"object","additionalProperties":true}}}}}},"400":{"$ref":"#/components/responses/ValidationError"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"409":{"description":"Conflict.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"$ref":"#/components/responses/RateLimited"}}},"delete":{"operationId":"deleteUserGroupsItem","tags":["Configuration"],"summary":"Delete (managers+)","responses":{"204":{"description":"Deleted."},"400":{"$ref":"#/components/responses/ValidationError"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/RateLimited"}}}},"/user-groups/{id}/status":{"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string"}},{"$ref":"#/components/parameters/OrgHeader"}],"patch":{"operationId":"setUserGroupsItemStatus","tags":["Configuration"],"summary":"Activate/deactivate (managers+)","requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"active":{"type":"boolean","description":"Set true to activate the record or false to deactivate it."}}}}}},"responses":{"200":{"description":"Updated.","content":{"application/json":{"schema":{"type":"object","required":["success","data"],"properties":{"success":{"type":"boolean","example":true},"data":{"type":"object","additionalProperties":true}}}}}},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/RateLimited"}}}},"/industry-types":{"parameters":[{"$ref":"#/components/parameters/Page"},{"$ref":"#/components/parameters/Limit"}],"get":{"operationId":"listIndustryTypes","tags":["Configuration"],"summary":"List industry-types","responses":{"200":{"description":"Paginated items.","content":{"application/json":{"schema":{"type":"object","required":["success","data"],"properties":{"success":{"type":"boolean","example":true},"data":{"type":"object","properties":{"items":{"type":"array","items":{"type":"object","additionalProperties":true}},"pagination":{"$ref":"#/components/schemas/Pagination"}}}}}}}},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"}}},"post":{"operationId":"createIndustryTypesItem","tags":["Configuration"],"summary":"Create (APP_ADMIN)","requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","required":["name","description"],"properties":{"name":{"type":"string","description":"Name of the configuration item — the category, department, user-group, or industry name."},"description":{"type":"string","description":"Free-text description of the configuration item."}}}}}},"responses":{"201":{"description":"Created.","content":{"application/json":{"schema":{"type":"object","required":["success","data"],"properties":{"success":{"type":"boolean","example":true},"data":{"type":"object","additionalProperties":true}}}}}},"400":{"$ref":"#/components/responses/ValidationError"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"409":{"description":"Conflict.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"$ref":"#/components/responses/RateLimited"}}}},"/industry-types/{id}":{"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string"}}],"get":{"operationId":"getIndustryTypesItem","tags":["Configuration"],"summary":"Get a industry-types item","responses":{"200":{"description":"The item.","content":{"application/json":{"schema":{"type":"object","required":["success","data"],"properties":{"success":{"type":"boolean","example":true},"data":{"type":"object","additionalProperties":true}}}}}},"400":{"$ref":"#/components/responses/ValidationError"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"}}},"patch":{"operationId":"updateIndustryTypesItem","tags":["Configuration"],"summary":"Update (APP_ADMIN)","requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"responses":{"200":{"description":"Updated.","content":{"application/json":{"schema":{"type":"object","required":["success","data"],"properties":{"success":{"type":"boolean","example":true},"data":{"type":"object","additionalProperties":true}}}}}},"400":{"$ref":"#/components/responses/ValidationError"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"409":{"description":"Conflict.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"$ref":"#/components/responses/RateLimited"}}},"delete":{"operationId":"deleteIndustryTypesItem","tags":["Configuration"],"summary":"Delete (APP_ADMIN)","responses":{"204":{"description":"Deleted."},"400":{"$ref":"#/components/responses/ValidationError"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/RateLimited"}}}},"/suppliers/{id}/enable":{"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string"},"description":"Supplier pool doc id."},{"$ref":"#/components/parameters/OrgHeader"}],"post":{"operationId":"enableSupplier","tags":["Suppliers"],"summary":"Re-enable a disabled supplier (managers+)","responses":{"200":{"description":"Enabled supplier.","content":{"application/json":{"schema":{"type":"object","required":["success","data"],"properties":{"success":{"type":"boolean","example":true},"data":{"$ref":"#/components/schemas/Supplier"}}}}}},"400":{"$ref":"#/components/responses/ValidationError"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"409":{"description":"Conflict.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"$ref":"#/components/responses/RateLimited"}}}},"/suppliers/{id}/events":{"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string"},"description":"Supplier pool doc id."},{"$ref":"#/components/parameters/OrgHeader"}],"post":{"operationId":"assignSupplierToEvent","tags":["Suppliers"],"summary":"Assign the supplier to an event (managers+). The event must be in the caller org.","requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SupplierAssign"}}}},"responses":{"201":{"description":"Updated pool.","content":{"application/json":{"schema":{"type":"object","required":["success","data"],"properties":{"success":{"type":"boolean","example":true},"data":{"$ref":"#/components/schemas/Supplier"}}}}}},"400":{"$ref":"#/components/responses/ValidationError"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"409":{"description":"Conflict.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"$ref":"#/components/responses/RateLimited"}}}},"/suppliers/{id}/events/{eventId}":{"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string"},"description":"Supplier pool doc id."},{"name":"eventId","in":"path","required":true,"schema":{"type":"string"}},{"$ref":"#/components/parameters/OrgHeader"}],"delete":{"operationId":"unassignSupplierFromEvent","tags":["Suppliers"],"summary":"Unassign the event (soft — status REMOVED, managers+)","responses":{"204":{"description":"Unassigned."},"400":{"$ref":"#/components/responses/ValidationError"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/RateLimited"}}}},"/events/{eventId}/accommodation/{recordId}/submit":{"parameters":[{"$ref":"#/components/parameters/EventIdPath"},{"$ref":"#/components/parameters/RecordId"},{"$ref":"#/components/parameters/OrgHeader"}],"post":{"operationId":"submitAccommodationRecord","tags":["Children"],"summary":"Submit a accommodation record for review (supplier/member; sets submitted)","responses":{"200":{"description":"Updated record.","content":{"application/json":{"schema":{"type":"object","required":["success","data"],"properties":{"success":{"type":"boolean","example":true},"data":{"$ref":"#/components/schemas/ChildRecord"}}}}}},"400":{"$ref":"#/components/responses/ValidationError"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/RateLimited"}}}},"/events/{eventId}/accommodation/{recordId}/review":{"parameters":[{"$ref":"#/components/parameters/EventIdPath"},{"$ref":"#/components/parameters/RecordId"},{"$ref":"#/components/parameters/OrgHeader"}],"post":{"operationId":"reviewAccommodationRecord","tags":["Children"],"summary":"Review a accommodation record (managers+; sets reviewed + feedback)","requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"feedback":{"type":"string"}}}}}},"responses":{"200":{"description":"Updated record.","content":{"application/json":{"schema":{"type":"object","required":["success","data"],"properties":{"success":{"type":"boolean","example":true},"data":{"$ref":"#/components/schemas/ChildRecord"}}}}}},"400":{"$ref":"#/components/responses/ValidationError"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/RateLimited"}}}},"/events/{eventId}/accommodation/{recordId}/approve":{"parameters":[{"$ref":"#/components/parameters/EventIdPath"},{"$ref":"#/components/parameters/RecordId"},{"$ref":"#/components/parameters/OrgHeader"}],"post":{"operationId":"approveAccommodationRecord","tags":["Children"],"summary":"Approve a accommodation record (managers+; sets approved)","responses":{"200":{"description":"Updated record.","content":{"application/json":{"schema":{"type":"object","required":["success","data"],"properties":{"success":{"type":"boolean","example":true},"data":{"$ref":"#/components/schemas/ChildRecord"}}}}}},"400":{"$ref":"#/components/responses/ValidationError"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/RateLimited"}}}},"/events/{eventId}/flights/{recordId}/submit":{"parameters":[{"$ref":"#/components/parameters/EventIdPath"},{"$ref":"#/components/parameters/RecordId"},{"$ref":"#/components/parameters/OrgHeader"}],"post":{"operationId":"submitFlightsRecord","tags":["Children"],"summary":"Submit a flights record for review (supplier/member; sets submitted)","responses":{"200":{"description":"Updated record.","content":{"application/json":{"schema":{"type":"object","required":["success","data"],"properties":{"success":{"type":"boolean","example":true},"data":{"$ref":"#/components/schemas/ChildRecord"}}}}}},"400":{"$ref":"#/components/responses/ValidationError"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/RateLimited"}}}},"/events/{eventId}/flights/{recordId}/review":{"parameters":[{"$ref":"#/components/parameters/EventIdPath"},{"$ref":"#/components/parameters/RecordId"},{"$ref":"#/components/parameters/OrgHeader"}],"post":{"operationId":"reviewFlightsRecord","tags":["Children"],"summary":"Review a flights record (managers+; sets reviewed + feedback)","requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"feedback":{"type":"string"}}}}}},"responses":{"200":{"description":"Updated record.","content":{"application/json":{"schema":{"type":"object","required":["success","data"],"properties":{"success":{"type":"boolean","example":true},"data":{"$ref":"#/components/schemas/ChildRecord"}}}}}},"400":{"$ref":"#/components/responses/ValidationError"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/RateLimited"}}}},"/events/{eventId}/flights/{recordId}/approve":{"parameters":[{"$ref":"#/components/parameters/EventIdPath"},{"$ref":"#/components/parameters/RecordId"},{"$ref":"#/components/parameters/OrgHeader"}],"post":{"operationId":"approveFlightsRecord","tags":["Children"],"summary":"Approve a flights record (managers+; sets approved)","responses":{"200":{"description":"Updated record.","content":{"application/json":{"schema":{"type":"object","required":["success","data"],"properties":{"success":{"type":"boolean","example":true},"data":{"$ref":"#/components/schemas/ChildRecord"}}}}}},"400":{"$ref":"#/components/responses/ValidationError"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/RateLimited"}}}},"/events/{eventId}/travel/{recordId}/submit":{"parameters":[{"$ref":"#/components/parameters/EventIdPath"},{"$ref":"#/components/parameters/RecordId"},{"$ref":"#/components/parameters/OrgHeader"}],"post":{"operationId":"submitTravelRecord","tags":["Children"],"summary":"Submit a travel record for review (supplier/member; sets submitted)","responses":{"200":{"description":"Updated record.","content":{"application/json":{"schema":{"type":"object","required":["success","data"],"properties":{"success":{"type":"boolean","example":true},"data":{"$ref":"#/components/schemas/ChildRecord"}}}}}},"400":{"$ref":"#/components/responses/ValidationError"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/RateLimited"}}}},"/events/{eventId}/travel/{recordId}/review":{"parameters":[{"$ref":"#/components/parameters/EventIdPath"},{"$ref":"#/components/parameters/RecordId"},{"$ref":"#/components/parameters/OrgHeader"}],"post":{"operationId":"reviewTravelRecord","tags":["Children"],"summary":"Review a travel record (managers+; sets reviewed + feedback)","requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"feedback":{"type":"string"}}}}}},"responses":{"200":{"description":"Updated record.","content":{"application/json":{"schema":{"type":"object","required":["success","data"],"properties":{"success":{"type":"boolean","example":true},"data":{"$ref":"#/components/schemas/ChildRecord"}}}}}},"400":{"$ref":"#/components/responses/ValidationError"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/RateLimited"}}}},"/events/{eventId}/travel/{recordId}/approve":{"parameters":[{"$ref":"#/components/parameters/EventIdPath"},{"$ref":"#/components/parameters/RecordId"},{"$ref":"#/components/parameters/OrgHeader"}],"post":{"operationId":"approveTravelRecord","tags":["Children"],"summary":"Approve a travel record (managers+; sets approved)","responses":{"200":{"description":"Updated record.","content":{"application/json":{"schema":{"type":"object","required":["success","data"],"properties":{"success":{"type":"boolean","example":true},"data":{"$ref":"#/components/schemas/ChildRecord"}}}}}},"400":{"$ref":"#/components/responses/ValidationError"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/RateLimited"}}}},"/events/{eventId}/transport/{recordId}/submit":{"parameters":[{"$ref":"#/components/parameters/EventIdPath"},{"$ref":"#/components/parameters/RecordId"},{"$ref":"#/components/parameters/OrgHeader"}],"post":{"operationId":"submitTransportRecord","tags":["Children"],"summary":"Submit a transport record for review (supplier/member; sets submitted)","responses":{"200":{"description":"Updated record.","content":{"application/json":{"schema":{"type":"object","required":["success","data"],"properties":{"success":{"type":"boolean","example":true},"data":{"$ref":"#/components/schemas/ChildRecord"}}}}}},"400":{"$ref":"#/components/responses/ValidationError"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/RateLimited"}}}},"/events/{eventId}/transport/{recordId}/review":{"parameters":[{"$ref":"#/components/parameters/EventIdPath"},{"$ref":"#/components/parameters/RecordId"},{"$ref":"#/components/parameters/OrgHeader"}],"post":{"operationId":"reviewTransportRecord","tags":["Children"],"summary":"Review a transport record (managers+; sets reviewed + feedback)","requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"feedback":{"type":"string"}}}}}},"responses":{"200":{"description":"Updated record.","content":{"application/json":{"schema":{"type":"object","required":["success","data"],"properties":{"success":{"type":"boolean","example":true},"data":{"$ref":"#/components/schemas/ChildRecord"}}}}}},"400":{"$ref":"#/components/responses/ValidationError"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/RateLimited"}}}},"/events/{eventId}/transport/{recordId}/approve":{"parameters":[{"$ref":"#/components/parameters/EventIdPath"},{"$ref":"#/components/parameters/RecordId"},{"$ref":"#/components/parameters/OrgHeader"}],"post":{"operationId":"approveTransportRecord","tags":["Children"],"summary":"Approve a transport record (managers+; sets approved)","responses":{"200":{"description":"Updated record.","content":{"application/json":{"schema":{"type":"object","required":["success","data"],"properties":{"success":{"type":"boolean","example":true},"data":{"$ref":"#/components/schemas/ChildRecord"}}}}}},"400":{"$ref":"#/components/responses/ValidationError"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/RateLimited"}}}},"/events/{eventId}/private-jets/{recordId}/submit":{"parameters":[{"$ref":"#/components/parameters/EventIdPath"},{"$ref":"#/components/parameters/RecordId"},{"$ref":"#/components/parameters/OrgHeader"}],"post":{"operationId":"submitPrivateJetsRecord","tags":["Children"],"summary":"Submit a private-jets record for review (supplier/member; sets submitted)","responses":{"200":{"description":"Updated record.","content":{"application/json":{"schema":{"type":"object","required":["success","data"],"properties":{"success":{"type":"boolean","example":true},"data":{"$ref":"#/components/schemas/ChildRecord"}}}}}},"400":{"$ref":"#/components/responses/ValidationError"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/RateLimited"}}}},"/events/{eventId}/private-jets/{recordId}/review":{"parameters":[{"$ref":"#/components/parameters/EventIdPath"},{"$ref":"#/components/parameters/RecordId"},{"$ref":"#/components/parameters/OrgHeader"}],"post":{"operationId":"reviewPrivateJetsRecord","tags":["Children"],"summary":"Review a private-jets record (managers+; sets reviewed + feedback)","requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"feedback":{"type":"string"}}}}}},"responses":{"200":{"description":"Updated record.","content":{"application/json":{"schema":{"type":"object","required":["success","data"],"properties":{"success":{"type":"boolean","example":true},"data":{"$ref":"#/components/schemas/ChildRecord"}}}}}},"400":{"$ref":"#/components/responses/ValidationError"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/RateLimited"}}}},"/events/{eventId}/private-jets/{recordId}/approve":{"parameters":[{"$ref":"#/components/parameters/EventIdPath"},{"$ref":"#/components/parameters/RecordId"},{"$ref":"#/components/parameters/OrgHeader"}],"post":{"operationId":"approvePrivateJetsRecord","tags":["Children"],"summary":"Approve a private-jets record (managers+; sets approved)","responses":{"200":{"description":"Updated record.","content":{"application/json":{"schema":{"type":"object","required":["success","data"],"properties":{"success":{"type":"boolean","example":true},"data":{"$ref":"#/components/schemas/ChildRecord"}}}}}},"400":{"$ref":"#/components/responses/ValidationError"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/RateLimited"}}}},"/events/{eventId}/food-beverage/{recordId}/submit":{"parameters":[{"$ref":"#/components/parameters/EventIdPath"},{"$ref":"#/components/parameters/RecordId"},{"$ref":"#/components/parameters/OrgHeader"}],"post":{"operationId":"submitFoodBeverageRecord","tags":["Children"],"summary":"Submit a food-beverage record for review (supplier/member; sets submitted)","responses":{"200":{"description":"Updated record.","content":{"application/json":{"schema":{"type":"object","required":["success","data"],"properties":{"success":{"type":"boolean","example":true},"data":{"$ref":"#/components/schemas/ChildRecord"}}}}}},"400":{"$ref":"#/components/responses/ValidationError"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/RateLimited"}}}},"/events/{eventId}/food-beverage/{recordId}/review":{"parameters":[{"$ref":"#/components/parameters/EventIdPath"},{"$ref":"#/components/parameters/RecordId"},{"$ref":"#/components/parameters/OrgHeader"}],"post":{"operationId":"reviewFoodBeverageRecord","tags":["Children"],"summary":"Review a food-beverage record (managers+; sets reviewed + feedback)","requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"feedback":{"type":"string"}}}}}},"responses":{"200":{"description":"Updated record.","content":{"application/json":{"schema":{"type":"object","required":["success","data"],"properties":{"success":{"type":"boolean","example":true},"data":{"$ref":"#/components/schemas/ChildRecord"}}}}}},"400":{"$ref":"#/components/responses/ValidationError"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/RateLimited"}}}},"/events/{eventId}/food-beverage/{recordId}/approve":{"parameters":[{"$ref":"#/components/parameters/EventIdPath"},{"$ref":"#/components/parameters/RecordId"},{"$ref":"#/components/parameters/OrgHeader"}],"post":{"operationId":"approveFoodBeverageRecord","tags":["Children"],"summary":"Approve a food-beverage record (managers+; sets approved)","responses":{"200":{"description":"Updated record.","content":{"application/json":{"schema":{"type":"object","required":["success","data"],"properties":{"success":{"type":"boolean","example":true},"data":{"$ref":"#/components/schemas/ChildRecord"}}}}}},"400":{"$ref":"#/components/responses/ValidationError"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/RateLimited"}}}},"/events/{eventId}/drinks/{recordId}/submit":{"parameters":[{"$ref":"#/components/parameters/EventIdPath"},{"$ref":"#/components/parameters/RecordId"},{"$ref":"#/components/parameters/OrgHeader"}],"post":{"operationId":"submitDrinksRecord","tags":["Children"],"summary":"Submit a drinks record for review (supplier/member; sets submitted)","responses":{"200":{"description":"Updated record.","content":{"application/json":{"schema":{"type":"object","required":["success","data"],"properties":{"success":{"type":"boolean","example":true},"data":{"$ref":"#/components/schemas/ChildRecord"}}}}}},"400":{"$ref":"#/components/responses/ValidationError"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/RateLimited"}}}},"/events/{eventId}/drinks/{recordId}/review":{"parameters":[{"$ref":"#/components/parameters/EventIdPath"},{"$ref":"#/components/parameters/RecordId"},{"$ref":"#/components/parameters/OrgHeader"}],"post":{"operationId":"reviewDrinksRecord","tags":["Children"],"summary":"Review a drinks record (managers+; sets reviewed + feedback)","requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"feedback":{"type":"string"}}}}}},"responses":{"200":{"description":"Updated record.","content":{"application/json":{"schema":{"type":"object","required":["success","data"],"properties":{"success":{"type":"boolean","example":true},"data":{"$ref":"#/components/schemas/ChildRecord"}}}}}},"400":{"$ref":"#/components/responses/ValidationError"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/RateLimited"}}}},"/events/{eventId}/drinks/{recordId}/approve":{"parameters":[{"$ref":"#/components/parameters/EventIdPath"},{"$ref":"#/components/parameters/RecordId"},{"$ref":"#/components/parameters/OrgHeader"}],"post":{"operationId":"approveDrinksRecord","tags":["Children"],"summary":"Approve a drinks record (managers+; sets approved)","responses":{"200":{"description":"Updated record.","content":{"application/json":{"schema":{"type":"object","required":["success","data"],"properties":{"success":{"type":"boolean","example":true},"data":{"$ref":"#/components/schemas/ChildRecord"}}}}}},"400":{"$ref":"#/components/responses/ValidationError"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/RateLimited"}}}},"/events/{eventId}/venue/{recordId}/submit":{"parameters":[{"$ref":"#/components/parameters/EventIdPath"},{"$ref":"#/components/parameters/RecordId"},{"$ref":"#/components/parameters/OrgHeader"}],"post":{"operationId":"submitVenueRecord","tags":["Children"],"summary":"Submit a venue record for review (supplier/member; sets submitted)","responses":{"200":{"description":"Updated record.","content":{"application/json":{"schema":{"type":"object","required":["success","data"],"properties":{"success":{"type":"boolean","example":true},"data":{"$ref":"#/components/schemas/ChildRecord"}}}}}},"400":{"$ref":"#/components/responses/ValidationError"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/RateLimited"}}}},"/events/{eventId}/venue/{recordId}/review":{"parameters":[{"$ref":"#/components/parameters/EventIdPath"},{"$ref":"#/components/parameters/RecordId"},{"$ref":"#/components/parameters/OrgHeader"}],"post":{"operationId":"reviewVenueRecord","tags":["Children"],"summary":"Review a venue record (managers+; sets reviewed + feedback)","requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"feedback":{"type":"string"}}}}}},"responses":{"200":{"description":"Updated record.","content":{"application/json":{"schema":{"type":"object","required":["success","data"],"properties":{"success":{"type":"boolean","example":true},"data":{"$ref":"#/components/schemas/ChildRecord"}}}}}},"400":{"$ref":"#/components/responses/ValidationError"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/RateLimited"}}}},"/events/{eventId}/venue/{recordId}/approve":{"parameters":[{"$ref":"#/components/parameters/EventIdPath"},{"$ref":"#/components/parameters/RecordId"},{"$ref":"#/components/parameters/OrgHeader"}],"post":{"operationId":"approveVenueRecord","tags":["Children"],"summary":"Approve a venue record (managers+; sets approved)","responses":{"200":{"description":"Updated record.","content":{"application/json":{"schema":{"type":"object","required":["success","data"],"properties":{"success":{"type":"boolean","example":true},"data":{"$ref":"#/components/schemas/ChildRecord"}}}}}},"400":{"$ref":"#/components/responses/ValidationError"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/RateLimited"}}}},"/events/{eventId}/virtual/{recordId}/submit":{"parameters":[{"$ref":"#/components/parameters/EventIdPath"},{"$ref":"#/components/parameters/RecordId"},{"$ref":"#/components/parameters/OrgHeader"}],"post":{"operationId":"submitVirtualRecord","tags":["Children"],"summary":"Submit a virtual record for review (supplier/member; sets submitted)","responses":{"200":{"description":"Updated record.","content":{"application/json":{"schema":{"type":"object","required":["success","data"],"properties":{"success":{"type":"boolean","example":true},"data":{"$ref":"#/components/schemas/ChildRecord"}}}}}},"400":{"$ref":"#/components/responses/ValidationError"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/RateLimited"}}}},"/events/{eventId}/virtual/{recordId}/review":{"parameters":[{"$ref":"#/components/parameters/EventIdPath"},{"$ref":"#/components/parameters/RecordId"},{"$ref":"#/components/parameters/OrgHeader"}],"post":{"operationId":"reviewVirtualRecord","tags":["Children"],"summary":"Review a virtual record (managers+; sets reviewed + feedback)","requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"feedback":{"type":"string"}}}}}},"responses":{"200":{"description":"Updated record.","content":{"application/json":{"schema":{"type":"object","required":["success","data"],"properties":{"success":{"type":"boolean","example":true},"data":{"$ref":"#/components/schemas/ChildRecord"}}}}}},"400":{"$ref":"#/components/responses/ValidationError"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/RateLimited"}}}},"/events/{eventId}/virtual/{recordId}/approve":{"parameters":[{"$ref":"#/components/parameters/EventIdPath"},{"$ref":"#/components/parameters/RecordId"},{"$ref":"#/components/parameters/OrgHeader"}],"post":{"operationId":"approveVirtualRecord","tags":["Children"],"summary":"Approve a virtual record (managers+; sets approved)","responses":{"200":{"description":"Updated record.","content":{"application/json":{"schema":{"type":"object","required":["success","data"],"properties":{"success":{"type":"boolean","example":true},"data":{"$ref":"#/components/schemas/ChildRecord"}}}}}},"400":{"$ref":"#/components/responses/ValidationError"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/RateLimited"}}}},"/events/{eventId}/waste/{recordId}/submit":{"parameters":[{"$ref":"#/components/parameters/EventIdPath"},{"$ref":"#/components/parameters/RecordId"},{"$ref":"#/components/parameters/OrgHeader"}],"post":{"operationId":"submitWasteRecord","tags":["Children"],"summary":"Submit a waste record for review (supplier/member; sets submitted)","responses":{"200":{"description":"Updated record.","content":{"application/json":{"schema":{"type":"object","required":["success","data"],"properties":{"success":{"type":"boolean","example":true},"data":{"$ref":"#/components/schemas/ChildRecord"}}}}}},"400":{"$ref":"#/components/responses/ValidationError"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/RateLimited"}}}},"/events/{eventId}/waste/{recordId}/review":{"parameters":[{"$ref":"#/components/parameters/EventIdPath"},{"$ref":"#/components/parameters/RecordId"},{"$ref":"#/components/parameters/OrgHeader"}],"post":{"operationId":"reviewWasteRecord","tags":["Children"],"summary":"Review a waste record (managers+; sets reviewed + feedback)","requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"feedback":{"type":"string"}}}}}},"responses":{"200":{"description":"Updated record.","content":{"application/json":{"schema":{"type":"object","required":["success","data"],"properties":{"success":{"type":"boolean","example":true},"data":{"$ref":"#/components/schemas/ChildRecord"}}}}}},"400":{"$ref":"#/components/responses/ValidationError"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/RateLimited"}}}},"/events/{eventId}/waste/{recordId}/approve":{"parameters":[{"$ref":"#/components/parameters/EventIdPath"},{"$ref":"#/components/parameters/RecordId"},{"$ref":"#/components/parameters/OrgHeader"}],"post":{"operationId":"approveWasteRecord","tags":["Children"],"summary":"Approve a waste record (managers+; sets approved)","responses":{"200":{"description":"Updated record.","content":{"application/json":{"schema":{"type":"object","required":["success","data"],"properties":{"success":{"type":"boolean","example":true},"data":{"$ref":"#/components/schemas/ChildRecord"}}}}}},"400":{"$ref":"#/components/responses/ValidationError"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/RateLimited"}}}},"/events/{eventId}/printed-materials/{recordId}/submit":{"parameters":[{"$ref":"#/components/parameters/EventIdPath"},{"$ref":"#/components/parameters/RecordId"},{"$ref":"#/components/parameters/OrgHeader"}],"post":{"operationId":"submitPrintedMaterialsRecord","tags":["Children"],"summary":"Submit a printed-materials record for review (supplier/member; sets submitted)","responses":{"200":{"description":"Updated record.","content":{"application/json":{"schema":{"type":"object","required":["success","data"],"properties":{"success":{"type":"boolean","example":true},"data":{"$ref":"#/components/schemas/ChildRecord"}}}}}},"400":{"$ref":"#/components/responses/ValidationError"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/RateLimited"}}}},"/events/{eventId}/printed-materials/{recordId}/review":{"parameters":[{"$ref":"#/components/parameters/EventIdPath"},{"$ref":"#/components/parameters/RecordId"},{"$ref":"#/components/parameters/OrgHeader"}],"post":{"operationId":"reviewPrintedMaterialsRecord","tags":["Children"],"summary":"Review a printed-materials record (managers+; sets reviewed + feedback)","requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"feedback":{"type":"string"}}}}}},"responses":{"200":{"description":"Updated record.","content":{"application/json":{"schema":{"type":"object","required":["success","data"],"properties":{"success":{"type":"boolean","example":true},"data":{"$ref":"#/components/schemas/ChildRecord"}}}}}},"400":{"$ref":"#/components/responses/ValidationError"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/RateLimited"}}}},"/events/{eventId}/printed-materials/{recordId}/approve":{"parameters":[{"$ref":"#/components/parameters/EventIdPath"},{"$ref":"#/components/parameters/RecordId"},{"$ref":"#/components/parameters/OrgHeader"}],"post":{"operationId":"approvePrintedMaterialsRecord","tags":["Children"],"summary":"Approve a printed-materials record (managers+; sets approved)","responses":{"200":{"description":"Updated record.","content":{"application/json":{"schema":{"type":"object","required":["success","data"],"properties":{"success":{"type":"boolean","example":true},"data":{"$ref":"#/components/schemas/ChildRecord"}}}}}},"400":{"$ref":"#/components/responses/ValidationError"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/RateLimited"}}}},"/events/{eventId}/production-items/{recordId}/submit":{"parameters":[{"$ref":"#/components/parameters/EventIdPath"},{"$ref":"#/components/parameters/RecordId"},{"$ref":"#/components/parameters/OrgHeader"}],"post":{"operationId":"submitProductionItemsRecord","tags":["Children"],"summary":"Submit a production-items record for review (supplier/member; sets submitted)","responses":{"200":{"description":"Updated record.","content":{"application/json":{"schema":{"type":"object","required":["success","data"],"properties":{"success":{"type":"boolean","example":true},"data":{"$ref":"#/components/schemas/ChildRecord"}}}}}},"400":{"$ref":"#/components/responses/ValidationError"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/RateLimited"}}}},"/events/{eventId}/production-items/{recordId}/review":{"parameters":[{"$ref":"#/components/parameters/EventIdPath"},{"$ref":"#/components/parameters/RecordId"},{"$ref":"#/components/parameters/OrgHeader"}],"post":{"operationId":"reviewProductionItemsRecord","tags":["Children"],"summary":"Review a production-items record (managers+; sets reviewed + feedback)","requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"feedback":{"type":"string"}}}}}},"responses":{"200":{"description":"Updated record.","content":{"application/json":{"schema":{"type":"object","required":["success","data"],"properties":{"success":{"type":"boolean","example":true},"data":{"$ref":"#/components/schemas/ChildRecord"}}}}}},"400":{"$ref":"#/components/responses/ValidationError"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/RateLimited"}}}},"/events/{eventId}/production-items/{recordId}/approve":{"parameters":[{"$ref":"#/components/parameters/EventIdPath"},{"$ref":"#/components/parameters/RecordId"},{"$ref":"#/components/parameters/OrgHeader"}],"post":{"operationId":"approveProductionItemsRecord","tags":["Children"],"summary":"Approve a production-items record (managers+; sets approved)","responses":{"200":{"description":"Updated record.","content":{"application/json":{"schema":{"type":"object","required":["success","data"],"properties":{"success":{"type":"boolean","example":true},"data":{"$ref":"#/components/schemas/ChildRecord"}}}}}},"400":{"$ref":"#/components/responses/ValidationError"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/RateLimited"}}}}},"components":{"securitySchemes":{"bearerAuth":{"type":"http","scheme":"bearer","bearerFormat":"JWT","description":"AWS Cognito access token."}},"parameters":{"OrgHeader":{"name":"X-Organization-Id","in":"header","required":false,"schema":{"type":"string"},"description":"Target organization ObjectId; required for APP_ADMIN and SUPPLIER callers and ignored (must match the caller's own org) for org admins, managers, and users."},"Page":{"name":"page","in":"query","required":false,"schema":{"type":"integer","minimum":1,"default":1},"description":"Page number to retrieve (1-based); integer, minimum 1, defaults to 1."},"Limit":{"name":"limit","in":"query","required":false,"schema":{"type":"integer","minimum":1,"maximum":100,"default":25},"description":"Page size (number of records per page); integer, minimum 1, maximum 100, defaults to 25."},"EventId":{"name":"id","in":"path","required":true,"schema":{"type":"string"},"description":"ObjectId of the target event in the path. Used only by /events/{id}."},"EventIdPath":{"name":"eventId","in":"path","required":true,"schema":{"type":"string"},"description":"ObjectId of the parent event in the path."},"RecordId":{"name":"recordId","in":"path","required":true,"schema":{"type":"string"},"description":"ObjectId of the per-event carbon-source child record in the path."},"UserId":{"name":"id","in":"path","required":true,"schema":{"type":"string"},"description":"ObjectId of the target user in the path."}},"schemas":{"Event":{"type":"object","properties":{"_id":{"type":"string","example":"665f1c2a9b1e4a0012ab34cd","description":"Server-generated MongoDB ObjectId uniquely identifying the event (read-only)."},"title":{"type":"string","description":"Event name shown in the create/edit form; required, trimmed, non-empty string."},"code":{"type":"string","description":"Server-generated UUID identifying the event (read-only)."},"start":{"type":"string","format":"date-time","description":"Event start date; required date (the form labels it \"Event Start Date\" and requires it to be at least one day in the future)."},"end":{"type":"string","format":"date-time","description":"Event end date; required date that must be on or after the start date."},"status":{"type":"string","enum":["PRE_EVENT","POST_EVENT","COMPLETED","OPEN"],"description":"Event lifecycle status — one of PRE_EVENT (\"Pre-event\"), POST_EVENT (\"Post-event\"), COMPLETED (\"Completed\") or OPEN (\"Open\"); server-controlled and set by lifecycle/cron, not by the client."},"format":{"type":"string","description":"Event format — one of IN_PERSON (\"In Person\"), VIRTUAL (\"Virtual\") or HYBRID (\"Hybrid\"); required."},"clientId":{"type":"string","description":"ObjectId reference to the owning organization; set server-side from the authenticated caller and never accepted from the client."},"clientName":{"type":"string","description":"Denormalized name of the owning client/organization, displayed as the read-only \"Client Name\" field."},"category":{"type":"string","nullable":true,"description":"Optional event category, selected from the organization's categories and stored as the category ObjectId."},"currency":{"type":"string","nullable":true,"description":"Optional currency for the event budget, selected from the currency list."},"projectJobNumber":{"type":"string","nullable":true,"description":"Optional project/job reference identifying the event; accepted and stored as a nullable string (no uniqueness enforced by the v2 API). The create/edit form surfaces it with the tooltip \"This is an optional number that uniquely identifies your event\"."},"departmentId":{"type":"string","nullable":true,"description":"Optional ObjectId reference to the department/SBU the event belongs to."},"userGroupId":{"type":"string","nullable":true,"description":"Optional ObjectId reference to the user group the event is assigned to."},"budget":{"type":"string","nullable":true,"description":"Optional event budget amount (non-negative number)."},"country":{"type":"string","nullable":true,"description":"Optional country where the event takes place, selected from the country list."},"city":{"type":"string","nullable":true,"description":"Optional city, region or state where the event takes place."},"summary":{"type":"string","nullable":true,"description":"Optional free-text note giving a brief summary of the event's activities."},"venueName":{"type":"string","nullable":true,"description":"Optional name of the event's main venue."},"venueType":{"type":"string","nullable":true,"description":"Optional venue type — typically Indoor, Outdoor or Both."},"venueFormat":{"type":"string","nullable":true,"description":"Optional venue format for the event."},"industryType":{"type":"string","nullable":true,"description":"Optional industry/sector type of the event, inherited from the organization (the form shows it as a disabled, non-editable field)."},"emission":{"type":"number","description":"Computed total event emissions in kgCO2e (read-only, server-calculated)."},"estimatedInPersonAttendies":{"type":"number","nullable":true,"description":"Optional estimated number of in-person attendees (non-negative; shown for in-person/hybrid events)."},"estimatedVirtualAttendies":{"type":"number","nullable":true,"description":"Optional estimated number of virtual attendees (non-negative; shown for virtual/hybrid events)."},"estimatedCrewMembers":{"type":"number","nullable":true,"description":"Optional estimated number of staff/crew members for the event (non-negative)."},"fieldsToCalculate":{"type":"array","items":{"type":"string"},"nullable":true,"description":"Optional list of carbon-source parameters to include in emission calculations — e.g. ACCOMODATION_PARAMETER (\"Accommodation\"), FOODANDBEVVERAGES_PARAMETER (\"Food and Beverages\"), PRINTEDMATERIAL_PARAMETER (\"Printed Materials\"), VENUE_PARAMETER (\"Venue (Energy)\"), PRODUCTION_PARAMETER (\"Production and Build Items\"), TRAVEL_PARAMETER (\"Travel\"), WASTE_PARAMETER (\"Waste Management\"), VIRTUAL_PARAMETER (\"Virtual\") and TRANSPORTATION_PARAMETER (\"Freight and Shipping\"); defaults to all parameters."},"createdAt":{"type":"string","format":"date-time","description":"Server-generated timestamp recording when the event was created (read-only)."},"updatedAt":{"type":"string","format":"date-time","description":"Server-generated timestamp recording when the event was last updated (read-only)."}}},"EventCreate":{"type":"object","required":["title","start","end","format"],"properties":{"title":{"type":"string","description":"Event name shown in the create/edit form; required, trimmed, non-empty string."},"start":{"type":"string","format":"date-time","description":"Event start date; required date (the form labels it \"Event Start Date\" and requires it to be at least one day in the future)."},"end":{"type":"string","format":"date-time","description":"Event end date; required date that must be on or after the start date."},"format":{"type":"string","description":"Event format — one of IN_PERSON (\"In Person\"), VIRTUAL (\"Virtual\") or HYBRID (\"Hybrid\"); required."},"category":{"type":"string","nullable":true,"description":"Optional event category, selected from the organization's categories and stored as the category ObjectId."},"currency":{"type":"string","nullable":true,"description":"Optional currency for the event budget, selected from the currency list."},"projectJobNumber":{"type":"string","nullable":true,"description":"Optional project/job reference identifying the event; accepted and stored as a nullable string (no uniqueness enforced by the v2 API). The create/edit form surfaces it with the tooltip \"This is an optional number that uniquely identifies your event\"."},"departmentId":{"type":"string","nullable":true,"description":"Optional ObjectId reference to the department/SBU the event belongs to."},"userGroupId":{"type":"string","nullable":true,"description":"Optional ObjectId reference to the user group the event is assigned to."},"budget":{"type":"string","nullable":true,"description":"Optional event budget amount (non-negative number)."},"country":{"type":"string","nullable":true,"description":"Optional country where the event takes place, selected from the country list."},"city":{"type":"string","nullable":true,"description":"Optional city, region or state where the event takes place."},"summary":{"type":"string","nullable":true,"description":"Optional free-text note giving a brief summary of the event's activities."},"venueName":{"type":"string","nullable":true,"description":"Optional name of the event's main venue."},"venueType":{"type":"string","nullable":true,"description":"Optional venue type — typically Indoor, Outdoor or Both."},"venueFormat":{"type":"string","nullable":true,"description":"Optional venue format for the event."},"industryType":{"type":"string","nullable":true,"description":"Optional industry/sector type of the event, inherited from the organization (the form shows it as a disabled, non-editable field)."},"estimatedInPersonAttendies":{"type":"number","nullable":true,"description":"Optional estimated number of in-person attendees (non-negative; shown for in-person/hybrid events)."},"estimatedVirtualAttendies":{"type":"number","nullable":true,"description":"Optional estimated number of virtual attendees (non-negative; shown for virtual/hybrid events)."},"estimatedCrewMembers":{"type":"number","nullable":true,"description":"Optional estimated number of staff/crew members for the event (non-negative)."},"fieldsToCalculate":{"type":"array","items":{"type":"string"},"nullable":true,"description":"Optional list of carbon-source parameters to include in emission calculations — e.g. ACCOMODATION_PARAMETER (\"Accommodation\"), FOODANDBEVVERAGES_PARAMETER (\"Food and Beverages\"), PRINTEDMATERIAL_PARAMETER (\"Printed Materials\"), VENUE_PARAMETER (\"Venue (Energy)\"), PRODUCTION_PARAMETER (\"Production and Build Items\"), TRAVEL_PARAMETER (\"Travel\"), WASTE_PARAMETER (\"Waste Management\"), VIRTUAL_PARAMETER (\"Virtual\") and TRANSPORTATION_PARAMETER (\"Freight and Shipping\"); defaults to all parameters."}}},"EventUpdate":{"type":"object","properties":{"title":{"type":"string","description":"Event name shown in the create/edit form; required, trimmed, non-empty string."},"start":{"type":"string","format":"date-time","description":"Event start date; required date (the form labels it \"Event Start Date\" and requires it to be at least one day in the future)."},"end":{"type":"string","format":"date-time","description":"Event end date; required date that must be on or after the start date."},"format":{"type":"string","description":"Event format — one of IN_PERSON (\"In Person\"), VIRTUAL (\"Virtual\") or HYBRID (\"Hybrid\"); required."},"category":{"type":"string","nullable":true,"description":"Optional event category, selected from the organization's categories and stored as the category ObjectId."},"currency":{"type":"string","nullable":true,"description":"Optional currency for the event budget, selected from the currency list."},"projectJobNumber":{"type":"string","nullable":true,"description":"Optional project/job reference identifying the event; accepted and stored as a nullable string (no uniqueness enforced by the v2 API). The create/edit form surfaces it with the tooltip \"This is an optional number that uniquely identifies your event\"."},"departmentId":{"type":"string","nullable":true,"description":"Optional ObjectId reference to the department/SBU the event belongs to."},"userGroupId":{"type":"string","nullable":true,"description":"Optional ObjectId reference to the user group the event is assigned to."},"budget":{"type":"string","nullable":true,"description":"Optional event budget amount (non-negative number)."},"country":{"type":"string","nullable":true,"description":"Optional country where the event takes place, selected from the country list."},"city":{"type":"string","nullable":true,"description":"Optional city, region or state where the event takes place."},"summary":{"type":"string","nullable":true,"description":"Optional free-text note giving a brief summary of the event's activities."},"venueName":{"type":"string","nullable":true,"description":"Optional name of the event's main venue."},"venueType":{"type":"string","nullable":true,"description":"Optional venue type — typically Indoor, Outdoor or Both."},"venueFormat":{"type":"string","nullable":true,"description":"Optional venue format for the event."},"industryType":{"type":"string","nullable":true,"description":"Optional industry/sector type of the event, inherited from the organization (the form shows it as a disabled, non-editable field)."},"estimatedInPersonAttendies":{"type":"number","nullable":true,"description":"Optional estimated number of in-person attendees (non-negative; shown for in-person/hybrid events)."},"estimatedVirtualAttendies":{"type":"number","nullable":true,"description":"Optional estimated number of virtual attendees (non-negative; shown for virtual/hybrid events)."},"estimatedCrewMembers":{"type":"number","nullable":true,"description":"Optional estimated number of staff/crew members for the event (non-negative)."},"fieldsToCalculate":{"type":"array","items":{"type":"string"},"nullable":true,"description":"Optional list of carbon-source parameters to include in emission calculations — e.g. ACCOMODATION_PARAMETER (\"Accommodation\"), FOODANDBEVVERAGES_PARAMETER (\"Food and Beverages\"), PRINTEDMATERIAL_PARAMETER (\"Printed Materials\"), VENUE_PARAMETER (\"Venue (Energy)\"), PRODUCTION_PARAMETER (\"Production and Build Items\"), TRAVEL_PARAMETER (\"Travel\"), WASTE_PARAMETER (\"Waste Management\"), VIRTUAL_PARAMETER (\"Virtual\") and TRANSPORTATION_PARAMETER (\"Freight and Shipping\"); defaults to all parameters."}}},"Pagination":{"type":"object","properties":{"page":{"type":"integer","description":"The 1-based page number that was returned for this list response."},"limit":{"type":"integer","description":"The page size (maximum number of records) applied to this response, clamped to 1–100 (default 25)."},"total":{"type":"integer","description":"Total number of records matching the query across all pages."},"totalPages":{"type":"integer","description":"Total number of pages available for the query, computed as ceil(total / limit)."}}},"Error":{"type":"object","required":["success","error"],"properties":{"success":{"type":"boolean","example":false},"error":{"type":"object","required":["code","message"],"properties":{"code":{"type":"string","description":"Stable, machine-readable error code that clients branch on (e.g. QUOTA_EXCEEDED, INVALID_CREDENTIALS, NOT_FOUND)."},"message":{"type":"string","description":"Human-readable description of the error, intended for display rather than for branching."},"details":{"description":"Optional structured detail whose shape varies by code (e.g. `{resource, limit, current}` for QUOTA_EXCEEDED)."}}}}},"ChildRecord":{"type":"object","description":"A per-event child record. Common fields below; resource-specific fields vary by child type.","additionalProperties":true,"properties":{"_id":{"type":"string","description":"Server-generated MongoDB ObjectId uniquely identifying this carbon-source record; read-only."},"eventId":{"type":"string","description":"ObjectId of the event this carbon-source record belongs to, inherited from the parent route and stamped server-side; read-only and ignored if sent."},"supplierId":{"type":"string","nullable":true,"description":"ObjectId of the supplier User pinned to this row, set server-side when a supplier creates it and null until a supplier is assigned; read-only and ignored if sent."},"reviewed":{"type":"boolean","description":"Server-controlled workflow flag set true by the manager `review` transition when the event team reviews the row and leaves feedback; read-only and ignored if sent."},"submitted":{"type":"boolean","description":"Server-controlled workflow flag set true by the `submit` transition when a supplier or member hands the row off for the event team's review; read-only and ignored if sent."},"approved":{"type":"boolean","description":"Server-controlled workflow flag set true by the manager `approve` transition; only approved rows are counted in the event's carbon calculation; read-only and ignored if sent."},"feedback":{"type":"string","description":"Manager's free-text review comments shared with the supplier, set by the `review` transition and shown to suppliers as event-team feedback; read-only and ignored on create/update."},"createdAt":{"type":"string","format":"date-time","description":"Server-generated timestamp of when the record was created; read-only."},"updatedAt":{"type":"string","format":"date-time","description":"Server-generated timestamp of the record's last modification; read-only."}}},"ChildInput":{"type":"object","additionalProperties":true,"description":"Resource-specific carbon-source input fields that vary by child type (e.g. accommodation, flights, waste); ownership (eventId/supplierId), the submit/review/approve workflow flags (submitted/reviewed/approved/feedback), and timestamps are server-controlled and silently ignored if supplied, and the supplier workflow is: a supplier or member POSTs /submit to set submitted, managers POST /review to set reviewed plus feedback, and managers POST /approve to set approved."},"User":{"type":"object","properties":{"_id":{"type":"string","description":"Server-generated unique identifier (MongoDB ObjectId) of the user; read-only."},"firstName":{"type":"string","description":"The user's first name, labelled \"First Name\" in the UI and required when sending an invite."},"lastName":{"type":"string","description":"The user's last name, labelled \"Last Name\" in the UI and required when sending an invite."},"email":{"type":"string","format":"email","description":"The user's email address, labelled \"Email\" / \"Email Address\", used as the unique login identity and required when sending an invite."},"companyName":{"type":"string","nullable":true,"description":"Optional company name for the user, shown as the \"Company\" field on a supplier's own profile."},"profileImage":{"type":"string","nullable":true,"description":"Optional URL of the user's profile image; falls back to a default avatar when unset."},"role":{"type":"string","enum":["APP_ADMIN","ORGANIZATION_ADMIN","ORGANIZATION_MANAGER","ORGANIZATION_USER","ORGANIZATION_SUPPLIER"],"description":"The user's platform role — one of APP_ADMIN, ORGANIZATION_ADMIN, ORGANIZATION_MANAGER, ORGANIZATION_USER, or ORGANIZATION_SUPPLIER (displayed as Admin/Manager/User/Supplier) — restricted on invite to ORGANIZATION_ADMIN, ORGANIZATION_MANAGER, or ORGANIZATION_USER."},"organizationId":{"type":"string","nullable":true,"description":"Reference to the organization that owns the user (null for suppliers or pre-organization users); server-controlled on invite — forced from the caller's tenant context and never read from the request body."},"status":{"type":"string","enum":["USER_ACTIVE","USER_DEACTIVE"],"description":"The user's account status — USER_ACTIVE (\"Active\") or USER_DEACTIVE (\"Inactive\")."},"invitationStatus":{"type":"string","description":"Whether and how the user accepted their invitation — stored as USER_INVITATION_STATUS_PENDING, USER_INVITATION_STATUS_ACCEPTED, or USER_INVITATION_STATUS_SELF_SIGNUP (shown in the UI as Pending / Accepted / Self Signup)."},"onboarded":{"type":"boolean","description":"Whether the user has completed onboarding; server-controlled."},"createdAt":{"type":"string","format":"date-time","description":"Server-generated timestamp of when the user was created, displayed as the \"Created Date\"; read-only."}}},"ProfileUpdate":{"type":"object","properties":{"firstName":{"type":"string","description":"The user's first name, labelled \"First Name\" in the UI and required when sending an invite."},"lastName":{"type":"string","description":"The user's last name, labelled \"Last Name\" in the UI and required when sending an invite."},"companyName":{"type":"string","description":"Optional company name for the user, shown as the \"Company\" field on a supplier's own profile."},"profileImage":{"type":"string","description":"Optional URL of the user's profile image; falls back to a default avatar when unset."}}},"OrganizationUpdate":{"type":"object","properties":{"name":{"type":"string","description":"The organization's display name."},"location":{"type":"string","description":"The organization's location/address."},"logo":{"type":"string","description":"URL of the organization's logo image."}}},"UserUpdate":{"type":"object","properties":{"firstName":{"type":"string","description":"The user's first name, labelled \"First Name\" in the UI and required when sending an invite."},"lastName":{"type":"string","description":"The user's last name, labelled \"Last Name\" in the UI and required when sending an invite."},"companyName":{"type":"string","description":"Optional company name for the user, shown as the \"Company\" field on a supplier's own profile."},"userGroupId":{"type":"array","items":{"type":"string"},"description":"Optional array of UserGroup ids assigning the user to one or more user groups (frontend label \"User Group\"); each referenced group must belong to the caller's organization."}}},"Supplier":{"type":"object","additionalProperties":true,"properties":{"_id":{"type":"string","description":"Server-generated unique identifier of the supplier pool entry (read-only)."},"organizationId":{"type":"string","description":"Identifier of the organization that owns this supplier pool entry; server-controlled and bound from the caller's tenant context, never the request body."},"supplierId":{"type":"object","additionalProperties":true,"description":"The populated supplier User record (firstName, lastName, email, companyName) linked to this pool entry."},"status":{"type":"string","enum":["PENDING","ACCEPTED","DECLINED"],"description":"The supplier's invitation/acceptance state — one of PENDING, ACCEPTED, or DECLINED."},"poolStatus":{"type":"string","description":"The supplier's pool membership state — one of pending_invite, invited, connected, or active."},"category":{"type":"string","nullable":true,"description":"Optional supplier category; one of Venue, Catering, Transport, Accommodation, Printed Materials, AV & Production, or Other."},"disabledAt":{"type":"string","format":"date-time","nullable":true,"description":"Timestamp when the supplier was soft-disabled in the pool, or null if active; server-controlled."}}},"TokenBundle":{"type":"object","properties":{"accessToken":{"type":"string","description":"AWS Cognito access token; send it on subsequent v2 requests as the `Authorization: Bearer <accessToken>` header."},"idToken":{"type":"string","description":"AWS Cognito ID token carrying the authenticated user's identity claims."},"refreshToken":{"type":"string","nullable":true,"description":"AWS Cognito refresh token used to obtain new access tokens; returned by POST /auth/login but NOT by POST /auth/refresh (the original refresh token stays valid until it expires)."},"expiresIn":{"type":"integer","description":"Lifetime of the access token in seconds, after which it must be refreshed."},"tokenType":{"type":"string","example":"Bearer","description":"Token type for the Authorization header; always \"Bearer\"."}}},"UserInvite":{"type":"object","required":["firstName","lastName","email","role"],"properties":{"firstName":{"type":"string","description":"The user's first name, labelled \"First Name\" in the UI and required when sending an invite."},"lastName":{"type":"string","description":"The user's last name, labelled \"Last Name\" in the UI and required when sending an invite."},"email":{"type":"string","format":"email","description":"The user's email address, labelled \"Email\" / \"Email Address\", used as the unique login identity and required when sending an invite."},"role":{"type":"string","enum":["ORGANIZATION_ADMIN","ORGANIZATION_MANAGER","ORGANIZATION_USER"],"description":"The user's platform role — one of APP_ADMIN, ORGANIZATION_ADMIN, ORGANIZATION_MANAGER, ORGANIZATION_USER, or ORGANIZATION_SUPPLIER (displayed as Admin/Manager/User/Supplier) — restricted on invite to ORGANIZATION_ADMIN, ORGANIZATION_MANAGER, or ORGANIZATION_USER."},"companyName":{"type":"string","description":"Optional company name for the user, shown as the \"Company\" field on a supplier's own profile."},"userGroupId":{"type":"array","items":{"type":"string"},"description":"Optional array of UserGroup ids assigning the user to one or more user groups (frontend label \"User Group\"); each referenced group must belong to the caller's organization."}}},"SupplierAdd":{"type":"object","required":["email"],"properties":{"email":{"type":"string","format":"email","description":"Required email address of the supplier user to invite and add to the pool."},"firstName":{"type":"string","description":"Optional first name of the supplier contact."},"lastName":{"type":"string","description":"Optional last name of the supplier contact."},"companyName":{"type":"string","description":"Optional company name of the supplier."},"category":{"type":"string","description":"Optional supplier category to record for the pool entry; one of Venue, Catering, Transport, Accommodation, Printed Materials, AV & Production, or Other."},"note":{"type":"string","description":"Optional free-text message included in the invitation email to the supplier."}}},"SupplierAssign":{"type":"object","required":["eventId"],"properties":{"eventId":{"type":"string","description":"Required identifier of the event to assign the supplier to; verified to belong to the caller's organization server-side."},"eventParams":{"type":"array","items":{"type":"string"},"description":"Optional array of carbon-source category keys (the *_PARAMETER vocabulary) the supplier is responsible for on the event."},"reductionStrategyIds":{"type":"array","items":{"type":"string"},"description":"Optional array of reduction-strategy identifiers assigned to the supplier for the event."},"date":{"type":"string","format":"date-time","description":"Optional due date for the supplier's assignment to the event."},"note":{"type":"string","description":"Optional free-text note with brief instructions or context for the supplier on this assignment."}}}},"responses":{"Unauthorized":{"description":"Missing/invalid token.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"Forbidden":{"description":"Authenticated but not allowed (role or cross-org).","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"NotFound":{"description":"Not found (or not in the caller's org).","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"ValidationError":{"description":"Request body/params failed validation.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"PaymentRequired":{"description":"Plan quota reached for this resource (code `QUOTA_EXCEEDED`). `error.details` carries `{resource, limit, current}`. NOTE: this guard enforces count-based quotas only — date-based plan EXPIRY is not enforced on v2 creates (see docs/v2-plan-quota.md).","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"ServiceUnavailable":{"description":"An upstream dependency (e.g. the identity provider) is unreachable.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"RateLimited":{"description":"Rate limit exceeded. Writes (POST/PATCH/PUT/DELETE) share a per-caller limiter (default 99 requests/hour; env-overridable) and /auth/* has its own 30 requests/15 min limiter. Reads are unthrottled. Standard `RateLimit-*` response headers are returned on every rate-limited route. NOTE: the 429 body is the limiter's plain-text/JSON default, not the {success,error} envelope."}}}}