{"openapi":"3.1.0","info":{"title":"Codykata API","version":"v1","description":"Read your account, submit code and submit problems with a personal API token. Within v1 responses only gain optional fields, so ignore unknown fields."},"servers":[{"url":"https://api.codykata.com/v1"}],"security":[{"token":[]}],"tags":[{"name":"Account"},{"name":"Problems"},{"name":"Submissions"},{"name":"Authoring"}],"paths":{"/me":{"get":{"operationId":"getMe","tags":["Account"],"summary":"Your account","description":"Tier, SP and next tier, solve, submission and contribution counts, streaks, points rank and the token used. The rank is null while the profile is private.\n\nScope: any token","x-codykata-scopes":[],"security":[{"token":[]}],"parameters":[],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/v1MeResponse"}}}},"400":{"$ref":"#/components/responses/Error400"},"401":{"$ref":"#/components/responses/Error401"},"403":{"$ref":"#/components/responses/Error403"},"404":{"$ref":"#/components/responses/Error404"},"409":{"$ref":"#/components/responses/Error409"},"429":{"$ref":"#/components/responses/Error429"}}}},"/problems":{"get":{"operationId":"listProblems","tags":["Problems"],"summary":"List public problems","description":"Scope: any token","x-codykata-scopes":[],"security":[{"token":[]}],"parameters":[{"name":"page","in":"query","required":false,"schema":{"type":"string","pattern":"^[1-9][0-9]*$"}},{"name":"limit","in":"query","required":false,"schema":{"type":"string","pattern":"^[1-9][0-9]*$"}},{"name":"q","in":"query","required":false,"schema":{"type":"string","minLength":1,"maxLength":100}},{"name":"difficulty","in":"query","required":false,"schema":{"type":"string","pattern":"^[1-5]$"}},{"name":"topic_id","in":"query","required":false,"schema":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/v1ProblemsResponse"}}}},"400":{"$ref":"#/components/responses/Error400"},"401":{"$ref":"#/components/responses/Error401"},"403":{"$ref":"#/components/responses/Error403"},"404":{"$ref":"#/components/responses/Error404"},"409":{"$ref":"#/components/responses/Error409"},"429":{"$ref":"#/components/responses/Error429"}}},"post":{"operationId":"createProblem","tags":["Authoring"],"summary":"Submit a problem","description":"Creates a review request; the problem goes public once approved. Resending the same request_id with the same content returns the first result. Bodies are up to 32 MiB, and token-sent submissions and edits are limited to 10 per account per UTC day.\n\nScope: studio","x-codykata-scopes":["studio"],"security":[{"token":[]}],"parameters":[],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/v1ProblemCreateRequest"}}}},"responses":{"201":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/v1ProblemWriteResponse"}}}},"400":{"$ref":"#/components/responses/Error400"},"401":{"$ref":"#/components/responses/Error401"},"403":{"$ref":"#/components/responses/Error403"},"404":{"$ref":"#/components/responses/Error404"},"409":{"$ref":"#/components/responses/Error409"},"429":{"$ref":"#/components/responses/Error429"}}}},"/problems/{id}":{"get":{"operationId":"getProblem","tags":["Problems"],"summary":"Get a problem","description":"The current version of a public problem. Send its problem_version_id when you submit.\n\nScope: any token","x-codykata-scopes":[],"security":[{"token":[]}],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/v1ProblemResponse"}}}},"400":{"$ref":"#/components/responses/Error400"},"401":{"$ref":"#/components/responses/Error401"},"403":{"$ref":"#/components/responses/Error403"},"404":{"$ref":"#/components/responses/Error404"},"409":{"$ref":"#/components/responses/Error409"},"429":{"$ref":"#/components/responses/Error429"}}}},"/sources":{"get":{"operationId":"listSources","tags":["Problems"],"summary":"List problem sources","description":"Scope: any token","x-codykata-scopes":[],"security":[{"token":[]}],"parameters":[{"name":"page","in":"query","required":false,"schema":{"type":"string","pattern":"^[1-9][0-9]*$"}},{"name":"limit","in":"query","required":false,"schema":{"type":"string","pattern":"^[1-9][0-9]*$"}},{"name":"q","in":"query","required":false,"schema":{"type":"string","minLength":1,"maxLength":100,"description":"Case-insensitive substring search; supports Hangul initials mixed with full text, ignoring whitespace for initial queries."}},{"name":"ids","in":"query","required":false,"schema":{"type":"string"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/v1SourcesResponse"}}}},"400":{"$ref":"#/components/responses/Error400"},"401":{"$ref":"#/components/responses/Error401"},"403":{"$ref":"#/components/responses/Error403"},"404":{"$ref":"#/components/responses/Error404"},"409":{"$ref":"#/components/responses/Error409"},"429":{"$ref":"#/components/responses/Error429"}}}},"/licenses":{"get":{"operationId":"listLicenses","tags":["Problems"],"summary":"List licenses","description":"Scope: any token","x-codykata-scopes":[],"security":[{"token":[]}],"parameters":[],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/v1LicensesResponse"}}}},"400":{"$ref":"#/components/responses/Error400"},"401":{"$ref":"#/components/responses/Error401"},"403":{"$ref":"#/components/responses/Error403"},"404":{"$ref":"#/components/responses/Error404"},"409":{"$ref":"#/components/responses/Error409"},"429":{"$ref":"#/components/responses/Error429"}}}},"/submissions":{"get":{"operationId":"listSubmissions","tags":["Submissions"],"summary":"List your submissions","description":"Scope: read","x-codykata-scopes":["read"],"security":[{"token":[]}],"parameters":[{"name":"page","in":"query","required":false,"schema":{"type":"string","pattern":"^[1-9][0-9]*$"}},{"name":"limit","in":"query","required":false,"schema":{"type":"string","pattern":"^[1-9][0-9]*$"}},{"name":"problem_id","in":"query","required":false,"schema":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/v1SubmissionsResponse"}}}},"400":{"$ref":"#/components/responses/Error400"},"401":{"$ref":"#/components/responses/Error401"},"403":{"$ref":"#/components/responses/Error403"},"404":{"$ref":"#/components/responses/Error404"},"409":{"$ref":"#/components/responses/Error409"},"429":{"$ref":"#/components/responses/Error429"}}},"post":{"operationId":"createSubmission","tags":["Submissions"],"summary":"Submit code","description":"Judging is asynchronous; poll the submission until its status is FINISHED or SYSTEM_FAILED. There is no idempotency key, so resending after a lost response may duplicate it. Ten unfinished submissions give 429 CAPACITY.\n\nScope: submit","x-codykata-scopes":["submit"],"security":[{"token":[]}],"parameters":[],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/v1SubmissionCreateRequest"}}}},"responses":{"201":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/v1SubmissionCreateResponse"}}}},"400":{"$ref":"#/components/responses/Error400"},"401":{"$ref":"#/components/responses/Error401"},"403":{"$ref":"#/components/responses/Error403"},"404":{"$ref":"#/components/responses/Error404"},"409":{"$ref":"#/components/responses/Error409"},"429":{"$ref":"#/components/responses/Error429"}}}},"/submissions/{id}":{"get":{"operationId":"getSubmission","tags":["Submissions"],"summary":"Get a submission","description":"Scope: read","x-codykata-scopes":["read"],"security":[{"token":[]}],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/v1SubmissionResponse"}}}},"400":{"$ref":"#/components/responses/Error400"},"401":{"$ref":"#/components/responses/Error401"},"403":{"$ref":"#/components/responses/Error403"},"404":{"$ref":"#/components/responses/Error404"},"409":{"$ref":"#/components/responses/Error409"},"429":{"$ref":"#/components/responses/Error429"}}}},"/submissions/{id}/code":{"get":{"operationId":"getSubmissionCode","tags":["Submissions"],"summary":"Get submitted code","description":"Scope: read","x-codykata-scopes":["read"],"security":[{"token":[]}],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/v1SubmissionCodeResponse"}}}},"400":{"$ref":"#/components/responses/Error400"},"401":{"$ref":"#/components/responses/Error401"},"403":{"$ref":"#/components/responses/Error403"},"404":{"$ref":"#/components/responses/Error404"},"409":{"$ref":"#/components/responses/Error409"},"429":{"$ref":"#/components/responses/Error429"}}}},"/studio/problems":{"get":{"operationId":"listAuthoredProblems","tags":["Authoring"],"summary":"List problems you authored","description":"Scope: read or studio","x-codykata-scopes":["read","studio"],"security":[{"token":[]}],"parameters":[{"name":"page","in":"query","required":false,"schema":{"type":"string","pattern":"^[1-9][0-9]*$"}},{"name":"limit","in":"query","required":false,"schema":{"type":"string","pattern":"^[1-9][0-9]*$"}},{"name":"q","in":"query","required":false,"schema":{"type":"string","minLength":1,"maxLength":100}},{"name":"review","in":"query","required":false,"schema":{"type":"string","enum":["pending","rejected"]}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/v1StudioProblemsResponse"}}}},"400":{"$ref":"#/components/responses/Error400"},"401":{"$ref":"#/components/responses/Error401"},"403":{"$ref":"#/components/responses/Error403"},"404":{"$ref":"#/components/responses/Error404"},"409":{"$ref":"#/components/responses/Error409"},"429":{"$ref":"#/components/responses/Error429"}}}},"/studio/problems/{id}":{"get":{"operationId":"getAuthoredProblem","tags":["Authoring"],"summary":"Get the last saved version of your problem","description":"Scope: read or studio","x-codykata-scopes":["read","studio"],"security":[{"token":[]}],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/v1StudioProblemResponse"}}}},"400":{"$ref":"#/components/responses/Error400"},"401":{"$ref":"#/components/responses/Error401"},"403":{"$ref":"#/components/responses/Error403"},"404":{"$ref":"#/components/responses/Error404"},"409":{"$ref":"#/components/responses/Error409"},"429":{"$ref":"#/components/responses/Error429"}}},"put":{"operationId":"updateAuthoredProblem","tags":["Authoring"],"summary":"Edit your problem","description":"Send the last saved version as expected_version_id; 409 if it changed in between.\n\nScope: studio","x-codykata-scopes":["studio"],"security":[{"token":[]}],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/v1ProblemUpdateRequest"}}}},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/v1ProblemWriteResponse"}}}},"400":{"$ref":"#/components/responses/Error400"},"401":{"$ref":"#/components/responses/Error401"},"403":{"$ref":"#/components/responses/Error403"},"404":{"$ref":"#/components/responses/Error404"},"409":{"$ref":"#/components/responses/Error409"},"429":{"$ref":"#/components/responses/Error429"}}}}},"components":{"securitySchemes":{"token":{"type":"http","scheme":"bearer","description":"A `cdk_` token created in Settings → API tokens"}},"responses":{"Error400":{"description":"The request shape or a value is not accepted","content":{"application/json":{"schema":{"$ref":"#/components/schemas/v1Error"}}}},"Error401":{"description":"Missing, wrong, expired or revoked token, or a suspended account","content":{"application/json":{"schema":{"$ref":"#/components/schemas/v1Error"}}}},"Error403":{"description":"The token lacks the scope (INSUFFICIENT_SCOPE) or the target is not visible (FORBIDDEN)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/v1Error"}}}},"Error404":{"description":"Not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/v1Error"}}}},"Error409":{"description":"Conflict","content":{"application/json":{"schema":{"$ref":"#/components/schemas/v1Error"}}}},"Error429":{"description":"Rate limit reached, or ten unfinished submissions (CAPACITY)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/v1Error"}}}}},"schemas":{"v1Error":{"type":"object","properties":{"error":{"type":"string","description":"A business code to branch on; check the HTTP status first."},"message":{"type":"string"}},"required":["error","message"]},"v1MeResponse":{"type":"object","properties":{"user_id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"name":{"type":"string"},"profile_public":{"type":"boolean"},"tier":{"type":"string","enum":["Unranked","Bronze","Silver","Gold","Platinum","Diamond"],"description":"Highest tier reached; rescoring does not lower it."},"current_sp":{"type":"integer","minimum":0,"maximum":9007199254740991},"next_tier":{"anyOf":[{"type":"object","properties":{"tier":{"type":"string","enum":["Bronze","Silver","Gold","Platinum","Diamond"]},"required_sp":{"type":"integer","minimum":0,"maximum":9007199254740991}},"required":["tier","required_sp"]},{"type":"null"}],"description":"Null at the top tier."},"solved_count":{"type":"integer","minimum":0,"maximum":9007199254740991},"attempted_count":{"type":"integer","minimum":0,"maximum":9007199254740991},"submission_count":{"type":"integer","minimum":0,"maximum":9007199254740991},"contribution_count":{"type":"integer","minimum":0,"maximum":9007199254740991},"current_streak":{"type":"integer","minimum":0,"maximum":9007199254740991,"description":"Consecutive submission days in Asia/Seoul, ending today or yesterday."},"longest_streak":{"type":"integer","minimum":0,"maximum":9007199254740991},"rank":{"type":"object","properties":{"points":{"anyOf":[{"type":"integer","minimum":1,"maximum":9007199254740991},{"type":"null"}],"description":"Null while the profile is private."}},"required":["points"]},"token":{"type":"object","properties":{"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"name":{"type":"string"},"scopes":{"type":"array","items":{"type":"string","enum":["read","submit","studio"]}},"expires_at":{"anyOf":[{"type":"integer","minimum":0,"maximum":9007199254740991},{"type":"null"}]}},"required":["id","name","scopes","expires_at"]}},"required":["user_id","name","profile_public","tier","current_sp","next_tier","solved_count","attempted_count","submission_count","contribution_count","current_streak","longest_streak","rank","token"]},"v1ProblemsResponse":{"type":"object","properties":{"items":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"title":{"type":"string"}},"required":["id","title"]}},"page":{"type":"integer","minimum":1,"maximum":9007199254740991},"limit":{"type":"integer","minimum":1,"maximum":100},"has_more":{"type":"boolean"}},"required":["items","page","limit","has_more"]},"v1ProblemResponse":{"type":"object","properties":{"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"problem_version_id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$","description":"Submit against this version."},"title":{"type":"string"},"content":{"minItems":1,"maxItems":100,"type":"array","items":{"oneOf":[{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-z][a-z0-9-]{0,63}$"},"type":{"type":"string","const":"text"},"text":{"type":"string","maxLength":100000}},"required":["id","type","text"],"additionalProperties":false},{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-z][a-z0-9-]{0,63}$"},"type":{"type":"string","const":"visual"},"visual":{"type":"object","properties":{"kind":{"type":"string","const":"image"},"path":{"type":"string","pattern":"^\\/problem-assets\\/[a-z0-9][a-z0-9/_-]*\\.(?:png|webp)$"},"sha256":{"type":"string","pattern":"^[a-f0-9]{64}$"},"width":{"type":"integer","minimum":1,"maximum":4096},"height":{"type":"integer","minimum":1,"maximum":4096}},"required":["kind","path","sha256","width","height"],"additionalProperties":false},"alt":{"type":"string","minLength":1,"maxLength":500},"caption":{"type":"string","maxLength":1000}},"required":["id","type","visual","alt","caption"],"additionalProperties":false}]}},"samples":{"maxItems":10,"type":"array","items":{"type":"object","properties":{"input":{"type":"string","maxLength":10000},"output":{"type":"string","maxLength":10000}},"required":["input","output"],"additionalProperties":false}},"limits":{"type":"object","properties":{"cpu_time_ms":{"type":"integer","minimum":1,"maximum":10000},"wall_time_ms":{"type":"integer","minimum":1,"maximum":30000},"memory_bytes":{"type":"integer","minimum":1048576,"maximum":536870912},"output_bytes":{"type":"integer","minimum":1,"maximum":8388608}},"required":["cpu_time_ms","wall_time_ms","memory_bytes","output_bytes"],"additionalProperties":false},"content_language":{"anyOf":[{"type":"string","enum":["ko","en"]},{"type":"null"}]}},"required":["id","problem_version_id","title","content","samples","limits","content_language"]},"v1SourcesResponse":{"type":"object","properties":{"items":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^(original|legacy:[0-9a-f]{32}|[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12})$"},"kind":{"type":"string","enum":["original","external"]},"name":{"type":"string"},"url":{"type":["string","null"]},"problem_count":{"type":"integer","minimum":0,"maximum":9007199254740991}},"required":["id","kind","name","url","problem_count"]}},"page":{"type":"integer","minimum":1,"maximum":9007199254740991},"limit":{"type":"integer","minimum":1,"maximum":100},"total":{"type":"integer","minimum":0,"maximum":9007199254740991},"has_more":{"type":"boolean"}},"required":["items","page","limit","total","has_more"]},"v1LicensesResponse":{"type":"object","properties":{"items":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-z0-9][a-z0-9.-]{0,63}$"},"name":{"type":"string"},"url":{"type":["string","null"]},"is_default":{"type":"boolean"}},"required":["id","name","url","is_default"]}}},"required":["items"]},"v1SubmissionsResponse":{"type":"object","properties":{"items":{"type":"array","items":{"type":"object","properties":{"submission_id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"problem_id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"problem_title":{"type":"string"},"submitted_version_id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"problem_version_id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"language":{"type":"string","enum":["cpp","python","c","javascript","typescript"]},"attempt_id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"status":{"type":"string","enum":["QUEUED","RUNNING","FINISHED","SYSTEM_FAILED"]},"verdict":{"anyOf":[{"type":"string","enum":["AC","WA","CE","RE","TLE","MLE","OLE"]},{"type":"null"}]},"created_at":{"anyOf":[{"type":"integer","minimum":0,"maximum":9007199254740991},{"type":"null"}]},"cpu_time_ms":{"anyOf":[{"type":"number","minimum":0},{"type":"null"}]},"memory_bytes":{"anyOf":[{"type":"integer","minimum":0,"maximum":9007199254740991},{"type":"null"}]}},"required":["submission_id","problem_id","problem_title","submitted_version_id","problem_version_id","language","attempt_id","status","verdict","created_at","cpu_time_ms","memory_bytes"]}},"page":{"type":"integer","minimum":1,"maximum":9007199254740991},"limit":{"type":"integer","minimum":1,"maximum":100},"has_more":{"type":"boolean"},"total":{"type":"integer","minimum":0,"maximum":9007199254740991}},"required":["items","page","limit","has_more","total"]},"v1SubmissionCreateResponse":{"type":"object","properties":{"submission_id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"attempt_id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"status":{"type":"string","enum":["QUEUED","RUNNING","FINISHED","SYSTEM_FAILED"]}},"required":["submission_id","attempt_id","status"]},"v1SubmissionCreateRequest":{"type":"object","properties":{"problem_id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"problem_version_id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"language":{"type":"string","enum":["cpp","python","c","javascript","typescript"]},"code":{"type":"string","minLength":1,"maxLength":65536}},"required":["problem_id","problem_version_id","language","code"],"additionalProperties":false},"v1SubmissionResponse":{"type":"object","properties":{"submission_id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"created_at":{"anyOf":[{"type":"integer","minimum":0,"maximum":9007199254740991},{"type":"null"}]},"submitted_version_id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"problem_version_id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$","description":"The version the current attempt judged."},"limits":{"type":"object","properties":{"cpu_time_ms":{"type":"integer","minimum":1,"maximum":10000},"wall_time_ms":{"type":"integer","minimum":1,"maximum":30000},"memory_bytes":{"type":"integer","minimum":1048576,"maximum":536870912},"output_bytes":{"type":"integer","minimum":1,"maximum":8388608}},"required":["cpu_time_ms","wall_time_ms","memory_bytes","output_bytes"],"additionalProperties":false},"attempt_id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"status":{"type":"string","enum":["QUEUED","RUNNING","FINISHED","SYSTEM_FAILED"]},"result":{"anyOf":[{"type":"object","properties":{"verdict":{"type":"string","enum":["AC","WA","CE","RE","TLE","MLE","OLE"]},"compile_diagnostics":{"type":"string"},"tests":{"type":"array","items":{"type":"object","properties":{"test_id":{"type":"string"},"verdict":{"type":"string","enum":["AC","WA","RE","TLE","MLE","OLE"]},"cpu_time_ms":{"type":"number","minimum":0},"wall_time_ms":{"type":"number","minimum":0},"memory_bytes":{"type":"integer","minimum":0,"maximum":9007199254740991}},"required":["test_id","verdict","cpu_time_ms","wall_time_ms","memory_bytes"]}}},"required":["verdict","compile_diagnostics","tests"]},{"type":"null"}],"description":"Null until judged and after a system failure."}},"required":["submission_id","created_at","submitted_version_id","problem_version_id","limits","attempt_id","status","result"]},"v1SubmissionCodeResponse":{"type":"object","properties":{"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"language":{"type":"string","enum":["cpp","python","c","javascript","typescript"]},"code":{"type":"string"}},"required":["id","language","code"]},"v1StudioProblemsResponse":{"type":"object","properties":{"items":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"title":{"type":"string"},"published":{"type":"boolean"},"disabled":{"type":"boolean"},"review":{"anyOf":[{"type":"object","properties":{"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"kind":{"type":"string","enum":["create","update"]},"status":{"type":"string","enum":["pending","approved","rejected","superseded"]},"reason":{"type":["string","null"]},"requested_at":{"type":"integer","minimum":0,"maximum":9007199254740991},"decided_at":{"anyOf":[{"type":"integer","minimum":0,"maximum":9007199254740991},{"type":"null"}]}},"required":["id","kind","status","reason","requested_at","decided_at"]},{"type":"null"}]},"open_report_count":{"type":"integer","minimum":0,"maximum":9007199254740991},"difficulty":{"anyOf":[{"type":"integer","minimum":1,"maximum":5},{"type":"null"}]}},"required":["id","title","published","disabled","review","open_report_count","difficulty"]}},"page":{"type":"integer","minimum":1,"maximum":9007199254740991},"limit":{"type":"integer","minimum":1,"maximum":100},"total":{"type":"integer","minimum":0,"maximum":9007199254740991},"has_more":{"type":"boolean"}},"required":["items","page","limit","total","has_more"]},"v1StudioProblemResponse":{"type":"object","properties":{"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"problem_version_id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$","description":"The last saved version, approved or not."},"published":{"type":"boolean"},"disabled":{"type":"boolean"},"package":{"type":"object","properties":{"schema_version":{"type":"number","const":2},"source":{"type":"object","properties":{"provider":{"type":"string","minLength":1,"maxLength":100},"external_id":{"type":"string","minLength":1,"maxLength":200},"revision":{"type":"string","minLength":1,"maxLength":100}},"required":["provider","external_id","revision"],"additionalProperties":false},"title":{"type":"string","minLength":1,"maxLength":200},"content":{"minItems":1,"maxItems":100,"type":"array","items":{"oneOf":[{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-z][a-z0-9-]{0,63}$"},"type":{"type":"string","const":"text"},"text":{"type":"string","maxLength":100000}},"required":["id","type","text"],"additionalProperties":false},{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-z][a-z0-9-]{0,63}$"},"type":{"type":"string","const":"visual"},"visual":{"type":"object","properties":{"kind":{"type":"string","const":"image"},"path":{"type":"string","pattern":"^\\/problem-assets\\/[a-z0-9][a-z0-9/_-]*\\.(?:png|webp)$"},"sha256":{"type":"string","pattern":"^[a-f0-9]{64}$"},"width":{"type":"integer","minimum":1,"maximum":4096},"height":{"type":"integer","minimum":1,"maximum":4096}},"required":["kind","path","sha256","width","height"],"additionalProperties":false},"alt":{"type":"string","minLength":1,"maxLength":500},"caption":{"type":"string","maxLength":1000}},"required":["id","type","visual","alt","caption"],"additionalProperties":false}]}},"samples":{"maxItems":10,"type":"array","items":{"type":"object","properties":{"input":{"type":"string","maxLength":10000},"output":{"type":"string","maxLength":10000}},"required":["input","output"],"additionalProperties":false}},"limits":{"type":"object","properties":{"cpu_time_ms":{"type":"integer","minimum":1,"maximum":10000},"wall_time_ms":{"type":"integer","minimum":1,"maximum":30000},"memory_bytes":{"type":"integer","minimum":1048576,"maximum":536870912},"output_bytes":{"type":"integer","minimum":1,"maximum":8388608}},"required":["cpu_time_ms","wall_time_ms","memory_bytes","output_bytes"],"additionalProperties":false},"checker":{"type":"object","properties":{"type":{"type":"string","enum":["exact","tokens"]},"version":{"type":"number","const":1}},"required":["type","version"],"additionalProperties":false},"tests":{"minItems":1,"maxItems":20,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-zA-Z0-9_-]{1,64}$"},"input":{"type":"string","maxLength":8388608},"answer":{"type":"string","maxLength":8388608}},"required":["id","input","answer"],"additionalProperties":false}}},"required":["schema_version","source","title","content","samples","limits","checker","tests"],"additionalProperties":false},"source":{"anyOf":[{"type":"object","properties":{"id":{"anyOf":[{"type":"string","pattern":"^(original|legacy:[0-9a-f]{32}|[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12})$"},{"type":"null"}]},"kind":{"type":"string","enum":["original","external"]},"name":{"type":"string"},"url":{"type":["string","null"]}},"required":["id","kind","name","url"]},{"type":"null"}]},"content_language":{"anyOf":[{"type":"string","enum":["ko","en"]},{"type":"null"}]},"difficulty":{"anyOf":[{"type":"integer","minimum":1,"maximum":5},{"type":"null"}]},"license_id":{"anyOf":[{"type":"string","pattern":"^[a-z0-9][a-z0-9.-]{0,63}$"},{"type":"null"}]},"selected_topics":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"name":{"type":"string"}},"required":["id","name"]}},"proposed_topic_names":{"type":"array","items":{"type":"string"}},"review":{"anyOf":[{"type":"object","properties":{"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"kind":{"type":"string","enum":["create","update"]},"status":{"type":"string","enum":["pending","approved","rejected","superseded"]},"reason":{"type":["string","null"]},"requested_at":{"type":"integer","minimum":0,"maximum":9007199254740991},"decided_at":{"anyOf":[{"type":"integer","minimum":0,"maximum":9007199254740991},{"type":"null"}]}},"required":["id","kind","status","reason","requested_at","decided_at"]},{"type":"null"}]}},"required":["id","problem_version_id","published","disabled","package","source","content_language","difficulty","license_id","selected_topics","proposed_topic_names","review"]},"v1ProblemWriteResponse":{"type":"object","properties":{"problem_id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"problem_version_id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"published":{"type":"boolean"},"review":{"anyOf":[{"type":"object","properties":{"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"status":{"type":"string","enum":["pending","approved","rejected","superseded"]}},"required":["id","status"]},{"type":"null"}],"description":"The review this request created; null when nothing needed a new review."}},"required":["problem_id","problem_version_id","published","review"]},"v1ProblemCreateRequest":{"type":"object","properties":{"request_id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"package":{"type":"object","properties":{"schema_version":{"type":"number","const":2},"title":{"type":"string","minLength":1,"maxLength":200},"content":{"minItems":1,"maxItems":100,"type":"array","items":{"oneOf":[{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-z][a-z0-9-]{0,63}$"},"type":{"type":"string","const":"text"},"text":{"type":"string","maxLength":100000}},"required":["id","type","text"],"additionalProperties":false},{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-z][a-z0-9-]{0,63}$"},"type":{"type":"string","const":"visual"},"visual":{"type":"object","properties":{"kind":{"type":"string","const":"image"},"path":{"type":"string","pattern":"^\\/problem-assets\\/[a-z0-9][a-z0-9/_-]*\\.(?:png|webp)$"},"sha256":{"type":"string","pattern":"^[a-f0-9]{64}$"},"width":{"type":"integer","minimum":1,"maximum":4096},"height":{"type":"integer","minimum":1,"maximum":4096}},"required":["kind","path","sha256","width","height"],"additionalProperties":false},"alt":{"type":"string","minLength":1,"maxLength":500},"caption":{"type":"string","maxLength":1000}},"required":["id","type","visual","alt","caption"],"additionalProperties":false}]}},"samples":{"minItems":1,"maxItems":10,"type":"array","items":{"type":"object","properties":{"input":{"type":"string","maxLength":10000,"pattern":"\\S"},"output":{"type":"string","maxLength":10000,"pattern":"\\S"}},"required":["input","output"],"additionalProperties":false}},"limits":{"type":"object","properties":{"cpu_time_ms":{"type":"integer","minimum":1,"maximum":10000},"wall_time_ms":{"type":"integer","minimum":1,"maximum":30000},"memory_bytes":{"type":"integer","minimum":1048576,"maximum":536870912},"output_bytes":{"type":"integer","minimum":1,"maximum":8388608}},"required":["cpu_time_ms","wall_time_ms","memory_bytes","output_bytes"],"additionalProperties":false},"checker":{"type":"object","properties":{"type":{"type":"string","enum":["exact","tokens"]},"version":{"type":"number","const":1}},"required":["type","version"],"additionalProperties":false},"tests":{"minItems":1,"maxItems":20,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-zA-Z0-9_-]{1,64}$"},"input":{"type":"string","maxLength":8388608,"pattern":"\\S"},"answer":{"type":"string","maxLength":8388608,"pattern":"\\S"}},"required":["id","input","answer"],"additionalProperties":false}}},"required":["schema_version","title","content","samples","limits","checker","tests"],"additionalProperties":false},"source":{"anyOf":[{"type":"object","properties":{"id":{"type":"string","pattern":"^(original|legacy:[0-9a-f]{32}|[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12})$"}},"required":["id"],"additionalProperties":false},{"type":"object","properties":{"name":{"type":"string","minLength":1,"maxLength":200},"url":{"anyOf":[{"type":"string","maxLength":2048,"format":"uri"},{"type":"null"}]}},"required":["name","url"],"additionalProperties":false}],"description":"Reference a listed source by ID or register a new external source by name and URL."},"license_id":{"type":"string","pattern":"^[a-z0-9][a-z0-9.-]{0,63}$"},"difficulty":{"anyOf":[{"type":"integer","minimum":1,"maximum":5},{"type":"null"}]},"topic_ids":{"maxItems":10,"type":"array","items":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}},"proposed_topic_names":{"maxItems":10,"type":"array","items":{"type":"string","minLength":2,"maxLength":100}},"content_language":{"anyOf":[{"type":"string","enum":["ko","en"]},{"type":"null"}]}},"required":["request_id","package","source","license_id","difficulty","topic_ids","content_language"],"additionalProperties":false},"v1ProblemUpdateRequest":{"type":"object","properties":{"expected_version_id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"package":{"type":"object","properties":{"schema_version":{"type":"number","const":2},"title":{"type":"string","minLength":1,"maxLength":200},"content":{"minItems":1,"maxItems":100,"type":"array","items":{"oneOf":[{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-z][a-z0-9-]{0,63}$"},"type":{"type":"string","const":"text"},"text":{"type":"string","maxLength":100000}},"required":["id","type","text"],"additionalProperties":false},{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-z][a-z0-9-]{0,63}$"},"type":{"type":"string","const":"visual"},"visual":{"type":"object","properties":{"kind":{"type":"string","const":"image"},"path":{"type":"string","pattern":"^\\/problem-assets\\/[a-z0-9][a-z0-9/_-]*\\.(?:png|webp)$"},"sha256":{"type":"string","pattern":"^[a-f0-9]{64}$"},"width":{"type":"integer","minimum":1,"maximum":4096},"height":{"type":"integer","minimum":1,"maximum":4096}},"required":["kind","path","sha256","width","height"],"additionalProperties":false},"alt":{"type":"string","minLength":1,"maxLength":500},"caption":{"type":"string","maxLength":1000}},"required":["id","type","visual","alt","caption"],"additionalProperties":false}]}},"samples":{"minItems":1,"maxItems":10,"type":"array","items":{"type":"object","properties":{"input":{"type":"string","maxLength":10000,"pattern":"\\S"},"output":{"type":"string","maxLength":10000,"pattern":"\\S"}},"required":["input","output"],"additionalProperties":false}},"limits":{"type":"object","properties":{"cpu_time_ms":{"type":"integer","minimum":1,"maximum":10000},"wall_time_ms":{"type":"integer","minimum":1,"maximum":30000},"memory_bytes":{"type":"integer","minimum":1048576,"maximum":536870912},"output_bytes":{"type":"integer","minimum":1,"maximum":8388608}},"required":["cpu_time_ms","wall_time_ms","memory_bytes","output_bytes"],"additionalProperties":false},"checker":{"type":"object","properties":{"type":{"type":"string","enum":["exact","tokens"]},"version":{"type":"number","const":1}},"required":["type","version"],"additionalProperties":false},"tests":{"minItems":1,"maxItems":20,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-zA-Z0-9_-]{1,64}$"},"input":{"type":"string","maxLength":8388608,"pattern":"\\S"},"answer":{"type":"string","maxLength":8388608,"pattern":"\\S"}},"required":["id","input","answer"],"additionalProperties":false}}},"required":["schema_version","title","content","samples","limits","checker","tests"],"additionalProperties":false},"source":{"anyOf":[{"type":"object","properties":{"id":{"type":"string","pattern":"^(original|legacy:[0-9a-f]{32}|[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12})$"}},"required":["id"],"additionalProperties":false},{"type":"object","properties":{"name":{"type":"string","minLength":1,"maxLength":200},"url":{"anyOf":[{"type":"string","maxLength":2048,"format":"uri"},{"type":"null"}]}},"required":["name","url"],"additionalProperties":false}],"description":"Reference a listed source by ID or register a new external source by name and URL."},"license_id":{"type":"string","pattern":"^[a-z0-9][a-z0-9.-]{0,63}$"},"content_language":{"anyOf":[{"type":"string","enum":["ko","en"]},{"type":"null"}]},"difficulty":{"anyOf":[{"type":"integer","minimum":1,"maximum":5},{"type":"null"}]},"topic_ids":{"maxItems":10,"type":"array","items":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}},"proposed_topic_names":{"maxItems":10,"type":"array","items":{"type":"string","minLength":2,"maxLength":100}},"resolved_report_ids":{"description":"Feedback this edit addresses. Replaces the planned set of the review this request creates or keeps pending; omit to carry the current planned set over.","maxItems":100,"type":"array","items":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}}},"required":["expected_version_id","package","source","license_id","content_language","difficulty","topic_ids","proposed_topic_names"],"additionalProperties":false}}}}