Hushmetrics API
Programmatically create and manage leads in your workspace. All requests use JSON and are served under the /v1 prefix.
Base URL
All API requests are made to the following base URL. Every endpoint is prefixed with /v1.
https://api.hushmetrics.com/v1Error Handling
The API uses standard HTTP status codes. Successful requests return 201 for resource creation and 200 for other successes. Errors return a JSON object with a message.
| Code | Meaning |
|---|---|
200 | Success |
201 | Created — resource successfully created |
400 | Bad Request — missing or invalid parameters |
404 | Not Found — workspace or resource not found |
500 | Internal Server Error |
Leads
Create and ingest leads into your workspace.
/v1/create-leadCreate a new lead in the specified workspace. Returns the full lead object on success.
Parameters
| Parameter | Type | In | Description |
|---|---|---|---|
workspace_idrequired | string (uuid) | body | Workspace to attach the lead to. |
name | string | body | Lead's full name. Defaults to "". |
email | string | body | Lead's email address. Defaults to "". |
phone | string | body | Lead's phone number. Defaults to "". |
status | enum | body | Lead status: contact, qualified, proposal, negotiation, won, lost. Defaults to "contact". |
source | enum | body | Where the lead came from: website, referral, social, ad, email, cold_call, other. Defaults to "other". |
value | number | body | Monetary value of the lead. Defaults to 0. |
created_by | string (uuid) | null | body | Profile ID of the user who created the lead. |
utm | object | null | body | UTM tracking parameters (e.g. utm_source, utm_medium, utm_campaign). |
extra_data | object | null | body | Arbitrary JSON object for any additional lead metadata. |
page_url | string | null | body | URL of the page where the lead was captured. |
Request
curl -X POST https://api.hushmetrics.com/v1/create-lead \
-H "Content-Type: application/json" \
-d '{
"workspace_id": "your-workspace-id",
"name": "Jane Doe",
"email": "jane@example.com",
"phone": "+1234567890",
"source": "website",
"value": 500,
"utm": { "utm_source": "google", "utm_medium": "cpc" },
"extra_data": { "company": "Acme Inc", "role": "CTO" },
"page_url": "https://example.com/pricing"
}'Response— 201 Created
{
"id": "a1b2c3d4-...",
"workspace_id": "your-workspace-id",
"name": "Jane Doe",
"email": "jane@example.com",
"phone": "+1234567890",
"status": "contact",
"source": "website",
"value": 500,
"created_by": null,
"utm": { "utm_source": "google", "utm_medium": "cpc" },
"extra_data": { "company": "Acme Inc", "role": "CTO" },
"page_url": "https://example.com/pricing",
"created_at": "2026-03-09T12:00:00+00:00",
"updated_at": "2026-03-09T12:00:00+00:00"
}/v1/webhook/{workspace_id}Universal webhook endpoint for WordPress, Framer, and any platform that can POST form data or JSON. The workspace ID is in the URL — just paste the URL into your form plugin.
Parameters
| Parameter | Type | In | Description |
|---|---|---|---|
name | string | body | Lead's full name. Defaults to "". |
email | string | body | Lead's email address. Defaults to "". |
phone | string | body | Lead's phone number. Defaults to "". |
source | enum | body | Lead source. Invalid values default to "other". |
value | number | body | Monetary value of the lead. Defaults to 0. |
page_url | string | body | URL of the page where the lead was captured. Falls back to the Referer header. |
utm_source | string | body | Grouped into utm JSON object automatically. |
utm_medium | string | body | Grouped into utm JSON object automatically. |
utm_campaign | string | body | Grouped into utm JSON object automatically. |
* | any | body | Any other field is stored in extra_data. |
Request
# JSON (Framer, custom integrations)
curl -X POST https://api.hushmetrics.com/v1/webhook/your-workspace-id \
-H "Content-Type: application/json" \
-d '{
"name": "John Smith",
"email": "john@example.com",
"source": "website",
"utm_source": "google",
"utm_medium": "cpc",
"company": "Acme Inc",
"message": "I'd like a demo"
}'
# Form-encoded (WordPress, HTML forms)
curl -X POST https://api.hushmetrics.com/v1/webhook/your-workspace-id \
-d "name=John+Smith&email=john@example.com&source=website&utm_source=google"Response— 201 Created
{
"id": "f7e8d9c0-...",
"workspace_id": "your-workspace-id",
"name": "John Smith",
"email": "john@example.com",
"phone": "",
"status": "contact",
"source": "website",
"value": 0,
"created_by": null,
"utm": { "utm_source": "google", "utm_medium": "cpc" },
"extra_data": { "company": "Acme Inc", "message": "I'd like a demo" },
"page_url": "https://example.com/contact",
"created_at": "2026-03-10T12:00:00+00:00",
"updated_at": "2026-03-10T12:00:00+00:00"
}Utility
Health and status endpoints.
/v1/healthReturns the current status of the API. Use this to verify connectivity.
Request
curl https://api.hushmetrics.com/v1/healthResponse— 200 OK
{
"status": "ok"
}