Raw schema
{
"type": "object",
"properties": {
"requester_name": {
"type": "string",
"maxLength": 120,
"description": "Name of the attorney, LNC or staff member Zicron should reply to. Not the patient."
},
"requester_email": {
"type": "string",
"format": "email",
"maxLength": 254,
"description": "Email address Zicron should reply to with the quote and secure upload link."
},
"requester_role": {
"type": "string",
"enum": [
"legal_nurse_consultant",
"lnc_firm",
"pi_attorney",
"medmal_attorney",
"nursing_home_attorney",
"paralegal",
"other"
],
"description": "The requester's role."
},
"firm_name": {
"type": "string",
"maxLength": 160,
"description": "Law firm or LNC business name (optional)."
},
"phone": {
"type": "string",
"maxLength": 40,
"description": "Requester's phone number (optional)."
},
"case_type": {
"type": "string",
"enum": [
"personal_injury",
"medical_malpractice",
"nursing_home",
"workers_comp",
"other"
],
"description": "Type of case the chronology is for."
},
"estimated_pages": {
"type": "integer",
"minimum": 1,
"maximum": 100000,
"description": "Approximate total page count of the records (optional; used for the estimate)."
},
"deadline": {
"type": "string",
"format": "date",
"description": "When the chronology is needed back, YYYY-MM-DD (optional)."
},
"is_first_case": {
"type": "boolean",
"default": true,
"description": "Whether this is the requester's first case with Zicron (half price). Defaults to true."
},
"notes": {
"type": "string",
"maxLength": 500,
"description": "Optional short note about the case in general terms (e.g. \"two hospitals and a rehab facility, need it before a mediation\"). Max 500 characters. No patient names, dates of birth, diagnoses or record content."
},
"agent_name": {
"type": "string",
"maxLength": 80,
"description": "Name of the AI assistant or agent making this request (e.g. \"Claude\", \"ChatGPT\"). Optional."
},
"confirmed_by_user": {
"type": "boolean",
"description": "Must be true: set only after the person you act for has asked for this and agreed Zicron may email them. Not required when dry_run is true."
},
"dry_run": {
"type": "boolean",
"default": false,
"description": "If true, validate and return the estimate without sending the request."
},
"idempotency_key": {
"type": "string",
"maxLength": 100,
"description": "Optional key; repeating a call with the same key and details returns the original request."
}
},
"required": [
"requester_name",
"requester_email",
"requester_role",
"case_type",
"confirmed_by_user"
],
"additionalProperties": false
}