{"schema_version":"2026-06-quote-capability-v1","name":"Moveroo public quote capability manifest","host":"moving.allianceremovals.com.au","generated_at":"2026-07-01T06:27:28+10:00","llms_txt_url":"https:\/\/moving.allianceremovals.com.au\/llms.txt","capability_url":"https:\/\/moving.allianceremovals.com.au\/quote-capability.json","ai_catalog_url":"https:\/\/moving.allianceremovals.com.au\/.well-known\/ai-catalog.json","openapi_url":"https:\/\/moving.allianceremovals.com.au\/openapi.json","well_known_openapi_url":"https:\/\/moving.allianceremovals.com.au\/.well-known\/openapi.json","agent_human_guide_url":"https:\/\/moving.allianceremovals.com.au\/agents","interaction_model":{"default":"public_agent_api_or_browser_handoff","directApiSubmission":true,"direct_api_submission":true,"browser_handoff_available":true,"public_agent_submission":{"available":true,"ready_quote_types":["household","vehicle"],"not_ready_quote_types":[],"contract":"Public agents may submit household and vehicle quote requests and callback-time requests only through the declared endpoints when the customer has asked for that action and consent is asserted in the payload.","dedupe":"Send a stable idempotency_key when possible. If omitted, Moveroo computes a quote-type-specific submission fingerprint to prevent obvious duplicate submissions."}},"capabilities":[{"key":"household_quote","label":"Household quote","quote_type":"household","interaction":"public_agent_api_or_browser_handoff","directApiSubmission":true,"entry_url":"https:\/\/moving.allianceremovals.com.au\/quote\/household","method":"GET","submission_endpoint":{"url":"https:\/\/moving.allianceremovals.com.au\/api\/v1\/household-quotes\/assistant\/submit","path":"\/api\/v1\/household-quotes\/assistant\/submit","method":"POST","content_type":"application\/json","requires_customer_login":false,"requires_staff_login":false,"requires_agent_preapproval":false,"rate_limited":true,"customer_consent":{"required":true,"field":"customer_consent.confirmed","basis_field":"customer_consent.basis","accepted_basis":["customer_requested_quote"]},"idempotency":{"preferred_field":"idempotency_key","required":false,"server_fingerprint_when_missing":true},"tenant_resolution":{"field":"tenant","required":false,"default":"resolved_from_request_host_or_single_active_tenant","guidance":"Public agents should omit tenant unless they have a separately agreed tenant slug. Moveroo resolves the tenant from the quote host."},"required_fields":["origin_domain","customer.name","customer.email","customer.phone","pickup.city or pickup.locality_id","delivery.city or delivery.locality_id","move_date.type","inventory.method","customer_consent.confirmed","customer_consent.basis"],"optional_fields":["tenant","idempotency_key","channel","surface","requested_services","budget_amount","notes"],"conditional_required_fields":[{"when":{"field":"move_date.type","equals":"exact"},"required":["move_date.date"]},{"when":{"field":"inventory.method","equals":"m3"},"required":["inventory.cubic_meters"]},{"when":{"field":"inventory.method","equals":"pasted_list"},"required":["inventory.text"]}],"example_payload":{"origin_domain":"moving.allianceremovals.com.au","customer_consent":{"confirmed":true,"basis":"customer_requested_quote"},"customer":{"name":"Example Customer","email":"customer@example.com","phone":"0400000000"},"pickup":{"city":"Brisbane","state":"QLD"},"delivery":{"city":"Sydney","state":"NSW"},"move_date":{"type":"asap"},"inventory":{"method":"m3","cubic_meters":20}},"initial_status_slug":"quote-assistant-entry","initial_status_label":"Quote Assistant Entry","provider_distribution":"held_for_staff_review_until_cubing_done"},"public":true,"intended_use":"Submit or hand off customers who need a furniture, removals, boxes, cubic metres, or moving-house quote."},{"key":"vehicle_quote","label":"Vehicle quote","quote_type":"vehicle","interaction":"public_agent_api_or_browser_handoff","directApiSubmission":true,"entry_url":"https:\/\/moving.allianceremovals.com.au\/quote\/vehicle","method":"GET","workflow_endpoint":{"base_url":"https:\/\/moving.allianceremovals.com.au\/api\/v1\/vehicle-quotes\/assistant\/intake","base_path":"\/api\/v1\/vehicle-quotes\/assistant\/intake","interaction":"server_held_draft_workflow","requires_customer_login":false,"requires_staff_login":false,"requires_agent_preapproval":false,"rate_limited":true,"session_token":{"issued_by":"contact_or_message_start","required_after_draft_creation":true},"customer_consent":{"required_for_submit":true,"field":"customer_consent.confirmed","basis_field":"customer_consent.basis","accepted_basis":["customer_requested_quote"]},"endpoints":{"session":"\/api\/v1\/vehicle-quotes\/assistant\/intake\/session","message":"\/api\/v1\/vehicle-quotes\/assistant\/intake\/message","contact":"\/api\/v1\/vehicle-quotes\/assistant\/intake\/contact","category":"\/api\/v1\/vehicle-quotes\/assistant\/intake\/category","pickup":"\/api\/v1\/vehicle-quotes\/assistant\/intake\/pickup","delivery":"\/api\/v1\/vehicle-quotes\/assistant\/intake\/delivery","vehicle":"\/api\/v1\/vehicle-quotes\/assistant\/intake\/vehicle","vehicle_detail":"\/api\/v1\/vehicle-quotes\/assistant\/intake\/vehicle-detail","drivable":"\/api\/v1\/vehicle-quotes\/assistant\/intake\/drivable","dimension_check":"\/api\/v1\/vehicle-quotes\/assistant\/intake\/dimension-check","confirm":"\/api\/v1\/vehicle-quotes\/assistant\/intake\/confirm","summary":"\/api\/v1\/vehicle-quotes\/assistant\/intake\/summary","submit":"\/api\/v1\/vehicle-quotes\/assistant\/intake\/submit"},"recommended_use":"Use this workflow when the agent, chat, voice, or customer does not already have a complete unambiguous vehicle quote payload."},"submission_endpoint":{"url":"https:\/\/moving.allianceremovals.com.au\/api\/v1\/vehicle-quotes\/assistant\/submit","path":"\/api\/v1\/vehicle-quotes\/assistant\/submit","method":"POST","content_type":"application\/json","requires_customer_login":false,"requires_staff_login":false,"requires_agent_preapproval":false,"rate_limited":true,"customer_consent":{"required":true,"field":"customer_consent.confirmed","basis_field":"customer_consent.basis","accepted_basis":["customer_requested_quote"]},"idempotency":{"preferred_field":"idempotency_key","required":false,"server_fingerprint_when_missing":true},"tenant_resolution":{"field":"tenant","required":false,"default":"resolved_from_request_host_or_single_active_tenant","guidance":"Public agents should omit tenant unless they have a separately agreed tenant slug. Moveroo resolves the tenant from the quote host."},"locality_resolution":{"accepted_inputs":["locality_id","city\/state\/postcode","query\/text"],"strong_match_behavior":"Moveroo auto-confirms a single strong match, including common city labels that map to canonical localities such as Brisbane City QLD 4000.","ambiguous_match_behavior":"422 responses include suggestions keyed by pickup or delivery; retry with the chosen locality_id."},"required_fields":["origin_domain","customer.name","customer.email","customer.phone","pickup.city or pickup.locality_id","delivery.city or delivery.locality_id","vehicle.make","vehicle.model","vehicle.year","vehicle.is_drivable","customer_consent.confirmed","customer_consent.basis"],"optional_fields":["tenant","idempotency_key","channel","surface","vehicle.category","vehicle.condition","vehicle.has_working_brakes","vehicle.can_roll","vehicle.has_keys","vehicle.is_damaged","vehicle.description","timing.preferred_date","timing.is_flexible","notes"],"conditional_required_fields":[{"when":{"field":"vehicle.is_drivable","equals":false},"required":["vehicle.condition"]},{"when":{"field":"vehicle.is_drivable","equals":false},"required":["vehicle.has_working_brakes","vehicle.can_roll","vehicle.has_keys","vehicle.is_damaged"]},{"when":{"field":"vehicle.is_damaged","equals":true},"required":["vehicle.damage_details"]}],"example_payload":{"origin_domain":"moving.allianceremovals.com.au","customer_consent":{"confirmed":true,"basis":"customer_requested_quote"},"customer":{"name":"Example Customer","email":"customer@example.com","phone":"0400000000"},"pickup":{"city":"Brisbane","state":"QLD"},"delivery":{"city":"Sydney","state":"NSW"},"vehicle":{"category":"standard_vehicle","make":"Toyota","model":"Corolla","year":2020,"is_drivable":true}},"initial_status_label":"Pending","provider_distribution":"preserves_current_vehicle_quote_workflow_and_provider_automation_rules"},"public":true,"intended_use":"Submit or hand off customers who need a car, motorcycle, caravan, trailer, boat, or machinery transport quote."},{"key":"contact","label":"Contact support","interaction":"public_agent_api_or_browser_handoff","directApiSubmission":true,"entry_url":"https:\/\/moving.allianceremovals.com.au\/contact","method":"GET","submission_endpoint":{"url":"https:\/\/moving.allianceremovals.com.au\/api\/v1\/callbacks\/assistant\/request","path":"\/api\/v1\/callbacks\/assistant\/request","method":"POST","content_type":"application\/json","requires_customer_login":false,"requires_staff_login":false,"requires_agent_preapproval":false,"rate_limited":true,"customer_consent":{"required":true,"field":"customer_consent.confirmed","basis_field":"customer_consent.basis","accepted_basis":["customer_requested_callback"]},"idempotency":{"preferred_field":"idempotency_key","required":false,"server_fingerprint_when_missing":true},"availability":{"source":"public contact callback booking slots","slot_field":"slot","slot_format":"ISO-8601 datetime token from the contact page callback slot list","unavailable_behavior":"422 response on missing, invalid, already booked, or no-longer-selectable slots."},"required_fields":["origin_domain","customer.name","customer.email","customer.phone","slot","customer_consent.confirmed","customer_consent.basis"],"optional_fields":["idempotency_key","channel","surface","agent.name","agent.platform","notes"],"example_payload":{"origin_domain":"moving.allianceremovals.com.au","customer_consent":{"confirmed":true,"basis":"customer_requested_callback"},"customer":{"name":"Example Customer","email":"customer@example.com","phone":"0400000000"},"slot":"2026-07-08T10:00:00+10:00","notes":"Customer asked for a callback about a quote."}},"public":true,"intended_use":"Book or hand off callback requests when the customer has asked the team to call them at an available callback time."}],"private_surfaces_excluded":["admin","customer_portal","provider_portal","payments","webhooks","signed_resume_links","internal_diagnostics"],"agent_guidance":["Agents may read this manifest and direct users to the listed public browser handoff URLs.","Agents may submit household and vehicle quote requests through the declared public agent endpoints when the customer has asked for a quote and the consent fields are present.","Agents may request callback times through the declared public agent callback endpoint when the customer has asked for a callback and the consent fields are present.","Agents must not submit bookings, payments, webhooks, or private customer\/provider\/admin workflows through unauthenticated crawling."]}