Validation
1 Get concrete requests
Endpoint: GET /validation/{request}
Description: Get available requests with validation rules for some request.
Request Headers:
X-API-Key: your_api_key
Content-Type: application/json
Response (200 Ok):
{
"form_id": "add-animal-request",
"rules": {
"animal_type": {
"required": [],
"in": "in:\"service_dog\",\"emotional_support\",\"therapy_dog\""
},
"name": {
"required": [],
"string": [],
"max": "30"
},
"gender": {
"required": [],
"in": "in:\"male\",\"female\",\"other\""
},
"birth_date": {
"required": [],
"date": []
},
"breed": {
"nullable": [],
"string": [],
"max": "30"
},
"size": {
"nullable": [],
"string": [],
"max": "30"
},
"microchip_number": {
"nullable": [],
"string": [],
"max": "30",
"unique": []
},
"in_training": {
"required": [],
"boolean": []
}
},
"messages": {
"animal_type.required": "Animal type is required",
"animal_type.in": "The selected animal type is invalid",
"name.required": "Name is required",
"gender.required": "Gender is required",
"gender.in": "The selected gender is invalid",
"birth_date.required": "Birth date is required",
"birth_date.date": "Birth date must be a valid date",
"in_training.required": "Training status is required",
"in_training.boolean": "Training status must be true or false",
"microchip_number.unique": "This microchip number is already registered in the system"
},
"form_data": {
"enums": {
"relationships": [
"parent",
"friend",
"trainer",
"caretaker",
"therapist"
],
"disabilities": [
"arthritis",
"ataxia",
"autism",
"vision_impairment",
"cardio_pulmonary",
"cerebral_palsy",
"hearing_impairment",
"diabetes",
"allergies",
"multiple_sclerosis",
"medical_alert",
"neurological",
"physical_mobility",
"psychiatric",
"seizure",
"spina_bifida",
"spinal_trauma",
"mobility",
"stroke",
"other"
]
}
}
}
2 Get all requests
Endpoint: GET /validation/all
Description: Get all available requests with validation rules.
Request Headers:
X-API-Key: your_api_key
Content-Type: application/json
Response (200 Ok):
{
"forms": {
"add-animal-request": {
"rules": {
"animal_type": {
"required": [],
"in": "in:\"service_dog\",\"emotional_support\",\"therapy_dog\""
},
"name": {
"required": [],
"string": [],
"max": "30"
},
"gender": {
"required": [],
"in": "in:\"male\",\"female\",\"other\""
},
"birth_date": {
"required": [],
"date": []
},
"breed": {
"nullable": [],
"string": [],
"max": "30"
},
"size": {
"nullable": [],
"string": [],
"max": "30"
},
"microchip_number": {
"nullable": [],
"string": [],
"max": "30",
"unique": []
},
"in_training": {
"required": [],
"boolean": []
}
},
"messages": {
"animal_type.required": "Animal type is required",
"animal_type.in": "The selected animal type is invalid",
"name.required": "Name is required",
"gender.required": "Gender is required",
"gender.in": "The selected gender is invalid",
"birth_date.required": "Birth date is required",
"birth_date.date": "Birth date must be a valid date",
"in_training.required": "Training status is required",
"in_training.boolean": "Training status must be true or false",
"microchip_number.unique": "This microchip number is already registered in the system"
}
},
"add-emergency-contact": {
"rules": {
"first_name": {
"required": [],
"string": [],
"max": "255"
},
"last_name": {
"required": [],
"string": [],
"max": "255"
},
"rel_to_disabled_individual": {
"nullable": [],
"string": [],
"max": "255",
"in": "in:\"parent\",\"friend\",\"trainer\",\"caretaker\",\"therapist\""
},
"primary_phone": {
"required": [],
"string": [],
"max": "20"
},
"email": {
"required": [],
"email": [],
"max": "255"
},
"primary_disability": {
"nullable": [],
"string": [],
"max": "255",
"in": "in:\"arthritis\",\"ataxia\",\"autism\",\"vision_impairment\",\"cardio_pulmonary\",\"cerebral_palsy\",\"hearing_impairment\",\"diabetes\",\"allergies\",\"multiple_sclerosis\",\"medical_alert\",\"neurological\",\"physical_mobility\",\"psychiatric\",\"seizure\",\"spina_bifida\",\"spinal_trauma\",\"mobility\",\"stroke\",\"other\""
},
"secondary_disability": {
"nullable": [],
"string": [],
"max": "255",
"in": "in:\"arthritis\",\"ataxia\",\"autism\",\"vision_impairment\",\"cardio_pulmonary\",\"cerebral_palsy\",\"hearing_impairment\",\"diabetes\",\"allergies\",\"multiple_sclerosis\",\"medical_alert\",\"neurological\",\"physical_mobility\",\"psychiatric\",\"seizure\",\"spina_bifida\",\"spinal_trauma\",\"mobility\",\"stroke\",\"other\""
}
},
"messages": {
"first_name.required": "First name is required",
"last_name.required": "Last name is required",
"email.email": "Please enter a valid email address"
}
},
"login-request": {
"rules": {
"email": {
"required": [],
"email": []
},
"password": {
"required": [],
"string": [],
"min": "8"
}
},
"messages": []
},
"register-request": {
"rules": {
"email": {
"required": [],
"email": [],
"unique": []
},
"account_type": {
"required": [],
"in": "in:\"handler\",\"trainer\""
}
},
"messages": []
},
"set-password-request": {
"rules": {
"password": {
"required": [],
"string": [],
"min": "8",
"confirmed": []
}
},
"messages": []
},
"social-auth-request": {
"rules": {
"account_type": {
"required": [],
"in": "in:\"handler\",\"trainer\""
}
},
"messages": {
"account_type.required": "Account type is required",
"account_type.in": "Account type must be either \"handler\" or \"trainer\""
}
},
"update-animal-photo-request": {
"rules": {
"photo": {
"required": [],
"file": [],
"mimes": [
"jpeg",
"png",
"jpg"
],
"max": "4096"
}
},
"messages": {
"photo.required": "File is required",
"photo.file": "File must be provided",
"photo.mimes": "Allowed formats: jpeg, png, jpg",
"photo.max": "Max filesize is 4MB"
}
},
"update-animal-request": {
"rules": {
"animal_type": {
"sometimes": [],
"in": "in:\"service_dog\",\"emotional_support\",\"therapy_dog\""
},
"name": {
"sometimes": [],
"string": [],
"max": "30"
},
"gender": {
"sometimes": [],
"in": "in:\"male\",\"female\",\"other\""
},
"birth_date": {
"sometimes": [],
"date": []
},
"breed": {
"nullable": [],
"string": [],
"max": "30"
},
"size": {
"nullable": [],
"string": [],
"max": "30"
},
"microchip_number": {
"nullable": [],
"string": [],
"max": "30",
"unique": []
},
"in_training": {
"sometimes": [],
"boolean": []
},
"photo": {
"nullable": [],
"file": [],
"mimes": [
"jpeg",
"png",
"jpg"
],
"max": "4096"
}
},
"messages": {
"animal_type.in": "The selected animal type is invalid",
"gender.in": "The selected gender is invalid",
"birth_date.date": "Birth date must be a valid date",
"in_training.boolean": "Training status must be true or false",
"photo.file": "The photo must be a file",
"photo.mimes": "The photo must be a jpeg, png, or jpg file",
"photo.max": "The photo may not be greater than 4MB",
"microchip_number.unique": "This microchip number is already registered in the system"
}
},
"update-emergency-contact": {
"rules": {
"first_name": {
"sometimes": [],
"required": [],
"string": [],
"max": "255"
},
"last_name": {
"sometimes": [],
"required": [],
"string": [],
"max": "255"
},
"rel_to_disabled_individual": {
"nullable": [],
"string": [],
"max": "255",
"in": "in:\"parent\",\"friend\",\"trainer\",\"caretaker\",\"therapist\""
},
"primary_phone": {
"sometimes": [],
"required": [],
"string": [],
"max": "20"
},
"email": {
"sometimes": [],
"required": [],
"email": [],
"max": "255"
},
"primary_disability": {
"nullable": [],
"string": [],
"max": "255",
"in": "in:\"arthritis\",\"ataxia\",\"autism\",\"vision_impairment\",\"cardio_pulmonary\",\"cerebral_palsy\",\"hearing_impairment\",\"diabetes\",\"allergies\",\"multiple_sclerosis\",\"medical_alert\",\"neurological\",\"physical_mobility\",\"psychiatric\",\"seizure\",\"spina_bifida\",\"spinal_trauma\",\"mobility\",\"stroke\",\"other\""
},
"secondary_disability": {
"nullable": [],
"string": [],
"max": "255",
"in": "in:\"arthritis\",\"ataxia\",\"autism\",\"vision_impairment\",\"cardio_pulmonary\",\"cerebral_palsy\",\"hearing_impairment\",\"diabetes\",\"allergies\",\"multiple_sclerosis\",\"medical_alert\",\"neurological\",\"physical_mobility\",\"psychiatric\",\"seizure\",\"spina_bifida\",\"spinal_trauma\",\"mobility\",\"stroke\",\"other\""
}
},
"messages": {
"email.email": "Please enter a valid email address"
}
},
"update-profile-photo-request": {
"rules": {
"photo": {
"required": [],
"file": [],
"mimes": [
"jpeg",
"png",
"jpg"
],
"max": "4096"
}
},
"messages": {
"photo.required": "File is required",
"photo.image": "File must be image",
"photo.mimes": "Allowed formats: jpeg, png, jpg",
"photo.max": "Max filesize is 4MB"
}
},
"update-profile-request": {
"rules": {
"first_name": {
"required": [],
"string": [],
"max": "30"
},
"middle_name": {
"nullable": [],
"string": [],
"max": "30"
},
"email": {
"required": [],
"email": [],
"max": "320"
},
"last_name": {
"required": [],
"string": [],
"max": "30"
},
"date_of_birth": {
"required": [],
"date": []
},
"gender": {
"required": [],
"in": "in:\"male\",\"female\",\"other\""
},
"primary_phone": {
"required": [],
"string": [],
"max": "14"
},
"secondary_phone": {
"nullable": [],
"string": [],
"max": "14"
},
"alternate_email": {
"nullable": [],
"email": [],
"max": "320"
},
"mailing_address": {
"required": [],
"string": [],
"max": "100"
},
"mailing_address_2": {
"nullable": [],
"string": [],
"max": "100"
},
"city": {
"required": [],
"string": [],
"max": "30"
},
"state": {
"required": [],
"string": [],
"max": "50",
"in": "in:\"AL\",\"AK\",\"AZ\",\"AR\",\"CA\",\"CO\",\"CT\",\"DE\",\"FL\",\"GA\",\"HI\",\"ID\",\"IL\",\"IN\",\"IA\",\"KS\",\"KY\",\"LA\",\"ME\",\"MD\",\"MA\",\"MI\",\"MN\",\"MS\",\"MO\",\"MT\",\"NE\",\"NV\",\"NH\",\"NJ\",\"NM\",\"NY\",\"NC\",\"ND\",\"OH\",\"OK\",\"OR\",\"PA\",\"RI\",\"SC\",\"SD\",\"TN\",\"TX\",\"UT\",\"VT\",\"VA\",\"WA\",\"WV\",\"WI\",\"WY\",\"DC\",\"AS\",\"GU\",\"MP\",\"PR\",\"VI\",\"NA\""
},
"zip": {
"required": [],
"string": [],
"max": "30"
},
"ethnicity": {
"nullable": [],
"array": [],
"closure": []
},
"education_level": {
"nullable": [],
"string": [],
"max": "255"
},
"annual_income": {
"nullable": [],
"integer": [],
"min": "0",
"max": "50"
},
"military_service": {
"nullable": [],
"boolean": []
},
"wartime_contractor": {
"nullable": [],
"boolean": []
},
"service_dog_for_injury": {
"nullable": [],
"boolean": []
},
"relationship_to_handler": {
"nullable": [],
"string": [],
"in": "in:\"parent_guardian\",\"friend_relative\",\"trainer\",\"caretaker\",\"physician_therapist\""
},
"photo": {
"nullable": [],
"image": [],
"mimes": [
"jpeg",
"png",
"jpg"
],
"max": "4096"
}
},
"messages": []
}
},
"form_data": {
"enums": {
"relationships": [
"parent",
"friend",
"trainer",
"caretaker",
"therapist"
],
"disabilities": [
"arthritis",
"ataxia",
"autism",
"vision_impairment",
"cardio_pulmonary",
"cerebral_palsy",
"hearing_impairment",
"diabetes",
"allergies",
"multiple_sclerosis",
"medical_alert",
"neurological",
"physical_mobility",
"psychiatric",
"seizure",
"spina_bifida",
"spinal_trauma",
"mobility",
"stroke",
"other"
]
}
}
}
07 March 2025