Submit multi-location interest form (lead capture)

Overview

Public lead-capture form for prospects with multiple locations. Validates a Google reCAPTCHA v3 token and records the enquiry for sales follow-up. Does not create a user account (the multi-location interest email has been retired; the lead is still captured for the sales team). However, each email address can only be submitted once.

Prerequisites

  • No authentication — this endpoint is public.

Base URL

EnvironmentURL
Productionhttps://production-api.shoutaboutus.com
Developmenthttps://development-api.shoutaboutus.com

Endpoint

POST /api/v1/signup/multi-location-signup

Authentication

  • No bearer token required.

  • Public — no bearer token (auth: noauth).

Rate limit

  • 10 requests/min per IP. Public route.

Request body

FieldTypeRequiredDescription
first_namestringRequired2–100 chars; no angle brackets.
last_namestringRequired≤100 chars; no angle brackets.
phonestringOptional9–15 chars.
emailstringRequiredValid email; unique across users and multi_location_sign_ups.
companystringRequired≤255 chars; no angle brackets.
number_of_locationsstringOptionalFree-text count of locations.
notesstringOptional≤4000 chars; no angle brackets.
hear_about_usstringRequiredOne of Website or Blog, Social Media, Referral, Other.
hear_othersstringOptional≤255 chars.
token_v3stringRequiredGoogle reCAPTCHA v3 token; verified server-side.
{
  "first_name": "John",
  "last_name": "Doe",
  "phone": "5551234567",
  "email": "[email protected]",
  "company": "Acme Corp",
  "number_of_locations": "10",
  "notes": "We have locations across 5 states.",
  "hear_about_us": "Referral",
  "hear_others": null,
  "token_v3": "YOUR_RECAPTCHA_V3_TOKEN"
}

How it works

  • Synchronous. 200 on success.
  • 422 on validation failure (including duplicate email or a failed reCAPTCHA check).

Response

200 OK · 200

{
  "data": {
    "status": "success",
    "response": "Thanks for reaching out! Our team will get back to you within one business day."
  }
}

422 Validation error · 422

{
  "message": "This email has already been used.",
  "errors": {
    "email": [
      "This email has already been used."
    ],
    "token_v3": [
      "The token v3 field is required."
    ]
  }
}

Errors

StatusMeaning
422Validation error
500Unexpected server error

Example request

curl --request POST \
  --url "https://production-api.shoutaboutus.com/api/v1/signup/multi-location-signup" \
  --header 'Accept: application/json' \
  --header 'Content-Type: application/json' \
  --data '{"first_name": "John", "last_name": "Doe", "phone": "5551234567", "email": "[email protected]", "company": "Acme Corp", "number_of_locations": "10", "notes": "We have locations across 5 states.", "hear_about_us": "Referral", "hear_others": null, "token_v3": "YOUR_RECAPTCHA_V3_TOKEN"}'

Did this page help you?