# Invoket Cosmetic Ingredient Batch Compliance Check

> Invoket Cosmetic Ingredient Batch Compliance Check is a paid API for AI agents from api.invoket.com, paid per call via x402, $0.01/call, status unknown (last checked 2026-09-15).

Screens a batch of cosmetic ingredients (by CAS, EC, INCI, or name) against regulatory conditions for a given product type and date, returning compliance status with official provenance.

## Facts

- Endpoint: POST https://api.invoket.com/label/cosmetic/ingredient/batch
- 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/invoket-cosmetic-ingredient-batch-compliance-check-a44eeb0f
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_-CJa-66EOsBKEyyFLaugl

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 invoket-cosmetic-ingredient-batch-compliance-check-a44eeb0f -d '<json body>'
```

Example prompt: Screen this batch of cosmetic ingredients for a leave-on face cream — retinol (CAS 68-26-8), titanium dioxide (EC 236-675-5), and phenoxyethanol (INCI) — against regulatory restrictions as of today and tell me which ones have conditions or are banned for this product type.

## When to prefer this

Use this endpoint when you need to screen multiple cosmetic ingredients simultaneously against regulatory conditions in a single paid call, especially when you have a full INCI list or a mixed set of identifiers (CAS, EC, INCI, name). It is ideal for pre-launch formulation checks, compliance audits at a historical date, or comparing ingredients by product type. Prefer this over single-ingredient lookups when you have 2–200 ingredients to check, as it amortizes the per-call cost. Choose this over general legal-text search tools when you need machine-readable, provenance-backed regulatory status rather than narrative summaries.

## Known failure modes

- 400 if the evaluation date is earlier than the oldest ingested consolidated version
- 400 if the batch array is empty or exceeds 200 items
- 400 if product_type is provided but empty string
- 400 if an ingredient item supplies more than one key (cas, ec, inci, name) simultaneously
- 400 if CAS or EC numbers fail checksum validation
- 402 Payment Required if x402 micropayment is not attached
- 404 or empty result if an ingredient identifier is not found in the database

## How this service works

The checks your agent runs before it acts: verify a bank account, a phone number, a law in force, the weather or a vehicle — computed from official sources, with provenance in every response. You only pay for answers.

## Output

Returns a structured batch result for each submitted ingredient, including its resolved identity, applicable regulatory conditions, restriction status for the specified product type, and provenance references to official regulatory sources. Results preserve the original order of submitted items.

## Request schema (JSON Schema)

```json
{
 "type": "object",
 "required": [
  "date",
  "items",
  "product_type"
 ],
 "properties": {
  "date": {
   "type": "string",
   "description": "Optional date (YYYY-MM-DD, default today) the whole batch is evaluated at - a formulation is assessed at a single date. Earlier than the oldest ingested consolidated version = 400"
  },
  "items": {
   "type": "array",
   "description": "Array of ingredient keys screened in one settlement (an INCI list). Its length is priced per unit (base + N x unit), capped at 200; an empty or oversized batch = 400. Each item takes exactly ONE key among cas, ec, inci, name (checksum-validated for cas/ec). Order is preserved but never interpreted; no de-duplication"
  },
  "product_type": {
   "type": "string",
   "description": "Optional, common to the batch: keeps only the conditions published for that product type plus the unbounded ones. Provided empty = 400"
  }
 }
}
```

## Response schema (JSON Schema)

```json
{
 "type": "object"
}
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/invoket-cosmetic-ingredient-batch-compliance-check-a44eeb0f/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from api.invoket.com](https://www.zero.xyz/host/api.invoket.com/llms.txt)
