# Tako Contents

> Tako Contents is a paid API for AI agents from Tako at tako.com, paid per call via MPP, $0.002/call, status unknown (last checked 2026-10-11).

Downloads the raw content (CSV data or extracted text) behind a Tako search result URL

## Facts

- Endpoint: POST https://tako.com/api/mpp/v1/contents?utm_source=zero.xyz
- Price: $0.002/call
- Payment: MPP
- Status: unknown
- Last checked: 2026-10-11
- Activations on Zero: 0
- Provider: Tako
- Docs: https://tako.com
- Website: https://tako.com
- Tags: data, visualization, charts, research, search, answers, agents, reports, datasets, analytics, ai
- Canonical page: https://www.zero.xyz/c/tako-contents-10755687
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_fR77735roA_GyKh6EVMgM

Status and success rate cover calls made through Zero and Zero's own probes. Third-party monitors may report differently.

## How to call it through Zero

Zero handles the 402 payment challenge and records the run. With the Zero CLI installed (`npm i -g @zeroxyz/cli`):

```sh
zero fetch --capability tako-contents-10755687 -d '<json body>'
```

Example prompt: Grab the CSV data behind this Tako card result — https://tako.com/card/abc123 — and return it inline so I can analyze the numbers directly.

## When to prefer this

Use this endpoint when you have already obtained a result URL from Tako Search or Answer and need to retrieve the underlying raw data or text content behind it. It is the right choice when you want a downloadable CSV from a Tako data card for quantitative analysis, or when you need the extracted text of a web page from a Tako search result. Prefer this over re-searching when you already have the specific card or web URL.

## Known failure modes

- Invalid or non-existent URL returns an error — the URL must be a valid TakoCard.webpage_url or WebResult.url
- Requesting premium=true with content_format=card_json is rejected — premium plumbing is not supported in that format
- max_rows values exceeding 2,000 are clamped silently by the system
- Presigned download URLs are short-lived and will expire if not fetched promptly
- Network or upstream errors may result in empty or partial content responses

## How this service works

Download the content behind a search result

## Output

Returns a ContentsResponse containing one or more content items: for Tako card URLs, a CSV of the card's data rows (up to 2,000 rows by default, billed per 1,000 rows); for web URLs, the extracted plain text of the page. Content is delivered either as a short-lived presigned download URL or inline in the response body, depending on the requested mode. The response also includes a usage breakdown showing total cost in USD, number of datasets, and optionally data point counts.

## Request schema (JSON Schema)

```json
{
 "type": "object",
 "title": "ContentsRequest",
 "required": [
  "url"
 ],
 "properties": {
  "url": {
   "type": "string",
   "title": "Url",
   "examples": [
    "https://tako.com/card/abc123"
   ],
   "description": "The result URL to fetch downloadable content for (a TakoCard.webpage_url or a WebResult.url). A Tako card URL yields a CSV of the card's data; any other URL yields the page's extracted text."
  },
  "mode": {
   "enum": [
    "url",
    "inline"
   ],
   "type": "string",
   "title": "ContentsDeliveryMode",
   "description": "How contents reach the caller. URL returns a short-lived presigned file\ndownload; INLINE returns the content in the response body."
  },
  "premium": {
   "type": "boolean",
   "title": "Premium",
   "default": false,
   "description": "When true, reveal premium cells and bill them. A card's premium columns (see manifest[].premium_class) are withheld by default: a withheld cell reads [premium: withheld] in CSV and is null in JSON formats. This is the only way to receive their values. The export then adds export_pricing.premium_row_cpm_usd[class] per 1,000 rows that hold a value in a column of that class, on top of the standard row rate; premium_rows on the item reports the counts. The flag has no effect on a card without premium columns and on web URLs, and is rejected with content_format=card_json, which carries no premium plumbing.",
   "x-tako-published-default": "False is off on the one endpoint that has it. Converts if a plan or a card type ever reveals premium cells without being asked."
  },
  "max_rows": {
   "anyOf": [
    {
     "type": "integer",
     "minimum": 1
    },
    {
     "type": "null"
    }
   ],
   "title": "Max Rows",
   "default": null,
   "examples": [
    100
   ],
   "description": "Optional cap on the rows a Tako card export returns and is priced against. When omitted, it depends on mode: 'url' returns the whole card, up to the card's export_pricing.max_rows_ceiling (at most 100,000 rows), and 'inline' returns up to 2,000 rows. Tako clamps larger values to that ceiling. When a card holds more rows than the cap, csv, json_records, and json_compact keep the rows with the latest dates, counting back from the card's latest date even when that date is in the future, as on a forecast. A card without a date column keeps its first rows instead. Sports cards cut differently: a league schedule keeps the tab the card shows, then the tabs nearest to it, and a game, standings, or team stats card kee
… (truncated)
```

## Response schema (JSON Schema)

```json
{
 "type": "object",
 "title": "ContentsResponse",
 "required": [
  "request_id"
 ],
 "properties": {
  "usage": {
   "anyOf": [
    {
     "type": "object",
     "title": "Usage",
     "required": [
      "total_cost_usd"
     ],
     "properties": {
      "data": {
       "anyOf": [
        {
         "type": "object",
         "title": "UsageData",
         "required": [
          "cost_usd",
          "datasets"
         ],
         "properties": {
          "cost_usd": {
           "type": "number",
           "title": "Cost Usd",
           "description": "USD cost of the inline data delivered in the response."
          },
          "datasets": {
           "type": "integer",
           "title": "Datasets",
           "description": "Number of billed datasets or content items included in the response."
          },
          "data_points": {
           "anyOf": [
            {
             "type": "integer"
            },
            {
             "type": "null"
            }
           ],
           "title": "Data Points",
           "default": null,
           "description": "Number of billed quantitative data points included in the response."
          }
         },
         "description": "The cost and quantity of data delivered in the response.\n\n`datasets` counts billed datasets or content items. `data_points` counts\nbilled quantitative values in generated answer output."
        },
        {
         "type": "null"
        }
       ],
       "default": null,
       "description": "Inline-data cost breakdown. Present only when the surface emitted billable inline data."
      },
      "compute": {
       "anyOf": [
        {
         "type": "object",
         "title": "UsageCompute",
         "required": [
          "cost_usd"
         ],
         "properties": {
          "cost_usd": {
           "type": "number",
           "title": "Cost Usd",
           "description": "USD cost of running the operation."
          }
         },
         "description": "The cost of running the operation. Absent on surfaces with no compute\nstep (contents)."
        },
        {
         "type": "null"
        }
       ],
       "default": null,
       "description": "Compute cost breakdown. Present only on surfaces with a compute step (absent for contents)."
      },
      "variable_cost": {
       "anyOf": [
        {
         "type": "object",
         "title": "UsageVariableCost",
         "required": [
          "cost_usd"
         ],
         "prope
… (truncated)
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/tako-contents-10755687/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from tako.com](https://www.zero.xyz/host/tako.com/llms.txt)
