parsed_address — Orange Slice capability
Outcome-priced capability. One price for the answer, whichever providers it took. Everything we expose, with prices: https://orangeslice.ai/llms.txt
Splits a free-text address into street, city, state, postal code and country, plus latitude and longitude. Costs 1 credit per address. An address the geocoder cannot match is returned as an error rather than an empty row, and is not billed.
Price
$0.002, charged per hit
Billed only when the answer is found. A miss costs nothing.
The price is a property of the outcome, not of the work behind it. Whichever vendor serves this call, and whatever it costs us, the number above is the number quoted before the run and charged after it.
Call it
CLI
orangeslice enrich parsed_address --address "1600 Amphitheatre Pkwy, Mountain View CA" # or piped, one JSON object per line: cat addresses.ndjson | orangeslice enrich parsed_address
HTTP
curl -X POST 'https://orangeslice.ai/api/v1/run' \ -H 'Authorization: Bearer $ORANGESLICE_API_KEY' \ -H 'Content-Type: application/json' \ -d '{"capability":"parsed_address","input":{"address":"<string>"}}'
SDK
await services.geo.parseAddress({ address: "…" });
Inputs
| Field | Type | Required | Description |
|---|---|---|---|
address | string | Yes | Free-text address to geocode and split into components, e.g. '1600 Amphitheatre Pkwy, Mountain View CA' |
Inputs may also be piped as NDJSON, one JSON object per line.
Output
{ "$schema": "https://json-schema.org/draft/2020-12/schema", "type": "object", "properties": { "formatted": { "anyOf": [ { "type": "string" }, { "type": "null" } ] }, "streetNumber": { "default": "", "type": "string" }, "route": { "default": "", "type": "string" }, "city": { "default": "", "type": "string" }, "state": { "default": "", "type": "string" }, "postalCode": { "default": "", "type": "string" }, "country": { "default": "", "type": "string" }, "lat": { "anyOf": [ { "type": "number" }, { "type": "null" } ] }, "lng": { "anyOf": [ { "type": "number" }, { "type": "null" } ] } }, "required": [ "formatted", "streetNumber", "route", "city", "state", "postalCode", "country", "lat", "lng" ], "additionalProperties": false }
The field that carries the answer is formatted. It is
null — or empty — when nothing was found, which is how a miss is told from a
hit without knowing anything else about this entry.
Before you run
- Price it first.
orangeslice enrich parsed_address --dry-runreturns the exact dollar cost and spends nothing. - Large runs need approval. Above the spend-gate threshold a run exits 7 until it carries a plan token, and only a dry run mints one.
- Scopes: enrich
- Permitted uses: research, outreach, export
Exit codes
0 ok · 2 bad input · 3 auth · 4 not found · 5 provider ·
6 rate limited · 7 spend gate, nothing billed · 8 timeout ·
9 a third-party account needs connecting