Home
Release Notes
Home
Release Notes
Linkedin
  1. Home
  • Balad™ Gateway Documentation 📖
  • Get Started
  • Authorization
  • Responses
  • Go Live!
  • FAQs
  • APIs
    • Authentication
      • Token
    • Core
      • Exchange rate
        • Exchange Rates
      • Balance
        • Get Current Balance
      • Secrets
        • Generate Secret
        • Delete Secret
        • Get Secrets
    • Link
      • Sandbox Testing Guide
      • Error Codes
      • Transaction Lifecycle V2
      • Lookups
        • Purposes List
        • Sources List
        • Banks List
        • Relations
      • Transactions
        • Create transaction
        • Update transaction
        • Cancel transaction
        • Get transaction status V2
        • Transactions List
        • Export Transactions List
        • Calculate receiving amount
        • Validate Account
      • Reconciliation
        • Reconciliation
  • Webhooks
    • Link.Transaction.StatusUpdateV2
  1. Home

Responses

Balad APIs follow standard REST principles. Each response contains information about the request’s success or failure and may include error details if something went wrong.
HTTP Status CodeDescription
200Success
400Bad Request (Input / Business Validation)
401Unauthorized
403Forbidden
417Encryption Error – ensure encryption protocols and keys are properly configured
418Configuration Issue – contact your administrator for support
500Internal Server Error

✅ Success (HTTP Status Code: 200)#

A successful response will include a data object and errors set to null.
{
  "data": {
    "prop_1": "XXXXXXXXXXXXXXXXXXX",
    "prop_2": "XXXXXXXXXXXXXXXXXXX",
    "prop_3": "XXXXXXXXXXXXXXXXXXX"
  },
  "errors": null
}
:::

Pagination#

Balad APIs support pagination for endpoints that return lists of data.
The paginated response contains metadata about the current page, page size, and whether there are more records to fetch.

Paginated Response (200)#

A successful response will include a data object and errors set to null.
{
  "data": {
    "page_no": 1,
    "page_size": 10,
    "has_next": true,
    "items": [
      {"abc": "XXXXXX", "xyz": "XXXX"},
      {"abc": "XXXXXX", "xyz": "XXXX"}
    ]
  }
}
INFO
maximum value for the page_size query parameter is 50

Errors (Other HTTP Status Codes)#

Balad APIs return a consistent error response structure whenever a request fails.
All error responses follow the same format:
{
  "data": null,
  "errors": {
    "code": <number>,
    "description": "<string>",
    "field": "<string> (optional)"
  }
}
Important
In case of multiple errors resulting in a 4xx response, the response will include a list of "fields" and an array of error messages as "values" for those fields, explaining the errors for each field. Here is an example for reference.
Single Error Message
Multiple Error Messages
{
  "data": null,
  "errors": {
     "code": 10,
     "description": "XXXX",
     "field": "XXX"
   }
}
Previous
Authorization
Next
Go Live!
Built with