Skip to main content

Send single message

You can use send message API to send messages, including text, media, addresses, options, and product messages.

Request parameters

NameTypeRequired/OptionalDescription
mediumstringRequiredMessages will be send through this medium( whatsapp for now )
contactIdentifierstringRequiredPhone number of user
typestringRequiredMessage type( text, image, video, document, options, buttons, address, single_product, multiple_product)
businessPhoneNumberstringOptionalBusiness phone number from which you want to send the message
payloadBikTextMessagePayload or BikMediaMessagePayload or BikInteractiveMessagePayload or BikAddressMessagePayload or BikProductMessagePayloadRequiredMessage object type. Check the BikTextMessagePayload, BikMediaMessagePayload, BikInteractiveMessagePayload, BikAddressMessagePayload, BikProductMessagePayload type here.
callbackDatastringOptionalV2 only. Stringified JSON (max 1024 characters) for passing metadata (e.g. order ID, campaign name). Must be valid, parseable JSON. This value is echoed back in status-update and link-click webhooks.

Callback data (callbackData) — V2 only

callbackData is supported only in the Send Message V2 API. It is not available in the deprecated V1 API.

Use callbackData to attach metadata to the message that will be returned in delivery/status and link-click webhooks (e.g. for order mapping, campaign attribution, or analytics).

  • Format: A string containing valid JSON (e.g. JSON.stringify({ "order_id": "ORD123", "campaign": "summer_sale" })).
  • Validation: Must be a non-empty string, parseable as JSON, and must not exceed 1024 characters. If validation fails, the request returns 400 with an error message.

Request Information

CategoryValue
Http requestPOST
URLhttps://bikapi.bikayi.app/integrations/bikPlatformFunctions-messages/v2/sendMessage

Sample request

curl --location 'https://bikapi.bikayi.app/integrations/bikPlatformFunctions-messages/v2/sendMessage' \
--header 'Authorization: Basic AUTH_TOKEN' \
--header 'Content-Type: application/json' \
--data-raw '{
"contactIdentifier": "+919900990090",
"medium": "whatsapp",
"type": "text",
"payload": {
"message": "This is a test message."
},
"callbackData": "{\"order_id\":\"ORD123\",\"campaign\":\"summer_sale\"}"
}'

JSON response example:

{
"status": 200,
"success": true,
"data": {
"id": "wamid.HBgMOTE5OTM4NDM4MTM4FQIAERgSMTJCRTg3M0MxREkUzQatyAaaqA=="
}
}

Response parameters

NameTypeDescription
statusnumberResponse status
successbooleanIs successful response or not
dataResponseMessage ID in the response

Errors

Error CodeMeaning
400Invalid payload -- Your request is invalid.
401Unauthorized -- User is not authenticated.
404Not Found -- The specified API could not be found.
500Internal Server Error -- We had a problem with our server. Try again later.

Error response example:

{
"status": 400,
"errors": [
{
"message": "'message' is required"
}
]
}