API Reference

GHEXIT provides REST APIs for SMS, voice, email, and verification. All responses are JSON.

Authentication

Pass your API key in the Authorization header:

Authorization: Bearer ghexit_live_your_api_key

Generate API keys in Settings → API Keys. Use test keys (ghexit_test_) for development — they won't send real messages.

Base URL: https://ghexit.com/api/v1

Messages

GEThttps://ghexit.com/api/v1/messages

List all messages for your organization.

Response

{ "data": [...], "pagination": { "limit": 20, "offset": 0, "total": 100 } }
POSThttps://ghexit.com/api/v1/messages

Send an SMS or MMS message.

Request body

{ "to": "+15559876543", "body": "Hello!", "from": "+15551234567" }

Response

{ "data": { "id": "uuid", "sid": "SM...", "status": "queued", "to": "...", "body": "..." } }

Voice Calls

GEThttps://ghexit.com/api/v1/calls

List all calls for your organization.

Response

{ "data": [...], "pagination": { ... } }
POSThttps://ghexit.com/api/v1/calls

Initiate an outbound call. Omit url to use a default greeting.

Request body

{ "to": "+15559876543", "from": "+15551234567", "url": "https://example.com/twiml" }

Response

{ "data": { "id": "uuid", "sid": "CA...", "status": "queued", "to": "..." } }

Phone Numbers

GEThttps://ghexit.com/api/v1/phone-numbers

List all phone numbers in your account.

Response

{ "data": [...] }
POSThttps://ghexit.com/api/v1/phone-numbers

Search and provision a new phone number.

Request body

{ "country": "US", "area_code": "415" }

Response

{ "data": { "id": "uuid", "phone_number": "+14155551234", "status": "active" } }

Email

POSThttps://ghexit.com/api/v1/emails

Send a transactional email via Resend.

Request body

{ "to": "[email protected]", "subject": "Hello", "html": "<p>World</p>" }

Response

{ "data": { "id": "uuid", "status": "sent" } }

Verifications

POSThttps://ghexit.com/api/v1/verifications

Start a phone verification (OTP via SMS).

Request body

{ "to": "+15559876543", "channel": "sms" }

Response

{ "data": { "id": "uuid", "status": "pending" } }
POSThttps://ghexit.com/api/v1/verifications/{id}/verify

Check a verification code.

Request body

{ "code": "123456" }

Response

{ "data": { "status": "approved" } }

Webhooks

GEThttps://ghexit.com/api/v1/webhook-endpoints

List registered webhook endpoints.

Response

{ "data": [...] }
POSThttps://ghexit.com/api/v1/webhook-endpoints

Register a new webhook endpoint.

Request body

{ "url": "https://yourapp.com/webhooks", "events": ["message.delivered", "call.completed"] }

Response

{ "data": { "id": "uuid", "url": "...", "secret": "whsec_..." } }

Quick Start — Send your first SMS

curl -X POST https://ghexit.com/api/v1/messages \
  -H "Authorization: Bearer ghexit_live_YOUR_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "to": "+15559876543",
    "body": "Hello from GHEXIT!"
  }'