Skip to main content
Official Bluum SDKs are in development. In the meantime, the API is accessible via standard HTTP from any language.

Using the API directly

The Bluum API uses REST conventions with JSON payloads. Any HTTP client works:
LanguageRecommended client
JavaScript/Node.jsfetch (built-in), axios
Pythonrequests, httpx
Rubynet/http, faraday
Gonet/http
JavaHttpClient (Java 11+), OkHttp
PHPGuzzle, cURL

Authentication helper

All requests use HTTP Basic Auth. Here’s a minimal helper:
class BluumClient {
  constructor(apiKey, apiSecret, baseUrl = 'https://test-service.bluumfinance.com/v1') {
    this.baseUrl = baseUrl;
    this.auth = 'Basic ' + Buffer.from(`${apiKey}:${apiSecret}`).toString('base64');
  }

  async request(method, path, body) {
    const response = await fetch(`${this.baseUrl}${path}`, {
      method,
      headers: {
        'Authorization': this.auth,
        'Content-Type': 'application/json'
      },
      body: body ? JSON.stringify(body) : undefined
    });
    if (!response.ok) throw new Error(`${response.status}: ${await response.text()}`);
    return response.json();
  }

  getAccounts() { return this.request('GET', '/accounts'); }
  createAccount(data) { return this.request('POST', '/accounts', data); }
  getAssets(params) { return this.request('GET', `/assets/list?${new URLSearchParams(params)}`); }
  placeOrder(accountId, order) { return this.request('POST', `/trading/accounts/${accountId}/orders`, order); }
}

OpenAPI specification

The full OpenAPI 3.0 spec is available for code generation:

Coming soon

  • Official Node.js SDK (@bluum-finance/sdk)
  • Official Python SDK (bluum-finance)
  • Webhook signature verification libraries
Contact developer support if you need SDK assistance.