{"openapi":"3.1.0","info":{"title":"CEC Feedback API","version":"1"},"servers":[{"url":"/v1"}],"paths":{"/projects":{"get":{"summary":"List active projects","security":[{"bearerAuth":["read"]}],"parameters":[],"responses":{"200":{"description":"Every active project","content":{"application/json":{"schema":{"type":"object","properties":{"items":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^prj_[0-9A-HJKMNP-TV-Z]{26}$"},"name":{"type":"string"},"slug":{"type":"string"},"publicKey":{"type":"string"},"kind":{"type":"string","enum":["website","design"]},"url":{"anyOf":[{"type":"string","maxLength":2048,"format":"uri"},{"type":"null"}]},"allowedOrigins":{"type":"array","items":{"type":"string","pattern":"^(?:https?:\\/\\/[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?(?:\\.[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?)*(?::\\d{1,5})?|\\*(?:\\.[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?){2,})$"}},"settings":{"type":"object","properties":{"visibility":{"default":{"mode":"everyone","secretKey":null},"type":"object","properties":{"mode":{"type":"string","enum":["everyone","members_only","secret_param"]},"secretKey":{"anyOf":[{"type":"string","minLength":1,"maxLength":64},{"type":"null"}]}},"required":["mode","secretKey"],"additionalProperties":false},"client":{"default":{"widgetVisible":true,"submissionOpen":true,"onboarding":true,"showPins":"always","features":{"video":true,"viewAll":true,"comments":true,"resolve":true,"tags":true,"mentions":true},"mentionable":"none"},"type":"object","properties":{"widgetVisible":{"type":"boolean"},"submissionOpen":{"type":"boolean"},"onboarding":{"type":"boolean"},"showPins":{"type":"string","enum":["always","when_open","never"]},"features":{"type":"object","properties":{"video":{"type":"boolean"},"viewAll":{"type":"boolean"},"comments":{"type":"boolean"},"resolve":{"type":"boolean"},"tags":{"type":"boolean"},"mentions":{"type":"boolean"}},"required":["video","viewAll","comments","resolve","tags","mentions"],"additionalProperties":false},"mentionable":{"type":"string","enum":["none","all"]}},"required":["widgetVisible","submissionOpen","onboarding","showPins","features","mentionable"],"additionalProperties":false},"member":{"default":{"widgetVisible":true,"submissionOpen":true,"onboarding":true,"showPins":"always","features":{"video":true,"viewAll":true,"comments":true,"resolve":true,"tags":true,"mentions":true},"mentionable":"all"},"type":"object","properties":{"widgetVisible":{"type":"boolean"},"submissionOpen":{"type":"boolean"},"onboarding":{"type":"boolean"},"showPins":{"type":"string","enum":["always","when_open","never"]},"features":{"type":"object","properties":{"video":{"type":"boolean"},"viewAll":{"type":"boolean"},"comments":{"type":"boolean"},"resolve":{"type":"boolean"},"tags":{"type":"boolean"},"mentions":{"type":"boolean"}},"required":["video","viewAll","comments","resolve","tags","mentions"],"additionalProperties":false},"mentionable":{"type":"string","enum":["none","all"]}},"required":["widgetVisible","submissionOpen","onboarding","showPins","features","mentionable"],"additionalProperties":false},"screenshot":{"default":{"basicAuth":{"enabled":false,"username":null},"embedCss":true,"embedImages":false},"type":"object","properties":{"basicAuth":{"type":"object","properties":{"enabled":{"type":"boolean"},"username":{"anyOf":[{"type":"string","minLength":1,"maxLength":200},{"type":"null"}]}},"required":["enabled","username"],"additionalProperties":false},"embedCss":{"type":"boolean"},"embedImages":{"type":"boolean"}},"required":["basicAuth","embedCss","embedImages"],"additionalProperties":false},"design":{"default":{"themeId":null,"placement":"middle_right","pinColor":"theme_primary","language":"en","descriptionPlaceholder":"Add more details if needed","onboardingTitle":"You have been asked to leave feedback","onboardingBody":"On this website you can leave feedback using screenshots and screen recordings."},"type":"object","properties":{"themeId":{"anyOf":[{"type":"string","pattern":"^thm_[0-9A-HJKMNP-TV-Z]{26}$"},{"type":"null"}]},"placement":{"type":"string","enum":["middle_right","middle_left","bottom_right","bottom_left"]},"pinColor":{"anyOf":[{"type":"string","const":"theme_primary"},{"type":"string","pattern":"^#[0-9A-Fa-f]{6}$"}]},"language":{"type":"string","const":"en"},"descriptionPlaceholder":{"type":"string"},"onboardingTitle":{"type":"string"},"onboardingBody":{"type":"string"}},"required":["themeId","placement","pinColor","language","descriptionPlaceholder","onboardingTitle","onboardingBody"],"additionalProperties":false},"clientNotifications":{"default":{"newComment":true,"feedbackResolved":true},"type":"object","properties":{"newComment":{"type":"boolean"},"feedbackResolved":{"type":"boolean"}},"required":["newComment","feedbackResolved"],"additionalProperties":false},"integrationTitlePrefix":{"default":"","type":"string","maxLength":50},"urlMatching":{"default":{"ignoreQuery":true,"keepParams":[],"hashRouting":false},"type":"object","properties":{"ignoreQuery":{"type":"boolean"},"keepParams":{"maxItems":20,"type":"array","items":{"type":"string","minLength":1,"maxLength":64}},"hashRouting":{"type":"boolean"}},"required":["ignoreQuery","keepParams","hashRouting"],"additionalProperties":false},"allowLocalhost":{"default":false,"type":"boolean"}},"required":["visibility","client","member","screenshot","design","clientNotifications","integrationTitlePrefix","urlMatching","allowLocalhost"],"additionalProperties":false},"thumbnailAttachmentId":{"anyOf":[{"type":"string","pattern":"^att_[0-9A-HJKMNP-TV-Z]{26}$"},{"type":"null"}]},"installationVerifiedAt":{"anyOf":[{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},{"type":"null"}]},"lastActivityAt":{"anyOf":[{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},{"type":"null"}]},"screenshotPasswordSet":{"type":"boolean"},"createdBy":{"type":"string","pattern":"^usr_[0-9A-HJKMNP-TV-Z]{26}$"},"createdAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"updatedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"archivedAt":{"anyOf":[{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},{"type":"null"}]}},"required":["id","name","slug","publicKey","kind","url","allowedOrigins","settings","thumbnailAttachmentId","installationVerifiedAt","lastActivityAt","screenshotPasswordSet","createdBy","createdAt","updatedAt","archivedAt"],"additionalProperties":false}},"nextCursor":{"type":["string","null"]}},"required":["items","nextCursor"],"additionalProperties":false}}}},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/RateLimited"}}}},"/feedback":{"get":{"summary":"List feedback","security":[{"bearerAuth":["read"]}],"parameters":[{"name":"projectId","in":"query","required":true,"schema":{"type":"string","pattern":"^prj_[0-9A-HJKMNP-TV-Z]{26}$"}},{"name":"status","in":"query","required":false,"schema":{"maxItems":2,"type":"array","items":{"type":"string","enum":["open","resolved"]}}},{"name":"tags","in":"query","required":false,"schema":{"maxItems":50,"type":"array","items":{"type":"string","pattern":"^tag_[0-9A-HJKMNP-TV-Z]{26}$"}}},{"name":"page","in":"query","required":false,"schema":{"type":"string","minLength":1,"maxLength":2048}},{"name":"device","in":"query","required":false,"schema":{"maxItems":3,"type":"array","items":{"type":"string","enum":["desktop","tablet","mobile"]}}},{"name":"reporterId","in":"query","required":false,"schema":{"type":"string","pattern":"^rep_[0-9A-HJKMNP-TV-Z]{26}$"}},{"name":"reporterEmail","in":"query","required":false,"schema":{"type":"string","maxLength":254,"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":"browser","in":"query","required":false,"schema":{"type":"string","maxLength":64}},{"name":"q","in":"query","required":false,"schema":{"type":"string","maxLength":200}},{"name":"from","in":"query","required":false,"schema":{"anyOf":[{"type":"string","format":"date","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))$"},{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$"}]}},{"name":"to","in":"query","required":false,"schema":{"anyOf":[{"type":"string","format":"date","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))$"},{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$"}]}},{"name":"archived","in":"query","required":false,"schema":{"default":"exclude","type":"string","enum":["exclude","include","only"]}},{"name":"sort","in":"query","required":false,"schema":{"default":"newest","type":"string","enum":["newest","oldest","updated"]}},{"name":"cursor","in":"query","required":false,"schema":{"type":"string","maxLength":1024}},{"name":"limit","in":"query","required":false,"schema":{"default":50,"type":"integer","minimum":1,"maximum":100}}],"responses":{"200":{"description":"A page of feedback, newest first by default","content":{"application/json":{"schema":{"type":"object","properties":{"items":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^fb_[0-9A-HJKMNP-TV-Z]{26}$"},"projectId":{"type":"string","pattern":"^prj_[0-9A-HJKMNP-TV-Z]{26}$"},"number":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"kind":{"type":"string","enum":["screenshot","video","text"]},"title":{"type":"string"},"status":{"type":"string","enum":["open","resolved"]},"visibility":{"type":"string","enum":["everyone","members"]},"pageUrl":{"type":"string"},"pageUrlNormalized":{"type":"string"},"anchor":{"anyOf":[{"type":"object","properties":{"selector":{"type":"string","minLength":1,"maxLength":2048},"xpath":{"anyOf":[{"type":"string","minLength":1,"maxLength":2048},{"type":"null"}]},"textSnippet":{"type":["string","null"]},"tag":{"type":"string","minLength":1,"maxLength":64},"offsetRatio":{"type":"object","properties":{"x":{"type":"number","minimum":0,"maximum":1},"y":{"type":"number","minimum":0,"maximum":1}},"required":["x","y"],"additionalProperties":false},"pagePoint":{"type":"object","properties":{"x":{"type":"number"},"y":{"type":"number"}},"required":["x","y"],"additionalProperties":false},"viewport":{"type":"object","properties":{"width":{"type":"integer","minimum":0,"maximum":9007199254740991},"height":{"type":"integer","minimum":0,"maximum":9007199254740991}},"required":["width","height"],"additionalProperties":false},"scroll":{"type":"object","properties":{"x":{"type":"number"},"y":{"type":"number"}},"required":["x","y"],"additionalProperties":false}},"required":["selector","xpath","textSnippet","tag","offsetRatio","pagePoint","viewport","scroll"],"additionalProperties":false},{"type":"null"}]},"thumbnailAttachmentId":{"anyOf":[{"type":"string","pattern":"^att_[0-9A-HJKMNP-TV-Z]{26}$"},{"type":"null"}]},"commentCount":{"type":"integer","minimum":0,"maximum":9007199254740991},"reporter":{"anyOf":[{"type":"object","properties":{"id":{"type":"string","pattern":"^rep_[0-9A-HJKMNP-TV-Z]{26}$"},"name":{"type":["string","null"]},"email":{"type":["string","null"]}},"required":["id","name","email"],"additionalProperties":false},{"type":"null"}]},"tagIds":{"type":"array","items":{"type":"string","pattern":"^tag_[0-9A-HJKMNP-TV-Z]{26}$"}},"consoleErrorCount":{"type":"integer","minimum":0,"maximum":9007199254740991},"screenshotStatus":{"type":"string","enum":["none","pending","rendered","fallback"]},"screenshotMethod":{"anyOf":[{"type":"string","enum":["server","browser"]},{"type":"null"}]},"createdAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"updatedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"resolvedAt":{"anyOf":[{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},{"type":"null"}]},"createdByUserId":{"anyOf":[{"type":"string","pattern":"^usr_[0-9A-HJKMNP-TV-Z]{26}$"},{"type":"null"}]},"designId":{"anyOf":[{"type":"string","pattern":"^dsg_[0-9A-HJKMNP-TV-Z]{26}$"},{"type":"null"}]},"device":{"anyOf":[{"type":"string","enum":["desktop","tablet","mobile"]},{"type":"null"}]}},"required":["id","projectId","number","kind","title","status","visibility","pageUrl","pageUrlNormalized","anchor","thumbnailAttachmentId","commentCount","reporter","tagIds","consoleErrorCount","screenshotStatus","screenshotMethod","createdAt","updatedAt","resolvedAt","createdByUserId"],"additionalProperties":false}},"nextCursor":{"type":["string","null"]}},"required":["items","nextCursor"],"additionalProperties":false}}}},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/RateLimited"}}}},"/feedback/{id}":{"get":{"summary":"Get one feedback item","security":[{"bearerAuth":["read"]}],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","pattern":"^fb_[0-9A-HJKMNP-TV-Z]{26}$"}}],"responses":{"200":{"description":"The feedback item","content":{"application/json":{"schema":{"type":"object","properties":{"id":{"type":"string","pattern":"^fb_[0-9A-HJKMNP-TV-Z]{26}$"},"projectId":{"type":"string","pattern":"^prj_[0-9A-HJKMNP-TV-Z]{26}$"},"number":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"kind":{"type":"string","enum":["screenshot","video","text"]},"title":{"type":"string"},"status":{"type":"string","enum":["open","resolved"]},"visibility":{"type":"string","enum":["everyone","members"]},"pageUrl":{"type":"string"},"pageUrlNormalized":{"type":"string"},"anchor":{"anyOf":[{"type":"object","properties":{"selector":{"type":"string","minLength":1,"maxLength":2048},"xpath":{"anyOf":[{"type":"string","minLength":1,"maxLength":2048},{"type":"null"}]},"textSnippet":{"type":["string","null"]},"tag":{"type":"string","minLength":1,"maxLength":64},"offsetRatio":{"type":"object","properties":{"x":{"type":"number","minimum":0,"maximum":1},"y":{"type":"number","minimum":0,"maximum":1}},"required":["x","y"],"additionalProperties":false},"pagePoint":{"type":"object","properties":{"x":{"type":"number"},"y":{"type":"number"}},"required":["x","y"],"additionalProperties":false},"viewport":{"type":"object","properties":{"width":{"type":"integer","minimum":0,"maximum":9007199254740991},"height":{"type":"integer","minimum":0,"maximum":9007199254740991}},"required":["width","height"],"additionalProperties":false},"scroll":{"type":"object","properties":{"x":{"type":"number"},"y":{"type":"number"}},"required":["x","y"],"additionalProperties":false}},"required":["selector","xpath","textSnippet","tag","offsetRatio","pagePoint","viewport","scroll"],"additionalProperties":false},{"type":"null"}]},"thumbnailAttachmentId":{"anyOf":[{"type":"string","pattern":"^att_[0-9A-HJKMNP-TV-Z]{26}$"},{"type":"null"}]},"commentCount":{"type":"integer","minimum":0,"maximum":9007199254740991},"reporter":{"anyOf":[{"type":"object","properties":{"id":{"type":"string","pattern":"^rep_[0-9A-HJKMNP-TV-Z]{26}$"},"name":{"type":["string","null"]},"email":{"type":["string","null"]}},"required":["id","name","email"],"additionalProperties":false},{"type":"null"}]},"tagIds":{"type":"array","items":{"type":"string","pattern":"^tag_[0-9A-HJKMNP-TV-Z]{26}$"}},"consoleErrorCount":{"type":"integer","minimum":0,"maximum":9007199254740991},"screenshotStatus":{"type":"string","enum":["none","pending","rendered","fallback"]},"screenshotMethod":{"anyOf":[{"type":"string","enum":["server","browser"]},{"type":"null"}]},"createdAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"updatedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"resolvedAt":{"anyOf":[{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},{"type":"null"}]},"createdByUserId":{"anyOf":[{"type":"string","pattern":"^usr_[0-9A-HJKMNP-TV-Z]{26}$"},{"type":"null"}]},"designId":{"anyOf":[{"type":"string","pattern":"^dsg_[0-9A-HJKMNP-TV-Z]{26}$"},{"type":"null"}]},"device":{"anyOf":[{"type":"string","enum":["desktop","tablet","mobile"]},{"type":"null"}]},"description":{"type":"string"},"pageTitle":{"type":"string"},"annotations":{"maxItems":200,"type":"array","items":{"oneOf":[{"type":"object","properties":{"type":{"type":"string","const":"arrow"},"color":{"type":"string","pattern":"^#[0-9A-Fa-f]{6}$"},"strokeWidth":{"type":"number","exclusiveMinimum":0,"maximum":1},"start":{"type":"object","properties":{"x":{"type":"number","minimum":0,"maximum":1},"y":{"type":"number","minimum":0,"maximum":1}},"required":["x","y"],"additionalProperties":false},"end":{"type":"object","properties":{"x":{"type":"number","minimum":0,"maximum":1},"y":{"type":"number","minimum":0,"maximum":1}},"required":["x","y"],"additionalProperties":false}},"required":["type","color","strokeWidth","start","end"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"rect"},"color":{"type":"string","pattern":"^#[0-9A-Fa-f]{6}$"},"strokeWidth":{"type":"number","exclusiveMinimum":0,"maximum":1},"x":{"type":"number","minimum":0,"maximum":1},"y":{"type":"number","minimum":0,"maximum":1},"w":{"type":"number","minimum":0,"maximum":1},"h":{"type":"number","minimum":0,"maximum":1}},"required":["type","color","strokeWidth","x","y","w","h"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"blackout"},"x":{"type":"number","minimum":0,"maximum":1},"y":{"type":"number","minimum":0,"maximum":1},"width":{"type":"number","minimum":0,"maximum":1},"height":{"type":"number","minimum":0,"maximum":1}},"required":["type","x","y","width","height"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"pen"},"color":{"type":"string","pattern":"^#[0-9A-Fa-f]{6}$"},"strokeWidth":{"type":"number","exclusiveMinimum":0,"maximum":1},"points":{"minItems":1,"maxItems":1000,"type":"array","items":{"type":"object","properties":{"x":{"type":"number","minimum":0,"maximum":1},"y":{"type":"number","minimum":0,"maximum":1}},"required":["x","y"],"additionalProperties":false}}},"required":["type","color","strokeWidth","points"],"additionalProperties":false}]}},"context":{"type":"object","properties":{"referrer":{"anyOf":[{"type":"string","maxLength":2048},{"type":"null"}]},"userAgent":{"type":"string","maxLength":1024},"browser":{"anyOf":[{"type":"object","properties":{"name":{"type":"string","minLength":1,"maxLength":64},"version":{"anyOf":[{"type":"string","minLength":1,"maxLength":64},{"type":"null"}]}},"required":["name","version"],"additionalProperties":false},{"type":"null"}]},"os":{"anyOf":[{"type":"object","properties":{"name":{"type":"string","minLength":1,"maxLength":64},"version":{"anyOf":[{"type":"string","minLength":1,"maxLength":64},{"type":"null"}]}},"required":["name","version"],"additionalProperties":false},{"type":"null"}]},"device":{"type":"string","enum":["desktop","tablet","mobile"]},"viewport":{"type":"object","properties":{"width":{"type":"integer","minimum":0,"maximum":9007199254740991},"height":{"type":"integer","minimum":0,"maximum":9007199254740991}},"required":["width","height"],"additionalProperties":false},"screen":{"type":"object","properties":{"width":{"type":"integer","minimum":0,"maximum":9007199254740991},"height":{"type":"integer","minimum":0,"maximum":9007199254740991}},"required":["width","height"],"additionalProperties":false},"devicePixelRatio":{"type":"number","exclusiveMinimum":0},"language":{"type":"string","maxLength":64},"timezone":{"type":"string","maxLength":64},"colorScheme":{"type":"string","enum":["light","dark"]},"capturedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"captureMethod":{"type":"string","enum":["dom","display"]},"custom":{"type":"object","propertyNames":{"type":"string","minLength":1,"maxLength":64},"additionalProperties":{"type":["string","number","boolean"]}}},"required":["referrer","userAgent","browser","os","device","viewport","screen","devicePixelRatio","language","timezone","colorScheme","capturedAt","custom"],"additionalProperties":false},"consoleWarnCount":{"type":"integer","minimum":0,"maximum":9007199254740991},"networkErrorCount":{"type":"integer","minimum":0,"maximum":9007199254740991},"attachments":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^att_[0-9A-HJKMNP-TV-Z]{26}$"},"projectId":{"type":"string","pattern":"^prj_[0-9A-HJKMNP-TV-Z]{26}$"},"feedbackId":{"anyOf":[{"type":"string","pattern":"^fb_[0-9A-HJKMNP-TV-Z]{26}$"},{"type":"null"}]},"kind":{"type":"string","enum":["screenshot","annotated_screenshot","video","console_log","network_log","design","file","dom_snapshot"]},"status":{"type":"string","enum":["pending","ready","failed"]},"contentType":{"type":"string"},"sizeBytes":{"type":"integer","minimum":0,"maximum":9007199254740991},"width":{"anyOf":[{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},{"type":"null"}]},"height":{"anyOf":[{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},{"type":"null"}]},"durationMs":{"anyOf":[{"type":"integer","minimum":0,"maximum":9007199254740991},{"type":"null"}]},"createdAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"completedAt":{"anyOf":[{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},{"type":"null"}]}},"required":["id","projectId","feedbackId","kind","status","contentType","sizeBytes","width","height","durationMs","createdAt","completedAt"],"additionalProperties":false}},"archivedAt":{"anyOf":[{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},{"type":"null"}]},"isWatching":{"description":"True when the token's owner watches this item","type":"boolean"}},"required":["id","projectId","number","kind","title","status","visibility","pageUrl","pageUrlNormalized","anchor","thumbnailAttachmentId","commentCount","reporter","tagIds","consoleErrorCount","screenshotStatus","screenshotMethod","createdAt","updatedAt","resolvedAt","createdByUserId","description","pageTitle","annotations","context","consoleWarnCount","networkErrorCount","attachments","archivedAt"],"additionalProperties":false}}}},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/RateLimited"}}},"patch":{"summary":"Triage a feedback item","security":[{"bearerAuth":["write"]}],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","pattern":"^fb_[0-9A-HJKMNP-TV-Z]{26}$"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"title":{"type":"string"},"description":{"type":"string"},"status":{"type":"string","enum":["open","resolved"]},"visibility":{"type":"string","enum":["everyone","members"]},"tagIds":{"maxItems":50,"type":"array","items":{"type":"string","pattern":"^tag_[0-9A-HJKMNP-TV-Z]{26}$"}}}}}}},"responses":{"200":{"description":"The updated feedback item","content":{"application/json":{"schema":{"type":"object","properties":{"id":{"type":"string","pattern":"^fb_[0-9A-HJKMNP-TV-Z]{26}$"},"projectId":{"type":"string","pattern":"^prj_[0-9A-HJKMNP-TV-Z]{26}$"},"number":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"kind":{"type":"string","enum":["screenshot","video","text"]},"title":{"type":"string"},"status":{"type":"string","enum":["open","resolved"]},"visibility":{"type":"string","enum":["everyone","members"]},"pageUrl":{"type":"string"},"pageUrlNormalized":{"type":"string"},"anchor":{"anyOf":[{"type":"object","properties":{"selector":{"type":"string","minLength":1,"maxLength":2048},"xpath":{"anyOf":[{"type":"string","minLength":1,"maxLength":2048},{"type":"null"}]},"textSnippet":{"type":["string","null"]},"tag":{"type":"string","minLength":1,"maxLength":64},"offsetRatio":{"type":"object","properties":{"x":{"type":"number","minimum":0,"maximum":1},"y":{"type":"number","minimum":0,"maximum":1}},"required":["x","y"],"additionalProperties":false},"pagePoint":{"type":"object","properties":{"x":{"type":"number"},"y":{"type":"number"}},"required":["x","y"],"additionalProperties":false},"viewport":{"type":"object","properties":{"width":{"type":"integer","minimum":0,"maximum":9007199254740991},"height":{"type":"integer","minimum":0,"maximum":9007199254740991}},"required":["width","height"],"additionalProperties":false},"scroll":{"type":"object","properties":{"x":{"type":"number"},"y":{"type":"number"}},"required":["x","y"],"additionalProperties":false}},"required":["selector","xpath","textSnippet","tag","offsetRatio","pagePoint","viewport","scroll"],"additionalProperties":false},{"type":"null"}]},"thumbnailAttachmentId":{"anyOf":[{"type":"string","pattern":"^att_[0-9A-HJKMNP-TV-Z]{26}$"},{"type":"null"}]},"commentCount":{"type":"integer","minimum":0,"maximum":9007199254740991},"reporter":{"anyOf":[{"type":"object","properties":{"id":{"type":"string","pattern":"^rep_[0-9A-HJKMNP-TV-Z]{26}$"},"name":{"type":["string","null"]},"email":{"type":["string","null"]}},"required":["id","name","email"],"additionalProperties":false},{"type":"null"}]},"tagIds":{"type":"array","items":{"type":"string","pattern":"^tag_[0-9A-HJKMNP-TV-Z]{26}$"}},"consoleErrorCount":{"type":"integer","minimum":0,"maximum":9007199254740991},"screenshotStatus":{"type":"string","enum":["none","pending","rendered","fallback"]},"screenshotMethod":{"anyOf":[{"type":"string","enum":["server","browser"]},{"type":"null"}]},"createdAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"updatedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"resolvedAt":{"anyOf":[{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},{"type":"null"}]},"createdByUserId":{"anyOf":[{"type":"string","pattern":"^usr_[0-9A-HJKMNP-TV-Z]{26}$"},{"type":"null"}]},"designId":{"anyOf":[{"type":"string","pattern":"^dsg_[0-9A-HJKMNP-TV-Z]{26}$"},{"type":"null"}]},"device":{"anyOf":[{"type":"string","enum":["desktop","tablet","mobile"]},{"type":"null"}]},"description":{"type":"string"},"pageTitle":{"type":"string"},"annotations":{"maxItems":200,"type":"array","items":{"oneOf":[{"type":"object","properties":{"type":{"type":"string","const":"arrow"},"color":{"type":"string","pattern":"^#[0-9A-Fa-f]{6}$"},"strokeWidth":{"type":"number","exclusiveMinimum":0,"maximum":1},"start":{"type":"object","properties":{"x":{"type":"number","minimum":0,"maximum":1},"y":{"type":"number","minimum":0,"maximum":1}},"required":["x","y"],"additionalProperties":false},"end":{"type":"object","properties":{"x":{"type":"number","minimum":0,"maximum":1},"y":{"type":"number","minimum":0,"maximum":1}},"required":["x","y"],"additionalProperties":false}},"required":["type","color","strokeWidth","start","end"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"rect"},"color":{"type":"string","pattern":"^#[0-9A-Fa-f]{6}$"},"strokeWidth":{"type":"number","exclusiveMinimum":0,"maximum":1},"x":{"type":"number","minimum":0,"maximum":1},"y":{"type":"number","minimum":0,"maximum":1},"w":{"type":"number","minimum":0,"maximum":1},"h":{"type":"number","minimum":0,"maximum":1}},"required":["type","color","strokeWidth","x","y","w","h"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"blackout"},"x":{"type":"number","minimum":0,"maximum":1},"y":{"type":"number","minimum":0,"maximum":1},"width":{"type":"number","minimum":0,"maximum":1},"height":{"type":"number","minimum":0,"maximum":1}},"required":["type","x","y","width","height"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"pen"},"color":{"type":"string","pattern":"^#[0-9A-Fa-f]{6}$"},"strokeWidth":{"type":"number","exclusiveMinimum":0,"maximum":1},"points":{"minItems":1,"maxItems":1000,"type":"array","items":{"type":"object","properties":{"x":{"type":"number","minimum":0,"maximum":1},"y":{"type":"number","minimum":0,"maximum":1}},"required":["x","y"],"additionalProperties":false}}},"required":["type","color","strokeWidth","points"],"additionalProperties":false}]}},"context":{"type":"object","properties":{"referrer":{"anyOf":[{"type":"string","maxLength":2048},{"type":"null"}]},"userAgent":{"type":"string","maxLength":1024},"browser":{"anyOf":[{"type":"object","properties":{"name":{"type":"string","minLength":1,"maxLength":64},"version":{"anyOf":[{"type":"string","minLength":1,"maxLength":64},{"type":"null"}]}},"required":["name","version"],"additionalProperties":false},{"type":"null"}]},"os":{"anyOf":[{"type":"object","properties":{"name":{"type":"string","minLength":1,"maxLength":64},"version":{"anyOf":[{"type":"string","minLength":1,"maxLength":64},{"type":"null"}]}},"required":["name","version"],"additionalProperties":false},{"type":"null"}]},"device":{"type":"string","enum":["desktop","tablet","mobile"]},"viewport":{"type":"object","properties":{"width":{"type":"integer","minimum":0,"maximum":9007199254740991},"height":{"type":"integer","minimum":0,"maximum":9007199254740991}},"required":["width","height"],"additionalProperties":false},"screen":{"type":"object","properties":{"width":{"type":"integer","minimum":0,"maximum":9007199254740991},"height":{"type":"integer","minimum":0,"maximum":9007199254740991}},"required":["width","height"],"additionalProperties":false},"devicePixelRatio":{"type":"number","exclusiveMinimum":0},"language":{"type":"string","maxLength":64},"timezone":{"type":"string","maxLength":64},"colorScheme":{"type":"string","enum":["light","dark"]},"capturedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"captureMethod":{"type":"string","enum":["dom","display"]},"custom":{"type":"object","propertyNames":{"type":"string","minLength":1,"maxLength":64},"additionalProperties":{"type":["string","number","boolean"]}}},"required":["referrer","userAgent","browser","os","device","viewport","screen","devicePixelRatio","language","timezone","colorScheme","capturedAt","custom"],"additionalProperties":false},"consoleWarnCount":{"type":"integer","minimum":0,"maximum":9007199254740991},"networkErrorCount":{"type":"integer","minimum":0,"maximum":9007199254740991},"attachments":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^att_[0-9A-HJKMNP-TV-Z]{26}$"},"projectId":{"type":"string","pattern":"^prj_[0-9A-HJKMNP-TV-Z]{26}$"},"feedbackId":{"anyOf":[{"type":"string","pattern":"^fb_[0-9A-HJKMNP-TV-Z]{26}$"},{"type":"null"}]},"kind":{"type":"string","enum":["screenshot","annotated_screenshot","video","console_log","network_log","design","file","dom_snapshot"]},"status":{"type":"string","enum":["pending","ready","failed"]},"contentType":{"type":"string"},"sizeBytes":{"type":"integer","minimum":0,"maximum":9007199254740991},"width":{"anyOf":[{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},{"type":"null"}]},"height":{"anyOf":[{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},{"type":"null"}]},"durationMs":{"anyOf":[{"type":"integer","minimum":0,"maximum":9007199254740991},{"type":"null"}]},"createdAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"completedAt":{"anyOf":[{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},{"type":"null"}]}},"required":["id","projectId","feedbackId","kind","status","contentType","sizeBytes","width","height","durationMs","createdAt","completedAt"],"additionalProperties":false}},"archivedAt":{"anyOf":[{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},{"type":"null"}]},"isWatching":{"description":"True when the token's owner watches this item","type":"boolean"}},"required":["id","projectId","number","kind","title","status","visibility","pageUrl","pageUrlNormalized","anchor","thumbnailAttachmentId","commentCount","reporter","tagIds","consoleErrorCount","screenshotStatus","screenshotMethod","createdAt","updatedAt","resolvedAt","createdByUserId","description","pageTitle","annotations","context","consoleWarnCount","networkErrorCount","attachments","archivedAt"],"additionalProperties":false}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/RateLimited"}}}},"/feedback/{id}/comments":{"get":{"summary":"List a feedback item's comments","security":[{"bearerAuth":["read"]}],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","pattern":"^fb_[0-9A-HJKMNP-TV-Z]{26}$"}}],"responses":{"200":{"description":"The whole thread, oldest first","content":{"application/json":{"schema":{"type":"object","properties":{"items":{"type":"array","items":{"oneOf":[{"type":"object","properties":{"id":{"type":"string","pattern":"^cmt_[0-9A-HJKMNP-TV-Z]{26}$"},"feedbackId":{"type":"string","pattern":"^fb_[0-9A-HJKMNP-TV-Z]{26}$"},"authorName":{"type":["string","null"]},"body":{"type":"string"},"mentions":{"type":"array","items":{"type":"string","pattern":"^usr_[0-9A-HJKMNP-TV-Z]{26}$"}},"visibility":{"type":"string","enum":["everyone","members"]},"createdAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"updatedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"authorType":{"type":"string","const":"user"},"authorId":{"type":"string","pattern":"^usr_[0-9A-HJKMNP-TV-Z]{26}$"}},"required":["id","feedbackId","authorName","body","mentions","visibility","createdAt","updatedAt","authorType","authorId"],"additionalProperties":false},{"type":"object","properties":{"id":{"type":"string","pattern":"^cmt_[0-9A-HJKMNP-TV-Z]{26}$"},"feedbackId":{"type":"string","pattern":"^fb_[0-9A-HJKMNP-TV-Z]{26}$"},"authorName":{"type":["string","null"]},"body":{"type":"string"},"mentions":{"type":"array","items":{"type":"string","pattern":"^usr_[0-9A-HJKMNP-TV-Z]{26}$"}},"visibility":{"type":"string","enum":["everyone","members"]},"createdAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"updatedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"authorType":{"type":"string","const":"reporter"},"authorId":{"type":"string","pattern":"^rep_[0-9A-HJKMNP-TV-Z]{26}$"}},"required":["id","feedbackId","authorName","body","mentions","visibility","createdAt","updatedAt","authorType","authorId"],"additionalProperties":false},{"type":"object","properties":{"id":{"type":"string","pattern":"^cmt_[0-9A-HJKMNP-TV-Z]{26}$"},"feedbackId":{"type":"string","pattern":"^fb_[0-9A-HJKMNP-TV-Z]{26}$"},"authorName":{"type":["string","null"]},"body":{"type":"string"},"mentions":{"type":"array","items":{"type":"string","pattern":"^usr_[0-9A-HJKMNP-TV-Z]{26}$"}},"visibility":{"type":"string","enum":["everyone","members"]},"createdAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"updatedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"authorType":{"type":"string","const":"integration"},"authorId":{"type":"string","pattern":"^int_[0-9A-HJKMNP-TV-Z]{26}$"}},"required":["id","feedbackId","authorName","body","mentions","visibility","createdAt","updatedAt","authorType","authorId"],"additionalProperties":false},{"type":"object","properties":{"id":{"type":"string","pattern":"^cmt_[0-9A-HJKMNP-TV-Z]{26}$"},"feedbackId":{"type":"string","pattern":"^fb_[0-9A-HJKMNP-TV-Z]{26}$"},"authorName":{"type":["string","null"]},"body":{"type":"string"},"mentions":{"type":"array","items":{"type":"string","pattern":"^usr_[0-9A-HJKMNP-TV-Z]{26}$"}},"visibility":{"type":"string","enum":["everyone","members"]},"createdAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"updatedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"authorType":{"type":"string","const":"system"},"authorId":{"type":"null"}},"required":["id","feedbackId","authorName","body","mentions","visibility","createdAt","updatedAt","authorType","authorId"],"additionalProperties":false}]}},"nextCursor":{"type":["string","null"]}},"required":["items","nextCursor"],"additionalProperties":false}}}},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/RateLimited"}}},"post":{"summary":"Comment on a feedback item","security":[{"bearerAuth":["write"]}],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","pattern":"^fb_[0-9A-HJKMNP-TV-Z]{26}$"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"body":{"type":"string"},"visibility":{"type":"string","enum":["everyone","members"]}},"required":["body"]}}}},"responses":{"201":{"description":"The new comment","content":{"application/json":{"schema":{"oneOf":[{"type":"object","properties":{"id":{"type":"string","pattern":"^cmt_[0-9A-HJKMNP-TV-Z]{26}$"},"feedbackId":{"type":"string","pattern":"^fb_[0-9A-HJKMNP-TV-Z]{26}$"},"authorName":{"type":["string","null"]},"body":{"type":"string"},"mentions":{"type":"array","items":{"type":"string","pattern":"^usr_[0-9A-HJKMNP-TV-Z]{26}$"}},"visibility":{"type":"string","enum":["everyone","members"]},"createdAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"updatedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"authorType":{"type":"string","const":"user"},"authorId":{"type":"string","pattern":"^usr_[0-9A-HJKMNP-TV-Z]{26}$"}},"required":["id","feedbackId","authorName","body","mentions","visibility","createdAt","updatedAt","authorType","authorId"],"additionalProperties":false},{"type":"object","properties":{"id":{"type":"string","pattern":"^cmt_[0-9A-HJKMNP-TV-Z]{26}$"},"feedbackId":{"type":"string","pattern":"^fb_[0-9A-HJKMNP-TV-Z]{26}$"},"authorName":{"type":["string","null"]},"body":{"type":"string"},"mentions":{"type":"array","items":{"type":"string","pattern":"^usr_[0-9A-HJKMNP-TV-Z]{26}$"}},"visibility":{"type":"string","enum":["everyone","members"]},"createdAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"updatedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"authorType":{"type":"string","const":"reporter"},"authorId":{"type":"string","pattern":"^rep_[0-9A-HJKMNP-TV-Z]{26}$"}},"required":["id","feedbackId","authorName","body","mentions","visibility","createdAt","updatedAt","authorType","authorId"],"additionalProperties":false},{"type":"object","properties":{"id":{"type":"string","pattern":"^cmt_[0-9A-HJKMNP-TV-Z]{26}$"},"feedbackId":{"type":"string","pattern":"^fb_[0-9A-HJKMNP-TV-Z]{26}$"},"authorName":{"type":["string","null"]},"body":{"type":"string"},"mentions":{"type":"array","items":{"type":"string","pattern":"^usr_[0-9A-HJKMNP-TV-Z]{26}$"}},"visibility":{"type":"string","enum":["everyone","members"]},"createdAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"updatedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"authorType":{"type":"string","const":"integration"},"authorId":{"type":"string","pattern":"^int_[0-9A-HJKMNP-TV-Z]{26}$"}},"required":["id","feedbackId","authorName","body","mentions","visibility","createdAt","updatedAt","authorType","authorId"],"additionalProperties":false},{"type":"object","properties":{"id":{"type":"string","pattern":"^cmt_[0-9A-HJKMNP-TV-Z]{26}$"},"feedbackId":{"type":"string","pattern":"^fb_[0-9A-HJKMNP-TV-Z]{26}$"},"authorName":{"type":["string","null"]},"body":{"type":"string"},"mentions":{"type":"array","items":{"type":"string","pattern":"^usr_[0-9A-HJKMNP-TV-Z]{26}$"}},"visibility":{"type":"string","enum":["everyone","members"]},"createdAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"updatedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"authorType":{"type":"string","const":"system"},"authorId":{"type":"null"}},"required":["id","feedbackId","authorName","body","mentions","visibility","createdAt","updatedAt","authorType","authorId"],"additionalProperties":false}]}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/RateLimited"}}}},"/attachments/{id}":{"get":{"summary":"Download an attachment","security":[{"bearerAuth":["read"]}],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","pattern":"^att_[0-9A-HJKMNP-TV-Z]{26}$"}}],"responses":{"302":{"description":"Redirects to a signed file link valid for 300 seconds","headers":{"Location":{"schema":{"type":"string","format":"uri"}}}},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/RateLimited"}}}}},"components":{"securitySchemes":{"bearerAuth":{"type":"http","scheme":"bearer","description":"A personal access token (`fbk_…`). Each operation names the scope it needs; `write` implies `read`."}},"schemas":{"ApiError":{"type":"object","properties":{"error":{"type":"object","properties":{"code":{"type":"string","enum":["bad_request","validation_failed","unauthorized","forbidden","origin_not_allowed","not_found","conflict","payload_too_large","unsupported_media_type","rate_limited","internal"]},"message":{"type":"string"},"details":{}},"required":["code","message"],"additionalProperties":false},"requestId":{"type":"string"}},"required":["error","requestId"],"additionalProperties":false}},"responses":{"BadRequest":{"description":"The request body is not JSON","headers":{},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"Unauthorized":{"description":"Missing, malformed, revoked or expired token","headers":{"WWW-Authenticate":{"schema":{"type":"string","const":"Bearer"}}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"Forbidden":{"description":"The token lacks the scope this operation needs","headers":{},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"NotFound":{"description":"Unknown, malformed, or not visible to the token owner","headers":{},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"ValidationFailed":{"description":"The request does not match its schema","headers":{},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"RateLimited":{"description":"More than 300 requests in 60 seconds with this token","headers":{"Retry-After":{"schema":{"type":"integer","const":60}}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}}}}}