# lock.md public information API

Version 1.0.0. This is a free, public, read-only API generated from the website on each build. No authentication or registration. It contains no customer records or live appointment availability.

## Endpoints

- [GET /api/public/catalog.json](https://lock.md/api/public/catalog.json): all published RU/RO pages, their identifiers, descriptions, search keywords and canonical, JSON and Markdown URLs.
- [GET /api/public/business.json](https://lock.md/api/public/business.json): public contact channels, hours, service area and pricing conditions.
- GET /api/public/pages/{locale}/{pageId}.json: one catalog entry's complete Markdown, FAQ and price conditions. Use locale ro or ru and an exact pageId from the catalog. Unknown paths return 404.
- [OpenAPI 3.1](https://lock.md/openapi.json) documents all response schemas. [RFC 9727 catalog](https://lock.md/.well-known/api-catalog) links to this API.

## Markdown and caching

Send Accept: text/markdown to a canonical page URL, or fetch the entry's markdownUrl directly. Ordinary browser requests retain HTML. Explicit Markdown URLs represent their HTML canonical page and are marked noindex. Negotiated responses vary on Accept. Markdown negotiation bypasses the shared CDN cache; direct .md URLs can be cached. HTML and Markdown are generated from the same rendered content.

## Meaning of the data

A starting price is not a fixed quote. A null price with kind after_diagnosis means no numeric quote is published. Final cost, surcharges, travel distance and availability require confirmation. Service availability is informational, not live. The API does not accept bookings, customer documents, messages or payments.

## Browser tools

On browsers with WebMCP support, lockmd_search_pages searches the catalog, lockmd_get_page returns one page, and lockmd_get_business returns public business information. The integration supports the current document.modelContext interface and the earlier navigator.modelContext interface. No WebMCP runtime is installed in browsers that do not support it. These tools make same-origin GET requests only and do not start analytics.

## Discovery and verification

[Agent skill index](https://lock.md/.well-known/agent-skills/index.json) contains the SHA-256 of the exact skill file. Verify the digest before following a downloaded skill. [auth.md](https://lock.md/auth.md) describes public access and unsupported authentication flows.

Prefer conditional requests with ETag or Last-Modified and follow Cache-Control. There is no guaranteed SLA. Do not send personal data in URL parameters.
