Create Quick Report

Create Quick Report

POST https://api.ocamba.com/v2/adex/quick-reports
Creates a user-defined Quick Report. System reports are not created via this API. Server sets company_id, creator_id, and system.

Note
Do not send id, company_id, creator_id, or system.

Rate limits:

  • Burst: 10/s
  • Steady: 150/m

Request schema

body

Response schemas

curl -X POST \
 "https://api.ocamba.com/v2/adex/quick-reports" \
  -H "Authorization: Bearer {TOKEN}" \
  -H "Content-Type: application/json" \
  -d '{
  "name": "My zones",
  "description": "Zone breakdown",
  "type": "flat_table",
  "ds": {
    "fields": "exchange_name,income",
    "source": "adex.exchange",
    "limit": "10",
    "order": {
      "field": "income",
      "op": "-"
    }
  },
  "labels": [
    "zones"
  ]
}'
const url = 'https://api.ocamba.com/v2/adex/quick-reports';
const options = {
  method: 'POST',
  headers: {
    Authorization: "Bearer {TOKEN}",
    'Content-Type': "application/json"
  },
  body: JSON.stringify(
    {
      "name": "My zones",
      "description": "Zone breakdown",
      "type": "flat_table",
      "ds": {
        "fields": "exchange_name,income",
        "source": "adex.exchange",
        "limit": "10",
        "order": {
          "field": "income",
          "op": "-"
        }
      },
      "labels": [
        "zones"
      ]
    }
  )
};

try {
  const response = await fetch(url, options);
  const data = await response.json();
  console.log(data);
} catch (error) {
  console.error(error);
}
$ch = curl_init("https://api.ocamba.com/v2/adex/quick-reports");
curl_setopt($ch, CURLOPT_HTTPHEADER, [
  "Authorization: Bearer {TOKEN}",
  "Content-Type: application/json"
]);
curl_setopt($ch, CURLOPT_POSTFIELDS, json_encode(
  [
    "name" => "My zones",
    "description" => "Zone breakdown",
    "type" => "flat_table",
    "ds" => [
      "fields" => "exchange_name,income",
      "source" => "adex.exchange",
      "limit" => "10",
      "order" => [
        "field" => "income",
        "op" => "-"
      ]
    ],
    "labels" => [
      "zones"
    ]
  ]
));
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
$response = curl_exec($ch);

Responses

201 Created

{
  "id": "501",
  "company_id": "200",
  "creator_id": "1000077",
  "name": "My zones",
  "description": "Zone breakdown",
  "system": 0,
  "ds": {
    "fields": "exchange_name,income",
    "source": "adex.exchange",
    "limit": "10",
    "order": {
      "field": "income",
      "op": "-"
    }
  },
  "type": "flat_table",
  "labels": [
    "zones"
  ],
  "deprecated": 0,
  "create_time": "2026-03-20 14:00:00",
  "update_time": "2026-03-20 14:00:00"
}

400 Bad Request

{
  "code": 400,
  "title": "Bad request.",
  "message": "The request is not valid.",
  "trace_id": "99a84211-f73d-4ff8-acdf-eb3e06bb9d62"
}

403 Forbidden

{
  "code": 403,
  "title": "Forbidden",
  "message": "You are not allowed to perform this action.",
  "trace_id": "99a84211-f73d-4ff8-acdf-eb3e06bb9d62"
}

500 Internal Server Error

{
  "code": 500,
  "title": "Internal server error.",
  "trace_id": "99a84211-f73d-4ff8-acdf-eb3e06bb9d62"
}
Responses