{
  "@context": "https://agentflare.org/schema",
  "type": "Article",
  "tier": "L2-full",
  "title": "Using AgentFlare Newswire and Markets Data",
  "description": "AgentFlare publishes dated and per-item .data.json files for Newswire and Markets. Each request costs 0.005 USD for /news/ and 0.01 USD for /markets/, sent…",
  "canonical": "https://agentflare.org/guides/using-agentflare-newswire-and-markets-data.html",
  "category": "guides",
  "updated": "2026-10-15",
  "generated_at": "2026-10-15T00:37:01.844Z",
  "facts": [
    {
      "label": "Track",
      "value": "Using AgentFlare data"
    },
    {
      "label": "Level",
      "value": "Beginner"
    },
    {
      "label": "Access",
      "value": "Free / open"
    },
    {
      "label": "Updated",
      "value": "2026-10-15"
    }
  ],
  "data": {
    "topic": "Using AgentFlare Newswire and Markets Data",
    "track": "data",
    "access": "free",
    "generated_at": "2026-10-15T00:37:01.844Z",
    "difficulty": "Beginner",
    "tldr": "AgentFlare publishes dated and per-item .data.json files for Newswire and Markets. Each request costs 0.005 USD for /news/ and 0.01 USD for /markets/, sent with an X-Crawler-Token header.",
    "intro": "This guide is for developers and agent builders who want structured news and stock data from AgentFlare. You will learn which archive URLs exist for the Newswire and Markets datasets and what fields each file holds. You will also see the per-request price of each directory and fetch a file with the X-Crawler-Token header. By the end you can request a dated digest or a markets snapshot and read headlines, stories, prices, sectors and valuation fields in code.",
    "prerequisites": [
      "A crawler token registered at esa.aisa.one",
      "curl installed, or Python with the requests package",
      "Basic familiarity with JSON"
    ],
    "steps": [
      {
        "title": "Pick the dataset and archive URL",
        "body": "Both datasets use dated files plus an index. Newswire has one file per day and cluster: ai, crypto, earnings, macro and markets, plus one file per item at /news/<slug>.data.json. Markets has one snapshot per day and one file per ticker, such as aapl.data.json or xom.data.json. Replace YYYY-MM-DD with the date you want. Each directory also has an index.data.json.",
        "code": {
          "lang": "text",
          "text": "https://agentflare.org/news/index.data.json\nhttps://agentflare.org/news/YYYY-MM-DD-ai.data.json\nhttps://agentflare.org/news/YYYY-MM-DD-crypto.data.json\nhttps://agentflare.org/news/YYYY-MM-DD-earnings.data.json\nhttps://agentflare.org/news/YYYY-MM-DD-macro.data.json\nhttps://agentflare.org/news/YYYY-MM-DD-markets.data.json\nhttps://agentflare.org/markets/index.data.json\nhttps://agentflare.org/markets/YYYY-MM-DD.data.json\nhttps://agentflare.org/markets/xom.data.json"
        },
        "sources": [
          "S2",
          "S3"
        ]
      },
      {
        "title": "Check the per-request price",
        "body": "Index pages, .html articles and .md teasers are free. The complete .data.json and .full.md files are the paid L2 tier, metered per request. The pricing map lists news at 0.005 USD and markets at 0.01 USD, both with billingType per-request. The Newswire rule matches paths under /news/ and the Markets rule matches paths under /markets/. Read the live map before you budget.",
        "code": {
          "lang": "bash",
          "text": "curl -s https://agentflare.org/pricing.json"
        },
        "sources": [
          "S4",
          "S5"
        ]
      },
      {
        "title": "Fetch a dated file with your token",
        "body": "Send your crawler token in the X-Crawler-Token header. This name replaces the earlier X-AISA-Crawler-Token that older AISA pages still show. Never put the token in Authorization: Bearer, which is reserved for the gateway layer. The site notes that agents set crawlerAutoPrice=true with an X-Crawler-Token header, and payment settles over the AISA HTTP 402 protocol. Replace YYYY-MM-DD with a real date.",
        "code": {
          "lang": "bash",
          "text": "curl -s 'https://agentflare.org/news/YYYY-MM-DD-ai.data.json' \\\n  -H 'X-Crawler-Token: YOUR_CRAWLER_TOKEN'"
        },
        "sources": [
          "S1",
          "S5"
        ]
      },
      {
        "title": "Read the Newswire fields",
        "body": "A dated Newswire file has envelope fields such as title, description, canonical, category, updated, generated_at and facts. The data object carries date, cluster, headline, dek, freshness_hours, stories, market, prediction_markets, watch, takeaways, faq, count and items. Each story has title, summary, why, sources and entities. Each item has title, url, source, date, tickers and iso.",
        "code": {
          "lang": "python",
          "text": "import requests\n\nurl = 'https://agentflare.org/news/YYYY-MM-DD-ai.data.json'\nheaders = {'X-Crawler-Token': 'YOUR_CRAWLER_TOKEN'}\ndoc = requests.get(url, headers=headers).json()\n\nprint(doc['data']['headline'])\nprint(doc['data']['dek'])\nfor story in doc['data']['stories']:\n    print(story['title'], '|', story['why'])\nfor m in doc['data']['market']:\n    print(m['id'], m['last'], m['d1'])"
        },
        "sources": [
          "S1",
          "S2"
        ]
      },
      {
        "title": "Read the Markets fields",
        "body": "The dated Markets snapshot holds data.count, data.advancers and data.decliners, a data.sectors list with label, value and n, and a data.stocks list. Each stock has ticker, price_usd, day_change_pct, return_6m_pct, market_cap_usd, pe and sector. A per-ticker file such as xom.data.json adds returns_pct (m1, m3, m6), a long metrics object and a company object with cik, sector and industry.",
        "code": {
          "lang": "python",
          "text": "import requests\n\nurl = 'https://agentflare.org/markets/YYYY-MM-DD.data.json'\nheaders = {'X-Crawler-Token': 'YOUR_CRAWLER_TOKEN'}\ndoc = requests.get(url, headers=headers).json()\n\nd = doc['data']\nprint(d['count'], d['advancers'], d['decliners'])\nfor s in d['stocks']:\n    print(s['ticker'], s['price_usd'], s['day_change_pct'], s['sector'])"
        },
        "sources": [
          "S1",
          "S3"
        ]
      }
    ],
    "reference": {
      "title": "Key fields and price by dataset",
      "columns": [
        "Dataset",
        "Field path",
        "Type",
        "Price per request (USD)"
      ],
      "rows": [
        [
          "Newswire",
          "data.headline",
          "string",
          "0.005"
        ],
        [
          "Newswire",
          "data.stories[].why",
          "string",
          "0.005"
        ],
        [
          "Newswire",
          "data.market[].last",
          "number",
          "0.005"
        ],
        [
          "Newswire",
          "data.items[].iso",
          "string",
          "0.005"
        ],
        [
          "Markets",
          "data.stocks[].price_usd",
          "number",
          "0.01"
        ],
        [
          "Markets",
          "data.stocks[].day_change_pct",
          "number",
          "0.01"
        ],
        [
          "Markets",
          "data.sectors[].label",
          "string",
          "0.01"
        ],
        [
          "Markets",
          "data.metrics.price_to_earnings_ratio (ticker file)",
          "number",
          "0.01"
        ]
      ],
      "sources": [
        "S2",
        "S3",
        "S4"
      ]
    },
    "pitfalls": [
      {
        "text": "Do not send the crawler token in Authorization: Bearer. That header is reserved for the gateway layer; use X-Crawler-Token.",
        "source": "S1"
      },
      {
        "text": "Older AISA pages still show X-AISA-Crawler-Token. The current header name is X-Crawler-Token.",
        "source": "S1"
      },
      {
        "text": "Newswire market entries differ by cluster: the ai file has d30, while the crypto file has d7, symbol and name.",
        "source": "S2"
      },
      {
        "text": "Only .data.json and .full.md files are metered. Index pages, .html and .md teasers stay free, so do not budget for them.",
        "source": "S4"
      }
    ],
    "takeaways": [
      "Newswire .data.json costs 0.005 USD per request and Markets .data.json costs 0.01 USD.",
      "Dated files follow /news/YYYY-MM-DD-cluster.data.json and /markets/YYYY-MM-DD.data.json; per-item files use a slug or ticker.",
      "Authenticate with the X-Crawler-Token header, never Authorization: Bearer."
    ],
    "faq": [
      {
        "q": "How much does an AgentFlare .data.json request cost?",
        "a": "Under /news/ each request is 0.005 USD. Under /markets/ each request is 0.01 USD. Both are billed per-request in USD through the L2 paid tier, and the live map is at https://agentflare.org/pricing.json."
      },
      {
        "q": "Which header carries the crawler token?",
        "a": "Use X-Crawler-Token, as defined by the Open Verify specification. It replaces the earlier X-AISA-Crawler-Token. Never put the token in Authorization: Bearer, which is reserved for the gateway layer."
      },
      {
        "q": "What fields does each stock have in the Markets snapshot?",
        "a": "Each entry in data.stocks has ticker, price_usd, day_change_pct, return_6m_pct, market_cap_usd, pe and sector. The snapshot also has data.count, data.advancers, data.decliners and data.sectors."
      },
      {
        "q": "What Newswire clusters have dated files?",
        "a": "The /news/ directory has YYYY-MM-DD-ai.data.json, -crypto, -earnings, -macro and -markets files. Individual items are at /news/<slug>.data.json, and /news/index.data.json lists digests with date, cluster, headline, url and stories."
      }
    ],
    "sources": [
      {
        "title": "Header name: X-Crawler-Token",
        "url": "https://esa.aisa.one/cdn/open-verify.html",
        "domain": "esa.aisa.one"
      },
      {
        "title": "AgentFlare Newswire .data.json field reference",
        "url": "https://agentflare.org/news/index.html",
        "domain": "agentflare.org"
      },
      {
        "title": "AgentFlare Markets .data.json field reference",
        "url": "https://agentflare.org/markets/index.html",
        "domain": "agentflare.org"
      },
      {
        "title": "AgentFlare pricing.json (directory price map)",
        "url": "https://agentflare.org/pricing.json",
        "domain": "agentflare.org"
      },
      {
        "title": "AgentFlare llms.txt (header and structure)",
        "url": "https://agentflare.org/llms.txt",
        "domain": "agentflare.org"
      }
    ]
  },
  "analysis_md": "AgentFlare publishes dated and per-item .data.json files for Newswire and Markets. Each request costs 0.005 USD for /news/ and 0.01 USD for /markets/, sent with an X-Crawler-Token header.\n\nThis guide is for developers and agent builders who want structured news and stock data from AgentFlare. You will learn which archive URLs exist for the Newswire and Markets datasets and what fields each file holds. You will also see the per-request price of each directory and fetch a file with the X-Crawler-Token header. By the end you can request a dated digest or a markets snapshot and read headlines, stories, prices, sectors and valuation fields in code.\n\n## Before you start\n\n- A crawler token registered at esa.aisa.one\n- curl installed, or Python with the requests package\n- Basic familiarity with JSON\n\n## Step by step\n\n### 1. Pick the dataset and archive URL\n\nBoth datasets use dated files plus an index. Newswire has one file per day and cluster: ai, crypto, earnings, macro and markets, plus one file per item at /news/<slug>.data.json. Markets has one snapshot per day and one file per ticker, such as aapl.data.json or xom.data.json. Replace YYYY-MM-DD with the date you want. Each directory also has an index.data.json.\n\n```text\nhttps://agentflare.org/news/index.data.json\nhttps://agentflare.org/news/YYYY-MM-DD-ai.data.json\nhttps://agentflare.org/news/YYYY-MM-DD-crypto.data.json\nhttps://agentflare.org/news/YYYY-MM-DD-earnings.data.json\nhttps://agentflare.org/news/YYYY-MM-DD-macro.data.json\nhttps://agentflare.org/news/YYYY-MM-DD-markets.data.json\nhttps://agentflare.org/markets/index.data.json\nhttps://agentflare.org/markets/YYYY-MM-DD.data.json\nhttps://agentflare.org/markets/xom.data.json\n```\n\n### 2. Check the per-request price\n\nIndex pages, .html articles and .md teasers are free. The complete .data.json and .full.md files are the paid L2 tier, metered per request. The pricing map lists news at 0.005 USD and markets at 0.01 USD, both with billingType per-request. The Newswire rule matches paths under /news/ and the Markets rule matches paths under /markets/. Read the live map before you budget.\n\n```bash\ncurl -s https://agentflare.org/pricing.json\n```\n\n### 3. Fetch a dated file with your token\n\nSend your crawler token in the X-Crawler-Token header. This name replaces the earlier X-AISA-Crawler-Token that older AISA pages still show. Never put the token in Authorization: Bearer, which is reserved for the gateway layer. The site notes that agents set crawlerAutoPrice=true with an X-Crawler-Token header, and payment settles over the AISA HTTP 402 protocol. Replace YYYY-MM-DD with a real date.\n\n```bash\ncurl -s 'https://agentflare.org/news/YYYY-MM-DD-ai.data.json' \\\n  -H 'X-Crawler-Token: YOUR_CRAWLER_TOKEN'\n```\n\n### 4. Read the Newswire fields\n\nA dated Newswire file has envelope fields such as title, description, canonical, category, updated, generated_at and facts. The data object carries date, cluster, headline, dek, freshness_hours, stories, market, prediction_markets, watch, takeaways, faq, count and items. Each story has title, summary, why, sources and entities. Each item has title, url, source, date, tickers and iso.\n\n```python\nimport requests\n\nurl = 'https://agentflare.org/news/YYYY-MM-DD-ai.data.json'\nheaders = {'X-Crawler-Token': 'YOUR_CRAWLER_TOKEN'}\ndoc = requests.get(url, headers=headers).json()\n\nprint(doc['data']['headline'])\nprint(doc['data']['dek'])\nfor story in doc['data']['stories']:\n    print(story['title'], '|', story['why'])\nfor m in doc['data']['market']:\n    print(m['id'], m['last'], m['d1'])\n```\n\n### 5. Read the Markets fields\n\nThe dated Markets snapshot holds data.count, data.advancers and data.decliners, a data.sectors list with label, value and n, and a data.stocks list. Each stock has ticker, price_usd, day_change_pct, return_6m_pct, market_cap_usd, pe and sector. A per-ticker file such as xom.data.json adds returns_pct (m1, m3, m6), a long metrics object and a company object with cik, sector and industry.\n\n```python\nimport requests\n\nurl = 'https://agentflare.org/markets/YYYY-MM-DD.data.json'\nheaders = {'X-Crawler-Token': 'YOUR_CRAWLER_TOKEN'}\ndoc = requests.get(url, headers=headers).json()\n\nd = doc['data']\nprint(d['count'], d['advancers'], d['decliners'])\nfor s in d['stocks']:\n    print(s['ticker'], s['price_usd'], s['day_change_pct'], s['sector'])\n```\n\n## Key fields and price by dataset\n\n| Dataset | Field path | Type | Price per request (USD) |\n| --- | --- | --- | --- |\n| Newswire | data.headline | string | 0.005 |\n| Newswire | data.stories[].why | string | 0.005 |\n| Newswire | data.market[].last | number | 0.005 |\n| Newswire | data.items[].iso | string | 0.005 |\n| Markets | data.stocks[].price_usd | number | 0.01 |\n| Markets | data.stocks[].day_change_pct | number | 0.01 |\n| Markets | data.sectors[].label | string | 0.01 |\n| Markets | data.metrics.price_to_earnings_ratio (ticker file) | number | 0.01 |\n\n## Common pitfalls\n\n- Do not send the crawler token in Authorization: Bearer. That header is reserved for the gateway layer; use X-Crawler-Token.\n- Older AISA pages still show X-AISA-Crawler-Token. The current header name is X-Crawler-Token.\n- Newswire market entries differ by cluster: the ai file has d30, while the crypto file has d7, symbol and name.\n- Only .data.json and .full.md files are metered. Index pages, .html and .md teasers stay free, so do not budget for them.\n\n## Key takeaways\n\n- Newswire .data.json costs 0.005 USD per request and Markets .data.json costs 0.01 USD.\n- Dated files follow /news/YYYY-MM-DD-cluster.data.json and /markets/YYYY-MM-DD.data.json; per-item files use a slug or ticker.\n- Authenticate with the X-Crawler-Token header, never Authorization: Bearer.\n\n## FAQ\n\n**How much does an AgentFlare .data.json request cost?**\nUnder /news/ each request is 0.005 USD. Under /markets/ each request is 0.01 USD. Both are billed per-request in USD through the L2 paid tier, and the live map is at https://agentflare.org/pricing.json.\n\n**Which header carries the crawler token?**\nUse X-Crawler-Token, as defined by the Open Verify specification. It replaces the earlier X-AISA-Crawler-Token. Never put the token in Authorization: Bearer, which is reserved for the gateway layer.\n\n**What fields does each stock have in the Markets snapshot?**\nEach entry in data.stocks has ticker, price_usd, day_change_pct, return_6m_pct, market_cap_usd, pe and sector. The snapshot also has data.count, data.advancers, data.decliners and data.sectors.\n\n**What Newswire clusters have dated files?**\nThe /news/ directory has YYYY-MM-DD-ai.data.json, -crypto, -earnings, -macro and -markets files. Individual items are at /news/<slug>.data.json, and /news/index.data.json lists digests with date, cluster, headline, url and stories.\n",
  "sources": [
    {
      "title": "Header name: X-Crawler-Token",
      "url": "https://esa.aisa.one/cdn/open-verify.html"
    },
    {
      "title": "AgentFlare Newswire .data.json field reference",
      "url": "https://agentflare.org/news/index.html"
    },
    {
      "title": "AgentFlare Markets .data.json field reference",
      "url": "https://agentflare.org/markets/index.html"
    },
    {
      "title": "AgentFlare pricing.json (directory price map)",
      "url": "https://agentflare.org/pricing.json"
    },
    {
      "title": "AgentFlare llms.txt (header and structure)",
      "url": "https://agentflare.org/llms.txt"
    }
  ],
  "related": [
    {
      "name": "Reading .data.json: A Field Guide for Agents",
      "url": "https://agentflare.org/guides/reading-datajson-a-field-guide-for-agents.html"
    },
    {
      "name": "Using AgentFlare Social, Predictions and Crypto Data",
      "url": "https://agentflare.org/guides/using-agentflare-social-predictions-and-crypto-data.html"
    },
    {
      "name": "Using AgentFlare Research and Scholar Data",
      "url": "https://agentflare.org/guides/using-agentflare-research-and-scholar-data.html"
    },
    {
      "name": "Getting Started with HTTP 402 Pay-Per-Crawl",
      "url": "https://agentflare.org/guides/getting-started-with-http-402-pay-per-crawl.html"
    },
    {
      "name": "Crawler Tokens & Auto-Pay: A How-To",
      "url": "https://agentflare.org/guides/crawler-tokens-auto-pay-a-how-to.html"
    },
    {
      "name": "Handling 402 and 403 Responses: An Error Reference for Agents",
      "url": "https://agentflare.org/guides/handling-402-and-403-responses-an-error-reference-for-agents.html"
    }
  ],
  "pricing": {
    "price_usd": 0,
    "method": "402",
    "endpoint": "https://esa.aisa.one/api/v1/access/verify",
    "autopay_hint": "set crawlerAutoPrice=true with the X-Crawler-Token header",
    "onboarding": "https://esa.aisa.one/agent/guide.html"
  },
  "powered_by": "AISA — agent-native search, settlement & delivery (https://aisa.one)"
}