{ "$schema": "http://json-schema.org/draft-07/schema#", "title": "complaint", "type": "object", "required": [ "complaint_id", "created_at", "complaint_status", "app_data", "created_by" ], "properties": { "complaint_id": { "type": "string", "description": "The identifier of the complaint." }, "complaint_number": { "type": "string", "description": "A human-readable complaint number." }, "created_at": { "type": "string", "format": "date-time", "description": "Time at which the complaint was opened." }, "policy_id": { "type": "string", "description": "The identifier of the policy attached to this complaint. May initially be omitted." }, "policyholder_id": { "type": "string", "description": "The identifier of the policyholder for this complaint. May initially be omitted." }, "member_id": { "type": "string", "description": "The identifier of the member for this complaint. Only used for group scheme policies. May initially be omitted." }, "complaint_status": { "type": "string", "enum": [ "open", "closed" ], "description": "Whether the complaint is 'open' or 'closed'." }, "app_data": { "type": [ "object", "null" ], "description": "`null` is allowed. An object containing additional custom data for the complaint.", "additionalProperties": true }, "created_by": { "type": [ "object", "null" ], "description": "`null` is allowed. An object indicating the user or API key that created the complaint. See [Authentication](#client-apps)." }, "complainant": { "type": [ "object", "null" ], "description": "Object containing complainant's first name, last name, email and/or cellphone. All fields are optional and can be null.", "properties": { "first_name": { "type": [ "string", "null" ], "description": "The first name of the complainant." }, "last_name": { "type": [ "string", "null" ], "description": "The last name of the complainant." }, "id_number": { "type": [ "string", "null" ], "description": "The ID number of the complainant." }, "email": { "type": [ "string", "null" ], "description": "The complainant's email address." }, "cellphone": { "type": [ "string", "null" ], "description": "The complainant's cellphone number." } } }, "policy": { "type": "object", "description": "The policy object. Included when `include=policy` is specified." }, "policyholder": { "type": "object", "description": "The policyholder object. Included when `include=policyholder` is specified." }, "member": { "type": "object", "description": "The member object. Included when `include=member` is specified." } }, "example": { "complaint_id": "acd6c4af-108e-444d-a90f-e90b67786c74", "complaint_number": "CMP-000001", "created_at": "2017-10-16T10:12:02.872Z", "policy_id": "8349345c-a6c5-4bf9-8ebb-6bbfc1628715", "policyholder_id": "3c74e595-48bc-4dd6-8ac7-2dee1c1f397b", "member_id": "673b8081-9668-4136-97cc-6ae0debda083", "complaint_status": "open", "complainant": { "first_name": "Erlich", "last_name": "Bachman", "id_number": "9001015000000", "cellphone": "+27821234567", "email": "erlich@aviato.com" }, "app_data": { "key1": "value 1", "key2": "value 2" }, "created_by": { "id": "00000000-0000-0000-0000-000000000001", "type": "user" } } }