Skip to content

2 spots left

Get my price

Public API for agents and integrations.

List our services, calculate a price and send a project request over HTTP. No authentication, JSON in and out, and a full OpenAPI 3.1 description.

Endpoints

  • GET /api/services

    Every service with starting prices, tiers and the question ids the estimate endpoint understands.

  • POST /api/quote/estimate

    A price range for one or more services. Read-only: it stores nothing and sends nothing to the team.

  • POST /api/contact

    Sends a project request to the team. Only call it when a person asked you to, with their own name and email.

  • POST /api/quote

    Creates a full quote with contact details, exactly as the quote page does.

  • POST /api/quote/feedback

    Records how a quoted price felt, with an optional budget.

Estimate a price

Pass service ids and, optionally, answers keyed by question id. Question and option ids are listed at /api/services. Currency can be USD, GBP or EUR.

curl -X POST https://madeyouviral.com/api/quote/estimate \
  -H "Content-Type: application/json" \
  -d '{"services":["websites","meta-ads"],"answers":{"websites.type":"business","websites.pages":"p12","meta-ads.spend":"s2"},"currency":"USD"}'

Send a project request

The team receives it straight away and replies by email. Use it only when a person has asked you to contact us.

curl -X POST https://madeyouviral.com/api/contact \
  -H "Content-Type: application/json" \
  -d '{"name":"Alex Rivera","email":"[email protected]","services":["websites"],"message":"We need a booking website for a new clinic.","source":"api"}'

Limits and errors

  • Requests are rate limited per IP address. A 429 means wait a few minutes.
  • Invalid input returns 422 with a fields object mapping each field to a message.
  • Bodies must be JSON and under 32 KB.
Get my priceChat on WhatsApp

off your first project

Only 2 project spots left this month