# Delx Await Promise

> Delx Await Promise is a paid API for AI agents from api.delx.ai, paid per call via x402, $0.01/call, status unknown (last checked 2026-09-13).

Creates a durable, paid promise that waits for a time or webhook condition, then releases an opaque continuation envelope with an Ed25519 receipt upon capability authorization.

## Facts

- Endpoint: POST https://api.delx.ai/api/v1/x402/await
- Price: $0.01/call
- Payment: x402
- Status: unknown
- Last checked: 2026-09-13
- Activations on Zero: 0
- Tags: x402
- Canonical page: https://www.zero.xyz/c/delx-await-promise-b33dc0a3
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_-g21nkHjFOUDF1k2OUHxb

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 delx-await-promise-b33dc0a3 -d '<json body>'
```

Example prompt: Store my encrypted continuation envelope and wake me up in exactly 24 hours using a time condition — I want to claim the envelope with an Ed25519 receipt once the deadline passes, and use idempotency key 'order-resume-7821' so replays return the same promise.

## When to prefer this

Choose this endpoint when an AI agent needs to durably suspend execution and resume only after a specific future time or an external event, without polling. It is ideal for long-running agentic workflows that require async checkpointing, secure continuation storage, and cryptographic proof of delivery. Prefer it over polling-based waits, cron jobs, or in-process timers when you need idempotent replay guarantees, a signed Ed25519 receipt, and zero exposure of the continuation before capability authorization. Best suited for x402-native agent pipelines that already handle micropayments.

## Known failure modes

- Payment not received or x402 authorization fails — promise is not created
- TTL exceeds maximum of 604800000ms (7 days) — validation error
- Webhook delivery URL is missing when mode is set to 'webhook' — schema validation error
- Condition object does not match either 'time' or 'webhook' oneOf schema — rejected
- Resume envelope exceeds 32768 character limit — rejected
- Condition timestamp is in the past for time-based conditions — may result in immediate or error response
- Idempotency key collision with a different payload — conflict error

## How this service works

Durable outcome promise for agents: pay $0.01 USDC once, wait for a time or signed webhook condition, then claim an opaque continuation envelope with an Ed25519 receipt. Idempotent replay, no subscription, no polling provider, and no continuation is exposed before the capability check.

## Output

Returns a promise object containing a unique promise ID, the stored opaque continuation envelope (released only after the condition is met and capability is authorized), an Ed25519 cryptographic receipt confirming authenticity, and metadata about the condition and TTL. On idempotent replay with the same idempotency key, returns the identical promise and capability without re-charging.

## Request schema (JSON Schema)

```json
{
 "type": "object",
 "properties": {
  "ttl_ms": {
   "type": "integer",
   "default": 86400000,
   "maximum": 604800000,
   "minimum": 1
  },
  "delivery": {
   "type": "object",
   "required": [
    "mode"
   ],
   "properties": {
    "url": {
     "type": "string",
     "format": "uri",
     "description": "HTTPS endpoint; required for webhook delivery."
    },
    "mode": {
     "enum": [
      "claim",
      "webhook"
     ],
     "type": "string"
    }
   },
   "additionalProperties": false
  },
  "condition": {
   "type": "object",
   "oneOf": [
    {
     "required": [
      "kind",
      "at"
     ],
     "properties": {
      "at": {
       "type": "string",
       "format": "date-time"
      },
      "kind": {
       "type": "string",
       "const": "time"
      }
     },
     "additionalProperties": false
    },
    {
     "required": [
      "kind",
      "event_type"
     ],
     "properties": {
      "kind": {
       "type": "string",
       "const": "webhook"
      },
      "event_type": {
       "type": "string",
       "maxLength": 128,
       "minLength": 1
      }
     },
     "additionalProperties": false
    }
   ],
   "description": "A future timestamp or an inbound event type. External HTTP polling is intentionally disabled."
  },
  "idempotency_key": {
   "type": "string",
   "maxLength": 256,
   "minLength": 1,
   "description": "Stable client key. Replaying the same paid request returns the same promise and capability."
  },
  "resume_envelope": {
   "type": "string",
   "maxLength": 32768,
   "minLength": 1,
   "description": "Opaque client-owned continuation ciphertext. Delx stores and releases it only after capability authorization."
  }
 }
}
```

## Response schema (JSON Schema)

```json
{
 "type": "json",
 "example": {
  "state": "waiting",
  "schema": "delx/await/v1",
  "receipt": {
   "schema": "delx/await-receipt/v1",
   "algorithm": "Ed25519"
  },
  "delivery": {
   "mode": "claim",
   "state": "claim_only",
   "attempts": 0,
   "event_id": null
  },
  "condition": {
   "kind": "webhook",
   "event_type": "build.completed"
  },
  "capability": "opaque-capability-returned-on-create",
  "created_at": "2026-08-04T16:00:00Z",
  "expires_at": "2026-08-04T17:00:00Z",
  "promise_id": "123e4567-e89b-12d3-a456-426614174000",
  "resume_envelope_sha256": "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa"
 }
}
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/delx-await-promise-b33dc0a3/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from api.delx.ai](https://www.zero.xyz/host/api.delx.ai/llms.txt)
