Endpoints
Extract & structure
Messy input → data your code can trust.
Field extraction
POST /v1/extract$0.04/call
Pull a field set you define out of any block of text. You name the fields; you get typed values with confidence.
curl https://api.kynth.studio/v1/extract \
-H "Authorization: Bearer $KYNTH_API_KEY" \
-H "Content-Type: application/json" \
-d '{"text":"Order 5561 ships Jul 8 to Denver, CO. Total $412.","fields":["order number","ship date","destination","total"]}'Example response
{
"results": [
{
"field": "order number",
"value": "5561",
"confidence": 0.99
},
{
"field": "ship date",
"value": "2026-07-08",
"confidence": 0.9
}
],
"usage": {
"credits": 4,
"balanceRemaining": 486
}
}Classification
POST /v1/classify$0.02/call
Route or tag text against your own taxonomy — a label, a confidence, and a one-line rationale.
curl https://api.kynth.studio/v1/classify \
-H "Authorization: Bearer $KYNTH_API_KEY" \
-H "Content-Type: application/json" \
-d '{"text":"My card was charged twice for one order.","labels":["billing","shipping","technical","refund"]}'Example response
{
"label": "billing",
"confidence": 0.96,
"rationale": "Duplicate charge is a billing dispute.",
"usage": {
"credits": 2,
"balanceRemaining": 484
}
}Structure to your schema
POST /v1/structure$0.06/call
Any messy input — text, HTML, an email — plus YOUR JSON schema → output shaped to it, validated against your required fields and property types, with an automatic corrective retry and a `valid` flag.
curl https://api.kynth.studio/v1/structure \
-H "Authorization: Bearer $KYNTH_API_KEY" \
-H "Content-Type: application/json" \
-d '{"input":"Hey — new order from Dana Reyes, dana@brightco.io. 3 large planters, ship to 44 Vine St Portland OR by the 20th.","schema":{"type":"object","required":["customer","items"],"properties":{"customer":{"type":"object"},"items":{"type":"array"},"shipTo":{"type":"string"},"deadline":{"type":"string"}}}}'Example response
{
"data": {
"customer": {
"name": "Dana Reyes",
"email": "dana@brightco.io"
},
"items": [
{
"product": "large planter",
"quantity": 3
}
],
"shipTo": "44 Vine St, Portland OR",
"deadline": "2026-07-20"
},
"valid": true,
"notes": [],
"usage": {
"credits": 6,
"balanceRemaining": 371
}
}Record normalization
POST /v1/normalize$0.05/batch
A batch of messy records → clean canonical rows, with a change log of every fix (casing, formats, dedup-ready values).
curl https://api.kynth.studio/v1/normalize \
-H "Authorization: Bearer $KYNTH_API_KEY" \
-H "Content-Type: application/json" \
-d '{"records":[{"name":"SMITH, jon","phone":"415.555.0199","state":"california"}],"instructions":"US phone format, 2-letter state codes, Title Case names"}'Example response
{
"records": [
{
"name": "Jon Smith",
"phone": "(415) 555-0199",
"state": "CA"
}
],
"changes": [
{
"index": 0,
"field": "state",
"from": "california",
"to": "CA",
"reason": "2-letter state code"
}
],
"usage": {
"credits": 5,
"balanceRemaining": 366
}
}Entity matching
POST /v1/match$0.08/run
Two record sets → which rows are the same real-world thing, with confidence and reasoning. Fuzzy names, typos, aliases handled.
curl https://api.kynth.studio/v1/match \
-H "Authorization: Bearer $KYNTH_API_KEY" \
-H "Content-Type: application/json" \
-d '{"a":[{"name":"Acme Supplies Inc","city":"Columbus"}],"b":[{"vendor":"ACME SUPPLY, INC.","location":"Columbus, OH"}],"keys":["name"]}'Example response
{
"matches": [
{
"aIndex": 0,
"bIndex": 0,
"confidence": 0.94,
"reason": "Same entity: name variant + same city."
}
],
"unmatchedA": [],
"unmatchedB": [],
"usage": {
"credits": 8,
"balanceRemaining": 358
}
}Batch categorization
POST /v1/categorize$0.03/batch
Up to a hundred items against your taxonomy in one call — products, transactions, tickets — each with a confidence.
curl https://api.kynth.studio/v1/categorize \
-H "Authorization: Bearer $KYNTH_API_KEY" \
-H "Content-Type: application/json" \
-d '{"items":["AWS invoice June","Uber to airport","Figma annual"],"taxonomy":["software","travel","office","other"]}'Example response
{
"results": [
{
"index": 0,
"category": "software",
"confidence": 0.97
},
{
"index": 1,
"category": "travel",
"confidence": 0.98
},
{
"index": 2,
"category": "software",
"confidence": 0.96
}
],
"usage": {
"credits": 3,
"balanceRemaining": 355
}
}