Skip to content
Dark MatterDark Matter
Quickstarts

First API Call

5-minute quickstart: get an API key, make your first request to GET /positions, and parse the response.

What you will build

You will make your first authenticated API call to list positions and parse the JSON response. This takes about 5 minutes and requires only an HTTP client and an API key. By the end, you will have a working integration ready to extend.

Prerequisites

  • A DMTR account (sign up)
  • An API key from the dashboard (Settings > API Keys)
  • curl, or a code editor with Node.js/Python installed

Step 1: Get an API key

Log in to the DMTR dashboard, go to Settings > API Keys, and create a new key. Copy the key immediately—it is shown only once. For this quickstart, use the sandbox environment so you can experiment without affecting production data.

Step 2: Make your first request

Call the positions endpoint with your API key. Replace YOUR_API_KEY with the key you copied.

curl https://sandbox-api.dmtr.ai/v1/positions \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json"

Step 3: Parse the response

You should receive a JSON response with a data array of positions (or an empty array if none exist). Here is the structure you will see:

200Success
{
  "object": "list",
  "data": [
    {
      "entity_id": "pos_01HXYZ123ABC",
      "status": "active",
      "asset": {
        "type": "fund_lp_interest",
        "fund_id": "fund_01HXYZ456DEF"
      },
      "transfer": {
        "transferable": true,
        "restrictions": []
      },
      "valuation": {
        "amount": "50000.00",
        "currency": "USD",
        "as_of": "2026-03-13T00:00:00Z"
      }
    }
  ],
  "has_more": false,
  "next_cursor": null
}
  • data — Array of Position Objects. Each has entity_id, status, asset, transfer, valuation, and more. See Position Object for the full schema.
  • has_more — true when additional pages exist. Use next_cursor to fetch the next page.
  • next_cursor — Opaque cursor for pagination. Pass as the cursor query parameter to get the next page.

What you learned

You authenticated with an API key, called the positions list endpoint, and received a paginated JSON response. You are ready to explore other endpoints and build integrations.

Next steps

Edit this page on GitHub

Last reviewed: March 13, 2026

Was this page helpful?