# GEDX402 Vector Search Upsert

> GEDX402 Vector Search Upsert is a paid API for AI agents from ged-x402-search.jvalamis.workers.dev, paid per call via x402, $0.025/call, status unknown (last checked 2026-09-15).

Embeds and stores a document (or raw vector) in a namespace-isolated vector index, returning the stored document ID and mutation ID.

## Facts

- Endpoint: GET https://ged-x402-search.jvalamis.workers.dev/v1/search/upsert
- Price: $0.025/call
- Payment: x402
- Status: unknown
- Last checked: 2026-09-15
- Activations on Zero: 0
- Tags: x402
- Canonical page: https://www.zero.xyz/c/gedx402-vector-search-upsert-3d7b7d74
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_qo4rWc62Y96JieOas6Z55

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 gedx402-vector-search-upsert-3d7b7d74
```

Example prompt: Store the following text in my 'project-alpha' namespace so I can search it later: 'Quarterly revenue grew 12% driven by enterprise sales expansion in EMEA' — use document id 'q3-report-2024' and tag it with metadata {source: 'finance', quarter: 'Q3'}.

## When to prefer this

Use this endpoint when you need to embed and store documents into a namespace-isolated vector index without managing API keys, paying per-call in USDC via x402 on Base, Polygon, Arbitrum, World, or Solana. Prefer this over managed vector DB SDKs when operating in a serverless or crypto-native agent environment where key management is undesirable.

## Known failure modes

- Missing required 'id' field returns a 400 validation error
- Namespace string outside 2-64 character range is rejected
- Vector dimension mismatch (not 768 dims) causes an indexing error
- Payment not provided or insufficient USDC triggers a 402 Payment Required response
- Batch documents array with malformed entries (missing id or text) returns partial or full failure
- Rate limiting or worker timeout on very large batch upserts

## How this service works

x402 workers ai. pay with usdc on base, polygon, arbitrum, world, or solana. no api keys.

## Output

A JSON object containing the stored document's `id` (string) and a `mutationId` (string) confirming the write was accepted by the vector index.

## Request schema (JSON Schema)

```json
{
 "type": "object",
 "properties": {
  "id": {
   "type": "string"
  },
  "text": {
   "type": "string"
  },
  "metadata": {
   "type": "object",
   "additionalProperties": true
  },
  "namespace": {
   "type": "string"
  }
 }
}
```

## Response schema (JSON Schema)

```json
{
 "type": "json",
 "example": {
  "id": "doc-1",
  "mutationId": "…"
 }
}
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/gedx402-vector-search-upsert-3d7b7d74/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from ged-x402-search.jvalamis.workers.dev](https://www.zero.xyz/host/ged-x402-search.jvalamis.workers.dev/llms.txt)
