0xArchive · OpenAPI Overlay 1.0.0

API Evangelist conversational phrasing for 0xArchive Web3 Authentication API

7 actions 7 updates phrasing extends openapi/0xarchive-web3-authentication-api-openapi.yml
Generated by API Evangelist Written by API Evangelist tooling for 0xArchive's API. It is a proposal applied on top of the contract, not a document 0xArchive publishes.
View Overlay File View on GitHub Overlay Specification

What the actions change

x-apievangelist-phrasing

Targets 7

$.info
$.paths['/v1/auth/web3/challenge'].post
$.paths['/v1/web3/signup'].post
$.paths['/v1/web3/keys'].post
$.paths['/v1/web3/keys/revoke'].post
$.paths['/v1/web3/subscribe'].post
$.paths['/v1/auth/web3/verify'].post

OpenAPI Overlay

Raw ↑
# Generated by API Evangelist (build-phrasing.py). Our phrasing, not observed demand.
overlay: 1.0.0
info:
  title: API Evangelist conversational phrasing for 0xArchive Web3 Authentication API
  version: 1.0.0
extends: openapi/0xarchive-web3-authentication-api-openapi.yml
actions:
- target: $.info
  update:
    x-apievangelist-phrasing:
      method: generated
      generated: '2026-09-26'
      generator: build-phrasing.py
      label: Generated by API Evangelist
      operations: 6
- target: $.paths['/v1/auth/web3/challenge'].post
  update:
    x-apievangelist-phrasing:
      intent: Request a Sign-In with Ethereum challenge
      effect: write
      questions:
      - How do I get a SIWE message for my wallet to sign?
      - How long does a wallet sign-in challenge nonce stay valid?
      instructions:
      - text: Request a SIWE challenge for wallet {address}.
        slots:
          address: requestBody.address
      - text: Get a sign-in challenge message for {address} so I can manage my keys.
        slots:
          address: requestBody.address
      method: generated
      generated: '2026-09-26'
- target: $.paths['/v1/web3/signup'].post
  update:
    x-apievangelist-phrasing:
      intent: Call the retired wallet-only free signup
      effect: write
      questions:
      - Can I still create a free account with just a wallet?
      - What does the old wallet free signup endpoint return now?
      instructions:
      - text: Call the retired wallet free signup endpoint to confirm it returns 410.
      - text: Check the deprecated wallet-only signup tombstone.
      method: generated
      generated: '2026-09-26'
- target: $.paths['/v1/web3/keys'].post
  update:
    x-apievangelist-phrasing:
      intent: List the API keys owned by my wallet
      effect: read
      questions:
      - Which API keys belong to my wallet?
      - Can I see my wallet's keys by signing a SIWE message?
      instructions:
      - text: List my wallet's API keys using signed message {message} and signature {signature}.
        slots:
          message: requestBody.message
          signature: requestBody.signature
      - text: Show all API keys for my wallet.
      method: generated
      generated: '2026-09-26'
- target: $.paths['/v1/web3/keys/revoke'].post
  update:
    x-apievangelist-phrasing:
      intent: Revoke a wallet API key
      effect: destructive
      questions:
      - How do I revoke an API key tied to my wallet?
      - What signature do I need to disable one of my keys?
      instructions:
      - text: Revoke API key {key_id} with SIWE message {message} and signature {signature}.
        slots:
          key_id: requestBody.key_id
          message: requestBody.message
          signature: requestBody.signature
      - text: Revoke my key {key_id}.
        slots:
          key_id: requestBody.key_id
      method: generated
      generated: '2026-09-26'
- target: $.paths['/v1/web3/subscribe'].post
  update:
    x-apievangelist-phrasing:
      intent: Buy Build or Pro access with USDC
      effect: write
      questions:
      - Can I pay for Build or Pro access with USDC on Base?
      - What happens on the first subscribe request without a payment header?
      - How long does x402-paid access last?
      instructions:
      - text: Start a {tier} subscription paid in USDC.
        slots:
          tier: requestBody.tier
      - text: Retry my {tier} purchase with payment signature {payment_signature}.
        slots:
          tier: requestBody.tier
          payment_signature: header.payment-signature
      method: generated
      generated: '2026-09-26'
- target: $.paths['/v1/auth/web3/verify'].post
  update:
    x-apievangelist-phrasing:
      intent: Verify a signed wallet sign-in message
      effect: write
      questions:
      - How do I finish wallet sign-in after signing the SIWE message?
      - Why would verifying my wallet signature return 403?
      instructions:
      - text: Verify SIWE message {message} with signature {signature}.
        slots:
          message: requestBody.message
          signature: requestBody.signature
      - text: Complete my wallet sign-in and set the session cookies.
      method: generated
      generated: '2026-09-26'