Dealerships, insurers and repair shops, their associations, and the white-label capture flows they brand.
https://api.reportauto.euPartners are the dealerships, insurers and repair shops Caroom works with. The public filters back the “find a partner” search; creating and editing partners needs a partner or admin credential.
Registers a partner organisation with its contact details and map position.
Authentication Access token
Trading name.
Group the partner belongs to, for chains.
What kind of business this is.
Country name.
County or region.
Street address.
Map position as { lat, lng }, both strings.
Contact email.
Contact phone.
Website.
Associate the new partner with this insurer as part of the create call.
Free-form matching data, e.g. carAge and carMake, used to route requests to this partner.
1curl -X POST "https://api.reportauto.eu/api/partners" \
2 -H "Authorization: $CAROOM_ACCESS_TOKEN" \
3 -H "Content-Type: application/json" \
4 -d '{
5 "name": "Inges",
6 "group_name": "Inges",
7 "country": "Estonia",
8 "url": "https://www.inges.ee/",
9 "address": "Raua 35, 10124 Tallinn",
10 "location": { "lat": "59.43", "lng": "24.76" },
11 "county": "Tallinn",
12 "email": "kahjud@example.com",
13 "phone": "641 0436",
14 "info": null,
15 "partner_type": "INSURANCE"
16 }'Finds partners matching the filters. Vehicle filters match against the make and age ranges each partner accepts; postcode and radius match on location.
Authentication None for the public filters
Partner type, e.g. DEALERSHIP.
Vehicle make the partner handles.
Vehicle age in years.
County or region.
Partner group name.
Centre of the location search.
Only partners with a contact email.
Only partners created by this account.
Alternative spelling of `type`, e.g. repairs.
Match a key inside the partner’s info object, e.g. info.glass=true or info.local=false.
Maximum number of partners to return.
Opaque cursor for the next page.
1curl "https://api.reportauto.eu/api/partners?limit=100&postcode=32005&has_email=true"Edits a partner, including the info object that decides which vehicles get routed to it.
Authentication API key (admin)
ID of the partner.
Matching data, e.g. { carAge, carMake }.
1curl -X PATCH "https://api.reportauto.eu/api/partners/43" \
2 -H "Authorization: API_KEY $CAROOM_API_KEY" \
3 -H "Content-Type: application/json" \
4 -d '{
5 "info": {
6 "carAge": 5,
7 "carMake": ["Toyota", "Opel", "Audi"]
8 }
9 }'Removes a partner organisation.
Authentication API key (admin)
ID of the partner.
1curl -X DELETE "https://api.reportauto.eu/api/partners/43" \
2 -H "Authorization: API_KEY $CAROOM_API_KEY"Attaches an existing user account to a partner, giving them the partner’s access.
Authentication API key
User to add — the collection passes an email address here.
Partner to add them to.
1curl -X POST "https://api.reportauto.eu/api/partners/add_user" \
2 -H "Authorization: API_KEY $CAROOM_API_KEY" \
3 -H "Content-Type: application/json" \
4 -d '{
5 "user_id": "someone@example.com",
6 "partner_account_id": "7"
7 }'Links a repair shop to an insurer, with the makes it services and whether it handles glass or local work.
Authentication API key
ID of the insurer.
ID of the repair shop partner.
Partner the association is being created on behalf of.
Capabilities, e.g. { carMake: { Toyota: 3 }, glass: "false", local: "false" }.
1curl -X POST "https://api.reportauto.eu/api/partners/2/associate_repair_shop" \
2 -H "Authorization: API_KEY $CAROOM_API_KEY" \
3 -H "Content-Type: application/json" \
4 -d '{
5 "repair_shop": 46,
6 "info": {
7 "carMake": { "Toyota": 3, "Opel": 6 },
8 "glass": "false",
9 "local": "false"
10 }
11 }'Returns the repair shops associated with an insurer, with the capabilities recorded for each.
Authentication API key
ID of the insurer.
1curl "https://api.reportauto.eu/api/partners/6/repair_shops" \
2 -H "Authorization: API_KEY $CAROOM_API_KEY"Edits what a repair shop handles for an insurer — makes, glass work, availability and rating.
Authentication Access token
ID of the insurer.
ID of the repair shop.
Capabilities, e.g. { carMake, glass, available, rating }.
1curl -X PATCH "https://api.reportauto.eu/api/partners/6/repair_shops/8" \
2 -H "Authorization: $CAROOM_ACCESS_TOKEN" \
3 -H "Content-Type: application/json" \
4 -d '{
5 "info": {
6 "carMake": { "Toyota": 3, "Opel": 10 },
7 "glass": "false",
8 "available": "true",
9 "rating": "good"
10 }
11 }'Detaches a repair shop from an insurer.
Authentication Access token
ID of the insurer.
ID of the repair shop.
1curl -X DELETE "https://api.reportauto.eu/api/partners/52/repair_shops/51" \
2 -H "Authorization: $CAROOM_ACCESS_TOKEN"White-label settings for a partner’s capture flow: colours, logo, locales, the message templates sent to customers, and which steps the flow asks for.
Defines a branded flow for a partner. required_flow lists the capture steps in the order the customer walks through them.
Authentication API key
Slug identifying this customisation.
Partner the flow belongs to.
Which flow is being branded, e.g. CLAIM.
Human-readable name.
Default locale and the list offered, e.g. en-US, et-EE.
Logo url with its width and height.
Illustration URLs — scan_sample, image_sample and side_image.
Country code and the email and SMS templates. Templates interpolate <%=request_url%>.
Palette for illustrations and interface, each a map of role to hex colour.
Capture steps to require, e.g. License, CarCondition, ScanCar, Damage, Contact.
1curl -X POST "https://api.reportauto.eu/api/customisations" \
2 -H "Authorization: API_KEY $CAROOM_API_KEY" \
3 -H "Content-Type: application/json" \
4 -d '{
5 "customisation_alias": "example-customisation",
6 "partner_id": "16",
7 "flow": "CLAIM",
8 "name": "Claim Flow",
9 "locales": { "default": "en-US", "list": ["en-US", "et-EE"] },
10 "logo": { "url": "https://caroom.io/assets/images/primary-2.svg", "width": 121, "height": null },
11 "assets": {
12 "scan_sample": "https://caroom.io/assets/images/primary-2.svg",
13 "image_sample": "https://caroom.io/assets/images/primary-2.svg",
14 "side_image": "https://example.com/bg-hero.jpg"
15 },
16 "defaults": {
17 "country_code": "372",
18 "request_email": "Follow this link for a Photo Appraisal <%=request_url%>",
19 "request_sms": "Follow this link for a Photo Appraisal <%=request_url%>"
20 },
21 "colours": {
22 "illustrations": { "primary": "#2d0bb5", "person": "#FFE486" },
23 "interface": { "primary": "#2D0BB5", "buttonText": "#ffffff" }
24 },
25 "required_flow": ["License", "CarCondition", "CarDetails", "ScanCar", "Location", "Damage", "Dashboard", "Mileage", "InteriorFront", "Contact"]
26 }'Changes part of a customisation — typically the palette.
Authentication API key
ID of the customisation.
1curl -X PATCH "https://api.reportauto.eu/api/customisations/16" \
2 -H "Authorization: API_KEY $CAROOM_API_KEY" \
3 -H "Content-Type: application/json" \
4 -d '{
5 "colours": {
6 "illustrations": { "primary": "#2d0bb5", "person": "#FFE486" },
7 "interface": { "primary": "#2D0BB5", "buttonText": "#ffffff" }
8 }
9 }'Public lookup used by the capture flow to render itself. Pass agent_id to fold in the assigned agent’s details.
Authentication None
UUID or alias of the customisation.
Include this agent’s contact details in the response.
1curl "https://api.reportauto.eu/api/partner_customisations/7b8b08ca-602a-4846-b013-be0050219b5e?agent_id=23"Returns every customisation defined for a partner.
Authentication API key
ID of the partner.
1curl "https://api.reportauto.eu/api/partners/7/customisations" \
2 -H "Authorization: API_KEY $CAROOM_API_KEY"