{"openapi":"3.1.0","info":{"title":"Weesify API","version":"1.0.0","description":"Links, QR codes, bio pages, contacts, forms, store, courses, bookings, events, analytics and webhooks for your Weesify workspace. Tokens are made in Settings → Developers. Money is in minor units with its currency."},"servers":[{"url":"https://weesify.com/api/v1"}],"tags":[{"name":"Workspace"},{"name":"Links"},{"name":"QR codes"},{"name":"Contacts"},{"name":"Forms"},{"name":"Store"},{"name":"Bio pages & sites"},{"name":"Events"},{"name":"Bookings & meetings"},{"name":"Courses"},{"name":"Websites"},{"name":"Blog"},{"name":"Analytics"},{"name":"Webhooks"}],"components":{"securitySchemes":{"bearer":{"type":"http","scheme":"bearer","description":"A workspace API token: wsy_…"}},"schemas":{"Item":{"type":"object","required":["data"],"properties":{"data":{"type":"object"}}},"List":{"type":"object","required":["data","meta"],"properties":{"data":{"type":"array","items":{"type":"object"}},"meta":{"type":"object","required":["limit","next_cursor"],"properties":{"limit":{"type":"integer"},"next_cursor":{"type":["string","null"]}}}}},"Problem":{"type":"object","required":["type","title","status","detail"],"properties":{"type":{"type":"string","format":"uri"},"title":{"type":"string"},"status":{"type":"integer"},"detail":{"type":"string"},"errors":{"type":"object","additionalProperties":{"type":"array","items":{"type":"string"}}}}}},"responses":{"Problem":{"description":"An RFC 9457 problem document","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Problem"}}}}}},"x-scopes":{"links:read":"Read links: Short links and their click counts","links:write":"Manage links: Create, change and delete short links","qr:read":"Read QR codes: QR codes and their scans","qr:write":"Manage QR codes: Create, change and delete QR codes","contacts:read":"Read contacts: Contacts, their tags and details","contacts:write":"Manage contacts: Add, update, tag and delete contacts","forms:read":"Read form responses: Forms and what people submitted","store:read":"Read store: Products and orders (with buyers’ details)","sites:read":"Read pages and websites: Your pages, HTML websites, their files, deployments, domains and usage","sites:write":"Manage websites: Create HTML websites, upload and change files, settings and custom domains","sites:deploy":"Deploy websites: Publish HTML websites and roll them back","analytics:read":"Read analytics: Clicks and views over time","events:read":"Read events: Events, dates, ticket types, agenda, speakers, sponsors, exhibitors and venues","events:write":"Manage events: Create and change events and move them through their lifecycle","events:attendees":"Read registrations and attendees: Registrations, attendees, tickets and ticket orders (with people’s details)","events:checkin":"Check people in: Scan tickets and read check-ins","bookings:read":"Read bookings: Bookable services and bookings (with people’s details)","courses:read":"Read courses: Courses and their students’ enrolments and progress","webhooks:read":"Read webhooks: Webhook endpoints and their delivery log","webhooks:write":"Manage webhooks: Add, change, test and remove webhook endpoints, and send deliveries again","blog:read":"Read blog: Blog posts (drafts included) and categories"},"paths":{"/workspace":{"get":{"operationId":"getWorkspace","tags":["Workspace"],"summary":"The workspace this token belongs to, and the token’s scopes","security":[{"bearer":[]}],"responses":{"200":{"description":"OK","headers":{"X-RateLimit-Limit":{"description":"Requests a minute this token may make","schema":{"type":"string"}},"X-RateLimit-Remaining":{"description":"Requests left this minute","schema":{"type":"string"}},"X-RateLimit-Reset":{"description":"Unix time when the minute resets","schema":{"type":"string"}},"RateLimit":{"description":"IETF form: limit, remaining, reset (seconds)","schema":{"type":"string"}},"RateLimit-Policy":{"description":"The policy, e.g. 120;w=60","schema":{"type":"string"}},"X-Request-Id":{"description":"This request’s id, as shown in your request log","schema":{"type":"string"}}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Item"}}}},"400":{"$ref":"#/components/responses/Problem"},"401":{"$ref":"#/components/responses/Problem"},"402":{"$ref":"#/components/responses/Problem"},"403":{"$ref":"#/components/responses/Problem"},"404":{"$ref":"#/components/responses/Problem"},"409":{"$ref":"#/components/responses/Problem"},"422":{"$ref":"#/components/responses/Problem"},"429":{"$ref":"#/components/responses/Problem"}}}},"/links":{"get":{"operationId":"getLinks","tags":["Links"],"summary":"List short links, newest first","security":[{"bearer":[]}],"responses":{"200":{"description":"OK","headers":{"X-RateLimit-Limit":{"description":"Requests a minute this token may make","schema":{"type":"string"}},"X-RateLimit-Remaining":{"description":"Requests left this minute","schema":{"type":"string"}},"X-RateLimit-Reset":{"description":"Unix time when the minute resets","schema":{"type":"string"}},"RateLimit":{"description":"IETF form: limit, remaining, reset (seconds)","schema":{"type":"string"}},"RateLimit-Policy":{"description":"The policy, e.g. 120;w=60","schema":{"type":"string"}},"X-Request-Id":{"description":"This request’s id, as shown in your request log","schema":{"type":"string"}}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/List"}}}},"400":{"$ref":"#/components/responses/Problem"},"401":{"$ref":"#/components/responses/Problem"},"402":{"$ref":"#/components/responses/Problem"},"403":{"$ref":"#/components/responses/Problem"},"404":{"$ref":"#/components/responses/Problem"},"409":{"$ref":"#/components/responses/Problem"},"422":{"$ref":"#/components/responses/Problem"},"429":{"$ref":"#/components/responses/Problem"}},"description":"Scope: links:read","x-scope":"links:read","parameters":[{"name":"search","in":"query","required":false,"description":"Matches the back-half, destination or title","schema":{"type":"string"}},{"name":"status","in":"query","required":false,"description":"active (default), archived or all","schema":{"type":"string"}},{"name":"limit","in":"query","required":false,"description":"1-100 (25)","schema":{"type":"integer","minimum":1,"maximum":100,"default":25}},{"name":"cursor","in":"query","required":false,"description":"next_cursor from the previous page","schema":{"type":"string"}}]},"post":{"operationId":"postLinks","tags":["Links"],"summary":"Create a short link","security":[{"bearer":[]}],"responses":{"201":{"description":"OK","headers":{"X-RateLimit-Limit":{"description":"Requests a minute this token may make","schema":{"type":"string"}},"X-RateLimit-Remaining":{"description":"Requests left this minute","schema":{"type":"string"}},"X-RateLimit-Reset":{"description":"Unix time when the minute resets","schema":{"type":"string"}},"RateLimit":{"description":"IETF form: limit, remaining, reset (seconds)","schema":{"type":"string"}},"RateLimit-Policy":{"description":"The policy, e.g. 120;w=60","schema":{"type":"string"}},"X-Request-Id":{"description":"This request’s id, as shown in your request log","schema":{"type":"string"}}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Item"}}}},"400":{"$ref":"#/components/responses/Problem"},"401":{"$ref":"#/components/responses/Problem"},"402":{"$ref":"#/components/responses/Problem"},"403":{"$ref":"#/components/responses/Problem"},"404":{"$ref":"#/components/responses/Problem"},"409":{"$ref":"#/components/responses/Problem"},"422":{"$ref":"#/components/responses/Problem"},"429":{"$ref":"#/components/responses/Problem"}},"description":"Scope: links:write","x-scope":"links:write","parameters":[{"name":"Idempotency-Key","in":"header","required":false,"description":"Retry safely: the same key and body run once (24 hours)","schema":{"type":"string","maxLength":80,"pattern":"^[A-Za-z0-9_.:-]{1,80}$"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"destination_url":{"description":"Where it goes (https)"},"alias":{"description":"The back-half; random if empty"},"title":{"description":"Only you see it"},"domain_id":{"description":"One of your domains; weesify.com if empty"},"redirect_status":{"description":"301, 302, 307 or 308"},"starts_at":{"description":"ISO 8601"},"ends_at":{"description":"ISO 8601"},"click_limit":{"description":"Integer"},"utm":{"description":"{source, medium, campaign, term, content}"},"forward_query":{"description":"Boolean"}},"required":["destination_url"]}}}}}},"/links/{id}":{"get":{"operationId":"getLinksId","tags":["Links"],"summary":"One short link","security":[{"bearer":[]}],"responses":{"200":{"description":"OK","headers":{"X-RateLimit-Limit":{"description":"Requests a minute this token may make","schema":{"type":"string"}},"X-RateLimit-Remaining":{"description":"Requests left this minute","schema":{"type":"string"}},"X-RateLimit-Reset":{"description":"Unix time when the minute resets","schema":{"type":"string"}},"RateLimit":{"description":"IETF form: limit, remaining, reset (seconds)","schema":{"type":"string"}},"RateLimit-Policy":{"description":"The policy, e.g. 120;w=60","schema":{"type":"string"}},"X-Request-Id":{"description":"This request’s id, as shown in your request log","schema":{"type":"string"}}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Item"}}}},"400":{"$ref":"#/components/responses/Problem"},"401":{"$ref":"#/components/responses/Problem"},"402":{"$ref":"#/components/responses/Problem"},"403":{"$ref":"#/components/responses/Problem"},"404":{"$ref":"#/components/responses/Problem"},"409":{"$ref":"#/components/responses/Problem"},"422":{"$ref":"#/components/responses/Problem"},"429":{"$ref":"#/components/responses/Problem"}},"description":"Scope: links:read","x-scope":"links:read","parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","pattern":"^[0-9a-z]{26}$"}}]},"patch":{"operationId":"patchLinksId","tags":["Links"],"summary":"Change a short link (send only what changes); archived: true archives it","security":[{"bearer":[]}],"responses":{"200":{"description":"OK","headers":{"X-RateLimit-Limit":{"description":"Requests a minute this token may make","schema":{"type":"string"}},"X-RateLimit-Remaining":{"description":"Requests left this minute","schema":{"type":"string"}},"X-RateLimit-Reset":{"description":"Unix time when the minute resets","schema":{"type":"string"}},"RateLimit":{"description":"IETF form: limit, remaining, reset (seconds)","schema":{"type":"string"}},"RateLimit-Policy":{"description":"The policy, e.g. 120;w=60","schema":{"type":"string"}},"X-Request-Id":{"description":"This request’s id, as shown in your request log","schema":{"type":"string"}}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Item"}}}},"400":{"$ref":"#/components/responses/Problem"},"401":{"$ref":"#/components/responses/Problem"},"402":{"$ref":"#/components/responses/Problem"},"403":{"$ref":"#/components/responses/Problem"},"404":{"$ref":"#/components/responses/Problem"},"409":{"$ref":"#/components/responses/Problem"},"422":{"$ref":"#/components/responses/Problem"},"429":{"$ref":"#/components/responses/Problem"}},"description":"Scope: links:write","x-scope":"links:write","parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","pattern":"^[0-9a-z]{26}$"}}],"requestBody":{"required":false,"content":{"application/json":{"schema":{"type":"object","properties":{"destination_url":{"description":"destination_url"},"alias":{"description":"alias"},"title":{"description":"title"},"archived":{"description":"Boolean"}}}}}}},"delete":{"operationId":"deleteLinksId","tags":["Links"],"summary":"Delete a short link (its address can be claimed again)","security":[{"bearer":[]}],"responses":{"204":{"description":"Deleted","headers":{"X-RateLimit-Limit":{"description":"Requests a minute this token may make","schema":{"type":"string"}},"X-RateLimit-Remaining":{"description":"Requests left this minute","schema":{"type":"string"}},"X-RateLimit-Reset":{"description":"Unix time when the minute resets","schema":{"type":"string"}},"RateLimit":{"description":"IETF form: limit, remaining, reset (seconds)","schema":{"type":"string"}},"RateLimit-Policy":{"description":"The policy, e.g. 120;w=60","schema":{"type":"string"}},"X-Request-Id":{"description":"This request’s id, as shown in your request log","schema":{"type":"string"}}}},"400":{"$ref":"#/components/responses/Problem"},"401":{"$ref":"#/components/responses/Problem"},"402":{"$ref":"#/components/responses/Problem"},"403":{"$ref":"#/components/responses/Problem"},"404":{"$ref":"#/components/responses/Problem"},"409":{"$ref":"#/components/responses/Problem"},"422":{"$ref":"#/components/responses/Problem"},"429":{"$ref":"#/components/responses/Problem"}},"description":"Scope: links:write","x-scope":"links:write","parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","pattern":"^[0-9a-z]{26}$"}}]}},"/links/{id}/stats":{"get":{"operationId":"getLinksIdStats","tags":["Links"],"summary":"Clicks per day, top countries and referrers","security":[{"bearer":[]}],"responses":{"200":{"description":"OK","headers":{"X-RateLimit-Limit":{"description":"Requests a minute this token may make","schema":{"type":"string"}},"X-RateLimit-Remaining":{"description":"Requests left this minute","schema":{"type":"string"}},"X-RateLimit-Reset":{"description":"Unix time when the minute resets","schema":{"type":"string"}},"RateLimit":{"description":"IETF form: limit, remaining, reset (seconds)","schema":{"type":"string"}},"RateLimit-Policy":{"description":"The policy, e.g. 120;w=60","schema":{"type":"string"}},"X-Request-Id":{"description":"This request’s id, as shown in your request log","schema":{"type":"string"}}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Item"}}}},"400":{"$ref":"#/components/responses/Problem"},"401":{"$ref":"#/components/responses/Problem"},"402":{"$ref":"#/components/responses/Problem"},"403":{"$ref":"#/components/responses/Problem"},"404":{"$ref":"#/components/responses/Problem"},"409":{"$ref":"#/components/responses/Problem"},"422":{"$ref":"#/components/responses/Problem"},"429":{"$ref":"#/components/responses/Problem"}},"description":"Scope: links:read + analytics:read","x-scope":"links:read + analytics:read","parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","pattern":"^[0-9a-z]{26}$"}},{"name":"days","in":"query","required":false,"description":"7-90 (30)","schema":{"type":"string"}}]}},"/qr-codes":{"get":{"operationId":"getQrCodes","tags":["QR codes"],"summary":"List QR codes","security":[{"bearer":[]}],"responses":{"200":{"description":"OK","headers":{"X-RateLimit-Limit":{"description":"Requests a minute this token may make","schema":{"type":"string"}},"X-RateLimit-Remaining":{"description":"Requests left this minute","schema":{"type":"string"}},"X-RateLimit-Reset":{"description":"Unix time when the minute resets","schema":{"type":"string"}},"RateLimit":{"description":"IETF form: limit, remaining, reset (seconds)","schema":{"type":"string"}},"RateLimit-Policy":{"description":"The policy, e.g. 120;w=60","schema":{"type":"string"}},"X-Request-Id":{"description":"This request’s id, as shown in your request log","schema":{"type":"string"}}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/List"}}}},"400":{"$ref":"#/components/responses/Problem"},"401":{"$ref":"#/components/responses/Problem"},"402":{"$ref":"#/components/responses/Problem"},"403":{"$ref":"#/components/responses/Problem"},"404":{"$ref":"#/components/responses/Problem"},"409":{"$ref":"#/components/responses/Problem"},"422":{"$ref":"#/components/responses/Problem"},"429":{"$ref":"#/components/responses/Problem"}},"description":"Scope: qr:read","x-scope":"qr:read","parameters":[{"name":"campaign","in":"query","required":false,"description":"Only this campaign","schema":{"type":"string"}},{"name":"limit","in":"query","required":false,"description":"1-100 (25)","schema":{"type":"integer","minimum":1,"maximum":100,"default":25}},{"name":"cursor","in":"query","required":false,"description":"next_cursor from the previous page","schema":{"type":"string"}}]},"post":{"operationId":"postQrCodes","tags":["QR codes"],"summary":"Create a QR code","security":[{"bearer":[]}],"responses":{"201":{"description":"OK","headers":{"X-RateLimit-Limit":{"description":"Requests a minute this token may make","schema":{"type":"string"}},"X-RateLimit-Remaining":{"description":"Requests left this minute","schema":{"type":"string"}},"X-RateLimit-Reset":{"description":"Unix time when the minute resets","schema":{"type":"string"}},"RateLimit":{"description":"IETF form: limit, remaining, reset (seconds)","schema":{"type":"string"}},"RateLimit-Policy":{"description":"The policy, e.g. 120;w=60","schema":{"type":"string"}},"X-Request-Id":{"description":"This request’s id, as shown in your request log","schema":{"type":"string"}}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Item"}}}},"400":{"$ref":"#/components/responses/Problem"},"401":{"$ref":"#/components/responses/Problem"},"402":{"$ref":"#/components/responses/Problem"},"403":{"$ref":"#/components/responses/Problem"},"404":{"$ref":"#/components/responses/Problem"},"409":{"$ref":"#/components/responses/Problem"},"422":{"$ref":"#/components/responses/Problem"},"429":{"$ref":"#/components/responses/Problem"}},"description":"Scope: qr:write","x-scope":"qr:write","parameters":[{"name":"Idempotency-Key","in":"header","required":false,"description":"Retry safely: the same key and body run once (24 hours)","schema":{"type":"string","maxLength":80,"pattern":"^[A-Za-z0-9_.:-]{1,80}$"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"name":{"description":"name"},"type":{"description":"dynamic (default), url, text, email, phone, sms, wifi, vcard…"},"target":{"description":"{type: short_link|site, id} for dynamic codes"},"payload":{"description":"Content for static types, e.g. {url}"},"campaign":{"description":"campaign"},"placement":{"description":"Where it’s printed"}},"required":["name"]}}}}}},"/qr-codes/{id}":{"get":{"operationId":"getQrCodesId","tags":["QR codes"],"summary":"One QR code, with SVG and PNG download links","security":[{"bearer":[]}],"responses":{"200":{"description":"OK","headers":{"X-RateLimit-Limit":{"description":"Requests a minute this token may make","schema":{"type":"string"}},"X-RateLimit-Remaining":{"description":"Requests left this minute","schema":{"type":"string"}},"X-RateLimit-Reset":{"description":"Unix time when the minute resets","schema":{"type":"string"}},"RateLimit":{"description":"IETF form: limit, remaining, reset (seconds)","schema":{"type":"string"}},"RateLimit-Policy":{"description":"The policy, e.g. 120;w=60","schema":{"type":"string"}},"X-Request-Id":{"description":"This request’s id, as shown in your request log","schema":{"type":"string"}}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Item"}}}},"400":{"$ref":"#/components/responses/Problem"},"401":{"$ref":"#/components/responses/Problem"},"402":{"$ref":"#/components/responses/Problem"},"403":{"$ref":"#/components/responses/Problem"},"404":{"$ref":"#/components/responses/Problem"},"409":{"$ref":"#/components/responses/Problem"},"422":{"$ref":"#/components/responses/Problem"},"429":{"$ref":"#/components/responses/Problem"}},"description":"Scope: qr:read","x-scope":"qr:read","parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","pattern":"^[0-9a-z]{26}$"}}]},"patch":{"operationId":"patchQrCodesId","tags":["QR codes"],"summary":"Change a QR code","security":[{"bearer":[]}],"responses":{"200":{"description":"OK","headers":{"X-RateLimit-Limit":{"description":"Requests a minute this token may make","schema":{"type":"string"}},"X-RateLimit-Remaining":{"description":"Requests left this minute","schema":{"type":"string"}},"X-RateLimit-Reset":{"description":"Unix time when the minute resets","schema":{"type":"string"}},"RateLimit":{"description":"IETF form: limit, remaining, reset (seconds)","schema":{"type":"string"}},"RateLimit-Policy":{"description":"The policy, e.g. 120;w=60","schema":{"type":"string"}},"X-Request-Id":{"description":"This request’s id, as shown in your request log","schema":{"type":"string"}}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Item"}}}},"400":{"$ref":"#/components/responses/Problem"},"401":{"$ref":"#/components/responses/Problem"},"402":{"$ref":"#/components/responses/Problem"},"403":{"$ref":"#/components/responses/Problem"},"404":{"$ref":"#/components/responses/Problem"},"409":{"$ref":"#/components/responses/Problem"},"422":{"$ref":"#/components/responses/Problem"},"429":{"$ref":"#/components/responses/Problem"}},"description":"Scope: qr:write","x-scope":"qr:write","parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","pattern":"^[0-9a-z]{26}$"}}],"requestBody":{"required":false,"content":{"application/json":{"schema":{"type":"object","properties":{"name":{"description":"name"},"target":{"description":"target"},"campaign":{"description":"campaign"},"placement":{"description":"placement"}}}}}}},"delete":{"operationId":"deleteQrCodesId","tags":["QR codes"],"summary":"Delete a QR code","security":[{"bearer":[]}],"responses":{"204":{"description":"Deleted","headers":{"X-RateLimit-Limit":{"description":"Requests a minute this token may make","schema":{"type":"string"}},"X-RateLimit-Remaining":{"description":"Requests left this minute","schema":{"type":"string"}},"X-RateLimit-Reset":{"description":"Unix time when the minute resets","schema":{"type":"string"}},"RateLimit":{"description":"IETF form: limit, remaining, reset (seconds)","schema":{"type":"string"}},"RateLimit-Policy":{"description":"The policy, e.g. 120;w=60","schema":{"type":"string"}},"X-Request-Id":{"description":"This request’s id, as shown in your request log","schema":{"type":"string"}}}},"400":{"$ref":"#/components/responses/Problem"},"401":{"$ref":"#/components/responses/Problem"},"402":{"$ref":"#/components/responses/Problem"},"403":{"$ref":"#/components/responses/Problem"},"404":{"$ref":"#/components/responses/Problem"},"409":{"$ref":"#/components/responses/Problem"},"422":{"$ref":"#/components/responses/Problem"},"429":{"$ref":"#/components/responses/Problem"}},"description":"Scope: qr:write","x-scope":"qr:write","parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","pattern":"^[0-9a-z]{26}$"}}]}},"/contacts":{"get":{"operationId":"getContacts","tags":["Contacts"],"summary":"List contacts","security":[{"bearer":[]}],"responses":{"200":{"description":"OK","headers":{"X-RateLimit-Limit":{"description":"Requests a minute this token may make","schema":{"type":"string"}},"X-RateLimit-Remaining":{"description":"Requests left this minute","schema":{"type":"string"}},"X-RateLimit-Reset":{"description":"Unix time when the minute resets","schema":{"type":"string"}},"RateLimit":{"description":"IETF form: limit, remaining, reset (seconds)","schema":{"type":"string"}},"RateLimit-Policy":{"description":"The policy, e.g. 120;w=60","schema":{"type":"string"}},"X-Request-Id":{"description":"This request’s id, as shown in your request log","schema":{"type":"string"}}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/List"}}}},"400":{"$ref":"#/components/responses/Problem"},"401":{"$ref":"#/components/responses/Problem"},"402":{"$ref":"#/components/responses/Problem"},"403":{"$ref":"#/components/responses/Problem"},"404":{"$ref":"#/components/responses/Problem"},"409":{"$ref":"#/components/responses/Problem"},"422":{"$ref":"#/components/responses/Problem"},"429":{"$ref":"#/components/responses/Problem"}},"description":"Scope: contacts:read","x-scope":"contacts:read","parameters":[{"name":"email","in":"query","required":false,"description":"Exact address","schema":{"type":"string"}},{"name":"tag","in":"query","required":false,"description":"A tag id","schema":{"type":"string"}},{"name":"updated_since","in":"query","required":false,"description":"ISO 8601","schema":{"type":"string"}},{"name":"limit","in":"query","required":false,"description":"1-100 (25)","schema":{"type":"integer","minimum":1,"maximum":100,"default":25}},{"name":"cursor","in":"query","required":false,"description":"next_cursor from the previous page","schema":{"type":"string"}}]},"post":{"operationId":"postContacts","tags":["Contacts"],"summary":"Add a contact","security":[{"bearer":[]}],"responses":{"201":{"description":"OK","headers":{"X-RateLimit-Limit":{"description":"Requests a minute this token may make","schema":{"type":"string"}},"X-RateLimit-Remaining":{"description":"Requests left this minute","schema":{"type":"string"}},"X-RateLimit-Reset":{"description":"Unix time when the minute resets","schema":{"type":"string"}},"RateLimit":{"description":"IETF form: limit, remaining, reset (seconds)","schema":{"type":"string"}},"RateLimit-Policy":{"description":"The policy, e.g. 120;w=60","schema":{"type":"string"}},"X-Request-Id":{"description":"This request’s id, as shown in your request log","schema":{"type":"string"}}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Item"}}}},"400":{"$ref":"#/components/responses/Problem"},"401":{"$ref":"#/components/responses/Problem"},"402":{"$ref":"#/components/responses/Problem"},"403":{"$ref":"#/components/responses/Problem"},"404":{"$ref":"#/components/responses/Problem"},"409":{"$ref":"#/components/responses/Problem"},"422":{"$ref":"#/components/responses/Problem"},"429":{"$ref":"#/components/responses/Problem"}},"description":"Scope: contacts:write","x-scope":"contacts:write","parameters":[{"name":"Idempotency-Key","in":"header","required":false,"description":"Retry safely: the same key and body run once (24 hours)","schema":{"type":"string","maxLength":80,"pattern":"^[A-Za-z0-9_.:-]{1,80}$"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"email":{"description":"email"},"name":{"description":"name"},"phone":{"description":"phone"},"company":{"description":"company"},"stage":{"description":"subscriber, lead, customer, student, member"},"subscribed":{"description":"true only with the person’s consent (it is recorded)"},"tags":{"description":"Tag names"},"fields":{"description":"Custom fields by key"}},"required":["email"]}}}}}},"/contacts/{id}":{"get":{"operationId":"getContactsId","tags":["Contacts"],"summary":"One contact","security":[{"bearer":[]}],"responses":{"200":{"description":"OK","headers":{"X-RateLimit-Limit":{"description":"Requests a minute this token may make","schema":{"type":"string"}},"X-RateLimit-Remaining":{"description":"Requests left this minute","schema":{"type":"string"}},"X-RateLimit-Reset":{"description":"Unix time when the minute resets","schema":{"type":"string"}},"RateLimit":{"description":"IETF form: limit, remaining, reset (seconds)","schema":{"type":"string"}},"RateLimit-Policy":{"description":"The policy, e.g. 120;w=60","schema":{"type":"string"}},"X-Request-Id":{"description":"This request’s id, as shown in your request log","schema":{"type":"string"}}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Item"}}}},"400":{"$ref":"#/components/responses/Problem"},"401":{"$ref":"#/components/responses/Problem"},"402":{"$ref":"#/components/responses/Problem"},"403":{"$ref":"#/components/responses/Problem"},"404":{"$ref":"#/components/responses/Problem"},"409":{"$ref":"#/components/responses/Problem"},"422":{"$ref":"#/components/responses/Problem"},"429":{"$ref":"#/components/responses/Problem"}},"description":"Scope: contacts:read","x-scope":"contacts:read","parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","pattern":"^[0-9a-z]{26}$"}}]},"patch":{"operationId":"patchContactsId","tags":["Contacts"],"summary":"Change a contact; subscribed: false unsubscribes","security":[{"bearer":[]}],"responses":{"200":{"description":"OK","headers":{"X-RateLimit-Limit":{"description":"Requests a minute this token may make","schema":{"type":"string"}},"X-RateLimit-Remaining":{"description":"Requests left this minute","schema":{"type":"string"}},"X-RateLimit-Reset":{"description":"Unix time when the minute resets","schema":{"type":"string"}},"RateLimit":{"description":"IETF form: limit, remaining, reset (seconds)","schema":{"type":"string"}},"RateLimit-Policy":{"description":"The policy, e.g. 120;w=60","schema":{"type":"string"}},"X-Request-Id":{"description":"This request’s id, as shown in your request log","schema":{"type":"string"}}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Item"}}}},"400":{"$ref":"#/components/responses/Problem"},"401":{"$ref":"#/components/responses/Problem"},"402":{"$ref":"#/components/responses/Problem"},"403":{"$ref":"#/components/responses/Problem"},"404":{"$ref":"#/components/responses/Problem"},"409":{"$ref":"#/components/responses/Problem"},"422":{"$ref":"#/components/responses/Problem"},"429":{"$ref":"#/components/responses/Problem"}},"description":"Scope: contacts:write","x-scope":"contacts:write","parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","pattern":"^[0-9a-z]{26}$"}}],"requestBody":{"required":false,"content":{"application/json":{"schema":{"type":"object","properties":{"email":{"description":"email"},"name":{"description":"name"},"stage":{"description":"stage"},"subscribed":{"description":"false only"},"tags":{"description":"tags"},"fields":{"description":"fields"}}}}}}},"delete":{"operationId":"deleteContactsId","tags":["Contacts"],"summary":"Delete a contact and their history","security":[{"bearer":[]}],"responses":{"204":{"description":"Deleted","headers":{"X-RateLimit-Limit":{"description":"Requests a minute this token may make","schema":{"type":"string"}},"X-RateLimit-Remaining":{"description":"Requests left this minute","schema":{"type":"string"}},"X-RateLimit-Reset":{"description":"Unix time when the minute resets","schema":{"type":"string"}},"RateLimit":{"description":"IETF form: limit, remaining, reset (seconds)","schema":{"type":"string"}},"RateLimit-Policy":{"description":"The policy, e.g. 120;w=60","schema":{"type":"string"}},"X-Request-Id":{"description":"This request’s id, as shown in your request log","schema":{"type":"string"}}}},"400":{"$ref":"#/components/responses/Problem"},"401":{"$ref":"#/components/responses/Problem"},"402":{"$ref":"#/components/responses/Problem"},"403":{"$ref":"#/components/responses/Problem"},"404":{"$ref":"#/components/responses/Problem"},"409":{"$ref":"#/components/responses/Problem"},"422":{"$ref":"#/components/responses/Problem"},"429":{"$ref":"#/components/responses/Problem"}},"description":"Scope: contacts:write","x-scope":"contacts:write","parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","pattern":"^[0-9a-z]{26}$"}}]}},"/contacts/{id}/tags":{"post":{"operationId":"postContactsIdTags","tags":["Contacts"],"summary":"Tag a contact","security":[{"bearer":[]}],"responses":{"200":{"description":"OK","headers":{"X-RateLimit-Limit":{"description":"Requests a minute this token may make","schema":{"type":"string"}},"X-RateLimit-Remaining":{"description":"Requests left this minute","schema":{"type":"string"}},"X-RateLimit-Reset":{"description":"Unix time when the minute resets","schema":{"type":"string"}},"RateLimit":{"description":"IETF form: limit, remaining, reset (seconds)","schema":{"type":"string"}},"RateLimit-Policy":{"description":"The policy, e.g. 120;w=60","schema":{"type":"string"}},"X-Request-Id":{"description":"This request’s id, as shown in your request log","schema":{"type":"string"}}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Item"}}}},"400":{"$ref":"#/components/responses/Problem"},"401":{"$ref":"#/components/responses/Problem"},"402":{"$ref":"#/components/responses/Problem"},"403":{"$ref":"#/components/responses/Problem"},"404":{"$ref":"#/components/responses/Problem"},"409":{"$ref":"#/components/responses/Problem"},"422":{"$ref":"#/components/responses/Problem"},"429":{"$ref":"#/components/responses/Problem"}},"description":"Scope: contacts:write","x-scope":"contacts:write","parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","pattern":"^[0-9a-z]{26}$"}},{"name":"Idempotency-Key","in":"header","required":false,"description":"Retry safely: the same key and body run once (24 hours)","schema":{"type":"string","maxLength":80,"pattern":"^[A-Za-z0-9_.:-]{1,80}$"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"tag":{"description":"A tag name (made if new)"}},"required":["tag"]}}}}}},"/contacts/{id}/tags/{tag}":{"delete":{"operationId":"deleteContactsIdTagsTag","tags":["Contacts"],"summary":"Remove a tag","security":[{"bearer":[]}],"responses":{"204":{"description":"Deleted","headers":{"X-RateLimit-Limit":{"description":"Requests a minute this token may make","schema":{"type":"string"}},"X-RateLimit-Remaining":{"description":"Requests left this minute","schema":{"type":"string"}},"X-RateLimit-Reset":{"description":"Unix time when the minute resets","schema":{"type":"string"}},"RateLimit":{"description":"IETF form: limit, remaining, reset (seconds)","schema":{"type":"string"}},"RateLimit-Policy":{"description":"The policy, e.g. 120;w=60","schema":{"type":"string"}},"X-Request-Id":{"description":"This request’s id, as shown in your request log","schema":{"type":"string"}}}},"400":{"$ref":"#/components/responses/Problem"},"401":{"$ref":"#/components/responses/Problem"},"402":{"$ref":"#/components/responses/Problem"},"403":{"$ref":"#/components/responses/Problem"},"404":{"$ref":"#/components/responses/Problem"},"409":{"$ref":"#/components/responses/Problem"},"422":{"$ref":"#/components/responses/Problem"},"429":{"$ref":"#/components/responses/Problem"}},"description":"Scope: contacts:write","x-scope":"contacts:write","parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","pattern":"^[0-9a-z]{26}$"}},{"name":"tag","in":"path","required":true,"schema":{"type":"string","pattern":"^[0-9a-z]{26}$"}}]}},"/tags":{"get":{"operationId":"getTags","tags":["Contacts"],"summary":"List tags","security":[{"bearer":[]}],"responses":{"200":{"description":"OK","headers":{"X-RateLimit-Limit":{"description":"Requests a minute this token may make","schema":{"type":"string"}},"X-RateLimit-Remaining":{"description":"Requests left this minute","schema":{"type":"string"}},"X-RateLimit-Reset":{"description":"Unix time when the minute resets","schema":{"type":"string"}},"RateLimit":{"description":"IETF form: limit, remaining, reset (seconds)","schema":{"type":"string"}},"RateLimit-Policy":{"description":"The policy, e.g. 120;w=60","schema":{"type":"string"}},"X-Request-Id":{"description":"This request’s id, as shown in your request log","schema":{"type":"string"}}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/List"}}}},"400":{"$ref":"#/components/responses/Problem"},"401":{"$ref":"#/components/responses/Problem"},"402":{"$ref":"#/components/responses/Problem"},"403":{"$ref":"#/components/responses/Problem"},"404":{"$ref":"#/components/responses/Problem"},"409":{"$ref":"#/components/responses/Problem"},"422":{"$ref":"#/components/responses/Problem"},"429":{"$ref":"#/components/responses/Problem"}},"description":"Scope: contacts:read","x-scope":"contacts:read","parameters":[{"name":"limit","in":"query","required":false,"description":"1-100 (25)","schema":{"type":"integer","minimum":1,"maximum":100,"default":25}},{"name":"cursor","in":"query","required":false,"description":"next_cursor from the previous page","schema":{"type":"string"}}]}},"/forms":{"get":{"operationId":"getForms","tags":["Forms"],"summary":"List forms","security":[{"bearer":[]}],"responses":{"200":{"description":"OK","headers":{"X-RateLimit-Limit":{"description":"Requests a minute this token may make","schema":{"type":"string"}},"X-RateLimit-Remaining":{"description":"Requests left this minute","schema":{"type":"string"}},"X-RateLimit-Reset":{"description":"Unix time when the minute resets","schema":{"type":"string"}},"RateLimit":{"description":"IETF form: limit, remaining, reset (seconds)","schema":{"type":"string"}},"RateLimit-Policy":{"description":"The policy, e.g. 120;w=60","schema":{"type":"string"}},"X-Request-Id":{"description":"This request’s id, as shown in your request log","schema":{"type":"string"}}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/List"}}}},"400":{"$ref":"#/components/responses/Problem"},"401":{"$ref":"#/components/responses/Problem"},"402":{"$ref":"#/components/responses/Problem"},"403":{"$ref":"#/components/responses/Problem"},"404":{"$ref":"#/components/responses/Problem"},"409":{"$ref":"#/components/responses/Problem"},"422":{"$ref":"#/components/responses/Problem"},"429":{"$ref":"#/components/responses/Problem"}},"description":"Scope: forms:read","x-scope":"forms:read","parameters":[{"name":"limit","in":"query","required":false,"description":"1-100 (25)","schema":{"type":"integer","minimum":1,"maximum":100,"default":25}},{"name":"cursor","in":"query","required":false,"description":"next_cursor from the previous page","schema":{"type":"string"}}]}},"/forms/{id}":{"get":{"operationId":"getFormsId","tags":["Forms"],"summary":"One form","security":[{"bearer":[]}],"responses":{"200":{"description":"OK","headers":{"X-RateLimit-Limit":{"description":"Requests a minute this token may make","schema":{"type":"string"}},"X-RateLimit-Remaining":{"description":"Requests left this minute","schema":{"type":"string"}},"X-RateLimit-Reset":{"description":"Unix time when the minute resets","schema":{"type":"string"}},"RateLimit":{"description":"IETF form: limit, remaining, reset (seconds)","schema":{"type":"string"}},"RateLimit-Policy":{"description":"The policy, e.g. 120;w=60","schema":{"type":"string"}},"X-Request-Id":{"description":"This request’s id, as shown in your request log","schema":{"type":"string"}}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Item"}}}},"400":{"$ref":"#/components/responses/Problem"},"401":{"$ref":"#/components/responses/Problem"},"402":{"$ref":"#/components/responses/Problem"},"403":{"$ref":"#/components/responses/Problem"},"404":{"$ref":"#/components/responses/Problem"},"409":{"$ref":"#/components/responses/Problem"},"422":{"$ref":"#/components/responses/Problem"},"429":{"$ref":"#/components/responses/Problem"}},"description":"Scope: forms:read","x-scope":"forms:read","parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","pattern":"^[0-9a-z]{26}$"}}]}},"/forms/{id}/submissions":{"get":{"operationId":"getFormsIdSubmissions","tags":["Forms"],"summary":"What people submitted","security":[{"bearer":[]}],"responses":{"200":{"description":"OK","headers":{"X-RateLimit-Limit":{"description":"Requests a minute this token may make","schema":{"type":"string"}},"X-RateLimit-Remaining":{"description":"Requests left this minute","schema":{"type":"string"}},"X-RateLimit-Reset":{"description":"Unix time when the minute resets","schema":{"type":"string"}},"RateLimit":{"description":"IETF form: limit, remaining, reset (seconds)","schema":{"type":"string"}},"RateLimit-Policy":{"description":"The policy, e.g. 120;w=60","schema":{"type":"string"}},"X-Request-Id":{"description":"This request’s id, as shown in your request log","schema":{"type":"string"}}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/List"}}}},"400":{"$ref":"#/components/responses/Problem"},"401":{"$ref":"#/components/responses/Problem"},"402":{"$ref":"#/components/responses/Problem"},"403":{"$ref":"#/components/responses/Problem"},"404":{"$ref":"#/components/responses/Problem"},"409":{"$ref":"#/components/responses/Problem"},"422":{"$ref":"#/components/responses/Problem"},"429":{"$ref":"#/components/responses/Problem"}},"description":"Scope: forms:read","x-scope":"forms:read","parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","pattern":"^[0-9a-z]{26}$"}},{"name":"since","in":"query","required":false,"description":"ISO 8601","schema":{"type":"string"}},{"name":"limit","in":"query","required":false,"description":"1-100 (25)","schema":{"type":"integer","minimum":1,"maximum":100,"default":25}},{"name":"cursor","in":"query","required":false,"description":"next_cursor from the previous page","schema":{"type":"string"}}]}},"/products":{"get":{"operationId":"getProducts","tags":["Store"],"summary":"List products","security":[{"bearer":[]}],"responses":{"200":{"description":"OK","headers":{"X-RateLimit-Limit":{"description":"Requests a minute this token may make","schema":{"type":"string"}},"X-RateLimit-Remaining":{"description":"Requests left this minute","schema":{"type":"string"}},"X-RateLimit-Reset":{"description":"Unix time when the minute resets","schema":{"type":"string"}},"RateLimit":{"description":"IETF form: limit, remaining, reset (seconds)","schema":{"type":"string"}},"RateLimit-Policy":{"description":"The policy, e.g. 120;w=60","schema":{"type":"string"}},"X-Request-Id":{"description":"This request’s id, as shown in your request log","schema":{"type":"string"}}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/List"}}}},"400":{"$ref":"#/components/responses/Problem"},"401":{"$ref":"#/components/responses/Problem"},"402":{"$ref":"#/components/responses/Problem"},"403":{"$ref":"#/components/responses/Problem"},"404":{"$ref":"#/components/responses/Problem"},"409":{"$ref":"#/components/responses/Problem"},"422":{"$ref":"#/components/responses/Problem"},"429":{"$ref":"#/components/responses/Problem"}},"description":"Scope: store:read","x-scope":"store:read","parameters":[{"name":"limit","in":"query","required":false,"description":"1-100 (25)","schema":{"type":"integer","minimum":1,"maximum":100,"default":25}},{"name":"cursor","in":"query","required":false,"description":"next_cursor from the previous page","schema":{"type":"string"}}]}},"/products/{id}":{"get":{"operationId":"getProductsId","tags":["Store"],"summary":"One product","security":[{"bearer":[]}],"responses":{"200":{"description":"OK","headers":{"X-RateLimit-Limit":{"description":"Requests a minute this token may make","schema":{"type":"string"}},"X-RateLimit-Remaining":{"description":"Requests left this minute","schema":{"type":"string"}},"X-RateLimit-Reset":{"description":"Unix time when the minute resets","schema":{"type":"string"}},"RateLimit":{"description":"IETF form: limit, remaining, reset (seconds)","schema":{"type":"string"}},"RateLimit-Policy":{"description":"The policy, e.g. 120;w=60","schema":{"type":"string"}},"X-Request-Id":{"description":"This request’s id, as shown in your request log","schema":{"type":"string"}}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Item"}}}},"400":{"$ref":"#/components/responses/Problem"},"401":{"$ref":"#/components/responses/Problem"},"402":{"$ref":"#/components/responses/Problem"},"403":{"$ref":"#/components/responses/Problem"},"404":{"$ref":"#/components/responses/Problem"},"409":{"$ref":"#/components/responses/Problem"},"422":{"$ref":"#/components/responses/Problem"},"429":{"$ref":"#/components/responses/Problem"}},"description":"Scope: store:read","x-scope":"store:read","parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","pattern":"^[0-9a-z]{26}$"}}]}},"/orders":{"get":{"operationId":"getOrders","tags":["Store"],"summary":"List orders, newest first","security":[{"bearer":[]}],"responses":{"200":{"description":"OK","headers":{"X-RateLimit-Limit":{"description":"Requests a minute this token may make","schema":{"type":"string"}},"X-RateLimit-Remaining":{"description":"Requests left this minute","schema":{"type":"string"}},"X-RateLimit-Reset":{"description":"Unix time when the minute resets","schema":{"type":"string"}},"RateLimit":{"description":"IETF form: limit, remaining, reset (seconds)","schema":{"type":"string"}},"RateLimit-Policy":{"description":"The policy, e.g. 120;w=60","schema":{"type":"string"}},"X-Request-Id":{"description":"This request’s id, as shown in your request log","schema":{"type":"string"}}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/List"}}}},"400":{"$ref":"#/components/responses/Problem"},"401":{"$ref":"#/components/responses/Problem"},"402":{"$ref":"#/components/responses/Problem"},"403":{"$ref":"#/components/responses/Problem"},"404":{"$ref":"#/components/responses/Problem"},"409":{"$ref":"#/components/responses/Problem"},"422":{"$ref":"#/components/responses/Problem"},"429":{"$ref":"#/components/responses/Problem"}},"description":"Scope: store:read","x-scope":"store:read","parameters":[{"name":"status","in":"query","required":false,"description":"paid, pending, failed, refunded, cancelled","schema":{"type":"string"}},{"name":"since","in":"query","required":false,"description":"ISO 8601","schema":{"type":"string"}},{"name":"limit","in":"query","required":false,"description":"1-100 (25)","schema":{"type":"integer","minimum":1,"maximum":100,"default":25}},{"name":"cursor","in":"query","required":false,"description":"next_cursor from the previous page","schema":{"type":"string"}}]}},"/orders/{id}":{"get":{"operationId":"getOrdersId","tags":["Store"],"summary":"One order with its items","security":[{"bearer":[]}],"responses":{"200":{"description":"OK","headers":{"X-RateLimit-Limit":{"description":"Requests a minute this token may make","schema":{"type":"string"}},"X-RateLimit-Remaining":{"description":"Requests left this minute","schema":{"type":"string"}},"X-RateLimit-Reset":{"description":"Unix time when the minute resets","schema":{"type":"string"}},"RateLimit":{"description":"IETF form: limit, remaining, reset (seconds)","schema":{"type":"string"}},"RateLimit-Policy":{"description":"The policy, e.g. 120;w=60","schema":{"type":"string"}},"X-Request-Id":{"description":"This request’s id, as shown in your request log","schema":{"type":"string"}}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Item"}}}},"400":{"$ref":"#/components/responses/Problem"},"401":{"$ref":"#/components/responses/Problem"},"402":{"$ref":"#/components/responses/Problem"},"403":{"$ref":"#/components/responses/Problem"},"404":{"$ref":"#/components/responses/Problem"},"409":{"$ref":"#/components/responses/Problem"},"422":{"$ref":"#/components/responses/Problem"},"429":{"$ref":"#/components/responses/Problem"}},"description":"Scope: store:read","x-scope":"store:read","parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","pattern":"^[0-9a-z]{26}$"}}]}},"/sites":{"get":{"operationId":"getSites","tags":["Bio pages & sites"],"summary":"List bio pages and sites","security":[{"bearer":[]}],"responses":{"200":{"description":"OK","headers":{"X-RateLimit-Limit":{"description":"Requests a minute this token may make","schema":{"type":"string"}},"X-RateLimit-Remaining":{"description":"Requests left this minute","schema":{"type":"string"}},"X-RateLimit-Reset":{"description":"Unix time when the minute resets","schema":{"type":"string"}},"RateLimit":{"description":"IETF form: limit, remaining, reset (seconds)","schema":{"type":"string"}},"RateLimit-Policy":{"description":"The policy, e.g. 120;w=60","schema":{"type":"string"}},"X-Request-Id":{"description":"This request’s id, as shown in your request log","schema":{"type":"string"}}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/List"}}}},"400":{"$ref":"#/components/responses/Problem"},"401":{"$ref":"#/components/responses/Problem"},"402":{"$ref":"#/components/responses/Problem"},"403":{"$ref":"#/components/responses/Problem"},"404":{"$ref":"#/components/responses/Problem"},"409":{"$ref":"#/components/responses/Problem"},"422":{"$ref":"#/components/responses/Problem"},"429":{"$ref":"#/components/responses/Problem"}},"description":"Scope: sites:read","x-scope":"sites:read","parameters":[{"name":"limit","in":"query","required":false,"description":"1-100 (25)","schema":{"type":"integer","minimum":1,"maximum":100,"default":25}},{"name":"cursor","in":"query","required":false,"description":"next_cursor from the previous page","schema":{"type":"string"}}]}},"/sites/{id}":{"get":{"operationId":"getSitesId","tags":["Bio pages & sites"],"summary":"One bio page or site","security":[{"bearer":[]}],"responses":{"200":{"description":"OK","headers":{"X-RateLimit-Limit":{"description":"Requests a minute this token may make","schema":{"type":"string"}},"X-RateLimit-Remaining":{"description":"Requests left this minute","schema":{"type":"string"}},"X-RateLimit-Reset":{"description":"Unix time when the minute resets","schema":{"type":"string"}},"RateLimit":{"description":"IETF form: limit, remaining, reset (seconds)","schema":{"type":"string"}},"RateLimit-Policy":{"description":"The policy, e.g. 120;w=60","schema":{"type":"string"}},"X-Request-Id":{"description":"This request’s id, as shown in your request log","schema":{"type":"string"}}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Item"}}}},"400":{"$ref":"#/components/responses/Problem"},"401":{"$ref":"#/components/responses/Problem"},"402":{"$ref":"#/components/responses/Problem"},"403":{"$ref":"#/components/responses/Problem"},"404":{"$ref":"#/components/responses/Problem"},"409":{"$ref":"#/components/responses/Problem"},"422":{"$ref":"#/components/responses/Problem"},"429":{"$ref":"#/components/responses/Problem"}},"description":"Scope: sites:read","x-scope":"sites:read","parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","pattern":"^[0-9a-z]{26}$"}}]}},"/events":{"get":{"operationId":"getEvents","tags":["Events"],"summary":"List events, newest first","security":[{"bearer":[]}],"responses":{"200":{"description":"OK","headers":{"X-RateLimit-Limit":{"description":"Requests a minute this token may make","schema":{"type":"string"}},"X-RateLimit-Remaining":{"description":"Requests left this minute","schema":{"type":"string"}},"X-RateLimit-Reset":{"description":"Unix time when the minute resets","schema":{"type":"string"}},"RateLimit":{"description":"IETF form: limit, remaining, reset (seconds)","schema":{"type":"string"}},"RateLimit-Policy":{"description":"The policy, e.g. 120;w=60","schema":{"type":"string"}},"X-Request-Id":{"description":"This request’s id, as shown in your request log","schema":{"type":"string"}}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/List"}}}},"400":{"$ref":"#/components/responses/Problem"},"401":{"$ref":"#/components/responses/Problem"},"402":{"$ref":"#/components/responses/Problem"},"403":{"$ref":"#/components/responses/Problem"},"404":{"$ref":"#/components/responses/Problem"},"409":{"$ref":"#/components/responses/Problem"},"422":{"$ref":"#/components/responses/Problem"},"429":{"$ref":"#/components/responses/Problem"}},"description":"Scope: events:read","x-scope":"events:read","parameters":[{"name":"status","in":"query","required":false,"description":"draft, published, registration_open, …","schema":{"type":"string"}},{"name":"starts_after","in":"query","required":false,"description":"ISO 8601","schema":{"type":"string"}},{"name":"q","in":"query","required":false,"description":"Name contains","schema":{"type":"string"}},{"name":"limit","in":"query","required":false,"description":"1-100 (25)","schema":{"type":"integer","minimum":1,"maximum":100,"default":25}},{"name":"cursor","in":"query","required":false,"description":"next_cursor from the previous page","schema":{"type":"string"}}]},"post":{"operationId":"postEvents","tags":["Events"],"summary":"Create an event (a draft) with its first date and tickets","security":[{"bearer":[]}],"responses":{"201":{"description":"OK","headers":{"X-RateLimit-Limit":{"description":"Requests a minute this token may make","schema":{"type":"string"}},"X-RateLimit-Remaining":{"description":"Requests left this minute","schema":{"type":"string"}},"X-RateLimit-Reset":{"description":"Unix time when the minute resets","schema":{"type":"string"}},"RateLimit":{"description":"IETF form: limit, remaining, reset (seconds)","schema":{"type":"string"}},"RateLimit-Policy":{"description":"The policy, e.g. 120;w=60","schema":{"type":"string"}},"X-Request-Id":{"description":"This request’s id, as shown in your request log","schema":{"type":"string"}}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Item"}}}},"400":{"$ref":"#/components/responses/Problem"},"401":{"$ref":"#/components/responses/Problem"},"402":{"$ref":"#/components/responses/Problem"},"403":{"$ref":"#/components/responses/Problem"},"404":{"$ref":"#/components/responses/Problem"},"409":{"$ref":"#/components/responses/Problem"},"422":{"$ref":"#/components/responses/Problem"},"429":{"$ref":"#/components/responses/Problem"}},"description":"Scope: events:write","x-scope":"events:write","parameters":[{"name":"Idempotency-Key","in":"header","required":false,"description":"Retry safely: the same key and body run once (24 hours)","schema":{"type":"string","maxLength":80,"pattern":"^[A-Za-z0-9_.:-]{1,80}$"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"name":{"description":"name"},"timezone":{"description":"IANA zone, e.g. Europe/London"},"starts_local":{"description":"Wall clock in the zone: 2026-11-14T18:30"},"ends_local":{"description":"Wall clock in the zone"},"format":{"description":"in_person, virtual or hybrid"},"visibility":{"description":"public, unlisted, private"},"registration_mode":{"description":"open, approval, rsvp, invite, external, none"},"capacity":{"description":"Integer"},"currency":{"description":"ISO 4217"},"type":{"description":"An event type key"},"venue_id":{"description":"One of your venues"},"recurrence":{"description":"{rule: RRULE}"},"tickets":{"description":"[{name, kind, price_minor, quantity}]"}},"required":["name","timezone","starts_local","ends_local"]}}}}}},"/events/{id}":{"get":{"operationId":"getEventsId","tags":["Events"],"summary":"One event","security":[{"bearer":[]}],"responses":{"200":{"description":"OK","headers":{"X-RateLimit-Limit":{"description":"Requests a minute this token may make","schema":{"type":"string"}},"X-RateLimit-Remaining":{"description":"Requests left this minute","schema":{"type":"string"}},"X-RateLimit-Reset":{"description":"Unix time when the minute resets","schema":{"type":"string"}},"RateLimit":{"description":"IETF form: limit, remaining, reset (seconds)","schema":{"type":"string"}},"RateLimit-Policy":{"description":"The policy, e.g. 120;w=60","schema":{"type":"string"}},"X-Request-Id":{"description":"This request’s id, as shown in your request log","schema":{"type":"string"}}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Item"}}}},"400":{"$ref":"#/components/responses/Problem"},"401":{"$ref":"#/components/responses/Problem"},"402":{"$ref":"#/components/responses/Problem"},"403":{"$ref":"#/components/responses/Problem"},"404":{"$ref":"#/components/responses/Problem"},"409":{"$ref":"#/components/responses/Problem"},"422":{"$ref":"#/components/responses/Problem"},"429":{"$ref":"#/components/responses/Problem"}},"description":"Scope: events:read","x-scope":"events:read","parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","pattern":"^[0-9a-z]{26}$"}}]},"patch":{"operationId":"patchEventsId","tags":["Events"],"summary":"Change an event (send only what changes)","security":[{"bearer":[]}],"responses":{"200":{"description":"OK","headers":{"X-RateLimit-Limit":{"description":"Requests a minute this token may make","schema":{"type":"string"}},"X-RateLimit-Remaining":{"description":"Requests left this minute","schema":{"type":"string"}},"X-RateLimit-Reset":{"description":"Unix time when the minute resets","schema":{"type":"string"}},"RateLimit":{"description":"IETF form: limit, remaining, reset (seconds)","schema":{"type":"string"}},"RateLimit-Policy":{"description":"The policy, e.g. 120;w=60","schema":{"type":"string"}},"X-Request-Id":{"description":"This request’s id, as shown in your request log","schema":{"type":"string"}}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Item"}}}},"400":{"$ref":"#/components/responses/Problem"},"401":{"$ref":"#/components/responses/Problem"},"402":{"$ref":"#/components/responses/Problem"},"403":{"$ref":"#/components/responses/Problem"},"404":{"$ref":"#/components/responses/Problem"},"409":{"$ref":"#/components/responses/Problem"},"422":{"$ref":"#/components/responses/Problem"},"429":{"$ref":"#/components/responses/Problem"}},"description":"Scope: events:write","x-scope":"events:write","parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","pattern":"^[0-9a-z]{26}$"}}],"requestBody":{"required":false,"content":{"application/json":{"schema":{"type":"object","properties":{"name":{"description":"name"},"summary":{"description":"summary"},"starts_local":{"description":"starts_local"},"ends_local":{"description":"ends_local"},"timezone":{"description":"timezone"},"capacity":{"description":"capacity"},"visibility":{"description":"visibility"},"venue_id":{"description":"venue_id"}}}}}}}},"/events/{id}/status":{"post":{"operationId":"postEventsIdStatus","tags":["Events"],"summary":"Move an event through its lifecycle (publish, open registration, cancel…) with the app’s rules","security":[{"bearer":[]}],"responses":{"200":{"description":"OK","headers":{"X-RateLimit-Limit":{"description":"Requests a minute this token may make","schema":{"type":"string"}},"X-RateLimit-Remaining":{"description":"Requests left this minute","schema":{"type":"string"}},"X-RateLimit-Reset":{"description":"Unix time when the minute resets","schema":{"type":"string"}},"RateLimit":{"description":"IETF form: limit, remaining, reset (seconds)","schema":{"type":"string"}},"RateLimit-Policy":{"description":"The policy, e.g. 120;w=60","schema":{"type":"string"}},"X-Request-Id":{"description":"This request’s id, as shown in your request log","schema":{"type":"string"}}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Item"}}}},"400":{"$ref":"#/components/responses/Problem"},"401":{"$ref":"#/components/responses/Problem"},"402":{"$ref":"#/components/responses/Problem"},"403":{"$ref":"#/components/responses/Problem"},"404":{"$ref":"#/components/responses/Problem"},"409":{"$ref":"#/components/responses/Problem"},"422":{"$ref":"#/components/responses/Problem"},"429":{"$ref":"#/components/responses/Problem"}},"description":"Scope: events:write","x-scope":"events:write","parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","pattern":"^[0-9a-z]{26}$"}},{"name":"Idempotency-Key","in":"header","required":false,"description":"Retry safely: the same key and body run once (24 hours)","schema":{"type":"string","maxLength":80,"pattern":"^[A-Za-z0-9_.:-]{1,80}$"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"status":{"description":"published, registration_open, registration_closed, postponed, cancelled, …"},"reason":{"description":"For cancellations"}},"required":["status"]}}}}}},"/events/{id}/occurrences":{"get":{"operationId":"getEventsIdOccurrences","tags":["Events"],"summary":"Its dates, with places left","security":[{"bearer":[]}],"responses":{"200":{"description":"OK","headers":{"X-RateLimit-Limit":{"description":"Requests a minute this token may make","schema":{"type":"string"}},"X-RateLimit-Remaining":{"description":"Requests left this minute","schema":{"type":"string"}},"X-RateLimit-Reset":{"description":"Unix time when the minute resets","schema":{"type":"string"}},"RateLimit":{"description":"IETF form: limit, remaining, reset (seconds)","schema":{"type":"string"}},"RateLimit-Policy":{"description":"The policy, e.g. 120;w=60","schema":{"type":"string"}},"X-Request-Id":{"description":"This request’s id, as shown in your request log","schema":{"type":"string"}}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/List"}}}},"400":{"$ref":"#/components/responses/Problem"},"401":{"$ref":"#/components/responses/Problem"},"402":{"$ref":"#/components/responses/Problem"},"403":{"$ref":"#/components/responses/Problem"},"404":{"$ref":"#/components/responses/Problem"},"409":{"$ref":"#/components/responses/Problem"},"422":{"$ref":"#/components/responses/Problem"},"429":{"$ref":"#/components/responses/Problem"}},"description":"Scope: events:read","x-scope":"events:read","parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","pattern":"^[0-9a-z]{26}$"}},{"name":"upcoming","in":"query","required":false,"description":"1 = only dates that haven’t ended","schema":{"type":"string"}},{"name":"limit","in":"query","required":false,"description":"1-100 (25)","schema":{"type":"integer","minimum":1,"maximum":100,"default":25}},{"name":"cursor","in":"query","required":false,"description":"next_cursor from the previous page","schema":{"type":"string"}}]}},"/events/{id}/ticket-types":{"get":{"operationId":"getEventsIdTicketTypes","tags":["Events"],"summary":"Its ticket types and prices (minor units)","security":[{"bearer":[]}],"responses":{"200":{"description":"OK","headers":{"X-RateLimit-Limit":{"description":"Requests a minute this token may make","schema":{"type":"string"}},"X-RateLimit-Remaining":{"description":"Requests left this minute","schema":{"type":"string"}},"X-RateLimit-Reset":{"description":"Unix time when the minute resets","schema":{"type":"string"}},"RateLimit":{"description":"IETF form: limit, remaining, reset (seconds)","schema":{"type":"string"}},"RateLimit-Policy":{"description":"The policy, e.g. 120;w=60","schema":{"type":"string"}},"X-Request-Id":{"description":"This request’s id, as shown in your request log","schema":{"type":"string"}}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/List"}}}},"400":{"$ref":"#/components/responses/Problem"},"401":{"$ref":"#/components/responses/Problem"},"402":{"$ref":"#/components/responses/Problem"},"403":{"$ref":"#/components/responses/Problem"},"404":{"$ref":"#/components/responses/Problem"},"409":{"$ref":"#/components/responses/Problem"},"422":{"$ref":"#/components/responses/Problem"},"429":{"$ref":"#/components/responses/Problem"}},"description":"Scope: events:read","x-scope":"events:read","parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","pattern":"^[0-9a-z]{26}$"}},{"name":"limit","in":"query","required":false,"description":"1-100 (25)","schema":{"type":"integer","minimum":1,"maximum":100,"default":25}},{"name":"cursor","in":"query","required":false,"description":"next_cursor from the previous page","schema":{"type":"string"}}]}},"/events/{id}/registrations":{"get":{"operationId":"getEventsIdRegistrations","tags":["Events"],"summary":"Registrations (buyers), newest first","security":[{"bearer":[]}],"responses":{"200":{"description":"OK","headers":{"X-RateLimit-Limit":{"description":"Requests a minute this token may make","schema":{"type":"string"}},"X-RateLimit-Remaining":{"description":"Requests left this minute","schema":{"type":"string"}},"X-RateLimit-Reset":{"description":"Unix time when the minute resets","schema":{"type":"string"}},"RateLimit":{"description":"IETF form: limit, remaining, reset (seconds)","schema":{"type":"string"}},"RateLimit-Policy":{"description":"The policy, e.g. 120;w=60","schema":{"type":"string"}},"X-Request-Id":{"description":"This request’s id, as shown in your request log","schema":{"type":"string"}}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/List"}}}},"400":{"$ref":"#/components/responses/Problem"},"401":{"$ref":"#/components/responses/Problem"},"402":{"$ref":"#/components/responses/Problem"},"403":{"$ref":"#/components/responses/Problem"},"404":{"$ref":"#/components/responses/Problem"},"409":{"$ref":"#/components/responses/Problem"},"422":{"$ref":"#/components/responses/Problem"},"429":{"$ref":"#/components/responses/Problem"}},"description":"Scope: events:attendees","x-scope":"events:attendees","parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","pattern":"^[0-9a-z]{26}$"}},{"name":"status","in":"query","required":false,"description":"confirmed, pending, cancelled, refunded…","schema":{"type":"string"}},{"name":"email","in":"query","required":false,"description":"Exact address","schema":{"type":"string"}},{"name":"limit","in":"query","required":false,"description":"1-100 (25)","schema":{"type":"integer","minimum":1,"maximum":100,"default":25}},{"name":"cursor","in":"query","required":false,"description":"next_cursor from the previous page","schema":{"type":"string"}}]},"post":{"operationId":"postEventsIdRegistrations","tags":["Events"],"summary":"Register someone (same rules as the event page; paid → pay_url)","security":[{"bearer":[]}],"responses":{"201":{"description":"OK","headers":{"X-RateLimit-Limit":{"description":"Requests a minute this token may make","schema":{"type":"string"}},"X-RateLimit-Remaining":{"description":"Requests left this minute","schema":{"type":"string"}},"X-RateLimit-Reset":{"description":"Unix time when the minute resets","schema":{"type":"string"}},"RateLimit":{"description":"IETF form: limit, remaining, reset (seconds)","schema":{"type":"string"}},"RateLimit-Policy":{"description":"The policy, e.g. 120;w=60","schema":{"type":"string"}},"X-Request-Id":{"description":"This request’s id, as shown in your request log","schema":{"type":"string"}}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Item"}}}},"400":{"$ref":"#/components/responses/Problem"},"401":{"$ref":"#/components/responses/Problem"},"402":{"$ref":"#/components/responses/Problem"},"403":{"$ref":"#/components/responses/Problem"},"404":{"$ref":"#/components/responses/Problem"},"409":{"$ref":"#/components/responses/Problem"},"422":{"$ref":"#/components/responses/Problem"},"429":{"$ref":"#/components/responses/Problem"}},"description":"Scope: events:attendees + events:write","x-scope":"events:attendees + events:write","parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","pattern":"^[0-9a-z]{26}$"}},{"name":"Idempotency-Key","in":"header","required":false,"description":"Retry safely: the same key and body run once (24 hours)","schema":{"type":"string","maxLength":80,"pattern":"^[A-Za-z0-9_.:-]{1,80}$"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"tickets":{"description":"{ticket_type_id: quantity}"},"email":{"description":"email"},"name":{"description":"name"},"occurrence_id":{"description":"For multi-date events"},"attendees":{"description":"[{name, email}] one per ticket"},"code":{"description":"Promo or access code"},"answers":{"description":"Registration form answers by key"}},"required":["tickets","email"]}}}}}},"/events/{id}/registrations/{item}":{"get":{"operationId":"getEventsIdRegistrationsItem","tags":["Events"],"summary":"One registration","security":[{"bearer":[]}],"responses":{"200":{"description":"OK","headers":{"X-RateLimit-Limit":{"description":"Requests a minute this token may make","schema":{"type":"string"}},"X-RateLimit-Remaining":{"description":"Requests left this minute","schema":{"type":"string"}},"X-RateLimit-Reset":{"description":"Unix time when the minute resets","schema":{"type":"string"}},"RateLimit":{"description":"IETF form: limit, remaining, reset (seconds)","schema":{"type":"string"}},"RateLimit-Policy":{"description":"The policy, e.g. 120;w=60","schema":{"type":"string"}},"X-Request-Id":{"description":"This request’s id, as shown in your request log","schema":{"type":"string"}}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Item"}}}},"400":{"$ref":"#/components/responses/Problem"},"401":{"$ref":"#/components/responses/Problem"},"402":{"$ref":"#/components/responses/Problem"},"403":{"$ref":"#/components/responses/Problem"},"404":{"$ref":"#/components/responses/Problem"},"409":{"$ref":"#/components/responses/Problem"},"422":{"$ref":"#/components/responses/Problem"},"429":{"$ref":"#/components/responses/Problem"}},"description":"Scope: events:attendees","x-scope":"events:attendees","parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","pattern":"^[0-9a-z]{26}$"}},{"name":"item","in":"path","required":true,"schema":{"type":"string","pattern":"^[0-9a-z]{26}$"}}]}},"/events/{id}/attendees":{"get":{"operationId":"getEventsIdAttendees","tags":["Events"],"summary":"Attendees (one per ticket) with their ticket number","security":[{"bearer":[]}],"responses":{"200":{"description":"OK","headers":{"X-RateLimit-Limit":{"description":"Requests a minute this token may make","schema":{"type":"string"}},"X-RateLimit-Remaining":{"description":"Requests left this minute","schema":{"type":"string"}},"X-RateLimit-Reset":{"description":"Unix time when the minute resets","schema":{"type":"string"}},"RateLimit":{"description":"IETF form: limit, remaining, reset (seconds)","schema":{"type":"string"}},"RateLimit-Policy":{"description":"The policy, e.g. 120;w=60","schema":{"type":"string"}},"X-Request-Id":{"description":"This request’s id, as shown in your request log","schema":{"type":"string"}}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/List"}}}},"400":{"$ref":"#/components/responses/Problem"},"401":{"$ref":"#/components/responses/Problem"},"402":{"$ref":"#/components/responses/Problem"},"403":{"$ref":"#/components/responses/Problem"},"404":{"$ref":"#/components/responses/Problem"},"409":{"$ref":"#/components/responses/Problem"},"422":{"$ref":"#/components/responses/Problem"},"429":{"$ref":"#/components/responses/Problem"}},"description":"Scope: events:attendees","x-scope":"events:attendees","parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","pattern":"^[0-9a-z]{26}$"}},{"name":"status","in":"query","required":false,"description":"confirmed, pending, cancelled…","schema":{"type":"string"}},{"name":"occurrence_id","in":"query","required":false,"description":"","schema":{"type":"string"}},{"name":"checked_in","in":"query","required":false,"description":"1","schema":{"type":"string"}},{"name":"limit","in":"query","required":false,"description":"1-100 (25)","schema":{"type":"integer","minimum":1,"maximum":100,"default":25}},{"name":"cursor","in":"query","required":false,"description":"next_cursor from the previous page","schema":{"type":"string"}}]}},"/events/{id}/attendees/{item}":{"get":{"operationId":"getEventsIdAttendeesItem","tags":["Events"],"summary":"One attendee","security":[{"bearer":[]}],"responses":{"200":{"description":"OK","headers":{"X-RateLimit-Limit":{"description":"Requests a minute this token may make","schema":{"type":"string"}},"X-RateLimit-Remaining":{"description":"Requests left this minute","schema":{"type":"string"}},"X-RateLimit-Reset":{"description":"Unix time when the minute resets","schema":{"type":"string"}},"RateLimit":{"description":"IETF form: limit, remaining, reset (seconds)","schema":{"type":"string"}},"RateLimit-Policy":{"description":"The policy, e.g. 120;w=60","schema":{"type":"string"}},"X-Request-Id":{"description":"This request’s id, as shown in your request log","schema":{"type":"string"}}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Item"}}}},"400":{"$ref":"#/components/responses/Problem"},"401":{"$ref":"#/components/responses/Problem"},"402":{"$ref":"#/components/responses/Problem"},"403":{"$ref":"#/components/responses/Problem"},"404":{"$ref":"#/components/responses/Problem"},"409":{"$ref":"#/components/responses/Problem"},"422":{"$ref":"#/components/responses/Problem"},"429":{"$ref":"#/components/responses/Problem"}},"description":"Scope: events:attendees","x-scope":"events:attendees","parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","pattern":"^[0-9a-z]{26}$"}},{"name":"item","in":"path","required":true,"schema":{"type":"string","pattern":"^[0-9a-z]{26}$"}}]}},"/events/{id}/tickets":{"get":{"operationId":"getEventsIdTickets","tags":["Events"],"summary":"Tickets: number and status (never the QR payload)","security":[{"bearer":[]}],"responses":{"200":{"description":"OK","headers":{"X-RateLimit-Limit":{"description":"Requests a minute this token may make","schema":{"type":"string"}},"X-RateLimit-Remaining":{"description":"Requests left this minute","schema":{"type":"string"}},"X-RateLimit-Reset":{"description":"Unix time when the minute resets","schema":{"type":"string"}},"RateLimit":{"description":"IETF form: limit, remaining, reset (seconds)","schema":{"type":"string"}},"RateLimit-Policy":{"description":"The policy, e.g. 120;w=60","schema":{"type":"string"}},"X-Request-Id":{"description":"This request’s id, as shown in your request log","schema":{"type":"string"}}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/List"}}}},"400":{"$ref":"#/components/responses/Problem"},"401":{"$ref":"#/components/responses/Problem"},"402":{"$ref":"#/components/responses/Problem"},"403":{"$ref":"#/components/responses/Problem"},"404":{"$ref":"#/components/responses/Problem"},"409":{"$ref":"#/components/responses/Problem"},"422":{"$ref":"#/components/responses/Problem"},"429":{"$ref":"#/components/responses/Problem"}},"description":"Scope: events:attendees","x-scope":"events:attendees","parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","pattern":"^[0-9a-z]{26}$"}},{"name":"status","in":"query","required":false,"description":"valid or void","schema":{"type":"string"}},{"name":"number","in":"query","required":false,"description":"WSY-XXXX-XXXX","schema":{"type":"string"}},{"name":"limit","in":"query","required":false,"description":"1-100 (25)","schema":{"type":"integer","minimum":1,"maximum":100,"default":25}},{"name":"cursor","in":"query","required":false,"description":"next_cursor from the previous page","schema":{"type":"string"}}]}},"/events/{id}/orders":{"get":{"operationId":"getEventsIdOrders","tags":["Events"],"summary":"Ticket orders (commerce orders for this event)","security":[{"bearer":[]}],"responses":{"200":{"description":"OK","headers":{"X-RateLimit-Limit":{"description":"Requests a minute this token may make","schema":{"type":"string"}},"X-RateLimit-Remaining":{"description":"Requests left this minute","schema":{"type":"string"}},"X-RateLimit-Reset":{"description":"Unix time when the minute resets","schema":{"type":"string"}},"RateLimit":{"description":"IETF form: limit, remaining, reset (seconds)","schema":{"type":"string"}},"RateLimit-Policy":{"description":"The policy, e.g. 120;w=60","schema":{"type":"string"}},"X-Request-Id":{"description":"This request’s id, as shown in your request log","schema":{"type":"string"}}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/List"}}}},"400":{"$ref":"#/components/responses/Problem"},"401":{"$ref":"#/components/responses/Problem"},"402":{"$ref":"#/components/responses/Problem"},"403":{"$ref":"#/components/responses/Problem"},"404":{"$ref":"#/components/responses/Problem"},"409":{"$ref":"#/components/responses/Problem"},"422":{"$ref":"#/components/responses/Problem"},"429":{"$ref":"#/components/responses/Problem"}},"description":"Scope: events:attendees (+ events.finance role)","x-scope":"events:attendees (+ events.finance role)","parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","pattern":"^[0-9a-z]{26}$"}},{"name":"status","in":"query","required":false,"description":"paid, pending, failed, refunded","schema":{"type":"string"}},{"name":"limit","in":"query","required":false,"description":"1-100 (25)","schema":{"type":"integer","minimum":1,"maximum":100,"default":25}},{"name":"cursor","in":"query","required":false,"description":"next_cursor from the previous page","schema":{"type":"string"}}]}},"/events/{id}/sessions":{"get":{"operationId":"getEventsIdSessions","tags":["Events"],"summary":"Agenda sessions","security":[{"bearer":[]}],"responses":{"200":{"description":"OK","headers":{"X-RateLimit-Limit":{"description":"Requests a minute this token may make","schema":{"type":"string"}},"X-RateLimit-Remaining":{"description":"Requests left this minute","schema":{"type":"string"}},"X-RateLimit-Reset":{"description":"Unix time when the minute resets","schema":{"type":"string"}},"RateLimit":{"description":"IETF form: limit, remaining, reset (seconds)","schema":{"type":"string"}},"RateLimit-Policy":{"description":"The policy, e.g. 120;w=60","schema":{"type":"string"}},"X-Request-Id":{"description":"This request’s id, as shown in your request log","schema":{"type":"string"}}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/List"}}}},"400":{"$ref":"#/components/responses/Problem"},"401":{"$ref":"#/components/responses/Problem"},"402":{"$ref":"#/components/responses/Problem"},"403":{"$ref":"#/components/responses/Problem"},"404":{"$ref":"#/components/responses/Problem"},"409":{"$ref":"#/components/responses/Problem"},"422":{"$ref":"#/components/responses/Problem"},"429":{"$ref":"#/components/responses/Problem"}},"description":"Scope: events:read","x-scope":"events:read","parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","pattern":"^[0-9a-z]{26}$"}},{"name":"limit","in":"query","required":false,"description":"1-100 (25)","schema":{"type":"integer","minimum":1,"maximum":100,"default":25}},{"name":"cursor","in":"query","required":false,"description":"next_cursor from the previous page","schema":{"type":"string"}}]}},"/events/{id}/speakers":{"get":{"operationId":"getEventsIdSpeakers","tags":["Events"],"summary":"Speakers (public profile fields)","security":[{"bearer":[]}],"responses":{"200":{"description":"OK","headers":{"X-RateLimit-Limit":{"description":"Requests a minute this token may make","schema":{"type":"string"}},"X-RateLimit-Remaining":{"description":"Requests left this minute","schema":{"type":"string"}},"X-RateLimit-Reset":{"description":"Unix time when the minute resets","schema":{"type":"string"}},"RateLimit":{"description":"IETF form: limit, remaining, reset (seconds)","schema":{"type":"string"}},"RateLimit-Policy":{"description":"The policy, e.g. 120;w=60","schema":{"type":"string"}},"X-Request-Id":{"description":"This request’s id, as shown in your request log","schema":{"type":"string"}}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/List"}}}},"400":{"$ref":"#/components/responses/Problem"},"401":{"$ref":"#/components/responses/Problem"},"402":{"$ref":"#/components/responses/Problem"},"403":{"$ref":"#/components/responses/Problem"},"404":{"$ref":"#/components/responses/Problem"},"409":{"$ref":"#/components/responses/Problem"},"422":{"$ref":"#/components/responses/Problem"},"429":{"$ref":"#/components/responses/Problem"}},"description":"Scope: events:read","x-scope":"events:read","parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","pattern":"^[0-9a-z]{26}$"}},{"name":"limit","in":"query","required":false,"description":"1-100 (25)","schema":{"type":"integer","minimum":1,"maximum":100,"default":25}},{"name":"cursor","in":"query","required":false,"description":"next_cursor from the previous page","schema":{"type":"string"}}]}},"/events/{id}/sponsors":{"get":{"operationId":"getEventsIdSponsors","tags":["Events"],"summary":"Sponsors","security":[{"bearer":[]}],"responses":{"200":{"description":"OK","headers":{"X-RateLimit-Limit":{"description":"Requests a minute this token may make","schema":{"type":"string"}},"X-RateLimit-Remaining":{"description":"Requests left this minute","schema":{"type":"string"}},"X-RateLimit-Reset":{"description":"Unix time when the minute resets","schema":{"type":"string"}},"RateLimit":{"description":"IETF form: limit, remaining, reset (seconds)","schema":{"type":"string"}},"RateLimit-Policy":{"description":"The policy, e.g. 120;w=60","schema":{"type":"string"}},"X-Request-Id":{"description":"This request’s id, as shown in your request log","schema":{"type":"string"}}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/List"}}}},"400":{"$ref":"#/components/responses/Problem"},"401":{"$ref":"#/components/responses/Problem"},"402":{"$ref":"#/components/responses/Problem"},"403":{"$ref":"#/components/responses/Problem"},"404":{"$ref":"#/components/responses/Problem"},"409":{"$ref":"#/components/responses/Problem"},"422":{"$ref":"#/components/responses/Problem"},"429":{"$ref":"#/components/responses/Problem"}},"description":"Scope: events:read","x-scope":"events:read","parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","pattern":"^[0-9a-z]{26}$"}},{"name":"limit","in":"query","required":false,"description":"1-100 (25)","schema":{"type":"integer","minimum":1,"maximum":100,"default":25}},{"name":"cursor","in":"query","required":false,"description":"next_cursor from the previous page","schema":{"type":"string"}}]}},"/events/{id}/exhibitors":{"get":{"operationId":"getEventsIdExhibitors","tags":["Events"],"summary":"Exhibitors","security":[{"bearer":[]}],"responses":{"200":{"description":"OK","headers":{"X-RateLimit-Limit":{"description":"Requests a minute this token may make","schema":{"type":"string"}},"X-RateLimit-Remaining":{"description":"Requests left this minute","schema":{"type":"string"}},"X-RateLimit-Reset":{"description":"Unix time when the minute resets","schema":{"type":"string"}},"RateLimit":{"description":"IETF form: limit, remaining, reset (seconds)","schema":{"type":"string"}},"RateLimit-Policy":{"description":"The policy, e.g. 120;w=60","schema":{"type":"string"}},"X-Request-Id":{"description":"This request’s id, as shown in your request log","schema":{"type":"string"}}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/List"}}}},"400":{"$ref":"#/components/responses/Problem"},"401":{"$ref":"#/components/responses/Problem"},"402":{"$ref":"#/components/responses/Problem"},"403":{"$ref":"#/components/responses/Problem"},"404":{"$ref":"#/components/responses/Problem"},"409":{"$ref":"#/components/responses/Problem"},"422":{"$ref":"#/components/responses/Problem"},"429":{"$ref":"#/components/responses/Problem"}},"description":"Scope: events:read","x-scope":"events:read","parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","pattern":"^[0-9a-z]{26}$"}},{"name":"limit","in":"query","required":false,"description":"1-100 (25)","schema":{"type":"integer","minimum":1,"maximum":100,"default":25}},{"name":"cursor","in":"query","required":false,"description":"next_cursor from the previous page","schema":{"type":"string"}}]}},"/events/{id}/check-ins":{"get":{"operationId":"getEventsIdCheckIns","tags":["Events"],"summary":"Check-in scans, with their result","security":[{"bearer":[]}],"responses":{"200":{"description":"OK","headers":{"X-RateLimit-Limit":{"description":"Requests a minute this token may make","schema":{"type":"string"}},"X-RateLimit-Remaining":{"description":"Requests left this minute","schema":{"type":"string"}},"X-RateLimit-Reset":{"description":"Unix time when the minute resets","schema":{"type":"string"}},"RateLimit":{"description":"IETF form: limit, remaining, reset (seconds)","schema":{"type":"string"}},"RateLimit-Policy":{"description":"The policy, e.g. 120;w=60","schema":{"type":"string"}},"X-Request-Id":{"description":"This request’s id, as shown in your request log","schema":{"type":"string"}}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/List"}}}},"400":{"$ref":"#/components/responses/Problem"},"401":{"$ref":"#/components/responses/Problem"},"402":{"$ref":"#/components/responses/Problem"},"403":{"$ref":"#/components/responses/Problem"},"404":{"$ref":"#/components/responses/Problem"},"409":{"$ref":"#/components/responses/Problem"},"422":{"$ref":"#/components/responses/Problem"},"429":{"$ref":"#/components/responses/Problem"}},"description":"Scope: events:checkin","x-scope":"events:checkin","parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","pattern":"^[0-9a-z]{26}$"}},{"name":"result","in":"query","required":false,"description":"accepted, duplicate, invalid…","schema":{"type":"string"}},{"name":"limit","in":"query","required":false,"description":"1-100 (25)","schema":{"type":"integer","minimum":1,"maximum":100,"default":25}},{"name":"cursor","in":"query","required":false,"description":"next_cursor from the previous page","schema":{"type":"string"}}]},"post":{"operationId":"postEventsIdCheckIns","tags":["Events"],"summary":"Scan a ticket (verifies the signed QR; idempotent per client_uuid)","security":[{"bearer":[]}],"responses":{"200":{"description":"OK","headers":{"X-RateLimit-Limit":{"description":"Requests a minute this token may make","schema":{"type":"string"}},"X-RateLimit-Remaining":{"description":"Requests left this minute","schema":{"type":"string"}},"X-RateLimit-Reset":{"description":"Unix time when the minute resets","schema":{"type":"string"}},"RateLimit":{"description":"IETF form: limit, remaining, reset (seconds)","schema":{"type":"string"}},"RateLimit-Policy":{"description":"The policy, e.g. 120;w=60","schema":{"type":"string"}},"X-Request-Id":{"description":"This request’s id, as shown in your request log","schema":{"type":"string"}}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Item"}}}},"400":{"$ref":"#/components/responses/Problem"},"401":{"$ref":"#/components/responses/Problem"},"402":{"$ref":"#/components/responses/Problem"},"403":{"$ref":"#/components/responses/Problem"},"404":{"$ref":"#/components/responses/Problem"},"409":{"$ref":"#/components/responses/Problem"},"422":{"$ref":"#/components/responses/Problem"},"429":{"$ref":"#/components/responses/Problem"}},"description":"Scope: events:checkin","x-scope":"events:checkin","parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","pattern":"^[0-9a-z]{26}$"}},{"name":"Idempotency-Key","in":"header","required":false,"description":"Retry safely: the same key and body run once (24 hours)","schema":{"type":"string","maxLength":80,"pattern":"^[A-Za-z0-9_.:-]{1,80}$"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"payload":{"description":"The QR text, WT1.…"},"client_uuid":{"description":"UUID from your device"},"direction":{"description":"in or out"},"session_id":{"description":"session_id"}},"required":["payload"]}}}}}},"/events/{id}/check-ins/{item}":{"get":{"operationId":"getEventsIdCheckInsItem","tags":["Events"],"summary":"One check-in","security":[{"bearer":[]}],"responses":{"200":{"description":"OK","headers":{"X-RateLimit-Limit":{"description":"Requests a minute this token may make","schema":{"type":"string"}},"X-RateLimit-Remaining":{"description":"Requests left this minute","schema":{"type":"string"}},"X-RateLimit-Reset":{"description":"Unix time when the minute resets","schema":{"type":"string"}},"RateLimit":{"description":"IETF form: limit, remaining, reset (seconds)","schema":{"type":"string"}},"RateLimit-Policy":{"description":"The policy, e.g. 120;w=60","schema":{"type":"string"}},"X-Request-Id":{"description":"This request’s id, as shown in your request log","schema":{"type":"string"}}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Item"}}}},"400":{"$ref":"#/components/responses/Problem"},"401":{"$ref":"#/components/responses/Problem"},"402":{"$ref":"#/components/responses/Problem"},"403":{"$ref":"#/components/responses/Problem"},"404":{"$ref":"#/components/responses/Problem"},"409":{"$ref":"#/components/responses/Problem"},"422":{"$ref":"#/components/responses/Problem"},"429":{"$ref":"#/components/responses/Problem"}},"description":"Scope: events:checkin","x-scope":"events:checkin","parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","pattern":"^[0-9a-z]{26}$"}},{"name":"item","in":"path","required":true,"schema":{"type":"string","pattern":"^[0-9a-z]{26}$"}}]}},"/venues":{"get":{"operationId":"getVenues","tags":["Events"],"summary":"Your venues","security":[{"bearer":[]}],"responses":{"200":{"description":"OK","headers":{"X-RateLimit-Limit":{"description":"Requests a minute this token may make","schema":{"type":"string"}},"X-RateLimit-Remaining":{"description":"Requests left this minute","schema":{"type":"string"}},"X-RateLimit-Reset":{"description":"Unix time when the minute resets","schema":{"type":"string"}},"RateLimit":{"description":"IETF form: limit, remaining, reset (seconds)","schema":{"type":"string"}},"RateLimit-Policy":{"description":"The policy, e.g. 120;w=60","schema":{"type":"string"}},"X-Request-Id":{"description":"This request’s id, as shown in your request log","schema":{"type":"string"}}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/List"}}}},"400":{"$ref":"#/components/responses/Problem"},"401":{"$ref":"#/components/responses/Problem"},"402":{"$ref":"#/components/responses/Problem"},"403":{"$ref":"#/components/responses/Problem"},"404":{"$ref":"#/components/responses/Problem"},"409":{"$ref":"#/components/responses/Problem"},"422":{"$ref":"#/components/responses/Problem"},"429":{"$ref":"#/components/responses/Problem"}},"description":"Scope: events:read","x-scope":"events:read","parameters":[{"name":"limit","in":"query","required":false,"description":"1-100 (25)","schema":{"type":"integer","minimum":1,"maximum":100,"default":25}},{"name":"cursor","in":"query","required":false,"description":"next_cursor from the previous page","schema":{"type":"string"}}]}},"/venues/{id}":{"get":{"operationId":"getVenuesId","tags":["Events"],"summary":"One venue","security":[{"bearer":[]}],"responses":{"200":{"description":"OK","headers":{"X-RateLimit-Limit":{"description":"Requests a minute this token may make","schema":{"type":"string"}},"X-RateLimit-Remaining":{"description":"Requests left this minute","schema":{"type":"string"}},"X-RateLimit-Reset":{"description":"Unix time when the minute resets","schema":{"type":"string"}},"RateLimit":{"description":"IETF form: limit, remaining, reset (seconds)","schema":{"type":"string"}},"RateLimit-Policy":{"description":"The policy, e.g. 120;w=60","schema":{"type":"string"}},"X-Request-Id":{"description":"This request’s id, as shown in your request log","schema":{"type":"string"}}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Item"}}}},"400":{"$ref":"#/components/responses/Problem"},"401":{"$ref":"#/components/responses/Problem"},"402":{"$ref":"#/components/responses/Problem"},"403":{"$ref":"#/components/responses/Problem"},"404":{"$ref":"#/components/responses/Problem"},"409":{"$ref":"#/components/responses/Problem"},"422":{"$ref":"#/components/responses/Problem"},"429":{"$ref":"#/components/responses/Problem"}},"description":"Scope: events:read","x-scope":"events:read","parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","pattern":"^[0-9a-z]{26}$"}}]}},"/booking-services":{"get":{"operationId":"getBookingServices","tags":["Bookings & meetings"],"summary":"Bookable services, with length, capacity and price (minor units)","security":[{"bearer":[]}],"responses":{"200":{"description":"OK","headers":{"X-RateLimit-Limit":{"description":"Requests a minute this token may make","schema":{"type":"string"}},"X-RateLimit-Remaining":{"description":"Requests left this minute","schema":{"type":"string"}},"X-RateLimit-Reset":{"description":"Unix time when the minute resets","schema":{"type":"string"}},"RateLimit":{"description":"IETF form: limit, remaining, reset (seconds)","schema":{"type":"string"}},"RateLimit-Policy":{"description":"The policy, e.g. 120;w=60","schema":{"type":"string"}},"X-Request-Id":{"description":"This request’s id, as shown in your request log","schema":{"type":"string"}}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/List"}}}},"400":{"$ref":"#/components/responses/Problem"},"401":{"$ref":"#/components/responses/Problem"},"402":{"$ref":"#/components/responses/Problem"},"403":{"$ref":"#/components/responses/Problem"},"404":{"$ref":"#/components/responses/Problem"},"409":{"$ref":"#/components/responses/Problem"},"422":{"$ref":"#/components/responses/Problem"},"429":{"$ref":"#/components/responses/Problem"}},"description":"Scope: bookings:read","x-scope":"bookings:read","parameters":[{"name":"limit","in":"query","required":false,"description":"1-100 (25)","schema":{"type":"integer","minimum":1,"maximum":100,"default":25}},{"name":"cursor","in":"query","required":false,"description":"next_cursor from the previous page","schema":{"type":"string"}}]}},"/bookings":{"get":{"operationId":"getBookings","tags":["Bookings & meetings"],"summary":"Bookings, newest first (never the guest’s private meeting link)","security":[{"bearer":[]}],"responses":{"200":{"description":"OK","headers":{"X-RateLimit-Limit":{"description":"Requests a minute this token may make","schema":{"type":"string"}},"X-RateLimit-Remaining":{"description":"Requests left this minute","schema":{"type":"string"}},"X-RateLimit-Reset":{"description":"Unix time when the minute resets","schema":{"type":"string"}},"RateLimit":{"description":"IETF form: limit, remaining, reset (seconds)","schema":{"type":"string"}},"RateLimit-Policy":{"description":"The policy, e.g. 120;w=60","schema":{"type":"string"}},"X-Request-Id":{"description":"This request’s id, as shown in your request log","schema":{"type":"string"}}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/List"}}}},"400":{"$ref":"#/components/responses/Problem"},"401":{"$ref":"#/components/responses/Problem"},"402":{"$ref":"#/components/responses/Problem"},"403":{"$ref":"#/components/responses/Problem"},"404":{"$ref":"#/components/responses/Problem"},"409":{"$ref":"#/components/responses/Problem"},"422":{"$ref":"#/components/responses/Problem"},"429":{"$ref":"#/components/responses/Problem"}},"description":"Scope: bookings:read","x-scope":"bookings:read","parameters":[{"name":"status","in":"query","required":false,"description":"held, pending, confirmed, in_progress, cancelled, attended, no_show","schema":{"type":"string"}},{"name":"service_id","in":"query","required":false,"description":"One service","schema":{"type":"string"}},{"name":"starts_after","in":"query","required":false,"description":"ISO 8601","schema":{"type":"string"}},{"name":"starts_before","in":"query","required":false,"description":"ISO 8601","schema":{"type":"string"}},{"name":"limit","in":"query","required":false,"description":"1-100 (25)","schema":{"type":"integer","minimum":1,"maximum":100,"default":25}},{"name":"cursor","in":"query","required":false,"description":"next_cursor from the previous page","schema":{"type":"string"}}]}},"/bookings/{id}":{"get":{"operationId":"getBookingsId","tags":["Bookings & meetings"],"summary":"One booking","security":[{"bearer":[]}],"responses":{"200":{"description":"OK","headers":{"X-RateLimit-Limit":{"description":"Requests a minute this token may make","schema":{"type":"string"}},"X-RateLimit-Remaining":{"description":"Requests left this minute","schema":{"type":"string"}},"X-RateLimit-Reset":{"description":"Unix time when the minute resets","schema":{"type":"string"}},"RateLimit":{"description":"IETF form: limit, remaining, reset (seconds)","schema":{"type":"string"}},"RateLimit-Policy":{"description":"The policy, e.g. 120;w=60","schema":{"type":"string"}},"X-Request-Id":{"description":"This request’s id, as shown in your request log","schema":{"type":"string"}}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Item"}}}},"400":{"$ref":"#/components/responses/Problem"},"401":{"$ref":"#/components/responses/Problem"},"402":{"$ref":"#/components/responses/Problem"},"403":{"$ref":"#/components/responses/Problem"},"404":{"$ref":"#/components/responses/Problem"},"409":{"$ref":"#/components/responses/Problem"},"422":{"$ref":"#/components/responses/Problem"},"429":{"$ref":"#/components/responses/Problem"}},"description":"Scope: bookings:read","x-scope":"bookings:read","parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","pattern":"^[0-9a-z]{26}$"}}]}},"/courses":{"get":{"operationId":"getCourses","tags":["Courses"],"summary":"Courses, with lesson and student counts","security":[{"bearer":[]}],"responses":{"200":{"description":"OK","headers":{"X-RateLimit-Limit":{"description":"Requests a minute this token may make","schema":{"type":"string"}},"X-RateLimit-Remaining":{"description":"Requests left this minute","schema":{"type":"string"}},"X-RateLimit-Reset":{"description":"Unix time when the minute resets","schema":{"type":"string"}},"RateLimit":{"description":"IETF form: limit, remaining, reset (seconds)","schema":{"type":"string"}},"RateLimit-Policy":{"description":"The policy, e.g. 120;w=60","schema":{"type":"string"}},"X-Request-Id":{"description":"This request’s id, as shown in your request log","schema":{"type":"string"}}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/List"}}}},"400":{"$ref":"#/components/responses/Problem"},"401":{"$ref":"#/components/responses/Problem"},"402":{"$ref":"#/components/responses/Problem"},"403":{"$ref":"#/components/responses/Problem"},"404":{"$ref":"#/components/responses/Problem"},"409":{"$ref":"#/components/responses/Problem"},"422":{"$ref":"#/components/responses/Problem"},"429":{"$ref":"#/components/responses/Problem"}},"description":"Scope: courses:read","x-scope":"courses:read","parameters":[{"name":"limit","in":"query","required":false,"description":"1-100 (25)","schema":{"type":"integer","minimum":1,"maximum":100,"default":25}},{"name":"cursor","in":"query","required":false,"description":"next_cursor from the previous page","schema":{"type":"string"}}]}},"/courses/{id}":{"get":{"operationId":"getCoursesId","tags":["Courses"],"summary":"One course","security":[{"bearer":[]}],"responses":{"200":{"description":"OK","headers":{"X-RateLimit-Limit":{"description":"Requests a minute this token may make","schema":{"type":"string"}},"X-RateLimit-Remaining":{"description":"Requests left this minute","schema":{"type":"string"}},"X-RateLimit-Reset":{"description":"Unix time when the minute resets","schema":{"type":"string"}},"RateLimit":{"description":"IETF form: limit, remaining, reset (seconds)","schema":{"type":"string"}},"RateLimit-Policy":{"description":"The policy, e.g. 120;w=60","schema":{"type":"string"}},"X-Request-Id":{"description":"This request’s id, as shown in your request log","schema":{"type":"string"}}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Item"}}}},"400":{"$ref":"#/components/responses/Problem"},"401":{"$ref":"#/components/responses/Problem"},"402":{"$ref":"#/components/responses/Problem"},"403":{"$ref":"#/components/responses/Problem"},"404":{"$ref":"#/components/responses/Problem"},"409":{"$ref":"#/components/responses/Problem"},"422":{"$ref":"#/components/responses/Problem"},"429":{"$ref":"#/components/responses/Problem"}},"description":"Scope: courses:read","x-scope":"courses:read","parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","pattern":"^[0-9a-z]{26}$"}}]}},"/courses/{id}/enrollments":{"get":{"operationId":"getCoursesIdEnrollments","tags":["Courses"],"summary":"Its students, with progress (never their private course link)","security":[{"bearer":[]}],"responses":{"200":{"description":"OK","headers":{"X-RateLimit-Limit":{"description":"Requests a minute this token may make","schema":{"type":"string"}},"X-RateLimit-Remaining":{"description":"Requests left this minute","schema":{"type":"string"}},"X-RateLimit-Reset":{"description":"Unix time when the minute resets","schema":{"type":"string"}},"RateLimit":{"description":"IETF form: limit, remaining, reset (seconds)","schema":{"type":"string"}},"RateLimit-Policy":{"description":"The policy, e.g. 120;w=60","schema":{"type":"string"}},"X-Request-Id":{"description":"This request’s id, as shown in your request log","schema":{"type":"string"}}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/List"}}}},"400":{"$ref":"#/components/responses/Problem"},"401":{"$ref":"#/components/responses/Problem"},"402":{"$ref":"#/components/responses/Problem"},"403":{"$ref":"#/components/responses/Problem"},"404":{"$ref":"#/components/responses/Problem"},"409":{"$ref":"#/components/responses/Problem"},"422":{"$ref":"#/components/responses/Problem"},"429":{"$ref":"#/components/responses/Problem"}},"description":"Scope: courses:read","x-scope":"courses:read","parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","pattern":"^[0-9a-z]{26}$"}},{"name":"status","in":"query","required":false,"description":"active or revoked","schema":{"type":"string"}},{"name":"completed","in":"query","required":false,"description":"1 = only students who finished","schema":{"type":"string"}},{"name":"limit","in":"query","required":false,"description":"1-100 (25)","schema":{"type":"integer","minimum":1,"maximum":100,"default":25}},{"name":"cursor","in":"query","required":false,"description":"next_cursor from the previous page","schema":{"type":"string"}}]}},"/enrollments/{id}":{"get":{"operationId":"getEnrollmentsId","tags":["Courses"],"summary":"One enrolment","security":[{"bearer":[]}],"responses":{"200":{"description":"OK","headers":{"X-RateLimit-Limit":{"description":"Requests a minute this token may make","schema":{"type":"string"}},"X-RateLimit-Remaining":{"description":"Requests left this minute","schema":{"type":"string"}},"X-RateLimit-Reset":{"description":"Unix time when the minute resets","schema":{"type":"string"}},"RateLimit":{"description":"IETF form: limit, remaining, reset (seconds)","schema":{"type":"string"}},"RateLimit-Policy":{"description":"The policy, e.g. 120;w=60","schema":{"type":"string"}},"X-Request-Id":{"description":"This request’s id, as shown in your request log","schema":{"type":"string"}}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Item"}}}},"400":{"$ref":"#/components/responses/Problem"},"401":{"$ref":"#/components/responses/Problem"},"402":{"$ref":"#/components/responses/Problem"},"403":{"$ref":"#/components/responses/Problem"},"404":{"$ref":"#/components/responses/Problem"},"409":{"$ref":"#/components/responses/Problem"},"422":{"$ref":"#/components/responses/Problem"},"429":{"$ref":"#/components/responses/Problem"}},"description":"Scope: courses:read","x-scope":"courses:read","parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","pattern":"^[0-9a-z]{26}$"}}]}},"/websites":{"get":{"operationId":"getWebsites","tags":["Websites"],"summary":"List HTML websites, newest first","security":[{"bearer":[]}],"responses":{"200":{"description":"OK","headers":{"X-RateLimit-Limit":{"description":"Requests a minute this token may make","schema":{"type":"string"}},"X-RateLimit-Remaining":{"description":"Requests left this minute","schema":{"type":"string"}},"X-RateLimit-Reset":{"description":"Unix time when the minute resets","schema":{"type":"string"}},"RateLimit":{"description":"IETF form: limit, remaining, reset (seconds)","schema":{"type":"string"}},"RateLimit-Policy":{"description":"The policy, e.g. 120;w=60","schema":{"type":"string"}},"X-Request-Id":{"description":"This request’s id, as shown in your request log","schema":{"type":"string"}}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/List"}}}},"400":{"$ref":"#/components/responses/Problem"},"401":{"$ref":"#/components/responses/Problem"},"402":{"$ref":"#/components/responses/Problem"},"403":{"$ref":"#/components/responses/Problem"},"404":{"$ref":"#/components/responses/Problem"},"409":{"$ref":"#/components/responses/Problem"},"422":{"$ref":"#/components/responses/Problem"},"429":{"$ref":"#/components/responses/Problem"}},"description":"Scope: sites:read","x-scope":"sites:read","parameters":[{"name":"status","in":"query","required":false,"description":"draft, published, unpublished, archived or suspended","schema":{"type":"string"}},{"name":"limit","in":"query","required":false,"description":"1-100 (25)","schema":{"type":"integer","minimum":1,"maximum":100,"default":25}},{"name":"cursor","in":"query","required":false,"description":"next_cursor from the previous page","schema":{"type":"string"}}]},"post":{"operationId":"postWebsites","tags":["Websites"],"summary":"Create an empty HTML website","security":[{"bearer":[]}],"responses":{"200":{"description":"OK","headers":{"X-RateLimit-Limit":{"description":"Requests a minute this token may make","schema":{"type":"string"}},"X-RateLimit-Remaining":{"description":"Requests left this minute","schema":{"type":"string"}},"X-RateLimit-Reset":{"description":"Unix time when the minute resets","schema":{"type":"string"}},"RateLimit":{"description":"IETF form: limit, remaining, reset (seconds)","schema":{"type":"string"}},"RateLimit-Policy":{"description":"The policy, e.g. 120;w=60","schema":{"type":"string"}},"X-Request-Id":{"description":"This request’s id, as shown in your request log","schema":{"type":"string"}}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Item"}}}},"400":{"$ref":"#/components/responses/Problem"},"401":{"$ref":"#/components/responses/Problem"},"402":{"$ref":"#/components/responses/Problem"},"403":{"$ref":"#/components/responses/Problem"},"404":{"$ref":"#/components/responses/Problem"},"409":{"$ref":"#/components/responses/Problem"},"422":{"$ref":"#/components/responses/Problem"},"429":{"$ref":"#/components/responses/Problem"}},"description":"Scope: sites:write","x-scope":"sites:write","parameters":[{"name":"Idempotency-Key","in":"header","required":false,"description":"Retry safely: the same key and body run once (24 hours)","schema":{"type":"string","maxLength":80,"pattern":"^[A-Za-z0-9_.:-]{1,80}$"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"name":{"description":"Up to 120 characters"},"slug":{"description":"Its address: weesify.com/{slug}/ ([a-z0-9-], 3–63). Shared with pages and short links, so it must be free; from the name if empty"}},"required":["name"]}}}}}},"/websites/{id}":{"get":{"operationId":"getWebsitesId","tags":["Websites"],"summary":"One website: status, url (https://weesify.com/{slug}/), files and storage","security":[{"bearer":[]}],"responses":{"200":{"description":"OK","headers":{"X-RateLimit-Limit":{"description":"Requests a minute this token may make","schema":{"type":"string"}},"X-RateLimit-Remaining":{"description":"Requests left this minute","schema":{"type":"string"}},"X-RateLimit-Reset":{"description":"Unix time when the minute resets","schema":{"type":"string"}},"RateLimit":{"description":"IETF form: limit, remaining, reset (seconds)","schema":{"type":"string"}},"RateLimit-Policy":{"description":"The policy, e.g. 120;w=60","schema":{"type":"string"}},"X-Request-Id":{"description":"This request’s id, as shown in your request log","schema":{"type":"string"}}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Item"}}}},"400":{"$ref":"#/components/responses/Problem"},"401":{"$ref":"#/components/responses/Problem"},"402":{"$ref":"#/components/responses/Problem"},"403":{"$ref":"#/components/responses/Problem"},"404":{"$ref":"#/components/responses/Problem"},"409":{"$ref":"#/components/responses/Problem"},"422":{"$ref":"#/components/responses/Problem"},"429":{"$ref":"#/components/responses/Problem"}},"description":"Scope: sites:read","x-scope":"sites:read","parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","pattern":"^[0-9a-z]{26}$"}}]},"patch":{"operationId":"patchWebsitesId","tags":["Websites"],"summary":"Rename it, change its address or homepage, or its routing settings","security":[{"bearer":[]}],"responses":{"200":{"description":"OK","headers":{"X-RateLimit-Limit":{"description":"Requests a minute this token may make","schema":{"type":"string"}},"X-RateLimit-Remaining":{"description":"Requests left this minute","schema":{"type":"string"}},"X-RateLimit-Reset":{"description":"Unix time when the minute resets","schema":{"type":"string"}},"RateLimit":{"description":"IETF form: limit, remaining, reset (seconds)","schema":{"type":"string"}},"RateLimit-Policy":{"description":"The policy, e.g. 120;w=60","schema":{"type":"string"}},"X-Request-Id":{"description":"This request’s id, as shown in your request log","schema":{"type":"string"}}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Item"}}}},"400":{"$ref":"#/components/responses/Problem"},"401":{"$ref":"#/components/responses/Problem"},"402":{"$ref":"#/components/responses/Problem"},"403":{"$ref":"#/components/responses/Problem"},"404":{"$ref":"#/components/responses/Problem"},"409":{"$ref":"#/components/responses/Problem"},"422":{"$ref":"#/components/responses/Problem"},"429":{"$ref":"#/components/responses/Problem"}},"description":"Scope: sites:write","x-scope":"sites:write","parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","pattern":"^[0-9a-z]{26}$"}}],"requestBody":{"required":false,"content":{"application/json":{"schema":{"type":"object","properties":{"name":{"description":"name"},"slug":{"description":"New weesify.com/{slug}/ address; the old one redirects"},"homepage":{"description":"A path such as index.html"},"settings":{"description":"{clean_urls, trailing_slash, spa_fallback, not_found, redirects, headers, noindex}"}}}}}}},"delete":{"operationId":"deleteWebsitesId","tags":["Websites"],"summary":"Delete a website (disconnects its domains); needs sites:write and the publish permission","security":[{"bearer":[]}],"responses":{"204":{"description":"Deleted","headers":{"X-RateLimit-Limit":{"description":"Requests a minute this token may make","schema":{"type":"string"}},"X-RateLimit-Remaining":{"description":"Requests left this minute","schema":{"type":"string"}},"X-RateLimit-Reset":{"description":"Unix time when the minute resets","schema":{"type":"string"}},"RateLimit":{"description":"IETF form: limit, remaining, reset (seconds)","schema":{"type":"string"}},"RateLimit-Policy":{"description":"The policy, e.g. 120;w=60","schema":{"type":"string"}},"X-Request-Id":{"description":"This request’s id, as shown in your request log","schema":{"type":"string"}}}},"400":{"$ref":"#/components/responses/Problem"},"401":{"$ref":"#/components/responses/Problem"},"402":{"$ref":"#/components/responses/Problem"},"403":{"$ref":"#/components/responses/Problem"},"404":{"$ref":"#/components/responses/Problem"},"409":{"$ref":"#/components/responses/Problem"},"422":{"$ref":"#/components/responses/Problem"},"429":{"$ref":"#/components/responses/Problem"}},"description":"Scope: sites:write","x-scope":"sites:write","parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","pattern":"^[0-9a-z]{26}$"}}]}},"/websites/{id}/files":{"get":{"operationId":"getWebsitesIdFiles","tags":["Websites"],"summary":"Every file in the working draft (or the live site, or one deployment): path, size, sha256, type","security":[{"bearer":[]}],"responses":{"200":{"description":"OK","headers":{"X-RateLimit-Limit":{"description":"Requests a minute this token may make","schema":{"type":"string"}},"X-RateLimit-Remaining":{"description":"Requests left this minute","schema":{"type":"string"}},"X-RateLimit-Reset":{"description":"Unix time when the minute resets","schema":{"type":"string"}},"RateLimit":{"description":"IETF form: limit, remaining, reset (seconds)","schema":{"type":"string"}},"RateLimit-Policy":{"description":"The policy, e.g. 120;w=60","schema":{"type":"string"}},"X-Request-Id":{"description":"This request’s id, as shown in your request log","schema":{"type":"string"}}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/List"}}}},"400":{"$ref":"#/components/responses/Problem"},"401":{"$ref":"#/components/responses/Problem"},"402":{"$ref":"#/components/responses/Problem"},"403":{"$ref":"#/components/responses/Problem"},"404":{"$ref":"#/components/responses/Problem"},"409":{"$ref":"#/components/responses/Problem"},"422":{"$ref":"#/components/responses/Problem"},"429":{"$ref":"#/components/responses/Problem"}},"description":"Scope: sites:read","x-scope":"sites:read","parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","pattern":"^[0-9a-z]{26}$"}},{"name":"source","in":"query","required":false,"description":"draft (default), live or a deployment id","schema":{"type":"string"}},{"name":"limit","in":"query","required":false,"description":"1-100 (25)","schema":{"type":"integer","minimum":1,"maximum":100,"default":25}},{"name":"cursor","in":"query","required":false,"description":"next_cursor from the previous page","schema":{"type":"string"}}]},"post":{"operationId":"postWebsitesIdFiles","tags":["Websites"],"summary":"Upload files (multipart files[] with optional paths[] and dir); blocked types are reported, not stored","security":[{"bearer":[]}],"responses":{"200":{"description":"OK","headers":{"X-RateLimit-Limit":{"description":"Requests a minute this token may make","schema":{"type":"string"}},"X-RateLimit-Remaining":{"description":"Requests left this minute","schema":{"type":"string"}},"X-RateLimit-Reset":{"description":"Unix time when the minute resets","schema":{"type":"string"}},"RateLimit":{"description":"IETF form: limit, remaining, reset (seconds)","schema":{"type":"string"}},"RateLimit-Policy":{"description":"The policy, e.g. 120;w=60","schema":{"type":"string"}},"X-Request-Id":{"description":"This request’s id, as shown in your request log","schema":{"type":"string"}}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Item"}}}},"400":{"$ref":"#/components/responses/Problem"},"401":{"$ref":"#/components/responses/Problem"},"402":{"$ref":"#/components/responses/Problem"},"403":{"$ref":"#/components/responses/Problem"},"404":{"$ref":"#/components/responses/Problem"},"409":{"$ref":"#/components/responses/Problem"},"422":{"$ref":"#/components/responses/Problem"},"429":{"$ref":"#/components/responses/Problem"}},"description":"Scope: sites:write","x-scope":"sites:write","parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","pattern":"^[0-9a-z]{26}$"}},{"name":"Idempotency-Key","in":"header","required":false,"description":"Retry safely: the same key and body run once (24 hours)","schema":{"type":"string","maxLength":80,"pattern":"^[A-Za-z0-9_.:-]{1,80}$"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"files":{"description":"multipart files[]"},"paths":{"description":"multipart paths[]: each file’s relative path"},"dir":{"description":"Folder to upload into"}},"required":["files"]}}}}}},"/websites/{id}/files/{path}":{"put":{"operationId":"putWebsitesIdFilesPath","tags":["Websites"],"summary":"Write one file from the raw request body (creates folders as needed)","security":[{"bearer":[]}],"responses":{"200":{"description":"OK","headers":{"X-RateLimit-Limit":{"description":"Requests a minute this token may make","schema":{"type":"string"}},"X-RateLimit-Remaining":{"description":"Requests left this minute","schema":{"type":"string"}},"X-RateLimit-Reset":{"description":"Unix time when the minute resets","schema":{"type":"string"}},"RateLimit":{"description":"IETF form: limit, remaining, reset (seconds)","schema":{"type":"string"}},"RateLimit-Policy":{"description":"The policy, e.g. 120;w=60","schema":{"type":"string"}},"X-Request-Id":{"description":"This request’s id, as shown in your request log","schema":{"type":"string"}}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Item"}}}},"400":{"$ref":"#/components/responses/Problem"},"401":{"$ref":"#/components/responses/Problem"},"402":{"$ref":"#/components/responses/Problem"},"403":{"$ref":"#/components/responses/Problem"},"404":{"$ref":"#/components/responses/Problem"},"409":{"$ref":"#/components/responses/Problem"},"422":{"$ref":"#/components/responses/Problem"},"429":{"$ref":"#/components/responses/Problem"}},"description":"Scope: sites:write","x-scope":"sites:write","parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","pattern":"^[0-9a-z]{26}$"}},{"name":"path","in":"path","required":true,"description":"File path, e.g. css/site.css","schema":{"type":"string"}}]},"delete":{"operationId":"deleteWebsitesIdFilesPath","tags":["Websites"],"summary":"Delete a file or folder from the draft","security":[{"bearer":[]}],"responses":{"204":{"description":"Deleted","headers":{"X-RateLimit-Limit":{"description":"Requests a minute this token may make","schema":{"type":"string"}},"X-RateLimit-Remaining":{"description":"Requests left this minute","schema":{"type":"string"}},"X-RateLimit-Reset":{"description":"Unix time when the minute resets","schema":{"type":"string"}},"RateLimit":{"description":"IETF form: limit, remaining, reset (seconds)","schema":{"type":"string"}},"RateLimit-Policy":{"description":"The policy, e.g. 120;w=60","schema":{"type":"string"}},"X-Request-Id":{"description":"This request’s id, as shown in your request log","schema":{"type":"string"}}}},"400":{"$ref":"#/components/responses/Problem"},"401":{"$ref":"#/components/responses/Problem"},"402":{"$ref":"#/components/responses/Problem"},"403":{"$ref":"#/components/responses/Problem"},"404":{"$ref":"#/components/responses/Problem"},"409":{"$ref":"#/components/responses/Problem"},"422":{"$ref":"#/components/responses/Problem"},"429":{"$ref":"#/components/responses/Problem"}},"description":"Scope: sites:write","x-scope":"sites:write","parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","pattern":"^[0-9a-z]{26}$"}},{"name":"path","in":"path","required":true,"description":"File path, e.g. css/site.css","schema":{"type":"string"}}]}},"/websites/{id}/deployments":{"post":{"operationId":"postWebsitesIdDeployments","tags":["Websites"],"summary":"Publish the draft — or send a ZIP as multipart archive to replace the draft and publish it. Needs an approved review when the site requires approval","security":[{"bearer":[]}],"responses":{"200":{"description":"OK","headers":{"X-RateLimit-Limit":{"description":"Requests a minute this token may make","schema":{"type":"string"}},"X-RateLimit-Remaining":{"description":"Requests left this minute","schema":{"type":"string"}},"X-RateLimit-Reset":{"description":"Unix time when the minute resets","schema":{"type":"string"}},"RateLimit":{"description":"IETF form: limit, remaining, reset (seconds)","schema":{"type":"string"}},"RateLimit-Policy":{"description":"The policy, e.g. 120;w=60","schema":{"type":"string"}},"X-Request-Id":{"description":"This request’s id, as shown in your request log","schema":{"type":"string"}}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Item"}}}},"400":{"$ref":"#/components/responses/Problem"},"401":{"$ref":"#/components/responses/Problem"},"402":{"$ref":"#/components/responses/Problem"},"403":{"$ref":"#/components/responses/Problem"},"404":{"$ref":"#/components/responses/Problem"},"409":{"$ref":"#/components/responses/Problem"},"422":{"$ref":"#/components/responses/Problem"},"429":{"$ref":"#/components/responses/Problem"}},"description":"Scope: sites:deploy","x-scope":"sites:deploy","parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","pattern":"^[0-9a-z]{26}$"}},{"name":"Idempotency-Key","in":"header","required":false,"description":"Retry safely: the same key and body run once (24 hours)","schema":{"type":"string","maxLength":80,"pattern":"^[A-Za-z0-9_.:-]{1,80}$"}}],"requestBody":{"required":false,"content":{"application/json":{"schema":{"type":"object","properties":{"message":{"description":"Shown in the deployment history"},"archive":{"description":"multipart ZIP (also needs sites:write)"},"replace":{"description":"With archive: 1 makes the draft exactly the ZIP (files not in it are removed)"}}}}}}},"get":{"operationId":"getWebsitesIdDeployments","tags":["Websites"],"summary":"Deployment history, newest first","security":[{"bearer":[]}],"responses":{"200":{"description":"OK","headers":{"X-RateLimit-Limit":{"description":"Requests a minute this token may make","schema":{"type":"string"}},"X-RateLimit-Remaining":{"description":"Requests left this minute","schema":{"type":"string"}},"X-RateLimit-Reset":{"description":"Unix time when the minute resets","schema":{"type":"string"}},"RateLimit":{"description":"IETF form: limit, remaining, reset (seconds)","schema":{"type":"string"}},"RateLimit-Policy":{"description":"The policy, e.g. 120;w=60","schema":{"type":"string"}},"X-Request-Id":{"description":"This request’s id, as shown in your request log","schema":{"type":"string"}}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/List"}}}},"400":{"$ref":"#/components/responses/Problem"},"401":{"$ref":"#/components/responses/Problem"},"402":{"$ref":"#/components/responses/Problem"},"403":{"$ref":"#/components/responses/Problem"},"404":{"$ref":"#/components/responses/Problem"},"409":{"$ref":"#/components/responses/Problem"},"422":{"$ref":"#/components/responses/Problem"},"429":{"$ref":"#/components/responses/Problem"}},"description":"Scope: sites:read","x-scope":"sites:read","parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","pattern":"^[0-9a-z]{26}$"}},{"name":"limit","in":"query","required":false,"description":"1-100 (25)","schema":{"type":"integer","minimum":1,"maximum":100,"default":25}},{"name":"cursor","in":"query","required":false,"description":"next_cursor from the previous page","schema":{"type":"string"}}]}},"/websites/{id}/deployments/{item}":{"get":{"operationId":"getWebsitesIdDeploymentsItem","tags":["Websites"],"summary":"One deployment and its status (live, failed, superseded)","security":[{"bearer":[]}],"responses":{"200":{"description":"OK","headers":{"X-RateLimit-Limit":{"description":"Requests a minute this token may make","schema":{"type":"string"}},"X-RateLimit-Remaining":{"description":"Requests left this minute","schema":{"type":"string"}},"X-RateLimit-Reset":{"description":"Unix time when the minute resets","schema":{"type":"string"}},"RateLimit":{"description":"IETF form: limit, remaining, reset (seconds)","schema":{"type":"string"}},"RateLimit-Policy":{"description":"The policy, e.g. 120;w=60","schema":{"type":"string"}},"X-Request-Id":{"description":"This request’s id, as shown in your request log","schema":{"type":"string"}}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Item"}}}},"400":{"$ref":"#/components/responses/Problem"},"401":{"$ref":"#/components/responses/Problem"},"402":{"$ref":"#/components/responses/Problem"},"403":{"$ref":"#/components/responses/Problem"},"404":{"$ref":"#/components/responses/Problem"},"409":{"$ref":"#/components/responses/Problem"},"422":{"$ref":"#/components/responses/Problem"},"429":{"$ref":"#/components/responses/Problem"}},"description":"Scope: sites:read","x-scope":"sites:read","parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","pattern":"^[0-9a-z]{26}$"}},{"name":"item","in":"path","required":true,"schema":{"type":"string","pattern":"^[0-9a-z]{26}$"}}]}},"/websites/{id}/rollback":{"post":{"operationId":"postWebsitesIdRollback","tags":["Websites"],"summary":"Make an earlier deployment live again","security":[{"bearer":[]}],"responses":{"200":{"description":"OK","headers":{"X-RateLimit-Limit":{"description":"Requests a minute this token may make","schema":{"type":"string"}},"X-RateLimit-Remaining":{"description":"Requests left this minute","schema":{"type":"string"}},"X-RateLimit-Reset":{"description":"Unix time when the minute resets","schema":{"type":"string"}},"RateLimit":{"description":"IETF form: limit, remaining, reset (seconds)","schema":{"type":"string"}},"RateLimit-Policy":{"description":"The policy, e.g. 120;w=60","schema":{"type":"string"}},"X-Request-Id":{"description":"This request’s id, as shown in your request log","schema":{"type":"string"}}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Item"}}}},"400":{"$ref":"#/components/responses/Problem"},"401":{"$ref":"#/components/responses/Problem"},"402":{"$ref":"#/components/responses/Problem"},"403":{"$ref":"#/components/responses/Problem"},"404":{"$ref":"#/components/responses/Problem"},"409":{"$ref":"#/components/responses/Problem"},"422":{"$ref":"#/components/responses/Problem"},"429":{"$ref":"#/components/responses/Problem"}},"description":"Scope: sites:deploy","x-scope":"sites:deploy","parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","pattern":"^[0-9a-z]{26}$"}},{"name":"Idempotency-Key","in":"header","required":false,"description":"Retry safely: the same key and body run once (24 hours)","schema":{"type":"string","maxLength":80,"pattern":"^[A-Za-z0-9_.:-]{1,80}$"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"deployment_id":{"description":"A deployment of this website"}},"required":["deployment_id"]}}}}}},"/websites/{id}/domains":{"get":{"operationId":"getWebsitesIdDomains","tags":["Websites"],"summary":"Custom domains: state, DNS records to add, HTTPS","security":[{"bearer":[]}],"responses":{"200":{"description":"OK","headers":{"X-RateLimit-Limit":{"description":"Requests a minute this token may make","schema":{"type":"string"}},"X-RateLimit-Remaining":{"description":"Requests left this minute","schema":{"type":"string"}},"X-RateLimit-Reset":{"description":"Unix time when the minute resets","schema":{"type":"string"}},"RateLimit":{"description":"IETF form: limit, remaining, reset (seconds)","schema":{"type":"string"}},"RateLimit-Policy":{"description":"The policy, e.g. 120;w=60","schema":{"type":"string"}},"X-Request-Id":{"description":"This request’s id, as shown in your request log","schema":{"type":"string"}}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/List"}}}},"400":{"$ref":"#/components/responses/Problem"},"401":{"$ref":"#/components/responses/Problem"},"402":{"$ref":"#/components/responses/Problem"},"403":{"$ref":"#/components/responses/Problem"},"404":{"$ref":"#/components/responses/Problem"},"409":{"$ref":"#/components/responses/Problem"},"422":{"$ref":"#/components/responses/Problem"},"429":{"$ref":"#/components/responses/Problem"}},"description":"Scope: sites:read","x-scope":"sites:read","parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","pattern":"^[0-9a-z]{26}$"}},{"name":"limit","in":"query","required":false,"description":"1-100 (25)","schema":{"type":"integer","minimum":1,"maximum":100,"default":25}},{"name":"cursor","in":"query","required":false,"description":"next_cursor from the previous page","schema":{"type":"string"}}]},"post":{"operationId":"postWebsitesIdDomains","tags":["Websites"],"summary":"Connect a custom domain (pending until its TXT record verifies)","security":[{"bearer":[]}],"responses":{"200":{"description":"OK","headers":{"X-RateLimit-Limit":{"description":"Requests a minute this token may make","schema":{"type":"string"}},"X-RateLimit-Remaining":{"description":"Requests left this minute","schema":{"type":"string"}},"X-RateLimit-Reset":{"description":"Unix time when the minute resets","schema":{"type":"string"}},"RateLimit":{"description":"IETF form: limit, remaining, reset (seconds)","schema":{"type":"string"}},"RateLimit-Policy":{"description":"The policy, e.g. 120;w=60","schema":{"type":"string"}},"X-Request-Id":{"description":"This request’s id, as shown in your request log","schema":{"type":"string"}}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Item"}}}},"400":{"$ref":"#/components/responses/Problem"},"401":{"$ref":"#/components/responses/Problem"},"402":{"$ref":"#/components/responses/Problem"},"403":{"$ref":"#/components/responses/Problem"},"404":{"$ref":"#/components/responses/Problem"},"409":{"$ref":"#/components/responses/Problem"},"422":{"$ref":"#/components/responses/Problem"},"429":{"$ref":"#/components/responses/Problem"}},"description":"Scope: sites:write","x-scope":"sites:write","parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","pattern":"^[0-9a-z]{26}$"}},{"name":"Idempotency-Key","in":"header","required":false,"description":"Retry safely: the same key and body run once (24 hours)","schema":{"type":"string","maxLength":80,"pattern":"^[A-Za-z0-9_.:-]{1,80}$"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"host":{"description":"e.g. www.yourbrand.com"}},"required":["host"]}}}}}},"/websites/{id}/domains/{item}/verify":{"post":{"operationId":"postWebsitesIdDomainsItemVerify","tags":["Websites"],"summary":"Check ownership, DNS and HTTPS now","security":[{"bearer":[]}],"responses":{"200":{"description":"OK","headers":{"X-RateLimit-Limit":{"description":"Requests a minute this token may make","schema":{"type":"string"}},"X-RateLimit-Remaining":{"description":"Requests left this minute","schema":{"type":"string"}},"X-RateLimit-Reset":{"description":"Unix time when the minute resets","schema":{"type":"string"}},"RateLimit":{"description":"IETF form: limit, remaining, reset (seconds)","schema":{"type":"string"}},"RateLimit-Policy":{"description":"The policy, e.g. 120;w=60","schema":{"type":"string"}},"X-Request-Id":{"description":"This request’s id, as shown in your request log","schema":{"type":"string"}}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Item"}}}},"400":{"$ref":"#/components/responses/Problem"},"401":{"$ref":"#/components/responses/Problem"},"402":{"$ref":"#/components/responses/Problem"},"403":{"$ref":"#/components/responses/Problem"},"404":{"$ref":"#/components/responses/Problem"},"409":{"$ref":"#/components/responses/Problem"},"422":{"$ref":"#/components/responses/Problem"},"429":{"$ref":"#/components/responses/Problem"}},"description":"Scope: sites:write","x-scope":"sites:write","parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","pattern":"^[0-9a-z]{26}$"}},{"name":"item","in":"path","required":true,"schema":{"type":"string","pattern":"^[0-9a-z]{26}$"}},{"name":"Idempotency-Key","in":"header","required":false,"description":"Retry safely: the same key and body run once (24 hours)","schema":{"type":"string","maxLength":80,"pattern":"^[A-Za-z0-9_.:-]{1,80}$"}}]}},"/websites/{id}/domains/{item}":{"delete":{"operationId":"deleteWebsitesIdDomainsItem","tags":["Websites"],"summary":"Disconnect a custom domain","security":[{"bearer":[]}],"responses":{"204":{"description":"Deleted","headers":{"X-RateLimit-Limit":{"description":"Requests a minute this token may make","schema":{"type":"string"}},"X-RateLimit-Remaining":{"description":"Requests left this minute","schema":{"type":"string"}},"X-RateLimit-Reset":{"description":"Unix time when the minute resets","schema":{"type":"string"}},"RateLimit":{"description":"IETF form: limit, remaining, reset (seconds)","schema":{"type":"string"}},"RateLimit-Policy":{"description":"The policy, e.g. 120;w=60","schema":{"type":"string"}},"X-Request-Id":{"description":"This request’s id, as shown in your request log","schema":{"type":"string"}}}},"400":{"$ref":"#/components/responses/Problem"},"401":{"$ref":"#/components/responses/Problem"},"402":{"$ref":"#/components/responses/Problem"},"403":{"$ref":"#/components/responses/Problem"},"404":{"$ref":"#/components/responses/Problem"},"409":{"$ref":"#/components/responses/Problem"},"422":{"$ref":"#/components/responses/Problem"},"429":{"$ref":"#/components/responses/Problem"}},"description":"Scope: sites:write","x-scope":"sites:write","parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","pattern":"^[0-9a-z]{26}$"}},{"name":"item","in":"path","required":true,"schema":{"type":"string","pattern":"^[0-9a-z]{26}$"}}]}},"/websites/{id}/archive":{"post":{"operationId":"postWebsitesIdArchive","tags":["Websites"],"summary":"Replace or update the working draft from a ZIP without publishing","security":[{"bearer":[]}],"responses":{"200":{"description":"OK","headers":{"X-RateLimit-Limit":{"description":"Requests a minute this token may make","schema":{"type":"string"}},"X-RateLimit-Remaining":{"description":"Requests left this minute","schema":{"type":"string"}},"X-RateLimit-Reset":{"description":"Unix time when the minute resets","schema":{"type":"string"}},"RateLimit":{"description":"IETF form: limit, remaining, reset (seconds)","schema":{"type":"string"}},"RateLimit-Policy":{"description":"The policy, e.g. 120;w=60","schema":{"type":"string"}},"X-Request-Id":{"description":"This request’s id, as shown in your request log","schema":{"type":"string"}}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Item"}}}},"400":{"$ref":"#/components/responses/Problem"},"401":{"$ref":"#/components/responses/Problem"},"402":{"$ref":"#/components/responses/Problem"},"403":{"$ref":"#/components/responses/Problem"},"404":{"$ref":"#/components/responses/Problem"},"409":{"$ref":"#/components/responses/Problem"},"422":{"$ref":"#/components/responses/Problem"},"429":{"$ref":"#/components/responses/Problem"}},"description":"Scope: sites:write","x-scope":"sites:write","parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","pattern":"^[0-9a-z]{26}$"}},{"name":"Idempotency-Key","in":"header","required":false,"description":"Retry safely: the same key and body run once (24 hours)","schema":{"type":"string","maxLength":80,"pattern":"^[A-Za-z0-9_.:-]{1,80}$"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"archive":{"description":"multipart ZIP"},"replace":{"description":"1: the draft becomes exactly the ZIP; otherwise files are added or overwritten"}},"required":["archive"]}}}}},"get":{"operationId":"getWebsitesIdArchive","tags":["Websites"],"summary":"Download the draft, the live site or one deployment as a ZIP","security":[{"bearer":[]}],"responses":{"200":{"description":"OK","headers":{"X-RateLimit-Limit":{"description":"Requests a minute this token may make","schema":{"type":"string"}},"X-RateLimit-Remaining":{"description":"Requests left this minute","schema":{"type":"string"}},"X-RateLimit-Reset":{"description":"Unix time when the minute resets","schema":{"type":"string"}},"RateLimit":{"description":"IETF form: limit, remaining, reset (seconds)","schema":{"type":"string"}},"RateLimit-Policy":{"description":"The policy, e.g. 120;w=60","schema":{"type":"string"}},"X-Request-Id":{"description":"This request’s id, as shown in your request log","schema":{"type":"string"}}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Item"}}}},"400":{"$ref":"#/components/responses/Problem"},"401":{"$ref":"#/components/responses/Problem"},"402":{"$ref":"#/components/responses/Problem"},"403":{"$ref":"#/components/responses/Problem"},"404":{"$ref":"#/components/responses/Problem"},"409":{"$ref":"#/components/responses/Problem"},"422":{"$ref":"#/components/responses/Problem"},"429":{"$ref":"#/components/responses/Problem"}},"description":"Scope: sites:read","x-scope":"sites:read","parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","pattern":"^[0-9a-z]{26}$"}},{"name":"source","in":"query","required":false,"description":"draft (default), live or a deployment id","schema":{"type":"string"}}]}},"/websites/{id}/usage":{"get":{"operationId":"getWebsitesIdUsage","tags":["Websites"],"summary":"Storage, bandwidth, views, visits, form submissions and plan limits","security":[{"bearer":[]}],"responses":{"200":{"description":"OK","headers":{"X-RateLimit-Limit":{"description":"Requests a minute this token may make","schema":{"type":"string"}},"X-RateLimit-Remaining":{"description":"Requests left this minute","schema":{"type":"string"}},"X-RateLimit-Reset":{"description":"Unix time when the minute resets","schema":{"type":"string"}},"RateLimit":{"description":"IETF form: limit, remaining, reset (seconds)","schema":{"type":"string"}},"RateLimit-Policy":{"description":"The policy, e.g. 120;w=60","schema":{"type":"string"}},"X-Request-Id":{"description":"This request’s id, as shown in your request log","schema":{"type":"string"}}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Item"}}}},"400":{"$ref":"#/components/responses/Problem"},"401":{"$ref":"#/components/responses/Problem"},"402":{"$ref":"#/components/responses/Problem"},"403":{"$ref":"#/components/responses/Problem"},"404":{"$ref":"#/components/responses/Problem"},"409":{"$ref":"#/components/responses/Problem"},"422":{"$ref":"#/components/responses/Problem"},"429":{"$ref":"#/components/responses/Problem"}},"description":"Scope: sites:read","x-scope":"sites:read","parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","pattern":"^[0-9a-z]{26}$"}}]}},"/blog/posts":{"get":{"operationId":"getBlogPosts","tags":["Blog"],"summary":"Blog posts, newest first (drafts included)","security":[{"bearer":[]}],"responses":{"200":{"description":"OK","headers":{"X-RateLimit-Limit":{"description":"Requests a minute this token may make","schema":{"type":"string"}},"X-RateLimit-Remaining":{"description":"Requests left this minute","schema":{"type":"string"}},"X-RateLimit-Reset":{"description":"Unix time when the minute resets","schema":{"type":"string"}},"RateLimit":{"description":"IETF form: limit, remaining, reset (seconds)","schema":{"type":"string"}},"RateLimit-Policy":{"description":"The policy, e.g. 120;w=60","schema":{"type":"string"}},"X-Request-Id":{"description":"This request’s id, as shown in your request log","schema":{"type":"string"}}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/List"}}}},"400":{"$ref":"#/components/responses/Problem"},"401":{"$ref":"#/components/responses/Problem"},"402":{"$ref":"#/components/responses/Problem"},"403":{"$ref":"#/components/responses/Problem"},"404":{"$ref":"#/components/responses/Problem"},"409":{"$ref":"#/components/responses/Problem"},"422":{"$ref":"#/components/responses/Problem"},"429":{"$ref":"#/components/responses/Problem"}},"description":"Scope: blog:read","x-scope":"blog:read","parameters":[{"name":"status","in":"query","required":false,"description":"draft, scheduled, published, archived","schema":{"type":"string"}},{"name":"category_id","in":"query","required":false,"description":"One category","schema":{"type":"string"}},{"name":"limit","in":"query","required":false,"description":"1-100 (25)","schema":{"type":"integer","minimum":1,"maximum":100,"default":25}},{"name":"cursor","in":"query","required":false,"description":"next_cursor from the previous page","schema":{"type":"string"}}]}},"/blog/posts/{id}":{"get":{"operationId":"getBlogPostsId","tags":["Blog"],"summary":"One post, with its body","security":[{"bearer":[]}],"responses":{"200":{"description":"OK","headers":{"X-RateLimit-Limit":{"description":"Requests a minute this token may make","schema":{"type":"string"}},"X-RateLimit-Remaining":{"description":"Requests left this minute","schema":{"type":"string"}},"X-RateLimit-Reset":{"description":"Unix time when the minute resets","schema":{"type":"string"}},"RateLimit":{"description":"IETF form: limit, remaining, reset (seconds)","schema":{"type":"string"}},"RateLimit-Policy":{"description":"The policy, e.g. 120;w=60","schema":{"type":"string"}},"X-Request-Id":{"description":"This request’s id, as shown in your request log","schema":{"type":"string"}}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Item"}}}},"400":{"$ref":"#/components/responses/Problem"},"401":{"$ref":"#/components/responses/Problem"},"402":{"$ref":"#/components/responses/Problem"},"403":{"$ref":"#/components/responses/Problem"},"404":{"$ref":"#/components/responses/Problem"},"409":{"$ref":"#/components/responses/Problem"},"422":{"$ref":"#/components/responses/Problem"},"429":{"$ref":"#/components/responses/Problem"}},"description":"Scope: blog:read","x-scope":"blog:read","parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","pattern":"^[0-9a-z]{26}$"}}]}},"/blog/categories":{"get":{"operationId":"getBlogCategories","tags":["Blog"],"summary":"Blog categories","security":[{"bearer":[]}],"responses":{"200":{"description":"OK","headers":{"X-RateLimit-Limit":{"description":"Requests a minute this token may make","schema":{"type":"string"}},"X-RateLimit-Remaining":{"description":"Requests left this minute","schema":{"type":"string"}},"X-RateLimit-Reset":{"description":"Unix time when the minute resets","schema":{"type":"string"}},"RateLimit":{"description":"IETF form: limit, remaining, reset (seconds)","schema":{"type":"string"}},"RateLimit-Policy":{"description":"The policy, e.g. 120;w=60","schema":{"type":"string"}},"X-Request-Id":{"description":"This request’s id, as shown in your request log","schema":{"type":"string"}}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/List"}}}},"400":{"$ref":"#/components/responses/Problem"},"401":{"$ref":"#/components/responses/Problem"},"402":{"$ref":"#/components/responses/Problem"},"403":{"$ref":"#/components/responses/Problem"},"404":{"$ref":"#/components/responses/Problem"},"409":{"$ref":"#/components/responses/Problem"},"422":{"$ref":"#/components/responses/Problem"},"429":{"$ref":"#/components/responses/Problem"}},"description":"Scope: blog:read","x-scope":"blog:read","parameters":[{"name":"limit","in":"query","required":false,"description":"1-100 (25)","schema":{"type":"integer","minimum":1,"maximum":100,"default":25}},{"name":"cursor","in":"query","required":false,"description":"next_cursor from the previous page","schema":{"type":"string"}}]}},"/analytics/summary":{"get":{"operationId":"getAnalyticsSummary","tags":["Analytics"],"summary":"Views and clicks per day, with top countries, referrers and devices","security":[{"bearer":[]}],"responses":{"200":{"description":"OK","headers":{"X-RateLimit-Limit":{"description":"Requests a minute this token may make","schema":{"type":"string"}},"X-RateLimit-Remaining":{"description":"Requests left this minute","schema":{"type":"string"}},"X-RateLimit-Reset":{"description":"Unix time when the minute resets","schema":{"type":"string"}},"RateLimit":{"description":"IETF form: limit, remaining, reset (seconds)","schema":{"type":"string"}},"RateLimit-Policy":{"description":"The policy, e.g. 120;w=60","schema":{"type":"string"}},"X-Request-Id":{"description":"This request’s id, as shown in your request log","schema":{"type":"string"}}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Item"}}}},"400":{"$ref":"#/components/responses/Problem"},"401":{"$ref":"#/components/responses/Problem"},"402":{"$ref":"#/components/responses/Problem"},"403":{"$ref":"#/components/responses/Problem"},"404":{"$ref":"#/components/responses/Problem"},"409":{"$ref":"#/components/responses/Problem"},"422":{"$ref":"#/components/responses/Problem"},"429":{"$ref":"#/components/responses/Problem"}},"description":"Scope: analytics:read","x-scope":"analytics:read","parameters":[{"name":"days","in":"query","required":false,"description":"1-90 (30)","schema":{"type":"string"}},{"name":"subject","in":"query","required":false,"description":"site, short_link or qr_code","schema":{"type":"string"}},{"name":"subject_id","in":"query","required":false,"description":"One of them","schema":{"type":"string"}}]}},"/webhook-events":{"get":{"operationId":"getWebhookEvents","tags":["Webhooks"],"summary":"Every event an endpoint can ask for","security":[{"bearer":[]}],"responses":{"200":{"description":"OK","headers":{"X-RateLimit-Limit":{"description":"Requests a minute this token may make","schema":{"type":"string"}},"X-RateLimit-Remaining":{"description":"Requests left this minute","schema":{"type":"string"}},"X-RateLimit-Reset":{"description":"Unix time when the minute resets","schema":{"type":"string"}},"RateLimit":{"description":"IETF form: limit, remaining, reset (seconds)","schema":{"type":"string"}},"RateLimit-Policy":{"description":"The policy, e.g. 120;w=60","schema":{"type":"string"}},"X-Request-Id":{"description":"This request’s id, as shown in your request log","schema":{"type":"string"}}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/List"}}}},"400":{"$ref":"#/components/responses/Problem"},"401":{"$ref":"#/components/responses/Problem"},"402":{"$ref":"#/components/responses/Problem"},"403":{"$ref":"#/components/responses/Problem"},"404":{"$ref":"#/components/responses/Problem"},"409":{"$ref":"#/components/responses/Problem"},"422":{"$ref":"#/components/responses/Problem"},"429":{"$ref":"#/components/responses/Problem"}},"description":"Scope: webhooks:read","x-scope":"webhooks:read"}},"/webhooks":{"get":{"operationId":"getWebhooks","tags":["Webhooks"],"summary":"Your webhook, Slack and Discord endpoints","security":[{"bearer":[]}],"responses":{"200":{"description":"OK","headers":{"X-RateLimit-Limit":{"description":"Requests a minute this token may make","schema":{"type":"string"}},"X-RateLimit-Remaining":{"description":"Requests left this minute","schema":{"type":"string"}},"X-RateLimit-Reset":{"description":"Unix time when the minute resets","schema":{"type":"string"}},"RateLimit":{"description":"IETF form: limit, remaining, reset (seconds)","schema":{"type":"string"}},"RateLimit-Policy":{"description":"The policy, e.g. 120;w=60","schema":{"type":"string"}},"X-Request-Id":{"description":"This request’s id, as shown in your request log","schema":{"type":"string"}}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/List"}}}},"400":{"$ref":"#/components/responses/Problem"},"401":{"$ref":"#/components/responses/Problem"},"402":{"$ref":"#/components/responses/Problem"},"403":{"$ref":"#/components/responses/Problem"},"404":{"$ref":"#/components/responses/Problem"},"409":{"$ref":"#/components/responses/Problem"},"422":{"$ref":"#/components/responses/Problem"},"429":{"$ref":"#/components/responses/Problem"}},"description":"Scope: webhooks:read","x-scope":"webhooks:read","parameters":[{"name":"limit","in":"query","required":false,"description":"1-100 (25)","schema":{"type":"integer","minimum":1,"maximum":100,"default":25}},{"name":"cursor","in":"query","required":false,"description":"next_cursor from the previous page","schema":{"type":"string"}}]},"post":{"operationId":"postWebhooks","tags":["Webhooks"],"summary":"Add an endpoint; the signing secret is in this answer only","security":[{"bearer":[]}],"responses":{"201":{"description":"OK","headers":{"X-RateLimit-Limit":{"description":"Requests a minute this token may make","schema":{"type":"string"}},"X-RateLimit-Remaining":{"description":"Requests left this minute","schema":{"type":"string"}},"X-RateLimit-Reset":{"description":"Unix time when the minute resets","schema":{"type":"string"}},"RateLimit":{"description":"IETF form: limit, remaining, reset (seconds)","schema":{"type":"string"}},"RateLimit-Policy":{"description":"The policy, e.g. 120;w=60","schema":{"type":"string"}},"X-Request-Id":{"description":"This request’s id, as shown in your request log","schema":{"type":"string"}}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Item"}}}},"400":{"$ref":"#/components/responses/Problem"},"401":{"$ref":"#/components/responses/Problem"},"402":{"$ref":"#/components/responses/Problem"},"403":{"$ref":"#/components/responses/Problem"},"404":{"$ref":"#/components/responses/Problem"},"409":{"$ref":"#/components/responses/Problem"},"422":{"$ref":"#/components/responses/Problem"},"429":{"$ref":"#/components/responses/Problem"}},"description":"Scope: webhooks:write","x-scope":"webhooks:write","parameters":[{"name":"Idempotency-Key","in":"header","required":false,"description":"Retry safely: the same key and body run once (24 hours)","schema":{"type":"string","maxLength":80,"pattern":"^[A-Za-z0-9_.:-]{1,80}$"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"url":{"description":"https address on a host name (port 443)"},"events":{"description":"Event names, e.g. [\"order.paid\"]"},"kind":{"description":"webhook (default), slack or discord"},"description":{"description":"Only you see it"}},"required":["url","events"]}}}}}},"/webhooks/{id}":{"get":{"operationId":"getWebhooksId","tags":["Webhooks"],"summary":"One endpoint and its health","security":[{"bearer":[]}],"responses":{"200":{"description":"OK","headers":{"X-RateLimit-Limit":{"description":"Requests a minute this token may make","schema":{"type":"string"}},"X-RateLimit-Remaining":{"description":"Requests left this minute","schema":{"type":"string"}},"X-RateLimit-Reset":{"description":"Unix time when the minute resets","schema":{"type":"string"}},"RateLimit":{"description":"IETF form: limit, remaining, reset (seconds)","schema":{"type":"string"}},"RateLimit-Policy":{"description":"The policy, e.g. 120;w=60","schema":{"type":"string"}},"X-Request-Id":{"description":"This request’s id, as shown in your request log","schema":{"type":"string"}}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Item"}}}},"400":{"$ref":"#/components/responses/Problem"},"401":{"$ref":"#/components/responses/Problem"},"402":{"$ref":"#/components/responses/Problem"},"403":{"$ref":"#/components/responses/Problem"},"404":{"$ref":"#/components/responses/Problem"},"409":{"$ref":"#/components/responses/Problem"},"422":{"$ref":"#/components/responses/Problem"},"429":{"$ref":"#/components/responses/Problem"}},"description":"Scope: webhooks:read","x-scope":"webhooks:read","parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","pattern":"^[0-9a-z]{26}$"}}]},"patch":{"operationId":"patchWebhooksId","tags":["Webhooks"],"summary":"Change its events or description; active: false pauses it, active: true switches it back on","security":[{"bearer":[]}],"responses":{"200":{"description":"OK","headers":{"X-RateLimit-Limit":{"description":"Requests a minute this token may make","schema":{"type":"string"}},"X-RateLimit-Remaining":{"description":"Requests left this minute","schema":{"type":"string"}},"X-RateLimit-Reset":{"description":"Unix time when the minute resets","schema":{"type":"string"}},"RateLimit":{"description":"IETF form: limit, remaining, reset (seconds)","schema":{"type":"string"}},"RateLimit-Policy":{"description":"The policy, e.g. 120;w=60","schema":{"type":"string"}},"X-Request-Id":{"description":"This request’s id, as shown in your request log","schema":{"type":"string"}}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Item"}}}},"400":{"$ref":"#/components/responses/Problem"},"401":{"$ref":"#/components/responses/Problem"},"402":{"$ref":"#/components/responses/Problem"},"403":{"$ref":"#/components/responses/Problem"},"404":{"$ref":"#/components/responses/Problem"},"409":{"$ref":"#/components/responses/Problem"},"422":{"$ref":"#/components/responses/Problem"},"429":{"$ref":"#/components/responses/Problem"}},"description":"Scope: webhooks:write","x-scope":"webhooks:write","parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","pattern":"^[0-9a-z]{26}$"}}],"requestBody":{"required":false,"content":{"application/json":{"schema":{"type":"object","properties":{"events":{"description":"events"},"description":{"description":"description"},"active":{"description":"Boolean"}}}}}}},"delete":{"operationId":"deleteWebhooksId","tags":["Webhooks"],"summary":"Remove an endpoint","security":[{"bearer":[]}],"responses":{"204":{"description":"Deleted","headers":{"X-RateLimit-Limit":{"description":"Requests a minute this token may make","schema":{"type":"string"}},"X-RateLimit-Remaining":{"description":"Requests left this minute","schema":{"type":"string"}},"X-RateLimit-Reset":{"description":"Unix time when the minute resets","schema":{"type":"string"}},"RateLimit":{"description":"IETF form: limit, remaining, reset (seconds)","schema":{"type":"string"}},"RateLimit-Policy":{"description":"The policy, e.g. 120;w=60","schema":{"type":"string"}},"X-Request-Id":{"description":"This request’s id, as shown in your request log","schema":{"type":"string"}}}},"400":{"$ref":"#/components/responses/Problem"},"401":{"$ref":"#/components/responses/Problem"},"402":{"$ref":"#/components/responses/Problem"},"403":{"$ref":"#/components/responses/Problem"},"404":{"$ref":"#/components/responses/Problem"},"409":{"$ref":"#/components/responses/Problem"},"422":{"$ref":"#/components/responses/Problem"},"429":{"$ref":"#/components/responses/Problem"}},"description":"Scope: webhooks:write","x-scope":"webhooks:write","parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","pattern":"^[0-9a-z]{26}$"}}]}},"/webhooks/{id}/test":{"post":{"operationId":"postWebhooksIdTest","tags":["Webhooks"],"summary":"Send a signed “ping” now and get the result","security":[{"bearer":[]}],"responses":{"200":{"description":"OK","headers":{"X-RateLimit-Limit":{"description":"Requests a minute this token may make","schema":{"type":"string"}},"X-RateLimit-Remaining":{"description":"Requests left this minute","schema":{"type":"string"}},"X-RateLimit-Reset":{"description":"Unix time when the minute resets","schema":{"type":"string"}},"RateLimit":{"description":"IETF form: limit, remaining, reset (seconds)","schema":{"type":"string"}},"RateLimit-Policy":{"description":"The policy, e.g. 120;w=60","schema":{"type":"string"}},"X-Request-Id":{"description":"This request’s id, as shown in your request log","schema":{"type":"string"}}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Item"}}}},"400":{"$ref":"#/components/responses/Problem"},"401":{"$ref":"#/components/responses/Problem"},"402":{"$ref":"#/components/responses/Problem"},"403":{"$ref":"#/components/responses/Problem"},"404":{"$ref":"#/components/responses/Problem"},"409":{"$ref":"#/components/responses/Problem"},"422":{"$ref":"#/components/responses/Problem"},"429":{"$ref":"#/components/responses/Problem"}},"description":"Scope: webhooks:write","x-scope":"webhooks:write","parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","pattern":"^[0-9a-z]{26}$"}},{"name":"Idempotency-Key","in":"header","required":false,"description":"Retry safely: the same key and body run once (24 hours)","schema":{"type":"string","maxLength":80,"pattern":"^[A-Za-z0-9_.:-]{1,80}$"}}]}},"/webhooks/{id}/rotate-secret":{"post":{"operationId":"postWebhooksIdRotateSecret","tags":["Webhooks"],"summary":"A new signing secret; the old one keeps signing alongside it for a day","security":[{"bearer":[]}],"responses":{"200":{"description":"OK","headers":{"X-RateLimit-Limit":{"description":"Requests a minute this token may make","schema":{"type":"string"}},"X-RateLimit-Remaining":{"description":"Requests left this minute","schema":{"type":"string"}},"X-RateLimit-Reset":{"description":"Unix time when the minute resets","schema":{"type":"string"}},"RateLimit":{"description":"IETF form: limit, remaining, reset (seconds)","schema":{"type":"string"}},"RateLimit-Policy":{"description":"The policy, e.g. 120;w=60","schema":{"type":"string"}},"X-Request-Id":{"description":"This request’s id, as shown in your request log","schema":{"type":"string"}}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Item"}}}},"400":{"$ref":"#/components/responses/Problem"},"401":{"$ref":"#/components/responses/Problem"},"402":{"$ref":"#/components/responses/Problem"},"403":{"$ref":"#/components/responses/Problem"},"404":{"$ref":"#/components/responses/Problem"},"409":{"$ref":"#/components/responses/Problem"},"422":{"$ref":"#/components/responses/Problem"},"429":{"$ref":"#/components/responses/Problem"}},"description":"Scope: webhooks:write","x-scope":"webhooks:write","parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","pattern":"^[0-9a-z]{26}$"}},{"name":"Idempotency-Key","in":"header","required":false,"description":"Retry safely: the same key and body run once (24 hours)","schema":{"type":"string","maxLength":80,"pattern":"^[A-Za-z0-9_.:-]{1,80}$"}}]}},"/webhooks/{id}/deliveries":{"get":{"operationId":"getWebhooksIdDeliveries","tags":["Webhooks"],"summary":"Its delivery log (30 days), newest first","security":[{"bearer":[]}],"responses":{"200":{"description":"OK","headers":{"X-RateLimit-Limit":{"description":"Requests a minute this token may make","schema":{"type":"string"}},"X-RateLimit-Remaining":{"description":"Requests left this minute","schema":{"type":"string"}},"X-RateLimit-Reset":{"description":"Unix time when the minute resets","schema":{"type":"string"}},"RateLimit":{"description":"IETF form: limit, remaining, reset (seconds)","schema":{"type":"string"}},"RateLimit-Policy":{"description":"The policy, e.g. 120;w=60","schema":{"type":"string"}},"X-Request-Id":{"description":"This request’s id, as shown in your request log","schema":{"type":"string"}}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/List"}}}},"400":{"$ref":"#/components/responses/Problem"},"401":{"$ref":"#/components/responses/Problem"},"402":{"$ref":"#/components/responses/Problem"},"403":{"$ref":"#/components/responses/Problem"},"404":{"$ref":"#/components/responses/Problem"},"409":{"$ref":"#/components/responses/Problem"},"422":{"$ref":"#/components/responses/Problem"},"429":{"$ref":"#/components/responses/Problem"}},"description":"Scope: webhooks:read","x-scope":"webhooks:read","parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","pattern":"^[0-9a-z]{26}$"}},{"name":"status","in":"query","required":false,"description":"pending, sending, delivered, failed, dead","schema":{"type":"string"}},{"name":"limit","in":"query","required":false,"description":"1-100 (25)","schema":{"type":"integer","minimum":1,"maximum":100,"default":25}},{"name":"cursor","in":"query","required":false,"description":"next_cursor from the previous page","schema":{"type":"string"}}]}},"/webhooks/{id}/deliveries/{item}/redeliver":{"post":{"operationId":"postWebhooksIdDeliveriesItemRedeliver","tags":["Webhooks"],"summary":"Send a delivery again (same event id)","security":[{"bearer":[]}],"responses":{"200":{"description":"OK","headers":{"X-RateLimit-Limit":{"description":"Requests a minute this token may make","schema":{"type":"string"}},"X-RateLimit-Remaining":{"description":"Requests left this minute","schema":{"type":"string"}},"X-RateLimit-Reset":{"description":"Unix time when the minute resets","schema":{"type":"string"}},"RateLimit":{"description":"IETF form: limit, remaining, reset (seconds)","schema":{"type":"string"}},"RateLimit-Policy":{"description":"The policy, e.g. 120;w=60","schema":{"type":"string"}},"X-Request-Id":{"description":"This request’s id, as shown in your request log","schema":{"type":"string"}}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Item"}}}},"400":{"$ref":"#/components/responses/Problem"},"401":{"$ref":"#/components/responses/Problem"},"402":{"$ref":"#/components/responses/Problem"},"403":{"$ref":"#/components/responses/Problem"},"404":{"$ref":"#/components/responses/Problem"},"409":{"$ref":"#/components/responses/Problem"},"422":{"$ref":"#/components/responses/Problem"},"429":{"$ref":"#/components/responses/Problem"}},"description":"Scope: webhooks:write","x-scope":"webhooks:write","parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","pattern":"^[0-9a-z]{26}$"}},{"name":"item","in":"path","required":true,"schema":{"type":"string","pattern":"^[0-9a-z]{26}$"}},{"name":"Idempotency-Key","in":"header","required":false,"description":"Retry safely: the same key and body run once (24 hours)","schema":{"type":"string","maxLength":80,"pattern":"^[A-Za-z0-9_.:-]{1,80}$"}}]}}},"webhooks":{"ping":{"post":{"operationId":"webhookPing","summary":"A test send","description":"Signed with X-Weesify-Signature: t=<unix time>,v1=HMAC-SHA256(secret, t + \".\" + raw body). X-Weesify-Event and X-Weesify-Delivery name the event and delivery.","requestBody":{"content":{"application/json":{"schema":{"type":"object","required":["id","event","created_at","workspace","data"],"properties":{"id":{"type":"string"},"event":{"const":"ping"},"created_at":{"type":"string","format":"date-time"},"workspace":{"type":"object"},"data":{"type":"object"}}}}}},"responses":{"2XX":{"description":"Received"}}}},"contact.created":{"post":{"operationId":"webhookContactCreated","summary":"New contact","description":"Signed with X-Weesify-Signature: t=<unix time>,v1=HMAC-SHA256(secret, t + \".\" + raw body). X-Weesify-Event and X-Weesify-Delivery name the event and delivery.","requestBody":{"content":{"application/json":{"schema":{"type":"object","required":["id","event","created_at","workspace","data"],"properties":{"id":{"type":"string"},"event":{"const":"contact.created"},"created_at":{"type":"string","format":"date-time"},"workspace":{"type":"object"},"data":{"type":"object"}}}}}},"responses":{"2XX":{"description":"Received"}}}},"contact.updated":{"post":{"operationId":"webhookContactUpdated","summary":"Contact details changed","description":"Signed with X-Weesify-Signature: t=<unix time>,v1=HMAC-SHA256(secret, t + \".\" + raw body). X-Weesify-Event and X-Weesify-Delivery name the event and delivery.","requestBody":{"content":{"application/json":{"schema":{"type":"object","required":["id","event","created_at","workspace","data"],"properties":{"id":{"type":"string"},"event":{"const":"contact.updated"},"created_at":{"type":"string","format":"date-time"},"workspace":{"type":"object"},"data":{"type":"object"}}}}}},"responses":{"2XX":{"description":"Received"}}}},"contact.subscribed":{"post":{"operationId":"webhookContactSubscribed","summary":"Subscribed","description":"Signed with X-Weesify-Signature: t=<unix time>,v1=HMAC-SHA256(secret, t + \".\" + raw body). X-Weesify-Event and X-Weesify-Delivery name the event and delivery.","requestBody":{"content":{"application/json":{"schema":{"type":"object","required":["id","event","created_at","workspace","data"],"properties":{"id":{"type":"string"},"event":{"const":"contact.subscribed"},"created_at":{"type":"string","format":"date-time"},"workspace":{"type":"object"},"data":{"type":"object"}}}}}},"responses":{"2XX":{"description":"Received"}}}},"contact.unsubscribed":{"post":{"operationId":"webhookContactUnsubscribed","summary":"Unsubscribed","description":"Signed with X-Weesify-Signature: t=<unix time>,v1=HMAC-SHA256(secret, t + \".\" + raw body). X-Weesify-Event and X-Weesify-Delivery name the event and delivery.","requestBody":{"content":{"application/json":{"schema":{"type":"object","required":["id","event","created_at","workspace","data"],"properties":{"id":{"type":"string"},"event":{"const":"contact.unsubscribed"},"created_at":{"type":"string","format":"date-time"},"workspace":{"type":"object"},"data":{"type":"object"}}}}}},"responses":{"2XX":{"description":"Received"}}}},"contact.tagged":{"post":{"operationId":"webhookContactTagged","summary":"Tag added","description":"Signed with X-Weesify-Signature: t=<unix time>,v1=HMAC-SHA256(secret, t + \".\" + raw body). X-Weesify-Event and X-Weesify-Delivery name the event and delivery.","requestBody":{"content":{"application/json":{"schema":{"type":"object","required":["id","event","created_at","workspace","data"],"properties":{"id":{"type":"string"},"event":{"const":"contact.tagged"},"created_at":{"type":"string","format":"date-time"},"workspace":{"type":"object"},"data":{"type":"object"}}}}}},"responses":{"2XX":{"description":"Received"}}}},"contact.untagged":{"post":{"operationId":"webhookContactUntagged","summary":"Tag removed","description":"Signed with X-Weesify-Signature: t=<unix time>,v1=HMAC-SHA256(secret, t + \".\" + raw body). X-Weesify-Event and X-Weesify-Delivery name the event and delivery.","requestBody":{"content":{"application/json":{"schema":{"type":"object","required":["id","event","created_at","workspace","data"],"properties":{"id":{"type":"string"},"event":{"const":"contact.untagged"},"created_at":{"type":"string","format":"date-time"},"workspace":{"type":"object"},"data":{"type":"object"}}}}}},"responses":{"2XX":{"description":"Received"}}}},"contact.stage_changed":{"post":{"operationId":"webhookContactStageChanged","summary":"Stage changed","description":"Signed with X-Weesify-Signature: t=<unix time>,v1=HMAC-SHA256(secret, t + \".\" + raw body). X-Weesify-Event and X-Weesify-Delivery name the event and delivery.","requestBody":{"content":{"application/json":{"schema":{"type":"object","required":["id","event","created_at","workspace","data"],"properties":{"id":{"type":"string"},"event":{"const":"contact.stage_changed"},"created_at":{"type":"string","format":"date-time"},"workspace":{"type":"object"},"data":{"type":"object"}}}}}},"responses":{"2XX":{"description":"Received"}}}},"form.submitted":{"post":{"operationId":"webhookFormSubmitted","summary":"Form answered","description":"Signed with X-Weesify-Signature: t=<unix time>,v1=HMAC-SHA256(secret, t + \".\" + raw body). X-Weesify-Event and X-Weesify-Delivery name the event and delivery.","requestBody":{"content":{"application/json":{"schema":{"type":"object","required":["id","event","created_at","workspace","data"],"properties":{"id":{"type":"string"},"event":{"const":"form.submitted"},"created_at":{"type":"string","format":"date-time"},"workspace":{"type":"object"},"data":{"type":"object"}}}}}},"responses":{"2XX":{"description":"Received"}}}},"order.paid":{"post":{"operationId":"webhookOrderPaid","summary":"Order paid","description":"Signed with X-Weesify-Signature: t=<unix time>,v1=HMAC-SHA256(secret, t + \".\" + raw body). X-Weesify-Event and X-Weesify-Delivery name the event and delivery.","requestBody":{"content":{"application/json":{"schema":{"type":"object","required":["id","event","created_at","workspace","data"],"properties":{"id":{"type":"string"},"event":{"const":"order.paid"},"created_at":{"type":"string","format":"date-time"},"workspace":{"type":"object"},"data":{"type":"object"}}}}}},"responses":{"2XX":{"description":"Received"}}}},"order.refunded":{"post":{"operationId":"webhookOrderRefunded","summary":"Order refunded","description":"Signed with X-Weesify-Signature: t=<unix time>,v1=HMAC-SHA256(secret, t + \".\" + raw body). X-Weesify-Event and X-Weesify-Delivery name the event and delivery.","requestBody":{"content":{"application/json":{"schema":{"type":"object","required":["id","event","created_at","workspace","data"],"properties":{"id":{"type":"string"},"event":{"const":"order.refunded"},"created_at":{"type":"string","format":"date-time"},"workspace":{"type":"object"},"data":{"type":"object"}}}}}},"responses":{"2XX":{"description":"Received"}}}},"booking.created":{"post":{"operationId":"webhookBookingCreated","summary":"New booking","description":"Signed with X-Weesify-Signature: t=<unix time>,v1=HMAC-SHA256(secret, t + \".\" + raw body). X-Weesify-Event and X-Weesify-Delivery name the event and delivery.","requestBody":{"content":{"application/json":{"schema":{"type":"object","required":["id","event","created_at","workspace","data"],"properties":{"id":{"type":"string"},"event":{"const":"booking.created"},"created_at":{"type":"string","format":"date-time"},"workspace":{"type":"object"},"data":{"type":"object"}}}}}},"responses":{"2XX":{"description":"Received"}}}},"booking.cancelled":{"post":{"operationId":"webhookBookingCancelled","summary":"Booking cancelled","description":"Signed with X-Weesify-Signature: t=<unix time>,v1=HMAC-SHA256(secret, t + \".\" + raw body). X-Weesify-Event and X-Weesify-Delivery name the event and delivery.","requestBody":{"content":{"application/json":{"schema":{"type":"object","required":["id","event","created_at","workspace","data"],"properties":{"id":{"type":"string"},"event":{"const":"booking.cancelled"},"created_at":{"type":"string","format":"date-time"},"workspace":{"type":"object"},"data":{"type":"object"}}}}}},"responses":{"2XX":{"description":"Received"}}}},"course.enrolled":{"post":{"operationId":"webhookCourseEnrolled","summary":"Student enrolled","description":"Signed with X-Weesify-Signature: t=<unix time>,v1=HMAC-SHA256(secret, t + \".\" + raw body). X-Weesify-Event and X-Weesify-Delivery name the event and delivery.","requestBody":{"content":{"application/json":{"schema":{"type":"object","required":["id","event","created_at","workspace","data"],"properties":{"id":{"type":"string"},"event":{"const":"course.enrolled"},"created_at":{"type":"string","format":"date-time"},"workspace":{"type":"object"},"data":{"type":"object"}}}}}},"responses":{"2XX":{"description":"Received"}}}},"course.completed":{"post":{"operationId":"webhookCourseCompleted","summary":"Course completed","description":"Signed with X-Weesify-Signature: t=<unix time>,v1=HMAC-SHA256(secret, t + \".\" + raw body). X-Weesify-Event and X-Weesify-Delivery name the event and delivery.","requestBody":{"content":{"application/json":{"schema":{"type":"object","required":["id","event","created_at","workspace","data"],"properties":{"id":{"type":"string"},"event":{"const":"course.completed"},"created_at":{"type":"string","format":"date-time"},"workspace":{"type":"object"},"data":{"type":"object"}}}}}},"responses":{"2XX":{"description":"Received"}}}},"community.joined":{"post":{"operationId":"webhookCommunityJoined","summary":"Joined a community","description":"Signed with X-Weesify-Signature: t=<unix time>,v1=HMAC-SHA256(secret, t + \".\" + raw body). X-Weesify-Event and X-Weesify-Delivery name the event and delivery.","requestBody":{"content":{"application/json":{"schema":{"type":"object","required":["id","event","created_at","workspace","data"],"properties":{"id":{"type":"string"},"event":{"const":"community.joined"},"created_at":{"type":"string","format":"date-time"},"workspace":{"type":"object"},"data":{"type":"object"}}}}}},"responses":{"2XX":{"description":"Received"}}}},"event.created":{"post":{"operationId":"webhookEventCreated","summary":"Event created","description":"Signed with X-Weesify-Signature: t=<unix time>,v1=HMAC-SHA256(secret, t + \".\" + raw body). X-Weesify-Event and X-Weesify-Delivery name the event and delivery.","requestBody":{"content":{"application/json":{"schema":{"type":"object","required":["id","event","created_at","workspace","data"],"properties":{"id":{"type":"string"},"event":{"const":"event.created"},"created_at":{"type":"string","format":"date-time"},"workspace":{"type":"object"},"data":{"type":"object"}}}}}},"responses":{"2XX":{"description":"Received"}}}},"event.published":{"post":{"operationId":"webhookEventPublished","summary":"Event published","description":"Signed with X-Weesify-Signature: t=<unix time>,v1=HMAC-SHA256(secret, t + \".\" + raw body). X-Weesify-Event and X-Weesify-Delivery name the event and delivery.","requestBody":{"content":{"application/json":{"schema":{"type":"object","required":["id","event","created_at","workspace","data"],"properties":{"id":{"type":"string"},"event":{"const":"event.published"},"created_at":{"type":"string","format":"date-time"},"workspace":{"type":"object"},"data":{"type":"object"}}}}}},"responses":{"2XX":{"description":"Received"}}}},"event.updated":{"post":{"operationId":"webhookEventUpdated","summary":"Event details changed","description":"Signed with X-Weesify-Signature: t=<unix time>,v1=HMAC-SHA256(secret, t + \".\" + raw body). X-Weesify-Event and X-Weesify-Delivery name the event and delivery.","requestBody":{"content":{"application/json":{"schema":{"type":"object","required":["id","event","created_at","workspace","data"],"properties":{"id":{"type":"string"},"event":{"const":"event.updated"},"created_at":{"type":"string","format":"date-time"},"workspace":{"type":"object"},"data":{"type":"object"}}}}}},"responses":{"2XX":{"description":"Received"}}}},"event.cancelled":{"post":{"operationId":"webhookEventCancelled","summary":"Event cancelled","description":"Signed with X-Weesify-Signature: t=<unix time>,v1=HMAC-SHA256(secret, t + \".\" + raw body). X-Weesify-Event and X-Weesify-Delivery name the event and delivery.","requestBody":{"content":{"application/json":{"schema":{"type":"object","required":["id","event","created_at","workspace","data"],"properties":{"id":{"type":"string"},"event":{"const":"event.cancelled"},"created_at":{"type":"string","format":"date-time"},"workspace":{"type":"object"},"data":{"type":"object"}}}}}},"responses":{"2XX":{"description":"Received"}}}},"event.postponed":{"post":{"operationId":"webhookEventPostponed","summary":"Event postponed","description":"Signed with X-Weesify-Signature: t=<unix time>,v1=HMAC-SHA256(secret, t + \".\" + raw body). X-Weesify-Event and X-Weesify-Delivery name the event and delivery.","requestBody":{"content":{"application/json":{"schema":{"type":"object","required":["id","event","created_at","workspace","data"],"properties":{"id":{"type":"string"},"event":{"const":"event.postponed"},"created_at":{"type":"string","format":"date-time"},"workspace":{"type":"object"},"data":{"type":"object"}}}}}},"responses":{"2XX":{"description":"Received"}}}},"event.completed":{"post":{"operationId":"webhookEventCompleted","summary":"Event completed","description":"Signed with X-Weesify-Signature: t=<unix time>,v1=HMAC-SHA256(secret, t + \".\" + raw body). X-Weesify-Event and X-Weesify-Delivery name the event and delivery.","requestBody":{"content":{"application/json":{"schema":{"type":"object","required":["id","event","created_at","workspace","data"],"properties":{"id":{"type":"string"},"event":{"const":"event.completed"},"created_at":{"type":"string","format":"date-time"},"workspace":{"type":"object"},"data":{"type":"object"}}}}}},"responses":{"2XX":{"description":"Received"}}}},"registration.created":{"post":{"operationId":"webhookRegistrationCreated","summary":"Registration started","description":"Signed with X-Weesify-Signature: t=<unix time>,v1=HMAC-SHA256(secret, t + \".\" + raw body). X-Weesify-Event and X-Weesify-Delivery name the event and delivery.","requestBody":{"content":{"application/json":{"schema":{"type":"object","required":["id","event","created_at","workspace","data"],"properties":{"id":{"type":"string"},"event":{"const":"registration.created"},"created_at":{"type":"string","format":"date-time"},"workspace":{"type":"object"},"data":{"type":"object"}}}}}},"responses":{"2XX":{"description":"Received"}}}},"registration.confirmed":{"post":{"operationId":"webhookRegistrationConfirmed","summary":"Registration confirmed","description":"Signed with X-Weesify-Signature: t=<unix time>,v1=HMAC-SHA256(secret, t + \".\" + raw body). X-Weesify-Event and X-Weesify-Delivery name the event and delivery.","requestBody":{"content":{"application/json":{"schema":{"type":"object","required":["id","event","created_at","workspace","data"],"properties":{"id":{"type":"string"},"event":{"const":"registration.confirmed"},"created_at":{"type":"string","format":"date-time"},"workspace":{"type":"object"},"data":{"type":"object"}}}}}},"responses":{"2XX":{"description":"Received"}}}},"registration.cancelled":{"post":{"operationId":"webhookRegistrationCancelled","summary":"Registration cancelled","description":"Signed with X-Weesify-Signature: t=<unix time>,v1=HMAC-SHA256(secret, t + \".\" + raw body). X-Weesify-Event and X-Weesify-Delivery name the event and delivery.","requestBody":{"content":{"application/json":{"schema":{"type":"object","required":["id","event","created_at","workspace","data"],"properties":{"id":{"type":"string"},"event":{"const":"registration.cancelled"},"created_at":{"type":"string","format":"date-time"},"workspace":{"type":"object"},"data":{"type":"object"}}}}}},"responses":{"2XX":{"description":"Received"}}}},"ticket.purchased":{"post":{"operationId":"webhookTicketPurchased","summary":"Ticket bought","description":"Signed with X-Weesify-Signature: t=<unix time>,v1=HMAC-SHA256(secret, t + \".\" + raw body). X-Weesify-Event and X-Weesify-Delivery name the event and delivery.","requestBody":{"content":{"application/json":{"schema":{"type":"object","required":["id","event","created_at","workspace","data"],"properties":{"id":{"type":"string"},"event":{"const":"ticket.purchased"},"created_at":{"type":"string","format":"date-time"},"workspace":{"type":"object"},"data":{"type":"object"}}}}}},"responses":{"2XX":{"description":"Received"}}}},"payment.completed":{"post":{"operationId":"webhookPaymentCompleted","summary":"Ticket payment completed","description":"Signed with X-Weesify-Signature: t=<unix time>,v1=HMAC-SHA256(secret, t + \".\" + raw body). X-Weesify-Event and X-Weesify-Delivery name the event and delivery.","requestBody":{"content":{"application/json":{"schema":{"type":"object","required":["id","event","created_at","workspace","data"],"properties":{"id":{"type":"string"},"event":{"const":"payment.completed"},"created_at":{"type":"string","format":"date-time"},"workspace":{"type":"object"},"data":{"type":"object"}}}}}},"responses":{"2XX":{"description":"Received"}}}},"payment.failed":{"post":{"operationId":"webhookPaymentFailed","summary":"Ticket payment failed","description":"Signed with X-Weesify-Signature: t=<unix time>,v1=HMAC-SHA256(secret, t + \".\" + raw body). X-Weesify-Event and X-Weesify-Delivery name the event and delivery.","requestBody":{"content":{"application/json":{"schema":{"type":"object","required":["id","event","created_at","workspace","data"],"properties":{"id":{"type":"string"},"event":{"const":"payment.failed"},"created_at":{"type":"string","format":"date-time"},"workspace":{"type":"object"},"data":{"type":"object"}}}}}},"responses":{"2XX":{"description":"Received"}}}},"ticket.refunded":{"post":{"operationId":"webhookTicketRefunded","summary":"Ticket refunded","description":"Signed with X-Weesify-Signature: t=<unix time>,v1=HMAC-SHA256(secret, t + \".\" + raw body). X-Weesify-Event and X-Weesify-Delivery name the event and delivery.","requestBody":{"content":{"application/json":{"schema":{"type":"object","required":["id","event","created_at","workspace","data"],"properties":{"id":{"type":"string"},"event":{"const":"ticket.refunded"},"created_at":{"type":"string","format":"date-time"},"workspace":{"type":"object"},"data":{"type":"object"}}}}}},"responses":{"2XX":{"description":"Received"}}}},"attendee.checked_in":{"post":{"operationId":"webhookAttendeeCheckedIn","summary":"Attendee checked in","description":"Signed with X-Weesify-Signature: t=<unix time>,v1=HMAC-SHA256(secret, t + \".\" + raw body). X-Weesify-Event and X-Weesify-Delivery name the event and delivery.","requestBody":{"content":{"application/json":{"schema":{"type":"object","required":["id","event","created_at","workspace","data"],"properties":{"id":{"type":"string"},"event":{"const":"attendee.checked_in"},"created_at":{"type":"string","format":"date-time"},"workspace":{"type":"object"},"data":{"type":"object"}}}}}},"responses":{"2XX":{"description":"Received"}}}},"session.attended":{"post":{"operationId":"webhookSessionAttended","summary":"Session attended","description":"Signed with X-Weesify-Signature: t=<unix time>,v1=HMAC-SHA256(secret, t + \".\" + raw body). X-Weesify-Event and X-Weesify-Delivery name the event and delivery.","requestBody":{"content":{"application/json":{"schema":{"type":"object","required":["id","event","created_at","workspace","data"],"properties":{"id":{"type":"string"},"event":{"const":"session.attended"},"created_at":{"type":"string","format":"date-time"},"workspace":{"type":"object"},"data":{"type":"object"}}}}}},"responses":{"2XX":{"description":"Received"}}}},"waitlist.joined":{"post":{"operationId":"webhookWaitlistJoined","summary":"Joined a waitlist","description":"Signed with X-Weesify-Signature: t=<unix time>,v1=HMAC-SHA256(secret, t + \".\" + raw body). X-Weesify-Event and X-Weesify-Delivery name the event and delivery.","requestBody":{"content":{"application/json":{"schema":{"type":"object","required":["id","event","created_at","workspace","data"],"properties":{"id":{"type":"string"},"event":{"const":"waitlist.joined"},"created_at":{"type":"string","format":"date-time"},"workspace":{"type":"object"},"data":{"type":"object"}}}}}},"responses":{"2XX":{"description":"Received"}}}},"feedback.submitted":{"post":{"operationId":"webhookFeedbackSubmitted","summary":"Feedback submitted","description":"Signed with X-Weesify-Signature: t=<unix time>,v1=HMAC-SHA256(secret, t + \".\" + raw body). X-Weesify-Event and X-Weesify-Delivery name the event and delivery.","requestBody":{"content":{"application/json":{"schema":{"type":"object","required":["id","event","created_at","workspace","data"],"properties":{"id":{"type":"string"},"event":{"const":"feedback.submitted"},"created_at":{"type":"string","format":"date-time"},"workspace":{"type":"object"},"data":{"type":"object"}}}}}},"responses":{"2XX":{"description":"Received"}}}},"post.published":{"post":{"operationId":"webhookPostPublished","summary":"Post published","description":"Signed with X-Weesify-Signature: t=<unix time>,v1=HMAC-SHA256(secret, t + \".\" + raw body). X-Weesify-Event and X-Weesify-Delivery name the event and delivery.","requestBody":{"content":{"application/json":{"schema":{"type":"object","required":["id","event","created_at","workspace","data"],"properties":{"id":{"type":"string"},"event":{"const":"post.published"},"created_at":{"type":"string","format":"date-time"},"workspace":{"type":"object"},"data":{"type":"object"}}}}}},"responses":{"2XX":{"description":"Received"}}}},"post.failed":{"post":{"operationId":"webhookPostFailed","summary":"Post failed to publish","description":"Signed with X-Weesify-Signature: t=<unix time>,v1=HMAC-SHA256(secret, t + \".\" + raw body). X-Weesify-Event and X-Weesify-Delivery name the event and delivery.","requestBody":{"content":{"application/json":{"schema":{"type":"object","required":["id","event","created_at","workspace","data"],"properties":{"id":{"type":"string"},"event":{"const":"post.failed"},"created_at":{"type":"string","format":"date-time"},"workspace":{"type":"object"},"data":{"type":"object"}}}}}},"responses":{"2XX":{"description":"Received"}}}},"site.deployed":{"post":{"operationId":"webhookSiteDeployed","summary":"Website published","description":"Signed with X-Weesify-Signature: t=<unix time>,v1=HMAC-SHA256(secret, t + \".\" + raw body). X-Weesify-Event and X-Weesify-Delivery name the event and delivery.","requestBody":{"content":{"application/json":{"schema":{"type":"object","required":["id","event","created_at","workspace","data"],"properties":{"id":{"type":"string"},"event":{"const":"site.deployed"},"created_at":{"type":"string","format":"date-time"},"workspace":{"type":"object"},"data":{"type":"object"}}}}}},"responses":{"2XX":{"description":"Received"}}}},"site.deploy_failed":{"post":{"operationId":"webhookSiteDeployFailed","summary":"Website failed to publish","description":"Signed with X-Weesify-Signature: t=<unix time>,v1=HMAC-SHA256(secret, t + \".\" + raw body). X-Weesify-Event and X-Weesify-Delivery name the event and delivery.","requestBody":{"content":{"application/json":{"schema":{"type":"object","required":["id","event","created_at","workspace","data"],"properties":{"id":{"type":"string"},"event":{"const":"site.deploy_failed"},"created_at":{"type":"string","format":"date-time"},"workspace":{"type":"object"},"data":{"type":"object"}}}}}},"responses":{"2XX":{"description":"Received"}}}}}}