{"openapi":"3.1.0","info":{"title":"Chorala API","version":"1.0.0","description":"Open-core product-feedback platform. Public/widget API (X-Chorala-Key), admin API (hk_ key or session), end-user SSO, webhooks. Full prose reference: /docs and docs/API.md.","license":{"name":"AGPL-3.0"}},"externalDocs":{"url":"https://feedback.satflux.io/docs","description":"Interactive API reference"},"servers":[{"url":"https://feedback.satflux.io/api/v1","description":"This instance"}],"security":[{"PublicKey":[]}],"tags":[{"name":"Public"},{"name":"Projects"},{"name":"Boards"},{"name":"Statuses"},{"name":"Posts"},{"name":"Comments"},{"name":"Tags"},{"name":"Companies"},{"name":"Score fields"},{"name":"Segments"},{"name":"Surveys"},{"name":"Changelog"},{"name":"API keys"},{"name":"Analytics"},{"name":"Insights"},{"name":"AI"},{"name":"Organization"},{"name":"Moderation"}],"paths":{"/public/boards":{"get":{"tags":["Public"],"summary":"List boards + ranked posts","security":[{"PublicKey":[]}],"parameters":[],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"object","properties":{"boards":{"type":"array","items":{"$ref":"#/components/schemas/Board"}},"posts":{"type":"array","items":{"$ref":"#/components/schemas/LocalizedPost"}}}}}}},"400":{"description":"Bad request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"404":{"description":"Not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}}},"/public/posts/{id}":{"get":{"tags":["Public"],"summary":"Get a post + comments","security":[{"PublicKey":[]}],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PostDetail"}}}},"400":{"description":"Bad request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"404":{"description":"Not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}}},"/public/posts":{"post":{"tags":["Public"],"summary":"Submit a post","security":[{"PublicKey":[]}],"parameters":[],"responses":{"201":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/LocalizedPost"}}}},"400":{"description":"Bad request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"404":{"description":"Not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreatePostInput"}}}}}},"/public/attachments":{"post":{"tags":["Public"],"summary":"Upload a screenshot (link via createPost attachmentIds)","security":[{"PublicKey":[]}],"parameters":[],"responses":{"201":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/AttachmentRef"}}}},"400":{"description":"Bad request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"404":{"description":"Not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateAttachmentInput"}}}}}},"/public/posts/{id}/vote":{"post":{"tags":["Public"],"summary":"Cast a vote","security":[{"PublicKey":[]}],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/VoteToggleResponse"}}}},"400":{"description":"Bad request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"404":{"description":"Not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}},"delete":{"tags":["Public"],"summary":"Remove a vote","security":[{"PublicKey":[]}],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/VoteToggleResponse"}}}},"400":{"description":"Bad request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"404":{"description":"Not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}}},"/public/posts/{id}/comments":{"post":{"tags":["Public"],"summary":"Add a comment","security":[{"PublicKey":[]}],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"201":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Comment"}}}},"400":{"description":"Bad request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"404":{"description":"Not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateCommentInput"}}}}}},"/public/roadmap":{"get":{"tags":["Public"],"summary":"Public roadmap","security":[{"PublicKey":[]}],"parameters":[],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RoadmapResponse"}}}},"400":{"description":"Bad request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"404":{"description":"Not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}}},"/public/changelog":{"get":{"tags":["Public"],"summary":"Public changelog","security":[{"PublicKey":[]}],"parameters":[],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/ChangelogEntry"}}}}},"400":{"description":"Bad request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"404":{"description":"Not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}}},"/public/survey":{"get":{"tags":["Public"],"summary":"The active survey to show this visitor (segment-aware), or null","security":[{"PublicKey":[]}],"parameters":[],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Survey"}}}},"400":{"description":"Bad request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"404":{"description":"Not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}}},"/public/survey/{id}/responses":{"post":{"tags":["Public"],"summary":"Submit a survey response","security":[{"PublicKey":[]}],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"201":{"description":"OK"},"400":{"description":"Bad request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"404":{"description":"Not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SubmitSurveyResponseInput"}}}}}},"/public/changelog/subscribe":{"post":{"tags":["Public"],"summary":"Subscribe to the changelog","security":[{"PublicKey":[]}],"parameters":[],"responses":{"201":{"description":"OK"},"400":{"description":"Bad request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"404":{"description":"Not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ChangelogSubscribeInput"}}}}}},"/public/identify":{"post":{"tags":["Public"],"summary":"Identify an end-user (SSO)","security":[{"PublicKey":[]}],"parameters":[],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/IdentifyResponse"}}}},"400":{"description":"Bad request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"404":{"description":"Not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/IdentifyInput"}}}}}},"/inbound/{projectId}":{"post":{"tags":["Public"],"summary":"Segment-compatible inbound webhook (identify/group → end-users + companies). Bearer = the project inbound secret.","security":[{"PublicKey":[]}],"parameters":[{"name":"projectId","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"404":{"description":"Not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/InboundEvent"}}}}}},"/projects":{"get":{"tags":["Projects"],"summary":"List projects","security":[{"ApiKey":[]},{"Session":[]}],"parameters":[],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/Project"}}}}},"400":{"description":"Bad request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"404":{"description":"Not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}},"post":{"tags":["Projects"],"summary":"Create a project","security":[{"ApiKey":[]},{"Session":[]}],"parameters":[],"responses":{"201":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Project"}}}},"400":{"description":"Bad request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"404":{"description":"Not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateProjectInput"}}}}}},"/projects/{id}":{"get":{"tags":["Projects"],"summary":"Get a project","security":[{"ApiKey":[]},{"Session":[]}],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Project"}}}},"400":{"description":"Bad request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"404":{"description":"Not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}},"patch":{"tags":["Projects"],"summary":"Update a project","security":[{"ApiKey":[]},{"Session":[]}],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Project"}}}},"400":{"description":"Bad request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"404":{"description":"Not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateProjectInput"}}}}},"delete":{"tags":["Projects"],"summary":"Delete a project","security":[{"ApiKey":[]},{"Session":[]}],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"404":{"description":"Not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}}},"/projects/{projectId}/boards":{"get":{"tags":["Boards"],"summary":"List boards","security":[{"ApiKey":[]},{"Session":[]}],"parameters":[{"name":"projectId","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/Board"}}}}},"400":{"description":"Bad request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"404":{"description":"Not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}},"post":{"tags":["Boards"],"summary":"Create a board","security":[{"ApiKey":[]},{"Session":[]}],"parameters":[{"name":"projectId","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"201":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Board"}}}},"400":{"description":"Bad request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"404":{"description":"Not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateBoardInput"}}}}}},"/projects/{projectId}/boards/{id}":{"get":{"tags":["Boards"],"summary":"Get a board","security":[{"ApiKey":[]},{"Session":[]}],"parameters":[{"name":"projectId","in":"path","required":true,"schema":{"type":"string"}},{"name":"id","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Board"}}}},"400":{"description":"Bad request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"404":{"description":"Not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}},"patch":{"tags":["Boards"],"summary":"Update a board","security":[{"ApiKey":[]},{"Session":[]}],"parameters":[{"name":"projectId","in":"path","required":true,"schema":{"type":"string"}},{"name":"id","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Board"}}}},"400":{"description":"Bad request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"404":{"description":"Not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateBoardInput"}}}}},"delete":{"tags":["Boards"],"summary":"Delete a board","security":[{"ApiKey":[]},{"Session":[]}],"parameters":[{"name":"projectId","in":"path","required":true,"schema":{"type":"string"}},{"name":"id","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"404":{"description":"Not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}}},"/projects/{projectId}/statuses":{"get":{"tags":["Statuses"],"summary":"List statuses","security":[{"ApiKey":[]},{"Session":[]}],"parameters":[{"name":"projectId","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/Status"}}}}},"400":{"description":"Bad request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"404":{"description":"Not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}},"post":{"tags":["Statuses"],"summary":"Create a status","security":[{"ApiKey":[]},{"Session":[]}],"parameters":[{"name":"projectId","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"201":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Status"}}}},"400":{"description":"Bad request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"404":{"description":"Not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateStatusInput"}}}}}},"/projects/{projectId}/statuses/{id}":{"patch":{"tags":["Statuses"],"summary":"Update a status","security":[{"ApiKey":[]},{"Session":[]}],"parameters":[{"name":"projectId","in":"path","required":true,"schema":{"type":"string"}},{"name":"id","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Status"}}}},"400":{"description":"Bad request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"404":{"description":"Not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateStatusInput"}}}}},"delete":{"tags":["Statuses"],"summary":"Delete a status","security":[{"ApiKey":[]},{"Session":[]}],"parameters":[{"name":"projectId","in":"path","required":true,"schema":{"type":"string"}},{"name":"id","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"404":{"description":"Not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}}},"/projects/{projectId}/posts":{"get":{"tags":["Posts"],"summary":"List posts (filters: board/status/appVersion/company/plan/minMrr/assignee; sort incl. revenue, score; ?format=csv exports)","security":[{"ApiKey":[]},{"Session":[]}],"parameters":[{"name":"projectId","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/AdminPostListItem"}}}}},"400":{"description":"Bad request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"404":{"description":"Not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}},"post":{"tags":["Posts"],"summary":"Create a post","security":[{"ApiKey":[]},{"Session":[]}],"parameters":[{"name":"projectId","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"201":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Post"}}}},"400":{"description":"Bad request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"404":{"description":"Not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/AdminCreatePostInput"}}}}}},"/projects/{projectId}/posts/{id}":{"get":{"tags":["Posts"],"summary":"Get a post","security":[{"ApiKey":[]},{"Session":[]}],"parameters":[{"name":"projectId","in":"path","required":true,"schema":{"type":"string"}},{"name":"id","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PostDetail"}}}},"400":{"description":"Bad request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"404":{"description":"Not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}},"patch":{"tags":["Posts"],"summary":"Update a post","security":[{"ApiKey":[]},{"Session":[]}],"parameters":[{"name":"projectId","in":"path","required":true,"schema":{"type":"string"}},{"name":"id","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Post"}}}},"400":{"description":"Bad request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"404":{"description":"Not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdatePostInput"}}}}},"delete":{"tags":["Posts"],"summary":"Delete a post","security":[{"ApiKey":[]},{"Session":[]}],"parameters":[{"name":"projectId","in":"path","required":true,"schema":{"type":"string"}},{"name":"id","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"404":{"description":"Not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}}},"/projects/{projectId}/posts/{id}/context":{"get":{"tags":["Posts"],"summary":"Submission context (appVersion + metadata map)","security":[{"ApiKey":[]},{"Session":[]}],"parameters":[{"name":"projectId","in":"path","required":true,"schema":{"type":"string"}},{"name":"id","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"object","properties":{"appVersion":{"type":"string","nullable":true},"context":{"type":"object","additionalProperties":true}}}}}},"400":{"description":"Bad request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"404":{"description":"Not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}}},"/projects/{projectId}/posts/{id}/attachments":{"get":{"tags":["Posts"],"summary":"List a post’s attachments (screenshots)","security":[{"ApiKey":[]},{"Session":[]}],"parameters":[{"name":"projectId","in":"path","required":true,"schema":{"type":"string"}},{"name":"id","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/Attachment"}}}}},"400":{"description":"Bad request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"404":{"description":"Not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}}},"/projects/{projectId}/posts/{id}/customer":{"get":{"tags":["Posts"],"summary":"The post author’s end-user + company (revenue context)","security":[{"ApiKey":[]},{"Session":[]}],"parameters":[{"name":"projectId","in":"path","required":true,"schema":{"type":"string"}},{"name":"id","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"404":{"description":"Not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}}},"/projects/{projectId}/posts/{id}/vote-for":{"post":{"tags":["Posts"],"summary":"Vote on behalf of a customer (by email / externalId)","security":[{"ApiKey":[]},{"Session":[]}],"parameters":[{"name":"projectId","in":"path","required":true,"schema":{"type":"string"}},{"name":"id","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/VoteToggleResponse"}}}},"400":{"description":"Bad request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"404":{"description":"Not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/VoteForInput"}}}}}},"/projects/{projectId}/posts/{id}/status":{"post":{"tags":["Posts"],"summary":"Change status (moves on roadmap)","security":[{"ApiKey":[]},{"Session":[]}],"parameters":[{"name":"projectId","in":"path","required":true,"schema":{"type":"string"}},{"name":"id","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Post"}}}},"400":{"description":"Bad request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"404":{"description":"Not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ChangePostStatusInput"}}}}}},"/projects/{projectId}/posts/{id}/pin":{"post":{"tags":["Posts"],"summary":"Toggle pin","security":[{"ApiKey":[]},{"Session":[]}],"parameters":[{"name":"projectId","in":"path","required":true,"schema":{"type":"string"}},{"name":"id","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Post"}}}},"400":{"description":"Bad request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"404":{"description":"Not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}}},"/projects/{projectId}/posts/{id}/merge":{"post":{"tags":["Posts"],"summary":"Merge into another post","security":[{"ApiKey":[]},{"Session":[]}],"parameters":[{"name":"projectId","in":"path","required":true,"schema":{"type":"string"}},{"name":"id","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Post"}}}},"400":{"description":"Bad request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"404":{"description":"Not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/MergePostInput"}}}}}},"/projects/{projectId}/posts/{id}/tags":{"post":{"tags":["Posts"],"summary":"Set tags","security":[{"ApiKey":[]},{"Session":[]}],"parameters":[{"name":"projectId","in":"path","required":true,"schema":{"type":"string"}},{"name":"id","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Post"}}}},"400":{"description":"Bad request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"404":{"description":"Not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/TagPostInput"}}}}}},"/projects/{projectId}/posts/{postId}/comments":{"get":{"tags":["Comments"],"summary":"List comments","security":[{"ApiKey":[]},{"Session":[]}],"parameters":[{"name":"projectId","in":"path","required":true,"schema":{"type":"string"}},{"name":"postId","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/Comment"}}}}},"400":{"description":"Bad request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"404":{"description":"Not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}},"post":{"tags":["Comments"],"summary":"Add a comment","security":[{"ApiKey":[]},{"Session":[]}],"parameters":[{"name":"projectId","in":"path","required":true,"schema":{"type":"string"}},{"name":"postId","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"201":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Comment"}}}},"400":{"description":"Bad request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"404":{"description":"Not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateCommentInput"}}}}}},"/projects/{projectId}/posts/{postId}/comments/{id}":{"delete":{"tags":["Comments"],"summary":"Delete a comment","security":[{"ApiKey":[]},{"Session":[]}],"parameters":[{"name":"projectId","in":"path","required":true,"schema":{"type":"string"}},{"name":"postId","in":"path","required":true,"schema":{"type":"string"}},{"name":"id","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"404":{"description":"Not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}}},"/projects/{projectId}/tags":{"get":{"tags":["Tags"],"summary":"List tags","security":[{"ApiKey":[]},{"Session":[]}],"parameters":[{"name":"projectId","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/Tag"}}}}},"400":{"description":"Bad request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"404":{"description":"Not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}},"post":{"tags":["Tags"],"summary":"Create a tag","security":[{"ApiKey":[]},{"Session":[]}],"parameters":[{"name":"projectId","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"201":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Tag"}}}},"400":{"description":"Bad request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"404":{"description":"Not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateTagInput"}}}}}},"/projects/{projectId}/tags/{id}":{"delete":{"tags":["Tags"],"summary":"Delete a tag","security":[{"ApiKey":[]},{"Session":[]}],"parameters":[{"name":"projectId","in":"path","required":true,"schema":{"type":"string"}},{"name":"id","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"404":{"description":"Not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}}},"/projects/{projectId}/companies":{"get":{"tags":["Companies"],"summary":"List companies + rollups (users, posts), richest first","security":[{"ApiKey":[]},{"Session":[]}],"parameters":[{"name":"projectId","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/CompanyWithStats"}}}}},"400":{"description":"Bad request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"404":{"description":"Not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}}},"/projects/{projectId}/companies/{id}":{"get":{"tags":["Companies"],"summary":"Get a company","security":[{"ApiKey":[]},{"Session":[]}],"parameters":[{"name":"projectId","in":"path","required":true,"schema":{"type":"string"}},{"name":"id","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Company"}}}},"400":{"description":"Bad request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"404":{"description":"Not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}},"patch":{"tags":["Companies"],"summary":"Edit a company (mrr / plan / name / domain)","security":[{"ApiKey":[]},{"Session":[]}],"parameters":[{"name":"projectId","in":"path","required":true,"schema":{"type":"string"}},{"name":"id","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Company"}}}},"400":{"description":"Bad request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"404":{"description":"Not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateCompanyInput"}}}}}},"/projects/{projectId}/score-fields":{"get":{"tags":["Score fields"],"summary":"List weighted prioritization fields","security":[{"ApiKey":[]},{"Session":[]}],"parameters":[{"name":"projectId","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/ScoreField"}}}}},"400":{"description":"Bad request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"404":{"description":"Not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}},"post":{"tags":["Score fields"],"summary":"Create a score field { key, label, weight }","security":[{"ApiKey":[]},{"Session":[]}],"parameters":[{"name":"projectId","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"201":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ScoreField"}}}},"400":{"description":"Bad request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"404":{"description":"Not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateScoreFieldInput"}}}}}},"/projects/{projectId}/score-fields/{id}":{"patch":{"tags":["Score fields"],"summary":"Update a score field","security":[{"ApiKey":[]},{"Session":[]}],"parameters":[{"name":"projectId","in":"path","required":true,"schema":{"type":"string"}},{"name":"id","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ScoreField"}}}},"400":{"description":"Bad request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"404":{"description":"Not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateScoreFieldInput"}}}}},"delete":{"tags":["Score fields"],"summary":"Delete a score field","security":[{"ApiKey":[]},{"Session":[]}],"parameters":[{"name":"projectId","in":"path","required":true,"schema":{"type":"string"}},{"name":"id","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"404":{"description":"Not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}}},"/projects/{projectId}/segments":{"get":{"tags":["Segments"],"summary":"List segments + how many end-users match each","security":[{"ApiKey":[]},{"Session":[]}],"parameters":[{"name":"projectId","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/SegmentWithCount"}}}}},"400":{"description":"Bad request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"404":{"description":"Not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}},"post":{"tags":["Segments"],"summary":"Create a segment","security":[{"ApiKey":[]},{"Session":[]}],"parameters":[{"name":"projectId","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"201":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Segment"}}}},"400":{"description":"Bad request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"404":{"description":"Not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateSegmentInput"}}}}}},"/projects/{projectId}/segments/preview":{"post":{"tags":["Segments"],"summary":"Live match count for an unsaved definition","security":[{"ApiKey":[]},{"Session":[]}],"parameters":[{"name":"projectId","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"object","properties":{"matchCount":{"type":"integer"}}}}}},"400":{"description":"Bad request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"404":{"description":"Not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SegmentDefinition"}}}}}},"/projects/{projectId}/segments/{id}":{"get":{"tags":["Segments"],"summary":"Get a segment","security":[{"ApiKey":[]},{"Session":[]}],"parameters":[{"name":"projectId","in":"path","required":true,"schema":{"type":"string"}},{"name":"id","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Segment"}}}},"400":{"description":"Bad request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"404":{"description":"Not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}},"patch":{"tags":["Segments"],"summary":"Update a segment","security":[{"ApiKey":[]},{"Session":[]}],"parameters":[{"name":"projectId","in":"path","required":true,"schema":{"type":"string"}},{"name":"id","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Segment"}}}},"400":{"description":"Bad request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"404":{"description":"Not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateSegmentInput"}}}}},"delete":{"tags":["Segments"],"summary":"Delete a segment","security":[{"ApiKey":[]},{"Session":[]}],"parameters":[{"name":"projectId","in":"path","required":true,"schema":{"type":"string"}},{"name":"id","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"404":{"description":"Not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}}},"/projects/{projectId}/surveys":{"get":{"tags":["Surveys"],"summary":"List surveys","security":[{"ApiKey":[]},{"Session":[]}],"parameters":[{"name":"projectId","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/Survey"}}}}},"400":{"description":"Bad request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"404":{"description":"Not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}},"post":{"tags":["Surveys"],"summary":"Create a survey","security":[{"ApiKey":[]},{"Session":[]}],"parameters":[{"name":"projectId","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"201":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Survey"}}}},"400":{"description":"Bad request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"404":{"description":"Not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateSurveyInput"}}}}}},"/projects/{projectId}/surveys/{id}/results":{"get":{"tags":["Surveys"],"summary":"Aggregated results (NPS / CSAT / distribution / text)","security":[{"ApiKey":[]},{"Session":[]}],"parameters":[{"name":"projectId","in":"path","required":true,"schema":{"type":"string"}},{"name":"id","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/SurveyResults"}}}},"400":{"description":"Bad request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"404":{"description":"Not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}}},"/projects/{projectId}/surveys/{id}":{"patch":{"tags":["Surveys"],"summary":"Update a survey (e.g. activate)","security":[{"ApiKey":[]},{"Session":[]}],"parameters":[{"name":"projectId","in":"path","required":true,"schema":{"type":"string"}},{"name":"id","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Survey"}}}},"400":{"description":"Bad request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"404":{"description":"Not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateSurveyInput"}}}}},"delete":{"tags":["Surveys"],"summary":"Delete a survey","security":[{"ApiKey":[]},{"Session":[]}],"parameters":[{"name":"projectId","in":"path","required":true,"schema":{"type":"string"}},{"name":"id","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"404":{"description":"Not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}}},"/projects/{projectId}/changelog":{"get":{"tags":["Changelog"],"summary":"List entries","security":[{"ApiKey":[]},{"Session":[]}],"parameters":[{"name":"projectId","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/ChangelogEntry"}}}}},"400":{"description":"Bad request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"404":{"description":"Not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}},"post":{"tags":["Changelog"],"summary":"Create an entry","security":[{"ApiKey":[]},{"Session":[]}],"parameters":[{"name":"projectId","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"201":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ChangelogEntry"}}}},"400":{"description":"Bad request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"404":{"description":"Not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateChangelogInput"}}}}}},"/projects/{projectId}/changelog/{id}":{"patch":{"tags":["Changelog"],"summary":"Update an entry","security":[{"ApiKey":[]},{"Session":[]}],"parameters":[{"name":"projectId","in":"path","required":true,"schema":{"type":"string"}},{"name":"id","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ChangelogEntry"}}}},"400":{"description":"Bad request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"404":{"description":"Not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateChangelogInput"}}}}},"delete":{"tags":["Changelog"],"summary":"Delete an entry","security":[{"ApiKey":[]},{"Session":[]}],"parameters":[{"name":"projectId","in":"path","required":true,"schema":{"type":"string"}},{"name":"id","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"404":{"description":"Not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}}},"/projects/{projectId}/keys":{"get":{"tags":["API keys"],"summary":"List API keys","security":[{"ApiKey":[]},{"Session":[]}],"parameters":[{"name":"projectId","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"404":{"description":"Not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}},"post":{"tags":["API keys"],"summary":"Create an API key (raw key shown once)","security":[{"ApiKey":[]},{"Session":[]}],"parameters":[{"name":"projectId","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"201":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateApiKeyResponse"}}}},"400":{"description":"Bad request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"404":{"description":"Not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateApiKeyInput"}}}}}},"/projects/{projectId}/keys/{id}":{"delete":{"tags":["API keys"],"summary":"Revoke an API key","security":[{"ApiKey":[]},{"Session":[]}],"parameters":[{"name":"projectId","in":"path","required":true,"schema":{"type":"string"}},{"name":"id","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"404":{"description":"Not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}}},"/projects/{projectId}/analytics":{"get":{"tags":["Analytics"],"summary":"Analytics dashboard (KPIs+trends, board health, velocity, themes). ?format=csv exports.","security":[{"ApiKey":[]},{"Session":[]}],"parameters":[{"name":"projectId","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/AnalyticsResponse"}}}},"400":{"description":"Bad request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"404":{"description":"Not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}}},"/projects/{projectId}/insights":{"get":{"tags":["Insights"],"summary":"List insights (quotes) — optionally ?postId=","security":[{"ApiKey":[]},{"Session":[]}],"parameters":[{"name":"projectId","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/Insight"}}}}},"400":{"description":"Bad request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"404":{"description":"Not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}},"post":{"tags":["Insights"],"summary":"Link a customer quote to a post","security":[{"ApiKey":[]},{"Session":[]}],"parameters":[{"name":"projectId","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"201":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Insight"}}}},"400":{"description":"Bad request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"404":{"description":"Not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateInsightInput"}}}}}},"/projects/{projectId}/insights/{id}":{"delete":{"tags":["Insights"],"summary":"Remove an insight","security":[{"ApiKey":[]},{"Session":[]}],"parameters":[{"name":"projectId","in":"path","required":true,"schema":{"type":"string"}},{"name":"id","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"404":{"description":"Not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}}},"/projects/{projectId}/posts/search":{"get":{"tags":["AI"],"summary":"Semantic search","security":[{"ApiKey":[]},{"Session":[]}],"parameters":[{"name":"projectId","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/Post"}}}}},"400":{"description":"Bad request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"404":{"description":"Not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}}},"/projects/{projectId}/posts/{id}/summarize":{"post":{"tags":["AI"],"summary":"Summarize a thread","security":[{"ApiKey":[]},{"Session":[]}],"parameters":[{"name":"projectId","in":"path","required":true,"schema":{"type":"string"}},{"name":"id","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"404":{"description":"Not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}}},"/projects/{projectId}/changelog/draft":{"post":{"tags":["AI"],"summary":"Draft a changelog from posts","security":[{"ApiKey":[]},{"Session":[]}],"parameters":[{"name":"projectId","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"404":{"description":"Not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}}},"/projects/{projectId}/ingest":{"post":{"tags":["AI"],"summary":"Autopilot: ingest a support conversation → AI extracts pending posts","security":[{"ApiKey":[]},{"Session":[]}],"parameters":[{"name":"projectId","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"201":{"description":"OK"},"400":{"description":"Bad request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"404":{"description":"Not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/IngestInput"}}}}}},"/projects/{projectId}/ask":{"post":{"tags":["AI"],"summary":"Ask a natural-language question over your feedback","security":[{"ApiKey":[]},{"Session":[]}],"parameters":[{"name":"projectId","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"404":{"description":"Not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/AskInput"}}}}}},"/projects/{projectId}/posts/{id}/draft-reply":{"post":{"tags":["AI"],"summary":"Draft a public reply to a post (Autopilot v2; templated fallback when AI is off)","security":[{"ApiKey":[]},{"Session":[]}],"parameters":[{"name":"projectId","in":"path","required":true,"schema":{"type":"string"}},{"name":"id","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"404":{"description":"Not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}}},"/projects/{projectId}/posts/{id}/suggest-tags":{"post":{"tags":["AI"],"summary":"Auto-categorize: suggest + apply matching tags","security":[{"ApiKey":[]},{"Session":[]}],"parameters":[{"name":"projectId","in":"path","required":true,"schema":{"type":"string"}},{"name":"id","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"404":{"description":"Not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}}},"/projects/{projectId}/digest/preview":{"get":{"tags":["AI"],"summary":"Preview this week’s feedback digest","security":[{"ApiKey":[]},{"Session":[]}],"parameters":[{"name":"projectId","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"404":{"description":"Not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}}},"/projects/{projectId}/posts/{id}/approve":{"post":{"tags":["Posts"],"summary":"Approve a pending AI-ingested post (→ live)","security":[{"ApiKey":[]},{"Session":[]}],"parameters":[{"name":"projectId","in":"path","required":true,"schema":{"type":"string"}},{"name":"id","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/AdminPostListItem"}}}},"400":{"description":"Bad request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"404":{"description":"Not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}}},"/projects/{projectId}/posts/{id}/dismiss":{"post":{"tags":["Posts"],"summary":"Dismiss a pending AI-ingested post","security":[{"ApiKey":[]},{"Session":[]}],"parameters":[{"name":"projectId","in":"path","required":true,"schema":{"type":"string"}},{"name":"id","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"404":{"description":"Not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}}},"/org":{"get":{"tags":["Organization"],"summary":"Current organization","security":[{"ApiKey":[]},{"Session":[]}],"parameters":[],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Organization"}}}},"400":{"description":"Bad request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"404":{"description":"Not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}},"patch":{"tags":["Organization"],"summary":"Update org settings","security":[{"ApiKey":[]},{"Session":[]}],"parameters":[],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Organization"}}}},"400":{"description":"Bad request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"404":{"description":"Not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateOrgSettingsInput"}}}}}},"/org/members":{"get":{"tags":["Organization"],"summary":"List members","security":[{"ApiKey":[]},{"Session":[]}],"parameters":[],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/Member"}}}}},"400":{"description":"Bad request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"404":{"description":"Not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}},"post":{"tags":["Organization"],"summary":"Invite a member","security":[{"ApiKey":[]},{"Session":[]}],"parameters":[],"responses":{"201":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Member"}}}},"400":{"description":"Bad request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"404":{"description":"Not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/InviteMemberInput"}}}}}},"/org/members/{id}":{"patch":{"tags":["Organization"],"summary":"Change a member role","security":[{"ApiKey":[]},{"Session":[]}],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Member"}}}},"400":{"description":"Bad request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"404":{"description":"Not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateMemberInput"}}}}},"delete":{"tags":["Organization"],"summary":"Remove a member","security":[{"ApiKey":[]},{"Session":[]}],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"404":{"description":"Not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}}},"/org/audit-log":{"get":{"tags":["Organization"],"summary":"Read the org audit trail (admins only)","security":[{"ApiKey":[]},{"Session":[]}],"parameters":[],"responses":{"200":{"description":"OK"},"400":{"description":"Bad request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"404":{"description":"Not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}}},"/projects/{projectId}/moderation":{"get":{"tags":["Moderation"],"summary":"Flagged + hidden posts and comments awaiting review","security":[{"ApiKey":[]},{"Session":[]}],"parameters":[{"name":"projectId","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"404":{"description":"Not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}}},"/projects/{projectId}/moderation/posts/{id}":{"post":{"tags":["Moderation"],"summary":"Moderate a post (hide | unhide | approve)","security":[{"ApiKey":[]},{"Session":[]}],"parameters":[{"name":"projectId","in":"path","required":true,"schema":{"type":"string"}},{"name":"id","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"404":{"description":"Not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}}},"/projects/{projectId}/moderation/comments/{id}":{"post":{"tags":["Moderation"],"summary":"Moderate a comment (hide | unhide | approve)","security":[{"ApiKey":[]},{"Session":[]}],"parameters":[{"name":"projectId","in":"path","required":true,"schema":{"type":"string"}},{"name":"id","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"OK"},"400":{"description":"Bad request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"404":{"description":"Not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}}}},"components":{"schemas":{"Error":{"type":"object","properties":{"error":{"type":"object","properties":{"code":{"type":"string"},"message":{"type":"string"}}}}},"Post":{"type":"object","properties":{"id":{"type":"string","pattern":"^post_[0-9A-Za-z_-]+$"},"boardId":{"type":"string","pattern":"^board_[0-9A-Za-z_-]+$"},"projectId":{"type":"string","pattern":"^proj_[0-9A-Za-z_-]+$"},"authorEndUserId":{"anyOf":[{"type":"string","pattern":"^eu_[0-9A-Za-z_-]+$"},{"type":"null"}]},"authorMemberId":{"anyOf":[{"type":"string","pattern":"^mem_[0-9A-Za-z_-]+$"},{"type":"null"}]},"title":{"type":"string"},"body":{"type":"string"},"originalLocale":{"type":"string"},"statusId":{"anyOf":[{"type":"string","pattern":"^status_[0-9A-Za-z_-]+$"},{"type":"null"}]},"isPinned":{"type":"boolean"},"voteCount":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"commentCount":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"mergedIntoPostId":{"anyOf":[{"type":"string","pattern":"^post_[0-9A-Za-z_-]+$"},{"type":"null"}]},"eta":{"type":["string","null"]},"appVersion":{"type":["string","null"]},"sentiment":{"type":["number","null"]},"sentimentLabel":{"anyOf":[{"type":"string","enum":["negative","neutral","positive"]},{"type":"null"}]},"createdAt":{"type":"string"},"updatedAt":{"type":"string"}},"required":["id","boardId","projectId","authorEndUserId","authorMemberId","title","body","originalLocale","statusId","isPinned","voteCount","commentCount","mergedIntoPostId","eta","appVersion","createdAt","updatedAt"],"additionalProperties":false},"LocalizedPost":{"type":"object","properties":{"id":{"type":"string","pattern":"^post_[0-9A-Za-z_-]+$"},"boardId":{"type":"string","pattern":"^board_[0-9A-Za-z_-]+$"},"projectId":{"type":"string","pattern":"^proj_[0-9A-Za-z_-]+$"},"authorEndUserId":{"anyOf":[{"type":"string","pattern":"^eu_[0-9A-Za-z_-]+$"},{"type":"null"}]},"authorMemberId":{"anyOf":[{"type":"string","pattern":"^mem_[0-9A-Za-z_-]+$"},{"type":"null"}]},"title":{"type":"string"},"body":{"type":"string"},"originalLocale":{"type":"string"},"statusId":{"anyOf":[{"type":"string","pattern":"^status_[0-9A-Za-z_-]+$"},{"type":"null"}]},"isPinned":{"type":"boolean"},"voteCount":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"commentCount":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"mergedIntoPostId":{"anyOf":[{"type":"string","pattern":"^post_[0-9A-Za-z_-]+$"},{"type":"null"}]},"eta":{"type":["string","null"]},"appVersion":{"type":["string","null"]},"sentiment":{"type":["number","null"]},"sentimentLabel":{"anyOf":[{"type":"string","enum":["negative","neutral","positive"]},{"type":"null"}]},"createdAt":{"type":"string"},"updatedAt":{"type":"string"},"hasVoted":{"type":"boolean"},"displayLocale":{"type":"string"},"status":{"anyOf":[{"type":"object","properties":{"id":{"type":"string","pattern":"^status_[0-9A-Za-z_-]+$"},"projectId":{"type":"string","pattern":"^proj_[0-9A-Za-z_-]+$"},"name":{"type":"string"},"color":{"type":"string"},"kind":{"type":"string","enum":["open","planned","in_progress","complete","closed"]},"position":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"showOnRoadmap":{"type":"boolean"},"createdAt":{"type":"string"},"updatedAt":{"type":"string"}},"required":["id","projectId","name","color","kind","position","showOnRoadmap","createdAt","updatedAt"],"additionalProperties":false},{"type":"null"}]},"tags":{"type":"array","items":{"type":"object","properties":{"name":{"type":"string"},"color":{"type":"string"}},"required":["name","color"],"additionalProperties":false}}},"required":["id","boardId","projectId","authorEndUserId","authorMemberId","title","body","originalLocale","statusId","isPinned","voteCount","commentCount","mergedIntoPostId","eta","appVersion","createdAt","updatedAt"],"additionalProperties":false},"Attachment":{"type":"object","properties":{"id":{"type":"string","pattern":"^att_[0-9A-Za-z_-]+$"},"projectId":{"type":"string","pattern":"^proj_[0-9A-Za-z_-]+$"},"postId":{"anyOf":[{"type":"string","pattern":"^post_[0-9A-Za-z_-]+$"},{"type":"null"}]},"kind":{"type":"string","enum":["screenshot","file"]},"mimeType":{"type":"string"},"byteSize":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"width":{"anyOf":[{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},{"type":"null"}]},"height":{"anyOf":[{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},{"type":"null"}]},"createdAt":{"type":"string"},"updatedAt":{"type":"string"}},"required":["id","projectId","postId","kind","mimeType","byteSize","width","height","createdAt","updatedAt"],"additionalProperties":false},"AttachmentRef":{"type":"object","properties":{"id":{"type":"string","pattern":"^att_[0-9A-Za-z_-]+$"},"kind":{"type":"string","enum":["screenshot","file"]},"mimeType":{"type":"string"},"byteSize":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"width":{"anyOf":[{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},{"type":"null"}]},"height":{"anyOf":[{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},{"type":"null"}]}},"required":["id","kind","mimeType","byteSize","width","height"],"additionalProperties":false},"Board":{"type":"object","properties":{"id":{"type":"string","pattern":"^board_[0-9A-Za-z_-]+$"},"projectId":{"type":"string","pattern":"^proj_[0-9A-Za-z_-]+$"},"slug":{"type":"string"},"name":{"type":"string"},"description":{"type":["string","null"]},"kind":{"type":"string","enum":["feature","bug","general"]},"isPrivate":{"type":"boolean"},"position":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"createdAt":{"type":"string"},"updatedAt":{"type":"string"}},"required":["id","projectId","slug","name","description","kind","isPrivate","position","createdAt","updatedAt"],"additionalProperties":false},"Status":{"type":"object","properties":{"id":{"type":"string","pattern":"^status_[0-9A-Za-z_-]+$"},"projectId":{"type":"string","pattern":"^proj_[0-9A-Za-z_-]+$"},"name":{"type":"string"},"color":{"type":"string"},"kind":{"type":"string","enum":["open","planned","in_progress","complete","closed"]},"position":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"showOnRoadmap":{"type":"boolean"},"createdAt":{"type":"string"},"updatedAt":{"type":"string"}},"required":["id","projectId","name","color","kind","position","showOnRoadmap","createdAt","updatedAt"],"additionalProperties":false},"Comment":{"type":"object","properties":{"id":{"type":"string","pattern":"^cmt_[0-9A-Za-z_-]+$"},"postId":{"type":"string","pattern":"^post_[0-9A-Za-z_-]+$"},"authorEndUserId":{"anyOf":[{"type":"string","pattern":"^eu_[0-9A-Za-z_-]+$"},{"type":"null"}]},"authorMemberId":{"anyOf":[{"type":"string","pattern":"^mem_[0-9A-Za-z_-]+$"},{"type":"null"}]},"parentCommentId":{"anyOf":[{"type":"string","pattern":"^cmt_[0-9A-Za-z_-]+$"},{"type":"null"}]},"body":{"type":"string"},"isInternal":{"type":"boolean"},"createdAt":{"type":"string"},"updatedAt":{"type":"string"}},"required":["id","postId","authorEndUserId","authorMemberId","parentCommentId","body","isInternal","createdAt","updatedAt"],"additionalProperties":false},"EndUser":{"type":"object","properties":{"id":{"type":"string","pattern":"^eu_[0-9A-Za-z_-]+$"},"projectId":{"type":"string","pattern":"^proj_[0-9A-Za-z_-]+$"},"externalId":{"type":["string","null"]},"email":{"anyOf":[{"type":"string","format":"email","pattern":"^(?:[A-Za-z0-9_'+\\-]+\\.)*[A-Za-z0-9_'+\\-]*[A-Za-z0-9_+-]@(?:[A-Za-z0-9][A-Za-z0-9\\-]*\\.)+[A-Za-z]{2,}$"},{"type":"null"}]},"name":{"type":["string","null"]},"avatarUrl":{"anyOf":[{"type":"string","format":"uri"},{"type":"null"}]},"isAnonymous":{"type":"boolean"},"locale":{"type":"string"},"companyId":{"anyOf":[{"type":"string","pattern":"^co_[0-9A-Za-z_-]+$"},{"type":"null"}]},"metadata":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{}},"segment":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{}},"createdAt":{"type":"string"},"updatedAt":{"type":"string"}},"required":["id","projectId","externalId","email","name","avatarUrl","isAnonymous","locale","companyId","metadata","segment","createdAt","updatedAt"],"additionalProperties":false},"Project":{"type":"object","properties":{"id":{"type":"string","pattern":"^proj_[0-9A-Za-z_-]+$"},"orgId":{"type":"string","pattern":"^org_[0-9A-Za-z_-]+$"},"slug":{"type":"string"},"name":{"type":"string"},"isPublic":{"type":"boolean"},"customDomain":{"type":["string","null"]},"publicKey":{"type":"string"},"allowedOrigins":{"type":"array","items":{"type":"string"}},"widgetSettings":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{}},"createdAt":{"type":"string"},"updatedAt":{"type":"string"}},"required":["id","orgId","slug","name","isPublic","customDomain","publicKey","allowedOrigins","widgetSettings","createdAt","updatedAt"],"additionalProperties":false},"Tag":{"type":"object","properties":{"id":{"type":"string","pattern":"^tag_[0-9A-Za-z_-]+$"},"projectId":{"type":"string","pattern":"^proj_[0-9A-Za-z_-]+$"},"name":{"type":"string"},"color":{"type":"string"},"createdAt":{"type":"string"},"updatedAt":{"type":"string"}},"required":["id","projectId","name","color","createdAt","updatedAt"],"additionalProperties":false},"Company":{"type":"object","properties":{"id":{"type":"string","pattern":"^co_[0-9A-Za-z_-]+$"},"projectId":{"type":"string","pattern":"^proj_[0-9A-Za-z_-]+$"},"externalId":{"type":["string","null"]},"name":{"type":"string"},"domain":{"type":["string","null"]},"mrr":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"plan":{"type":["string","null"]},"metadata":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{}},"createdAt":{"type":"string"},"updatedAt":{"type":"string"}},"required":["id","projectId","externalId","name","domain","mrr","plan","metadata","createdAt","updatedAt"],"additionalProperties":false},"CompanyWithStats":{"type":"object","properties":{"id":{"type":"string","pattern":"^co_[0-9A-Za-z_-]+$"},"projectId":{"type":"string","pattern":"^proj_[0-9A-Za-z_-]+$"},"externalId":{"type":["string","null"]},"name":{"type":"string"},"domain":{"type":["string","null"]},"mrr":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"plan":{"type":["string","null"]},"metadata":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{}},"createdAt":{"type":"string"},"updatedAt":{"type":"string"},"userCount":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"postCount":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991}},"required":["id","projectId","externalId","name","domain","mrr","plan","metadata","createdAt","updatedAt","userCount","postCount"],"additionalProperties":false},"ScoreField":{"type":"object","properties":{"id":{"type":"string","pattern":"^sf_[0-9A-Za-z_-]+$"},"projectId":{"type":"string","pattern":"^proj_[0-9A-Za-z_-]+$"},"key":{"type":"string"},"label":{"type":"string"},"weight":{"type":"number"},"position":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"createdAt":{"type":"string"},"updatedAt":{"type":"string"}},"required":["id","projectId","key","label","weight","position","createdAt","updatedAt"],"additionalProperties":false},"Segment":{"type":"object","properties":{"id":{"type":"string","pattern":"^seg_[0-9A-Za-z_-]+$"},"projectId":{"type":"string","pattern":"^proj_[0-9A-Za-z_-]+$"},"name":{"type":"string"},"definition":{"type":"object","properties":{"match":{"default":"all","type":"string","enum":["all","any"]},"rules":{"default":[],"maxItems":20,"type":"array","items":{"type":"object","properties":{"field":{"type":"string","enum":["plan","mrr","locale","email_domain","has_company"]},"op":{"type":"string","enum":["eq","neq","gt","gte","lt","lte"]},"value":{"type":"string"}},"required":["field","op","value"],"additionalProperties":false}}},"required":["match","rules"],"additionalProperties":false},"createdAt":{"type":"string"},"updatedAt":{"type":"string"}},"required":["id","projectId","name","definition","createdAt","updatedAt"],"additionalProperties":false},"SegmentWithCount":{"type":"object","properties":{"id":{"type":"string","pattern":"^seg_[0-9A-Za-z_-]+$"},"projectId":{"type":"string","pattern":"^proj_[0-9A-Za-z_-]+$"},"name":{"type":"string"},"definition":{"type":"object","properties":{"match":{"default":"all","type":"string","enum":["all","any"]},"rules":{"default":[],"maxItems":20,"type":"array","items":{"type":"object","properties":{"field":{"type":"string","enum":["plan","mrr","locale","email_domain","has_company"]},"op":{"type":"string","enum":["eq","neq","gt","gte","lt","lte"]},"value":{"type":"string"}},"required":["field","op","value"],"additionalProperties":false}}},"required":["match","rules"],"additionalProperties":false},"createdAt":{"type":"string"},"updatedAt":{"type":"string"},"matchCount":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991}},"required":["id","projectId","name","definition","createdAt","updatedAt","matchCount"],"additionalProperties":false},"Survey":{"type":"object","properties":{"id":{"type":"string","pattern":"^sv_[0-9A-Za-z_-]+$"},"projectId":{"type":"string","pattern":"^proj_[0-9A-Za-z_-]+$"},"name":{"type":"string"},"type":{"type":"string","enum":["nps","csat","ces","rating","text","choice"]},"question":{"type":"string"},"config":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{}},"segmentId":{"anyOf":[{"type":"string","pattern":"^seg_[0-9A-Za-z_-]+$"},{"type":"null"}]},"isActive":{"type":"boolean"},"createdAt":{"type":"string"},"updatedAt":{"type":"string"}},"required":["id","projectId","name","type","question","config","segmentId","isActive","createdAt","updatedAt"],"additionalProperties":false},"SurveyResults":{"type":"object","properties":{"responseCount":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"average":{"type":["number","null"]},"nps":{"type":["number","null"]},"csatPercent":{"type":["number","null"]},"distribution":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991}},"choices":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991}},"texts":{"type":"array","items":{"type":"string"}}},"required":["responseCount","average","nps","csatPercent","distribution","choices","texts"],"additionalProperties":false},"AdminPostListItem":{"type":"object","properties":{"id":{"type":"string","pattern":"^post_[0-9A-Za-z_-]+$"},"boardId":{"type":"string","pattern":"^board_[0-9A-Za-z_-]+$"},"projectId":{"type":"string","pattern":"^proj_[0-9A-Za-z_-]+$"},"authorEndUserId":{"anyOf":[{"type":"string","pattern":"^eu_[0-9A-Za-z_-]+$"},{"type":"null"}]},"authorMemberId":{"anyOf":[{"type":"string","pattern":"^mem_[0-9A-Za-z_-]+$"},{"type":"null"}]},"title":{"type":"string"},"body":{"type":"string"},"originalLocale":{"type":"string"},"statusId":{"anyOf":[{"type":"string","pattern":"^status_[0-9A-Za-z_-]+$"},{"type":"null"}]},"isPinned":{"type":"boolean"},"voteCount":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"commentCount":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"mergedIntoPostId":{"anyOf":[{"type":"string","pattern":"^post_[0-9A-Za-z_-]+$"},{"type":"null"}]},"eta":{"type":["string","null"]},"appVersion":{"type":["string","null"]},"sentiment":{"type":["number","null"]},"sentimentLabel":{"anyOf":[{"type":"string","enum":["negative","neutral","positive"]},{"type":"null"}]},"createdAt":{"type":"string"},"updatedAt":{"type":"string"},"revenueImpact":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"score":{"type":"number"},"assigneeMemberId":{"anyOf":[{"type":"string","pattern":"^mem_[0-9A-Za-z_-]+$"},{"type":"null"}]},"fields":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{"type":"number"}},"reviewStatus":{"type":"string","enum":["none","pending","dismissed"]},"source":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{}}},"required":["id","boardId","projectId","authorEndUserId","authorMemberId","title","body","originalLocale","statusId","isPinned","voteCount","commentCount","mergedIntoPostId","eta","appVersion","createdAt","updatedAt","revenueImpact","score","assigneeMemberId","fields","reviewStatus","source"],"additionalProperties":false},"ChangelogEntry":{"type":"object","properties":{"id":{"type":"string","pattern":"^cl_[0-9A-Za-z_-]+$"},"projectId":{"type":"string","pattern":"^proj_[0-9A-Za-z_-]+$"},"title":{"type":"string"},"body":{"type":"string"},"status":{"type":"string","enum":["draft","published"]},"publishedAt":{"type":["string","null"]},"labels":{"type":"array","items":{"type":"string"}},"linkedPostIds":{"type":"array","items":{"type":"string","pattern":"^post_[0-9A-Za-z_-]+$"}},"segmentId":{"anyOf":[{"type":"string","pattern":"^seg_[0-9A-Za-z_-]+$"},{"type":"null"}]},"recipientCount":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"createdAt":{"type":"string"},"updatedAt":{"type":"string"}},"required":["id","projectId","title","body","status","publishedAt","labels","linkedPostIds","segmentId","recipientCount","createdAt","updatedAt"],"additionalProperties":false},"Member":{"type":"object","properties":{"id":{"type":"string","pattern":"^mem_[0-9A-Za-z_-]+$"},"orgId":{"type":"string","pattern":"^org_[0-9A-Za-z_-]+$"},"userId":{"type":"string"},"role":{"type":"string","enum":["owner","admin","moderator","member"]},"createdAt":{"type":"string"},"updatedAt":{"type":"string"}},"required":["id","orgId","userId","role","createdAt","updatedAt"],"additionalProperties":false},"Organization":{"type":"object","properties":{"id":{"type":"string","pattern":"^org_[0-9A-Za-z_-]+$"},"slug":{"type":"string"},"name":{"type":"string"},"plan":{"type":"string","enum":["free","starter","pro"]},"defaultLocale":{"type":"string"},"locales":{"type":"array","items":{"type":"string"}},"settings":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{}},"createdAt":{"type":"string"},"updatedAt":{"type":"string"}},"required":["id","slug","name","plan","defaultLocale","locales","settings","createdAt","updatedAt"],"additionalProperties":false},"Insight":{"type":"object","properties":{"id":{"type":"string","pattern":"^ins_[0-9A-Za-z_-]+$"},"projectId":{"type":"string","pattern":"^proj_[0-9A-Za-z_-]+$"},"postId":{"type":"string","pattern":"^post_[0-9A-Za-z_-]+$"},"quote":{"type":"string"},"source":{"type":"string","enum":["manual","intercom","zendesk","email","sales","call","other"]},"customerEmail":{"type":["string","null"]},"companyId":{"anyOf":[{"type":"string","pattern":"^co_[0-9A-Za-z_-]+$"},{"type":"null"}]},"createdByMemberId":{"anyOf":[{"type":"string","pattern":"^mem_[0-9A-Za-z_-]+$"},{"type":"null"}]},"createdAt":{"type":"string"},"updatedAt":{"type":"string"}},"required":["id","projectId","postId","quote","source","customerEmail","companyId","createdByMemberId","createdAt","updatedAt"],"additionalProperties":false},"PostDetail":{"type":"object","properties":{"post":{"type":"object","properties":{"id":{"type":"string","pattern":"^post_[0-9A-Za-z_-]+$"},"boardId":{"type":"string","pattern":"^board_[0-9A-Za-z_-]+$"},"projectId":{"type":"string","pattern":"^proj_[0-9A-Za-z_-]+$"},"authorEndUserId":{"anyOf":[{"type":"string","pattern":"^eu_[0-9A-Za-z_-]+$"},{"type":"null"}]},"authorMemberId":{"anyOf":[{"type":"string","pattern":"^mem_[0-9A-Za-z_-]+$"},{"type":"null"}]},"title":{"type":"string"},"body":{"type":"string"},"originalLocale":{"type":"string"},"statusId":{"anyOf":[{"type":"string","pattern":"^status_[0-9A-Za-z_-]+$"},{"type":"null"}]},"isPinned":{"type":"boolean"},"voteCount":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"commentCount":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"mergedIntoPostId":{"anyOf":[{"type":"string","pattern":"^post_[0-9A-Za-z_-]+$"},{"type":"null"}]},"eta":{"type":["string","null"]},"appVersion":{"type":["string","null"]},"sentiment":{"type":["number","null"]},"sentimentLabel":{"anyOf":[{"type":"string","enum":["negative","neutral","positive"]},{"type":"null"}]},"createdAt":{"type":"string"},"updatedAt":{"type":"string"},"hasVoted":{"type":"boolean"},"displayLocale":{"type":"string"},"status":{"anyOf":[{"type":"object","properties":{"id":{"type":"string","pattern":"^status_[0-9A-Za-z_-]+$"},"projectId":{"type":"string","pattern":"^proj_[0-9A-Za-z_-]+$"},"name":{"type":"string"},"color":{"type":"string"},"kind":{"type":"string","enum":["open","planned","in_progress","complete","closed"]},"position":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"showOnRoadmap":{"type":"boolean"},"createdAt":{"type":"string"},"updatedAt":{"type":"string"}},"required":["id","projectId","name","color","kind","position","showOnRoadmap","createdAt","updatedAt"],"additionalProperties":false},{"type":"null"}]},"tags":{"type":"array","items":{"type":"object","properties":{"name":{"type":"string"},"color":{"type":"string"}},"required":["name","color"],"additionalProperties":false}}},"required":["id","boardId","projectId","authorEndUserId","authorMemberId","title","body","originalLocale","statusId","isPinned","voteCount","commentCount","mergedIntoPostId","eta","appVersion","createdAt","updatedAt"],"additionalProperties":false},"comments":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^cmt_[0-9A-Za-z_-]+$"},"postId":{"type":"string","pattern":"^post_[0-9A-Za-z_-]+$"},"authorEndUserId":{"anyOf":[{"type":"string","pattern":"^eu_[0-9A-Za-z_-]+$"},{"type":"null"}]},"authorMemberId":{"anyOf":[{"type":"string","pattern":"^mem_[0-9A-Za-z_-]+$"},{"type":"null"}]},"parentCommentId":{"anyOf":[{"type":"string","pattern":"^cmt_[0-9A-Za-z_-]+$"},{"type":"null"}]},"body":{"type":"string"},"isInternal":{"type":"boolean"},"createdAt":{"type":"string"},"updatedAt":{"type":"string"}},"required":["id","postId","authorEndUserId","authorMemberId","parentCommentId","body","isInternal","createdAt","updatedAt"],"additionalProperties":false}},"translations":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^ptr_[0-9A-Za-z_-]+$"},"postId":{"type":"string","pattern":"^post_[0-9A-Za-z_-]+$"},"locale":{"type":"string"},"title":{"type":"string"},"body":{"type":"string"},"isAuto":{"type":"boolean"},"createdAt":{"type":"string"},"updatedAt":{"type":"string"}},"required":["id","postId","locale","title","body","isAuto","createdAt","updatedAt"],"additionalProperties":false}}},"required":["post","comments","translations"],"additionalProperties":false},"VoteToggleResponse":{"type":"object","properties":{"voted":{"type":"boolean"},"voteCount":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991}},"required":["voted","voteCount"],"additionalProperties":false},"RoadmapResponse":{"type":"object","properties":{"columns":{"type":"array","items":{"type":"object","properties":{"status":{"type":"object","properties":{"id":{"type":"string","pattern":"^status_[0-9A-Za-z_-]+$"},"projectId":{"type":"string","pattern":"^proj_[0-9A-Za-z_-]+$"},"name":{"type":"string"},"color":{"type":"string"},"kind":{"type":"string","enum":["open","planned","in_progress","complete","closed"]},"position":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"showOnRoadmap":{"type":"boolean"},"createdAt":{"type":"string"},"updatedAt":{"type":"string"}},"required":["id","projectId","name","color","kind","position","showOnRoadmap","createdAt","updatedAt"],"additionalProperties":false},"posts":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^post_[0-9A-Za-z_-]+$"},"boardId":{"type":"string","pattern":"^board_[0-9A-Za-z_-]+$"},"projectId":{"type":"string","pattern":"^proj_[0-9A-Za-z_-]+$"},"authorEndUserId":{"anyOf":[{"type":"string","pattern":"^eu_[0-9A-Za-z_-]+$"},{"type":"null"}]},"authorMemberId":{"anyOf":[{"type":"string","pattern":"^mem_[0-9A-Za-z_-]+$"},{"type":"null"}]},"title":{"type":"string"},"body":{"type":"string"},"originalLocale":{"type":"string"},"statusId":{"anyOf":[{"type":"string","pattern":"^status_[0-9A-Za-z_-]+$"},{"type":"null"}]},"isPinned":{"type":"boolean"},"voteCount":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"commentCount":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"mergedIntoPostId":{"anyOf":[{"type":"string","pattern":"^post_[0-9A-Za-z_-]+$"},{"type":"null"}]},"eta":{"type":["string","null"]},"appVersion":{"type":["string","null"]},"sentiment":{"type":["number","null"]},"sentimentLabel":{"anyOf":[{"type":"string","enum":["negative","neutral","positive"]},{"type":"null"}]},"createdAt":{"type":"string"},"updatedAt":{"type":"string"},"hasVoted":{"type":"boolean"},"displayLocale":{"type":"string"},"status":{"anyOf":[{"type":"object","properties":{"id":{"type":"string","pattern":"^status_[0-9A-Za-z_-]+$"},"projectId":{"type":"string","pattern":"^proj_[0-9A-Za-z_-]+$"},"name":{"type":"string"},"color":{"type":"string"},"kind":{"type":"string","enum":["open","planned","in_progress","complete","closed"]},"position":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"showOnRoadmap":{"type":"boolean"},"createdAt":{"type":"string"},"updatedAt":{"type":"string"}},"required":["id","projectId","name","color","kind","position","showOnRoadmap","createdAt","updatedAt"],"additionalProperties":false},{"type":"null"}]},"tags":{"type":"array","items":{"type":"object","properties":{"name":{"type":"string"},"color":{"type":"string"}},"required":["name","color"],"additionalProperties":false}}},"required":["id","boardId","projectId","authorEndUserId","authorMemberId","title","body","originalLocale","statusId","isPinned","voteCount","commentCount","mergedIntoPostId","eta","appVersion","createdAt","updatedAt"],"additionalProperties":false}}},"required":["status","posts"],"additionalProperties":false}}},"required":["columns"],"additionalProperties":false},"AnalyticsResponse":{"type":"object","properties":{"summary":{"type":"object","properties":{"posts":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"votes":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"comments":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"voters":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"newPosts":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"newVotes":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"newComments":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"prevPosts":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"prevVotes":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"prevComments":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991}},"required":["posts","votes","comments","voters","newPosts","newVotes","newComments","prevPosts","prevVotes","prevComments"],"additionalProperties":false},"sentiment":{"type":"object","properties":{"positive":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"neutral":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"negative":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991}},"required":["positive","neutral","negative"],"additionalProperties":false},"voteVelocity":{"type":"array","items":{"type":"object","properties":{"date":{"type":"string"},"votes":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991}},"required":["date","votes"],"additionalProperties":false}},"postVelocity":{"type":"array","items":{"type":"object","properties":{"date":{"type":"string"},"posts":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991}},"required":["date","posts"],"additionalProperties":false}},"statusDistribution":{"type":"array","items":{"type":"object","properties":{"kind":{"type":"string"},"name":{"type":"string"},"color":{"type":"string"},"count":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991}},"required":["kind","name","color","count"],"additionalProperties":false}},"boardHealth":{"type":"array","items":{"type":"object","properties":{"boardId":{"type":"string"},"name":{"type":"string"},"total":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"open":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"planned":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"inProgress":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"complete":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"votes":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991}},"required":["boardId","name","total","open","planned","inProgress","complete","votes"],"additionalProperties":false}},"topTags":{"type":"array","items":{"type":"object","properties":{"name":{"type":"string"},"color":{"type":"string"},"count":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991}},"required":["name","color","count"],"additionalProperties":false}},"topPosts":{"type":"array","items":{"type":"object","properties":{"post":{"type":"object","properties":{"id":{"type":"string","pattern":"^post_[0-9A-Za-z_-]+$"},"boardId":{"type":"string","pattern":"^board_[0-9A-Za-z_-]+$"},"projectId":{"type":"string","pattern":"^proj_[0-9A-Za-z_-]+$"},"authorEndUserId":{"anyOf":[{"type":"string","pattern":"^eu_[0-9A-Za-z_-]+$"},{"type":"null"}]},"authorMemberId":{"anyOf":[{"type":"string","pattern":"^mem_[0-9A-Za-z_-]+$"},{"type":"null"}]},"title":{"type":"string"},"body":{"type":"string"},"originalLocale":{"type":"string"},"statusId":{"anyOf":[{"type":"string","pattern":"^status_[0-9A-Za-z_-]+$"},{"type":"null"}]},"isPinned":{"type":"boolean"},"voteCount":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"commentCount":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"mergedIntoPostId":{"anyOf":[{"type":"string","pattern":"^post_[0-9A-Za-z_-]+$"},{"type":"null"}]},"eta":{"type":["string","null"]},"appVersion":{"type":["string","null"]},"sentiment":{"type":["number","null"]},"sentimentLabel":{"anyOf":[{"type":"string","enum":["negative","neutral","positive"]},{"type":"null"}]},"createdAt":{"type":"string"},"updatedAt":{"type":"string"}},"required":["id","boardId","projectId","authorEndUserId","authorMemberId","title","body","originalLocale","statusId","isPinned","voteCount","commentCount","mergedIntoPostId","eta","appVersion","createdAt","updatedAt"],"additionalProperties":false},"voteCount":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991}},"required":["post","voteCount"],"additionalProperties":false}},"topByRevenue":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string"},"title":{"type":"string"},"revenue":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"voteCount":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991}},"required":["id","title","revenue","voteCount"],"additionalProperties":false}},"mostEvidenced":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string"},"title":{"type":"string"},"insightCount":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991}},"required":["id","title","insightCount"],"additionalProperties":false}},"clusterThemes":{"type":"array","items":{"type":"object","properties":{"label":{"type":"string"},"summary":{"type":"string"},"count":{"type":"number"}},"required":["label","summary","count"],"additionalProperties":false}}},"required":["summary","sentiment","voteVelocity","postVelocity","statusDistribution","boardHealth","topTags","topPosts","topByRevenue","mostEvidenced","clusterThemes"],"additionalProperties":false},"IdentifyResponse":{"type":"object","properties":{"endUser":{"type":"object","properties":{"id":{"type":"string","pattern":"^eu_[0-9A-Za-z_-]+$"},"projectId":{"type":"string","pattern":"^proj_[0-9A-Za-z_-]+$"},"externalId":{"type":["string","null"]},"email":{"anyOf":[{"type":"string","format":"email","pattern":"^(?:[A-Za-z0-9_'+\\-]+\\.)*[A-Za-z0-9_'+\\-]*[A-Za-z0-9_+-]@(?:[A-Za-z0-9][A-Za-z0-9\\-]*\\.)+[A-Za-z]{2,}$"},{"type":"null"}]},"name":{"type":["string","null"]},"avatarUrl":{"anyOf":[{"type":"string","format":"uri"},{"type":"null"}]},"isAnonymous":{"type":"boolean"},"locale":{"type":"string"},"companyId":{"anyOf":[{"type":"string","pattern":"^co_[0-9A-Za-z_-]+$"},{"type":"null"}]},"metadata":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{}},"segment":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{}},"createdAt":{"type":"string"},"updatedAt":{"type":"string"}},"required":["id","projectId","externalId","email","name","avatarUrl","isAnonymous","locale","companyId","metadata","segment","createdAt","updatedAt"],"additionalProperties":false},"token":{"type":"string"}},"required":["endUser","token"],"additionalProperties":false},"CreateApiKeyResponse":{"type":"object","properties":{"id":{"type":"string"},"name":{"type":"string"},"key":{"type":"string"},"prefix":{"type":"string"}},"required":["id","name","key","prefix"],"additionalProperties":false},"CreateInsightInput":{"type":"object","properties":{"postId":{"type":"string","pattern":"^post_[0-9A-Za-z_-]+$"},"quote":{"type":"string","minLength":1,"maxLength":2000},"source":{"default":"manual","type":"string","enum":["manual","intercom","zendesk","email","sales","call","other"]},"customerEmail":{"type":"string","format":"email","pattern":"^(?:[A-Za-z0-9_'+\\-]+\\.)*[A-Za-z0-9_'+\\-]*[A-Za-z0-9_+-]@(?:[A-Za-z0-9][A-Za-z0-9\\-]*\\.)+[A-Za-z]{2,}$"},"companyId":{"type":"string","pattern":"^co_[0-9A-Za-z_-]+$"}},"required":["postId","quote"]},"CreatePostInput":{"type":"object","properties":{"boardSlug":{"type":"string","minLength":1},"title":{"type":"string","minLength":2,"maxLength":300},"body":{"default":"","type":"string","maxLength":20000},"locale":{"type":"string"},"appVersion":{"type":"string","maxLength":120},"metadata":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{}},"attachmentIds":{"maxItems":10,"type":"array","items":{"type":"string"}}},"required":["boardSlug","title"]},"CreateAttachmentInput":{"type":"object","properties":{"dataUrl":{"type":"string","maxLength":13981144,"format":"starts_with","pattern":"^data:.*"},"kind":{"default":"screenshot","type":"string","enum":["screenshot","file"]}},"required":["dataUrl"]},"CreateCommentInput":{"type":"object","properties":{"body":{"type":"string","minLength":1,"maxLength":20000},"parentCommentId":{"type":"string"},"isInternal":{"type":"boolean"}},"required":["body"]},"ChangelogSubscribeInput":{"type":"object","properties":{"email":{"type":"string","format":"email","pattern":"^(?:[A-Za-z0-9_'+\\-]+\\.)*[A-Za-z0-9_'+\\-]*[A-Za-z0-9_+-]@(?:[A-Za-z0-9][A-Za-z0-9\\-]*\\.)+[A-Za-z]{2,}$"}},"required":["email"]},"IdentifyInput":{"type":"object","properties":{"jwt":{"type":"string","minLength":1}},"required":["jwt"]},"CreateProjectInput":{"type":"object","properties":{"name":{"type":"string","minLength":1},"slug":{"type":"string","minLength":1,"pattern":"^[a-z0-9-]+$"},"isPublic":{"default":true,"type":"boolean"},"allowedOrigins":{"default":[],"type":"array","items":{"type":"string"}}},"required":["name","slug"]},"UpdateProjectInput":{"type":"object","properties":{"name":{"type":"string","minLength":1},"slug":{"type":"string","minLength":1,"pattern":"^[a-z0-9-]+$"},"isPublic":{"default":true,"type":"boolean"},"allowedOrigins":{"default":[],"type":"array","items":{"type":"string"}},"customDomain":{"type":["string","null"]},"widgetSettings":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{}}}},"CreateBoardInput":{"type":"object","properties":{"name":{"type":"string","minLength":1},"slug":{"type":"string","pattern":"^[a-z0-9-]+$"},"description":{"type":"string"},"kind":{"default":"feature","type":"string","enum":["feature","bug","general"]},"isPrivate":{"default":false,"type":"boolean"}},"required":["name","slug"]},"UpdateBoardInput":{"type":"object","properties":{"name":{"type":"string","minLength":1},"slug":{"type":"string","pattern":"^[a-z0-9-]+$"},"description":{"type":"string"},"kind":{"default":"feature","type":"string","enum":["feature","bug","general"]},"isPrivate":{"default":false,"type":"boolean"}}},"CreateStatusInput":{"type":"object","properties":{"name":{"type":"string","minLength":1},"color":{"type":"string"},"kind":{"type":"string","enum":["open","planned","in_progress","complete","closed"]},"showOnRoadmap":{"default":false,"type":"boolean"},"position":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991}},"required":["name","color","kind"]},"UpdateStatusInput":{"type":"object","properties":{"name":{"type":"string","minLength":1},"color":{"type":"string"},"kind":{"type":"string","enum":["open","planned","in_progress","complete","closed"]},"showOnRoadmap":{"default":false,"type":"boolean"},"position":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991}}},"AdminCreatePostInput":{"type":"object","properties":{"boardId":{"type":"string","minLength":1},"title":{"type":"string","minLength":2,"maxLength":300},"body":{"default":"","type":"string","maxLength":20000},"statusId":{"type":"string"},"locale":{"type":"string"}},"required":["boardId","title"]},"UpdatePostInput":{"type":"object","properties":{"title":{"type":"string","minLength":2,"maxLength":300},"body":{"type":"string","maxLength":20000},"statusId":{"type":["string","null"]},"boardId":{"type":"string"},"isPinned":{"type":"boolean"},"eta":{"type":["string","null"]},"assigneeMemberId":{"type":["string","null"]},"fields":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{"type":"number"}}}},"ChangePostStatusInput":{"type":"object","properties":{"statusId":{"type":["string","null"]}},"required":["statusId"]},"MergePostInput":{"type":"object","properties":{"targetPostId":{"type":"string","minLength":1}},"required":["targetPostId"]},"TagPostInput":{"type":"object","properties":{"tagIds":{"type":"array","items":{"type":"string"}}},"required":["tagIds"]},"CreateTagInput":{"type":"object","properties":{"name":{"type":"string","minLength":1},"color":{"type":"string"}},"required":["name","color"]},"UpdateCompanyInput":{"type":"object","properties":{"name":{"type":"string","minLength":1},"domain":{"type":["string","null"]},"mrr":{"type":"integer","minimum":0,"maximum":9007199254740991},"plan":{"type":["string","null"]}}},"CreateScoreFieldInput":{"type":"object","properties":{"key":{"type":"string","minLength":1,"pattern":"^[a-z0-9_]+$"},"label":{"type":"string","minLength":1},"weight":{"default":1,"type":"number"},"position":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991}},"required":["key","label"]},"UpdateScoreFieldInput":{"type":"object","properties":{"key":{"type":"string","minLength":1,"pattern":"^[a-z0-9_]+$"},"label":{"type":"string","minLength":1},"weight":{"default":1,"type":"number"},"position":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991}}},"VoteForInput":{"type":"object","properties":{"email":{"type":"string","format":"email","pattern":"^(?:[A-Za-z0-9_'+\\-]+\\.)*[A-Za-z0-9_'+\\-]*[A-Za-z0-9_+-]@(?:[A-Za-z0-9][A-Za-z0-9\\-]*\\.)+[A-Za-z]{2,}$"},"externalId":{"type":"string"},"name":{"type":"string"}}},"CreateSegmentInput":{"type":"object","properties":{"name":{"type":"string","minLength":1},"definition":{"type":"object","properties":{"match":{"default":"all","type":"string","enum":["all","any"]},"rules":{"default":[],"maxItems":20,"type":"array","items":{"type":"object","properties":{"field":{"type":"string","enum":["plan","mrr","locale","email_domain","has_company"]},"op":{"type":"string","enum":["eq","neq","gt","gte","lt","lte"]},"value":{"type":"string"}},"required":["field","op","value"]}}}}},"required":["name","definition"]},"UpdateSegmentInput":{"type":"object","properties":{"name":{"type":"string","minLength":1},"definition":{"type":"object","properties":{"match":{"default":"all","type":"string","enum":["all","any"]},"rules":{"default":[],"maxItems":20,"type":"array","items":{"type":"object","properties":{"field":{"type":"string","enum":["plan","mrr","locale","email_domain","has_company"]},"op":{"type":"string","enum":["eq","neq","gt","gte","lt","lte"]},"value":{"type":"string"}},"required":["field","op","value"]}}}}}},"SegmentDefinition":{"type":"object","properties":{"match":{"default":"all","type":"string","enum":["all","any"]},"rules":{"default":[],"maxItems":20,"type":"array","items":{"type":"object","properties":{"field":{"type":"string","enum":["plan","mrr","locale","email_domain","has_company"]},"op":{"type":"string","enum":["eq","neq","gt","gte","lt","lte"]},"value":{"type":"string"}},"required":["field","op","value"]}}}},"IngestInput":{"type":"object","properties":{"source":{"default":"manual","type":"string","enum":["intercom","zendesk","slack","email","manual"]},"text":{"type":"string","minLength":1,"maxLength":20000},"author":{"type":"object","properties":{"email":{"type":"string","format":"email","pattern":"^(?:[A-Za-z0-9_'+\\-]+\\.)*[A-Za-z0-9_'+\\-]*[A-Za-z0-9_+-]@(?:[A-Za-z0-9][A-Za-z0-9\\-]*\\.)+[A-Za-z]{2,}$"},"name":{"type":"string"}}},"url":{"type":"string"}},"required":["text"]},"AskInput":{"type":"object","properties":{"question":{"type":"string","minLength":1,"maxLength":500}},"required":["question"]},"InboundEvent":{"type":"object","properties":{"type":{"type":"string","enum":["identify","group","track","page","screen","alias"]},"userId":{"type":"string"},"anonymousId":{"type":"string"},"groupId":{"type":"string"},"traits":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{}}},"required":["type"]},"CreateSurveyInput":{"type":"object","properties":{"name":{"type":"string","minLength":1},"type":{"type":"string","enum":["nps","csat","ces","rating","text","choice"]},"question":{"type":"string","minLength":1,"maxLength":300},"config":{"default":{},"type":"object","properties":{"scaleMin":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"scaleMax":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"lowLabel":{"type":"string"},"highLabel":{"type":"string"},"options":{"type":"array","items":{"type":"string"}}}},"segmentId":{"type":["string","null"]},"isActive":{"default":false,"type":"boolean"}},"required":["name","type","question"]},"UpdateSurveyInput":{"type":"object","properties":{"name":{"type":"string","minLength":1},"type":{"type":"string","enum":["nps","csat","ces","rating","text","choice"]},"question":{"type":"string","minLength":1,"maxLength":300},"config":{"default":{},"type":"object","properties":{"scaleMin":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"scaleMax":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"lowLabel":{"type":"string"},"highLabel":{"type":"string"},"options":{"type":"array","items":{"type":"string"}}}},"segmentId":{"type":["string","null"]},"isActive":{"default":false,"type":"boolean"}}},"SubmitSurveyResponseInput":{"type":"object","properties":{"value":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"text":{"type":"string","maxLength":2000},"choice":{"type":"string"}}},"CreateChangelogInput":{"type":"object","properties":{"title":{"type":"string","minLength":1},"body":{"type":"string"},"status":{"default":"draft","type":"string","enum":["draft","published"]},"labels":{"default":[],"type":"array","items":{"type":"string"}},"linkedPostIds":{"default":[],"type":"array","items":{"type":"string"}},"segmentId":{"type":["string","null"]}},"required":["title","body"]},"UpdateChangelogInput":{"type":"object","properties":{"title":{"type":"string","minLength":1},"body":{"type":"string"},"status":{"default":"draft","type":"string","enum":["draft","published"]},"labels":{"default":[],"type":"array","items":{"type":"string"}},"linkedPostIds":{"default":[],"type":"array","items":{"type":"string"}},"segmentId":{"type":["string","null"]}}},"CreateApiKeyInput":{"type":"object","properties":{"name":{"type":"string","minLength":1},"scopes":{"default":["read"],"type":"array","items":{"type":"string"}}},"required":["name"]},"InviteMemberInput":{"type":"object","properties":{"email":{"type":"string","format":"email","pattern":"^(?:[A-Za-z0-9_'+\\-]+\\.)*[A-Za-z0-9_'+\\-]*[A-Za-z0-9_+-]@(?:[A-Za-z0-9][A-Za-z0-9\\-]*\\.)+[A-Za-z]{2,}$"},"role":{"default":"member","type":"string","enum":["owner","admin","moderator","member"]}},"required":["email"]},"UpdateMemberInput":{"type":"object","properties":{"role":{"type":"string","enum":["owner","admin","moderator","member"]}},"required":["role"]},"UpdateOrgSettingsInput":{"type":"object","properties":{"name":{"type":"string","minLength":1},"defaultLocale":{"type":"string"},"locales":{"type":"array","items":{"type":"string"}},"settings":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{}}}}},"securitySchemes":{"PublicKey":{"type":"apiKey","in":"header","name":"X-Chorala-Key","description":"Project public key (pk_…)"},"EndUserToken":{"type":"apiKey","in":"header","name":"X-Chorala-User","description":"Host-signed end-user JWT (SSO)"},"ApiKey":{"type":"http","scheme":"bearer","bearerFormat":"hk_…","description":"Admin API key"},"Session":{"type":"apiKey","in":"cookie","name":"better-auth.session_token","description":"Dashboard session cookie"}}}}