# Proofwork JSON to CSV Converter

> Proofwork JSON to CSV Converter is a paid API for AI agents from proofwork-the402-webhook.phase-voice.workers.dev, paid per call via x402, $0.01/call, status unknown (last checked 2026-09-15).

Converts a URL-encoded JSON array of flat objects into CSV format, returning the CSV string along with metadata like column names and row count.

## Facts

- Endpoint: GET https://proofwork-the402-webhook.phase-voice.workers.dev/v1/json-to-csv
- Price: $0.01/call
- Payment: x402
- Status: unknown
- Last checked: 2026-09-15
- Activations on Zero: 0
- Tags: x402
- Canonical page: https://www.zero.xyz/c/proofwork-json-to-csv-converter-dad213b3
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_KddqvpfVjfandNIOK0jNN

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 proofwork-json-to-csv-converter-dad213b3
```

Example prompt: Can you convert this JSON array into a CSV for me? Here's the data: [{"id":1,"name":"Ada","active":false},{"id":2,"name":"Grace","active":true}]

## When to prefer this

Choose this endpoint when you need a lightweight, pay-per-use JSON-to-CSV conversion without setting up any infrastructure. It is ideal for one-off conversions of flat JSON arrays in agent workflows where CSV output is needed for downstream tools, spreadsheets, or reporting systems. Prefer it over heavier ETL tools when the data is already flat and you want a single API call with a predictable $0.01 cost per conversion.

## Known failure modes

- Missing or malformed `rows` query parameter returns an error — input must be a valid URL-encoded JSON array
- Non-flat (nested) JSON objects may produce unexpected or missing columns
- Empty JSON array may return headers-only CSV with zero rows
- Payment failure via x402 prevents the request from being fulfilled
- Extremely large arrays may hit request size or worker limits

## How this service works

Small non-cyber evidence and data APIs payable per request with x402 on Base.

## Output

Returns a JSON object containing: a `csv` string with headers and rows in comma-separated format, a `report` field identifying the operation, a `columns` array listing all column names detected, a `row_count` integer, and a `content_type` field set to 'text/csv'.

## Request schema (JSON Schema)

```json
{
 "type": "object",
 "$schema": "https://json-schema.org/draft/2020-12/schema",
 "required": [
  "input"
 ],
 "properties": {
  "input": {
   "type": "object",
   "required": [
    "type",
    "method",
    "queryParams"
   ],
   "properties": {
    "type": {
     "type": "string",
     "const": "http"
    },
    "method": {
     "enum": [
      "GET"
     ],
     "type": "string"
    },
    "queryParams": {
     "type": "object",
     "required": [
      "rows"
     ],
     "properties": {
      "rows": {
       "type": "string",
       "description": "URL-encoded JSON array of flat objects"
      }
     },
     "additionalProperties": false
    }
   },
   "additionalProperties": false
  },
  "output": {
   "type": "object",
   "required": [
    "type"
   ],
   "properties": {
    "type": {
     "type": "string"
    },
    "example": {
     "type": "object"
    }
   }
  }
 }
}
```

## Response schema (JSON Schema)

```json
{
 "type": "json",
 "example": {
  "csv": "id,name,active\n1,Ada,\n2,Grace,true\n",
  "report": "json_to_csv",
  "columns": [
   "id",
   "name",
   "active"
  ],
  "row_count": 2,
  "content_type": "text/csv"
 }
}
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/proofwork-json-to-csv-converter-dad213b3/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from proofwork-the402-webhook.phase-voice.workers.dev](https://www.zero.xyz/host/proofwork-the402-webhook.phase-voice.workers.dev/llms.txt)
