POST endpoints: HTTP Basic Auth (client ID = username, client secret = password) plus header X-Wallet: Token YOUR_TOKEN.
GET (single SMS): Credentials can be passed as query parameters: clientid, clientsecret, token.
GET (status): Basic Auth only (clientid/clientsecret).
Common variables (set these in Postman or your app):
Variable
Description
clientid
Your client ID
clientsecret
Your client secret
token
Wallet/API token
from
Sender name (e.g. MyCompany)
to
Recipient number (e.g. 23230123456)
content
Message text
reference
Your reference ID
callbackUrl
Optional webhook URL for delivery callbacks
GET/v1/messages/sms
Send a single SMS using URL parameters. No HTTP Basic Auth required; credentials are sent as query params.
Query parameters
Parameter
Required
Description
clientid
Yes
Client ID
clientsecret
Yes
Client secret
token
Yes
API token
from
Yes
Sender name
to
Yes
Recipient number (e.g. 23230123456)
content
Yes
Message body
reference
No
Your reference
callbackUrl
No
Webhook URL for delivery callback
# Example (replace credentials and params)
curl -X GET "https://api.sierrahive.com/v1/messages/sms?clientid=YOUR_ID&clientsecret=YOUR_SECRET&token=YOUR_TOKEN&from=MyApp&to=23230123456&content=Hello&reference=ref_1"
When you provide CallbackUrl (or callbackUrl) on a send request, we POST a JSON payload to your URL when the transaction is finalized. Use it to update your records or trigger downstream logic.
Payload fields
Field
Description
ClientReference
Your reference (e.g. the Reference you sent)
Ticket
Transaction ID from Apphive (use with GET /v1/transactions/{ticket}/status if needed)
Destination
Recipient number (e.g. 23230588654)
Cost
Charge applied to your wallet (e.g. 0.2)
BalanceBefore
Wallet balance before this transaction (for accounting)