> ## Documentation Index
> Fetch the complete documentation index at: https://docs.tako.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Data Graph

export const CodingAgentCTA = ({description, href}) => <p className="mt-2 text-lg prose prose-gray dark:prose-invert [&>*]:[overflow-wrap:anywhere]">
    {description} Building with a coding agent?{" "}
    <a href={href}>Give your agent the full reference →</a>
  </p>;

<CodingAgentCTA description="Discovery endpoints that tell your agent what data Tako has. Resolve names to graph nodes, explore their relationships, then pin them into Search for grounded results. No credits consumed." href="/documentation/integrating-tako/data-graph/for-coding-agent" />

<Card title="Skip the wiring — install the tako-graph-agent skill" icon="wand-magic-sparkles" href="/documentation/integrations/agent-skills/graph-agent" horizontal>
  One command teaches your coding agent this whole workflow: resolve names to nodes, read what data exists, compose pinned searches, and report gaps honestly.
</Card>

## When to use the Data Graph

The Data Graph is Tako's index of what its curated data covers. Every entity (companies, countries, teams, commodities) and every metric (revenue, CPI, win percentage) is a node, and real relationships connect them.

Query the Data Graph before you call [Search](/documentation/integrating-tako/search/overview). Your agent then searches for data that exists, pins the nodes it resolved, and reports what's missing. Use it when:

<CardGroup cols={2}>
  <Card title="You want to know what Tako has before you search" icon="map">
    Resolve a name, such as `Nvidia` or `inflation`, to real graph nodes, then read what data exists for them. You spend searches on confirmed coverage instead of on guesses.
  </Card>

  <Card title="You want deterministic grounding" icon="anchor">
    Pin resolved node ids into Search with `sources.data.node_ids`, and each pinned node becomes a retrieval candidate. To return only the cards that match your nodes, add `strict: true`.
  </Card>

  <Card title="You want real relationships, not model memory" icon="diagram-project">
    Read competitors, subsidiaries, industry peers, and cohort members off named graph edges such as `rel:competes_with` and `members`. A database read replaces the recalled list that produces a hallucinated comparison.
  </Card>

  <Card title="You want honest gaps" icon="scale-balanced">
    If the Data Graph can't ground part of a question, your agent can say so: "Tako has X and Y, but not Z." An empty result is an honest answer, not a failure.
  </Card>
</CardGroup>

## Endpoints

| Endpoint | What it does |
| - | - |
| **[Graph Search](/api-reference/graph-search)** `GET /v1/graph/search` | Resolve a name to nodes. `nvidia` returns the company node, with its id, aliases, and description. |
| **[Graph Related](/api-reference/graph-related)** `GET /v1/graph/related` | List what a node connects to: its metrics, its entities, its named relations, and its cohorts. |
| **[Graph Node](/api-reference/graph-node)** `GET /v1/graph/node/{id}` | Look up one node by id. Use it to verify an id you read off a card. |

## Free to call

<CardGroup cols={2}>
  <Card title="No credits consumed" icon="coins">
    Graph calls use the same `X-API-Key` header as every Tako endpoint, and they consume no credits. Rate limits are the only bound: 180 calls per minute, and 10,000 per day.
  </Card>

  <Card title="Explore the Data Graph at tako.com/data" icon="compass" href="https://tako.com/data">
    Sign in to your Tako account and browse the Data Graph. Search any entity or metric, walk its relationships, and see what your agent sees before you write any code.
  </Card>
</CardGroup>

<Warning>
  **Warning:** A listed metric doesn't prove that Tako covers that exact entity-and-metric pair. A node's related metrics come from the datasets that cover the entity, so treat a listed metric as strong evidence and confirm it with a search.

  The Data Graph also isn't the whole index. Stock prices, market quotes, rankings, and overviews often sit outside it, and [Search](/documentation/integrating-tako/search/overview) still returns them. If the Data Graph returns a thin result for an entity you expect Tako to cover, search anyway before you report a gap.
</Warning>

## Example: discover, then search

<Steps>
  <Step title="Resolve the entity">
    ```bash theme={null}
    curl "https://tako.com/api/v1/graph/search?q=nvidia&types=entity" \
      -H "X-API-Key: $TAKO_API_KEY"
    ```

    The response holds nodes with `id`, `name`, `aliases`, and `subtype`. Pick the company node and keep its `id`.
  </Step>

  <Step title="See what data exists for it">
    ```bash theme={null}
    curl "https://tako.com/api/v1/graph/related?node_id=$NODE_ID&relation=metrics&q=revenue" \
      -H "X-API-Key: $TAKO_API_KEY"
    ```

    The response holds the metrics that match "revenue", ranked by popularity and match strength. These are the combinations Tako covers.
  </Step>

  <Step title="Search, pinned to what you resolved">
    ```bash theme={null}
    curl -X POST https://tako.com/api/v3/search \
      -H "X-API-Key: $TAKO_API_KEY" \
      -H "Content-Type: application/json" \
      -d '{
        "query": "Nvidia quarterly revenue",
        "sources": { "data": { "node_ids": ["'$NODE_ID'"] } }
      }'
    ```

    Search makes every pinned node a retrieval candidate and boosts it. Organic results don't change.
  </Step>
</Steps>

## Next steps

* **[For your coding agent](/documentation/integrating-tako/data-graph/for-coding-agent)** — the complete build reference: every parameter, label boost, relation kind, response shape, and common mistake.
* Building an agentic app? Install the **[tako-graph-agent skill](/documentation/integrations/agent-skills/graph-agent)**. It packages the discover, ground, and report-gaps loop for your coding agent.


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.