API Documentation
  • Introduction
  • Getting Started
  • Signature
  • Bet Card API
    • Calculator
      • Finance details
    • Jackpot
      • Get Jackpot Cards
      • Get Jackpot Card by code
      • Pick Jackpot Bets
    • Quicktip
      • Get Quicktip Cards
      • Get Quicktip Card by code
    • Smartbet
      • Get Smartbert cards
      • Get Smartbet Card by code
      • Generate a Smartbet
    • Quickbet
      • Get Quickbet Cards
      • Get Quickbet Card by code
    • Superbet
      • Get Superbet Cards
      • Get Superbet Card by code
  • Bet Engine API
    • Headers
    • Create ticket endpoint
      • Quicktip
      • Smartbet
      • Quickbet
      • Superbet
      • Jackpot
    • Reserve ticket endpoint
      • Quicktip
      • Smartbet
      • Quickbet
      • Superbet
      • Jackpot
    • Paid ticket endpoint
    • Get ticket endpoint
    • Get ticket list endpoint
    • Fields
    • Error codes
  • PAM Platform API
    • Headers
    • Signature
    • Ping
    • Identify
    • Create a ticket
    • Reserve the ticket
    • Update the ticket
    • Close the ticket
    • Refund the ticket
    • Win the ticket
    • Lose the ticket
    • Void the ticket
    • Discard the ticket
    • Rollback the ticket
  • SMS notifications
    • Headers
    • Signature
    • Notification types
      • otp
      • ticket_status
      • bet_result (not supported)
  • API Docs
    • [api /bc] Bet Card
    • [api /be] Bet Engine
Powered by GitBook
On this page
  1. SMS notifications

Signature

Generate HMAC hash signature to check that SMS notification is actually coming from us.

PreviousHeadersNextNotification types

Last updated 10 months ago

The Signature is calculated based on the timestamp, request body and your Secret Key with HMAC hash using SHA256 Algorithm.

Here is an example on how to generate the Signature for otp type with Secret Key=12345ABCDE, timestamp=1706191612 and following request body:

{
  "type": "otp",
  "data": {
    "code": "1234",
    "msisdn": "+260977223120"
  }
}

In order to generate the Signature all spaces must be removed from the request body:

{"type":"otp","data":{"code":"1234","msisdn":"+260977223120"}}

Please note that the order of the fields matters for calculating the signature. It will always be type first then data. Fields in data must be in the same order they are listed on doc pages for types.

Then message for HMAC algorithm has to be formed using following template:

{timestamp}{request body with removed spaces}

So the message should look like the following:

1706191612{"type":"otp","data":{"code":"1234","msisdn":"+260977223120"}}

The computed Signature for this request is:

46b1ec8d2a05129bb57c8256f2cdd3029b2cf72dbed57f0d3eedd6b156573433

A free online HMAC Generator for testing is available on .

Here is how we calculated the Signature from above example using Free Formatter

Your Secret Key is located on your API Settings page. Login to Betstack to access your Secret Key

https://www.freeformatter.com/hmac-generator.html#before-output
Secret Key is locate in API Settings profile page