Scout Camp Developers

Write payloads

Request rules

Follow these rules on POST /children, POST /leaders, and POST /registrations. Read endpoints take no body.

General

  • Send Content-Type: application/json and a JSON object.
  • Authenticate with Authorization: Bearer sc_tok_….
  • Dates of birth are YYYY-MM-DD.
  • Consents that are YES/NO accept YES, NO, true, false, 1, or 0.
  • Boolean flags (asthma, swimming, shooting) accept 1, 0, true, false, yes, or no.
  • Send emergency_email for young people. After submit, that primary contact is emailed the permission slip, then a separate signature request. Do not send camp_consent.
  • Submitted medical, dietary, allergy, disability, address, email, and phone values are stored. They are never returned on later GETs.

Comma-separated tags

Dietary needs, allergies, and disabilities are tag lists. Pass either a single comma-separated string or a JSON array of strings. Spaces around commas are fine. Duplicate tags are merged.

"dietary": "Vegetarian, Gluten free"
"allergies": ["Peanuts", "EpiPen required"]
"disabilities": "ADHD, Autism"
"health_other": "ADHD, Autism, Mobility needs"

Aliases: dietary_requirementsdietary; allergyallergies; disabilities, conditions, and medical_conditionshealth_other. If you send more than one alias, the tags are combined.

medical_info, infectious_contact, notes_other, and shooting_medical are free-text notes, not tag lists.

Dietary requirements

JSON field dietary · aliases dietary_requirements · Young people and leaders

HalalKosherVegetarianVeganPescatarianNo red meatNo porkGluten freeDairy freeNut freeEgg freeLow sodiumDiabetic dietSoft food

Allergies

JSON field allergies · aliases allergy · Young people and leaders

PeanutsTree nutsMilk / dairyEggsWheat / glutenSoyFishShellfishSesameHay feverPenicillinLatexBee / wasp stingsEpiPen requiredCeleryMustardSulphites

Disabilities, conditions, and other health needs

JSON field health_other · aliases disabilities, conditions, medical_conditions · Young people (`health_other`). Use `disabilities` as an alias.

ADHDAutismAsthmaDiabetesEpilepsyAnxietyDepressionDyslexiaDyspraxiaTourette'sEczemaMigrainesHeart conditionHearing impairmentVisual impairmentMobility needsWheelchair userSleep disorderChronic fatigueHypermobilityCoeliac diseaseCrohn's / colitisHearing aid

Young person body

Used by children.write and by registration.submit when type is child.

FieldTypeRequiredNotes
first_namestringYesGiven name
last_namestringYesFull surname is stored. Reads only return the initial
dobstring (YYYY-MM-DD)YesDate of birth
section_idintegerYesFrom GET /sections
scout_group_idintegerYesFrom GET /groups. Ignored on registration.submit (taken from the token)
emergency_namestringYesPrimary emergency contact name
emergency_phonestringYesPrimary emergency contact phone
emergency_emailstringYesPrimary contact email. The permission slip and a separate signature request are sent here
emergency_2_namestringNoSecond emergency contact name
emergency_2_phonestringNoSecond emergency contact phone
emergency_2_emailstringNoSecond emergency contact email
camp_consentstringNoNot accepted. If sent, the request is rejected. The primary contact signs by email after submit
photography_consentYES | NONoDefaults to NO
dietarycomma-separated tags | string[]NoDietary requirements. Alias: dietary_requirements
allergiescomma-separated tags | string[]NoAllergies. Alias: allergy
health_othercomma-separated tags | string[]NoDisabilities and other conditions. Aliases: disabilities, conditions, medical_conditions
medical_infostringNoMedication / treatment notes. Free text, not a tag list
infectious_contactstringNoRecent infectious disease contact notes
notes_otherstringNoOther notes
shooting_medicalstringNoShooting medical notes if relevant
line_1stringNoAddress line 1
line_2stringNoAddress line 2
citystringNoTown or city
countystringNoCounty
postcodestringNoPostcode
doctor_namestringNoGP name
doctor_surgerystringNoGP surgery
doctor_addressstringNoGP address
doctor_phonestringNoGP phone
doctor_emailstringNoGP email
otc_pain_relief_consentYES | NONoOver-the-counter pain relief consent
parent_alert_emailbooleanNoWhether to email the parent on medical incidents
has_asthmabooleanNoPass 1, true, or "yes". Same pattern for the flags below
has_diabetesbooleanNoDiabetes flag
has_epilepsybooleanNoEpilepsy flag
has_migrainesbooleanNoMigraines flag
has_fits_faintsbooleanNoFits or faints flag
can_swim_50mbooleanNoCan swim 50 metres
can_bathe_supervisedbooleanNoCan bathe when supervised
shooting_air_riflebooleanNoAlso: shooting_small_bore, shooting_full_bore, shooting_clay_pigeon, shooting_crossbow, shooting_target_sprint, shooting_muzzle_loaded

Leader body

Used by leaders.write and by registration.submit when type is leader.

FieldTypeRequiredNotes
first_namestringYesGiven name
last_namestringYesFull surname is stored. Reads only return the initial
emailstringYesMust be unique on the camp
dobstring (YYYY-MM-DD)YesDate of birth
section_idintegerYesAlias: section. From GET /sections
scout_group_idintegerYesAlias: scout_group. Ignored on registration.submit
camp_consentstringNoNot accepted. If sent, the request is rejected. The leader is emailed the permission slip and a separate signature request
rolestringNoDefaults to Leader
levelintegerNoPermission level. Defaults to 1
passwordstringNoOptional login password. Must meet camp password rules if set
phonestringNoLeader phone
photography_consentYES | NONoDefaults to NO
dietarycomma-separated tags | string[]NoDietary requirements. Alias: dietary_requirements
allergiescomma-separated tags | string[]NoAllergies. Alias: allergy
medical_infostringNoMedication / treatment notes. Free text
emergency_namestringNoEmergency contact name
emergency_phonestringNoEmergency contact phone
emergency_emailstringNoEmergency contact email
line_1stringNoAddress line 1
line_2stringNoAddress line 2
citystringNoTown or city
countystringNoCounty
postcodestringNoPostcode
otc_pain_relief_consentYES | NONoOver-the-counter pain relief consent