{
    "openapi": "3.0.2",
    "info": {
        "title": "WAODAO Agent API",
        "version": "1.0.0",
        "description": "Public, read-only JSON API for traversing the WAODAO daily Human + AI ArtChain and discovering official WAO token deployments and liquidity pools. No API key or authentication is required. CORS is enabled.",
        "contact": {
            "name": "WAODAO",
            "url": "https://waodao.ai/ai-agents",
            "email": "info@waodao.ai"
        }
    },
    "externalDocs": {
        "description": "WAODAO Agent API documentation and getting started guide",
        "url": "https://waodao.ai/ai-agents"
    },
    "servers": [
        {
            "url": "https://waodao.ai",
            "description": "WAODAO production API"
        }
    ],
    "security": [],
    "tags": [
        {
            "name": "ArtChain",
            "description": "Traverse the daily Human + AI ArtChain."
        },
        {
            "name": "Token Metadata",
            "description": "Read agent-friendly metadata for a published WAODAO day."
        },
        {
            "name": "Liquidity Pools",
            "description": "Discover official WAO token deployments and registered DEX pools."
        },
        {
            "name": "Schema",
            "description": "Read WAODAO-specific field semantics and discovery links."
        }
    ],
    "paths": {
        "/api/v1/waodao/index": {
            "get": {
                "operationId": "listArtChainDays",
                "x-capability": "waodao.artchain.index.read",
                "tags": [
                    "ArtChain"
                ],
                "summary": "List published WAODAO ArtChain days",
                "description": "Returns the compact prebuilt collection index. Start here for complete traversal and cache this response instead of crawling individual pages.",
                "responses": {
                    "200": {
                        "description": "Compact ArtChain index snapshot.",
                        "headers": {
                            "Access-Control-Allow-Origin": {
                                "description": "Public cross-origin access is enabled.",
                                "schema": {
                                    "type": "string",
                                    "example": "*"
                                }
                            },
                            "Cache-Control": {
                                "description": "Public caching guidance for this response.",
                                "schema": {
                                    "type": "string",
                                    "example": "public, max-age=300"
                                }
                            }
                        },
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/IndexResponse"
                                },
                                "examples": {
                                    "live": {
                                        "summary": "Live WAODAO response",
                                        "externalValue": "https://waodao.ai/api/v1/waodao/index"
                                    }
                                }
                            }
                        }
                    }
                }
            }
        },
        "/api/v1/waodao/latest": {
            "get": {
                "operationId": "getLatestArtChainDay",
                "x-capability": "waodao.artchain.latest.read",
                "tags": [
                    "ArtChain",
                    "Token Metadata"
                ],
                "summary": "Get the latest published WAODAO day",
                "description": "Returns the same metadata shape as the token endpoint for the newest published ArtChain day.",
                "responses": {
                    "200": {
                        "description": "Latest published token metadata.",
                        "headers": {
                            "Access-Control-Allow-Origin": {
                                "description": "Public cross-origin access is enabled.",
                                "schema": {
                                    "type": "string",
                                    "example": "*"
                                }
                            },
                            "Cache-Control": {
                                "description": "Public caching guidance for this response.",
                                "schema": {
                                    "type": "string",
                                    "example": "public, max-age=300"
                                }
                            }
                        },
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/TokenResponse"
                                },
                                "examples": {
                                    "live": {
                                        "summary": "Live WAODAO response",
                                        "externalValue": "https://waodao.ai/api/v1/waodao/latest"
                                    }
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "No published days were found.",
                        "headers": {
                            "Access-Control-Allow-Origin": {
                                "description": "Public cross-origin access is enabled.",
                                "schema": {
                                    "type": "string",
                                    "example": "*"
                                }
                            },
                            "Cache-Control": {
                                "description": "Public caching guidance for this response.",
                                "schema": {
                                    "type": "string",
                                    "example": "public, max-age=300"
                                }
                            }
                        },
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/ErrorResponse"
                                },
                                "example": {
                                    "error": "No published WAODAO days found",
                                    "code": 404
                                }
                            }
                        }
                    }
                }
            }
        },
        "/api/v1/waodao/token/{day}": {
            "get": {
                "operationId": "getArtChainDay",
                "x-capability": "waodao.artchain.token.read",
                "tags": [
                    "Token Metadata"
                ],
                "summary": "Get metadata for one WAODAO day",
                "description": "Returns OpenSea-compatible NFT metadata plus WAODAO traversal, market, news, trend, and source blocks. Paid auction transfers use market.sale_transaction_url; NFT airdrops use market.drop_transaction_url.",
                "parameters": [
                    {
                        "name": "day",
                        "in": "path",
                        "required": true,
                        "description": "Published ArtChain day number and NFT token ID.",
                        "schema": {
                            "type": "integer",
                            "minimum": 1,
                            "example": 1
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Agent-friendly metadata for the requested day.",
                        "headers": {
                            "Access-Control-Allow-Origin": {
                                "description": "Public cross-origin access is enabled.",
                                "schema": {
                                    "type": "string",
                                    "example": "*"
                                }
                            },
                            "Cache-Control": {
                                "description": "Public caching guidance for this response.",
                                "schema": {
                                    "type": "string",
                                    "example": "public, max-age=300"
                                }
                            }
                        },
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/TokenResponse"
                                },
                                "examples": {
                                    "live": {
                                        "summary": "Live WAODAO response",
                                        "externalValue": "https://waodao.ai/api/v1/waodao/token/1"
                                    }
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "The day path parameter is missing or invalid.",
                        "headers": {
                            "Access-Control-Allow-Origin": {
                                "description": "Public cross-origin access is enabled.",
                                "schema": {
                                    "type": "string",
                                    "example": "*"
                                }
                            },
                            "Cache-Control": {
                                "description": "Public caching guidance for this response.",
                                "schema": {
                                    "type": "string",
                                    "example": "public, max-age=300"
                                }
                            }
                        },
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/ErrorResponse"
                                },
                                "example": {
                                    "error": "Day is required",
                                    "code": 400
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "The requested day is not published.",
                        "headers": {
                            "Access-Control-Allow-Origin": {
                                "description": "Public cross-origin access is enabled.",
                                "schema": {
                                    "type": "string",
                                    "example": "*"
                                }
                            },
                            "Cache-Control": {
                                "description": "Public caching guidance for this response.",
                                "schema": {
                                    "type": "string",
                                    "example": "public, max-age=300"
                                }
                            }
                        },
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/ErrorResponse"
                                },
                                "example": {
                                    "error": "Day not found",
                                    "code": 404
                                }
                            }
                        }
                    }
                }
            }
        },
        "/api/v1/waodao/schema": {
            "get": {
                "operationId": "getAgentApiSchema",
                "x-capability": "waodao.schema.read",
                "tags": [
                    "Schema"
                ],
                "summary": "Describe WAODAO Agent API fields",
                "description": "Returns WAODAO-specific field semantics and links to every API and discovery surface.",
                "responses": {
                    "200": {
                        "description": "WAODAO Agent API field guide.",
                        "headers": {
                            "Access-Control-Allow-Origin": {
                                "description": "Public cross-origin access is enabled.",
                                "schema": {
                                    "type": "string",
                                    "example": "*"
                                }
                            },
                            "Cache-Control": {
                                "description": "Public caching guidance for this response.",
                                "schema": {
                                    "type": "string",
                                    "example": "public, max-age=300"
                                }
                            }
                        },
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/SchemaResponse"
                                },
                                "examples": {
                                    "live": {
                                        "summary": "Live WAODAO response",
                                        "externalValue": "https://waodao.ai/api/v1/waodao/schema"
                                    }
                                }
                            }
                        }
                    }
                }
            }
        },
        "/api/v1/waodao/pools": {
            "get": {
                "operationId": "listWaoLiquidityPools",
                "x-capability": "waodao.pools.read",
                "tags": [
                    "Liquidity Pools"
                ],
                "summary": "List official WAO liquidity pools",
                "description": "Returns static registry data for WAO token deployments and official pool entry points. Live prices, TVL, and swap quotes are intentionally excluded.",
                "responses": {
                    "200": {
                        "description": "Official WAO pool registry.",
                        "headers": {
                            "Access-Control-Allow-Origin": {
                                "description": "Public cross-origin access is enabled.",
                                "schema": {
                                    "type": "string",
                                    "example": "*"
                                }
                            },
                            "Cache-Control": {
                                "description": "Public caching guidance for this response.",
                                "schema": {
                                    "type": "string",
                                    "example": "public, max-age=300"
                                }
                            }
                        },
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/PoolsResponse"
                                },
                                "examples": {
                                    "live": {
                                        "summary": "Live WAODAO response",
                                        "externalValue": "https://waodao.ai/api/v1/waodao/pools"
                                    }
                                }
                            }
                        }
                    }
                }
            }
        }
    },
    "components": {
        "schemas": {
            "AgentContext": {
                "type": "object",
                "required": [
                    "summary",
                    "why_it_matters",
                    "use_cases",
                    "economic_note"
                ],
                "properties": {
                    "summary": {
                        "type": "string"
                    },
                    "why_it_matters": {
                        "type": "string"
                    },
                    "use_cases": {
                        "type": "array",
                        "items": {
                            "type": "string"
                        }
                    },
                    "economic_note": {
                        "type": "string"
                    }
                },
                "additionalProperties": false
            },
            "IndexItem": {
                "type": "object",
                "required": [
                    "day",
                    "date",
                    "timestamp",
                    "name",
                    "metadata_url",
                    "external_url",
                    "marketplace_url",
                    "sale_status",
                    "sale_type",
                    "winner_bid_eth",
                    "raw_site_data_url",
                    "image",
                    "real_artwork",
                    "bonus_tokens",
                    "prev_day",
                    "next_day",
                    "region",
                    "main_color",
                    "main_color_name",
                    "twitter_trend",
                    "trending_crypto",
                    "trending_nft",
                    "new_coin",
                    "secret_hash"
                ],
                "properties": {
                    "day": {
                        "type": "integer",
                        "minimum": 1,
                        "example": 1
                    },
                    "date": {
                        "type": "string",
                        "format": "date",
                        "nullable": true
                    },
                    "timestamp": {
                        "type": "integer",
                        "nullable": true
                    },
                    "name": {
                        "type": "string",
                        "example": "WAO ART #1"
                    },
                    "metadata_url": {
                        "type": "string",
                        "format": "uri"
                    },
                    "external_url": {
                        "type": "string",
                        "format": "uri"
                    },
                    "marketplace_url": {
                        "type": "string",
                        "format": "uri"
                    },
                    "sale_status": {
                        "type": "string",
                        "enum": [
                            "active",
                            "unsold",
                            "sold",
                            "airdrop"
                        ]
                    },
                    "sale_type": {
                        "type": "string",
                        "enum": [
                            "auction",
                            "airdrop"
                        ],
                        "nullable": true
                    },
                    "winner_bid_eth": {
                        "type": "string",
                        "nullable": true
                    },
                    "raw_site_data_url": {
                        "type": "string",
                        "format": "uri"
                    },
                    "image": {
                        "type": "string",
                        "format": "uri",
                        "nullable": true
                    },
                    "real_artwork": {
                        "type": "boolean"
                    },
                    "bonus_tokens": {
                        "type": "integer",
                        "nullable": true
                    },
                    "prev_day": {
                        "type": "integer",
                        "nullable": true
                    },
                    "next_day": {
                        "type": "integer",
                        "nullable": true
                    },
                    "region": {
                        "type": "string",
                        "nullable": true
                    },
                    "main_color": {
                        "type": "string",
                        "nullable": true
                    },
                    "main_color_name": {
                        "type": "string",
                        "nullable": true
                    },
                    "twitter_trend": {
                        "type": "string",
                        "nullable": true
                    },
                    "trending_crypto": {
                        "type": "string",
                        "nullable": true
                    },
                    "trending_nft": {
                        "type": "string",
                        "nullable": true
                    },
                    "new_coin": {
                        "type": "string",
                        "nullable": true
                    },
                    "secret_hash": {
                        "type": "string",
                        "nullable": true
                    }
                },
                "additionalProperties": false
            },
            "IndexResponse": {
                "type": "object",
                "required": [
                    "project",
                    "schema",
                    "description",
                    "agent_context",
                    "schema_url",
                    "links",
                    "collection",
                    "first_day",
                    "latest_day",
                    "total_days",
                    "count",
                    "traversal",
                    "items"
                ],
                "properties": {
                    "project": {
                        "type": "string",
                        "example": "WAODAO"
                    },
                    "schema": {
                        "type": "string",
                        "example": "waodao-index@1"
                    },
                    "description": {
                        "type": "string"
                    },
                    "agent_context": {
                        "$ref": "#/components/schemas/AgentContext"
                    },
                    "schema_url": {
                        "type": "string",
                        "format": "uri"
                    },
                    "links": {
                        "type": "object",
                        "additionalProperties": {
                            "type": "string",
                            "format": "uri"
                        }
                    },
                    "collection": {
                        "type": "object",
                        "properties": {
                            "type": {
                                "type": "string"
                            },
                            "nft_contract": {
                                "type": "string"
                            },
                            "chain": {
                                "type": "string"
                            },
                            "marketplace": {
                                "type": "string"
                            },
                            "marketplace_url": {
                                "type": "string",
                                "format": "uri"
                            }
                        },
                        "additionalProperties": false
                    },
                    "first_day": {
                        "type": "integer",
                        "nullable": true
                    },
                    "latest_day": {
                        "type": "integer",
                        "nullable": true
                    },
                    "total_days": {
                        "type": "integer",
                        "minimum": 0
                    },
                    "count": {
                        "type": "integer",
                        "minimum": 0
                    },
                    "traversal": {
                        "type": "object",
                        "properties": {
                            "start_day": {
                                "type": "integer",
                                "nullable": true
                            },
                            "end_day": {
                                "type": "integer",
                                "nullable": true
                            },
                            "strategy": {
                                "type": "string"
                            }
                        },
                        "additionalProperties": false
                    },
                    "items": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/IndexItem"
                        }
                    }
                },
                "additionalProperties": false
            },
            "Attribute": {
                "type": "object",
                "required": [
                    "trait_type",
                    "value"
                ],
                "properties": {
                    "display_type": {
                        "type": "string"
                    },
                    "trait_type": {
                        "type": "string"
                    },
                    "value": {
                        "anyOf": [
                            {
                                "type": "string",
                                "nullable": true
                            },
                            {
                                "type": "number"
                            },
                            {
                                "type": "integer"
                            },
                            {
                                "type": "boolean"
                            }
                        ]
                    }
                },
                "additionalProperties": false
            },
            "NewsItem": {
                "type": "object",
                "required": [
                    "region",
                    "key",
                    "text",
                    "url"
                ],
                "properties": {
                    "region": {
                        "type": "string"
                    },
                    "key": {
                        "type": "string"
                    },
                    "text": {
                        "type": "string",
                        "nullable": true
                    },
                    "url": {
                        "type": "string",
                        "description": "Absolute source URL when available; an empty string means no source URL was supplied.",
                        "nullable": true
                    }
                },
                "additionalProperties": false
            },
            "TokenResponse": {
                "type": "object",
                "required": [
                    "project",
                    "schema",
                    "schema_url",
                    "day",
                    "date",
                    "timestamp",
                    "name",
                    "description",
                    "image",
                    "external_url",
                    "real_artwork",
                    "bonus_tokens",
                    "links",
                    "attributes",
                    "waodao",
                    "market",
                    "news",
                    "trends",
                    "source"
                ],
                "properties": {
                    "project": {
                        "type": "string",
                        "example": "WAODAO"
                    },
                    "schema": {
                        "type": "string",
                        "example": "waodao-token@1"
                    },
                    "schema_url": {
                        "type": "string",
                        "format": "uri"
                    },
                    "day": {
                        "type": "integer",
                        "minimum": 1,
                        "example": 1
                    },
                    "date": {
                        "type": "string",
                        "format": "date",
                        "nullable": true
                    },
                    "timestamp": {
                        "type": "integer",
                        "nullable": true
                    },
                    "name": {
                        "type": "string",
                        "example": "WAO ART #1"
                    },
                    "description": {
                        "type": "string"
                    },
                    "image": {
                        "type": "string",
                        "format": "uri",
                        "nullable": true
                    },
                    "external_url": {
                        "type": "string",
                        "format": "uri"
                    },
                    "real_artwork": {
                        "type": "boolean"
                    },
                    "bonus_tokens": {
                        "type": "integer",
                        "nullable": true
                    },
                    "links": {
                        "type": "object",
                        "additionalProperties": {
                            "type": "string",
                            "format": "uri",
                            "nullable": true
                        }
                    },
                    "attributes": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/Attribute"
                        }
                    },
                    "waodao": {
                        "type": "object",
                        "properties": {
                            "schema": {
                                "type": "string"
                            },
                            "schema_url": {
                                "type": "string",
                                "format": "uri"
                            },
                            "version": {
                                "type": "string"
                            },
                            "type": {
                                "type": "string"
                            },
                            "day": {
                                "type": "integer"
                            },
                            "links": {
                                "type": "object",
                                "additionalProperties": {
                                    "type": "string",
                                    "format": "uri",
                                    "nullable": true
                                }
                            },
                            "hashes": {
                                "type": "object",
                                "additionalProperties": {
                                    "type": "string",
                                    "nullable": true
                                }
                            }
                        },
                        "additionalProperties": true
                    },
                    "market": {
                        "type": "object",
                        "properties": {
                            "chain": {
                                "type": "string"
                            },
                            "chain_id": {
                                "type": "integer"
                            },
                            "contract": {
                                "type": "string"
                            },
                            "token_id": {
                                "type": "string"
                            },
                            "sale_status": {
                                "type": "string"
                            },
                            "sale_type": {
                                "type": "string",
                                "nullable": true
                            },
                            "winner_bid_eth": {
                                "type": "string",
                                "nullable": true
                            },
                            "collector_address": {
                                "type": "string",
                                "nullable": true
                            },
                            "sale_transaction_url": {
                                "type": "string",
                                "format": "uri",
                                "nullable": true
                            },
                            "drop_transaction_url": {
                                "type": "string",
                                "format": "uri",
                                "nullable": true
                            },
                            "contract_token_url": {
                                "type": "string",
                                "format": "uri"
                            },
                            "marketplace": {
                                "type": "string"
                            },
                            "collection_url": {
                                "type": "string",
                                "format": "uri"
                            },
                            "marketplace_url": {
                                "type": "string",
                                "format": "uri"
                            }
                        },
                        "additionalProperties": true
                    },
                    "news": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/NewsItem"
                        }
                    },
                    "trends": {
                        "type": "object",
                        "additionalProperties": {
                            "type": "string",
                            "nullable": true
                        }
                    },
                    "source": {
                        "type": "object",
                        "properties": {
                            "raw_site_data_url": {
                                "type": "string",
                                "format": "uri"
                            },
                            "agent_api_url": {
                                "type": "string",
                                "format": "uri"
                            }
                        },
                        "additionalProperties": false
                    }
                },
                "additionalProperties": false
            },
            "SchemaResponse": {
                "type": "object",
                "required": [
                    "schema",
                    "description",
                    "endpoints",
                    "agent_context",
                    "fields"
                ],
                "properties": {
                    "schema": {
                        "type": "string",
                        "example": "waodao-agent-api@1"
                    },
                    "description": {
                        "type": "string"
                    },
                    "endpoints": {
                        "type": "object",
                        "description": "Absolute URLs and URI templates for API and discovery resources.",
                        "additionalProperties": {
                            "type": "string"
                        }
                    },
                    "agent_context": {
                        "$ref": "#/components/schemas/AgentContext"
                    },
                    "fields": {
                        "type": "object",
                        "additionalProperties": {
                            "type": "string"
                        }
                    }
                },
                "additionalProperties": false
            },
            "PoolItem": {
                "type": "object",
                "required": [
                    "pair",
                    "type",
                    "category",
                    "chain",
                    "dex",
                    "protocol",
                    "pool_identifier",
                    "pool_url",
                    "description",
                    "status"
                ],
                "properties": {
                    "pair": {
                        "type": "string",
                        "example": "WAO/ETH"
                    },
                    "type": {
                        "type": "string",
                        "example": "dex_pool"
                    },
                    "category": {
                        "type": "string",
                        "enum": [
                            "core_liquidity_route",
                            "friendly_pool"
                        ]
                    },
                    "chain": {
                        "type": "string"
                    },
                    "dex": {
                        "type": "string"
                    },
                    "protocol": {
                        "type": "string",
                        "nullable": true
                    },
                    "pool_identifier": {
                        "type": "string"
                    },
                    "pool_contract": {
                        "type": "string"
                    },
                    "pool_url": {
                        "type": "string",
                        "format": "uri"
                    },
                    "description": {
                        "type": "string"
                    },
                    "status": {
                        "type": "string",
                        "example": "active"
                    }
                },
                "additionalProperties": false
            },
            "PoolsResponse": {
                "type": "object",
                "required": [
                    "project",
                    "schema",
                    "purpose",
                    "description",
                    "docs_url",
                    "links",
                    "summary",
                    "market_entry",
                    "wao_token",
                    "data_policy",
                    "items"
                ],
                "properties": {
                    "project": {
                        "type": "string",
                        "example": "WAODAO"
                    },
                    "schema": {
                        "type": "string",
                        "example": "waodao-pools@1"
                    },
                    "purpose": {
                        "type": "string"
                    },
                    "description": {
                        "type": "string"
                    },
                    "docs_url": {
                        "type": "string",
                        "format": "uri"
                    },
                    "links": {
                        "type": "object",
                        "additionalProperties": {
                            "type": "string",
                            "format": "uri"
                        }
                    },
                    "summary": {
                        "type": "object",
                        "properties": {
                            "total_pools": {
                                "type": "integer",
                                "minimum": 0
                            },
                            "chains": {
                                "type": "array",
                                "items": {
                                    "type": "string"
                                }
                            },
                            "dexes": {
                                "type": "array",
                                "items": {
                                    "type": "string"
                                }
                            }
                        },
                        "additionalProperties": false
                    },
                    "market_entry": {
                        "type": "object",
                        "additionalProperties": true
                    },
                    "wao_token": {
                        "type": "object",
                        "properties": {
                            "symbol": {
                                "type": "string",
                                "example": "WAO"
                            },
                            "name": {
                                "type": "string",
                                "example": "WAODAO"
                            },
                            "deployments": {
                                "type": "object",
                                "additionalProperties": {
                                    "type": "object",
                                    "additionalProperties": true
                                }
                            }
                        },
                        "additionalProperties": true
                    },
                    "data_policy": {
                        "type": "string"
                    },
                    "items": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/PoolItem"
                        }
                    }
                },
                "additionalProperties": false
            },
            "ErrorResponse": {
                "type": "object",
                "required": [
                    "error",
                    "code"
                ],
                "properties": {
                    "error": {
                        "type": "string"
                    },
                    "code": {
                        "type": "integer"
                    }
                },
                "additionalProperties": true
            }
        }
    }
}