[
  {
    "id": "riveter-docs-1",
    "tier": "claimed-docs",
    "url": "https://docs.riveterhq.com",
    "excerpt": "An enrichment takes rows of input data and fills in new columns using AI, web searches, web scrapes, and other tools.",
    "fetchedAt": "2026-09-14T23:33:11.298Z"
  },
  {
    "id": "riveter-docs-2",
    "tier": "claimed-docs",
    "url": "https://docs.riveterhq.com",
    "excerpt": "You can build one from a natural-language prompt or a structured spec, and Riveter will generate the rows for you.",
    "fetchedAt": "2026-09-14T23:33:11.298Z"
  },
  {
    "id": "riveter-docs-3",
    "tier": "claimed-docs",
    "url": "https://docs.riveterhq.com",
    "excerpt": "A scrape lets you turn a URL into easily parseable text.",
    "fetchedAt": "2026-09-14T23:33:11.298Z"
  },
  {
    "id": "riveter-docs-4",
    "tier": "claimed-docs",
    "url": "https://docs.riveterhq.com",
    "excerpt": "A quick_search lets you quickly web search a query, and pull structured results with urls, titles, and snippets — synchronously, in one request.",
    "fetchedAt": "2026-09-14T23:33:11.298Z"
  },
  {
    "id": "riveter-docs-5",
    "tier": "claimed-docs",
    "url": "https://docs.riveterhq.com",
    "excerpt": "A search_agent call asks one question and gets one AI-researched answer back — the same agent loop that fills a single enrichment cell, without setting up an enrichment.",
    "fetchedAt": "2026-09-14T23:33:11.298Z"
  },
  {
    "id": "riveter-docs-6",
    "tier": "claimed-docs",
    "url": "https://docs.riveterhq.com",
    "excerpt": "Pass webhook_url in the JSON body when starting a run and Riveter POSTs the full results to your URL when it finishes (events: run.completed, run.stopped, run.finished).",
    "fetchedAt": "2026-09-14T23:33:11.298Z"
  },
  {
    "id": "riveter-docs-7",
    "tier": "claimed-docs",
    "url": "https://docs.riveterhq.com",
    "excerpt": "dry_run: true — validate the request and return a credit estimate without creating or charging anything.",
    "fetchedAt": "2026-09-14T23:33:11.298Z"
  },
  {
    "id": "riveter-docs-8",
    "tier": "claimed-docs",
    "url": "https://docs.riveterhq.com",
    "excerpt": "max_credits — a ceiling. When the estimate's maximum exceeds it, the request is refused with 422 credit_cap_exceeded and nothing is charged.",
    "fetchedAt": "2026-09-14T23:33:11.298Z"
  },
  {
    "id": "riveter-docs-9",
    "tier": "claimed-docs",
    "url": "https://docs.riveterhq.com",
    "excerpt": "Use Riveter from Claude, ChatGPT, Cursor, or any MCP-compatible AI assistant. Pick one of the two ways to connect.",
    "fetchedAt": "2026-09-14T23:33:11.298Z"
  },
  {
    "id": "riveter-docs-10",
    "tier": "claimed-docs",
    "url": "https://docs.riveterhq.com",
    "excerpt": "Runs on your machine and needs Node.js and an API key. Use it when your client cannot reach remote servers.",
    "fetchedAt": "2026-09-14T23:33:11.298Z"
  },
  {
    "id": "riveter-docs-11",
    "tier": "claimed-docs",
    "url": "https://docs.riveterhq.com",
    "excerpt": "the SDKs handle auth, retries (429s and transient GET failures), the wait long-poll, polling until a run finishes (wait_for_result), and pagination",
    "fetchedAt": "2026-09-14T23:33:11.298Z"
  },
  {
    "id": "riveter-docs-12",
    "tier": "claimed-docs",
    "url": "https://github.com/riveterhq/riveter-go",
    "excerpt": "run, err := client.Enrich(ctx, riveter.EnrichParams{\n\t\tPrompt:     \"Research each company\",\n\t\tAttributes: []string{\"CEO\", \"Employee Count\"},",
    "fetchedAt": "2026-09-14T23:33:11.298Z"
  },
  {
    "id": "riveter-docs-13",
    "tier": "claimed-docs",
    "url": "https://www.riveterhq.com",
    "excerpt": "Schedule any project to monitor for changes and keep your data fresh.",
    "fetchedAt": "2026-09-14T23:33:11.298Z"
  },
  {
    "id": "riveter-docs-14",
    "tier": "claimed-docs",
    "url": "https://www.riveterhq.com",
    "excerpt": "Build custom lead lists and enrich with qualifiers for your ICP, contact data, and even personalize sentences for outbound.",
    "fetchedAt": "2026-09-14T23:33:11.298Z"
  },
  {
    "id": "riveter-docs-15",
    "tier": "claimed-docs",
    "url": "https://www.riveterhq.com",
    "excerpt": "Riveter uses AI agents that interpret pages the way a person would, so the same configuration keeps working after a redesign.",
    "fetchedAt": "2026-09-14T23:33:11.298Z"
  },
  {
    "id": "riveter-docs-16",
    "tier": "claimed-docs",
    "url": "https://www.riveterhq.com",
    "excerpt": "It can find every dental practice in a city, then pull every dentist from each one, in a single request.",
    "fetchedAt": "2026-09-14T23:33:11.298Z"
  },
  {
    "id": "riveter-docs-17",
    "tier": "claimed-docs",
    "url": "https://www.riveterhq.com",
    "excerpt": "For fast moving data like scores or election results, you can refresh as often as every minute.",
    "fetchedAt": "2026-09-14T23:33:11.298Z"
  },
  {
    "id": "riveter-docs-18",
    "tier": "claimed-docs",
    "url": "https://www.riveterhq.com",
    "excerpt": "It reads PDFs and images, calls third party APIs as part of a workflow, and combines those results with data pulled from the web in a single output.",
    "fetchedAt": "2026-09-14T23:33:11.298Z"
  },
  {
    "id": "riveter-probe-1",
    "tier": "probe",
    "url": "https://docs.riveterhq.com/llms.txt",
    "excerpt": "PROBE llms.txt: HTTP 404 at https://docs.riveterhq.com/llms.txt",
    "fetchedAt": "2026-09-14T23:35:10.984Z"
  },
  {
    "id": "riveter-probe-2",
    "tier": "probe",
    "url": "https://docs.riveterhq.com/openapi.json",
    "excerpt": "PROBE openapi: all candidate paths 404 (https://docs.riveterhq.com/openapi.json, https://docs.riveterhq.com/swagger.json, https://docs.riveterhq.com/api/openapi.json, https://docs.riveterhq.com/.well-known/openapi.json)",
    "fetchedAt": "2026-09-14T23:35:10.984Z"
  }
]
