{
  "openapi": "3.1.0",
  "info": {
    "title": "Rivermark public business information",
    "version": "1.0.0",
    "description": "Read-only published company and service information. The major version is in the URL. Additive fields may be added to v1; breaking schema changes use a new major path. The unversioned URL remains a compatibility alias. Any future retirement will be announced here and with Deprecation and Sunset response headers before removal. This resource does not submit enquiries, reserve property, start work or provide live availability.",
    "contact": {
      "name": "Rivermark Property Ltd",
      "email": "hello@rivermarkproperty.com",
      "url": "https://rivermarkproperty.com/contact/"
    }
  },
  "servers": [
    {
      "url": "https://rivermarkproperty.com"
    }
  ],
  "paths": {
    "/api/v1/public-info.json": {
      "get": {
        "operationId": "getRivermarkPublicInformationV1",
        "summary": "Read Rivermark company and service information",
        "description": "Returns public company identity, service descriptions, audiences, geographic coverage and canonical HTML/Markdown page links. No authentication or personal information is required.",
        "responses": {
          "200": {
            "description": "Published business information",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PublicInformation"
                }
              }
            }
          },
          "404": {
            "description": "The requested public information resource does not exist",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      }
    }
  },
  "components": {
    "schemas": {
      "PublicInformation": {
        "type": "object",
        "properties": {
          "schemaVersion": {
            "type": "string",
            "const": "1.0"
          },
          "organisation": {
            "type": "object",
            "properties": {
              "name": {
                "type": "string"
              },
              "brand": {
                "type": "string"
              },
              "url": {
                "type": "string",
                "format": "uri"
              },
              "description": {
                "type": "string"
              },
              "companyNumber": {
                "type": "string"
              },
              "registeredIn": {
                "type": "string"
              },
              "registryUrl": {
                "type": "string",
                "format": "uri"
              },
              "linkedinUrl": {
                "type": "string"
              },
              "email": {
                "type": "string",
                "format": "email"
              },
              "telephone": {
                "type": "string"
              },
              "telephoneDisplay": {
                "type": "string"
              },
              "areaServed": {
                "type": "string"
              },
              "fees": {
                "type": "string"
              },
              "enquiryUrl": {
                "type": "string",
                "format": "uri"
              },
              "callRequestUrl": {
                "type": "string",
                "format": "uri"
              }
            },
            "required": [
              "name",
              "brand",
              "url",
              "description",
              "companyNumber",
              "registeredIn",
              "registryUrl",
              "linkedinUrl",
              "email",
              "telephone",
              "telephoneDisplay",
              "areaServed",
              "fees",
              "enquiryUrl",
              "callRequestUrl"
            ],
            "additionalProperties": false
          },
          "services": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {
                "name": {
                  "type": "string"
                },
                "description": {
                  "type": "string"
                },
                "url": {
                  "type": "string",
                  "format": "uri"
                },
                "markdownUrl": {
                  "type": "string",
                  "format": "uri"
                },
                "areaServed": {
                  "type": "array",
                  "items": {
                    "type": "string"
                  }
                },
                "audiences": {
                  "type": "array",
                  "items": {
                    "type": "string"
                  }
                }
              },
              "required": [
                "name",
                "description",
                "url",
                "markdownUrl",
                "areaServed",
                "audiences"
              ],
              "additionalProperties": false
            }
          },
          "pages": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {
                "path": {
                  "type": "string"
                },
                "url": {
                  "type": "string",
                  "format": "uri"
                },
                "markdownUrl": {
                  "type": "string",
                  "format": "uri"
                },
                "title": {
                  "type": "string"
                },
                "description": {
                  "type": "string"
                }
              },
              "required": [
                "path",
                "url",
                "markdownUrl",
                "title",
                "description"
              ],
              "additionalProperties": false
            }
          }
        },
        "required": [
          "schemaVersion",
          "organisation",
          "services",
          "pages"
        ],
        "additionalProperties": false
      },
      "ProblemDetails": {
        "type": "object",
        "properties": {
          "type": {
            "type": "string",
            "format": "uri"
          },
          "title": {
            "type": "string"
          },
          "status": {
            "type": "integer"
          },
          "detail": {
            "type": "string"
          },
          "code": {
            "type": "string"
          },
          "links": {
            "type": "object",
            "properties": {
              "information": {
                "type": "string",
                "format": "uri"
              },
              "services": {
                "type": "string",
                "format": "uri"
              },
              "contact": {
                "type": "string",
                "format": "uri"
              }
            },
            "required": [
              "information",
              "services",
              "contact"
            ],
            "additionalProperties": false
          }
        },
        "required": [
          "type",
          "title",
          "status",
          "detail",
          "code",
          "links"
        ],
        "additionalProperties": false
      }
    }
  }
}
