Skip to main content

Overview

The Interstellas API gives you programmatic access to the full suite of features available on the Interstellas dashboard. Built on REST principles, it lets you integrate financial operations, account management, and transaction processing directly into your own application. All endpoints are organised around the core resources you interact with on the dashboard. The API accepts JSON-encoded request bodies, returns JSON-encoded responses, and uses standard HTTP response codes to communicate the outcome of each request.
All API requests must be made over HTTPS. Requests made over plain HTTP will be rejected.
Base URL
https://api.stellasbank.com/v1

Quick Start

Make your first API call in minutes.

Authentication

Manage and rotate your API keys securely.

API Reference

Explore all available endpoints and parameters.

Postman Collection

Test the API interactively with a pre-configured workspace.

Authentication

The Interstellas API uses secret API keys to authenticate requests. Your credentials are issued by the Interstellas team. You will receive a test key for development and a live key for production — always use test keys while building and validating your integration. Pass your API Secret Key in the Authorization header of every request:
Authorization: Bearer YOUR_SECRET_KEY
Your API keys carry significant privileges. Never expose them in client-side code, public repositories, or application logs. Requests made without a valid key will return 401 Unauthorized.

Making Requests

The API supports the standard HTTP methods — GET, POST, PUT, and DELETE. All request bodies must be JSON-encoded and include the Content-Type: application/json header. Each endpoint in this reference includes a sample HTTP request. Insert your credentials and specific parameters to run the call directly.
Download the Interstellas Postman Collection to get a pre-configured workspace with all available endpoints ready to test.

Response Format

All responses are JSON-encoded. The Content-Type response header will always be application/json. Every response follows a consistent envelope structure:
{
  "status": true,
  "message": "Request was successful.",
  "data": {}
}
status
boolean
required
true if the request was processed without errors; false otherwise. Use this field for programmatic checks in your integration logic.
message
string
required
A human-readable description of the outcome. Provides additional context on success and an explanation when status is false.
Log this value for debugging — do not use it for conditional logic in your application.
data
object
The actionable payload returned by the endpoint. Structure varies per endpoint and is present only when the operation produces a result.

Pagination

Endpoints that return collections of resources support page-based pagination. Use the page and limit query parameters to control which subset of records is returned. When pagination applies, the response includes a top-level pagination object alongside data:
{
  "status": true,
  "data": [],
  "pagination": {
    "totalCount": 84,
    "hasNextPage": true,
    "hasPreviousPage": false,
    "nextPage": 2,
    "previousPage": 0,
    "limit": 10,
    "lastPage": 9
  }
}
pagination.totalCount
integer
The total number of records matching the current query, across all pages.
pagination.hasNextPage
boolean
true if additional records exist beyond the current page.
pagination.hasPreviousPage
boolean
true if records exist on pages before the current one.
pagination.nextPage
integer
The page number to pass as ?page= to retrieve the next set of records. Only meaningful when hasNextPage is true.
pagination.previousPage
integer
The page number to pass as ?page= to retrieve the previous set of records. Only meaningful when hasPreviousPage is true.
pagination.limit
integer
The maximum number of records returned per request. Defaults to 10. Override with a limit query parameter — for example, ?limit=25.
pagination.lastPage
integer
The number of the final page of results, derived from totalCount and limit.