{"openapi":"3.1.0","info":{"title":"Vytal API","version":"0.1.0","summary":"The operating system for fitness businesses, as an API.","description":"The Vytal API powers bookings, memberships, payments, training results\nand personal records for gyms, CrossFit boxes and studios. Everything is\nscoped to the caller's **active organization** (the gym) and isolated\nper tenant.\n\nThe reference below is generated directly from the live backend, so it\nalways matches what's deployed.\n\n## Authentication\nEvery request authenticates with an **organization API key**:\n`Authorization: Bearer vk_live_…`. Keys are created and revoked from\n**Settings → API Keys** in the Vytal app (never via the API itself, the\nsame way Stripe issues keys). Each key is scoped to one organization, so\nthe org is always implicit and metered per key.\n\nVytal's own web and mobile apps are first-party and use session auth\nagainst the internal tRPC surface: third-party integrations must use a\nkey.\n\n## Conventions\n- **Org scope** is implicit (from the session), never a body field.\n- **Lists** return `{ \"items\": [ ... ] }`; single resources return bare.\n- **Errors** return `{ \"error\": \"CODE\", \"message\": \"...\" }` with the\n  matching HTTP status (401, 403, 404, 400).","contact":{"name":"Vytal","url":"https://vytal.fit"}},"servers":[{"url":"https://api.vytal.fit/v1","description":"Production"},{"url":"http://localhost:3004/v1","description":"Local development"}],"security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"tags":[{"name":"Assessments","description":"Assessments. All routes are scoped to the authenticated organization."},{"name":"Badges","description":"Badges. All routes are scoped to the authenticated organization."},{"name":"Bookings","description":"A member's reservation for a class. All routes are scoped to the authenticated organization."},{"name":"Budget","description":"Budget. All routes are scoped to the authenticated organization."},{"name":"Certifications","description":"Staff certifications. All routes are scoped to the authenticated organization."},{"name":"Challenges","description":"Gym challenges and leaderboards. All routes are scoped to the authenticated organization."},{"name":"CheckIns","description":"Attendance records when a member enters. All routes are scoped to the authenticated organization."},{"name":"ClassTemplates","description":"Reusable class schedule templates. All routes are scoped to the authenticated organization."},{"name":"ClassTypes","description":"Categories of class such as WOD or Yoga. All routes are scoped to the authenticated organization."},{"name":"Classes","description":"Scheduled group sessions on the calendar. All routes are scoped to the authenticated organization."},{"name":"Climbing","description":"Climbing. All routes are scoped to the authenticated organization."},{"name":"Coaches","description":"Coaching staff who run classes. All routes are scoped to the authenticated organization."},{"name":"Competence","description":"Competence. All routes are scoped to the authenticated organization."},{"name":"Competitions","description":"Competitions. All routes are scoped to the authenticated organization."},{"name":"Contracts","description":"Member contracts. All routes are scoped to the authenticated organization."},{"name":"Cycles","description":"Cycles. All routes are scoped to the authenticated organization."},{"name":"DataExport","description":"Data export. All routes are scoped to the authenticated organization."},{"name":"DayMarkers","description":"Day markers. All routes are scoped to the authenticated organization."},{"name":"DayNutrition","description":"Day nutrition. All routes are scoped to the authenticated organization."},{"name":"Documents","description":"Documents. All routes are scoped to the authenticated organization."},{"name":"EmailTemplates","description":"Email templates. All routes are scoped to the authenticated organization."},{"name":"Equipment","description":"Gym equipment inventory. All routes are scoped to the authenticated organization."},{"name":"Events","description":"Events. All routes are scoped to the authenticated organization."},{"name":"ExerciseCoaching","description":"Exercise coaching. All routes are scoped to the authenticated organization."},{"name":"Exercises","description":"Movements in the global exercise library. All routes are scoped to the authenticated organization."},{"name":"Fees","description":"Fees. All routes are scoped to the authenticated organization."},{"name":"Fiscal","description":"Invoices, receipts and credit notes (PT fiscal). All routes are scoped to the authenticated organization."},{"name":"Me","description":"The authenticated user's own profile and org memberships. All routes are scoped to the authenticated organization."},{"name":"Media","description":"Media library assets. All routes are scoped to the authenticated organization."},{"name":"Meets","description":"Meets. All routes are scoped to the authenticated organization."},{"name":"MemberCredit","description":"Member credit. All routes are scoped to the authenticated organization."},{"name":"MemberGroups","description":"Segments or groups of members. All routes are scoped to the authenticated organization."},{"name":"MemberRanks","description":"Member ranks. All routes are scoped to the authenticated organization."},{"name":"MemberSpaceAccess","description":"Member space access. All routes are scoped to the authenticated organization."},{"name":"Members","description":"Gym members (athletes) enrolled at the organization. All routes are scoped to the authenticated organization."},{"name":"Milestones","description":"Automated member milestone rules. All routes are scoped to the authenticated organization."},{"name":"Modalities","description":"Modalities. All routes are scoped to the authenticated organization."},{"name":"OnboardingTelemetry","description":"Onboarding telemetry. All routes are scoped to the authenticated organization."},{"name":"OrgMerge","description":"Org merge. All routes are scoped to the authenticated organization."},{"name":"OrgSettings","description":"Org configuration (branding, features, fiscal). All routes are scoped to the authenticated organization."},{"name":"Orgs","description":"Orgs. All routes are scoped to the authenticated organization."},{"name":"Payments","description":"The payment ledger (money received and due). All routes are scoped to the authenticated organization."},{"name":"Platform","description":"Platform. All routes are scoped to the authenticated organization."},{"name":"Practice","description":"Practice. All routes are scoped to the authenticated organization."},{"name":"Programming","description":"Programming. All routes are scoped to the authenticated organization."},{"name":"Public","description":"Unauthenticated public-site data. All routes are scoped to the authenticated organization."},{"name":"PushTokens","description":"Push tokens. All routes are scoped to the authenticated organization."},{"name":"Referrals","description":"Member-to-member referrals. All routes are scoped to the authenticated organization."},{"name":"Rehab","description":"Rehab. All routes are scoped to the authenticated organization."},{"name":"RoomMetrics","description":"Usage and capacity metrics per room. All routes are scoped to the authenticated organization."},{"name":"Rooms","description":"Rooms/areas within a space where classes run. All routes are scoped to the authenticated organization."},{"name":"Running","description":"Running. All routes are scoped to the authenticated organization."},{"name":"Saas","description":"Saas. All routes are scoped to the authenticated organization."},{"name":"SampleData","description":"Sample data. All routes are scoped to the authenticated organization."},{"name":"Screen","description":"Screen. All routes are scoped to the authenticated organization."},{"name":"SessionBlocks","description":"Session blocks. All routes are scoped to the authenticated organization."},{"name":"SetupWizard","description":"Setup wizard. All routes are scoped to the authenticated organization."},{"name":"Shop","description":"Retail products in the store. All routes are scoped to the authenticated organization."},{"name":"SpaceJoin","description":"Space join. All routes are scoped to the authenticated organization."},{"name":"SpaceSettings","description":"Space settings. All routes are scoped to the authenticated organization."},{"name":"SpaceStaff","description":"Space staff. All routes are scoped to the authenticated organization."},{"name":"Spaces","description":"Spaces. All routes are scoped to the authenticated organization."},{"name":"Subscriptions","description":"Membership plans a member is enrolled in. All routes are scoped to the authenticated organization."},{"name":"Swimming","description":"Swimming. All routes are scoped to the authenticated organization."},{"name":"Tasks","description":"Staff to-do tasks. All routes are scoped to the authenticated organization."},{"name":"TaxObligations","description":"Tax obligations. All routes are scoped to the authenticated organization."},{"name":"TestBatteries","description":"Test batteries. All routes are scoped to the authenticated organization."},{"name":"Tour","description":"Tour. All routes are scoped to the authenticated organization."},{"name":"TrainingBlocks","description":"Training blocks. All routes are scoped to the authenticated organization."},{"name":"TrainingPlans","description":"Training plans. All routes are scoped to the authenticated organization."},{"name":"Uploads","description":"File and image uploads. All routes are scoped to the authenticated organization."},{"name":"Vouchers","description":"Discount and gift vouchers. All routes are scoped to the authenticated organization."},{"name":"Wearable","description":"Wearable. All routes are scoped to the authenticated organization."},{"name":"Workouts","description":"Workouts of the day (training programming). All routes are scoped to the authenticated organization."}],"paths":{"/members":{"get":{"operationId":"members.list","tags":["Members"],"summary":"List members","description":"List the members in your organization. Org-scoped: only records in the authenticated organization are returned.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"parameters":[{"name":"status","in":"query","required":false,"schema":{"type":"string","enum":["active","inactive","suspended","trial"]}},{"name":"cursor","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}]}},{"name":"limit","in":"query","required":false,"schema":{"default":50,"type":"integer","minimum":1,"maximum":100}}]},"post":{"operationId":"members.create","tags":["Members"],"summary":"Create a member","description":"Create a new member in your organization.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"name":{"type":"string","minLength":1,"maxLength":200},"email":{"type":"string","format":"email","pattern":"^(?!\\.)(?!.*\\.\\.)([A-Za-z0-9_'+\\-\\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\\-]*\\.)+[A-Za-z]{2,}$"},"phone":{"type":"string","maxLength":30},"photo":{"type":"string","format":"uri"},"gender":{"type":"string","enum":["male","female"]},"dateOfBirth":{"type":"string"},"nif":{"type":"string","maxLength":20},"emergencyContact":{"type":"string","maxLength":200},"status":{"default":"active","type":"string","enum":["active","inactive","suspended","trial"]},"planId":{"type":"string","minLength":1},"idCardNumber":{"anyOf":[{"type":"string","maxLength":40},{"type":"null"}]},"idCardExpiry":{"anyOf":[{"type":"string"},{"type":"null"}]},"address":{"anyOf":[{"type":"string","maxLength":300},{"type":"null"}]},"postalCode":{"anyOf":[{"type":"string","maxLength":20},{"type":"null"}]},"city":{"anyOf":[{"type":"string","maxLength":120},{"type":"null"}]},"country":{"anyOf":[{"type":"string","maxLength":120},{"type":"null"}]},"healthNumber":{"anyOf":[{"type":"string","maxLength":40},{"type":"null"}]},"nickname":{"anyOf":[{"type":"string","maxLength":120},{"type":"null"}]},"responsibleCoachId":{"anyOf":[{"type":"string","minLength":1},{"type":"null"}]}},"required":["name","email"]}}}}}},"/members/counts":{"get":{"operationId":"members.counts","tags":["Members"],"summary":"Counts — members","description":"The \"counts\" operation on members.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}}}},"/members/roster":{"get":{"operationId":"members.roster","tags":["Members"],"summary":"Roster — members","description":"The \"roster\" operation on members.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}}}},"/members/me":{"get":{"operationId":"members.me","tags":["Members"],"summary":"Retrieve your member","description":"Retrieve the member linked to the authenticated caller (self-service).","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}}}},"/members/update-me":{"post":{"operationId":"members.updateMe","tags":["Members"],"summary":"UpdateMe — members","description":"The \"updateMe\" operation on members.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"name":{"type":"string","minLength":1,"maxLength":200},"phone":{"type":"string","maxLength":30},"photo":{"type":"string","format":"uri"},"gender":{"type":"string","enum":["male","female"]},"dateOfBirth":{"type":"string"},"nif":{"type":"string","maxLength":20},"emergencyContact":{"type":"string","maxLength":200},"occupation":{"anyOf":[{"type":"string","maxLength":200},{"type":"null"}]},"sleepHours":{"anyOf":[{"type":"number","minimum":0,"maximum":24},{"type":"null"}]},"trainingGoal":{"anyOf":[{"type":"string","maxLength":2000},{"type":"null"}]},"injuries":{"anyOf":[{"type":"string","maxLength":4000},{"type":"null"}]},"lifestyleNotes":{"anyOf":[{"type":"string","maxLength":4000},{"type":"null"}]}}}}}}}},"/members/{id}":{"get":{"operationId":"members.byId","tags":["Members"],"summary":"Retrieve a member","description":"Retrieve a single member by its id. Returns 404 when it does not exist in your organization.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"parameters":[{"name":"id","in":"path","required":true,"description":"Unique id of the member.","schema":{"type":"string"}}]},"patch":{"operationId":"members.update","tags":["Members"],"summary":"Update a member","description":"Apply a partial update to an existing member by id. Only the fields you send are changed.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object"}}}},"parameters":[{"name":"id","in":"path","required":true,"description":"Unique id of the member.","schema":{"type":"string"}}]}},"/members/activity":{"get":{"operationId":"members.activity","tags":["Members"],"summary":"Activity — members","description":"The \"activity\" operation on members.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"parameters":[{"name":"memberId","in":"query","required":true,"schema":{"type":"string","minLength":1}},{"name":"limit","in":"query","required":false,"schema":{"default":40,"type":"integer","minimum":1,"maximum":100}}]}},"/members/imported-history":{"get":{"operationId":"members.importedHistory","tags":["Members"],"summary":"ImportedHistory — members","description":"The \"importedHistory\" operation on members.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"parameters":[{"name":"memberId","in":"query","required":true,"schema":{"type":"string","minLength":1}},{"name":"limit","in":"query","required":false,"schema":{"default":50,"type":"integer","minimum":1,"maximum":200}},{"name":"offset","in":"query","required":false,"schema":{"default":0,"type":"integer","minimum":0,"maximum":9007199254740991}}]}},"/members/set-home-space":{"post":{"operationId":"members.setHomeSpace","tags":["Members"],"summary":"SetHomeSpace — members","description":"The \"setHomeSpace\" operation on members.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"id":{"type":"string","minLength":1},"spaceId":{"type":"string","minLength":1}},"required":["id","spaceId"]}}}}}},"/members/archive":{"post":{"operationId":"members.archive","tags":["Members"],"summary":"Archive — members","description":"The \"archive\" operation on members.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"id":{"type":"string","minLength":1}},"required":["id"]}}}}}},"/members/retention":{"get":{"operationId":"members.retention","tags":["Members"],"summary":"Retention — members","description":"The \"retention\" operation on members.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"parameters":[{"name":"spaceId","in":"query","required":false,"schema":{"type":"string"}}]}},"/members/cancel":{"post":{"operationId":"members.cancel","tags":["Members"],"summary":"Cancel — members","description":"The \"cancel\" operation on members.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"id":{"type":"string","minLength":1},"survey":{"type":"object","properties":{"reason":{"type":"string","maxLength":100},"feedback":{"type":"string","maxLength":4000},"wouldReturn":{"type":"string","maxLength":4000}}}},"required":["id"]}}}}}},"/members/pause":{"post":{"operationId":"members.pause","tags":["Members"],"summary":"Pause — members","description":"The \"pause\" operation on members.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"id":{"type":"string","minLength":1}},"required":["id"]}}}}}},"/members/reactivate":{"post":{"operationId":"members.reactivate","tags":["Members"],"summary":"Reactivate — members","description":"The \"reactivate\" operation on members.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"id":{"type":"string","minLength":1},"nextBillingDate":{"type":"string"}},"required":["id"]}}}}}},"/members/export-personal-data":{"post":{"operationId":"members.exportPersonalData","tags":["Members"],"summary":"ExportPersonalData — members","description":"The \"exportPersonalData\" operation on members.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"memberId":{"type":"string","minLength":1}},"required":["memberId"]}}}}}},"/members/erase":{"post":{"operationId":"members.erase","tags":["Members"],"summary":"Erase — members","description":"The \"erase\" operation on members.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"memberId":{"type":"string","minLength":1},"confirm":{"type":"boolean","const":true}},"required":["memberId","confirm"]}}}}}},"/members/overview":{"get":{"operationId":"members.overview","tags":["Members"],"summary":"Overview — members","description":"The \"overview\" operation on members.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"parameters":[{"name":"memberId","in":"query","required":true,"schema":{"type":"string","minLength":1}}]}},"/members/analytics":{"get":{"operationId":"members.analytics","tags":["Members"],"summary":"Analytics — members","description":"The \"analytics\" operation on members.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"parameters":[{"name":"spaceId","in":"query","required":false,"schema":{"type":"string"}}]}},"/members/bulk-change-plan":{"post":{"operationId":"members.bulkChangePlan","tags":["Members"],"summary":"BulkChangePlan — members","description":"The \"bulkChangePlan\" operation on members.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"memberIds":{"minItems":1,"maxItems":500,"type":"array","items":{"type":"string","minLength":1}},"planId":{"type":"string","minLength":1}},"required":["memberIds","planId"]}}}}}},"/members/bulk-email":{"post":{"operationId":"members.bulkEmail","tags":["Members"],"summary":"BulkEmail — members","description":"The \"bulkEmail\" operation on members.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"memberIds":{"minItems":1,"maxItems":500,"type":"array","items":{"type":"string","minLength":1}},"subject":{"type":"string","minLength":1,"maxLength":200},"body":{"type":"string","minLength":1,"maxLength":10000}},"required":["memberIds","subject","body"]}}}}}},"/members/bulk-sms":{"post":{"operationId":"members.bulkSms","tags":["Members"],"summary":"BulkSms — members","description":"The \"bulkSms\" operation on members.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"memberIds":{"minItems":1,"maxItems":500,"type":"array","items":{"type":"string","minLength":1}},"message":{"type":"string","minLength":1,"maxLength":640}},"required":["memberIds","message"]}}}}}},"/members/bulk-push":{"post":{"operationId":"members.bulkPush","tags":["Members"],"summary":"BulkPush — members","description":"The \"bulkPush\" operation on members.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"memberIds":{"minItems":1,"maxItems":500,"type":"array","items":{"type":"string","minLength":1}},"message":{"type":"string","minLength":1,"maxLength":500},"title":{"type":"string","maxLength":120}},"required":["memberIds","message"]}}}}}},"/coaches":{"get":{"operationId":"coaches.list","tags":["Coaches"],"summary":"List coaches","description":"List the coaches in your organization. Org-scoped: only records in the authenticated organization are returned.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}}},"post":{"operationId":"coaches.create","tags":["Coaches"],"summary":"Create a coach","description":"Create a new coach in your organization.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"name":{"type":"string","minLength":1,"maxLength":200},"email":{"type":"string","format":"email","pattern":"^(?!\\.)(?!.*\\.\\.)([A-Za-z0-9_'+\\-\\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\\-]*\\.)+[A-Za-z]{2,}$"},"photo":{"type":"string","format":"uri"},"role":{"type":"string","enum":["head_coach","coach","personal_trainer","assistant"]},"specialty":{"anyOf":[{"type":"string","maxLength":500},{"type":"null"}]},"bio":{"anyOf":[{"type":"string","maxLength":4000},{"type":"null"}]}},"required":["name","email"]}}}}}},"/coaches/{id}":{"get":{"operationId":"coaches.byId","tags":["Coaches"],"summary":"Retrieve a coach","description":"Retrieve a single coach by its id. Returns 404 when it does not exist in your organization.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"parameters":[{"name":"id","in":"path","required":true,"description":"Unique id of the coach.","schema":{"type":"string"}}]},"patch":{"operationId":"coaches.update","tags":["Coaches"],"summary":"Update a coach","description":"Apply a partial update to an existing coach by id. Only the fields you send are changed.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object"}}}},"parameters":[{"name":"id","in":"path","required":true,"description":"Unique id of the coach.","schema":{"type":"string"}}]},"delete":{"operationId":"coaches.delete","tags":["Coaches"],"summary":"Delete a coach","description":"Permanently delete a coach by id.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"id":{"type":"string","minLength":1}},"required":["id"]}}}},"parameters":[{"name":"id","in":"path","required":true,"description":"Unique id of the coach.","schema":{"type":"string"}}]}},"/coaches/performance":{"get":{"operationId":"coaches.performance","tags":["Coaches"],"summary":"Performance — coaches","description":"The \"performance\" operation on coaches.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"parameters":[{"name":"id","in":"query","required":true,"schema":{"type":"string","minLength":1}}]}},"/coaches/get-compensation":{"get":{"operationId":"coaches.getCompensation","tags":["Coaches"],"summary":"GetCompensation — coaches","description":"The \"getCompensation\" operation on coaches.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}}}},"/coaches/set-compensation":{"post":{"operationId":"coaches.setCompensation","tags":["Coaches"],"summary":"SetCompensation — coaches","description":"The \"setCompensation\" operation on coaches.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"coachId":{"type":"string","minLength":1},"model":{"type":"string","enum":["per_class","monthly_salary","hourly"]},"ratePerClass":{"anyOf":[{"type":"integer","minimum":0,"maximum":9007199254740991},{"type":"null"}]},"monthlySalary":{"anyOf":[{"type":"integer","minimum":0,"maximum":9007199254740991},{"type":"null"}]},"hourlyRate":{"anyOf":[{"type":"integer","minimum":0,"maximum":9007199254740991},{"type":"null"}]},"currency":{"default":"EUR","type":"string","minLength":3,"maxLength":3},"effectiveFrom":{"anyOf":[{"type":"string","pattern":"^\\d{4}-\\d{2}-\\d{2}$"},{"type":"null"}]}},"required":["coachId","model"]}}}}}},"/coaches/weekly-load":{"get":{"operationId":"coaches.weeklyLoad","tags":["Coaches"],"summary":"WeeklyLoad — coaches","description":"The \"weeklyLoad\" operation on coaches.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"parameters":[{"name":"spaceId","in":"query","required":false,"schema":{"type":"string","minLength":1}}]}},"/coaches/payroll-stats":{"get":{"operationId":"coaches.payrollStats","tags":["Coaches"],"summary":"PayrollStats — coaches","description":"The \"payrollStats\" operation on coaches.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"parameters":[{"name":"month","in":"query","required":false,"schema":{"type":"string","pattern":"^\\d{4}-\\d{2}$"}},{"name":"spaceId","in":"query","required":false,"schema":{"type":"string","minLength":1}}]}},"/coaches/revenue-stats":{"get":{"operationId":"coaches.revenueStats","tags":["Coaches"],"summary":"RevenueStats — coaches","description":"The \"revenueStats\" operation on coaches.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"parameters":[{"name":"months","in":"query","required":false,"schema":{"default":6,"type":"integer","minimum":1,"maximum":12}},{"name":"spaceId","in":"query","required":false,"schema":{"type":"string","minLength":1}}]}},"/coaches/remove-member":{"post":{"operationId":"coaches.removeMember","tags":["Coaches"],"summary":"RemoveMember — coaches","description":"The \"removeMember\" operation on coaches.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"id":{"type":"string","minLength":1}},"required":["id"]}}}}}},"/rooms":{"get":{"operationId":"rooms.list","tags":["Rooms"],"summary":"List rooms","description":"List the rooms in your organization. Org-scoped: only records in the authenticated organization are returned.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}}},"post":{"operationId":"rooms.create","tags":["Rooms"],"summary":"Create a room","description":"Create a new room in your organization.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"name":{"type":"string","minLength":1,"maxLength":200},"abbreviation":{"anyOf":[{"type":"string","maxLength":20},{"type":"null"}]},"capacity":{"type":"integer","minimum":1,"maximum":10000}},"required":["name"]}}}}}},"/rooms/{id}":{"get":{"operationId":"rooms.byId","tags":["Rooms"],"summary":"Retrieve a room","description":"Retrieve a single room by its id. Returns 404 when it does not exist in your organization.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"parameters":[{"name":"id","in":"path","required":true,"description":"Unique id of the room.","schema":{"type":"string"}}]},"patch":{"operationId":"rooms.update","tags":["Rooms"],"summary":"Update a room","description":"Apply a partial update to an existing room by id. Only the fields you send are changed.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"id":{"type":"string","minLength":1},"data":{"type":"object","properties":{"name":{"type":"string","minLength":1,"maxLength":200},"abbreviation":{"anyOf":[{"type":"string","maxLength":20},{"type":"null"}]},"capacity":{"type":"integer","minimum":1,"maximum":10000}}}},"required":["id","data"]}}}},"parameters":[{"name":"id","in":"path","required":true,"description":"Unique id of the room.","schema":{"type":"string"}}]},"delete":{"operationId":"rooms.delete","tags":["Rooms"],"summary":"Delete a room","description":"Permanently delete a room by id.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"id":{"type":"string","minLength":1}},"required":["id"]}}}},"parameters":[{"name":"id","in":"path","required":true,"description":"Unique id of the room.","schema":{"type":"string"}}]}},"/rooms/save-layout":{"post":{"operationId":"rooms.saveLayout","tags":["Rooms"],"summary":"SaveLayout — rooms","description":"The \"saveLayout\" operation on rooms.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"canvas":{"type":"object","properties":{"width":{"type":"integer","minimum":4,"maximum":200},"height":{"type":"integer","minimum":4,"maximum":200}},"required":["width","height"]},"rooms":{"maxItems":500,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","minLength":1},"layout":{"anyOf":[{"type":"object","properties":{"x":{"type":"integer","minimum":0,"maximum":200},"y":{"type":"integer","minimum":0,"maximum":200},"w":{"type":"integer","minimum":1,"maximum":200},"h":{"type":"integer","minimum":1,"maximum":200},"shape":{"type":"string","enum":["rect","circle"]}},"required":["x","y","w","h"]},{"type":"null"}]},"kind":{"anyOf":[{"type":"string","maxLength":50},{"type":"null"}]},"color":{"anyOf":[{"type":"string","pattern":"^#[0-9a-fA-F]{6}$"},{"type":"null"}]}},"required":["id","layout","kind","color"]}}},"required":["canvas","rooms"]}}}}}},"/rooms/map-data":{"get":{"operationId":"rooms.mapData","tags":["Rooms"],"summary":"MapData — rooms","description":"The \"mapData\" operation on rooms.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}}}},"/spaces":{"get":{"operationId":"spaces.list","tags":["Spaces"],"summary":"List spaces","description":"List the spaces in your organization. Org-scoped: only records in the authenticated organization are returned.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}}},"post":{"operationId":"spaces.create","tags":["Spaces"],"summary":"Create a space","description":"Create a new space in your organization.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"name":{"type":"string","minLength":1,"maxLength":200},"shortName":{"type":"string","minLength":1,"maxLength":40},"type":{"type":"string"},"slug":{"type":"string","maxLength":60},"address":{"type":"string","maxLength":300},"city":{"type":"string","maxLength":120},"zip":{"type":"string","maxLength":20},"timezone":{"type":"string","maxLength":100},"country":{"type":"string","maxLength":10},"acknowledgeAddOn":{"type":"boolean"}},"required":["name"]}}}}}},"/spaces/hub-tree":{"get":{"operationId":"spaces.hubTree","tags":["Spaces"],"summary":"HubTree — spaces","description":"The \"hubTree\" operation on spaces.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}}}},"/spaces/{id}":{"get":{"operationId":"spaces.get","tags":["Spaces"],"summary":"Retrieve a space","description":"Retrieve a single space by its id. Returns 404 when it does not exist in your organization.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"parameters":[{"name":"id","in":"path","required":true,"description":"Unique id of the space.","schema":{"type":"string"}},{"name":"slug","in":"query","required":false,"schema":{"type":"string","minLength":1}}]},"patch":{"operationId":"spaces.update","tags":["Spaces"],"summary":"Update a space","description":"Apply a partial update to an existing space by id. Only the fields you send are changed.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object"}}}},"parameters":[{"name":"id","in":"path","required":true,"description":"Unique id of the space.","schema":{"type":"string"}}]}},"/spaces/mark-onboarded":{"post":{"operationId":"spaces.markOnboarded","tags":["Spaces"],"summary":"MarkOnboarded — spaces","description":"The \"markOnboarded\" operation on spaces.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"id":{"type":"string","minLength":1}},"required":["id"]}}}}}},"/spaces/rename":{"post":{"operationId":"spaces.rename","tags":["Spaces"],"summary":"Rename — spaces","description":"The \"rename\" operation on spaces.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"name":{"type":"string","minLength":1,"maxLength":200},"id":{"type":"string","minLength":1}},"required":["name","id"]}}}}}},"/spaces/copy-rooms":{"post":{"operationId":"spaces.copyRooms","tags":["Spaces"],"summary":"CopyRooms — spaces","description":"The \"copyRooms\" operation on spaces.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"fromSpaceId":{"type":"string","minLength":1},"toSpaceId":{"type":"string","minLength":1}},"required":["fromSpaceId","toSpaceId"]}}}}}},"/spaces/archive":{"post":{"operationId":"spaces.archive","tags":["Spaces"],"summary":"Archive — spaces","description":"The \"archive\" operation on spaces.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"id":{"type":"string","minLength":1}},"required":["id"]}}}}}},"/spaces/unarchive":{"post":{"operationId":"spaces.unarchive","tags":["Spaces"],"summary":"Unarchive — spaces","description":"The \"unarchive\" operation on spaces.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"id":{"type":"string","minLength":1}},"required":["id"]}}}}}},"/space-settings/booking-rules":{"get":{"operationId":"spaceSettings.bookingRules","tags":["SpaceSettings"],"summary":"BookingRules — space settings","description":"The \"bookingRules\" operation on space settings.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"parameters":[{"name":"spaceId","in":"query","required":false,"schema":{"type":"string"}}]}},"/space-settings/set-booking-rules":{"post":{"operationId":"spaceSettings.setBookingRules","tags":["SpaceSettings"],"summary":"SetBookingRules — space settings","description":"The \"setBookingRules\" operation on space settings.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object"}}}}}},"/space-settings/clear-booking-rules":{"post":{"operationId":"spaceSettings.clearBookingRules","tags":["SpaceSettings"],"summary":"ClearBookingRules — space settings","description":"The \"clearBookingRules\" operation on space settings.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"spaceId":{"type":"string"}}}}}}}},"/space-settings/training":{"get":{"operationId":"spaceSettings.training","tags":["SpaceSettings"],"summary":"Training — space settings","description":"The \"training\" operation on space settings.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"parameters":[{"name":"spaceId","in":"query","required":false,"schema":{"type":"string"}}]}},"/space-settings/set-training":{"post":{"operationId":"spaceSettings.setTraining","tags":["SpaceSettings"],"summary":"SetTraining — space settings","description":"The \"setTraining\" operation on space settings.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object"}}}}}},"/space-settings/clear-training":{"post":{"operationId":"spaceSettings.clearTraining","tags":["SpaceSettings"],"summary":"ClearTraining — space settings","description":"The \"clearTraining\" operation on space settings.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"spaceId":{"type":"string"}}}}}}}},"/space-settings/kiosk":{"get":{"operationId":"spaceSettings.kiosk","tags":["SpaceSettings"],"summary":"Kiosk — space settings","description":"The \"kiosk\" operation on space settings.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"parameters":[{"name":"spaceId","in":"query","required":false,"schema":{"type":"string"}}]}},"/space-settings/set-kiosk":{"post":{"operationId":"spaceSettings.setKiosk","tags":["SpaceSettings"],"summary":"SetKiosk — space settings","description":"The \"setKiosk\" operation on space settings.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object"}}}}}},"/space-settings/clear-kiosk":{"post":{"operationId":"spaceSettings.clearKiosk","tags":["SpaceSettings"],"summary":"ClearKiosk — space settings","description":"The \"clearKiosk\" operation on space settings.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"spaceId":{"type":"string"}}}}}}}},"/space-settings/payment-methods":{"get":{"operationId":"spaceSettings.paymentMethods","tags":["SpaceSettings"],"summary":"PaymentMethods — space settings","description":"The \"paymentMethods\" operation on space settings.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"parameters":[{"name":"spaceId","in":"query","required":false,"schema":{"type":"string"}}]}},"/space-settings/set-payment-methods":{"post":{"operationId":"spaceSettings.setPaymentMethods","tags":["SpaceSettings"],"summary":"SetPaymentMethods — space settings","description":"The \"setPaymentMethods\" operation on space settings.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object"}}}}}},"/space-settings/clear-payment-methods":{"post":{"operationId":"spaceSettings.clearPaymentMethods","tags":["SpaceSettings"],"summary":"ClearPaymentMethods — space settings","description":"The \"clearPaymentMethods\" operation on space settings.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"spaceId":{"type":"string"}}}}}}}},"/space-settings/dunning-rules":{"get":{"operationId":"spaceSettings.dunningRules","tags":["SpaceSettings"],"summary":"DunningRules — space settings","description":"The \"dunningRules\" operation on space settings.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"parameters":[{"name":"spaceId","in":"query","required":false,"schema":{"type":"string"}}]}},"/space-settings/set-dunning-rules":{"post":{"operationId":"spaceSettings.setDunningRules","tags":["SpaceSettings"],"summary":"SetDunningRules — space settings","description":"The \"setDunningRules\" operation on space settings.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object"}}}}}},"/space-settings/clear-dunning-rules":{"post":{"operationId":"spaceSettings.clearDunningRules","tags":["SpaceSettings"],"summary":"ClearDunningRules — space settings","description":"The \"clearDunningRules\" operation on space settings.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"spaceId":{"type":"string"}}}}}}}},"/space-settings/contacts":{"get":{"operationId":"spaceSettings.contacts","tags":["SpaceSettings"],"summary":"Contacts — space settings","description":"The \"contacts\" operation on space settings.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"parameters":[{"name":"spaceId","in":"query","required":false,"schema":{"type":"string"}}]}},"/space-settings/set-contacts":{"post":{"operationId":"spaceSettings.setContacts","tags":["SpaceSettings"],"summary":"SetContacts — space settings","description":"The \"setContacts\" operation on space settings.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object"}}}}}},"/space-settings/branding":{"get":{"operationId":"spaceSettings.branding","tags":["SpaceSettings"],"summary":"Branding — space settings","description":"The \"branding\" operation on space settings.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"parameters":[{"name":"spaceId","in":"query","required":false,"schema":{"type":"string"}}]}},"/space-settings/set-branding":{"post":{"operationId":"spaceSettings.setBranding","tags":["SpaceSettings"],"summary":"SetBranding — space settings","description":"The \"setBranding\" operation on space settings.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object"}}}}}},"/space-settings/clear-branding":{"post":{"operationId":"spaceSettings.clearBranding","tags":["SpaceSettings"],"summary":"ClearBranding — space settings","description":"The \"clearBranding\" operation on space settings.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"spaceId":{"type":"string"}}}}}}}},"/space-settings/terminology":{"get":{"operationId":"spaceSettings.terminology","tags":["SpaceSettings"],"summary":"Terminology — space settings","description":"The \"terminology\" operation on space settings.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"parameters":[{"name":"spaceId","in":"query","required":false,"schema":{"type":"string"}}]}},"/space-settings/set-terminology":{"post":{"operationId":"spaceSettings.setTerminology","tags":["SpaceSettings"],"summary":"SetTerminology — space settings","description":"The \"setTerminology\" operation on space settings.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object"}}}}}},"/space-settings/website":{"get":{"operationId":"spaceSettings.website","tags":["SpaceSettings"],"summary":"Website — space settings","description":"The \"website\" operation on space settings.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"parameters":[{"name":"spaceId","in":"query","required":false,"schema":{"type":"string"}}]}},"/space-settings/set-website":{"post":{"operationId":"spaceSettings.setWebsite","tags":["SpaceSettings"],"summary":"SetWebsite — space settings","description":"The \"setWebsite\" operation on space settings.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object"}}}}}},"/space-settings/identity":{"get":{"operationId":"spaceSettings.identity","tags":["SpaceSettings"],"summary":"Identity — space settings","description":"The \"identity\" operation on space settings.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"parameters":[{"name":"spaceId","in":"query","required":false,"schema":{"type":"string"}}]}},"/space-settings/set-identity":{"post":{"operationId":"spaceSettings.setIdentity","tags":["SpaceSettings"],"summary":"SetIdentity — space settings","description":"The \"setIdentity\" operation on space settings.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object"}}}}}},"/space-join/invites":{"post":{"operationId":"spaceJoin.invites.create","tags":["SpaceJoin"],"summary":"Create a space join","description":"Create a new space join in your organization.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"spaceId":{"type":"string","minLength":1},"gymMemberId":{"anyOf":[{"type":"string","minLength":1},{"type":"null"}]},"label":{"anyOf":[{"type":"string","maxLength":200},{"type":"null"}]},"expiresInDays":{"anyOf":[{"type":"integer","minimum":1,"maximum":90},{"type":"null"}]},"sendTo":{"anyOf":[{"type":"string","format":"email","pattern":"^(?!\\.)(?!.*\\.\\.)([A-Za-z0-9_'+\\-\\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\\-]*\\.)+[A-Za-z]{2,}$"},{"type":"null"}]}},"required":["spaceId"]}}}}},"get":{"operationId":"spaceJoin.invites.list","tags":["SpaceJoin"],"summary":"List space join","description":"List the space join in your organization. Org-scoped: only records in the authenticated organization are returned.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"parameters":[{"name":"spaceId","in":"query","required":true,"schema":{"type":"string","minLength":1}}]}},"/space-join/invites/revoke":{"post":{"operationId":"spaceJoin.invites.revoke","tags":["SpaceJoin"],"summary":"Revoke — space join","description":"The \"revoke\" operation on space join.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"id":{"type":"string","minLength":1}},"required":["id"]}}}}}},"/space-join/code/{id}":{"get":{"operationId":"spaceJoin.code.get","tags":["SpaceJoin"],"summary":"Retrieve a space join","description":"Retrieve a single space join by its id. Returns 404 when it does not exist in your organization.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"parameters":[{"name":"id","in":"path","required":true,"description":"Unique id of the space join.","schema":{"type":"string"}},{"name":"spaceId","in":"query","required":true,"schema":{"type":"string","minLength":1}}]}},"/space-join/code/rotate":{"post":{"operationId":"spaceJoin.code.rotate","tags":["SpaceJoin"],"summary":"Rotate — space join","description":"The \"rotate\" operation on space join.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"spaceId":{"type":"string","minLength":1}},"required":["spaceId"]}}}}}},"/space-join/code/disable":{"post":{"operationId":"spaceJoin.code.disable","tags":["SpaceJoin"],"summary":"Disable — space join","description":"The \"disable\" operation on space join.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"spaceId":{"type":"string","minLength":1}},"required":["spaceId"]}}}}}},"/space-join/requests":{"get":{"operationId":"spaceJoin.requests.list","tags":["SpaceJoin"],"summary":"List space join","description":"List the space join in your organization. Org-scoped: only records in the authenticated organization are returned.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"parameters":[{"name":"spaceId","in":"query","required":true,"schema":{"type":"string","minLength":1}},{"name":"status","in":"query","required":false,"schema":{"default":"pending","type":"string","enum":["pending","approved","rejected"]}}]}},"/space-join/requests/approve":{"post":{"operationId":"spaceJoin.requests.approve","tags":["SpaceJoin"],"summary":"Approve — space join","description":"The \"approve\" operation on space join.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"id":{"type":"string","minLength":1}},"required":["id"]}}}}}},"/space-join/requests/reject":{"post":{"operationId":"spaceJoin.requests.reject","tags":["SpaceJoin"],"summary":"Reject — space join","description":"The \"reject\" operation on space join.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"id":{"type":"string","minLength":1}},"required":["id"]}}}}}},"/space-join/preview-invite":{"get":{"operationId":"spaceJoin.previewInvite","tags":["SpaceJoin"],"summary":"PreviewInvite — space join","description":"The \"previewInvite\" operation on space join.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"parameters":[{"name":"token","in":"query","required":true,"schema":{"type":"string","minLength":1}}]}},"/space-join/accept-invite":{"post":{"operationId":"spaceJoin.acceptInvite","tags":["SpaceJoin"],"summary":"AcceptInvite — space join","description":"The \"acceptInvite\" operation on space join.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"token":{"type":"string","minLength":1}},"required":["token"]}}}}}},"/space-join/preview-code":{"get":{"operationId":"spaceJoin.previewCode","tags":["SpaceJoin"],"summary":"PreviewCode — space join","description":"The \"previewCode\" operation on space join.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"parameters":[{"name":"code","in":"query","required":true,"schema":{"type":"string","minLength":1}}]}},"/space-join/request-by-code":{"post":{"operationId":"spaceJoin.requestByCode","tags":["SpaceJoin"],"summary":"RequestByCode — space join","description":"The \"requestByCode\" operation on space join.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"code":{"type":"string","minLength":1}},"required":["code"]}}}}}},"/space-join/my-requests":{"get":{"operationId":"spaceJoin.myRequests","tags":["SpaceJoin"],"summary":"MyRequests — space join","description":"The \"myRequests\" operation on space join.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}}}},"/saas/billing/create-checkout-session":{"post":{"operationId":"saas.billing.createCheckoutSession","tags":["Saas"],"summary":"CreateCheckoutSession — saas","description":"The \"createCheckoutSession\" operation on saas.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"tier":{"type":"string","enum":["trainer","starter","growth","scale","enterprise"]},"interval":{"default":"monthly","type":"string","enum":["monthly","annual"]},"addOns":{"default":{"extraSpaces":0,"extraDevices":0},"type":"object","properties":{"extraSpaces":{"default":0,"type":"integer","minimum":0,"maximum":50},"extraDevices":{"default":0,"type":"integer","minimum":0,"maximum":50}}},"successPath":{"type":"string","pattern":"^\\/[^/]"},"cancelPath":{"type":"string","pattern":"^\\/[^/]"}},"required":["tier","successPath","cancelPath"]}}}}}},"/saas/billing/portal-link":{"post":{"operationId":"saas.billing.portalLink","tags":["Saas"],"summary":"PortalLink — saas","description":"The \"portalLink\" operation on saas.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"returnPath":{"type":"string","pattern":"^\\/[^/]"}},"required":["returnPath"]}}}}}},"/saas/state":{"get":{"operationId":"saas.state","tags":["Saas"],"summary":"State — saas","description":"The \"state\" operation on saas.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}}}},"/saas/usage":{"get":{"operationId":"saas.usage","tags":["Saas"],"summary":"Usage — saas","description":"The \"usage\" operation on saas.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}}}},"/space-staff/list-for-org":{"get":{"operationId":"spaceStaff.listForOrg","tags":["SpaceStaff"],"summary":"ListForOrg — space staff","description":"The \"listForOrg\" operation on space staff.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}}}},"/space-staff/list-assignments":{"get":{"operationId":"spaceStaff.listAssignments","tags":["SpaceStaff"],"summary":"ListAssignments — space staff","description":"The \"listAssignments\" operation on space staff.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"parameters":[{"name":"spaceId","in":"query","required":true,"schema":{"type":"string","minLength":1}}]}},"/space-staff/list-for-user":{"get":{"operationId":"spaceStaff.listForUser","tags":["SpaceStaff"],"summary":"ListForUser — space staff","description":"The \"listForUser\" operation on space staff.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"parameters":[{"name":"userId","in":"query","required":true,"schema":{"type":"string","minLength":1}}]}},"/space-staff/assign":{"post":{"operationId":"spaceStaff.assign","tags":["SpaceStaff"],"summary":"Assign — space staff","description":"The \"assign\" operation on space staff.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"userId":{"type":"string","minLength":1},"spaceId":{"type":"string","minLength":1},"role":{"type":"string","enum":["manager","coach"]}},"required":["userId","spaceId","role"]}}}}}},"/space-staff/unassign":{"post":{"operationId":"spaceStaff.unassign","tags":["SpaceStaff"],"summary":"Unassign — space staff","description":"The \"unassign\" operation on space staff.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"userId":{"type":"string","minLength":1},"spaceId":{"type":"string","minLength":1}},"required":["userId","spaceId"]}}}}}},"/space-staff/set-invite-space":{"post":{"operationId":"spaceStaff.setInviteSpace","tags":["SpaceStaff"],"summary":"SetInviteSpace — space staff","description":"The \"setInviteSpace\" operation on space staff.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"invitationId":{"type":"string","minLength":1},"spaceId":{"type":"string","minLength":1}},"required":["invitationId","spaceId"]}}}}}},"/space-staff/apply-invite-space":{"post":{"operationId":"spaceStaff.applyInviteSpace","tags":["SpaceStaff"],"summary":"ApplyInviteSpace — space staff","description":"The \"applyInviteSpace\" operation on space staff.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"invitationId":{"type":"string","minLength":1}},"required":["invitationId"]}}}}}},"/org-merge/preview":{"get":{"operationId":"orgMerge.preview","tags":["OrgMerge"],"summary":"Preview — org merge","description":"The \"preview\" operation on org merge.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"parameters":[{"name":"sourceOrgIds","in":"query","required":true,"schema":{"minItems":1,"maxItems":20,"type":"array","items":{"type":"string","minLength":1}}}]}},"/org-merge/execute":{"post":{"operationId":"orgMerge.execute","tags":["OrgMerge"],"summary":"Execute — org merge","description":"The \"execute\" operation on org merge.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"sourceOrgIds":{"minItems":1,"maxItems":20,"type":"array","items":{"type":"string","minLength":1}},"confirmName":{"type":"string","minLength":1}},"required":["sourceOrgIds","confirmName"]}}}}}},"/room-metrics/by-room":{"get":{"operationId":"roomMetrics.byRoom","tags":["RoomMetrics"],"summary":"ByRoom — room metrics","description":"The \"byRoom\" operation on room metrics.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"parameters":[{"name":"range","in":"query","required":false,"schema":{"default":"thisMonth","type":"string","enum":["thisWeek","thisMonth","thisQuarter","thisYear"]}}]}},"/room-metrics/detail":{"get":{"operationId":"roomMetrics.detail","tags":["RoomMetrics"],"summary":"Detail — room metrics","description":"The \"detail\" operation on room metrics.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"parameters":[{"name":"roomId","in":"query","required":true,"schema":{"type":"string","minLength":1}},{"name":"range","in":"query","required":false,"schema":{"default":"thisMonth","type":"string","enum":["thisWeek","thisMonth","thisQuarter","thisYear"]}}]}},"/room-metrics/occupancy-heatmap":{"get":{"operationId":"roomMetrics.occupancyHeatmap","tags":["RoomMetrics"],"summary":"OccupancyHeatmap — room metrics","description":"The \"occupancyHeatmap\" operation on room metrics.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"parameters":[{"name":"weeks","in":"query","required":false,"schema":{"default":8,"type":"integer","minimum":1,"maximum":26}},{"name":"roomId","in":"query","required":false,"schema":{"type":"string","minLength":1}}]}},"/classes/types":{"get":{"operationId":"classTypes.list","tags":["ClassTypes"],"summary":"List class types","description":"List the class types in your organization. Org-scoped: only records in the authenticated organization are returned.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"parameters":[{"name":"allSpaces","in":"query","required":false,"schema":{"default":false,"type":"boolean"}}]},"post":{"operationId":"classTypes.create","tags":["ClassTypes"],"summary":"Create a class type","description":"Create a new class type in your organization.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"name":{"type":"string","minLength":1,"maxLength":200},"abbreviation":{"type":"string","minLength":1,"maxLength":20},"color":{"type":"string","pattern":"^#[0-9a-fA-F]{6}$"},"icon":{"type":"string","maxLength":100},"active":{"default":true,"type":"boolean"},"modality":{"type":"string","minLength":1,"maxLength":60},"memberMessage":{"anyOf":[{"type":"string","maxLength":500},{"type":"null"}]},"dropinAllowed":{"type":"boolean"},"notificationEmail":{"anyOf":[{"type":"string","maxLength":200},{"type":"null"}]},"visibleInList":{"type":"boolean"}},"required":["name","abbreviation","color"]}}}}}},"/classes/types/space-access":{"get":{"operationId":"classTypes.spaceAccess","tags":["ClassTypes"],"summary":"SpaceAccess — class types","description":"The \"spaceAccess\" operation on class types.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"parameters":[{"name":"id","in":"query","required":true,"schema":{"type":"string","minLength":1}}]}},"/classes/types/set-space-access":{"post":{"operationId":"classTypes.setSpaceAccess","tags":["ClassTypes"],"summary":"SetSpaceAccess — class types","description":"The \"setSpaceAccess\" operation on class types.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"id":{"type":"string","minLength":1},"spaceIds":{"default":[],"type":"array","items":{"type":"string","minLength":1}}},"required":["id"]}}}}}},"/classes/types/{id}":{"get":{"operationId":"classTypes.byId","tags":["ClassTypes"],"summary":"Retrieve a class type","description":"Retrieve a single class type by its id. Returns 404 when it does not exist in your organization.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"parameters":[{"name":"id","in":"path","required":true,"description":"Unique id of the class type.","schema":{"type":"string"}}]},"patch":{"operationId":"classTypes.update","tags":["ClassTypes"],"summary":"Update a class type","description":"Apply a partial update to an existing class type by id. Only the fields you send are changed.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"id":{"type":"string","minLength":1},"data":{"type":"object","properties":{"name":{"type":"string","minLength":1,"maxLength":200},"abbreviation":{"type":"string","minLength":1,"maxLength":20},"color":{"type":"string","pattern":"^#[0-9a-fA-F]{6}$"},"icon":{"type":"string","maxLength":100},"active":{"type":"boolean"},"modality":{"type":"string","minLength":1,"maxLength":60},"memberMessage":{"anyOf":[{"type":"string","maxLength":500},{"type":"null"}]},"dropinAllowed":{"type":"boolean"},"notificationEmail":{"anyOf":[{"type":"string","maxLength":200},{"type":"null"}]},"visibleInList":{"type":"boolean"}}}},"required":["id","data"]}}}},"parameters":[{"name":"id","in":"path","required":true,"description":"Unique id of the class type.","schema":{"type":"string"}}]},"delete":{"operationId":"classTypes.delete","tags":["ClassTypes"],"summary":"Delete a class type","description":"Permanently delete a class type by id.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"id":{"type":"string","minLength":1}},"required":["id"]}}}},"parameters":[{"name":"id","in":"path","required":true,"description":"Unique id of the class type.","schema":{"type":"string"}}]}},"/classes":{"get":{"operationId":"classes.list","tags":["Classes"],"summary":"List classes","description":"List the classes in your organization. Org-scoped: only records in the authenticated organization are returned.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"parameters":[{"name":"from","in":"query","required":true,"schema":{"type":"string","pattern":"^\\d{4}-\\d{2}-\\d{2}$"}},{"name":"to","in":"query","required":true,"schema":{"type":"string","pattern":"^\\d{4}-\\d{2}-\\d{2}$"}}]},"post":{"operationId":"classes.create","tags":["Classes"],"summary":"Create a class","description":"Create a new class in your organization.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"classTypeId":{"type":"string","minLength":1},"roomId":{"type":"string","minLength":1},"coachIds":{"default":[],"type":"array","items":{"type":"string","minLength":1}},"date":{"type":"string","pattern":"^\\d{4}-\\d{2}-\\d{2}$"},"startTime":{"type":"string","pattern":"^([01]\\d|2[0-3]):[0-5]\\d$"},"endTime":{"type":"string","pattern":"^([01]\\d|2[0-3]):[0-5]\\d$"},"maxCapacity":{"type":"integer","minimum":1,"maximum":1000},"workoutId":{"anyOf":[{"type":"string","minLength":1},{"type":"null"}]},"notes":{"anyOf":[{"type":"string","maxLength":1000},{"type":"null"}]}},"required":["classTypeId","roomId","date","startTime","endTime","maxCapacity"]}}}}}},"/classes/schedule":{"get":{"operationId":"classes.schedule","tags":["Classes"],"summary":"Schedule — classes","description":"The \"schedule\" operation on classes.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"parameters":[{"name":"from","in":"query","required":true,"schema":{"type":"string","pattern":"^\\d{4}-\\d{2}-\\d{2}$"}},{"name":"to","in":"query","required":true,"schema":{"type":"string","pattern":"^\\d{4}-\\d{2}-\\d{2}$"}}]}},"/classes/{id}":{"get":{"operationId":"classes.byId","tags":["Classes"],"summary":"Retrieve a class","description":"Retrieve a single class by its id. Returns 404 when it does not exist in your organization.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"parameters":[{"name":"id","in":"path","required":true,"description":"Unique id of the class.","schema":{"type":"string"}}]}},"/classes/create-many":{"post":{"operationId":"classes.createMany","tags":["Classes"],"summary":"CreateMany — classes","description":"The \"createMany\" operation on classes.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"classTypeId":{"type":"string","minLength":1},"roomId":{"type":"string","minLength":1},"coachIds":{"default":[],"type":"array","items":{"type":"string","minLength":1}},"date":{"type":"string","pattern":"^\\d{4}-\\d{2}-\\d{2}$"},"maxCapacity":{"type":"integer","minimum":1,"maximum":1000},"workoutId":{"anyOf":[{"type":"string","minLength":1},{"type":"null"}]},"notes":{"anyOf":[{"type":"string","maxLength":1000},{"type":"null"}]},"slots":{"minItems":1,"maxItems":24,"type":"array","items":{"type":"object","properties":{"startTime":{"type":"string","pattern":"^([01]\\d|2[0-3]):[0-5]\\d$"},"endTime":{"type":"string","pattern":"^([01]\\d|2[0-3]):[0-5]\\d$"},"coachIds":{"type":"array","items":{"type":"string","minLength":1}}},"required":["startTime","endTime"]}}},"required":["classTypeId","roomId","date","maxCapacity","slots"]}}}}}},"/classes/create-series":{"post":{"operationId":"classes.createSeries","tags":["Classes"],"summary":"CreateSeries — classes","description":"The \"createSeries\" operation on classes.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"classTypeId":{"type":"string","minLength":1},"roomId":{"type":"string","minLength":1},"coachIds":{"default":[],"type":"array","items":{"type":"string","minLength":1}},"date":{"type":"string","pattern":"^\\d{4}-\\d{2}-\\d{2}$"},"startTime":{"type":"string","pattern":"^([01]\\d|2[0-3]):[0-5]\\d$"},"endTime":{"type":"string","pattern":"^([01]\\d|2[0-3]):[0-5]\\d$"},"maxCapacity":{"type":"integer","minimum":1,"maximum":1000},"workoutId":{"anyOf":[{"type":"string","minLength":1},{"type":"null"}]},"notes":{"anyOf":[{"type":"string","maxLength":1000},{"type":"null"}]},"until":{"type":"string","pattern":"^\\d{4}-\\d{2}-\\d{2}$"},"weekdays":{"default":[],"maxItems":7,"type":"array","items":{"type":"integer","minimum":0,"maximum":6}}},"required":["classTypeId","roomId","date","startTime","endTime","maxCapacity","until"]}}}}}},"/classes/update-schedule":{"post":{"operationId":"classes.updateSchedule","tags":["Classes"],"summary":"UpdateSchedule — classes","description":"The \"updateSchedule\" operation on classes.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"id":{"type":"string","minLength":1},"date":{"type":"string","pattern":"^\\d{4}-\\d{2}-\\d{2}$"},"startTime":{"type":"string","pattern":"^([01]\\d|2[0-3]):[0-5]\\d$"},"endTime":{"type":"string","pattern":"^([01]\\d|2[0-3]):[0-5]\\d$"},"roomId":{"type":"string","minLength":1},"coachIds":{"type":"array","items":{"type":"string","minLength":1}},"maxCapacity":{"type":"integer","minimum":1,"maximum":1000}},"required":["id"]}}}}}},"/classes/set-notes":{"post":{"operationId":"classes.setNotes","tags":["Classes"],"summary":"SetNotes — classes","description":"The \"setNotes\" operation on classes.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"id":{"type":"string","minLength":1},"notes":{"anyOf":[{"type":"string","maxLength":1000},{"type":"null"}]}},"required":["id","notes"]}}}}}},"/classes/set-workout-for-day":{"post":{"operationId":"classes.setWorkoutForDay","tags":["Classes"],"summary":"SetWorkoutForDay — classes","description":"The \"setWorkoutForDay\" operation on classes.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"date":{"type":"string","pattern":"^\\d{4}-\\d{2}-\\d{2}$"},"classTypeId":{"type":"string","minLength":1},"workoutId":{"anyOf":[{"type":"string","minLength":1},{"type":"null"}]},"overwriteOverrides":{"default":false,"type":"boolean"}},"required":["date","classTypeId","workoutId"]}}}}}},"/classes/set-workout":{"post":{"operationId":"classes.setWorkout","tags":["Classes"],"summary":"SetWorkout — classes","description":"The \"setWorkout\" operation on classes.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"classId":{"type":"string","minLength":1},"workoutId":{"anyOf":[{"type":"string","minLength":1},{"type":"null"}]}},"required":["classId","workoutId"]}}}}}},"/classes/copy-week":{"post":{"operationId":"classes.copyWeek","tags":["Classes"],"summary":"CopyWeek — classes","description":"The \"copyWeek\" operation on classes.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"fromWeekStart":{"type":"string","pattern":"^\\d{4}-\\d{2}-\\d{2}$"},"toWeekStart":{"type":"string","pattern":"^\\d{4}-\\d{2}-\\d{2}$"}},"required":["fromWeekStart","toWeekStart"]}}}}}},"/classes/copy-day":{"post":{"operationId":"classes.copyDay","tags":["Classes"],"summary":"CopyDay — classes","description":"The \"copyDay\" operation on classes.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"fromDate":{"type":"string","pattern":"^\\d{4}-\\d{2}-\\d{2}$"},"toDate":{"type":"string","pattern":"^\\d{4}-\\d{2}-\\d{2}$"},"mode":{"default":"with-workout","type":"string","enum":["with-workout","without-workout"]},"replace":{"default":false,"type":"boolean"}},"required":["fromDate","toDate"]}}}}}},"/classes/apply-template-to-week":{"post":{"operationId":"classes.applyTemplateToWeek","tags":["Classes"],"summary":"ApplyTemplateToWeek — classes","description":"The \"applyTemplateToWeek\" operation on classes.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"templateId":{"type":"string","minLength":1},"weekStart":{"type":"string","pattern":"^\\d{4}-\\d{2}-\\d{2}$"}},"required":["templateId","weekStart"]}}}}}},"/classes/apply-template-to-day":{"post":{"operationId":"classes.applyTemplateToDay","tags":["Classes"],"summary":"ApplyTemplateToDay — classes","description":"The \"applyTemplateToDay\" operation on classes.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"templateId":{"type":"string","minLength":1},"date":{"type":"string","pattern":"^\\d{4}-\\d{2}-\\d{2}$"}},"required":["templateId","date"]}}}}}},"/classes/week-impact":{"get":{"operationId":"classes.weekImpact","tags":["Classes"],"summary":"WeekImpact — classes","description":"The \"weekImpact\" operation on classes.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"parameters":[{"name":"weekStart","in":"query","required":true,"schema":{"type":"string","pattern":"^\\d{4}-\\d{2}-\\d{2}$"}}]}},"/classes/delete-week":{"post":{"operationId":"classes.deleteWeek","tags":["Classes"],"summary":"DeleteWeek — classes","description":"The \"deleteWeek\" operation on classes.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"weekStart":{"type":"string","pattern":"^\\d{4}-\\d{2}-\\d{2}$"}},"required":["weekStart"]}}}}}},"/classes/cancel":{"post":{"operationId":"classes.cancel","tags":["Classes"],"summary":"Cancel — classes","description":"The \"cancel\" operation on classes.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"id":{"type":"string","minLength":1}},"required":["id"]}}}}}},"/classes/series":{"get":{"operationId":"classes.series","tags":["Classes"],"summary":"Series — classes","description":"The \"series\" operation on classes.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"parameters":[{"name":"classId","in":"query","required":true,"schema":{"type":"string","minLength":1}}]}},"/classes/cancel-series":{"post":{"operationId":"classes.cancelSeries","tags":["Classes"],"summary":"CancelSeries — classes","description":"The \"cancelSeries\" operation on classes.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"classId":{"type":"string","minLength":1},"scope":{"default":"following","type":"string","enum":["following","all"]}},"required":["classId"]}}}}}},"/classes/update-series":{"post":{"operationId":"classes.updateSeries","tags":["Classes"],"summary":"UpdateSeries — classes","description":"The \"updateSeries\" operation on classes.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"classId":{"type":"string","minLength":1},"scope":{"default":"following","type":"string","enum":["following","all"]},"startTime":{"type":"string","pattern":"^([01]\\d|2[0-3]):[0-5]\\d$"},"endTime":{"type":"string","pattern":"^([01]\\d|2[0-3]):[0-5]\\d$"},"roomId":{"type":"string","minLength":1},"coachIds":{"type":"array","items":{"type":"string","minLength":1}},"maxCapacity":{"type":"integer","minimum":1,"maximum":1000}},"required":["classId"]}}}}}},"/classes/history":{"get":{"operationId":"classes.history","tags":["Classes"],"summary":"History — classes","description":"The \"history\" operation on classes.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"parameters":[{"name":"limit","in":"query","required":false,"schema":{"default":120,"type":"integer","minimum":1,"maximum":500}}]}},"/classes/feedback":{"get":{"operationId":"classes.feedback","tags":["Classes"],"summary":"Feedback — classes","description":"The \"feedback\" operation on classes.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"parameters":[{"name":"classId","in":"query","required":true,"schema":{"type":"string","minLength":1}}]}},"/classes/submit-feedback":{"post":{"operationId":"classes.submitFeedback","tags":["Classes"],"summary":"SubmitFeedback — classes","description":"The \"submitFeedback\" operation on classes.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"classId":{"type":"string","minLength":1},"rating":{"type":"integer","minimum":1,"maximum":5},"comment":{"type":"string","maxLength":1000}},"required":["classId","rating"]}}}}}},"/bookings/book":{"post":{"operationId":"bookings.book","tags":["Bookings"],"summary":"Book — bookings","description":"The \"book\" operation on bookings.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"classId":{"type":"string","minLength":1},"memberId":{"type":"string","minLength":1}},"required":["classId","memberId"]}}}}}},"/bookings/cancel":{"post":{"operationId":"bookings.cancel","tags":["Bookings"],"summary":"Cancel — bookings","description":"The \"cancel\" operation on bookings.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"id":{"type":"string","minLength":1}},"required":["id"]}}}}}},"/bookings/policy":{"get":{"operationId":"bookings.policy","tags":["Bookings"],"summary":"Policy — bookings","description":"The \"policy\" operation on bookings.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"parameters":[{"name":"spaceId","in":"query","required":false,"schema":{"type":"string"}}]}},"/bookings/list-by-member":{"get":{"operationId":"bookings.listByMember","tags":["Bookings"],"summary":"ListByMember — bookings","description":"The \"listByMember\" operation on bookings.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"parameters":[{"name":"memberId","in":"query","required":true,"schema":{"type":"string","minLength":1}}]}},"/bookings/list-by-class":{"get":{"operationId":"bookings.listByClass","tags":["Bookings"],"summary":"ListByClass — bookings","description":"The \"listByClass\" operation on bookings.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"parameters":[{"name":"classId","in":"query","required":true,"schema":{"type":"string","minLength":1}}]}},"/bookings/set-attendance":{"post":{"operationId":"bookings.setAttendance","tags":["Bookings"],"summary":"SetAttendance — bookings","description":"The \"setAttendance\" operation on bookings.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"id":{"type":"string","minLength":1},"status":{"type":"string","enum":["confirmed","checked_in","no_show"]}},"required":["id","status"]}}}}}},"/bookings/waitlist":{"get":{"operationId":"bookings.waitlist","tags":["Bookings"],"summary":"Waitlist — bookings","description":"The \"waitlist\" operation on bookings.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}}}},"/bookings/calendar-feed-url":{"get":{"operationId":"bookings.calendarFeedUrl","tags":["Bookings"],"summary":"CalendarFeedUrl — bookings","description":"The \"calendarFeedUrl\" operation on bookings.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}}}},"/check-ins":{"get":{"operationId":"checkIns.list","tags":["CheckIns"],"summary":"List check-ins","description":"List the check-ins in your organization. Org-scoped: only records in the authenticated organization are returned.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"parameters":[{"name":"memberId","in":"query","required":false,"schema":{"type":"string","minLength":1}},{"name":"classId","in":"query","required":false,"schema":{"type":"string","minLength":1}},{"name":"from","in":"query","required":false,"schema":{"type":"string","pattern":"^\\d{4}-\\d{2}-\\d{2}$"}},{"name":"to","in":"query","required":false,"schema":{"type":"string","pattern":"^\\d{4}-\\d{2}-\\d{2}$"}},{"name":"cursor","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}]}},{"name":"limit","in":"query","required":false,"schema":{"default":50,"type":"integer","minimum":1,"maximum":100}}]},"post":{"operationId":"checkIns.create","tags":["CheckIns"],"summary":"Create a check-in","description":"Create a new check-in in your organization.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"memberId":{"type":"string","minLength":1},"classId":{"type":"string","minLength":1},"bookingId":{"type":"string","minLength":1},"method":{"default":"manual","type":"string","enum":["qr","kiosk","manual","app"]}},"required":["memberId"]}}}}}},"/check-ins/mine":{"get":{"operationId":"checkIns.mine","tags":["CheckIns"],"summary":"Retrieve your check-in","description":"Retrieve the check-in linked to the authenticated caller (self-service).","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"parameters":[{"name":"limit","in":"query","required":false,"schema":{"default":30,"type":"integer","minimum":1,"maximum":100}}]}},"/check-ins/today-stats":{"get":{"operationId":"checkIns.todayStats","tags":["CheckIns"],"summary":"TodayStats — check-ins","description":"The \"todayStats\" operation on check-ins.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}}}},"/check-ins/self-check-in":{"post":{"operationId":"checkIns.selfCheckIn","tags":["CheckIns"],"summary":"SelfCheckIn — check-ins","description":"The \"selfCheckIn\" operation on check-ins.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"bookingId":{"type":"string","minLength":1},"memberId":{"type":"string","minLength":1}},"required":["bookingId","memberId"]}}}}}},"/check-ins/kiosk-check-in":{"post":{"operationId":"checkIns.kioskCheckIn","tags":["CheckIns"],"summary":"KioskCheckIn — check-ins","description":"The \"kioskCheckIn\" operation on check-ins.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"payload":{"type":"string","minLength":1}},"required":["payload"]}}}}}},"/check-ins/device-check-in":{"post":{"operationId":"checkIns.deviceCheckIn","tags":["CheckIns"],"summary":"DeviceCheckIn — check-ins","description":"The \"deviceCheckIn\" operation on check-ins.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"anyOf":[{"type":"object","properties":{"payload":{"type":"string","minLength":1}},"required":["payload"]},{"type":"object","properties":{"memberId":{"type":"string","minLength":1}},"required":["memberId"]}]}}}}}},"/check-ins/device-lookup-member":{"get":{"operationId":"checkIns.deviceLookupMember","tags":["CheckIns"],"summary":"DeviceLookupMember — check-ins","description":"The \"deviceLookupMember\" operation on check-ins.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"parameters":[{"name":"query","in":"query","required":true,"schema":{"type":"string","minLength":1,"maxLength":60}}]}},"/check-ins/{id}":{"delete":{"operationId":"checkIns.delete","tags":["CheckIns"],"summary":"Delete a check-in","description":"Permanently delete a check-in by id.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"id":{"type":"string","minLength":1}},"required":["id"]}}}},"parameters":[{"name":"id","in":"path","required":true,"description":"Unique id of the check-in.","schema":{"type":"string"}}]}},"/exercises":{"get":{"operationId":"exercises.list","tags":["Exercises"],"summary":"List exercises","description":"List the exercises in your organization. Org-scoped: only records in the authenticated organization are returned.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"parameters":[{"name":"category","in":"query","required":false,"schema":{"type":"string","enum":["weightlifting","gymnastics","cardio","strength","mobility","other"]}},{"name":"modality","in":"query","required":false,"schema":{"type":"string","minLength":1}},{"name":"query","in":"query","required":false,"schema":{"type":"string","maxLength":120}},{"name":"source","in":"query","required":false,"schema":{"type":"string","enum":["global","org"]}},{"name":"ids","in":"query","required":false,"schema":{"maxItems":500,"type":"array","items":{"type":"string","minLength":1}}}]},"post":{"operationId":"exercises.create","tags":["Exercises"],"summary":"Create a exercise","description":"Create a new exercise in your organization.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"name":{"type":"string","minLength":1,"maxLength":120},"category":{"default":"other","type":"string","enum":["weightlifting","gymnastics","cardio","strength","mobility","other"]},"description":{"anyOf":[{"type":"string","maxLength":2000},{"type":"null"}]},"videoUrl":{"anyOf":[{"type":"string","maxLength":2000,"format":"uri"},{"type":"null"}]},"thumbnailUrl":{"anyOf":[{"type":"string","maxLength":2000,"format":"uri"},{"type":"null"}]},"gifUrl":{"anyOf":[{"type":"string","maxLength":2000,"format":"uri"},{"type":"null"}]},"equipment":{"default":[],"maxItems":20,"type":"array","items":{"type":"string","minLength":1,"maxLength":60}},"muscleGroups":{"default":[],"maxItems":20,"type":"array","items":{"type":"string","minLength":1,"maxLength":60}},"patterns":{"default":[],"maxItems":12,"type":"array","items":{"type":"string","minLength":1,"maxLength":60}},"scaledVariations":{"default":[],"maxItems":12,"type":"array","items":{"type":"string","minLength":1,"maxLength":120}}},"required":["name"]}}}}}},"/exercises/{id}":{"get":{"operationId":"exercises.byId","tags":["Exercises"],"summary":"Retrieve a exercise","description":"Retrieve a single exercise by its id. Returns 404 when it does not exist in your organization.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"parameters":[{"name":"id","in":"path","required":true,"description":"Unique id of the exercise.","schema":{"type":"string"}}]},"patch":{"operationId":"exercises.update","tags":["Exercises"],"summary":"Update a exercise","description":"Apply a partial update to an existing exercise by id. Only the fields you send are changed.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"id":{"type":"string","minLength":1},"data":{"type":"object","properties":{"name":{"type":"string","minLength":1,"maxLength":120},"category":{"type":"string","enum":["weightlifting","gymnastics","cardio","strength","mobility","other"]},"description":{"anyOf":[{"type":"string","maxLength":2000},{"type":"null"}]},"videoUrl":{"anyOf":[{"type":"string","maxLength":2000,"format":"uri"},{"type":"null"}]},"thumbnailUrl":{"anyOf":[{"type":"string","maxLength":2000,"format":"uri"},{"type":"null"}]},"gifUrl":{"anyOf":[{"type":"string","maxLength":2000,"format":"uri"},{"type":"null"}]},"equipment":{"maxItems":20,"type":"array","items":{"type":"string","minLength":1,"maxLength":60}},"muscleGroups":{"maxItems":20,"type":"array","items":{"type":"string","minLength":1,"maxLength":60}},"patterns":{"maxItems":12,"type":"array","items":{"type":"string","minLength":1,"maxLength":60}},"scaledVariations":{"maxItems":12,"type":"array","items":{"type":"string","minLength":1,"maxLength":120}}}}},"required":["id","data"]}}}},"parameters":[{"name":"id","in":"path","required":true,"description":"Unique id of the exercise.","schema":{"type":"string"}}]}},"/exercises/archive":{"post":{"operationId":"exercises.archive","tags":["Exercises"],"summary":"Archive — exercises","description":"The \"archive\" operation on exercises.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"id":{"type":"string","minLength":1}},"required":["id"]}}}}}},"/exercises/restore":{"post":{"operationId":"exercises.restore","tags":["Exercises"],"summary":"Restore — exercises","description":"The \"restore\" operation on exercises.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"id":{"type":"string","minLength":1}},"required":["id"]}}}}}},"/exercises/list-archived":{"get":{"operationId":"exercises.listArchived","tags":["Exercises"],"summary":"ListArchived — exercises","description":"The \"listArchived\" operation on exercises.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}}}},"/workouts":{"get":{"operationId":"workouts.list","tags":["Workouts"],"summary":"List Workouts","description":"List the Workouts in your organization. Org-scoped: only records in the authenticated organization are returned.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"parameters":[{"name":"from","in":"query","required":false,"schema":{"type":"string","pattern":"^\\d{4}-\\d{2}-\\d{2}$"}},{"name":"to","in":"query","required":false,"schema":{"type":"string","pattern":"^\\d{4}-\\d{2}-\\d{2}$"}}]},"post":{"operationId":"workouts.create","tags":["Workouts"],"summary":"Create a WOD","description":"Create a new WOD in your organization.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"classTypeId":{"type":"string","minLength":1},"date":{"type":"string","pattern":"^\\d{4}-\\d{2}-\\d{2}$"},"modality":{"default":"crossfit","type":"string","minLength":1,"maxLength":60},"kind":{"default":"daily","type":"string","minLength":1,"maxLength":60},"title":{"type":"string","maxLength":200},"description":{"type":"string","maxLength":2000},"parts":{"default":[],"type":"array","items":{"type":"object","properties":{"name":{"type":"string","minLength":1,"maxLength":120},"type":{"type":"string","minLength":1,"maxLength":60},"timeCap":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"rounds":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"intervalSeconds":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"exercises":{"type":"array","items":{"type":"object","properties":{"exerciseId":{"type":"string","minLength":1},"reps":{"type":"string","maxLength":60},"weight":{"type":"string","maxLength":60},"notes":{"type":"string","maxLength":500},"metrics":{"type":"object","propertyNames":{"type":"string","minLength":1,"maxLength":30},"additionalProperties":{"type":"string","maxLength":60}},"sets":{"maxItems":20,"type":"array","items":{"type":"object","properties":{"reps":{"type":"string","maxLength":60},"load":{"type":"string","maxLength":60},"rest":{"type":"string","maxLength":60},"notes":{"type":"string","maxLength":200}}}},"prescription":{"type":"object","properties":{"sets":{"type":"integer","minimum":1,"maximum":50},"reps":{"type":"integer","minimum":1,"maximum":100},"percentOfOneRm":{"anyOf":[{"type":"number","minimum":1,"maximum":150},{"type":"null"}]},"absoluteKg":{"anyOf":[{"type":"number","exclusiveMinimum":0,"maximum":1000},{"type":"null"}]},"targetRpe":{"anyOf":[{"type":"number","minimum":1,"maximum":10},{"type":"null"}]}},"required":["sets","reps"]}},"required":["exerciseId"]}}},"required":["name","type","exercises"]}}},"required":["classTypeId","date"]}}}}}},"/workouts/{id}":{"get":{"operationId":"workouts.byId","tags":["Workouts"],"summary":"Retrieve a WOD","description":"Retrieve a single WOD by its id. Returns 404 when it does not exist in your organization.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"parameters":[{"name":"id","in":"path","required":true,"description":"Unique id of the WOD.","schema":{"type":"string"}}]},"patch":{"operationId":"workouts.update","tags":["Workouts"],"summary":"Update a WOD","description":"Apply a partial update to an existing WOD by id. Only the fields you send are changed.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object"}}}},"parameters":[{"name":"id","in":"path","required":true,"description":"Unique id of the WOD.","schema":{"type":"string"}}]}},"/workouts/publish":{"post":{"operationId":"workouts.publish","tags":["Workouts"],"summary":"Publish — Workouts","description":"The \"publish\" operation on Workouts.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"id":{"type":"string","minLength":1}},"required":["id"]}}}}}},"/workouts/publish-week":{"post":{"operationId":"workouts.publishWeek","tags":["Workouts"],"summary":"PublishWeek — Workouts","description":"The \"publishWeek\" operation on Workouts.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"from":{"type":"string","pattern":"^\\d{4}-\\d{2}-\\d{2}$"},"to":{"type":"string","pattern":"^\\d{4}-\\d{2}-\\d{2}$"}},"required":["from","to"]}}}}}},"/workouts/unpublish":{"post":{"operationId":"workouts.unpublish","tags":["Workouts"],"summary":"Unpublish — Workouts","description":"The \"unpublish\" operation on Workouts.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"id":{"type":"string","minLength":1}},"required":["id"]}}}}}},"/workouts/archive":{"post":{"operationId":"workouts.archive","tags":["Workouts"],"summary":"Archive — Workouts","description":"The \"archive\" operation on Workouts.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"id":{"type":"string","minLength":1}},"required":["id"]}}}}}},"/workouts/restore":{"post":{"operationId":"workouts.restore","tags":["Workouts"],"summary":"Restore — Workouts","description":"The \"restore\" operation on Workouts.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"id":{"type":"string","minLength":1}},"required":["id"]}}}}}},"/workouts/list-archived":{"get":{"operationId":"workouts.listArchived","tags":["Workouts"],"summary":"ListArchived — Workouts","description":"The \"listArchived\" operation on Workouts.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}}}},"/competitions/publicity/{id}":{"get":{"operationId":"competitions.publicity.get","tags":["Competitions"],"summary":"Retrieve a competition","description":"Retrieve a single competition by its id. Returns 404 when it does not exist in your organization.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"parameters":[{"name":"id","in":"path","required":true,"description":"Unique id of the competition.","schema":{"type":"string"}},{"name":"eventId","in":"query","required":true,"schema":{"type":"string","minLength":1}}]}},"/competitions/publicity/set":{"post":{"operationId":"competitions.publicity.set","tags":["Competitions"],"summary":"Set — competitions","description":"The \"set\" operation on competitions.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"eventId":{"type":"string","minLength":1},"publicPage":{"type":"boolean"},"publicAthleteNames":{"type":"boolean"}},"required":["eventId"]}}}}}},"/competitions/categories":{"get":{"operationId":"competitions.categories.list","tags":["Competitions"],"summary":"List competitions","description":"List the competitions in your organization. Org-scoped: only records in the authenticated organization are returned.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"parameters":[{"name":"eventId","in":"query","required":true,"schema":{"type":"string","minLength":1}}]},"post":{"operationId":"competitions.categories.create","tags":["Competitions"],"summary":"Create a competition","description":"Create a new competition in your organization.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"eventId":{"type":"string","minLength":1},"name":{"type":"string","minLength":1,"maxLength":80},"minAge":{"default":null,"anyOf":[{"type":"integer","minimum":0,"maximum":120},{"type":"null"}]},"maxAge":{"default":null,"anyOf":[{"type":"integer","minimum":0,"maximum":120},{"type":"null"}]},"color":{"default":null,"anyOf":[{"type":"string","maxLength":20},{"type":"null"}]},"cap":{"default":null,"anyOf":[{"type":"integer","minimum":1,"maximum":10000},{"type":"null"}]},"sortOrder":{"default":0,"type":"integer","minimum":0,"maximum":999}},"required":["eventId","name"]}}}}}},"/competitions/categories/{id}":{"patch":{"operationId":"competitions.categories.update","tags":["Competitions"],"summary":"Update a competition","description":"Apply a partial update to an existing competition by id. Only the fields you send are changed.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"id":{"type":"string","minLength":1},"data":{"type":"object","properties":{"name":{"type":"string","minLength":1,"maxLength":80},"minAge":{"anyOf":[{"type":"integer","minimum":0,"maximum":120},{"type":"null"}]},"maxAge":{"anyOf":[{"type":"integer","minimum":0,"maximum":120},{"type":"null"}]},"color":{"anyOf":[{"type":"string","maxLength":20},{"type":"null"}]},"cap":{"anyOf":[{"type":"integer","minimum":1,"maximum":10000},{"type":"null"}]},"sortOrder":{"type":"integer","minimum":0,"maximum":999}}}},"required":["id","data"]}}}},"parameters":[{"name":"id","in":"path","required":true,"description":"Unique id of the competition.","schema":{"type":"string"}}]}},"/competitions/categories/remove":{"post":{"operationId":"competitions.categories.remove","tags":["Competitions"],"summary":"Remove — competitions","description":"The \"remove\" operation on competitions.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"id":{"type":"string","minLength":1}},"required":["id"]}}}}}},"/competitions/divisions":{"get":{"operationId":"competitions.divisions.list","tags":["Competitions"],"summary":"List competitions","description":"List the competitions in your organization. Org-scoped: only records in the authenticated organization are returned.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"parameters":[{"name":"eventId","in":"query","required":true,"schema":{"type":"string","minLength":1}}]},"post":{"operationId":"competitions.divisions.create","tags":["Competitions"],"summary":"Create a competition","description":"Create a new competition in your organization.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"eventId":{"type":"string","minLength":1},"categoryId":{"type":"string","minLength":1},"gender":{"default":"open","type":"string","enum":["male","female","mixed","open"]},"teamSize":{"default":1,"type":"integer","minimum":1,"maximum":20},"seedingMode":{"default":"random","type":"string","enum":["random","registration"]},"sortOrder":{"default":0,"type":"integer","minimum":0,"maximum":999}},"required":["eventId","categoryId"]}}}}}},"/competitions/divisions/remove":{"post":{"operationId":"competitions.divisions.remove","tags":["Competitions"],"summary":"Remove — competitions","description":"The \"remove\" operation on competitions.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"id":{"type":"string","minLength":1}},"required":["id"]}}}}}},"/competitions/divisions/close-readiness":{"get":{"operationId":"competitions.divisions.closeReadiness","tags":["Competitions"],"summary":"CloseReadiness — competitions","description":"The \"closeReadiness\" operation on competitions.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"parameters":[{"name":"id","in":"query","required":true,"schema":{"type":"string","minLength":1}}]}},"/competitions/divisions/close":{"post":{"operationId":"competitions.divisions.close","tags":["Competitions"],"summary":"Close — competitions","description":"The \"close\" operation on competitions.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"id":{"type":"string","minLength":1}},"required":["id"]}}}}}},"/competitions/divisions/reopen":{"post":{"operationId":"competitions.divisions.reopen","tags":["Competitions"],"summary":"Reopen — competitions","description":"The \"reopen\" operation on competitions.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"id":{"type":"string","minLength":1},"reason":{"type":"string","minLength":3,"maxLength":200}},"required":["id","reason"]}}}}}},"/competitions/divisions/start":{"post":{"operationId":"competitions.divisions.start","tags":["Competitions"],"summary":"Start — competitions","description":"The \"start\" operation on competitions.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"id":{"type":"string","minLength":1},"seed":{"type":"string","minLength":1,"maxLength":64}},"required":["id"]}}}}}},"/competitions/workouts":{"get":{"operationId":"competitions.workouts.list","tags":["Competitions"],"summary":"List competitions","description":"List the competitions in your organization. Org-scoped: only records in the authenticated organization are returned.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"parameters":[{"name":"divisionId","in":"query","required":true,"schema":{"type":"string","minLength":1}}]}},"/competitions/workouts/add":{"post":{"operationId":"competitions.workouts.add","tags":["Competitions"],"summary":"Add — competitions","description":"The \"add\" operation on competitions.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"divisionId":{"type":"string","minLength":1},"workoutId":{"type":"string","minLength":1},"athletes":{"default":1,"type":"integer","minimum":1,"maximum":20},"lanes":{"default":1,"type":"integer","minimum":1,"maximum":100},"durationMinutes":{"default":null,"anyOf":[{"type":"integer","minimum":1,"maximum":600},{"type":"null"}]},"scoreType":{"default":null,"anyOf":[{"type":"string","maxLength":30},{"type":"null"}]},"tiebreakScoreType":{"default":null,"anyOf":[{"type":"string","maxLength":30},{"type":"null"}]},"revealMode":{"default":"never","type":"string","enum":["never","always","at"]},"revealAt":{"default":null,"anyOf":[{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"},{"type":"null"}]},"sortOrder":{"default":0,"type":"integer","minimum":0,"maximum":999}},"required":["divisionId","workoutId"]}}}}}},"/competitions/workouts/{id}":{"patch":{"operationId":"competitions.workouts.update","tags":["Competitions"],"summary":"Update a competition","description":"Apply a partial update to an existing competition by id. Only the fields you send are changed.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"id":{"type":"string","minLength":1},"data":{"type":"object","properties":{"athletes":{"type":"integer","minimum":1,"maximum":20},"lanes":{"type":"integer","minimum":1,"maximum":100},"durationMinutes":{"anyOf":[{"type":"integer","minimum":1,"maximum":600},{"type":"null"}]},"scoreType":{"anyOf":[{"type":"string","maxLength":30},{"type":"null"}]},"tiebreakScoreType":{"anyOf":[{"type":"string","maxLength":30},{"type":"null"}]},"revealMode":{"type":"string","enum":["never","always","at"]},"revealAt":{"anyOf":[{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"},{"type":"null"}]},"sortOrder":{"type":"integer","minimum":0,"maximum":999}}}},"required":["id","data"]}}}},"parameters":[{"name":"id","in":"path","required":true,"description":"Unique id of the competition.","schema":{"type":"string"}}]}},"/competitions/workouts/remove":{"post":{"operationId":"competitions.workouts.remove","tags":["Competitions"],"summary":"Remove — competitions","description":"The \"remove\" operation on competitions.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"id":{"type":"string","minLength":1}},"required":["id"]}}}}}},"/competitions/entries":{"get":{"operationId":"competitions.entries.list","tags":["Competitions"],"summary":"List competitions","description":"List the competitions in your organization. Org-scoped: only records in the authenticated organization are returned.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"parameters":[{"name":"divisionId","in":"query","required":true,"schema":{"type":"string","minLength":1}}]}},"/competitions/entries/enter":{"post":{"operationId":"competitions.entries.enter","tags":["Competitions"],"summary":"Enter — competitions","description":"The \"enter\" operation on competitions.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"divisionId":{"type":"string","minLength":1},"memberId":{"type":"string","minLength":1},"teamId":{"default":null,"anyOf":[{"type":"string","minLength":1},{"type":"null"}]},"bib":{"default":null,"anyOf":[{"type":"integer","minimum":1,"maximum":99999},{"type":"null"}]},"homeBox":{"default":null,"anyOf":[{"type":"string","maxLength":120},{"type":"null"}]}},"required":["divisionId","memberId"]}}}}}},"/competitions/entries/validate":{"post":{"operationId":"competitions.entries.validate","tags":["Competitions"],"summary":"Validate — competitions","description":"The \"validate\" operation on competitions.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"id":{"type":"string","minLength":1},"validated":{"default":true,"type":"boolean"}},"required":["id"]}}}}}},"/competitions/entries/create-team":{"post":{"operationId":"competitions.entries.createTeam","tags":["Competitions"],"summary":"CreateTeam — competitions","description":"The \"createTeam\" operation on competitions.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"divisionId":{"type":"string","minLength":1},"name":{"type":"string","minLength":1,"maxLength":120},"bib":{"default":null,"anyOf":[{"type":"integer","minimum":1,"maximum":99999},{"type":"null"}]}},"required":["divisionId","name"]}}}}}},"/competitions/results/sheet":{"get":{"operationId":"competitions.results.sheet","tags":["Competitions"],"summary":"Sheet — competitions","description":"The \"sheet\" operation on competitions.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"parameters":[{"name":"workoutId","in":"query","required":true,"schema":{"type":"string","minLength":1}}]}},"/competitions/results/set-presence":{"post":{"operationId":"competitions.results.setPresence","tags":["Competitions"],"summary":"SetPresence — competitions","description":"The \"setPresence\" operation on competitions.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"id":{"type":"string","minLength":1},"present":{"type":"boolean"}},"required":["id","present"]}}}}}},"/competitions/results/save":{"post":{"operationId":"competitions.results.save","tags":["Competitions"],"summary":"Save — competitions","description":"The \"save\" operation on competitions.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"id":{"type":"string","minLength":1},"score":{"anyOf":[{"type":"string","maxLength":60},{"type":"null"}]},"tiebreak":{"default":null,"anyOf":[{"type":"string","maxLength":60},{"type":"null"}]},"scale":{"default":null,"anyOf":[{"type":"string","enum":["rx","scaled"]},{"type":"null"}]},"lane":{"default":null,"anyOf":[{"type":"integer","minimum":1,"maximum":100},{"type":"null"}]}},"required":["id","score"]}}}}}},"/competitions/results/mark-no-show":{"post":{"operationId":"competitions.results.markNoShow","tags":["Competitions"],"summary":"MarkNoShow — competitions","description":"The \"markNoShow\" operation on competitions.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"id":{"type":"string","minLength":1}},"required":["id"]}}}}}},"/competitions/results/validate-workout":{"post":{"operationId":"competitions.results.validateWorkout","tags":["Competitions"],"summary":"ValidateWorkout — competitions","description":"The \"validateWorkout\" operation on competitions.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"workoutId":{"type":"string","minLength":1}},"required":["workoutId"]}}}}}},"/competitions/leaderboard":{"get":{"operationId":"competitions.leaderboard","tags":["Competitions"],"summary":"Leaderboard — competitions","description":"The \"leaderboard\" operation on competitions.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"parameters":[{"name":"divisionId","in":"query","required":true,"schema":{"type":"string","minLength":1}}]}},"/competitions/my-heats":{"get":{"operationId":"competitions.myHeats","tags":["Competitions"],"summary":"MyHeats — competitions","description":"The \"myHeats\" operation on competitions.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"parameters":[{"name":"eventId","in":"query","required":true,"schema":{"type":"string","minLength":1}}]}},"/competitions/schedule":{"get":{"operationId":"competitions.schedule","tags":["Competitions"],"summary":"Schedule — competitions","description":"The \"schedule\" operation on competitions.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"parameters":[{"name":"eventId","in":"query","required":true,"schema":{"type":"string","minLength":1}}]}},"/competitions/timetable/generate":{"post":{"operationId":"competitions.timetable.generate","tags":["Competitions"],"summary":"Generate — competitions","description":"The \"generate\" operation on competitions.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"eventId":{"type":"string","minLength":1},"startAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"},"gapMinutes":{"default":5,"type":"integer","minimum":0,"maximum":240},"briefingOffsetMinutes":{"default":10,"anyOf":[{"type":"integer","minimum":0,"maximum":240},{"type":"null"}]},"defaultDurationMinutes":{"default":10,"type":"integer","minimum":1,"maximum":600}},"required":["eventId","startAt"]}}}}}},"/competitions/timetable/update-row":{"post":{"operationId":"competitions.timetable.updateRow","tags":["Competitions"],"summary":"UpdateRow — competitions","description":"The \"updateRow\" operation on competitions.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"id":{"type":"string","minLength":1},"data":{"type":"object","properties":{"scheduledAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"},"durationMinutes":{"type":"integer","minimum":0,"maximum":600},"briefingAt":{"anyOf":[{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"},{"type":"null"}]},"note":{"anyOf":[{"type":"string","maxLength":400},{"type":"null"}]}}},"shift":{"default":"pin","type":"string","enum":["pin","cascade"]},"briefingOffsetMinutes":{"default":10,"anyOf":[{"type":"integer","minimum":0,"maximum":240},{"type":"null"}]}},"required":["id","data"]}}}}}},"/competitions/timetable/insert-info":{"post":{"operationId":"competitions.timetable.insertInfo","tags":["Competitions"],"summary":"InsertInfo — competitions","description":"The \"insertInfo\" operation on competitions.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"eventId":{"type":"string","minLength":1},"note":{"type":"string","minLength":1,"maxLength":400},"durationMinutes":{"default":15,"type":"integer","minimum":0,"maximum":600},"atIndex":{"type":"integer","minimum":0,"maximum":9999},"startAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"},"gapMinutes":{"default":5,"type":"integer","minimum":0,"maximum":240},"briefingOffsetMinutes":{"default":10,"anyOf":[{"type":"integer","minimum":0,"maximum":240},{"type":"null"}]}},"required":["eventId","note","atIndex"]}}}}}},"/competitions/timetable/remove-row":{"post":{"operationId":"competitions.timetable.removeRow","tags":["Competitions"],"summary":"RemoveRow — competitions","description":"The \"removeRow\" operation on competitions.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"id":{"type":"string","minLength":1}},"required":["id"]}}}}}},"/competitions/timetable/reorder":{"post":{"operationId":"competitions.timetable.reorder","tags":["Competitions"],"summary":"Reorder — competitions","description":"The \"reorder\" operation on competitions.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"id":{"type":"string","minLength":1},"toIndex":{"type":"integer","minimum":0,"maximum":9999},"gapMinutes":{"default":5,"type":"integer","minimum":0,"maximum":240},"briefingOffsetMinutes":{"default":10,"anyOf":[{"type":"integer","minimum":0,"maximum":240},{"type":"null"}]}},"required":["id","toIndex"]}}}}}},"/meets/configure":{"post":{"operationId":"meets.configure","tags":["Meets"],"summary":"Configure — meets","description":"The \"configure\" operation on meets.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"eventId":{"type":"string","minLength":1},"modality":{"type":"string","enum":["weightlifting","powerlifting"]}},"required":["eventId","modality"]}}}}}},"/meets/board":{"get":{"operationId":"meets.board","tags":["Meets"],"summary":"Board — meets","description":"The \"board\" operation on meets.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"parameters":[{"name":"eventId","in":"query","required":true,"schema":{"type":"string","minLength":1}}]}},"/meets/weigh-in":{"post":{"operationId":"meets.weighIn","tags":["Meets"],"summary":"WeighIn — meets","description":"The \"weighIn\" operation on meets.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"registrationId":{"type":"string","minLength":1},"bodyweightKg":{"anyOf":[{"type":"number","exclusiveMinimum":0,"maximum":300},{"type":"null"}]}},"required":["registrationId","bodyweightKg"]}}}}}},"/meets/set-lot":{"post":{"operationId":"meets.setLot","tags":["Meets"],"summary":"SetLot — meets","description":"The \"setLot\" operation on meets.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"registrationId":{"type":"string","minLength":1},"lot":{"anyOf":[{"type":"integer","minimum":1,"maximum":999},{"type":"null"}]}},"required":["registrationId","lot"]}}}}}},"/meets/declare":{"post":{"operationId":"meets.declare","tags":["Meets"],"summary":"Declare — meets","description":"The \"declare\" operation on meets.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"registrationId":{"type":"string","minLength":1},"lift":{"type":"string","minLength":1,"maxLength":40},"attemptNumber":{"type":"integer","minimum":1,"maximum":3},"weightKg":{"type":"number","exclusiveMinimum":0,"maximum":600}},"required":["registrationId","lift","attemptNumber","weightKg"]}}}}}},"/meets/judge":{"post":{"operationId":"meets.judge","tags":["Meets"],"summary":"Judge — meets","description":"The \"judge\" operation on meets.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"attemptId":{"type":"string","minLength":1},"good":{"anyOf":[{"type":"boolean"},{"type":"null"}]}},"required":["attemptId","good"]}}}}}},"/meets/bar-order":{"get":{"operationId":"meets.barOrder","tags":["Meets"],"summary":"BarOrder — meets","description":"The \"barOrder\" operation on meets.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"parameters":[{"name":"eventId","in":"query","required":true,"schema":{"type":"string","minLength":1}},{"name":"lift","in":"query","required":false,"schema":{"default":null,"anyOf":[{"type":"string","minLength":1,"maxLength":40},{"type":"null"}]}}]}},"/meets/standings":{"get":{"operationId":"meets.standings","tags":["Meets"],"summary":"Standings — meets","description":"The \"standings\" operation on meets.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"parameters":[{"name":"eventId","in":"query","required":true,"schema":{"type":"string","minLength":1}}]}},"/meets/mine":{"get":{"operationId":"meets.mine","tags":["Meets"],"summary":"Retrieve your meet","description":"Retrieve the meet linked to the authenticated caller (self-service).","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"parameters":[{"name":"eventId","in":"query","required":true,"schema":{"type":"string","minLength":1}}]}},"/data-export/summary":{"get":{"operationId":"dataExport.summary","tags":["DataExport"],"summary":"Summary — data export","description":"The \"summary\" operation on data export.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}}}},"/data-export/download":{"post":{"operationId":"dataExport.download","tags":["DataExport"],"summary":"Download — data export","description":"The \"download\" operation on data export.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"dataset":{"type":"string","enum":["members","subscriptions","classes","bookings","checkIns","payments","expenses","memberHistory"]},"at":{"type":"string","minLength":10,"maxLength":40}},"required":["dataset","at"]}}}}}},"/setup-wizard/get-state":{"get":{"operationId":"setupWizard.getState","tags":["SetupWizard"],"summary":"GetState — setup wizard","description":"The \"getState\" operation on setup wizard.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}}}},"/setup-wizard/ensure-started":{"post":{"operationId":"setupWizard.ensureStarted","tags":["SetupWizard"],"summary":"EnsureStarted — setup wizard","description":"The \"ensureStarted\" operation on setup wizard.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}}}},"/setup-wizard/complete-milestone":{"post":{"operationId":"setupWizard.completeMilestone","tags":["SetupWizard"],"summary":"CompleteMilestone — setup wizard","description":"The \"completeMilestone\" operation on setup wizard.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"key":{"type":"string","enum":["coach","memberships","members","classes","payments","website"]}},"required":["key"]}}}}}},"/setup-wizard/skip-milestone":{"post":{"operationId":"setupWizard.skipMilestone","tags":["SetupWizard"],"summary":"SkipMilestone — setup wizard","description":"The \"skipMilestone\" operation on setup wizard.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"key":{"type":"string","enum":["coach","memberships","members","classes","payments","website"]}},"required":["key"]}}}}}},"/setup-wizard/dismiss":{"post":{"operationId":"setupWizard.dismiss","tags":["SetupWizard"],"summary":"Dismiss — setup wizard","description":"The \"dismiss\" operation on setup wizard.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}}}},"/setup-wizard/reopen":{"post":{"operationId":"setupWizard.reopen","tags":["SetupWizard"],"summary":"Reopen — setup wizard","description":"The \"reopen\" operation on setup wizard.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}}}},"/setup-wizard/config-status":{"get":{"operationId":"setupWizard.configStatus","tags":["SetupWizard"],"summary":"ConfigStatus — setup wizard","description":"The \"configStatus\" operation on setup wizard.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}}}},"/setup-wizard/list-clone-sources":{"get":{"operationId":"setupWizard.listCloneSources","tags":["SetupWizard"],"summary":"ListCloneSources — setup wizard","description":"The \"listCloneSources\" operation on setup wizard.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}}}},"/setup-wizard/clone-from-space":{"post":{"operationId":"setupWizard.cloneFromSpace","tags":["SetupWizard"],"summary":"CloneFromSpace — setup wizard","description":"The \"cloneFromSpace\" operation on setup wizard.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"sourceOrgId":{"type":"string","minLength":1},"billing":{"type":"boolean"},"team":{"type":"boolean"},"plans":{"type":"boolean"},"classTypes":{"type":"boolean"},"branding":{"type":"boolean"},"automations":{"type":"boolean"}},"required":["sourceOrgId"]}}}}}},"/wearable/upsert-day":{"post":{"operationId":"wearable.upsertDay","tags":["Wearable"],"summary":"UpsertDay — wearable","description":"The \"upsertDay\" operation on wearable.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"memberId":{"type":"string","minLength":1},"date":{"type":"string","pattern":"^\\d{4}-\\d{2}-\\d{2}$"},"source":{"type":"string","minLength":1,"maxLength":60},"sleepMinutes":{"anyOf":[{"type":"integer","minimum":0,"maximum":1440},{"type":"null"}]},"steps":{"anyOf":[{"type":"integer","minimum":0,"maximum":200000},{"type":"null"}]},"restingHr":{"anyOf":[{"type":"integer","minimum":20,"maximum":200},{"type":"null"}]}},"required":["memberId","date","source"]}}}}}},"/wearable/by-member":{"get":{"operationId":"wearable.byMember","tags":["Wearable"],"summary":"ByMember — wearable","description":"The \"byMember\" operation on wearable.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"parameters":[{"name":"memberId","in":"query","required":true,"schema":{"type":"string","minLength":1}},{"name":"limit","in":"query","required":false,"schema":{"default":30,"type":"integer","minimum":1,"maximum":90}}]}},"/wearable/day-for-members":{"get":{"operationId":"wearable.dayForMembers","tags":["Wearable"],"summary":"DayForMembers — wearable","description":"The \"dayForMembers\" operation on wearable.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"parameters":[{"name":"date","in":"query","required":true,"schema":{"type":"string","pattern":"^\\d{4}-\\d{2}-\\d{2}$"}},{"name":"memberIds","in":"query","required":true,"schema":{"maxItems":500,"type":"array","items":{"type":"string","minLength":1}}}]}},"/wearable/mine":{"get":{"operationId":"wearable.mine","tags":["Wearable"],"summary":"Retrieve your wearable","description":"Retrieve the wearable linked to the authenticated caller (self-service).","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"parameters":[{"name":"days","in":"query","required":false,"schema":{"default":14,"type":"integer","minimum":1,"maximum":90}}]}},"/assessments/list-for-member":{"get":{"operationId":"assessments.listForMember","tags":["Assessments"],"summary":"ListForMember — assessments","description":"The \"listForMember\" operation on assessments.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"parameters":[{"name":"memberId","in":"query","required":true,"schema":{"type":"string","minLength":1}}]}},"/assessments/mine":{"get":{"operationId":"assessments.mine","tags":["Assessments"],"summary":"Retrieve your assessment","description":"Retrieve the assessment linked to the authenticated caller (self-service).","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}}}},"/assessments":{"post":{"operationId":"assessments.create","tags":["Assessments"],"summary":"Create a assessment","description":"Create a new assessment in your organization.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object"}}}}}},"/assessments/{id}":{"patch":{"operationId":"assessments.update","tags":["Assessments"],"summary":"Update a assessment","description":"Apply a partial update to an existing assessment by id. Only the fields you send are changed.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object"}}}},"parameters":[{"name":"id","in":"path","required":true,"description":"Unique id of the assessment.","schema":{"type":"string"}}]},"delete":{"operationId":"assessments.delete","tags":["Assessments"],"summary":"Delete a assessment","description":"Permanently delete a assessment by id.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"id":{"type":"string","minLength":1}},"required":["id"]}}}},"parameters":[{"name":"id","in":"path","required":true,"description":"Unique id of the assessment.","schema":{"type":"string"}}]}},"/programming/comments":{"get":{"operationId":"programming.comments","tags":["Programming"],"summary":"Comments — programming","description":"The \"comments\" operation on programming.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"parameters":[{"name":"classId","in":"query","required":false,"schema":{"type":"string","minLength":1}},{"name":"workoutId","in":"query","required":false,"schema":{"type":"string","minLength":1}}]}},"/programming/add-comment":{"post":{"operationId":"programming.addComment","tags":["Programming"],"summary":"AddComment — programming","description":"The \"addComment\" operation on programming.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"classId":{"type":"string","minLength":1},"workoutId":{"type":"string","minLength":1},"body":{"type":"string","minLength":1,"maxLength":4000}},"required":["body"]}}}}}},"/programming/edit-comment":{"post":{"operationId":"programming.editComment","tags":["Programming"],"summary":"EditComment — programming","description":"The \"editComment\" operation on programming.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"id":{"type":"string","minLength":1},"body":{"type":"string","minLength":1,"maxLength":4000}},"required":["id","body"]}}}}}},"/programming/delete-comment":{"post":{"operationId":"programming.deleteComment","tags":["Programming"],"summary":"DeleteComment — programming","description":"The \"deleteComment\" operation on programming.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"id":{"type":"string","minLength":1}},"required":["id"]}}}}}},"/programming/comment-counts":{"get":{"operationId":"programming.commentCounts","tags":["Programming"],"summary":"CommentCounts — programming","description":"The \"commentCounts\" operation on programming.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"parameters":[{"name":"from","in":"query","required":true,"schema":{"type":"string","pattern":"^\\d{4}-\\d{2}-\\d{2}$"}},{"name":"to","in":"query","required":true,"schema":{"type":"string","pattern":"^\\d{4}-\\d{2}-\\d{2}$"}}]}},"/programming/result-counts":{"get":{"operationId":"programming.resultCounts","tags":["Programming"],"summary":"ResultCounts — programming","description":"The \"resultCounts\" operation on programming.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"parameters":[{"name":"from","in":"query","required":true,"schema":{"type":"string","pattern":"^\\d{4}-\\d{2}-\\d{2}$"}},{"name":"to","in":"query","required":true,"schema":{"type":"string","pattern":"^\\d{4}-\\d{2}-\\d{2}$"}}]}},"/programming/gaps":{"get":{"operationId":"programming.gaps","tags":["Programming"],"summary":"Gaps — programming","description":"The \"gaps\" operation on programming.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"parameters":[{"name":"from","in":"query","required":false,"schema":{"type":"string","pattern":"^\\d{4}-\\d{2}-\\d{2}$"}},{"name":"to","in":"query","required":false,"schema":{"type":"string","pattern":"^\\d{4}-\\d{2}-\\d{2}$"}}]}},"/programming/athlete-feed":{"get":{"operationId":"programming.athleteFeed","tags":["Programming"],"summary":"AthleteFeed — programming","description":"The \"athleteFeed\" operation on programming.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"parameters":[{"name":"date","in":"query","required":true,"schema":{"type":"string","pattern":"^\\d{4}-\\d{2}-\\d{2}$"}}]}},"/programming/rubric":{"get":{"operationId":"programming.rubric","tags":["Programming"],"summary":"Rubric — programming","description":"The \"rubric\" operation on programming.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"parameters":[{"name":"weekStart","in":"query","required":true,"schema":{"type":"string","pattern":"^\\d{4}-\\d{2}-\\d{2}$"}}]}},"/programming/history":{"get":{"operationId":"programming.history","tags":["Programming"],"summary":"History — programming","description":"The \"history\" operation on programming.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"parameters":[{"name":"classId","in":"query","required":false,"schema":{"type":"string","minLength":1}},{"name":"workoutId","in":"query","required":false,"schema":{"type":"string","minLength":1}},{"name":"includeWorkout","in":"query","required":false,"schema":{"default":true,"type":"boolean"}},{"name":"limit","in":"query","required":false,"schema":{"default":50,"type":"integer","minimum":1,"maximum":200}}]}},"/programming/versions":{"get":{"operationId":"programming.versions","tags":["Programming"],"summary":"Versions — programming","description":"The \"versions\" operation on programming.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"parameters":[{"name":"workoutId","in":"query","required":true,"schema":{"type":"string","minLength":1}},{"name":"limit","in":"query","required":false,"schema":{"default":10,"type":"integer","minimum":2,"maximum":50}}]}},"/cycles":{"get":{"operationId":"cycles.list","tags":["Cycles"],"summary":"List cycles","description":"List the cycles in your organization. Org-scoped: only records in the authenticated organization are returned.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}}},"post":{"operationId":"cycles.create","tags":["Cycles"],"summary":"Create a cycle","description":"Create a new cycle in your organization.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"name":{"type":"string","minLength":1,"maxLength":120},"startDate":{"type":"string","pattern":"^\\d{4}-\\d{2}-\\d{2}$"},"weeks":{"type":"integer","minimum":1,"maximum":52},"focus":{"anyOf":[{"type":"string","maxLength":500},{"type":"null"}]},"volume":{"anyOf":[{"type":"string","enum":["low","moderate","high"]},{"type":"null"}]},"intensity":{"anyOf":[{"type":"string","enum":["low","moderate","high"]},{"type":"null"}]},"lifestyleNotes":{"anyOf":[{"type":"string","maxLength":2000},{"type":"null"}]},"modality":{"default":"crossfit","type":"string","minLength":1,"maxLength":60}},"required":["name","startDate","weeks"]}}}}}},"/cycles/for-date":{"get":{"operationId":"cycles.forDate","tags":["Cycles"],"summary":"ForDate — cycles","description":"The \"forDate\" operation on cycles.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"parameters":[{"name":"date","in":"query","required":true,"schema":{"type":"string","pattern":"^\\d{4}-\\d{2}-\\d{2}$"}}]}},"/cycles/{id}":{"patch":{"operationId":"cycles.update","tags":["Cycles"],"summary":"Update a cycle","description":"Apply a partial update to an existing cycle by id. Only the fields you send are changed.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"id":{"type":"string","minLength":1},"data":{"type":"object","properties":{"name":{"type":"string","minLength":1,"maxLength":120},"startDate":{"type":"string","pattern":"^\\d{4}-\\d{2}-\\d{2}$"},"weeks":{"type":"integer","minimum":1,"maximum":52},"focus":{"anyOf":[{"type":"string","maxLength":500},{"type":"null"}]},"volume":{"anyOf":[{"type":"string","enum":["low","moderate","high"]},{"type":"null"}]},"intensity":{"anyOf":[{"type":"string","enum":["low","moderate","high"]},{"type":"null"}]},"lifestyleNotes":{"anyOf":[{"type":"string","maxLength":2000},{"type":"null"}]},"modality":{"type":"string","minLength":1,"maxLength":60}}}},"required":["id","data"]}}}},"parameters":[{"name":"id","in":"path","required":true,"description":"Unique id of the cycle.","schema":{"type":"string"}}]}},"/cycles/archive":{"post":{"operationId":"cycles.archive","tags":["Cycles"],"summary":"Archive — cycles","description":"The \"archive\" operation on cycles.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"id":{"type":"string","minLength":1}},"required":["id"]}}}}}},"/cycles/restore":{"post":{"operationId":"cycles.restore","tags":["Cycles"],"summary":"Restore — cycles","description":"The \"restore\" operation on cycles.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"id":{"type":"string","minLength":1}},"required":["id"]}}}}}},"/cycles/list-archived":{"get":{"operationId":"cycles.listArchived","tags":["Cycles"],"summary":"ListArchived — cycles","description":"The \"listArchived\" operation on cycles.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}}}},"/day-markers":{"get":{"operationId":"dayMarkers.list","tags":["DayMarkers"],"summary":"List day markers","description":"List the day markers in your organization. Org-scoped: only records in the authenticated organization are returned.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"parameters":[{"name":"from","in":"query","required":true,"schema":{"type":"string","pattern":"^\\d{4}-\\d{2}-\\d{2}$"}},{"name":"to","in":"query","required":true,"schema":{"type":"string","pattern":"^\\d{4}-\\d{2}-\\d{2}$"}}]}},"/day-markers/set":{"post":{"operationId":"dayMarkers.set","tags":["DayMarkers"],"summary":"Set — day markers","description":"The \"set\" operation on day markers.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"date":{"type":"string","pattern":"^\\d{4}-\\d{2}-\\d{2}$"},"kind":{"type":"string","enum":["rest","recovery","mobility","assessment","competition","deload"]},"note":{"anyOf":[{"type":"string","maxLength":500},{"type":"null"}]}},"required":["date","kind"]}}}}}},"/day-markers/close":{"post":{"operationId":"dayMarkers.close","tags":["DayMarkers"],"summary":"Close — day markers","description":"The \"close\" operation on day markers.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"date":{"type":"string","pattern":"^\\d{4}-\\d{2}-\\d{2}$"},"kind":{"default":"rest","type":"string","enum":["rest","recovery","mobility","assessment","competition","deload"]},"note":{"anyOf":[{"type":"string","maxLength":500},{"type":"null"}]}},"required":["date"]}}}}}},"/day-markers/day-impact":{"get":{"operationId":"dayMarkers.dayImpact","tags":["DayMarkers"],"summary":"DayImpact — day markers","description":"The \"dayImpact\" operation on day markers.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"parameters":[{"name":"date","in":"query","required":true,"schema":{"type":"string","pattern":"^\\d{4}-\\d{2}-\\d{2}$"}}]}},"/day-markers/clear":{"post":{"operationId":"dayMarkers.clear","tags":["DayMarkers"],"summary":"Clear — day markers","description":"The \"clear\" operation on day markers.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"date":{"type":"string","pattern":"^\\d{4}-\\d{2}-\\d{2}$"}},"required":["date"]}}}}}},"/day-nutrition":{"get":{"operationId":"dayNutrition.list","tags":["DayNutrition"],"summary":"List day nutrition","description":"List the day nutrition in your organization. Org-scoped: only records in the authenticated organization are returned.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"parameters":[{"name":"from","in":"query","required":true,"schema":{"type":"string","pattern":"^\\d{4}-\\d{2}-\\d{2}$"}},{"name":"to","in":"query","required":true,"schema":{"type":"string","pattern":"^\\d{4}-\\d{2}-\\d{2}$"}}]}},"/day-nutrition/set":{"post":{"operationId":"dayNutrition.set","tags":["DayNutrition"],"summary":"Set — day nutrition","description":"The \"set\" operation on day nutrition.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"date":{"type":"string","pattern":"^\\d{4}-\\d{2}-\\d{2}$"},"note":{"type":"string","minLength":1,"maxLength":1000}},"required":["date","note"]}}}}}},"/day-nutrition/clear":{"post":{"operationId":"dayNutrition.clear","tags":["DayNutrition"],"summary":"Clear — day nutrition","description":"The \"clear\" operation on day nutrition.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"date":{"type":"string","pattern":"^\\d{4}-\\d{2}-\\d{2}$"}},"required":["date"]}}}}}},"/exercise-coaching":{"get":{"operationId":"exerciseCoaching.list","tags":["ExerciseCoaching"],"summary":"List exercise coaching","description":"List the exercise coaching in your organization. Org-scoped: only records in the authenticated organization are returned.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"parameters":[{"name":"exerciseIds","in":"query","required":false,"schema":{"maxItems":500,"type":"array","items":{"type":"string","minLength":1}}}]}},"/exercise-coaching/set":{"post":{"operationId":"exerciseCoaching.set","tags":["ExerciseCoaching"],"summary":"Set — exercise coaching","description":"The \"set\" operation on exercise coaching.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"exerciseId":{"type":"string","minLength":1},"cues":{"default":[],"maxItems":10,"type":"array","items":{"type":"string","minLength":1,"maxLength":200}},"substitutions":{"default":[],"maxItems":10,"type":"array","items":{"type":"string","minLength":1}},"videoUrl":{"anyOf":[{"type":"string","maxLength":500,"format":"uri"},{"type":"null"}]}},"required":["exerciseId"]}}}}}},"/exercise-coaching/clear":{"post":{"operationId":"exerciseCoaching.clear","tags":["ExerciseCoaching"],"summary":"Clear — exercise coaching","description":"The \"clear\" operation on exercise coaching.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"exerciseId":{"type":"string","minLength":1}},"required":["exerciseId"]}}}}}},"/session-blocks":{"get":{"operationId":"sessionBlocks.list","tags":["SessionBlocks"],"summary":"List session blocks","description":"List the session blocks in your organization. Org-scoped: only records in the authenticated organization are returned.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"parameters":[{"name":"kind","in":"query","required":false,"schema":{"type":"string","enum":["warmup","cooldown"]}}]},"post":{"operationId":"sessionBlocks.create","tags":["SessionBlocks"],"summary":"Create a session block","description":"Create a new session block in your organization.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"kind":{"type":"string","enum":["warmup","cooldown"]},"name":{"type":"string","minLength":1,"maxLength":120},"notes":{"type":"string","minLength":1,"maxLength":2000},"exerciseIds":{"default":[],"maxItems":20,"type":"array","items":{"type":"string","minLength":1}}},"required":["kind","name","notes"]}}}}}},"/session-blocks/{id}":{"patch":{"operationId":"sessionBlocks.update","tags":["SessionBlocks"],"summary":"Update a session block","description":"Apply a partial update to an existing session block by id. Only the fields you send are changed.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"id":{"type":"string","minLength":1},"data":{"type":"object","properties":{"kind":{"type":"string","enum":["warmup","cooldown"]},"name":{"type":"string","minLength":1,"maxLength":120},"notes":{"type":"string","minLength":1,"maxLength":2000},"exerciseIds":{"maxItems":20,"type":"array","items":{"type":"string","minLength":1}}}}},"required":["id","data"]}}}},"parameters":[{"name":"id","in":"path","required":true,"description":"Unique id of the session block.","schema":{"type":"string"}}]}},"/session-blocks/archive":{"post":{"operationId":"sessionBlocks.archive","tags":["SessionBlocks"],"summary":"Archive — session blocks","description":"The \"archive\" operation on session blocks.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"id":{"type":"string","minLength":1}},"required":["id"]}}}}}},"/documents":{"get":{"operationId":"documents.list","tags":["Documents"],"summary":"List documents","description":"List the documents in your organization. Org-scoped: only records in the authenticated organization are returned.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}}},"post":{"operationId":"documents.create","tags":["Documents"],"summary":"Create a document","description":"Create a new document in your organization.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"name":{"type":"string","minLength":1,"maxLength":200},"url":{"type":"string","maxLength":1000,"format":"uri"},"notes":{"anyOf":[{"type":"string","maxLength":1000},{"type":"null"}]},"audience":{"default":"staff","type":"string","enum":["staff","athletes"]}},"required":["name","url"]}}}}}},"/documents/{id}":{"patch":{"operationId":"documents.update","tags":["Documents"],"summary":"Update a document","description":"Apply a partial update to an existing document by id. Only the fields you send are changed.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"id":{"type":"string","minLength":1},"data":{"type":"object","properties":{"name":{"type":"string","minLength":1,"maxLength":200},"url":{"type":"string","maxLength":1000,"format":"uri"},"notes":{"anyOf":[{"type":"string","maxLength":1000},{"type":"null"}]},"audience":{"default":"staff","type":"string","enum":["staff","athletes"]}}}},"required":["id","data"]}}}},"parameters":[{"name":"id","in":"path","required":true,"description":"Unique id of the document.","schema":{"type":"string"}}]}},"/documents/archive":{"post":{"operationId":"documents.archive","tags":["Documents"],"summary":"Archive — documents","description":"The \"archive\" operation on documents.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"id":{"type":"string","minLength":1}},"required":["id"]}}}}}},"/referrals":{"get":{"operationId":"referrals.list","tags":["Referrals"],"summary":"List referrals","description":"List the referrals in your organization. Org-scoped: only records in the authenticated organization are returned.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}}},"post":{"operationId":"referrals.create","tags":["Referrals"],"summary":"Create a referral","description":"Create a new referral in your organization.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"referrerMemberId":{"type":"string","minLength":1},"referredName":{"type":"string","minLength":1,"maxLength":160},"referredEmail":{"type":"string","format":"email","pattern":"^(?!\\.)(?!.*\\.\\.)([A-Za-z0-9_'+\\-\\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\\-]*\\.)+[A-Za-z]{2,}$"},"rewardAmount":{"type":"integer","minimum":0,"maximum":100000}},"required":["referrerMemberId","referredName","referredEmail"]}}}}}},"/referrals/stats":{"get":{"operationId":"referrals.stats","tags":["Referrals"],"summary":"Referral statistics","description":"Aggregated statistics for referrals in your organization.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}}}},"/referrals/update-status":{"post":{"operationId":"referrals.updateStatus","tags":["Referrals"],"summary":"UpdateStatus — referrals","description":"The \"updateStatus\" operation on referrals.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"id":{"type":"string","minLength":1},"status":{"type":"string","enum":["pending","converted","expired"]},"rewardApplied":{"type":"boolean"}},"required":["id","status"]}}}}}},"/referrals/mine":{"get":{"operationId":"referrals.mine","tags":["Referrals"],"summary":"Retrieve your referral","description":"Retrieve the referral linked to the authenticated caller (self-service).","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}}}},"/referrals/generate-my-code":{"post":{"operationId":"referrals.generateMyCode","tags":["Referrals"],"summary":"GenerateMyCode — referrals","description":"The \"generateMyCode\" operation on referrals.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}}}},"/subscriptions/plans":{"get":{"operationId":"subscriptions.plans.list","tags":["Subscriptions"],"summary":"List subscriptions","description":"List the subscriptions in your organization. Org-scoped: only records in the authenticated organization are returned.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"parameters":[{"name":"activeOnly","in":"query","required":false,"schema":{"default":false,"type":"boolean"}},{"name":"spaceId","in":"query","required":false,"schema":{"type":"string","minLength":1}}]},"post":{"operationId":"subscriptions.plans.create","tags":["Subscriptions"],"summary":"Create a subscription","description":"Create a new subscription in your organization.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"name":{"type":"string","minLength":1,"maxLength":200},"type":{"type":"string","enum":["biweekly","monthly","quarterly","semester","annual","session_pack","day_pass","trial"]},"price":{"type":"number","minimum":0},"currency":{"default":"EUR","type":"string","minLength":3,"maxLength":3},"sessionsPerWeek":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"maxSessions":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"allowedClassTypes":{"default":[],"type":"array","items":{"type":"string","minLength":1}},"allowedWeekdays":{"default":[],"maxItems":7,"type":"array","items":{"type":"integer","minimum":1,"maximum":7}},"allowedFromTime":{"default":null,"anyOf":[{"type":"string","pattern":"^([01]\\d|2[0-3]):[0-5]\\d$"},{"type":"null"}]},"allowedUntilTime":{"default":null,"anyOf":[{"type":"string","pattern":"^([01]\\d|2[0-3]):[0-5]\\d$"},{"type":"null"}]},"active":{"default":true,"type":"boolean"},"ivaRateCode":{"default":"normal","type":"string","enum":["normal","intermediate","reduced","exempt"]},"spaceAccessScope":{"type":"string","enum":["all_spaces","specific"]},"spaceIds":{"default":[],"type":"array","items":{"type":"string","minLength":1}}},"required":["name","type","price"]}}}}}},"/subscriptions/plans/{id}":{"patch":{"operationId":"subscriptions.plans.update","tags":["Subscriptions"],"summary":"Update a subscription","description":"Apply a partial update to an existing subscription by id. Only the fields you send are changed.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"id":{"type":"string","minLength":1},"data":{"type":"object","properties":{"name":{"type":"string","minLength":1,"maxLength":200},"type":{"type":"string","enum":["biweekly","monthly","quarterly","semester","annual","session_pack","day_pass","trial"]},"price":{"type":"number","minimum":0},"currency":{"type":"string","minLength":3,"maxLength":3},"sessionsPerWeek":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"maxSessions":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"allowedClassTypes":{"type":"array","items":{"type":"string","minLength":1}},"allowedWeekdays":{"maxItems":7,"type":"array","items":{"type":"integer","minimum":1,"maximum":7}},"allowedFromTime":{"anyOf":[{"type":"string","pattern":"^([01]\\d|2[0-3]):[0-5]\\d$"},{"type":"null"}]},"allowedUntilTime":{"anyOf":[{"type":"string","pattern":"^([01]\\d|2[0-3]):[0-5]\\d$"},{"type":"null"}]},"active":{"type":"boolean"},"ivaRateCode":{"type":"string","enum":["normal","intermediate","reduced","exempt"]}}}},"required":["id","data"]}}}},"parameters":[{"name":"id","in":"path","required":true,"description":"Unique id of the subscription.","schema":{"type":"string"}}]},"delete":{"operationId":"subscriptions.plans.delete","tags":["Subscriptions"],"summary":"Delete a subscription","description":"Permanently delete a subscription by id.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"id":{"type":"string","minLength":1}},"required":["id"]}}}},"parameters":[{"name":"id","in":"path","required":true,"description":"Unique id of the subscription.","schema":{"type":"string"}}]}},"/subscriptions/plans/space-access":{"get":{"operationId":"subscriptions.plans.spaceAccess","tags":["Subscriptions"],"summary":"SpaceAccess — subscriptions","description":"The \"spaceAccess\" operation on subscriptions.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"parameters":[{"name":"id","in":"query","required":true,"schema":{"type":"string","minLength":1}}]}},"/subscriptions/plans/set-space-access":{"post":{"operationId":"subscriptions.plans.setSpaceAccess","tags":["Subscriptions"],"summary":"SetSpaceAccess — subscriptions","description":"The \"setSpaceAccess\" operation on subscriptions.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"id":{"type":"string","minLength":1},"scope":{"type":"string","enum":["all_spaces","specific"]},"spaceIds":{"default":[],"type":"array","items":{"type":"string","minLength":1}}},"required":["id","scope"]}}}}}},"/subscriptions":{"get":{"operationId":"subscriptions.list","tags":["Subscriptions"],"summary":"List subscriptions","description":"List the subscriptions in your organization. Org-scoped: only records in the authenticated organization are returned.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"parameters":[{"name":"status","in":"query","required":false,"schema":{"type":"string","enum":["active","paused","cancelled","expired"]}}]},"post":{"operationId":"subscriptions.create","tags":["Subscriptions"],"summary":"Create a subscription","description":"Create a new subscription in your organization.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"memberId":{"type":"string","minLength":1},"planId":{"type":"string","minLength":1},"startDate":{"type":"string","pattern":"^\\d{4}-\\d{2}-\\d{2}$"},"endDate":{"type":"string","pattern":"^\\d{4}-\\d{2}-\\d{2}$"},"status":{"default":"active","type":"string","enum":["active","paused","cancelled","expired"]},"sessionsUsed":{"type":"integer","minimum":0,"maximum":9007199254740991},"nextBillingDate":{"type":"string","pattern":"^\\d{4}-\\d{2}-\\d{2}$"},"replaceActive":{"default":false,"type":"boolean"}},"required":["memberId","planId","startDate"]}}}}}},"/subscriptions/by-member":{"get":{"operationId":"subscriptions.byMember","tags":["Subscriptions"],"summary":"ByMember — subscriptions","description":"The \"byMember\" operation on subscriptions.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"parameters":[{"name":"memberId","in":"query","required":true,"schema":{"type":"string","minLength":1}}]}},"/subscriptions/mine":{"get":{"operationId":"subscriptions.mine","tags":["Subscriptions"],"summary":"Retrieve your subscription","description":"Retrieve the subscription linked to the authenticated caller (self-service).","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}}}},"/shop/products":{"get":{"operationId":"shop.products.list","tags":["Shop"],"summary":"List shop items","description":"List the shop items in your organization. Org-scoped: only records in the authenticated organization are returned.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"parameters":[{"name":"category","in":"query","required":false,"schema":{"type":"string","enum":["apparel","equipment","supplements","accessories"]}},{"name":"activeOnly","in":"query","required":false,"schema":{"default":false,"type":"boolean"}},{"name":"cursor","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}]}},{"name":"limit","in":"query","required":false,"schema":{"default":50,"type":"integer","minimum":1,"maximum":100}}]},"post":{"operationId":"shop.products.create","tags":["Shop"],"summary":"Create a shop item","description":"Create a new shop item in your organization.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"name":{"type":"string","minLength":1,"maxLength":200},"description":{"type":"string","maxLength":2000},"category":{"default":"apparel","type":"string","enum":["apparel","equipment","supplements","accessories"]},"price":{"type":"number","minimum":0,"maximum":1000000},"currency":{"default":"EUR","type":"string","minLength":3,"maxLength":3},"stock":{"default":0,"type":"integer","minimum":0,"maximum":9007199254740991},"active":{"type":"boolean"},"fulfillment":{"default":"external","type":"string","enum":["in_house","external"]},"supplierId":{"type":"string","minLength":1},"sku":{"type":"string","maxLength":60},"style":{"type":"string","maxLength":120},"color":{"type":"string","maxLength":60},"size":{"type":"string","maxLength":60},"branding":{"type":"string","maxLength":200},"ivaRateCode":{"default":"normal","type":"string","enum":["normal","intermediate","reduced","exempt"]}},"required":["name","price"]}}}}}},"/shop/products/{id}":{"get":{"operationId":"shop.products.byId","tags":["Shop"],"summary":"Retrieve a shop item","description":"Retrieve a single shop item by its id. Returns 404 when it does not exist in your organization.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"parameters":[{"name":"id","in":"path","required":true,"description":"Unique id of the shop item.","schema":{"type":"string"}}]},"patch":{"operationId":"shop.products.update","tags":["Shop"],"summary":"Update a shop item","description":"Apply a partial update to an existing shop item by id. Only the fields you send are changed.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"id":{"type":"string","minLength":1},"data":{"type":"object","properties":{"name":{"type":"string","minLength":1,"maxLength":200},"description":{"type":"string","maxLength":2000},"category":{"type":"string","enum":["apparel","equipment","supplements","accessories"]},"price":{"type":"number","minimum":0,"maximum":1000000},"currency":{"type":"string","minLength":3,"maxLength":3},"stock":{"type":"integer","minimum":0,"maximum":9007199254740991},"active":{"type":"boolean"},"fulfillment":{"type":"string","enum":["in_house","external"]},"supplierId":{"type":"string","minLength":1},"sku":{"type":"string","maxLength":60},"style":{"type":"string","maxLength":120},"color":{"type":"string","maxLength":60},"size":{"type":"string","maxLength":60},"branding":{"type":"string","maxLength":200},"ivaRateCode":{"type":"string","enum":["normal","intermediate","reduced","exempt"]}}}},"required":["id","data"]}}}},"parameters":[{"name":"id","in":"path","required":true,"description":"Unique id of the shop item.","schema":{"type":"string"}}]},"delete":{"operationId":"shop.products.delete","tags":["Shop"],"summary":"Delete a shop item","description":"Permanently delete a shop item by id.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"id":{"type":"string","minLength":1}},"required":["id"]}}}},"parameters":[{"name":"id","in":"path","required":true,"description":"Unique id of the shop item.","schema":{"type":"string"}}]}},"/shop/products/browse":{"get":{"operationId":"shop.products.browse","tags":["Shop"],"summary":"Browse — shop items","description":"The \"browse\" operation on shop items.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"parameters":[{"name":"category","in":"query","required":false,"schema":{"type":"string","enum":["apparel","equipment","supplements","accessories"]}}]}},"/shop/products/archive":{"post":{"operationId":"shop.products.archive","tags":["Shop"],"summary":"Archive — shop items","description":"The \"archive\" operation on shop items.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"id":{"type":"string","minLength":1}},"required":["id"]}}}}}},"/shop/suppliers":{"get":{"operationId":"shop.suppliers.list","tags":["Shop"],"summary":"List shop items","description":"List the shop items in your organization. Org-scoped: only records in the authenticated organization are returned.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}}},"post":{"operationId":"shop.suppliers.create","tags":["Shop"],"summary":"Create a shop item","description":"Create a new shop item in your organization.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"name":{"type":"string","minLength":1,"maxLength":200},"region":{"default":"china","type":"string","enum":["china","portugal","europe"]},"status":{"default":"active","type":"string","enum":["active","paused"]},"contact":{"type":"string","maxLength":200},"leadTimeDays":{"type":"integer","minimum":0,"maximum":365},"notes":{"type":"string","maxLength":2000}},"required":["name"]}}}}}},"/shop/suppliers/{id}":{"patch":{"operationId":"shop.suppliers.update","tags":["Shop"],"summary":"Update a shop item","description":"Apply a partial update to an existing shop item by id. Only the fields you send are changed.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"id":{"type":"string","minLength":1},"data":{"type":"object","properties":{"name":{"type":"string","minLength":1,"maxLength":200},"region":{"type":"string","enum":["china","portugal","europe"]},"status":{"type":"string","enum":["active","paused"]},"contact":{"type":"string","maxLength":200},"leadTimeDays":{"type":"integer","minimum":0,"maximum":365},"notes":{"type":"string","maxLength":2000}}}},"required":["id","data"]}}}},"parameters":[{"name":"id","in":"path","required":true,"description":"Unique id of the shop item.","schema":{"type":"string"}}]}},"/shop/orders":{"get":{"operationId":"shop.orders.list","tags":["Shop"],"summary":"List shop items","description":"List the shop items in your organization. Org-scoped: only records in the authenticated organization are returned.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"parameters":[{"name":"status","in":"query","required":false,"schema":{"type":"string","enum":["draft","placed","in_production","shipped","delivered","cancelled"]}},{"name":"cursor","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}]}},{"name":"limit","in":"query","required":false,"schema":{"default":50,"type":"integer","minimum":1,"maximum":100}}]},"post":{"operationId":"shop.orders.create","tags":["Shop"],"summary":"Create a shop item","description":"Create a new shop item in your organization.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"productId":{"type":"string","minLength":1},"quantity":{"default":1,"type":"integer","minimum":1,"maximum":100000},"memberId":{"type":"string","minLength":1}},"required":["productId"]}}}}}},"/shop/orders/{id}":{"get":{"operationId":"shop.orders.byId","tags":["Shop"],"summary":"Retrieve a shop item","description":"Retrieve a single shop item by its id. Returns 404 when it does not exist in your organization.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"parameters":[{"name":"id","in":"path","required":true,"description":"Unique id of the shop item.","schema":{"type":"string"}}]}},"/shop/orders/update-status":{"post":{"operationId":"shop.orders.updateStatus","tags":["Shop"],"summary":"UpdateStatus — shop items","description":"The \"updateStatus\" operation on shop items.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"id":{"type":"string","minLength":1},"status":{"type":"string","enum":["draft","placed","in_production","shipped","delivered","cancelled"]},"trackingCode":{"type":"string","maxLength":120}},"required":["id","status"]}}}}}},"/shop/sales":{"get":{"operationId":"shop.sales.list","tags":["Shop"],"summary":"List shop items","description":"List the shop items in your organization. Org-scoped: only records in the authenticated organization are returned.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"parameters":[{"name":"status","in":"query","required":false,"schema":{"type":"string","enum":["pending","completed","refunded"]}},{"name":"cursor","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}]}},{"name":"limit","in":"query","required":false,"schema":{"default":50,"type":"integer","minimum":1,"maximum":100}}]},"post":{"operationId":"shop.sales.create","tags":["Shop"],"summary":"Create a shop item","description":"Create a new shop item in your organization.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"customerName":{"type":"string","minLength":1,"maxLength":200},"memberId":{"type":"string","minLength":1},"items":{"minItems":1,"type":"array","items":{"type":"object","properties":{"productId":{"type":"string","minLength":1},"productName":{"type":"string","minLength":1,"maxLength":200},"qty":{"type":"integer","minimum":1,"maximum":10000},"unitPrice":{"type":"number","minimum":0}},"required":["productName","qty"]}},"total":{"type":"number","minimum":0,"maximum":1000000},"paymentMethod":{"default":"card","type":"string","enum":["cash","card","mbway","transfer","gift","credit"]},"status":{"default":"completed","type":"string","enum":["pending","completed","refunded"]},"giftReason":{"type":"string","minLength":1,"maxLength":300}},"required":["customerName","items"]}}}}}},"/shop/sales/update-status":{"post":{"operationId":"shop.sales.updateStatus","tags":["Shop"],"summary":"UpdateStatus — shop items","description":"The \"updateStatus\" operation on shop items.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"id":{"type":"string","minLength":1},"status":{"type":"string","enum":["pending","completed","refunded"]}},"required":["id","status"]}}}}}},"/shop/stock/movements":{"get":{"operationId":"shop.stock.movements","tags":["Shop"],"summary":"Movements — shop items","description":"The \"movements\" operation on shop items.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"parameters":[{"name":"productId","in":"query","required":false,"schema":{"type":"string","minLength":1}},{"name":"kind","in":"query","required":false,"schema":{"type":"string","enum":["in","sale","adjustment","count"]}},{"name":"limit","in":"query","required":false,"schema":{"default":100,"type":"integer","minimum":1,"maximum":200}}]}},"/shop/stock/receive":{"post":{"operationId":"shop.stock.receive","tags":["Shop"],"summary":"Receive — shop items","description":"The \"receive\" operation on shop items.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"productId":{"type":"string","minLength":1},"quantity":{"type":"integer","minimum":1,"maximum":100000},"reason":{"type":"string","minLength":1,"maxLength":300}},"required":["productId","quantity"]}}}}}},"/shop/stock/count":{"post":{"operationId":"shop.stock.count","tags":["Shop"],"summary":"Count — shop items","description":"The \"count\" operation on shop items.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"productId":{"type":"string","minLength":1},"countedQty":{"type":"integer","minimum":0,"maximum":1000000},"reason":{"type":"string","minLength":1,"maxLength":300}},"required":["productId","countedQty"]}}}}}},"/shop/stock/adjust":{"post":{"operationId":"shop.stock.adjust","tags":["Shop"],"summary":"Adjust — shop items","description":"The \"adjust\" operation on shop items.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"productId":{"type":"string","minLength":1},"delta":{"type":"integer","minimum":-1000000,"maximum":1000000},"reason":{"type":"string","minLength":1,"maxLength":300}},"required":["productId","delta","reason"]}}}}}},"/shop/stock/reconcile":{"get":{"operationId":"shop.stock.reconcile","tags":["Shop"],"summary":"Reconcile — shop items","description":"The \"reconcile\" operation on shop items.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}}}},"/vouchers":{"get":{"operationId":"vouchers.list","tags":["Vouchers"],"summary":"List vouchers","description":"List the vouchers in your organization. Org-scoped: only records in the authenticated organization are returned.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"parameters":[{"name":"activeOnly","in":"query","required":false,"schema":{"default":false,"type":"boolean"}},{"name":"kind","in":"query","required":false,"schema":{"type":"string","enum":["money","classes"]}}]},"post":{"operationId":"vouchers.create","tags":["Vouchers"],"summary":"Create a voucher","description":"Create a new voucher in your organization.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object"}}}}}},"/vouchers/redemptions":{"get":{"operationId":"vouchers.redemptions","tags":["Vouchers"],"summary":"Redemptions — vouchers","description":"The \"redemptions\" operation on vouchers.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"parameters":[{"name":"voucherId","in":"query","required":true,"schema":{"type":"string","minLength":1}}]}},"/vouchers/redeem":{"post":{"operationId":"vouchers.redeem","tags":["Vouchers"],"summary":"Redeem — vouchers","description":"The \"redeem\" operation on vouchers.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"id":{"type":"string","minLength":1},"units":{"type":"integer","minimum":1,"maximum":1000000},"redeemedByMemberId":{"type":"string","minLength":1},"note":{"type":"string","maxLength":300}},"required":["id"]}}}}}},"/vouchers/void":{"post":{"operationId":"vouchers.void","tags":["Vouchers"],"summary":"Void — vouchers","description":"The \"void\" operation on vouchers.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"id":{"type":"string","minLength":1}},"required":["id"]}}}}}},"/vouchers/reconcile":{"get":{"operationId":"vouchers.reconcile","tags":["Vouchers"],"summary":"Reconcile — vouchers","description":"The \"reconcile\" operation on vouchers.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}}}},"/vouchers/{id}":{"delete":{"operationId":"vouchers.delete","tags":["Vouchers"],"summary":"Delete a voucher","description":"Permanently delete a voucher by id.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"id":{"type":"string","minLength":1}},"required":["id"]}}}},"parameters":[{"name":"id","in":"path","required":true,"description":"Unique id of the voucher.","schema":{"type":"string"}}]}},"/org-settings/terminology":{"get":{"operationId":"orgSettings.terminology","tags":["OrgSettings"],"summary":"Terminology — organization settings","description":"The \"terminology\" operation on organization settings.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}}}},"/org-settings/athlete-surface":{"get":{"operationId":"orgSettings.athleteSurface","tags":["OrgSettings"],"summary":"AthleteSurface — organization settings","description":"The \"athleteSurface\" operation on organization settings.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}}}},"/org-settings/{id}":{"get":{"operationId":"orgSettings.get","tags":["OrgSettings"],"summary":"Retrieve a organization setting","description":"Retrieve a single organization setting by its id. Returns 404 when it does not exist in your organization.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"parameters":[{"name":"id","in":"path","required":true,"description":"Unique id of the organization setting.","schema":{"type":"string"}}]},"patch":{"operationId":"orgSettings.update","tags":["OrgSettings"],"summary":"Update a organization setting","description":"Apply a partial update to an existing organization setting by id. Only the fields you send are changed.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object"}}}},"parameters":[{"name":"id","in":"path","required":true,"description":"Unique id of the organization setting.","schema":{"type":"string"}}]}},"/orgs/{id}":{"delete":{"operationId":"orgs.delete","tags":["Orgs"],"summary":"Delete a org","description":"Permanently delete a org by id.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"parameters":[{"name":"id","in":"path","required":true,"description":"Unique id of the org.","schema":{"type":"string"}}]}},"/payments":{"get":{"operationId":"payments.list","tags":["Payments"],"summary":"List payments","description":"List the payments in your organization. Org-scoped: only records in the authenticated organization are returned.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"parameters":[{"name":"status","in":"query","required":false,"schema":{"type":"string","enum":["paid","pending","failed","overdue","refunded"]}},{"name":"memberId","in":"query","required":false,"schema":{"type":"string","minLength":1}},{"name":"category","in":"query","required":false,"schema":{"type":"string","enum":["memberships","services","products","unclassified"]}},{"name":"subcategory","in":"query","required":false,"schema":{"type":"string","minLength":1,"maxLength":120}},{"name":"limit","in":"query","required":false,"schema":{"default":200,"type":"integer","minimum":1,"maximum":500}}]},"post":{"operationId":"payments.create","tags":["Payments"],"summary":"Create a payment","description":"Create a new payment in your organization.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"memberId":{"type":"string","minLength":1},"planId":{"type":"string","minLength":1},"amount":{"type":"number","minimum":0},"currency":{"default":"EUR","type":"string","minLength":3,"maxLength":3},"method":{"type":"string","enum":["mbway","multibanco","sepa","card","cash","transfer","credit","other"]},"status":{"default":"pending","type":"string","enum":["paid","pending","failed","overdue","refunded"]},"reference":{"type":"string","maxLength":60},"dueDate":{"type":"string"},"coachId":{"type":"string","minLength":1},"category":{"anyOf":[{"type":"string","enum":["memberships","services","products"]},{"type":"null"}]},"subcategory":{"anyOf":[{"type":"string","maxLength":120},{"type":"null"}]}},"required":["memberId","amount","method"]}}}}}},"/payments/by-member":{"get":{"operationId":"payments.byMember","tags":["Payments"],"summary":"ByMember — payments","description":"The \"byMember\" operation on payments.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"parameters":[{"name":"memberId","in":"query","required":true,"schema":{"type":"string","minLength":1}}]}},"/payments/stats":{"get":{"operationId":"payments.stats","tags":["Payments"],"summary":"Payment statistics","description":"Aggregated statistics for payments in your organization.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"parameters":[{"name":"spaceId","in":"query","required":false,"schema":{"type":"string"}}]}},"/payments/metrics":{"get":{"operationId":"payments.metrics","tags":["Payments"],"summary":"Metrics — payments","description":"The \"metrics\" operation on payments.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"parameters":[{"name":"spaceId","in":"query","required":false,"schema":{"type":"string"}}]}},"/payments/member-ltv":{"get":{"operationId":"payments.memberLtv","tags":["Payments"],"summary":"MemberLtv — payments","description":"The \"memberLtv\" operation on payments.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"parameters":[{"name":"spaceId","in":"query","required":false,"schema":{"type":"string"}}]}},"/payments/attribute-coach":{"post":{"operationId":"payments.attributeCoach","tags":["Payments"],"summary":"AttributeCoach — payments","description":"The \"attributeCoach\" operation on payments.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"id":{"type":"string","minLength":1},"coachId":{"anyOf":[{"type":"string","minLength":1},{"type":"null"}]}},"required":["id","coachId"]}}}}}},"/payments/categorize":{"post":{"operationId":"payments.categorize","tags":["Payments"],"summary":"Categorize — payments","description":"The \"categorize\" operation on payments.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"id":{"type":"string","minLength":1},"category":{"anyOf":[{"type":"string","enum":["memberships","services","products"]},{"type":"null"}]},"subcategory":{"anyOf":[{"type":"string","maxLength":120},{"type":"null"}]}},"required":["id","category"]}}}}}},"/payments/mark-paid":{"post":{"operationId":"payments.markPaid","tags":["Payments"],"summary":"MarkPaid — payments","description":"The \"markPaid\" operation on payments.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"id":{"type":"string","minLength":1}},"required":["id"]}}}}}},"/payments/refund":{"post":{"operationId":"payments.refund","tags":["Payments"],"summary":"Refund — payments","description":"The \"refund\" operation on payments.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"id":{"type":"string","minLength":1},"amount":{"type":"number","exclusiveMinimum":0,"maximum":10000000},"reason":{"type":"string","minLength":3,"maxLength":300},"toCredit":{"type":"boolean"}},"required":["id"]}}}}}},"/payments/initiate-charge":{"post":{"operationId":"payments.initiateCharge","tags":["Payments"],"summary":"InitiateCharge — payments","description":"The \"initiateCharge\" operation on payments.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"paymentId":{"type":"string","minLength":1},"method":{"type":"string","enum":["mbway","multibanco"]},"phone":{"type":"string","minLength":1,"maxLength":20}},"required":["paymentId","method"]}}}}}},"/payments/send-reminder":{"post":{"operationId":"payments.sendReminder","tags":["Payments"],"summary":"SendReminder — payments","description":"The \"sendReminder\" operation on payments.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"paymentId":{"type":"string","minLength":1}},"required":["paymentId"]}}}}}},"/payments/charge-status":{"post":{"operationId":"payments.chargeStatus","tags":["Payments"],"summary":"ChargeStatus — payments","description":"The \"chargeStatus\" operation on payments.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"paymentId":{"type":"string","minLength":1}},"required":["paymentId"]}}}}}},"/payments/pay-mine":{"post":{"operationId":"payments.payMine","tags":["Payments"],"summary":"PayMine — payments","description":"The \"payMine\" operation on payments.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"paymentId":{"type":"string","minLength":1},"method":{"type":"string","enum":["mbway","multibanco"]},"phone":{"type":"string","minLength":1,"maxLength":20}},"required":["paymentId","method"]}}}}}},"/budget":{"get":{"operationId":"budget.list","tags":["Budget"],"summary":"List budget","description":"List the budget in your organization. Org-scoped: only records in the authenticated organization are returned.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"parameters":[{"name":"month","in":"query","required":true,"schema":{"type":"string","pattern":"^\\d{4}-(0[1-9]|1[0-2])$"}},{"name":"spaceId","in":"query","required":false,"schema":{"type":"string","minLength":1}}]}},"/budget/upsert":{"post":{"operationId":"budget.upsert","tags":["Budget"],"summary":"Upsert — budget","description":"The \"upsert\" operation on budget.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"month":{"type":"string","pattern":"^\\d{4}-(0[1-9]|1[0-2])$"},"spaceId":{"type":"string","minLength":1},"category":{"type":"string","enum":["Fixed","Variable","Tax"]},"subcategory":{"type":"string","minLength":1,"maxLength":120},"limitCents":{"type":"integer","minimum":0,"maximum":100000000}},"required":["month","category","subcategory","limitCents"]}}}}}},"/budget/remove":{"post":{"operationId":"budget.remove","tags":["Budget"],"summary":"Remove — budget","description":"The \"remove\" operation on budget.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"id":{"type":"string","minLength":1}},"required":["id"]}}}}}},"/budget/copy-month":{"post":{"operationId":"budget.copyMonth","tags":["Budget"],"summary":"CopyMonth — budget","description":"The \"copyMonth\" operation on budget.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"from":{"type":"string","pattern":"^\\d{4}-(0[1-9]|1[0-2])$"},"to":{"type":"string","pattern":"^\\d{4}-(0[1-9]|1[0-2])$"},"spaceId":{"type":"string","minLength":1}},"required":["from","to"]}}}}}},"/equipment":{"get":{"operationId":"equipment.list","tags":["Equipment"],"summary":"List equipment","description":"List the equipment in your organization. Org-scoped: only records in the authenticated organization are returned.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}}},"post":{"operationId":"equipment.create","tags":["Equipment"],"summary":"Create a equipment item","description":"Create a new equipment item in your organization.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object"}}}}}},"/equipment/{id}":{"patch":{"operationId":"equipment.update","tags":["Equipment"],"summary":"Update a equipment item","description":"Apply a partial update to an existing equipment item by id. Only the fields you send are changed.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object"}}}},"parameters":[{"name":"id","in":"path","required":true,"description":"Unique id of the equipment item.","schema":{"type":"string"}}]},"delete":{"operationId":"equipment.delete","tags":["Equipment"],"summary":"Delete a equipment item","description":"Permanently delete a equipment item by id.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"id":{"type":"string","minLength":1}},"required":["id"]}}}},"parameters":[{"name":"id","in":"path","required":true,"description":"Unique id of the equipment item.","schema":{"type":"string"}}]}},"/equipment/due-maintenance":{"get":{"operationId":"equipment.dueMaintenance","tags":["Equipment"],"summary":"DueMaintenance — equipment","description":"The \"dueMaintenance\" operation on equipment.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}}}},"/equipment/low-stock":{"get":{"operationId":"equipment.lowStock","tags":["Equipment"],"summary":"LowStock — equipment","description":"The \"lowStock\" operation on equipment.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}}}},"/equipment/movements":{"get":{"operationId":"equipment.movements.list","tags":["Equipment"],"summary":"List equipment","description":"List the equipment in your organization. Org-scoped: only records in the authenticated organization are returned.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"parameters":[{"name":"equipmentId","in":"query","required":false,"schema":{"type":"string","minLength":1}},{"name":"kind","in":"query","required":false,"schema":{"type":"string","enum":["in","write_off","adjustment","count"]}},{"name":"limit","in":"query","required":false,"schema":{"default":100,"type":"integer","minimum":1,"maximum":200}}]}},"/equipment/movements/receive":{"post":{"operationId":"equipment.movements.receive","tags":["Equipment"],"summary":"Receive — equipment","description":"The \"receive\" operation on equipment.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"equipmentId":{"type":"string","minLength":1},"quantity":{"type":"integer","minimum":1,"maximum":100000},"reason":{"type":"string","minLength":1,"maxLength":300}},"required":["equipmentId","quantity"]}}}}}},"/equipment/movements/count":{"post":{"operationId":"equipment.movements.count","tags":["Equipment"],"summary":"Count — equipment","description":"The \"count\" operation on equipment.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"equipmentId":{"type":"string","minLength":1},"countedQty":{"type":"integer","minimum":0,"maximum":100000},"reason":{"type":"string","minLength":1,"maxLength":300}},"required":["equipmentId","countedQty"]}}}}}},"/equipment/movements/write-off":{"post":{"operationId":"equipment.movements.writeOff","tags":["Equipment"],"summary":"WriteOff — equipment","description":"The \"writeOff\" operation on equipment.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"equipmentId":{"type":"string","minLength":1},"quantity":{"type":"integer","minimum":1,"maximum":100000},"reason":{"type":"string","minLength":1,"maxLength":300}},"required":["equipmentId","quantity","reason"]}}}}}},"/equipment/movements/adjust":{"post":{"operationId":"equipment.movements.adjust","tags":["Equipment"],"summary":"Adjust — equipment","description":"The \"adjust\" operation on equipment.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"equipmentId":{"type":"string","minLength":1},"delta":{"type":"integer","minimum":-100000,"maximum":100000},"reason":{"type":"string","minLength":1,"maxLength":300}},"required":["equipmentId","delta","reason"]}}}}}},"/equipment/reconcile":{"get":{"operationId":"equipment.reconcile","tags":["Equipment"],"summary":"Reconcile — equipment","description":"The \"reconcile\" operation on equipment.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}}}},"/equipment/maintenance":{"get":{"operationId":"equipment.maintenance.list","tags":["Equipment"],"summary":"List equipment","description":"List the equipment in your organization. Org-scoped: only records in the authenticated organization are returned.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"parameters":[{"name":"equipmentId","in":"query","required":false,"schema":{"type":"string","minLength":1}},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","minimum":1,"maximum":200}}]}},"/equipment/maintenance/add":{"post":{"operationId":"equipment.maintenance.add","tags":["Equipment"],"summary":"Add — equipment","description":"The \"add\" operation on equipment.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"equipmentId":{"type":"string","minLength":1},"date":{"type":"string"},"type":{"type":"string","minLength":1,"maxLength":300},"cost":{"anyOf":[{"type":"number","minimum":0,"maximum":1000000},{"type":"null"}]},"notes":{"anyOf":[{"type":"string","maxLength":2000},{"type":"null"}]},"doneBy":{"anyOf":[{"type":"string","maxLength":200},{"type":"null"}]}},"required":["equipmentId","date","type"]}}}}}},"/equipment/maintenance/{id}":{"delete":{"operationId":"equipment.maintenance.delete","tags":["Equipment"],"summary":"Delete a equipment item","description":"Permanently delete a equipment item by id.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"id":{"type":"string","minLength":1}},"required":["id"]}}}},"parameters":[{"name":"id","in":"path","required":true,"description":"Unique id of the equipment item.","schema":{"type":"string"}}]}},"/events":{"get":{"operationId":"events.list","tags":["Events"],"summary":"List events","description":"List the events in your organization. Org-scoped: only records in the authenticated organization are returned.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}}},"post":{"operationId":"events.create","tags":["Events"],"summary":"Create a event","description":"Create a new event in your organization.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"kind":{"type":"string","enum":["race","meet","competition","challenge"]},"name":{"type":"string","minLength":1,"maxLength":200},"description":{"type":"string","maxLength":2000},"date":{"type":"string","pattern":"^\\d{4}-\\d{2}-\\d{2}$"},"startTime":{"type":"string","pattern":"^\\d{2}:\\d{2}$"},"spaceId":{"type":"string","minLength":1},"divisions":{"default":[],"maxItems":50,"type":"array","items":{"type":"string","minLength":1,"maxLength":60}},"capacity":{"type":"integer","minimum":1,"maximum":9007199254740991},"feeCents":{"type":"integer","minimum":0,"maximum":9007199254740991},"ivaRateCode":{"type":"string","enum":["normal","intermediate","reduced","exempt"]},"questionnaireId":{"anyOf":[{"type":"string","minLength":1},{"type":"null"}]}},"required":["kind","name","date"]}}}}}},"/events/{id}":{"get":{"operationId":"events.byId","tags":["Events"],"summary":"Retrieve a event","description":"Retrieve a single event by its id. Returns 404 when it does not exist in your organization.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"parameters":[{"name":"id","in":"path","required":true,"description":"Unique id of the event.","schema":{"type":"string"}}]},"patch":{"operationId":"events.update","tags":["Events"],"summary":"Update a event","description":"Apply a partial update to an existing event by id. Only the fields you send are changed.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"id":{"type":"string","minLength":1},"data":{"type":"object","properties":{"kind":{"type":"string","enum":["race","meet","competition","challenge"]},"name":{"type":"string","minLength":1,"maxLength":200},"description":{"type":"string","maxLength":2000},"date":{"type":"string","pattern":"^\\d{4}-\\d{2}-\\d{2}$"},"startTime":{"type":"string","pattern":"^\\d{2}:\\d{2}$"},"spaceId":{"type":"string","minLength":1},"divisions":{"maxItems":50,"type":"array","items":{"type":"string","minLength":1,"maxLength":60}},"capacity":{"type":"integer","minimum":1,"maximum":9007199254740991},"feeCents":{"type":"integer","minimum":0,"maximum":9007199254740991},"ivaRateCode":{"type":"string","enum":["normal","intermediate","reduced","exempt"]},"questionnaireId":{"anyOf":[{"type":"string","minLength":1},{"type":"null"}]}}}},"required":["id","data"]}}}},"parameters":[{"name":"id","in":"path","required":true,"description":"Unique id of the event.","schema":{"type":"string"}}]}},"/events/publish":{"post":{"operationId":"events.publish","tags":["Events"],"summary":"Publish — events","description":"The \"publish\" operation on events.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"id":{"type":"string","minLength":1}},"required":["id"]}}}}}},"/events/registrations":{"get":{"operationId":"events.registrations.list","tags":["Events"],"summary":"List events","description":"List the events in your organization. Org-scoped: only records in the authenticated organization are returned.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"parameters":[{"name":"eventId","in":"query","required":true,"schema":{"type":"string","minLength":1}}]}},"/events/registrations/register":{"post":{"operationId":"events.registrations.register","tags":["Events"],"summary":"Register — events","description":"The \"register\" operation on events.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"eventId":{"type":"string","minLength":1},"memberId":{"type":"string","minLength":1},"division":{"type":"string","minLength":1,"maxLength":60}},"required":["eventId","memberId"]}}}}}},"/events/registrations/withdraw":{"post":{"operationId":"events.registrations.withdraw","tags":["Events"],"summary":"Withdraw — events","description":"The \"withdraw\" operation on events.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"eventId":{"type":"string","minLength":1},"memberId":{"type":"string","minLength":1}},"required":["eventId","memberId"]}}}}}},"/events/registrations/check-in":{"post":{"operationId":"events.registrations.checkIn","tags":["Events"],"summary":"CheckIn — events","description":"The \"checkIn\" operation on events.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"id":{"type":"string","minLength":1}},"required":["id"]}}}}}},"/fiscal/branding":{"get":{"operationId":"fiscal.branding","tags":["Fiscal"],"summary":"Branding — fiscal documents","description":"The \"branding\" operation on fiscal documents.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"parameters":[{"name":"documentId","in":"query","required":false,"schema":{"type":"string","minLength":1}}]}},"/fiscal/entities":{"get":{"operationId":"fiscal.entities.list","tags":["Fiscal"],"summary":"List fiscal documents","description":"List the fiscal documents in your organization. Org-scoped: only records in the authenticated organization are returned.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}}}},"/fiscal/entities/set":{"post":{"operationId":"fiscal.entities.set","tags":["Fiscal"],"summary":"Set — fiscal documents","description":"The \"set\" operation on fiscal documents.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object"}}}}}},"/fiscal/entities/deactivate":{"post":{"operationId":"fiscal.entities.deactivate","tags":["Fiscal"],"summary":"Deactivate — fiscal documents","description":"The \"deactivate\" operation on fiscal documents.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"spaceId":{"type":"string","minLength":1}},"required":["spaceId"]}}}}}},"/fiscal/provider/catalog":{"get":{"operationId":"fiscal.provider.catalog","tags":["Fiscal"],"summary":"Catalog — fiscal documents","description":"The \"catalog\" operation on fiscal documents.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}}}},"/fiscal/provider/{id}":{"get":{"operationId":"fiscal.provider.get","tags":["Fiscal"],"summary":"Retrieve a fiscal document","description":"Retrieve a single fiscal document by its id. Returns 404 when it does not exist in your organization.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"parameters":[{"name":"id","in":"path","required":true,"description":"Unique id of the fiscal document.","schema":{"type":"string"}},{"name":"spaceId","in":"query","required":true,"schema":{"type":"string","minLength":1}}]}},"/fiscal/provider/set":{"post":{"operationId":"fiscal.provider.set","tags":["Fiscal"],"summary":"Set — fiscal documents","description":"The \"set\" operation on fiscal documents.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"spaceId":{"type":"string","minLength":1},"provider":{"type":"string","enum":["local","moloni","vendus"]},"credentials":{"default":{},"type":"object","propertyNames":{"type":"string"},"additionalProperties":{"type":"string"}}},"required":["spaceId","provider"]}}}}}},"/fiscal/provider/test":{"post":{"operationId":"fiscal.provider.test","tags":["Fiscal"],"summary":"Test — fiscal documents","description":"The \"test\" operation on fiscal documents.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"spaceId":{"type":"string","minLength":1}},"required":["spaceId"]}}}}}},"/fiscal/series":{"get":{"operationId":"fiscal.series.list","tags":["Fiscal"],"summary":"List fiscal documents","description":"List the fiscal documents in your organization. Org-scoped: only records in the authenticated organization are returned.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}}},"post":{"operationId":"fiscal.series.create","tags":["Fiscal"],"summary":"Create a fiscal document","description":"Create a new fiscal document in your organization.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"documentType":{"type":"string","enum":["invoice","invoice_receipt","receipt","credit_note","debit_note"]},"code":{"type":"string","minLength":1,"maxLength":60},"year":{"type":"integer","minimum":2000,"maximum":2100},"startNumber":{"default":1,"type":"integer","minimum":1,"maximum":1000000},"issuerSpaceId":{"default":null,"anyOf":[{"type":"string","minLength":1},{"type":"null"}]}},"required":["documentType","code","year"]}}}}}},"/fiscal/series/register":{"post":{"operationId":"fiscal.series.register","tags":["Fiscal"],"summary":"Register — fiscal documents","description":"The \"register\" operation on fiscal documents.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"id":{"type":"string","minLength":1},"validationCode":{"type":"string","pattern":"^[A-Z0-9]{4,16}$"}},"required":["id","validationCode"]}}}}}},"/fiscal/documents":{"get":{"operationId":"fiscal.documents.list","tags":["Fiscal"],"summary":"List fiscal documents","description":"List the fiscal documents in your organization. Org-scoped: only records in the authenticated organization are returned.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"parameters":[{"name":"status","in":"query","required":false,"schema":{"type":"string","enum":["draft","issued","paid","void"]}},{"name":"memberId","in":"query","required":false,"schema":{"type":"string","minLength":1}},{"name":"seriesId","in":"query","required":false,"schema":{"type":"string","minLength":1}},{"name":"spaceId","in":"query","required":false,"schema":{"type":"string","minLength":1}}]}},"/fiscal/documents/{id}":{"get":{"operationId":"fiscal.documents.get","tags":["Fiscal"],"summary":"Retrieve a fiscal document","description":"Retrieve a single fiscal document by its id. Returns 404 when it does not exist in your organization.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"parameters":[{"name":"id","in":"path","required":true,"description":"Unique id of the fiscal document.","schema":{"type":"string"}}]}},"/fiscal/documents/mine":{"get":{"operationId":"fiscal.documents.mine","tags":["Fiscal"],"summary":"Retrieve your fiscal document","description":"Retrieve the fiscal document linked to the authenticated caller (self-service).","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}}}},"/fiscal/documents/mine-get":{"get":{"operationId":"fiscal.documents.mineGet","tags":["Fiscal"],"summary":"MineGet — fiscal documents","description":"The \"mineGet\" operation on fiscal documents.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"parameters":[{"name":"id","in":"query","required":true,"schema":{"type":"string","minLength":1}}]}},"/fiscal/documents/create-draft":{"post":{"operationId":"fiscal.documents.createDraft","tags":["Fiscal"],"summary":"CreateDraft — fiscal documents","description":"The \"createDraft\" operation on fiscal documents.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"seriesId":{"type":"string","minLength":1},"memberId":{"default":null,"anyOf":[{"type":"string","minLength":1},{"type":"null"}]},"customerName":{"type":"string","minLength":1,"maxLength":200},"customerNif":{"default":null,"anyOf":[{"type":"string","maxLength":20},{"type":"null"}]},"customerAddress":{"default":null,"anyOf":[{"type":"string","maxLength":400},{"type":"null"}]},"customerCountry":{"default":"PT","type":"string","maxLength":2},"ivaRegion":{"type":"string","enum":["PT","PT-AC","PT-MA"]},"dueDate":{"default":null,"anyOf":[{"type":"string","maxLength":10},{"type":"null"}]},"lines":{"minItems":1,"type":"array","items":{"type":"object","properties":{"sourceKind":{"default":"manual","type":"string","enum":["plan","subscription","store_sale","store_product","event","dropin","fee","manual"]},"sourceId":{"default":null,"anyOf":[{"type":"string","minLength":1,"maxLength":120},{"type":"null"}]},"description":{"type":"string","minLength":1,"maxLength":500},"quantity":{"type":"number","exclusiveMinimum":0,"maximum":1000000},"unitPrice":{"type":"number","minimum":0,"maximum":10000000},"discount":{"default":0,"type":"number","minimum":0,"maximum":10000000},"ivaRateCode":{"default":null,"anyOf":[{"type":"string","enum":["normal","intermediate","reduced","exempt"]},{"type":"null"}]},"exemptionReasonCode":{"default":null,"anyOf":[{"type":"string","maxLength":20},{"type":"null"}]},"exemptionReasonText":{"default":null,"anyOf":[{"type":"string","maxLength":300},{"type":"null"}]}},"required":["description","quantity","unitPrice"]}}},"required":["seriesId","customerName","lines"]}}}}}},"/fiscal/documents/update-draft":{"post":{"operationId":"fiscal.documents.updateDraft","tags":["Fiscal"],"summary":"UpdateDraft — fiscal documents","description":"The \"updateDraft\" operation on fiscal documents.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"seriesId":{"type":"string","minLength":1},"memberId":{"anyOf":[{"type":"string","minLength":1},{"type":"null"}]},"customerName":{"type":"string","minLength":1,"maxLength":200},"customerNif":{"anyOf":[{"type":"string","maxLength":20},{"type":"null"}]},"customerAddress":{"anyOf":[{"type":"string","maxLength":400},{"type":"null"}]},"customerCountry":{"type":"string","maxLength":2},"ivaRegion":{"type":"string","enum":["PT","PT-AC","PT-MA"]},"dueDate":{"anyOf":[{"type":"string","maxLength":10},{"type":"null"}]},"lines":{"minItems":1,"type":"array","items":{"type":"object","properties":{"sourceKind":{"default":"manual","type":"string","enum":["plan","subscription","store_sale","store_product","event","dropin","fee","manual"]},"sourceId":{"default":null,"anyOf":[{"type":"string","minLength":1,"maxLength":120},{"type":"null"}]},"description":{"type":"string","minLength":1,"maxLength":500},"quantity":{"type":"number","exclusiveMinimum":0,"maximum":1000000},"unitPrice":{"type":"number","minimum":0,"maximum":10000000},"discount":{"default":0,"type":"number","minimum":0,"maximum":10000000},"ivaRateCode":{"default":null,"anyOf":[{"type":"string","enum":["normal","intermediate","reduced","exempt"]},{"type":"null"}]},"exemptionReasonCode":{"default":null,"anyOf":[{"type":"string","maxLength":20},{"type":"null"}]},"exemptionReasonText":{"default":null,"anyOf":[{"type":"string","maxLength":300},{"type":"null"}]}},"required":["description","quantity","unitPrice"]}},"id":{"type":"string","minLength":1}},"required":["id"]}}}}}},"/fiscal/documents/delete-draft":{"post":{"operationId":"fiscal.documents.deleteDraft","tags":["Fiscal"],"summary":"DeleteDraft — fiscal documents","description":"The \"deleteDraft\" operation on fiscal documents.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"id":{"type":"string","minLength":1}},"required":["id"]}}}}}},"/fiscal/documents/issue":{"post":{"operationId":"fiscal.documents.issue","tags":["Fiscal"],"summary":"Issue — fiscal documents","description":"The \"issue\" operation on fiscal documents.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"id":{"type":"string","minLength":1}},"required":["id"]}}}}}},"/fiscal/documents/create-credit-note":{"post":{"operationId":"fiscal.documents.createCreditNote","tags":["Fiscal"],"summary":"CreateCreditNote — fiscal documents","description":"The \"createCreditNote\" operation on fiscal documents.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"documentId":{"type":"string","minLength":1},"creditNoteSeriesId":{"type":"string","minLength":1},"reason":{"type":"string","maxLength":300}},"required":["documentId","creditNoteSeriesId"]}}}}}},"/fiscal/documents/void":{"post":{"operationId":"fiscal.documents.void","tags":["Fiscal"],"summary":"Void — fiscal documents","description":"The \"void\" operation on fiscal documents.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"id":{"type":"string","minLength":1}},"required":["id"]}}}}}},"/fiscal/documents/allocate-payment":{"post":{"operationId":"fiscal.documents.allocatePayment","tags":["Fiscal"],"summary":"AllocatePayment — fiscal documents","description":"The \"allocatePayment\" operation on fiscal documents.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"documentId":{"type":"string","minLength":1},"paymentId":{"type":"string","minLength":1},"amount":{"type":"number","exclusiveMinimum":0,"maximum":10000000}},"required":["documentId","paymentId","amount"]}}}}}},"/fiscal/documents/unallocated-payments":{"get":{"operationId":"fiscal.documents.unallocatedPayments","tags":["Fiscal"],"summary":"UnallocatedPayments — fiscal documents","description":"The \"unallocatedPayments\" operation on fiscal documents.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}}}},"/fiscal/sepa/mine":{"get":{"operationId":"fiscal.sepa.mine","tags":["Fiscal"],"summary":"Retrieve your fiscal document","description":"Retrieve the fiscal document linked to the authenticated caller (self-service).","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}}}},"/fiscal/sepa/submit-mine":{"post":{"operationId":"fiscal.sepa.submitMine","tags":["Fiscal"],"summary":"SubmitMine — fiscal documents","description":"The \"submitMine\" operation on fiscal documents.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"iban":{"type":"string"},"bic":{"type":"string","maxLength":11},"accepted":{"type":"boolean","const":true}},"required":["iban","accepted"]}}}}}},"/fiscal/sepa":{"get":{"operationId":"fiscal.sepa.list","tags":["Fiscal"],"summary":"List fiscal documents","description":"List the fiscal documents in your organization. Org-scoped: only records in the authenticated organization are returned.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}}},"post":{"operationId":"fiscal.sepa.create","tags":["Fiscal"],"summary":"Create a fiscal document","description":"Create a new fiscal document in your organization.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"memberId":{"type":"string","minLength":1},"iban":{"type":"string"},"bic":{"type":"string","maxLength":11},"creditorId":{"type":"string","minLength":1,"maxLength":40},"signatureDate":{"type":"string","maxLength":30}},"required":["memberId","iban","creditorId","signatureDate"]}}}}}},"/fiscal/sepa/cancel":{"post":{"operationId":"fiscal.sepa.cancel","tags":["Fiscal"],"summary":"Cancel — fiscal documents","description":"The \"cancel\" operation on fiscal documents.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"id":{"type":"string","minLength":1}},"required":["id"]}}}}}},"/fiscal/sepa/export-batch":{"get":{"operationId":"fiscal.sepa.exportBatch","tags":["Fiscal"],"summary":"ExportBatch — fiscal documents","description":"The \"exportBatch\" operation on fiscal documents.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"parameters":[{"name":"collectionDate","in":"query","required":false,"schema":{"type":"string","pattern":"^\\d{4}-\\d{2}-\\d{2}$"}},{"name":"sequenceType","in":"query","required":false,"schema":{"default":"RCUR","type":"string","enum":["FRST","RCUR","OOFF","FNAL"]}}]}},"/fiscal/sepa/preview-returns":{"post":{"operationId":"fiscal.sepa.previewReturns","tags":["Fiscal"],"summary":"PreviewReturns — fiscal documents","description":"The \"previewReturns\" operation on fiscal documents.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"fileName":{"type":"string","minLength":1,"maxLength":255},"xml":{"type":"string","minLength":1,"maxLength":4000000}},"required":["fileName","xml"]}}}}}},"/fiscal/sepa/import-returns":{"post":{"operationId":"fiscal.sepa.importReturns","tags":["Fiscal"],"summary":"ImportReturns — fiscal documents","description":"The \"importReturns\" operation on fiscal documents.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"fileName":{"type":"string","minLength":1,"maxLength":255},"xml":{"type":"string","minLength":1,"maxLength":4000000}},"required":["fileName","xml"]}}}}}},"/fiscal/sepa/list-returns":{"get":{"operationId":"fiscal.sepa.listReturns","tags":["Fiscal"],"summary":"ListReturns — fiscal documents","description":"The \"listReturns\" operation on fiscal documents.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"parameters":[{"name":"limit","in":"query","required":false,"schema":{"default":50,"type":"integer","minimum":1,"maximum":200}}]}},"/fiscal/saft/issuers":{"get":{"operationId":"fiscal.saft.issuers","tags":["Fiscal"],"summary":"Issuers — fiscal documents","description":"The \"issuers\" operation on fiscal documents.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"parameters":[{"name":"year","in":"query","required":true,"schema":{"type":"integer","minimum":2000,"maximum":2100}},{"name":"month","in":"query","required":false,"schema":{"type":"integer","minimum":1,"maximum":12}}]}},"/fiscal/saft/export":{"get":{"operationId":"fiscal.saft.export","tags":["Fiscal"],"summary":"Export — fiscal documents","description":"The \"export\" operation on fiscal documents.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"parameters":[{"name":"year","in":"query","required":true,"schema":{"type":"integer","minimum":2000,"maximum":2100}},{"name":"month","in":"query","required":false,"schema":{"type":"integer","minimum":1,"maximum":12}},{"name":"issuerSpaceId","in":"query","required":false,"schema":{"default":null,"anyOf":[{"type":"string","minLength":1},{"type":"null"}]}}]}},"/fiscal/dunning/overdue":{"get":{"operationId":"fiscal.dunning.overdue","tags":["Fiscal"],"summary":"Overdue — fiscal documents","description":"The \"overdue\" operation on fiscal documents.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}}}},"/fiscal/dunning/run-attempt":{"post":{"operationId":"fiscal.dunning.runAttempt","tags":["Fiscal"],"summary":"RunAttempt — fiscal documents","description":"The \"runAttempt\" operation on fiscal documents.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"paymentId":{"type":"string","minLength":1}},"required":["paymentId"]}}}}}},"/fiscal/dunning/send-reminder":{"post":{"operationId":"fiscal.dunning.sendReminder","tags":["Fiscal"],"summary":"SendReminder — fiscal documents","description":"The \"sendReminder\" operation on fiscal documents.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"paymentId":{"type":"string","minLength":1}},"required":["paymentId"]}}}}}},"/fiscal/audit":{"get":{"operationId":"fiscal.audit.list","tags":["Fiscal"],"summary":"List fiscal documents","description":"List the fiscal documents in your organization. Org-scoped: only records in the authenticated organization are returned.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}}}},"/fees":{"get":{"operationId":"fees.list","tags":["Fees"],"summary":"List fees","description":"List the fees in your organization. Org-scoped: only records in the authenticated organization are returned.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"parameters":[{"name":"activeOnly","in":"query","required":false,"schema":{"default":false,"type":"boolean"}}]},"post":{"operationId":"fees.create","tags":["Fees"],"summary":"Create a fee","description":"Create a new fee in your organization.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"name":{"type":"string","minLength":1,"maxLength":120},"description":{"default":null,"anyOf":[{"type":"string","maxLength":500},{"type":"null"}]},"amountKind":{"default":"fixed","type":"string","enum":["fixed","percent"]},"amountCents":{"default":0,"type":"integer","minimum":0,"maximum":100000000},"percentBasisPoints":{"default":0,"type":"integer","minimum":0,"maximum":10000},"ivaRateCode":{"default":"normal","type":"string","enum":["normal","intermediate","reduced","exempt"]},"trigger":{"default":"manual","type":"string","enum":["on_join","on_renewal","on_late_payment","manual"]},"recurring":{"default":false,"type":"boolean"},"active":{"default":true,"type":"boolean"}},"required":["name"]}}}}}},"/fees/{id}":{"patch":{"operationId":"fees.update","tags":["Fees"],"summary":"Update a fee","description":"Apply a partial update to an existing fee by id. Only the fields you send are changed.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"name":{"type":"string","minLength":1,"maxLength":120},"description":{"anyOf":[{"type":"string","maxLength":500},{"type":"null"}]},"amountKind":{"type":"string","enum":["fixed","percent"]},"amountCents":{"type":"integer","minimum":0,"maximum":100000000},"percentBasisPoints":{"type":"integer","minimum":0,"maximum":10000},"ivaRateCode":{"type":"string","enum":["normal","intermediate","reduced","exempt"]},"trigger":{"type":"string","enum":["on_join","on_renewal","on_late_payment","manual"]},"recurring":{"type":"boolean"},"active":{"type":"boolean"},"id":{"type":"string","minLength":1}},"required":["id"]}}}},"parameters":[{"name":"id","in":"path","required":true,"description":"Unique id of the fee.","schema":{"type":"string"}}]}},"/fees/deactivate":{"post":{"operationId":"fees.deactivate","tags":["Fees"],"summary":"Deactivate — fees","description":"The \"deactivate\" operation on fees.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"id":{"type":"string","minLength":1}},"required":["id"]}}}}}},"/fees/charge":{"post":{"operationId":"fees.charge","tags":["Fees"],"summary":"Charge — fees","description":"The \"charge\" operation on fees.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"feeId":{"type":"string","minLength":1},"memberId":{"type":"string","minLength":1},"subscriptionId":{"default":null,"anyOf":[{"type":"string","minLength":1},{"type":"null"}]},"baseCents":{"default":0,"type":"integer","minimum":0,"maximum":100000000},"dueDate":{"default":null,"anyOf":[{"type":"string","maxLength":10},{"type":"null"}]},"note":{"default":null,"anyOf":[{"type":"string","maxLength":500},{"type":"null"}]},"issuerSpaceId":{"default":null,"anyOf":[{"type":"string","minLength":1},{"type":"null"}]}},"required":["feeId","memberId"]}}}}}},"/fees/applications":{"get":{"operationId":"fees.applications","tags":["Fees"],"summary":"Applications — fees","description":"The \"applications\" operation on fees.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"parameters":[{"name":"memberId","in":"query","required":false,"schema":{"type":"string","minLength":1}},{"name":"status","in":"query","required":false,"schema":{"type":"string","enum":["pending","invoiced","waived","cancelled"]}}]}},"/fees/waive":{"post":{"operationId":"fees.waive","tags":["Fees"],"summary":"Waive — fees","description":"The \"waive\" operation on fees.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"id":{"type":"string","minLength":1},"reason":{"type":"string","minLength":1,"maxLength":300}},"required":["id","reason"]}}}}}},"/tax-obligations/deadline-rules":{"get":{"operationId":"taxObligations.deadlineRules","tags":["TaxObligations"],"summary":"DeadlineRules — tax obligations","description":"The \"deadlineRules\" operation on tax obligations.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}}}},"/tax-obligations/suggest-due-date":{"get":{"operationId":"taxObligations.suggestDueDate","tags":["TaxObligations"],"summary":"SuggestDueDate — tax obligations","description":"The \"suggestDueDate\" operation on tax obligations.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"parameters":[{"name":"kind","in":"query","required":true,"schema":{"type":"string","enum":["iva","irc_payment_on_account","irc_pec","irc_modelo22","social_security","ies","withholding_tax","modelo10","other"]}},{"name":"periodicity","in":"query","required":true,"schema":{"type":"string","enum":["monthly","quarterly","annual","one_off"]}},{"name":"periodYear","in":"query","required":true,"schema":{"type":"integer","minimum":2000,"maximum":2100}},{"name":"periodMonth","in":"query","required":false,"schema":{"default":null,"anyOf":[{"type":"integer","minimum":1,"maximum":12},{"type":"null"}]}},{"name":"periodQuarter","in":"query","required":false,"schema":{"default":null,"anyOf":[{"type":"integer","minimum":1,"maximum":4},{"type":"null"}]}}]}},"/tax-obligations":{"get":{"operationId":"taxObligations.list","tags":["TaxObligations"],"summary":"List tax obligations","description":"List the tax obligations in your organization. Org-scoped: only records in the authenticated organization are returned.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"parameters":[{"name":"status","in":"query","required":false,"schema":{"type":"string","enum":["pending","paid","submitted"]}},{"name":"kind","in":"query","required":false,"schema":{"type":"string","enum":["iva","irc_payment_on_account","irc_pec","irc_modelo22","social_security","ies","withholding_tax","modelo10","other"]}},{"name":"year","in":"query","required":false,"schema":{"type":"integer","minimum":2000,"maximum":2100}},{"name":"issuerSpaceId","in":"query","required":false,"schema":{"type":"string","minLength":1}}]},"post":{"operationId":"taxObligations.create","tags":["TaxObligations"],"summary":"Create a tax obligation","description":"Create a new tax obligation in your organization.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"issuerSpaceId":{"default":null,"anyOf":[{"type":"string","minLength":1},{"type":"null"}]},"kind":{"type":"string","enum":["iva","irc_payment_on_account","irc_pec","irc_modelo22","social_security","ies","withholding_tax","modelo10","other"]},"periodicity":{"default":"monthly","type":"string","enum":["monthly","quarterly","annual","one_off"]},"periodYear":{"type":"integer","minimum":2000,"maximum":2100},"periodMonth":{"default":null,"anyOf":[{"type":"integer","minimum":1,"maximum":12},{"type":"null"}]},"periodQuarter":{"default":null,"anyOf":[{"type":"integer","minimum":1,"maximum":4},{"type":"null"}]},"dueDate":{"anyOf":[{"type":"string","maxLength":10},{"type":"null"}]},"amountCents":{"default":null,"anyOf":[{"type":"integer","minimum":0,"maximum":1000000000},{"type":"null"}]},"label":{"default":null,"anyOf":[{"type":"string","maxLength":200},{"type":"null"}]},"notes":{"default":null,"anyOf":[{"type":"string","maxLength":2000},{"type":"null"}]}},"required":["kind","periodYear"]}}}}}},"/tax-obligations/{id}":{"patch":{"operationId":"taxObligations.update","tags":["TaxObligations"],"summary":"Update a tax obligation","description":"Apply a partial update to an existing tax obligation by id. Only the fields you send are changed.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"id":{"type":"string","minLength":1},"dueDate":{"anyOf":[{"type":"string","maxLength":10},{"type":"null"}]},"amountCents":{"anyOf":[{"type":"integer","minimum":0,"maximum":1000000000},{"type":"null"}]},"label":{"anyOf":[{"type":"string","maxLength":200},{"type":"null"}]},"notes":{"anyOf":[{"type":"string","maxLength":2000},{"type":"null"}]}},"required":["id"]}}}},"parameters":[{"name":"id","in":"path","required":true,"description":"Unique id of the tax obligation.","schema":{"type":"string"}}]}},"/tax-obligations/set-status":{"post":{"operationId":"taxObligations.setStatus","tags":["TaxObligations"],"summary":"SetStatus — tax obligations","description":"The \"setStatus\" operation on tax obligations.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"id":{"type":"string","minLength":1},"status":{"type":"string","enum":["pending","paid","submitted"]}},"required":["id","status"]}}}}}},"/tax-obligations/remove":{"post":{"operationId":"taxObligations.remove","tags":["TaxObligations"],"summary":"Remove — tax obligations","description":"The \"remove\" operation on tax obligations.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"id":{"type":"string","minLength":1}},"required":["id"]}}}}}},"/tax-obligations/estimate-iva":{"get":{"operationId":"taxObligations.estimateIva","tags":["TaxObligations"],"summary":"EstimateIva — tax obligations","description":"The \"estimateIva\" operation on tax obligations.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"parameters":[{"name":"year","in":"query","required":true,"schema":{"type":"integer","minimum":2000,"maximum":2100}},{"name":"month","in":"query","required":false,"schema":{"default":null,"anyOf":[{"type":"integer","minimum":1,"maximum":12},{"type":"null"}]}},{"name":"quarter","in":"query","required":false,"schema":{"default":null,"anyOf":[{"type":"integer","minimum":1,"maximum":4},{"type":"null"}]}},{"name":"issuerSpaceId","in":"query","required":false,"schema":{"default":null,"anyOf":[{"type":"string","minLength":1},{"type":"null"}]}}]}},"/contracts":{"get":{"operationId":"contracts.list","tags":["Contracts"],"summary":"List contracts","description":"List the contracts in your organization. Org-scoped: only records in the authenticated organization are returned.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"parameters":[{"name":"status","in":"query","required":false,"schema":{"type":"string","enum":["signed","pending","expired"]}}]},"post":{"operationId":"contracts.create","tags":["Contracts"],"summary":"Create a contract","description":"Create a new contract in your organization.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"memberId":{"type":"string","minLength":1},"contractType":{"type":"string","minLength":1,"maxLength":200},"status":{"default":"pending","type":"string","enum":["signed","pending","expired"]},"signedDate":{"type":"string"},"expiryDate":{"type":"string"}},"required":["memberId","contractType"]}}}}}},"/contracts/templates":{"get":{"operationId":"contracts.templates","tags":["Contracts"],"summary":"Templates — contracts","description":"The \"templates\" operation on contracts.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}}}},"/contracts/sign":{"post":{"operationId":"contracts.sign","tags":["Contracts"],"summary":"Sign — contracts","description":"The \"sign\" operation on contracts.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"id":{"type":"string","minLength":1}},"required":["id"]}}}}}},"/contracts/update-template":{"post":{"operationId":"contracts.updateTemplate","tags":["Contracts"],"summary":"UpdateTemplate — contracts","description":"The \"updateTemplate\" operation on contracts.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"id":{"type":"string","minLength":1},"name":{"type":"string","minLength":1,"maxLength":200},"required":{"type":"boolean"}},"required":["id","name","required"]}}}}}},"/contracts/create-template":{"post":{"operationId":"contracts.createTemplate","tags":["Contracts"],"summary":"CreateTemplate — contracts","description":"The \"createTemplate\" operation on contracts.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"name":{"type":"string","minLength":1,"maxLength":200},"required":{"default":true,"type":"boolean"}},"required":["name"]}}}}}},"/certifications":{"get":{"operationId":"certifications.list","tags":["Certifications"],"summary":"List certifications","description":"List the certifications in your organization. Org-scoped: only records in the authenticated organization are returned.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}}},"post":{"operationId":"certifications.create","tags":["Certifications"],"summary":"Create a certification","description":"Create a new certification in your organization.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"coachId":{"type":"string","minLength":1},"name":{"type":"string","minLength":1,"maxLength":160},"issuedDate":{"type":"string"},"expiryDate":{"type":"string"},"documentUrl":{"type":"string","format":"uri"}},"required":["coachId","name","issuedDate"]}}}}}},"/certifications/{id}":{"delete":{"operationId":"certifications.delete","tags":["Certifications"],"summary":"Delete a certification","description":"Permanently delete a certification by id.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"id":{"type":"string","minLength":1}},"required":["id"]}}}},"parameters":[{"name":"id","in":"path","required":true,"description":"Unique id of the certification.","schema":{"type":"string"}}]}},"/classes/templates":{"get":{"operationId":"classTemplates.list","tags":["ClassTemplates"],"summary":"List class templates","description":"List the class templates in your organization. Org-scoped: only records in the authenticated organization are returned.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}}},"post":{"operationId":"classTemplates.create","tags":["ClassTemplates"],"summary":"Create a class template","description":"Create a new class template in your organization.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"name":{"type":"string","minLength":1,"maxLength":160},"classType":{"type":"string","minLength":1,"maxLength":80},"time":{"type":"string","minLength":1,"maxLength":20},"duration":{"type":"string","minLength":1,"maxLength":40},"coach":{"type":"string","minLength":1,"maxLength":120},"capacity":{"type":"integer","minimum":1,"maximum":999},"room":{"type":"string","minLength":1,"maxLength":120},"days":{"type":"string","minLength":1,"maxLength":60}},"required":["name","classType","time","duration","coach","capacity","room","days"]}}}}}},"/classes/templates/{id}":{"patch":{"operationId":"classTemplates.update","tags":["ClassTemplates"],"summary":"Update a class template","description":"Apply a partial update to an existing class template by id. Only the fields you send are changed.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"name":{"type":"string","minLength":1,"maxLength":160},"classType":{"type":"string","minLength":1,"maxLength":80},"time":{"type":"string","minLength":1,"maxLength":20},"duration":{"type":"string","minLength":1,"maxLength":40},"coach":{"type":"string","minLength":1,"maxLength":120},"capacity":{"type":"integer","minimum":1,"maximum":999},"room":{"type":"string","minLength":1,"maxLength":120},"days":{"type":"string","minLength":1,"maxLength":60},"id":{"type":"string","minLength":1}},"required":["id"]}}}},"parameters":[{"name":"id","in":"path","required":true,"description":"Unique id of the class template.","schema":{"type":"string"}}]},"delete":{"operationId":"classTemplates.delete","tags":["ClassTemplates"],"summary":"Delete a class template","description":"Permanently delete a class template by id.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"id":{"type":"string","minLength":1}},"required":["id"]}}}},"parameters":[{"name":"id","in":"path","required":true,"description":"Unique id of the class template.","schema":{"type":"string"}}]}},"/challenges":{"get":{"operationId":"challenges.list","tags":["Challenges"],"summary":"List challenges","description":"List the challenges in your organization. Org-scoped: only records in the authenticated organization are returned.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"parameters":[{"name":"status","in":"query","required":false,"schema":{"type":"string","enum":["draft","active","ended"]}}]},"post":{"operationId":"challenges.create","tags":["Challenges"],"summary":"Create a challenge","description":"Create a new challenge in your organization.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object"}}}}}},"/challenges/{id}":{"get":{"operationId":"challenges.get","tags":["Challenges"],"summary":"Retrieve a challenge","description":"Retrieve a single challenge by its id. Returns 404 when it does not exist in your organization.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"parameters":[{"name":"id","in":"path","required":true,"description":"Unique id of the challenge.","schema":{"type":"string"}}]},"patch":{"operationId":"challenges.update","tags":["Challenges"],"summary":"Update a challenge","description":"Apply a partial update to an existing challenge by id. Only the fields you send are changed.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object"}}}},"parameters":[{"name":"id","in":"path","required":true,"description":"Unique id of the challenge.","schema":{"type":"string"}}]},"delete":{"operationId":"challenges.delete","tags":["Challenges"],"summary":"Delete a challenge","description":"Permanently delete a challenge by id.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"id":{"type":"string","minLength":1}},"required":["id"]}}}},"parameters":[{"name":"id","in":"path","required":true,"description":"Unique id of the challenge.","schema":{"type":"string"}}]}},"/challenges/set-status":{"post":{"operationId":"challenges.setStatus","tags":["Challenges"],"summary":"SetStatus — challenges","description":"The \"setStatus\" operation on challenges.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"id":{"type":"string","minLength":1},"status":{"type":"string","enum":["draft","active","ended"]}},"required":["id","status"]}}}}}},"/challenges/participants":{"get":{"operationId":"challenges.participants.list","tags":["Challenges"],"summary":"List challenges","description":"List the challenges in your organization. Org-scoped: only records in the authenticated organization are returned.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"parameters":[{"name":"challengeId","in":"query","required":true,"schema":{"type":"string","minLength":1}}]}},"/challenges/join":{"post":{"operationId":"challenges.join","tags":["Challenges"],"summary":"Join — challenges","description":"The \"join\" operation on challenges.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"challengeId":{"type":"string","minLength":1},"memberId":{"type":"string","minLength":1}},"required":["challengeId","memberId"]}}}}}},"/challenges/leave":{"post":{"operationId":"challenges.leave","tags":["Challenges"],"summary":"Leave — challenges","description":"The \"leave\" operation on challenges.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"challengeId":{"type":"string","minLength":1},"memberId":{"type":"string","minLength":1}},"required":["challengeId","memberId"]}}}}}},"/challenges/add-progress":{"post":{"operationId":"challenges.addProgress","tags":["Challenges"],"summary":"AddProgress — challenges","description":"The \"addProgress\" operation on challenges.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"challengeId":{"type":"string","minLength":1},"memberId":{"type":"string","minLength":1},"value":{"type":"number"},"mode":{"default":"add","type":"string","enum":["add","set"]}},"required":["challengeId","memberId","value"]}}}}}},"/challenges/leaderboard":{"get":{"operationId":"challenges.leaderboard","tags":["Challenges"],"summary":"Leaderboard — challenges","description":"The \"leaderboard\" operation on challenges.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"parameters":[{"name":"challengeId","in":"query","required":true,"schema":{"type":"string","minLength":1}}]}},"/badges":{"get":{"operationId":"badges.list","tags":["Badges"],"summary":"List badges","description":"List the badges in your organization. Org-scoped: only records in the authenticated organization are returned.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}}},"post":{"operationId":"badges.create","tags":["Badges"],"summary":"Create a badge","description":"Create a new badge in your organization.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"name":{"type":"string","minLength":1,"maxLength":120},"description":{"type":"string","maxLength":500},"icon":{"type":"string","maxLength":80},"color":{"type":"string","pattern":"^#[0-9a-fA-F]{6}$"},"criteria":{"type":"string","maxLength":500}},"required":["name"]}}}}}},"/badges/{id}":{"patch":{"operationId":"badges.update","tags":["Badges"],"summary":"Update a badge","description":"Apply a partial update to an existing badge by id. Only the fields you send are changed.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"name":{"type":"string","minLength":1,"maxLength":120},"description":{"type":"string","maxLength":500},"icon":{"type":"string","maxLength":80},"color":{"type":"string","pattern":"^#[0-9a-fA-F]{6}$"},"criteria":{"type":"string","maxLength":500},"id":{"type":"string","minLength":1}},"required":["id"]}}}},"parameters":[{"name":"id","in":"path","required":true,"description":"Unique id of the badge.","schema":{"type":"string"}}]}},"/badges/remove":{"post":{"operationId":"badges.remove","tags":["Badges"],"summary":"Remove — badges","description":"The \"remove\" operation on badges.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"id":{"type":"string","minLength":1}},"required":["id"]}}}}}},"/badges/award":{"post":{"operationId":"badges.award","tags":["Badges"],"summary":"Award — badges","description":"The \"award\" operation on badges.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"badgeId":{"type":"string","minLength":1},"memberId":{"type":"string","minLength":1}},"required":["badgeId","memberId"]}}}}}},"/badges/revoke":{"post":{"operationId":"badges.revoke","tags":["Badges"],"summary":"Revoke — badges","description":"The \"revoke\" operation on badges.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"badgeId":{"type":"string","minLength":1},"memberId":{"type":"string","minLength":1}},"required":["badgeId","memberId"]}}}}}},"/badges/for-member":{"get":{"operationId":"badges.forMember","tags":["Badges"],"summary":"ForMember — badges","description":"The \"forMember\" operation on badges.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"parameters":[{"name":"memberId","in":"query","required":true,"schema":{"type":"string","minLength":1}}]}},"/members/groups":{"get":{"operationId":"memberGroups.list","tags":["MemberGroups"],"summary":"List member groups","description":"List the member groups in your organization. Org-scoped: only records in the authenticated organization are returned.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}}},"post":{"operationId":"memberGroups.create","tags":["MemberGroups"],"summary":"Create a member group","description":"Create a new member group in your organization.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"name":{"type":"string","minLength":1,"maxLength":120},"description":{"type":"string","maxLength":500},"color":{"type":"string","pattern":"^#[0-9a-fA-F]{6}$"}},"required":["name"]}}}}}},"/members/groups/{id}":{"patch":{"operationId":"memberGroups.update","tags":["MemberGroups"],"summary":"Update a member group","description":"Apply a partial update to an existing member group by id. Only the fields you send are changed.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"name":{"type":"string","minLength":1,"maxLength":120},"description":{"type":"string","maxLength":500},"color":{"type":"string","pattern":"^#[0-9a-fA-F]{6}$"},"id":{"type":"string","minLength":1}},"required":["id"]}}}},"parameters":[{"name":"id","in":"path","required":true,"description":"Unique id of the member group.","schema":{"type":"string"}}]},"delete":{"operationId":"memberGroups.delete","tags":["MemberGroups"],"summary":"Delete a member group","description":"Permanently delete a member group by id.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"id":{"type":"string","minLength":1}},"required":["id"]}}}},"parameters":[{"name":"id","in":"path","required":true,"description":"Unique id of the member group.","schema":{"type":"string"}}]}},"/members/groups/add-members":{"post":{"operationId":"memberGroups.addMembers","tags":["MemberGroups"],"summary":"AddMembers — member groups","description":"The \"addMembers\" operation on member groups.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"groupId":{"type":"string","minLength":1},"memberIds":{"minItems":1,"type":"array","items":{"type":"string","minLength":1}}},"required":["groupId","memberIds"]}}}}}},"/members/groups/remove-member":{"post":{"operationId":"memberGroups.removeMember","tags":["MemberGroups"],"summary":"RemoveMember — member groups","description":"The \"removeMember\" operation on member groups.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"groupId":{"type":"string","minLength":1},"memberId":{"type":"string","minLength":1}},"required":["groupId","memberId"]}}}}}},"/member-credit/balance":{"get":{"operationId":"memberCredit.balance","tags":["MemberCredit"],"summary":"Balance — member credit","description":"The \"balance\" operation on member credit.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"parameters":[{"name":"memberId","in":"query","required":true,"schema":{"type":"string","minLength":1}}]}},"/member-credit":{"get":{"operationId":"memberCredit.list","tags":["MemberCredit"],"summary":"List member credit","description":"List the member credit in your organization. Org-scoped: only records in the authenticated organization are returned.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"parameters":[{"name":"memberId","in":"query","required":true,"schema":{"type":"string","minLength":1}},{"name":"limit","in":"query","required":false,"schema":{"default":50,"type":"integer","minimum":1,"maximum":200}}]}},"/member-credit/top-up":{"post":{"operationId":"memberCredit.topUp","tags":["MemberCredit"],"summary":"TopUp — member credit","description":"The \"topUp\" operation on member credit.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"memberId":{"type":"string","minLength":1},"amountCents":{"type":"integer","exclusiveMinimum":0,"maximum":1000000},"note":{"type":"string","maxLength":200}},"required":["memberId","amountCents"]}}}}}},"/member-credit/adjust":{"post":{"operationId":"memberCredit.adjust","tags":["MemberCredit"],"summary":"Adjust — member credit","description":"The \"adjust\" operation on member credit.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"memberId":{"type":"string","minLength":1},"amountCents":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"reason":{"type":"string","minLength":3,"maxLength":200}},"required":["memberId","amountCents","reason"]}}}}}},"/climbing/routes":{"get":{"operationId":"climbing.routes","tags":["Climbing"],"summary":"Routes — climbing","description":"The \"routes\" operation on climbing.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"parameters":[{"name":"spaceId","in":"query","required":true,"schema":{"type":"string","minLength":1}},{"name":"sector","in":"query","required":false,"schema":{"type":"string","minLength":1,"maxLength":120}},{"name":"includeArchived","in":"query","required":false,"schema":{"default":false,"type":"boolean"}}]}},"/climbing/create-route":{"post":{"operationId":"climbing.createRoute","tags":["Climbing"],"summary":"CreateRoute — climbing","description":"The \"createRoute\" operation on climbing.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"spaceId":{"type":"string","minLength":1},"sector":{"type":"string","minLength":1,"maxLength":120},"name":{"type":"string","maxLength":160},"kind":{"type":"string","enum":["boulder","lead","top_rope"]},"gradeOrdinal":{"type":"integer","minimum":0,"maximum":17},"color":{"type":"string","maxLength":40},"setOn":{"type":"string"}},"required":["spaceId","sector","kind","gradeOrdinal"]}}}}}},"/climbing/archive-sector":{"post":{"operationId":"climbing.archiveSector","tags":["Climbing"],"summary":"ArchiveSector — climbing","description":"The \"archiveSector\" operation on climbing.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"spaceId":{"type":"string","minLength":1},"sector":{"type":"string","minLength":1,"maxLength":120}},"required":["spaceId","sector"]}}}}}},"/climbing/log-send":{"post":{"operationId":"climbing.logSend","tags":["Climbing"],"summary":"LogSend — climbing","description":"The \"logSend\" operation on climbing.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"memberId":{"type":"string","minLength":1},"routeId":{"type":"string","minLength":1},"style":{"type":"string","enum":["onsight","flash","redpoint","repeat"]}},"required":["memberId","routeId","style"]}}}}}},"/climbing/add-project":{"post":{"operationId":"climbing.addProject","tags":["Climbing"],"summary":"AddProject — climbing","description":"The \"addProject\" operation on climbing.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"memberId":{"type":"string","minLength":1},"routeId":{"type":"string","minLength":1}},"required":["memberId","routeId"]}}}}}},"/climbing/projects":{"get":{"operationId":"climbing.projects","tags":["Climbing"],"summary":"Projects — climbing","description":"The \"projects\" operation on climbing.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"parameters":[{"name":"memberId","in":"query","required":true,"schema":{"type":"string","minLength":1}}]}},"/climbing/progress":{"get":{"operationId":"climbing.progress","tags":["Climbing"],"summary":"Progress — climbing","description":"The \"progress\" operation on climbing.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"parameters":[{"name":"memberId","in":"query","required":true,"schema":{"type":"string","minLength":1}}]}},"/climbing/my-progress":{"get":{"operationId":"climbing.myProgress","tags":["Climbing"],"summary":"MyProgress — climbing","description":"The \"myProgress\" operation on climbing.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}}}},"/climbing/my-projects":{"get":{"operationId":"climbing.myProjects","tags":["Climbing"],"summary":"MyProjects — climbing","description":"The \"myProjects\" operation on climbing.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}}}},"/climbing/log-my-send":{"post":{"operationId":"climbing.logMySend","tags":["Climbing"],"summary":"LogMySend — climbing","description":"The \"logMySend\" operation on climbing.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"routeId":{"type":"string","minLength":1},"style":{"type":"string","enum":["onsight","flash","redpoint","repeat"]}},"required":["routeId","style"]}}}}}},"/climbing/toggle-my-project":{"post":{"operationId":"climbing.toggleMyProject","tags":["Climbing"],"summary":"ToggleMyProject — climbing","description":"The \"toggleMyProject\" operation on climbing.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"routeId":{"type":"string","minLength":1},"on":{"type":"boolean"}},"required":["routeId","on"]}}}}}},"/climbing/route-send-counts":{"get":{"operationId":"climbing.routeSendCounts","tags":["Climbing"],"summary":"RouteSendCounts — climbing","description":"The \"routeSendCounts\" operation on climbing.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"parameters":[{"name":"spaceId","in":"query","required":true,"schema":{"type":"string","minLength":1}}]}},"/training-blocks":{"get":{"operationId":"trainingBlocks.list","tags":["TrainingBlocks"],"summary":"List training blocks","description":"List the training blocks in your organization. Org-scoped: only records in the authenticated organization are returned.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"parameters":[{"name":"modality","in":"query","required":false,"schema":{"type":"string","minLength":1,"maxLength":60}},{"name":"includeArchived","in":"query","required":false,"schema":{"default":false,"type":"boolean"}}]},"post":{"operationId":"trainingBlocks.create","tags":["TrainingBlocks"],"summary":"Create a training block","description":"Create a new training block in your organization.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"name":{"type":"string","minLength":1,"maxLength":160},"modality":{"type":"string","minLength":1,"maxLength":60},"steps":{"minItems":1,"maxItems":52,"type":"array","items":{"type":"object","properties":{"week":{"type":"integer","minimum":1,"maximum":52},"target":{"oneOf":[{"type":"object","properties":{"kind":{"type":"string","const":"percent_1rm"},"percent":{"type":"number","minimum":1,"maximum":150},"sets":{"type":"integer","minimum":1,"maximum":20},"reps":{"type":"integer","minimum":1,"maximum":100},"exerciseId":{"type":"string","minLength":1},"targetRpe":{"anyOf":[{"type":"number","minimum":1,"maximum":10},{"type":"null"}]}},"required":["kind","percent","sets","reps","exerciseId"]},{"type":"object","properties":{"kind":{"type":"string","const":"pace_zone"},"zone":{"type":"string","enum":["easy","marathon","threshold","interval","repetition"]},"meters":{"anyOf":[{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},{"type":"null"}]},"seconds":{"anyOf":[{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},{"type":"null"}]}},"required":["kind","zone"]}]},"note":{"anyOf":[{"type":"string","maxLength":200},{"type":"null"}]},"templateWorkoutId":{"anyOf":[{"type":"string","minLength":1},{"type":"null"}]}},"required":["week","target"]}}},"required":["name","modality","steps"]}}}}}},"/training-blocks/archive":{"post":{"operationId":"trainingBlocks.archive","tags":["TrainingBlocks"],"summary":"Archive — training blocks","description":"The \"archive\" operation on training blocks.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"id":{"type":"string","minLength":1}},"required":["id"]}}}}}},"/training-blocks/preview-for":{"get":{"operationId":"trainingBlocks.previewFor","tags":["TrainingBlocks"],"summary":"PreviewFor — training blocks","description":"The \"previewFor\" operation on training blocks.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"parameters":[{"name":"id","in":"query","required":true,"schema":{"type":"string","minLength":1}},{"name":"memberId","in":"query","required":true,"schema":{"type":"string","minLength":1}}]}},"/training-blocks/schedule":{"post":{"operationId":"trainingBlocks.schedule","tags":["TrainingBlocks"],"summary":"Schedule — training blocks","description":"The \"schedule\" operation on training blocks.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"id":{"type":"string","minLength":1},"startDate":{"type":"string"},"classTypeId":{"type":"string","minLength":1}},"required":["id","startDate","classTypeId"]}}}}}},"/member-ranks/award":{"post":{"operationId":"memberRanks.award","tags":["MemberRanks"],"summary":"Award — member ranks","description":"The \"award\" operation on member ranks.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"memberId":{"type":"string","minLength":1},"modality":{"type":"string","minLength":1,"maxLength":60},"rankId":{"type":"string","minLength":1,"maxLength":120},"rankLabel":{"type":"string","minLength":1,"maxLength":120},"notes":{"type":"string","maxLength":2000}},"required":["memberId","modality","rankId","rankLabel"]}}}}}},"/member-ranks/for-member":{"get":{"operationId":"memberRanks.forMember","tags":["MemberRanks"],"summary":"ForMember — member ranks","description":"The \"forMember\" operation on member ranks.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"parameters":[{"name":"memberId","in":"query","required":true,"schema":{"type":"string","minLength":1}}]}},"/member-ranks/mine":{"get":{"operationId":"memberRanks.mine","tags":["MemberRanks"],"summary":"Retrieve your member rank","description":"Retrieve the member rank linked to the authenticated caller (self-service).","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}}}},"/member-ranks/ladder":{"get":{"operationId":"memberRanks.ladder","tags":["MemberRanks"],"summary":"Ladder — member ranks","description":"The \"ladder\" operation on member ranks.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"parameters":[{"name":"modality","in":"query","required":true,"schema":{"type":"string","minLength":1,"maxLength":60}}]}},"/member-ranks/save-ladder":{"post":{"operationId":"memberRanks.saveLadder","tags":["MemberRanks"],"summary":"SaveLadder — member ranks","description":"The \"saveLadder\" operation on member ranks.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"modality":{"type":"string","minLength":1,"maxLength":60},"ranks":{"maxItems":100,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","minLength":1,"maxLength":60},"label":{"type":"string","minLength":1,"maxLength":120},"requirements":{"type":"array","items":{"type":"string","minLength":1,"maxLength":120}}},"required":["id","label"]}}},"required":["modality","ranks"]}}}}}},"/training-plans/calendar":{"get":{"operationId":"trainingPlans.calendar","tags":["TrainingPlans"],"summary":"Calendar — training plans","description":"The \"calendar\" operation on training plans.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"parameters":[{"name":"from","in":"query","required":true,"schema":{"type":"string","pattern":"^\\d{4}-\\d{2}-\\d{2}$"}},{"name":"to","in":"query","required":true,"schema":{"type":"string","pattern":"^\\d{4}-\\d{2}-\\d{2}$"}}]}},"/training-plans":{"post":{"operationId":"trainingPlans.create","tags":["TrainingPlans"],"summary":"Create a training plan","description":"Create a new training plan in your organization.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"memberId":{"default":null,"anyOf":[{"type":"string","minLength":1},{"type":"null"}]},"name":{"type":"string","minLength":1,"maxLength":200},"goal":{"type":"string","maxLength":2000},"startDate":{"type":"string","pattern":"^\\d{4}-\\d{2}-\\d{2}$"},"weeks":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"days":{"default":[],"type":"array","items":{"type":"object","properties":{"label":{"type":"string","minLength":1,"maxLength":120},"exercises":{"type":"array","items":{"type":"object","properties":{"exerciseId":{"type":"string","minLength":1},"sets":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"reps":{"type":"string","maxLength":60},"load":{"type":"string","maxLength":60},"notes":{"type":"string","maxLength":500}},"required":["exerciseId"]}}},"required":["label","exercises"]}}},"required":["name"]}}}}},"get":{"operationId":"trainingPlans.list","tags":["TrainingPlans"],"summary":"List training plans","description":"List the training plans in your organization. Org-scoped: only records in the authenticated organization are returned.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"parameters":[{"name":"memberId","in":"query","required":false,"schema":{"anyOf":[{"type":"string","minLength":1},{"type":"null"}]}}]}},"/training-plans/{id}":{"patch":{"operationId":"trainingPlans.update","tags":["TrainingPlans"],"summary":"Update a training plan","description":"Apply a partial update to an existing training plan by id. Only the fields you send are changed.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"id":{"type":"string","minLength":1},"data":{"type":"object","properties":{"name":{"type":"string","minLength":1,"maxLength":200},"goal":{"anyOf":[{"type":"string","maxLength":2000},{"type":"null"}]},"startDate":{"anyOf":[{"type":"string","pattern":"^\\d{4}-\\d{2}-\\d{2}$"},{"type":"null"}]},"weeks":{"anyOf":[{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},{"type":"null"}]},"days":{"type":"array","items":{"type":"object","properties":{"label":{"type":"string","minLength":1,"maxLength":120},"exercises":{"type":"array","items":{"type":"object","properties":{"exerciseId":{"type":"string","minLength":1},"sets":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"reps":{"type":"string","maxLength":60},"load":{"type":"string","maxLength":60},"notes":{"type":"string","maxLength":500}},"required":["exerciseId"]}}},"required":["label","exercises"]}}}}},"required":["id","data"]}}}},"parameters":[{"name":"id","in":"path","required":true,"description":"Unique id of the training plan.","schema":{"type":"string"}}]}},"/training-plans/day":{"get":{"operationId":"trainingPlans.day","tags":["TrainingPlans"],"summary":"Day — training plans","description":"The \"day\" operation on training plans.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"parameters":[{"name":"planId","in":"query","required":true,"schema":{"type":"string","minLength":1}},{"name":"index","in":"query","required":true,"schema":{"type":"integer","minimum":0,"maximum":9007199254740991}}]}},"/training-plans/set-day":{"post":{"operationId":"trainingPlans.setDay","tags":["TrainingPlans"],"summary":"SetDay — training plans","description":"The \"setDay\" operation on training plans.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"planId":{"type":"string","minLength":1},"index":{"type":"integer","minimum":0,"maximum":9007199254740991},"day":{"type":"object","properties":{"label":{"type":"string","minLength":1,"maxLength":120},"exercises":{"type":"array","items":{"type":"object","properties":{"exerciseId":{"type":"string","minLength":1},"sets":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"reps":{"type":"string","maxLength":60},"load":{"type":"string","maxLength":60},"notes":{"type":"string","maxLength":500}},"required":["exerciseId"]}}},"required":["label","exercises"]}},"required":["planId","index","day"]}}}}}},"/training-plans/assign":{"post":{"operationId":"trainingPlans.assign","tags":["TrainingPlans"],"summary":"Assign — training plans","description":"The \"assign\" operation on training plans.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"id":{"type":"string","minLength":1},"memberId":{"type":"string","minLength":1}},"required":["id","memberId"]}}}}}},"/training-plans/archive":{"post":{"operationId":"trainingPlans.archive","tags":["TrainingPlans"],"summary":"Archive — training plans","description":"The \"archive\" operation on training plans.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"id":{"type":"string","minLength":1}},"required":["id"]}}}}}},"/training-plans/mine":{"get":{"operationId":"trainingPlans.mine","tags":["TrainingPlans"],"summary":"Retrieve your training plan","description":"Retrieve the training plan linked to the authenticated caller (self-service).","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}}}},"/rehab/prescriptions":{"post":{"operationId":"rehab.prescriptions.create","tags":["Rehab"],"summary":"Create a rehab","description":"Create a new rehab in your organization.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"memberId":{"type":"string","minLength":1},"exerciseId":{"type":"string","minLength":1},"sets":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"reps":{"type":"string","maxLength":60},"frequencyPerWeek":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"notes":{"type":"string","maxLength":2000}},"required":["memberId","exerciseId"]}}}}},"get":{"operationId":"rehab.prescriptions.list","tags":["Rehab"],"summary":"List rehab","description":"List the rehab in your organization. Org-scoped: only records in the authenticated organization are returned.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"parameters":[{"name":"memberId","in":"query","required":true,"schema":{"type":"string","minLength":1}}]}},"/rehab/prescriptions/deactivate":{"post":{"operationId":"rehab.prescriptions.deactivate","tags":["Rehab"],"summary":"Deactivate — rehab","description":"The \"deactivate\" operation on rehab.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"id":{"type":"string","minLength":1}},"required":["id"]}}}}}},"/rehab/prescriptions/mine":{"get":{"operationId":"rehab.prescriptions.mine","tags":["Rehab"],"summary":"Retrieve your rehab","description":"Retrieve the rehab linked to the authenticated caller (self-service).","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}}}},"/rehab/pain-checkins/log":{"post":{"operationId":"rehab.painCheckins.log","tags":["Rehab"],"summary":"Log — rehab","description":"The \"log\" operation on rehab.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"memberId":{"type":"string","minLength":1},"score":{"type":"integer","minimum":0,"maximum":10},"note":{"type":"string","maxLength":2000}},"required":["memberId","score"]}}}}}},"/rehab/pain-checkins/for-member":{"get":{"operationId":"rehab.painCheckins.forMember","tags":["Rehab"],"summary":"ForMember — rehab","description":"The \"forMember\" operation on rehab.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"parameters":[{"name":"memberId","in":"query","required":true,"schema":{"type":"string","minLength":1}}]}},"/running/my-progress":{"get":{"operationId":"running.myProgress","tags":["Running"],"summary":"MyProgress — running","description":"The \"myProgress\" operation on running.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"parameters":[{"name":"today","in":"query","required":false,"schema":{"type":"string","pattern":"^\\d{4}-\\d{2}-\\d{2}$"}},{"name":"weeks","in":"query","required":false,"schema":{"default":12,"type":"integer","minimum":1,"maximum":52}},{"name":"weekStartsOn","in":"query","required":false,"schema":{"default":1,"anyOf":[{"type":"number","const":0},{"type":"number","const":1}]}}]}},"/running/space-volume":{"get":{"operationId":"running.spaceVolume","tags":["Running"],"summary":"SpaceVolume — running","description":"The \"spaceVolume\" operation on running.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"parameters":[{"name":"today","in":"query","required":false,"schema":{"type":"string","pattern":"^\\d{4}-\\d{2}-\\d{2}$"}},{"name":"weeks","in":"query","required":false,"schema":{"default":8,"type":"integer","minimum":1,"maximum":52}},{"name":"weekStartsOn","in":"query","required":false,"schema":{"default":1,"anyOf":[{"type":"number","const":0},{"type":"number","const":1}]}}]}},"/swimming/my-progress":{"get":{"operationId":"swimming.myProgress","tags":["Swimming"],"summary":"MyProgress — swimming","description":"The \"myProgress\" operation on swimming.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"parameters":[{"name":"today","in":"query","required":false,"schema":{"type":"string","pattern":"^\\d{4}-\\d{2}-\\d{2}$"}},{"name":"weeks","in":"query","required":false,"schema":{"default":12,"type":"integer","minimum":1,"maximum":52}},{"name":"weekStartsOn","in":"query","required":false,"schema":{"default":1,"anyOf":[{"type":"number","const":0},{"type":"number","const":1}]}}]}},"/swimming/space-volume":{"get":{"operationId":"swimming.spaceVolume","tags":["Swimming"],"summary":"SpaceVolume — swimming","description":"The \"spaceVolume\" operation on swimming.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"parameters":[{"name":"today","in":"query","required":false,"schema":{"type":"string","pattern":"^\\d{4}-\\d{2}-\\d{2}$"}},{"name":"weeks","in":"query","required":false,"schema":{"default":8,"type":"integer","minimum":1,"maximum":52}},{"name":"weekStartsOn","in":"query","required":false,"schema":{"default":1,"anyOf":[{"type":"number","const":0},{"type":"number","const":1}]}}]}},"/member-space-access/list-for-member":{"get":{"operationId":"memberSpaceAccess.listForMember","tags":["MemberSpaceAccess"],"summary":"ListForMember — member space access","description":"The \"listForMember\" operation on member space access.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"parameters":[{"name":"memberId","in":"query","required":true,"schema":{"type":"string","minLength":1}}]}},"/member-space-access/grant":{"post":{"operationId":"memberSpaceAccess.grant","tags":["MemberSpaceAccess"],"summary":"Grant — member space access","description":"The \"grant\" operation on member space access.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"memberId":{"type":"string","minLength":1},"spaceId":{"type":"string","minLength":1}},"required":["memberId","spaceId"]}}}}}},"/member-space-access/revoke":{"post":{"operationId":"memberSpaceAccess.revoke","tags":["MemberSpaceAccess"],"summary":"Revoke — member space access","description":"The \"revoke\" operation on member space access.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"memberId":{"type":"string","minLength":1},"spaceId":{"type":"string","minLength":1}},"required":["memberId","spaceId"]}}}}}},"/member-space-access/resolve-for-member":{"get":{"operationId":"memberSpaceAccess.resolveForMember","tags":["MemberSpaceAccess"],"summary":"ResolveForMember — member space access","description":"The \"resolveForMember\" operation on member space access.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"parameters":[{"name":"memberId","in":"query","required":true,"schema":{"type":"string","minLength":1}}]}},"/member-space-access/mine":{"get":{"operationId":"memberSpaceAccess.mine","tags":["MemberSpaceAccess"],"summary":"Retrieve your member space acces","description":"Retrieve the member space acces linked to the authenticated caller (self-service).","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}}}},"/public/site":{"get":{"operationId":"public.site","tags":["Public"],"summary":"Site — public resources","description":"The \"site\" operation on public resources.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"parameters":[{"name":"slug","in":"query","required":true,"schema":{"type":"string","minLength":1,"maxLength":120}},{"name":"spaceSlug","in":"query","required":false,"schema":{"type":"string","minLength":1,"maxLength":120}}]}},"/public/spaces":{"get":{"operationId":"public.spaces","tags":["Public"],"summary":"Spaces — public resources","description":"The \"spaces\" operation on public resources.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"parameters":[{"name":"slug","in":"query","required":true,"schema":{"type":"string","minLength":1,"maxLength":120}}]}},"/public/plans":{"get":{"operationId":"public.plans","tags":["Public"],"summary":"Plans — public resources","description":"The \"plans\" operation on public resources.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"parameters":[{"name":"slug","in":"query","required":true,"schema":{"type":"string","minLength":1,"maxLength":120}},{"name":"spaceSlug","in":"query","required":false,"schema":{"type":"string","minLength":1,"maxLength":120}}]}},"/public/coaches":{"get":{"operationId":"public.coaches","tags":["Public"],"summary":"Coaches — public resources","description":"The \"coaches\" operation on public resources.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"parameters":[{"name":"slug","in":"query","required":true,"schema":{"type":"string","minLength":1,"maxLength":120}},{"name":"spaceSlug","in":"query","required":false,"schema":{"type":"string","minLength":1,"maxLength":120}}]}},"/public/products":{"get":{"operationId":"public.products","tags":["Public"],"summary":"Products — public resources","description":"The \"products\" operation on public resources.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"parameters":[{"name":"slug","in":"query","required":true,"schema":{"type":"string","minLength":1,"maxLength":120}},{"name":"spaceSlug","in":"query","required":false,"schema":{"type":"string","minLength":1,"maxLength":120}}]}},"/public/weekly-schedule":{"get":{"operationId":"public.weeklySchedule","tags":["Public"],"summary":"WeeklySchedule — public resources","description":"The \"weeklySchedule\" operation on public resources.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"parameters":[{"name":"slug","in":"query","required":true,"schema":{"type":"string","minLength":1,"maxLength":120}},{"name":"spaceSlug","in":"query","required":false,"schema":{"type":"string","minLength":1,"maxLength":120}}]}},"/public/dropins":{"get":{"operationId":"public.dropins","tags":["Public"],"summary":"Dropins — public resources","description":"The \"dropins\" operation on public resources.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"parameters":[{"name":"slug","in":"query","required":true,"schema":{"type":"string","minLength":1,"maxLength":120}},{"name":"spaceSlug","in":"query","required":false,"schema":{"type":"string","minLength":1,"maxLength":120}},{"name":"lang","in":"query","required":false,"schema":{"type":"string","enum":["pt","en","es"]}}]}},"/public/competition":{"get":{"operationId":"public.competition","tags":["Public"],"summary":"Competition — public resources","description":"The \"competition\" operation on public resources.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"parameters":[{"name":"slug","in":"query","required":true,"schema":{"type":"string","minLength":1,"maxLength":120}},{"name":"eventId","in":"query","required":true,"schema":{"type":"string","minLength":1,"maxLength":80}}]}},"/public/submit-lead":{"post":{"operationId":"public.submitLead","tags":["Public"],"summary":"SubmitLead — public resources","description":"The \"submitLead\" operation on public resources.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"slug":{"type":"string","minLength":1,"maxLength":120},"kind":{"type":"string","enum":["contact","register","trial","custom","dropin"]},"name":{"type":"string","minLength":1,"maxLength":200},"email":{"type":"string","maxLength":200,"format":"email","pattern":"^(?!\\.)(?!.*\\.\\.)([A-Za-z0-9_'+\\-\\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\\-]*\\.)+[A-Za-z]{2,}$"},"phone":{"type":"string","maxLength":30},"message":{"type":"string","maxLength":2000},"preferredDate":{"type":"string","maxLength":80},"spaceSlug":{"type":"string","minLength":1,"maxLength":120},"lang":{"type":"string","enum":["pt","en","es"]},"company":{"type":"string","maxLength":200}},"required":["slug","kind","name"]}}}}}},"/push-tokens/register":{"post":{"operationId":"pushTokens.register","tags":["PushTokens"],"summary":"Register — push tokens","description":"The \"register\" operation on push tokens.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"token":{"type":"string","minLength":1,"maxLength":400},"platform":{"type":"string","enum":["ios","android"]},"deviceName":{"type":"string","maxLength":120}},"required":["token","platform"]}}}}}},"/push-tokens/unregister":{"post":{"operationId":"pushTokens.unregister","tags":["PushTokens"],"summary":"Unregister — push tokens","description":"The \"unregister\" operation on push tokens.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"token":{"type":"string","minLength":1,"maxLength":400}},"required":["token"]}}}}}},"/push-tokens/mine":{"get":{"operationId":"pushTokens.mine","tags":["PushTokens"],"summary":"Retrieve your push token","description":"Retrieve the push token linked to the authenticated caller (self-service).","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}}}},"/test-batteries":{"get":{"operationId":"testBatteries.list","tags":["TestBatteries"],"summary":"List test batteries","description":"List the test batteries in your organization. Org-scoped: only records in the authenticated organization are returned.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"parameters":[{"name":"includeInactive","in":"query","required":false,"schema":{"default":false,"type":"boolean"}}]},"post":{"operationId":"testBatteries.create","tags":["TestBatteries"],"summary":"Create a test battery","description":"Create a new test battery in your organization.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"name":{"type":"string","minLength":1,"maxLength":120},"abbreviation":{"default":null,"anyOf":[{"type":"string","maxLength":12},{"type":"null"}]},"description":{"default":null,"anyOf":[{"type":"string","maxLength":1000},{"type":"null"}]},"icon":{"default":null,"anyOf":[{"type":"string","maxLength":40},{"type":"null"}]},"captureBmi":{"default":false,"type":"boolean"},"resultVisibility":{"default":"staff_and_athlete","type":"string","enum":["staff_only","staff_and_athlete"]},"items":{"minItems":1,"maxItems":60,"type":"array","items":{"type":"object","properties":{"name":{"type":"string","minLength":1,"maxLength":120},"unit":{"default":null,"anyOf":[{"type":"string","maxLength":20},{"type":"null"}]},"valueKind":{"default":"number","type":"string","enum":["number","time_seconds","reps","text"]},"higherIsBetter":{"default":null,"anyOf":[{"type":"boolean"},{"type":"null"}]}},"required":["name"]}}},"required":["name","items"]}}}}}},"/test-batteries/{id}":{"patch":{"operationId":"testBatteries.update","tags":["TestBatteries"],"summary":"Update a test battery","description":"Apply a partial update to an existing test battery by id. Only the fields you send are changed.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"name":{"type":"string","minLength":1,"maxLength":120},"abbreviation":{"anyOf":[{"type":"string","maxLength":12},{"type":"null"}]},"description":{"anyOf":[{"type":"string","maxLength":1000},{"type":"null"}]},"icon":{"anyOf":[{"type":"string","maxLength":40},{"type":"null"}]},"captureBmi":{"type":"boolean"},"resultVisibility":{"type":"string","enum":["staff_only","staff_and_athlete"]},"items":{"minItems":1,"maxItems":60,"type":"array","items":{"type":"object","properties":{"name":{"type":"string","minLength":1,"maxLength":120},"unit":{"default":null,"anyOf":[{"type":"string","maxLength":20},{"type":"null"}]},"valueKind":{"default":"number","type":"string","enum":["number","time_seconds","reps","text"]},"higherIsBetter":{"default":null,"anyOf":[{"type":"boolean"},{"type":"null"}]}},"required":["name"]}},"id":{"type":"string","minLength":1}},"required":["id"]}}}},"parameters":[{"name":"id","in":"path","required":true,"description":"Unique id of the test battery.","schema":{"type":"string"}}]}},"/test-batteries/deactivate":{"post":{"operationId":"testBatteries.deactivate","tags":["TestBatteries"],"summary":"Deactivate — test batteries","description":"The \"deactivate\" operation on test batteries.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"id":{"type":"string","minLength":1}},"required":["id"]}}}}}},"/test-batteries/record":{"post":{"operationId":"testBatteries.record","tags":["TestBatteries"],"summary":"Record — test batteries","description":"The \"record\" operation on test batteries.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object"}}}}}},"/test-batteries/history":{"get":{"operationId":"testBatteries.history","tags":["TestBatteries"],"summary":"History — test batteries","description":"The \"history\" operation on test batteries.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"parameters":[{"name":"batteryId","in":"query","required":true,"schema":{"type":"string","minLength":1}},{"name":"memberId","in":"query","required":true,"schema":{"type":"string","minLength":1}},{"name":"limit","in":"query","required":false,"schema":{"default":10,"type":"integer","minimum":1,"maximum":50}}]}},"/test-batteries/pending":{"get":{"operationId":"testBatteries.pending","tags":["TestBatteries"],"summary":"Pending — test batteries","description":"The \"pending\" operation on test batteries.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}}}},"/test-batteries/mine":{"get":{"operationId":"testBatteries.mine","tags":["TestBatteries"],"summary":"Retrieve your test battery","description":"Retrieve the test battery linked to the authenticated caller (self-service).","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}}}},"/uploads/upload-avatar":{"post":{"operationId":"uploads.uploadAvatar","tags":["Uploads"],"summary":"UploadAvatar — uploads","description":"The \"uploadAvatar\" operation on uploads.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"dataUrl":{"type":"string"},"base64":{"type":"string"},"contentType":{"type":"string"}}}}}}}},"/uploads/upload-org-logo":{"post":{"operationId":"uploads.uploadOrgLogo","tags":["Uploads"],"summary":"UploadOrgLogo — uploads","description":"The \"uploadOrgLogo\" operation on uploads.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"dataUrl":{"type":"string"},"base64":{"type":"string"},"contentType":{"type":"string"}}}}}}}},"/uploads/upload-org-favicon":{"post":{"operationId":"uploads.uploadOrgFavicon","tags":["Uploads"],"summary":"UploadOrgFavicon — uploads","description":"The \"uploadOrgFavicon\" operation on uploads.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"dataUrl":{"type":"string"},"base64":{"type":"string"},"contentType":{"type":"string"}}}}}}}},"/uploads/upload-space-logo":{"post":{"operationId":"uploads.uploadSpaceLogo","tags":["Uploads"],"summary":"UploadSpaceLogo — uploads","description":"The \"uploadSpaceLogo\" operation on uploads.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"dataUrl":{"type":"string"},"base64":{"type":"string"},"contentType":{"type":"string"},"spaceId":{"type":"string"}}}}}}}},"/uploads/upload-org-og-image":{"post":{"operationId":"uploads.uploadOrgOgImage","tags":["Uploads"],"summary":"UploadOrgOgImage — uploads","description":"The \"uploadOrgOgImage\" operation on uploads.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"dataUrl":{"type":"string"},"base64":{"type":"string"},"contentType":{"type":"string"}}}}}}}},"/uploads/upload-dropin-photo":{"post":{"operationId":"uploads.uploadDropinPhoto","tags":["Uploads"],"summary":"UploadDropinPhoto — uploads","description":"The \"uploadDropinPhoto\" operation on uploads.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"dataUrl":{"type":"string"},"base64":{"type":"string"},"contentType":{"type":"string"}}}}}}}},"/uploads/upload-member-photo":{"post":{"operationId":"uploads.uploadMemberPhoto","tags":["Uploads"],"summary":"UploadMemberPhoto — uploads","description":"The \"uploadMemberPhoto\" operation on uploads.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"dataUrl":{"type":"string"},"base64":{"type":"string"},"contentType":{"type":"string"},"memberId":{"type":"string","minLength":1}},"required":["memberId"]}}}}}},"/uploads/upload-coach-photo":{"post":{"operationId":"uploads.uploadCoachPhoto","tags":["Uploads"],"summary":"UploadCoachPhoto — uploads","description":"The \"uploadCoachPhoto\" operation on uploads.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"dataUrl":{"type":"string"},"base64":{"type":"string"},"contentType":{"type":"string"},"coachId":{"type":"string","minLength":1}},"required":["coachId"]}}}}}},"/screen/feed":{"get":{"operationId":"screen.feed","tags":["Screen"],"summary":"Feed — screen","description":"The \"feed\" operation on screen.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}}}},"/email-templates":{"get":{"operationId":"emailTemplates.list","tags":["EmailTemplates"],"summary":"List email templates","description":"List the email templates in your organization. Org-scoped: only records in the authenticated organization are returned.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}}},"post":{"operationId":"emailTemplates.create","tags":["EmailTemplates"],"summary":"Create a email template","description":"Create a new email template in your organization.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"name":{"type":"string","minLength":1,"maxLength":120},"subject":{"type":"string","minLength":1,"maxLength":200},"body":{"type":"string","minLength":1,"maxLength":20000}},"required":["name","subject","body"]}}}}}},"/email-templates/{id}":{"patch":{"operationId":"emailTemplates.update","tags":["EmailTemplates"],"summary":"Update a email template","description":"Apply a partial update to an existing email template by id. Only the fields you send are changed.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"name":{"type":"string","minLength":1,"maxLength":120},"subject":{"type":"string","minLength":1,"maxLength":200},"body":{"type":"string","minLength":1,"maxLength":20000},"id":{"type":"string","minLength":1}},"required":["name","subject","body","id"]}}}},"parameters":[{"name":"id","in":"path","required":true,"description":"Unique id of the email template.","schema":{"type":"string"}}]},"delete":{"operationId":"emailTemplates.delete","tags":["EmailTemplates"],"summary":"Delete a email template","description":"Permanently delete a email template by id.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"id":{"type":"string","minLength":1}},"required":["id"]}}}},"parameters":[{"name":"id","in":"path","required":true,"description":"Unique id of the email template.","schema":{"type":"string"}}]}},"/milestones":{"get":{"operationId":"milestones.list","tags":["Milestones"],"summary":"List milestone rules","description":"List the milestone rules in your organization. Org-scoped: only records in the authenticated organization are returned.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}}},"post":{"operationId":"milestones.create","tags":["Milestones"],"summary":"Create a milestone rule","description":"Create a new milestone rule in your organization.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"name":{"type":"string","minLength":1,"maxLength":160},"trigger":{"default":"custom","type":"string","enum":["streak_weeks","anniversary_years","pr_count","checkin_count","custom"]},"threshold":{"default":0,"type":"integer","minimum":0,"maximum":100000},"messageSubject":{"type":"string","minLength":1,"maxLength":200},"messageBody":{"type":"string","minLength":1,"maxLength":20000}},"required":["name","messageSubject","messageBody"]}}}}}},"/milestones/{id}":{"patch":{"operationId":"milestones.update","tags":["Milestones"],"summary":"Update a milestone rule","description":"Apply a partial update to an existing milestone rule by id. Only the fields you send are changed.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"id":{"type":"string","minLength":1},"name":{"type":"string","minLength":1,"maxLength":160},"trigger":{"type":"string","enum":["streak_weeks","anniversary_years","pr_count","checkin_count","custom"]},"threshold":{"type":"integer","minimum":0,"maximum":100000},"messageSubject":{"type":"string","minLength":1,"maxLength":200},"messageBody":{"type":"string","minLength":1,"maxLength":20000}},"required":["id"]}}}},"parameters":[{"name":"id","in":"path","required":true,"description":"Unique id of the milestone rule.","schema":{"type":"string"}}]},"delete":{"operationId":"milestones.delete","tags":["Milestones"],"summary":"Delete a milestone rule","description":"Permanently delete a milestone rule by id.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"id":{"type":"string","minLength":1}},"required":["id"]}}}},"parameters":[{"name":"id","in":"path","required":true,"description":"Unique id of the milestone rule.","schema":{"type":"string"}}]}},"/milestones/set-active":{"post":{"operationId":"milestones.setActive","tags":["Milestones"],"summary":"SetActive — milestone rules","description":"The \"setActive\" operation on milestone rules.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"id":{"type":"string","minLength":1},"active":{"type":"boolean"}},"required":["id","active"]}}}}}},"/tasks":{"get":{"operationId":"tasks.list","tags":["Tasks"],"summary":"List tasks","description":"List the tasks in your organization. Org-scoped: only records in the authenticated organization are returned.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"parameters":[{"name":"status","in":"query","required":false,"schema":{"type":"string","enum":["open","done"]}},{"name":"assigneeCoachId","in":"query","required":false,"schema":{"type":"string","minLength":1}}]},"post":{"operationId":"tasks.create","tags":["Tasks"],"summary":"Create a task","description":"Create a new task in your organization.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"title":{"type":"string","minLength":1,"maxLength":200},"description":{"anyOf":[{"type":"string","maxLength":2000},{"type":"null"}]},"assigneeCoachId":{"anyOf":[{"type":"string","minLength":1},{"type":"null"}]},"dueDate":{"anyOf":[{"type":"string","pattern":"^\\d{4}-\\d{2}-\\d{2}$"},{"type":"null"}]},"priority":{"default":"medium","type":"string","enum":["high","medium","low"]}},"required":["title"]}}}}}},"/tasks/{id}":{"patch":{"operationId":"tasks.update","tags":["Tasks"],"summary":"Update a task","description":"Apply a partial update to an existing task by id. Only the fields you send are changed.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"id":{"type":"string","minLength":1},"data":{"type":"object","properties":{"title":{"type":"string","minLength":1,"maxLength":200},"description":{"anyOf":[{"type":"string","maxLength":2000},{"type":"null"}]},"assigneeCoachId":{"anyOf":[{"type":"string","minLength":1},{"type":"null"}]},"dueDate":{"anyOf":[{"type":"string","pattern":"^\\d{4}-\\d{2}-\\d{2}$"},{"type":"null"}]},"priority":{"type":"string","enum":["high","medium","low"]}}}},"required":["id","data"]}}}},"parameters":[{"name":"id","in":"path","required":true,"description":"Unique id of the task.","schema":{"type":"string"}}]},"delete":{"operationId":"tasks.delete","tags":["Tasks"],"summary":"Delete a task","description":"Permanently delete a task by id.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"id":{"type":"string","minLength":1}},"required":["id"]}}}},"parameters":[{"name":"id","in":"path","required":true,"description":"Unique id of the task.","schema":{"type":"string"}}]}},"/tasks/set-status":{"post":{"operationId":"tasks.setStatus","tags":["Tasks"],"summary":"SetStatus — tasks","description":"The \"setStatus\" operation on tasks.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"id":{"type":"string","minLength":1},"status":{"type":"string","enum":["open","done"]}},"required":["id","status"]}}}}}},"/competence/mine":{"get":{"operationId":"competence.mine","tags":["Competence"],"summary":"Retrieve your competence","description":"Retrieve the competence linked to the authenticated caller (self-service).","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}}}},"/competence/record":{"post":{"operationId":"competence.record","tags":["Competence"],"summary":"Record — competence","description":"The \"record\" operation on competence.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"surface":{"type":"string","enum":["classes","members","plans","payments","staff","classTypes","fiscal"]},"aided":{"default":false,"type":"boolean"}},"required":["surface"]}}}}}},"/competence/dismiss":{"post":{"operationId":"competence.dismiss","tags":["Competence"],"summary":"Dismiss — competence","description":"The \"dismiss\" operation on competence.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"surface":{"type":"string","enum":["classes","members","plans","payments","staff","classTypes","fiscal"]}},"required":["surface"]}}}}}},"/competence/undismiss":{"post":{"operationId":"competence.undismiss","tags":["Competence"],"summary":"Undismiss — competence","description":"The \"undismiss\" operation on competence.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"surface":{"type":"string","enum":["classes","members","plans","payments","staff","classTypes","fiscal"]}}}}}}}},"/sample-data/status":{"get":{"operationId":"sampleData.status","tags":["SampleData"],"summary":"Status — sample data","description":"The \"status\" operation on sample data.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}}}},"/sample-data/seed":{"post":{"operationId":"sampleData.seed","tags":["SampleData"],"summary":"Seed — sample data","description":"The \"seed\" operation on sample data.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}}}},"/sample-data/wipe":{"post":{"operationId":"sampleData.wipe","tags":["SampleData"],"summary":"Wipe — sample data","description":"The \"wipe\" operation on sample data.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}}}},"/tour/state":{"get":{"operationId":"tour.state","tags":["Tour"],"summary":"State — tour","description":"The \"state\" operation on tour.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}}}},"/tour/advance":{"post":{"operationId":"tour.advance","tags":["Tour"],"summary":"Advance — tour","description":"The \"advance\" operation on tour.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"stepIndex":{"type":"integer","minimum":0,"maximum":6}},"required":["stepIndex"]}}}}}},"/tour/skip":{"post":{"operationId":"tour.skip","tags":["Tour"],"summary":"Skip — tour","description":"The \"skip\" operation on tour.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}}}},"/tour/restart":{"post":{"operationId":"tour.restart","tags":["Tour"],"summary":"Restart — tour","description":"The \"restart\" operation on tour.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}}}},"/onboarding-telemetry/track":{"post":{"operationId":"onboardingTelemetry.track","tags":["OnboardingTelemetry"],"summary":"Track — onboarding telemetry","description":"The \"track\" operation on onboarding telemetry.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"event":{"type":"string","enum":["tour_started","tour_step","tour_skipped","tour_finished","setup_step_opened","setup_step_done","sample_seeded","sample_wiped","competence_proved"]},"step":{"default":null,"anyOf":[{"type":"string","maxLength":60},{"type":"null"}]}},"required":["event"]}}}}}},"/onboarding-telemetry/funnel":{"get":{"operationId":"onboardingTelemetry.funnel","tags":["OnboardingTelemetry"],"summary":"Funnel — onboarding telemetry","description":"The \"funnel\" operation on onboarding telemetry.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"parameters":[{"name":"days","in":"query","required":false,"schema":{"default":90,"type":"integer","minimum":1,"maximum":365}}]}},"/media":{"get":{"operationId":"media.list","tags":["Media"],"summary":"List media items","description":"List the media items in your organization. Org-scoped: only records in the authenticated organization are returned.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}}},"post":{"operationId":"media.create","tags":["Media"],"summary":"Create a media item","description":"Create a new media item in your organization.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"name":{"type":"string","minLength":1,"maxLength":200},"type":{"default":"document","type":"string","enum":["image","video","document"]},"folder":{"default":"Documents","type":"string","minLength":1,"maxLength":80},"url":{"type":"string","format":"uri"},"sizeBytes":{"default":0,"type":"integer","minimum":0,"maximum":9007199254740991}},"required":["name"]}}}}}},"/media/{id}":{"delete":{"operationId":"media.delete","tags":["Media"],"summary":"Delete a media item","description":"Permanently delete a media item by id.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"id":{"type":"string","minLength":1}},"required":["id"]}}}},"parameters":[{"name":"id","in":"path","required":true,"description":"Unique id of the media item.","schema":{"type":"string"}}]}},"/me/profile":{"get":{"operationId":"me.profile","tags":["Me"],"summary":"Profile — profile","description":"The \"profile\" operation on profile.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}}}},"/platform/session":{"get":{"operationId":"platform.session","tags":["Platform"],"summary":"Session — platform","description":"The \"session\" operation on platform.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}}}},"/platform/organizations":{"get":{"operationId":"platform.organizations","tags":["Platform"],"summary":"Organizations — platform","description":"The \"organizations\" operation on platform.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}}}},"/platform/staff-access":{"get":{"operationId":"platform.staffAccess","tags":["Platform"],"summary":"StaffAccess — platform","description":"The \"staffAccess\" operation on platform.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}}}},"/platform/health":{"get":{"operationId":"platform.health","tags":["Platform"],"summary":"Health — platform","description":"The \"health\" operation on platform.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}}}},"/platform/organization-detail":{"get":{"operationId":"platform.organizationDetail","tags":["Platform"],"summary":"OrganizationDetail — platform","description":"The \"organizationDetail\" operation on platform.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"parameters":[{"name":"organizationId","in":"query","required":true,"schema":{"type":"string","minLength":1}}]}},"/platform/support-entries":{"get":{"operationId":"platform.supportEntries","tags":["Platform"],"summary":"SupportEntries — platform","description":"The \"supportEntries\" operation on platform.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"parameters":[{"name":"organizationId","in":"query","required":false,"schema":{"type":"string","minLength":1}},{"name":"limit","in":"query","required":false,"schema":{"default":50,"type":"integer","minimum":1,"maximum":200}}]}},"/platform/analytics":{"get":{"operationId":"platform.analytics","tags":["Platform"],"summary":"Analytics — platform","description":"The \"analytics\" operation on platform.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}}}},"/platform/message-organizations":{"post":{"operationId":"platform.messageOrganizations","tags":["Platform"],"summary":"MessageOrganizations — platform","description":"The \"messageOrganizations\" operation on platform.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"organizationIds":{"minItems":1,"maxItems":200,"type":"array","items":{"type":"string","minLength":1}},"subject":{"type":"string","minLength":3,"maxLength":200},"body":{"type":"string","minLength":10,"maxLength":5000}},"required":["organizationIds","subject","body"]}}}}}},"/platform/extend-trial":{"post":{"operationId":"platform.extendTrial","tags":["Platform"],"summary":"ExtendTrial — platform","description":"The \"extendTrial\" operation on platform.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"organizationId":{"type":"string","minLength":1},"days":{"type":"integer","minimum":1,"maximum":365},"reason":{"type":"string","minLength":12,"maxLength":500}},"required":["organizationId","days","reason"]}}}}}},"/platform/grant-courtesy":{"post":{"operationId":"platform.grantCourtesy","tags":["Platform"],"summary":"GrantCourtesy — platform","description":"The \"grantCourtesy\" operation on platform.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"organizationId":{"type":"string","minLength":1},"tier":{"type":"string","enum":["trainer","starter","growth","scale","enterprise"]},"reason":{"type":"string","minLength":12,"maxLength":500}},"required":["organizationId","tier","reason"]}}}}}},"/platform/end-courtesy":{"post":{"operationId":"platform.endCourtesy","tags":["Platform"],"summary":"EndCourtesy — platform","description":"The \"endCourtesy\" operation on platform.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"organizationId":{"type":"string","minLength":1},"reason":{"type":"string","minLength":12,"maxLength":500}},"required":["organizationId","reason"]}}}}}},"/platform/reactivate":{"post":{"operationId":"platform.reactivate","tags":["Platform"],"summary":"Reactivate — platform","description":"The \"reactivate\" operation on platform.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"organizationId":{"type":"string","minLength":1},"reason":{"type":"string","minLength":12,"maxLength":500}},"required":["organizationId","reason"]}}}}}},"/platform/athletes":{"get":{"operationId":"platform.athletes","tags":["Platform"],"summary":"Athletes — platform","description":"The \"athletes\" operation on platform.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"parameters":[{"name":"q","in":"query","required":false,"schema":{"type":"string","maxLength":120}},{"name":"soloOnly","in":"query","required":false,"schema":{"type":"boolean"}},{"name":"limit","in":"query","required":false,"schema":{"default":50,"type":"integer","minimum":1,"maximum":200}}]}},"/platform/organization-athletes":{"get":{"operationId":"platform.organizationAthletes","tags":["Platform"],"summary":"OrganizationAthletes — platform","description":"The \"organizationAthletes\" operation on platform.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"parameters":[{"name":"organizationId","in":"query","required":true,"schema":{"type":"string","minLength":1}}]}},"/platform/athlete-detail":{"get":{"operationId":"platform.athleteDetail","tags":["Platform"],"summary":"AthleteDetail — platform","description":"The \"athleteDetail\" operation on platform.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"parameters":[{"name":"userId","in":"query","required":true,"schema":{"type":"string","minLength":1}}]}},"/platform/athlete-personal-layer":{"post":{"operationId":"platform.athletePersonalLayer","tags":["Platform"],"summary":"AthletePersonalLayer — platform","description":"The \"athletePersonalLayer\" operation on platform.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"userId":{"type":"string","minLength":1}},"required":["userId"]}}}}}},"/modalities/active":{"get":{"operationId":"modalities.active","tags":["Modalities"],"summary":"Active — modalities","description":"The \"active\" operation on modalities.","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}}}},"/practice/mine":{"get":{"operationId":"practice.mine","tags":["Practice"],"summary":"Retrieve your practice","description":"Retrieve the practice linked to the authenticated caller (self-service).","security":[{"apiKeyAuth":[]},{"bearerAuth":[]},{"cookieAuth":[]}],"responses":{"200":{"description":"Success. Returns the requested resource(s) as JSON.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"},"404":{"$ref":"#/components/responses/Error"}},"parameters":[{"name":"modalities","in":"query","required":false,"schema":{"maxItems":24,"type":"array","items":{"type":"string","minLength":1}}}]}}},"components":{"securitySchemes":{"apiKeyAuth":{"type":"http","scheme":"bearer","bearerFormat":"API Key","description":"**Partners / server-to-server.** Send your organization API key as `Authorization: Bearer vk_live_…` (Stripe-style). Create and manage keys in Settings → API Keys; every request is scoped and metered to that key's organization."},"bearerAuth":{"type":"http","scheme":"bearer","bearerFormat":"JWT","description":"**First-party session (OAuth / Better Auth).** Vytal's own apps authenticate with a session token via `Authorization: Bearer <token>` — the web apps use tRPC with this session, native/mobile and internal tooling can call `/v1` REST with the same bearer. Not issued to third parties (partners use an API key)."},"cookieAuth":{"type":"apiKey","in":"cookie","name":"better-auth.session_token","description":"First-party session **cookie** (browser). Equivalent to the bearer session for same-site web apps. External integrations must use an API key."}},"responses":{"Error":{"description":"Error — `{ error: CODE, message }` with the matching HTTP status.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"},"examples":{"unauthorized":{"value":{"error":"UNAUTHORIZED","message":"Sign in required."}},"forbidden":{"value":{"error":"FORBIDDEN","message":"Not allowed for this organization."}},"notFound":{"value":{"error":"NOT_FOUND","message":"Resource not found."}},"badRequest":{"value":{"error":"BAD_REQUEST","message":"Invalid input."}}}}}}},"schemas":{"Error":{"type":"object","required":["error","message"],"properties":{"error":{"type":"string","description":"Stable machine-readable code (e.g. NOT_FOUND)."},"message":{"type":"string","description":"Human-readable explanation."}}}}}}