{"openapi":"3.1.0","info":{"title":"NoCall Developer Phone Data API","version":"2026-08-11.beta1","description":"Invite-only, privacy-bounded phone intelligence. Developer keys are never accepted by protected browser routes."},"servers":[{"url":"https://api.nocall.io"}],"paths":{"/v1/data/products":{"get":{"summary":"List the versioned public product manifest","security":[],"responses":{"200":{"description":"Product manifest","content":{"application/json":{"schema":{"$ref":"#/components/schemas/SuccessEnvelope"}}}}}}},"/v1/data/openapi.json":{"get":{"summary":"Read the canonical OpenAPI 3.1 document","security":[],"responses":{"200":{"description":"Canonical OpenAPI 3.1 contract","content":{"application/json":{"schema":{"type":"object"}}}}}}},"/v1/data/account":{"get":{"summary":"Read developer account quota and current UTC-month usage","security":[{"developerBearer":[]}],"responses":{"200":{"description":"Account usage","content":{"application/json":{"schema":{"$ref":"#/components/schemas/SuccessEnvelope"}}}},"400":{"description":"Invalid JSON or missing required idempotency key; no units charged","content":{"application/json":{"schema":{"type":"object","required":["error"],"properties":{"error":{"type":"object","required":["code","message","requestId"],"properties":{"code":{"type":"string"},"message":{"type":"string"},"requestId":{"type":"string"},"details":{"type":"array","items":{"type":"object"}}}}}}}}},"401":{"description":"Missing, invalid, expired, revoked, or inactive API key","content":{"application/json":{"schema":{"type":"object","required":["error"],"properties":{"error":{"type":"object","required":["code","message","requestId"],"properties":{"code":{"type":"string"},"message":{"type":"string"},"requestId":{"type":"string"},"details":{"type":"array","items":{"type":"object"}}}}}}}}},"409":{"description":"Idempotency conflict or request still processing","content":{"application/json":{"schema":{"type":"object","required":["error"],"properties":{"error":{"type":"object","required":["code","message","requestId"],"properties":{"code":{"type":"string"},"message":{"type":"string"},"requestId":{"type":"string"},"details":{"type":"array","items":{"type":"object"}}}}}}}}},"413":{"description":"Request body exceeded the bounded payload limit; no units charged","content":{"application/json":{"schema":{"type":"object","required":["error"],"properties":{"error":{"type":"object","required":["code","message","requestId"],"properties":{"code":{"type":"string"},"message":{"type":"string"},"requestId":{"type":"string"},"details":{"type":"array","items":{"type":"object"}}}}}}}}},"422":{"description":"Request validation failed","content":{"application/json":{"schema":{"type":"object","required":["error"],"properties":{"error":{"type":"object","required":["code","message","requestId"],"properties":{"code":{"type":"string"},"message":{"type":"string"},"requestId":{"type":"string"},"details":{"type":"array","items":{"type":"object"}}}}}}}}},"429":{"description":"Per-key rate or monthly unit quota exceeded","content":{"application/json":{"schema":{"type":"object","required":["error"],"properties":{"error":{"type":"object","required":["code","message","requestId"],"properties":{"code":{"type":"string"},"message":{"type":"string"},"requestId":{"type":"string"},"details":{"type":"array","items":{"type":"object"}}}}}}}}},"500":{"description":"Server failure; no units charged","content":{"application/json":{"schema":{"type":"object","required":["error"],"properties":{"error":{"type":"object","required":["code","message","requestId"],"properties":{"code":{"type":"string"},"message":{"type":"string"},"requestId":{"type":"string"},"details":{"type":"array","items":{"type":"object"}}}}}}}}},"503":{"description":"Beta, provider, or service temporarily unavailable; no units charged","content":{"application/json":{"schema":{"type":"object","required":["error"],"properties":{"error":{"type":"object","required":["code","message","requestId"],"properties":{"code":{"type":"string"},"message":{"type":"string"},"requestId":{"type":"string"},"details":{"type":"array","items":{"type":"object"}}}}}}}}}}}},"/v1/data/phone-lookups":{"post":{"summary":"Lookup privacy-bounded phone intelligence","security":[{"developerBearer":[]}],"parameters":[{"$ref":"#/components/parameters/OptionalIdempotencyKey"}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","additionalProperties":false,"required":["phone"],"properties":{"phone":{"type":"string","maxLength":64,"example":"+34600111222"},"country":{"type":"string","minLength":2,"maxLength":2,"example":"ES"}}}}}},"responses":{"200":{"description":"Accepted lookup. One unit is charged, including valid not-found results.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/SuccessEnvelope"},"examples":{"found":{"value":{"data":{"phoneNumber":"+34600111222","found":true,"risk":{"score":45,"level":"medium"},"reportCount":3},"meta":{"requestId":"req_example","unitsCharged":1}}},"notFound":{"value":{"data":{"phoneNumber":"+34600111222","found":false},"meta":{"requestId":"req_example","unitsCharged":1}}}}}}},"400":{"description":"Invalid JSON or missing required idempotency key; no units charged","content":{"application/json":{"schema":{"type":"object","required":["error"],"properties":{"error":{"type":"object","required":["code","message","requestId"],"properties":{"code":{"type":"string"},"message":{"type":"string"},"requestId":{"type":"string"},"details":{"type":"array","items":{"type":"object"}}}}}}}}},"401":{"description":"Missing, invalid, expired, revoked, or inactive API key","content":{"application/json":{"schema":{"type":"object","required":["error"],"properties":{"error":{"type":"object","required":["code","message","requestId"],"properties":{"code":{"type":"string"},"message":{"type":"string"},"requestId":{"type":"string"},"details":{"type":"array","items":{"type":"object"}}}}}}}}},"409":{"description":"Idempotency conflict or request still processing","content":{"application/json":{"schema":{"type":"object","required":["error"],"properties":{"error":{"type":"object","required":["code","message","requestId"],"properties":{"code":{"type":"string"},"message":{"type":"string"},"requestId":{"type":"string"},"details":{"type":"array","items":{"type":"object"}}}}}}}}},"413":{"description":"Request body exceeded the bounded payload limit; no units charged","content":{"application/json":{"schema":{"type":"object","required":["error"],"properties":{"error":{"type":"object","required":["code","message","requestId"],"properties":{"code":{"type":"string"},"message":{"type":"string"},"requestId":{"type":"string"},"details":{"type":"array","items":{"type":"object"}}}}}}}}},"422":{"description":"Request validation failed","content":{"application/json":{"schema":{"type":"object","required":["error"],"properties":{"error":{"type":"object","required":["code","message","requestId"],"properties":{"code":{"type":"string"},"message":{"type":"string"},"requestId":{"type":"string"},"details":{"type":"array","items":{"type":"object"}}}}}}}}},"429":{"description":"Per-key rate or monthly unit quota exceeded","content":{"application/json":{"schema":{"type":"object","required":["error"],"properties":{"error":{"type":"object","required":["code","message","requestId"],"properties":{"code":{"type":"string"},"message":{"type":"string"},"requestId":{"type":"string"},"details":{"type":"array","items":{"type":"object"}}}}}}}}},"500":{"description":"Server failure; no units charged","content":{"application/json":{"schema":{"type":"object","required":["error"],"properties":{"error":{"type":"object","required":["code","message","requestId"],"properties":{"code":{"type":"string"},"message":{"type":"string"},"requestId":{"type":"string"},"details":{"type":"array","items":{"type":"object"}}}}}}}}},"503":{"description":"Beta, provider, or service temporarily unavailable; no units charged","content":{"application/json":{"schema":{"type":"object","required":["error"],"properties":{"error":{"type":"object","required":["code","message","requestId"],"properties":{"code":{"type":"string"},"message":{"type":"string"},"requestId":{"type":"string"},"details":{"type":"array","items":{"type":"object"}}}}}}}}}}}},"/v1/data/phone-risk-checks":{"post":{"summary":"Check phone risk","security":[{"developerBearer":[]}],"parameters":[{"$ref":"#/components/parameters/OptionalIdempotencyKey"}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","additionalProperties":false,"required":["phone"],"properties":{"phone":{"type":"string","maxLength":64,"example":"+34600111222"},"country":{"type":"string","minLength":2,"maxLength":2,"example":"ES"}}}}}},"responses":{"200":{"description":"Accepted lookup. One unit is charged, including valid not-found results.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/SuccessEnvelope"},"examples":{"found":{"value":{"data":{"phoneNumber":"+34600111222","found":true,"risk":{"score":45,"level":"medium"}},"meta":{"requestId":"req_example","unitsCharged":1}}},"notFound":{"value":{"data":{"phoneNumber":"+34600111222","found":false},"meta":{"requestId":"req_example","unitsCharged":1}}}}}}},"400":{"description":"Invalid JSON or missing required idempotency key; no units charged","content":{"application/json":{"schema":{"type":"object","required":["error"],"properties":{"error":{"type":"object","required":["code","message","requestId"],"properties":{"code":{"type":"string"},"message":{"type":"string"},"requestId":{"type":"string"},"details":{"type":"array","items":{"type":"object"}}}}}}}}},"401":{"description":"Missing, invalid, expired, revoked, or inactive API key","content":{"application/json":{"schema":{"type":"object","required":["error"],"properties":{"error":{"type":"object","required":["code","message","requestId"],"properties":{"code":{"type":"string"},"message":{"type":"string"},"requestId":{"type":"string"},"details":{"type":"array","items":{"type":"object"}}}}}}}}},"409":{"description":"Idempotency conflict or request still processing","content":{"application/json":{"schema":{"type":"object","required":["error"],"properties":{"error":{"type":"object","required":["code","message","requestId"],"properties":{"code":{"type":"string"},"message":{"type":"string"},"requestId":{"type":"string"},"details":{"type":"array","items":{"type":"object"}}}}}}}}},"413":{"description":"Request body exceeded the bounded payload limit; no units charged","content":{"application/json":{"schema":{"type":"object","required":["error"],"properties":{"error":{"type":"object","required":["code","message","requestId"],"properties":{"code":{"type":"string"},"message":{"type":"string"},"requestId":{"type":"string"},"details":{"type":"array","items":{"type":"object"}}}}}}}}},"422":{"description":"Request validation failed","content":{"application/json":{"schema":{"type":"object","required":["error"],"properties":{"error":{"type":"object","required":["code","message","requestId"],"properties":{"code":{"type":"string"},"message":{"type":"string"},"requestId":{"type":"string"},"details":{"type":"array","items":{"type":"object"}}}}}}}}},"429":{"description":"Per-key rate or monthly unit quota exceeded","content":{"application/json":{"schema":{"type":"object","required":["error"],"properties":{"error":{"type":"object","required":["code","message","requestId"],"properties":{"code":{"type":"string"},"message":{"type":"string"},"requestId":{"type":"string"},"details":{"type":"array","items":{"type":"object"}}}}}}}}},"500":{"description":"Server failure; no units charged","content":{"application/json":{"schema":{"type":"object","required":["error"],"properties":{"error":{"type":"object","required":["code","message","requestId"],"properties":{"code":{"type":"string"},"message":{"type":"string"},"requestId":{"type":"string"},"details":{"type":"array","items":{"type":"object"}}}}}}}}},"503":{"description":"Beta, provider, or service temporarily unavailable; no units charged","content":{"application/json":{"schema":{"type":"object","required":["error"],"properties":{"error":{"type":"object","required":["code","message","requestId"],"properties":{"code":{"type":"string"},"message":{"type":"string"},"requestId":{"type":"string"},"details":{"type":"array","items":{"type":"object"}}}}}}}}}}}},"/v1/data/carrier-lookups":{"post":{"summary":"Lookup carrier and numbering-plan facts","security":[{"developerBearer":[]}],"parameters":[{"$ref":"#/components/parameters/OptionalIdempotencyKey"}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","additionalProperties":false,"required":["phone"],"properties":{"phone":{"type":"string","maxLength":64,"example":"+34600111222"},"country":{"type":"string","minLength":2,"maxLength":2,"example":"ES"}}}}}},"responses":{"200":{"description":"Accepted lookup. One unit is charged, including valid not-found results.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/SuccessEnvelope"},"examples":{"found":{"value":{"data":{"phoneNumber":"+34600111222","found":true,"carrier":{"operatorName":"Example carrier","numberType":"mobile","country":"ES"}},"meta":{"requestId":"req_example","unitsCharged":1}}},"notFound":{"value":{"data":{"phoneNumber":"+34600111222","found":false},"meta":{"requestId":"req_example","unitsCharged":1}}}}}}},"400":{"description":"Invalid JSON or missing required idempotency key; no units charged","content":{"application/json":{"schema":{"type":"object","required":["error"],"properties":{"error":{"type":"object","required":["code","message","requestId"],"properties":{"code":{"type":"string"},"message":{"type":"string"},"requestId":{"type":"string"},"details":{"type":"array","items":{"type":"object"}}}}}}}}},"401":{"description":"Missing, invalid, expired, revoked, or inactive API key","content":{"application/json":{"schema":{"type":"object","required":["error"],"properties":{"error":{"type":"object","required":["code","message","requestId"],"properties":{"code":{"type":"string"},"message":{"type":"string"},"requestId":{"type":"string"},"details":{"type":"array","items":{"type":"object"}}}}}}}}},"409":{"description":"Idempotency conflict or request still processing","content":{"application/json":{"schema":{"type":"object","required":["error"],"properties":{"error":{"type":"object","required":["code","message","requestId"],"properties":{"code":{"type":"string"},"message":{"type":"string"},"requestId":{"type":"string"},"details":{"type":"array","items":{"type":"object"}}}}}}}}},"413":{"description":"Request body exceeded the bounded payload limit; no units charged","content":{"application/json":{"schema":{"type":"object","required":["error"],"properties":{"error":{"type":"object","required":["code","message","requestId"],"properties":{"code":{"type":"string"},"message":{"type":"string"},"requestId":{"type":"string"},"details":{"type":"array","items":{"type":"object"}}}}}}}}},"422":{"description":"Request validation failed","content":{"application/json":{"schema":{"type":"object","required":["error"],"properties":{"error":{"type":"object","required":["code","message","requestId"],"properties":{"code":{"type":"string"},"message":{"type":"string"},"requestId":{"type":"string"},"details":{"type":"array","items":{"type":"object"}}}}}}}}},"429":{"description":"Per-key rate or monthly unit quota exceeded","content":{"application/json":{"schema":{"type":"object","required":["error"],"properties":{"error":{"type":"object","required":["code","message","requestId"],"properties":{"code":{"type":"string"},"message":{"type":"string"},"requestId":{"type":"string"},"details":{"type":"array","items":{"type":"object"}}}}}}}}},"500":{"description":"Server failure; no units charged","content":{"application/json":{"schema":{"type":"object","required":["error"],"properties":{"error":{"type":"object","required":["code","message","requestId"],"properties":{"code":{"type":"string"},"message":{"type":"string"},"requestId":{"type":"string"},"details":{"type":"array","items":{"type":"object"}}}}}}}}},"503":{"description":"Beta, provider, or service temporarily unavailable; no units charged","content":{"application/json":{"schema":{"type":"object","required":["error"],"properties":{"error":{"type":"object","required":["code","message","requestId"],"properties":{"code":{"type":"string"},"message":{"type":"string"},"requestId":{"type":"string"},"details":{"type":"array","items":{"type":"object"}}}}}}}}}}}},"/v1/data/reverse-phone-lookups":{"post":{"summary":"Return verified businesses only","security":[{"developerBearer":[]}],"parameters":[{"$ref":"#/components/parameters/OptionalIdempotencyKey"}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","additionalProperties":false,"required":["phone"],"properties":{"phone":{"type":"string","maxLength":64,"example":"+34600111222"},"country":{"type":"string","minLength":2,"maxLength":2,"example":"ES"}}}}}},"responses":{"200":{"description":"Accepted lookup. One unit is charged, including valid not-found results.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/SuccessEnvelope"},"examples":{"found":{"value":{"data":{"phoneNumber":"+34910111222","found":true,"business":{"name":"Example SL","verified":true}},"meta":{"requestId":"req_example","unitsCharged":1}}},"notFound":{"value":{"data":{"phoneNumber":"+34600111222","found":false},"meta":{"requestId":"req_example","unitsCharged":1}}}}}}},"400":{"description":"Invalid JSON or missing required idempotency key; no units charged","content":{"application/json":{"schema":{"type":"object","required":["error"],"properties":{"error":{"type":"object","required":["code","message","requestId"],"properties":{"code":{"type":"string"},"message":{"type":"string"},"requestId":{"type":"string"},"details":{"type":"array","items":{"type":"object"}}}}}}}}},"401":{"description":"Missing, invalid, expired, revoked, or inactive API key","content":{"application/json":{"schema":{"type":"object","required":["error"],"properties":{"error":{"type":"object","required":["code","message","requestId"],"properties":{"code":{"type":"string"},"message":{"type":"string"},"requestId":{"type":"string"},"details":{"type":"array","items":{"type":"object"}}}}}}}}},"409":{"description":"Idempotency conflict or request still processing","content":{"application/json":{"schema":{"type":"object","required":["error"],"properties":{"error":{"type":"object","required":["code","message","requestId"],"properties":{"code":{"type":"string"},"message":{"type":"string"},"requestId":{"type":"string"},"details":{"type":"array","items":{"type":"object"}}}}}}}}},"413":{"description":"Request body exceeded the bounded payload limit; no units charged","content":{"application/json":{"schema":{"type":"object","required":["error"],"properties":{"error":{"type":"object","required":["code","message","requestId"],"properties":{"code":{"type":"string"},"message":{"type":"string"},"requestId":{"type":"string"},"details":{"type":"array","items":{"type":"object"}}}}}}}}},"422":{"description":"Request validation failed","content":{"application/json":{"schema":{"type":"object","required":["error"],"properties":{"error":{"type":"object","required":["code","message","requestId"],"properties":{"code":{"type":"string"},"message":{"type":"string"},"requestId":{"type":"string"},"details":{"type":"array","items":{"type":"object"}}}}}}}}},"429":{"description":"Per-key rate or monthly unit quota exceeded","content":{"application/json":{"schema":{"type":"object","required":["error"],"properties":{"error":{"type":"object","required":["code","message","requestId"],"properties":{"code":{"type":"string"},"message":{"type":"string"},"requestId":{"type":"string"},"details":{"type":"array","items":{"type":"object"}}}}}}}}},"500":{"description":"Server failure; no units charged","content":{"application/json":{"schema":{"type":"object","required":["error"],"properties":{"error":{"type":"object","required":["code","message","requestId"],"properties":{"code":{"type":"string"},"message":{"type":"string"},"requestId":{"type":"string"},"details":{"type":"array","items":{"type":"object"}}}}}}}}},"503":{"description":"Beta, provider, or service temporarily unavailable; no units charged","content":{"application/json":{"schema":{"type":"object","required":["error"],"properties":{"error":{"type":"object","required":["code","message","requestId"],"properties":{"code":{"type":"string"},"message":{"type":"string"},"requestId":{"type":"string"},"details":{"type":"array","items":{"type":"object"}}}}}}}}}}}},"/v1/data/phone-exposure-checks":{"post":{"summary":"Return boolean-only phone exposure","security":[{"developerBearer":[]}],"parameters":[{"$ref":"#/components/parameters/OptionalIdempotencyKey"}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","additionalProperties":false,"required":["phone"],"properties":{"phone":{"type":"string","maxLength":64,"example":"+34600111222"},"country":{"type":"string","minLength":2,"maxLength":2,"example":"ES"}}}}}},"responses":{"200":{"description":"Accepted lookup. One unit is charged, including valid not-found results.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/SuccessEnvelope"},"examples":{"found":{"value":{"data":{"atRisk":false},"meta":{"requestId":"req_example","unitsCharged":1}}},"notFound":{"value":{"data":{"phoneNumber":"+34600111222","found":false},"meta":{"requestId":"req_example","unitsCharged":1}}}}}}},"400":{"description":"Invalid JSON or missing required idempotency key; no units charged","content":{"application/json":{"schema":{"type":"object","required":["error"],"properties":{"error":{"type":"object","required":["code","message","requestId"],"properties":{"code":{"type":"string"},"message":{"type":"string"},"requestId":{"type":"string"},"details":{"type":"array","items":{"type":"object"}}}}}}}}},"401":{"description":"Missing, invalid, expired, revoked, or inactive API key","content":{"application/json":{"schema":{"type":"object","required":["error"],"properties":{"error":{"type":"object","required":["code","message","requestId"],"properties":{"code":{"type":"string"},"message":{"type":"string"},"requestId":{"type":"string"},"details":{"type":"array","items":{"type":"object"}}}}}}}}},"409":{"description":"Idempotency conflict or request still processing","content":{"application/json":{"schema":{"type":"object","required":["error"],"properties":{"error":{"type":"object","required":["code","message","requestId"],"properties":{"code":{"type":"string"},"message":{"type":"string"},"requestId":{"type":"string"},"details":{"type":"array","items":{"type":"object"}}}}}}}}},"413":{"description":"Request body exceeded the bounded payload limit; no units charged","content":{"application/json":{"schema":{"type":"object","required":["error"],"properties":{"error":{"type":"object","required":["code","message","requestId"],"properties":{"code":{"type":"string"},"message":{"type":"string"},"requestId":{"type":"string"},"details":{"type":"array","items":{"type":"object"}}}}}}}}},"422":{"description":"Request validation failed","content":{"application/json":{"schema":{"type":"object","required":["error"],"properties":{"error":{"type":"object","required":["code","message","requestId"],"properties":{"code":{"type":"string"},"message":{"type":"string"},"requestId":{"type":"string"},"details":{"type":"array","items":{"type":"object"}}}}}}}}},"429":{"description":"Per-key rate or monthly unit quota exceeded","content":{"application/json":{"schema":{"type":"object","required":["error"],"properties":{"error":{"type":"object","required":["code","message","requestId"],"properties":{"code":{"type":"string"},"message":{"type":"string"},"requestId":{"type":"string"},"details":{"type":"array","items":{"type":"object"}}}}}}}}},"500":{"description":"Server failure; no units charged","content":{"application/json":{"schema":{"type":"object","required":["error"],"properties":{"error":{"type":"object","required":["code","message","requestId"],"properties":{"code":{"type":"string"},"message":{"type":"string"},"requestId":{"type":"string"},"details":{"type":"array","items":{"type":"object"}}}}}}}}},"503":{"description":"Beta, provider, or service temporarily unavailable; no units charged","content":{"application/json":{"schema":{"type":"object","required":["error"],"properties":{"error":{"type":"object","required":["code","message","requestId"],"properties":{"code":{"type":"string"},"message":{"type":"string"},"requestId":{"type":"string"},"details":{"type":"array","items":{"type":"object"}}}}}}}}}}}},"/v1/data/bulk-lookups":{"post":{"summary":"Run up to 50 phone lookups with per-item validation and charging","security":[{"developerBearer":[]}],"parameters":[{"$ref":"#/components/parameters/RequiredIdempotencyKey"}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","additionalProperties":false,"required":["product","inputs"],"properties":{"product":{"type":"string","enum":["phone-lookup","phone-risk","carrier-lookup","reverse-phone-lookup","phone-exposure"]},"inputs":{"type":"array","minItems":1,"maxItems":50,"items":{"type":"object","required":["phone"],"properties":{"phone":{"type":"string","maxLength":64},"country":{"type":"string"}}}}}},"example":{"product":"phone-risk","inputs":[{"phone":"+34600111222"},{"phone":"invalid"}]}}}},"responses":{"200":{"description":"Partial item errors are returned inline; only successful valid items consume units.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/SuccessEnvelope"},"example":{"data":{"product":"phone-risk","items":[{"index":0,"data":{"found":false}},{"index":1,"error":{"code":"invalid_phone","message":"Invalid phone number."}}]},"meta":{"requestId":"req_example","unitsCharged":1}}}}},"400":{"description":"Invalid JSON or missing required idempotency key; no units charged","content":{"application/json":{"schema":{"type":"object","required":["error"],"properties":{"error":{"type":"object","required":["code","message","requestId"],"properties":{"code":{"type":"string"},"message":{"type":"string"},"requestId":{"type":"string"},"details":{"type":"array","items":{"type":"object"}}}}}}}}},"401":{"description":"Missing, invalid, expired, revoked, or inactive API key","content":{"application/json":{"schema":{"type":"object","required":["error"],"properties":{"error":{"type":"object","required":["code","message","requestId"],"properties":{"code":{"type":"string"},"message":{"type":"string"},"requestId":{"type":"string"},"details":{"type":"array","items":{"type":"object"}}}}}}}}},"409":{"description":"Idempotency conflict or request still processing","content":{"application/json":{"schema":{"type":"object","required":["error"],"properties":{"error":{"type":"object","required":["code","message","requestId"],"properties":{"code":{"type":"string"},"message":{"type":"string"},"requestId":{"type":"string"},"details":{"type":"array","items":{"type":"object"}}}}}}}}},"413":{"description":"Request body exceeded the bounded payload limit; no units charged","content":{"application/json":{"schema":{"type":"object","required":["error"],"properties":{"error":{"type":"object","required":["code","message","requestId"],"properties":{"code":{"type":"string"},"message":{"type":"string"},"requestId":{"type":"string"},"details":{"type":"array","items":{"type":"object"}}}}}}}}},"422":{"description":"Request validation failed","content":{"application/json":{"schema":{"type":"object","required":["error"],"properties":{"error":{"type":"object","required":["code","message","requestId"],"properties":{"code":{"type":"string"},"message":{"type":"string"},"requestId":{"type":"string"},"details":{"type":"array","items":{"type":"object"}}}}}}}}},"429":{"description":"Per-key rate or monthly unit quota exceeded","content":{"application/json":{"schema":{"type":"object","required":["error"],"properties":{"error":{"type":"object","required":["code","message","requestId"],"properties":{"code":{"type":"string"},"message":{"type":"string"},"requestId":{"type":"string"},"details":{"type":"array","items":{"type":"object"}}}}}}}}},"500":{"description":"Server failure; no units charged","content":{"application/json":{"schema":{"type":"object","required":["error"],"properties":{"error":{"type":"object","required":["code","message","requestId"],"properties":{"code":{"type":"string"},"message":{"type":"string"},"requestId":{"type":"string"},"details":{"type":"array","items":{"type":"object"}}}}}}}}},"503":{"description":"Beta, provider, or service temporarily unavailable; no units charged","content":{"application/json":{"schema":{"type":"object","required":["error"],"properties":{"error":{"type":"object","required":["code","message","requestId"],"properties":{"code":{"type":"string"},"message":{"type":"string"},"requestId":{"type":"string"},"details":{"type":"array","items":{"type":"object"}}}}}}}}}}}}},"components":{"securitySchemes":{"developerBearer":{"type":"http","scheme":"bearer","bearerFormat":"nc_beta_…","description":"Raw keys are shown once, expire after 90 days, and may be revoked immediately."}},"parameters":{"OptionalIdempotencyKey":{"name":"Idempotency-Key","in":"header","required":false,"schema":{"type":"string","minLength":8,"maxLength":128}},"RequiredIdempotencyKey":{"name":"Idempotency-Key","in":"header","required":true,"schema":{"type":"string","minLength":8,"maxLength":128}}},"schemas":{"SuccessEnvelope":{"type":"object","required":["data","meta"],"properties":{"data":{},"meta":{"type":"object","required":["requestId"],"properties":{"requestId":{"type":"string"},"unitsCharged":{"type":"integer","minimum":0},"usage":{"type":"object"}}}}},"ErrorEnvelope":{"type":"object","required":["error"],"properties":{"error":{"type":"object","required":["code","message","requestId"],"properties":{"code":{"type":"string"},"message":{"type":"string"},"requestId":{"type":"string"},"details":{"type":"array","items":{"type":"object"}}}}}}}}}