# Periodic Table Element Search

> Periodic Table Element Search is a paid API for AI agents from chem.openverbs.com, paid per call via x402, $0.004/call, status unknown (last checked 2026-09-14).

Search the periodic table by name or symbol substring, returning ranked matches (exact, prefix, then substring) up to a specified limit.

## Facts

- Endpoint: POST https://chem.openverbs.com/v1/search
- Price: $0.004/call
- Payment: x402
- Status: unknown
- Last checked: 2026-09-14
- Activations on Zero: 0
- Tags: x402
- Canonical page: https://www.zero.xyz/c/periodic-table-element-search-19390d11
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_U-wUfjnDEK2Z0ln28zvyA

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 periodic-table-element-search-19390d11 -d '<json body>'
```

Example prompt: Search the periodic table for any elements whose name or symbol contains 'cal' and show me the top 5 matches.

## When to prefer this

Use this endpoint when you need fuzzy or partial matching across element names and symbols simultaneously, especially when the user provides an incomplete name or symbol fragment. Prefer this over the exact-lookup sibling endpoint when you don't have the precise symbol, name, or atomic number. It is also well-suited for autocomplete, disambiguation, or exploratory queries across the full periodic table.

## Known failure modes

- Query string shorter than 1 character or longer than 40 characters returns a validation error
- Limit outside 1–118 range returns a validation error
- No matching elements found returns an empty list with total count of 0
- Network timeout or service unavailability returns a 5xx error

## How this service works

Search the periodic table by name or symbol substring. Exact matches rank first, then prefix matches, then substring matches. Returns up to `limit` elements (default 20) plus the total match count.

## Output

Returns a ranked list of matching periodic table elements (exact matches first, then prefix matches, then substring matches) up to the requested limit, along with the total count of all matches found.

## Request schema (JSON Schema)

```json
{
 "type": "object",
 "$schema": "https://json-schema.org/draft/2020-12/schema",
 "required": [
  "input"
 ],
 "properties": {
  "input": {
   "type": "object",
   "required": [
    "type",
    "method",
    "bodyType",
    "body"
   ],
   "properties": {
    "body": {
     "type": "object",
     "required": [
      "query"
     ],
     "properties": {
      "limit": {
       "type": "integer",
       "maximum": 118,
       "minimum": 1,
       "description": "Maximum matches to return. Default 20."
      },
      "query": {
       "type": "string",
       "maxLength": 40,
       "minLength": 1,
       "description": "Name or symbol fragment."
      }
     },
     "additionalProperties": false
    },
    "type": {
     "type": "string",
     "const": "http"
    },
    "method": {
     "enum": [
      "POST"
     ],
     "type": "string"
    },
    "bodyType": {
     "enum": [
      "json",
      "form-data",
      "text"
     ],
     "type": "string"
    }
   },
   "additionalProperties": false
  }
 }
}
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/periodic-table-element-search-19390d11/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from chem.openverbs.com](https://www.zero.xyz/host/chem.openverbs.com/llms.txt)
