BoomFi's API has been implemented around RESTful. Our API uses standard HTTP protocols where JSON payloads are returned in response to the HTTP requests. All operations can be performed via GET, POST, PUT, PATCH and DELETE requests.

Authentication

Our API uses the API Key security schema to authenticate HTTP requests. These keys are unique alphanumeric codes or tokens generated by BoomFi as an API provider to authorize and authenticate access to their API. Think of it as a digital "key" that opens the door to specific API endpoints, ensuring that only authorized users or systems can request and retrieve data.

📘

API Key creation

BoomFi never stores the API key post-creation (only shown once when creating) and cannot help recover any user key.

The API Key is a critical element in our business operations, providing a secure and efficient way to access and utilize data, services, or resources offered by our application programming interface (API). In BoomFi, we use the x-api-method to protect information. This means you must include the x-api-key on the headers of each request. The following provides an example of how this should be done:

curl --request GET \
     --url https://mapi.boomfi.xyz/customers \
     --header 'accept: application/json' \
     --header 'x-api-key: <YOUR_API_KEY>'

🚧

Keep your keys safe

It is important to avoid sharing your secret API keys in public places like Github or Bitbucket since it can allow malicious API calls.

Standardized responses

BoomFi's API follows specific response patterns to ensure consistency and clarity in data retrieval and error handling. These response patterns provide a standardized format for interpreting API responses, facilitating seamless integration and error handling within your applications.

Single Item Response

When the call to BoomFi's API returns a single item in the response, this response will follow the pattern presented below:

{ 
    "data": ... 
}

Paginated Response

Whenever the call to the API returns a paginated response, it will present an array of items, a pointer to the next page, and the total number of items. Similar to the example below:

{ 
    "items": [{...}, {...}], 
    "next": 1, 
    "total": 10 
}

Error Response

This pattern represents an error response, including error code, message, and any additional error details, exemplified below:

{ 
    "error": true, 
    "data": { 
        "code": #, 
        "message": "...", 
        "errors": [ ... ] 
    } 
}

HTTP Response Codes

BoomFi utilizes standard HTTP response codes to indicate the success or failure of API requests:

  • Codes in the 2xx range usually indicate success.
  • Codes in the 4xx range indicate an error occurred based on the provided information.
  • Codes in the 5xx range indicate an internal error.