HeyHomie

Integration API

Base URL: heyhomie.me/api/integration/v1

Webhooks

Real-time event notifications for your integration.

Authentication

All endpoints require API key authentication via the X-API-Key header.

Header Example
X-API-Key: your_api_key
Note: API keys are store-specific and must be generated through the HeyHomie dashboard. The store must be on a premium plan and connected to WhatsApp API.

Endpoints

GET/templates

Retrieve a list of WhatsApp templates for your store.

Query Parameters
ParameterTypeRequiredDefaultDescription
limitstringNo50Maximum number of templates to return
completestringNofalseIf true, returns full template details including components
Request Example
curl --location 'https://heyhomie.me/api/integration/v1/templates?limit=50&complete=false' \
--header 'X-API-Key: your_api_key' \
--header 'Accept: application/json'
Response Example
complete=false
{
  "data": [
    {
      "id": "1234567890123456",
      "name": "sample_shipping_confirmation",
      "category": "UTILITY",
      "language": "en",
      "status": "APPROVED",
      "isCarousel": false
    }
  ],
  "paging": {
    "cursors": { "before": null, "after": "cursor_token" }
  },
  "total": 25
}
GET/templates/:id

Retrieve detailed information about a specific template.

Path Parameters
ParameterTypeRequiredDescription
idstringYesTemplate ID
Request Example
curl --location 'https://heyhomie.me/api/integration/v1/templates/1234567890123456' \
--header 'X-API-Key: your_api_key' \
--header 'Accept: application/json'
Response Example
{
  "id": "1234567890123456",
  "name": "sample_shipping_confirmation",
  "category": "UTILITY",
  "language": "en",
  "status": "APPROVED",
  "components": [
    {
      "type": "HEADER",
      "format": "TEXT",
      "text": "Order Confirmation"
    },
    {
      "type": "BODY",
      "text": "Your order #{{1}} will be delivered in {{2}} days.",
      "example": {
        "body_text": [["ORD123", "6-7"]]
      }
    }
  ]
}
POST/send-message

Send a WhatsApp message.

Request Body Schema
FieldTypeRequiredDescription
tostringYesRecipient phone number with country code
typestringYesMust be "template"
templateIdstringYesTemplate ID
templateobjectYesTemplate object with name, language, components

Request Example

curl --location 'https://heyhomie.me/api/integration/v1/send-message' \
--header 'X-API-Key: your_api_key' \
--header 'Content-Type: application/json' \
--data '{
  "to": "919649409088",
  "type": "template",
  "templateId": "1234567890123456",
  "template": {
    "name": "sample_shipping_confirmation",
    "language": {
      "code": "en",
      "policy": "deterministic"
    },
    "components": [
      {
        "type": "BODY",
        "parameters": [
          { "type": "text", "text": "ORD123" },
          { "type": "text", "text": "6-7" }
        ]
      }
    ]
  }
}'

Response Example

{
  "messaging_product": "whatsapp",
  "contacts": [{ "input": "919649409088", "wa_id": "919649409088" }],
  "messages": [{ "id": "wamid.HBgMOTE5NjQ5NDA5MDg4FQIAERgSRjMyRjVCNzE5QjE2RkYwOUI2AA==" }]
}

Error Codes

Status CodeDescription
400Invalid request body or template parameters
401Invalid or missing API key, or store not on premium plan
404Template not found
429Too many requests (Rate limit exceeded)
500Internal server error
WhatsApp