CSV/JSON Schema Normalizer
Pricing
$10.00 / 1,000 result delivereds
CSV/JSON Schema Normalizer
Normalize CSV and JSON rows into stable, typed, automation-ready records.
Pricing
$10.00 / 1,000 result delivereds
Rating
0.0
(0)
Developer
Zentra
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
4 hours ago
Last modified
Categories
Share
Normalize every row from CSV, JSON, or an Apify dataset into stable, typed, automation-ready records.
What this Actor does
- Accepts inline JSON records, CSV text, JSON text, an Apify dataset ID, and public or user-authorized CSV/JSON URLs.
- Follows JSON next links, page tokens, and offset pagination to the source's natural end.
- Infers one stable schema from the complete input, or applies a buyer-supplied schema.
- Emits exactly one default-dataset item for every delivered source row, including duplicate rows.
- Saves the schema in
SCHEMAand counts inRUN-SUMMARYin the default key-value store. - Charges
result-deliveredonce per production row through Apify's charged dataset push.
There is no maxItems, maxRows, per-source, charge-derived, or overall result ceiling in this Actor. A buyer's Apify spending limit can stop paid delivery, as required by the platform.
Inputs
records: Inline array of JSON objects.csvText: Inline RFC-style CSV text, including quoted delimiters and line breaks.jsonText: Inline JSON array or an object containingitems,records,results,rows, ordata.datasetId: Existing Apify dataset iterated to its natural end.startUrls: Public or user-authorized CSV/JSON URLs. The production default reads the public Apify Store API and follows all available pages.schema: Optional field map. For example,{"amount":{"type":"number","required":true}}.csvHasHeader,delimiter,trimStrings, andemptyStringsAsNull: Parsing and normalization controls.includeRaw: Include the original row beside the normalized row.requestTimeoutSecs: Per-request network timeout; it is not a result-count limit.
sourceMode selects one input surface, so the public default URL is not mixed into an inline-record or dataset run. Rows within the selected source are not deduplicated, so a 1,200-row input produces 1,200 result records when the buyer's spending limit permits 1,200 charged deliveries.
Output
Each source row produces one item with:
recordId: Stable SHA-256 identity derived from source, row number, and source content.rowNumberandsourceRowNumber: Global and source-local row positions.sourceTypeandsourceReference: Input provenance.normalized: Complete row normalized against the stable schema.validandvalidationErrors: Required-field and type-conversion results.retrievedAt: Run timestamp.raw: Original row only when requested.
The default dataset never adds summary rows, so its item count equals the number of delivered source rows. The inferred/applied schema and run summary are separate key-value-store records.
Quick non-billable check
{"mode": "sample","sourceMode": "sample"}
Production examples
Normalize an Apify dataset:
{"mode": "production","sourceMode": "dataset","datasetId": "YOUR_DATASET_ID"}
Normalize 1,200 inline records by supplying all 1,200 objects in records; no Actor input field truncates the array.
Pricing
The existing Actor pricing remains unchanged:
result-delivered: USD 0.01 for each validated buyer-facing row delivered to the default dataset.
Sample mode is non-billable. Production stops when Apify reports that the buyer's spending limit has been reached, preventing unpaid processing after the platform limit.
Access and limitations
- Process only public data or inputs you are authorized to use.
- The Actor does not bypass authentication, paywalls, CAPTCHAs, access controls, or source terms.
- Very large sources still depend on the run's platform memory, network, and time resources; the Actor itself does not impose a record-count ceiling.
- Invalid values are retained as
nullwith a field error instead of being silently invented.
Existing public Actor identity
- Owner:
zentrafoundry - Actor ID:
lxv37LGvAeUvcZtnM - Slug:
csv-json-schema-normalizer - Store URL: https://apify.com/zentrafoundry/csv-json-schema-normalizer
This package updates that exact public Actor in place. It does not create, clone, draft, privatize, or change pricing or visibility.