# three.ws DID Verification Endpoint

> three.ws DID Verification Endpoint is a paid API for AI agents from three.ws, paid per call via x402, $0.001/call, status unknown (last checked 2026-10-23).

Verifies a three.ws Decentralized Identifier (DID), confirming it is valid, well-formed, resolves correctly, and has a functioning x402 payment service endpoint.

## Facts

- Endpoint: POST https://three.ws/api/x402/did?utm_source=zero.xyz
- Price: $0.001/call
- Payment: x402
- Status: unknown
- Last checked: 2026-10-23
- Activations on Zero: 0
- Tags: x402
- Canonical page: https://www.zero.xyz/c/three-ws-did-verification-endpoint-0fe4bfbd
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_fkRspFvAFZIh-ZgYdP9cx

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 three-ws-did-verification-endpoint-0fe4bfbd -d '<json body>'
```

Example prompt: Can you verify that the DID 'did:three:canary' is valid and properly configured — check that it resolves, has the right structure, and has a working x402 service endpoint?

## When to prefer this

Use this endpoint when you need to programmatically confirm that a three.ws 3D agent DID is fully operational — especially before embedding an agent on a website, before routing payments to it, or when diagnosing why an agent identity is not working. Prefer this over generic DID resolvers because it specifically checks for x402 payment service endpoints and three.ws-specific structural requirements.

## Known failure modes

- DID does not exist or cannot be resolved — assertion_resolves returns false
- DID document is missing required fields (context, id, verification method) — individual checks return false
- DID is malformed — malformed returns true, verified returns false
- x402 service endpoint missing from DID document — has_x402_service returns false
- Resolution latency exceeds threshold — within_latency returns false
- Network error reaching the DID resolver — may return non-200 HTTP status

## How this service works

Make a 3D AI agent from a selfie in 60 seconds. Drop one HTML tag to embed it on any website. Agents think on IBM watsonx.ai (Granite); optionally charge per chat with built-in micropayments.

## Output

Returns a JSON object containing: the verified DID string, a timestamp, the resolved DID (e.g. did:web:three.ws), a 'verified' boolean, a 'configured' boolean, a 'malformed' boolean, latency in milliseconds, the HTTP status of the resolution, whether latency is within threshold, and a 'checks' object with individual boolean results for: valid, is_object, has_did_id, has_did_context, has_x402_service, assertion_resolves, and has_verification_method.

## 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",
     "$schema": "https://json-schema.org/draft/2020-12/schema",
     "properties": {
      "did": {
       "type": "string",
       "default": "did:three:canary",
       "description": "DID to verify (echoed for round-trip confirmation)."
      },
      "mode": {
       "enum": [
        "verify"
       ],
       "type": "string",
       "default": "verify",
       "description": "Operation. Only \"verify\" is supported."
      }
     }
    },
    "type": {
     "type": "string",
     "const": "http"
    },
    "method": {
     "enum": [
      "POST",
      "PUT",
      "PATCH"
     ],
     "type": "string"
    },
    "bodyType": {
     "enum": [
      "json",
      "form-data",
      "text"
     ],
     "type": "string"
    }
   },
   "additionalProperties": false
  }
 }
}
```

## Response schema (JSON Schema)

```json
{
 "type": "json",
 "example": {
  "ts": "2026-06-27T10:00:00Z",
  "did": "did:three:canary",
  "mode": "verify",
  "checks": {
   "valid": true,
   "is_object": true,
   "has_did_id": true,
   "has_did_context": true,
   "has_x402_service": true,
   "assertion_resolves": true,
   "has_verification_method": true
  },
  "verified": true,
  "malformed": false,
  "configured": true,
  "latency_ms": 142,
  "http_status": 200,
  "resolved_did": "did:web:three.ws",
  "within_latency": true
 }
}
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/three-ws-did-verification-endpoint-0fe4bfbd/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from three.ws](https://www.zero.xyz/host/three.ws/llms.txt)
