{
    "openapi": "3.1.0",
    "info": {
        "title": "URSY Domains API",
        "version": "2.13.1",
        "description": "Source-bound domain intelligence. Archived prices are explicitly dated."
    },
    "servers": [
        {
            "url": "https://ursy.domains/wp-json/ursy/v1/"
        }
    ],
    "paths": {
        "/tlds": {
            "get": {
                "operationId": "listTlds",
                "summary": "Search the provider-verified retail catalogue",
                "parameters": [
                    {
                        "name": "search",
                        "in": "query",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Retail catalogue page"
                    }
                }
            }
        },
        "/compare": {
            "get": {
                "operationId": "compareCataloguePrices",
                "summary": "Compare GBP registration, renewal and transfer prices",
                "parameters": [
                    {
                        "name": "tlds",
                        "in": "query",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Catalogue comparison"
                    }
                }
            }
        },
        "/ask": {
            "get": {
                "operationId": "askDomainQuestion",
                "summary": "Ask a source-bound domain question",
                "parameters": [
                    {
                        "name": "q",
                        "in": "query",
                        "required": true,
                        "schema": {
                            "type": "string",
                            "maxLength": 800
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Evidence bundle"
                    },
                    "400": {
                        "description": "Validation or safety rejection"
                    }
                }
            }
        },
        "/truth": {
            "get": {
                "operationId": "getTruthSpine",
                "summary": "Get governed claims and evidence status",
                "responses": {
                    "200": {
                        "description": "Truth spine"
                    }
                }
            }
        },
        "/machine-feedback": {
            "post": {
                "operationId": "submitMachineFeedback",
                "summary": "Rate an answer by request ID",
                "responses": {
                    "200": {
                        "description": "Feedback recorded"
                    }
                }
            }
        }
    }
}