{"openapi":"3.1.0","info":{"title":"Form Service","version":"2026.2"},"tags":[{"name":"Modern Campus CMS Forms","description":"Modern Campus CMS Forms Information"}],"paths":{"\/pubform\/{formId}\/submit":{"post":{"tags":["Modern Campus CMS Forms"],"summary":"Submit a form submission","operationId":"submit","parameters":[{"name":"formId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/SubmissionDO"}}},"required":true},"responses":{"400":{"description":"Bad Request","content":{"*\/*":{"schema":{"$ref":"#\/components\/schemas\/ProblemDetail"}}}},"403":{"description":"Forbidden","content":{"*\/*":{"schema":{"$ref":"#\/components\/schemas\/ProblemDetail"}}}},"409":{"description":"Conflict","content":{"*\/*":{"schema":{"$ref":"#\/components\/schemas\/ProblemDetail"}}}},"404":{"description":"Not Found","content":{"*\/*":{"schema":{"$ref":"#\/components\/schemas\/ProblemDetail"}}}},"200":{"description":"OK","content":{"*\/*":{"schema":{"$ref":"#\/components\/schemas\/SubmissionResponseDO"}}}}},"security":[]}},"\/pubform\/{formId}":{"get":{"tags":["Modern Campus CMS Forms"],"summary":"Get a form","operationId":"read","parameters":[{"name":"formId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"400":{"description":"Bad Request","content":{"*\/*":{"schema":{"$ref":"#\/components\/schemas\/ProblemDetail"}}}},"403":{"description":"Forbidden","content":{"*\/*":{"schema":{"$ref":"#\/components\/schemas\/ProblemDetail"}}}},"409":{"description":"Conflict","content":{"*\/*":{"schema":{"$ref":"#\/components\/schemas\/ProblemDetail"}}}},"404":{"description":"Not Found","content":{"*\/*":{"schema":{"$ref":"#\/components\/schemas\/ProblemDetail"}}}},"200":{"description":"OK","content":{"*\/*":{"schema":{"$ref":"#\/components\/schemas\/FormPublicDO"}}}}},"security":[]}}},"components":{"schemas":{"ProblemDetail":{"type":"object","properties":{"type":{"type":"string","format":"uri"},"title":{"type":"string"},"status":{"type":"integer","format":"int32"},"detail":{"type":"string"},"instance":{"type":"string","format":"uri"},"properties":{"type":"object","additionalProperties":[]}}},"JsonNode":{"type":"object","properties":{"number":{"type":"boolean"},"container":{"type":"boolean"},"nodeType":{"type":"string","enum":["ARRAY","BINARY","BOOLEAN","MISSING","NULL","NUMBER","OBJECT","POJO","STRING"]},"string":{"type":"boolean"},"integralNumber":{"type":"boolean"},"missingNode":{"type":"boolean"},"valueNode":{"type":"boolean"},"pojo":{"type":"boolean"},"short":{"type":"boolean"},"int":{"type":"boolean"},"long":{"type":"boolean"},"double":{"type":"boolean"},"bigDecimal":{"type":"boolean"},"bigInteger":{"type":"boolean"},"textual":{"type":"boolean","deprecated":true},"boolean":{"type":"boolean"},"binary":{"type":"boolean"},"floatingPointNumber":{"type":"boolean"},"empty":{"type":"boolean"},"array":{"type":"boolean"},"null":{"type":"boolean"},"object":{"type":"boolean"},"float":{"type":"boolean"},"embeddedValue":{"type":"boolean"}}},"SubmissionDO":{"type":"object","properties":{"token":{"type":"string","minLength":1},"pageUrl":{"type":"string","description":"The page url where the form data is submit from.","example":"https:\/\/example.com\/form.html","maxLength":255,"minLength":0},"data":{"$ref":"#\/components\/schemas\/JsonNode","description":"The data submitted by the user, structured according to the form's schema.","example":{"name":"John Doe","email":"me@email.com","fruits":["Apple","Banana"]}},"files":{"type":"array","items":{"$ref":"#\/components\/schemas\/SubmissionFileFieldFileDataDO"}}},"required":["data","pageUrl","token"]},"SubmissionFileFieldFileDataDO":{"type":"object","properties":{"fieldKey":{"type":"string"},"filename":{"type":"string"},"contentType":{"type":"string"},"fileSize":{"type":"integer","format":"int32"}}},"SubmissionFileFieldUploadUrlDO":{"type":"object","properties":{"fieldKey":{"type":"string"},"uploadUrl":{"type":"string"}}},"SubmissionResponseDO":{"type":"object","properties":{"formId":{"type":"string","format":"uuid"},"files":{"type":"array","items":{"$ref":"#\/components\/schemas\/SubmissionFileFieldUploadUrlDO"}}}},"FormPublicDO":{"type":"object","properties":{"id":{"type":"string","format":"uuid"},"name":{"type":"string"},"description":{"type":"string"},"captchaSiteKey":{"type":"string"},"styleUrl":{"type":"string"},"jsonSchema":{"$ref":"#\/components\/schemas\/JsonNode"},"uiSchema":{"$ref":"#\/components\/schemas\/JsonNode"},"settings":{"$ref":"#\/components\/schemas\/JsonNode"}}}},"securitySchemes":{"bearerAuth":{"type":"http","scheme":"bearer","bearerFormat":"JWT"}}}}