Back to overview
REST API v1

CubicleERP API Documentation

Build powerful integrations with our comprehensive REST API. Access contacts, deals, analytics, and more with simple, well-documented endpoints.

API Overview

The CubicleERP API is organized around REST. It accepts JSON request bodies, returns JSON responses, and uses standard HTTP status codes.

Base URL

https://api.cubicle-erp.com/v1

All API requests are made to this base URL with your resource path appended.

JSON Format

Content-Type: application/json

Send and receive data in JSON. All responses include appropriate status codes.

Versioned

Currently on v1

We version our API to ensure backwards compatibility. Breaking changes get a new version.

Core Endpoints

Here are some of the most commonly used endpoints. Full documentation covers 100+ endpoints across all modules.

GET/api/v1/contactsRetrieve a paginated list of all contacts in your organization.
POST/api/v1/dealsCreate a new deal with associated contact and pipeline stage.
PUT/api/v1/deals/:idUpdate an existing deal's properties, stage, or assigned owner.
GET/api/v1/analytics/revenueFetch revenue analytics with filters for date range and pipeline.
DELETE/api/v1/contacts/:idPermanently remove a contact and optionally cascade to related deals.
POST/api/v1/webhooksRegister a new webhook endpoint for real-time event notifications.
Request
curl -X GET "https://api.cubicle-erp.com/v1/contacts" \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "limit": 10,
    "sort": "created_at:desc"
  }'
Response (200 OK)
{
  "data": [
    {
      "id": "cnt_8xk2m9",
      "name": "Jane Cooper",
      "email": "jane@example.com",
      "company": "Acme Inc",
      "created_at": "2026-03-15T10:30:00Z"
    }
  ],
  "meta": {
    "total": 1284,
    "page": 1,
    "limit": 10
  }
}

Authentication

The CubicleERP API uses Bearer token authentication. Include your API key in the Authorization header of every request.

  • API keys are scoped to your organization
  • Support for read-only and read-write keys
  • OAuth 2.0 available for third-party integrations
  • Keys can be rotated at any time from the dashboard
  • All requests must be made over HTTPS
authentication.sh
# Include your API key in the header
Authorization: Bearer cbk_live_a1b2c3d4e5f6

# Example authenticated request
curl https://api.cubicle-erp.com/v1/me \
  -H "Authorization: Bearer cbk_live_a1b2c3d4e5f6"

# Response
{
  "id": "org_x9k2m4",
  "name": "Your Organization",
  "plan": "business",
  "api_calls_remaining": 498000
}

Rate Limits

Rate limits vary by plan. If you exceed your limit, the API returns a 429 status code with a Retry-After header.

PlanRequests / MinuteDaily LimitBurst Rate
Free100 / minute5,000 / day20 / second
Pro500 / minute50,000 / day100 / second
Business2,000 / minute500,000 / day500 / second
EnterpriseCustomUnlimitedCustom

Official SDKs

Get started quickly with our official libraries. Each SDK wraps the REST API with idiomatic methods for your language.

N
Node.js
npm install @cubicle-erp/sdk
const Cubicle = require("@cubicle-erp/sdk");
const client = new Cubicle({ apiKey: "YOUR_KEY" });

const contacts = await client.contacts.list({
  limit: 25,
  sort: "created_at:desc"
});
P
Python
pip install cubicle-erp
from cubicle_erp import CubicleClient

client = CubicleClient(api_key="YOUR_KEY")

contacts = client.contacts.list(
    limit=25,
    sort="created_at:desc"
)
P
PHP
composer require cubicle-erp/sdk
use CubicleERP\Client;

$client = new Client(["apiKey" => "YOUR_KEY"]);

$contacts = $client->contacts->list([
    "limit" => 25,
    "sort" => "created_at:desc"
]);
R
Ruby
gem install cubicle_erp
require "cubicle_erp"

client = CubicleERP::Client.new(api_key: "YOUR_KEY")

contacts = client.contacts.list(
  limit: 25,
  sort: "created_at:desc"
)

Getting Started

From zero to your first API call in under 5 minutes.

1

Create an API key

Navigate to Settings > API Keys in your CubicleERP dashboard and generate a new key.

2

Install an SDK

Choose the SDK for your language and install it via your package manager.

3

Make your first request

Initialize the client with your API key and call any endpoint to verify your setup.

4

Go to production

Set up webhooks, configure error handling, and you are ready to ship.

Ready to transform your business?

Join thousands of businesses using CubicleERP to streamline operations and boost productivity.