{
  "openapi": "3.1.0",
  "info": {
    "title": "Metro Counselling public content API",
    "version": "1.0.0",
    "summary": "Read-only, machine-readable access to Metro Counselling public pages.",
    "description": "Metro Counselling is a counselling practice in Surrey, British Columbia. It does not operate a transactional API: there are no accounts, bookings, or write operations, and no authentication is required or accepted. This description covers the read-only surface agents can rely on — prerendered pages with HTML/Markdown content negotiation, and the published machine-readable files. Booking and clinical questions must be routed to a human via the contact page; do not infer availability, coverage, or clinical suitability. Versioning: URL path. The current major version is served under /api/v1. Breaking changes ship under a new path, /api/v2, leaving the previous version in place. A deprecated version returns a Deprecation header with the date it was announced, a Sunset header with the removal date (RFC 8594), and a Link rel=\"successor-version\" pointing at the replacement. At least 180 days between the Deprecation header appearing and the Sunset date. Rate limit: default;q=600;w=60 (advisory, not enforced).",
    "contact": {
      "name": "Metro Counselling",
      "url": "https://metrocounselling.ca/contact-us",
      "email": "info@metrocounselling.ca"
    },
    "license": {
      "name": "Site content is © Metro Counselling",
      "url": "https://metrocounselling.ca/"
    }
  },
  "servers": [
    {
      "url": "https://metrocounselling.ca",
      "description": "Production"
    }
  ],
  "x-versioning": {
    "versioning": "URL path. The current major version is served under /api/v1.",
    "compatible": "Additive changes (new endpoints, new response fields) ship without a version bump.",
    "breaking": "Breaking changes ship under a new path, /api/v2, leaving the previous version in place.",
    "deprecation": "A deprecated version returns a Deprecation header with the date it was announced, a Sunset header with the removal date (RFC 8594), and a Link rel=\"successor-version\" pointing at the replacement.",
    "minimumNotice": "At least 180 days between the Deprecation header appearing and the Sunset date."
  },
  "x-rate-limit": {
    "policy": "default;q=600;w=60",
    "enforced": false,
    "note": "Advisory published budget. No per-client counter is enforced on these static resources, so RateLimit-Remaining and RateLimit-Reset are deliberately omitted rather than fabricated."
  },
  "tags": [
    {
      "name": "pages",
      "description": "Prerendered public pages with HTML/Markdown negotiation."
    },
    {
      "name": "json-api",
      "description": "Versioned JSON surface served under /api/v1."
    },
    {
      "name": "machine-readable",
      "description": "Published files describing the site to agents."
    }
  ],
  "security": [],
  "paths": {
    "/": {
      "get": {
        "operationId": "getHomePage",
        "summary": "Counselling & Therapy in Surrey, BC | Metro Counselling",
        "description": "Professional counselling and therapy in Surrey, BC. Individual, couples, family, anxiety, depression, trauma, and ICBC counselling with registered clinical counsellors. Returns prerendered HTML by default, or Markdown when Accept: text/markdown is sent. The Markdown representation is also addressable directly at https://metrocounselling.ca/index.md, and is advertised via a Link rel=\"alternate\" header.",
        "tags": [
          "pages"
        ],
        "parameters": [
          {
            "$ref": "#/components/parameters/Accept"
          }
        ],
        "responses": {
          "200": {
            "description": "The page, in the negotiated representation.",
            "headers": {
              "API-Version": {
                "$ref": "#/components/headers/ApiVersion"
              },
              "RateLimit-Policy": {
                "$ref": "#/components/headers/RateLimitPolicy"
              },
              "Deprecation": {
                "$ref": "#/components/headers/Deprecation"
              },
              "Sunset": {
                "$ref": "#/components/headers/Sunset"
              },
              "Vary": {
                "description": "Always \"Accept, Accept-Encoding\" so caches key on the representation.",
                "schema": {
                  "type": "string"
                }
              },
              "Link": {
                "description": "Advertises the Markdown alternate and the agent guide.",
                "schema": {
                  "type": "string"
                }
              }
            },
            "content": {
              "text/html": {
                "schema": {
                  "type": "string"
                }
              },
              "text/markdown": {
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "404": {
            "description": "No resource exists at this path. Negotiated as HTML, Markdown, or problem details. Paths under /api return JSON by default regardless of the Accept header.",
            "headers": {
              "API-Version": {
                "$ref": "#/components/headers/ApiVersion"
              },
              "RateLimit-Policy": {
                "$ref": "#/components/headers/RateLimitPolicy"
              },
              "Deprecation": {
                "$ref": "#/components/headers/Deprecation"
              },
              "Sunset": {
                "$ref": "#/components/headers/Sunset"
              }
            },
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/markdown": {
                "schema": {
                  "type": "string"
                }
              },
              "text/html": {
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "406": {
            "description": "No representation matches the Accept header.",
            "headers": {
              "API-Version": {
                "$ref": "#/components/headers/ApiVersion"
              },
              "RateLimit-Policy": {
                "$ref": "#/components/headers/RateLimitPolicy"
              },
              "Deprecation": {
                "$ref": "#/components/headers/Deprecation"
              },
              "Sunset": {
                "$ref": "#/components/headers/Sunset"
              }
            },
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/anger-management-counselling-surrey": {
      "get": {
        "operationId": "getAngerManagementCounsellingSurreyPage",
        "summary": "Anger Management Counselling in Surrey, BC",
        "description": "Professional anger management counselling in Surrey, BC. Learn effective strategies to manage anger and regulate emotions with experienced counsellors. Returns prerendered HTML by default, or Markdown when Accept: text/markdown is sent. The Markdown representation is also addressable directly at https://metrocounselling.ca/anger-management-counselling-surrey/index.md, and is advertised via a Link rel=\"alternate\" header.",
        "tags": [
          "pages"
        ],
        "parameters": [
          {
            "$ref": "#/components/parameters/Accept"
          }
        ],
        "responses": {
          "200": {
            "description": "The page, in the negotiated representation.",
            "headers": {
              "API-Version": {
                "$ref": "#/components/headers/ApiVersion"
              },
              "RateLimit-Policy": {
                "$ref": "#/components/headers/RateLimitPolicy"
              },
              "Deprecation": {
                "$ref": "#/components/headers/Deprecation"
              },
              "Sunset": {
                "$ref": "#/components/headers/Sunset"
              },
              "Vary": {
                "description": "Always \"Accept, Accept-Encoding\" so caches key on the representation.",
                "schema": {
                  "type": "string"
                }
              },
              "Link": {
                "description": "Advertises the Markdown alternate and the agent guide.",
                "schema": {
                  "type": "string"
                }
              }
            },
            "content": {
              "text/html": {
                "schema": {
                  "type": "string"
                }
              },
              "text/markdown": {
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "404": {
            "description": "No resource exists at this path. Negotiated as HTML, Markdown, or problem details. Paths under /api return JSON by default regardless of the Accept header.",
            "headers": {
              "API-Version": {
                "$ref": "#/components/headers/ApiVersion"
              },
              "RateLimit-Policy": {
                "$ref": "#/components/headers/RateLimitPolicy"
              },
              "Deprecation": {
                "$ref": "#/components/headers/Deprecation"
              },
              "Sunset": {
                "$ref": "#/components/headers/Sunset"
              }
            },
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/markdown": {
                "schema": {
                  "type": "string"
                }
              },
              "text/html": {
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "406": {
            "description": "No representation matches the Accept header.",
            "headers": {
              "API-Version": {
                "$ref": "#/components/headers/ApiVersion"
              },
              "RateLimit-Policy": {
                "$ref": "#/components/headers/RateLimitPolicy"
              },
              "Deprecation": {
                "$ref": "#/components/headers/Deprecation"
              },
              "Sunset": {
                "$ref": "#/components/headers/Sunset"
              }
            },
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/anxiety-stress-management-counselor-in-surrey": {
      "get": {
        "operationId": "getAnxietyStressManagementCounselorInSurreyPage",
        "summary": "Anxiety & Stress Counselling in Surrey, BC | Metro Counselling",
        "description": "Anxiety and stress management counselling in Surrey, BC. Evidence-based therapy with experienced counsellors. Find relief and develop coping strategies. Returns prerendered HTML by default, or Markdown when Accept: text/markdown is sent. The Markdown representation is also addressable directly at https://metrocounselling.ca/anxiety-stress-management-counselor-in-surrey/index.md, and is advertised via a Link rel=\"alternate\" header.",
        "tags": [
          "pages"
        ],
        "parameters": [
          {
            "$ref": "#/components/parameters/Accept"
          }
        ],
        "responses": {
          "200": {
            "description": "The page, in the negotiated representation.",
            "headers": {
              "API-Version": {
                "$ref": "#/components/headers/ApiVersion"
              },
              "RateLimit-Policy": {
                "$ref": "#/components/headers/RateLimitPolicy"
              },
              "Deprecation": {
                "$ref": "#/components/headers/Deprecation"
              },
              "Sunset": {
                "$ref": "#/components/headers/Sunset"
              },
              "Vary": {
                "description": "Always \"Accept, Accept-Encoding\" so caches key on the representation.",
                "schema": {
                  "type": "string"
                }
              },
              "Link": {
                "description": "Advertises the Markdown alternate and the agent guide.",
                "schema": {
                  "type": "string"
                }
              }
            },
            "content": {
              "text/html": {
                "schema": {
                  "type": "string"
                }
              },
              "text/markdown": {
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "404": {
            "description": "No resource exists at this path. Negotiated as HTML, Markdown, or problem details. Paths under /api return JSON by default regardless of the Accept header.",
            "headers": {
              "API-Version": {
                "$ref": "#/components/headers/ApiVersion"
              },
              "RateLimit-Policy": {
                "$ref": "#/components/headers/RateLimitPolicy"
              },
              "Deprecation": {
                "$ref": "#/components/headers/Deprecation"
              },
              "Sunset": {
                "$ref": "#/components/headers/Sunset"
              }
            },
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/markdown": {
                "schema": {
                  "type": "string"
                }
              },
              "text/html": {
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "406": {
            "description": "No representation matches the Accept header.",
            "headers": {
              "API-Version": {
                "$ref": "#/components/headers/ApiVersion"
              },
              "RateLimit-Policy": {
                "$ref": "#/components/headers/RateLimitPolicy"
              },
              "Deprecation": {
                "$ref": "#/components/headers/Deprecation"
              },
              "Sunset": {
                "$ref": "#/components/headers/Sunset"
              }
            },
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/career": {
      "get": {
        "operationId": "getCareerPage",
        "summary": "Counselling & Therapy Careers in Surrey, BC | Metro Counselling",
        "description": "Join the Metro Counselling team in Surrey, BC. Career opportunities for registered clinical counsellors and mental health professionals. Returns prerendered HTML by default, or Markdown when Accept: text/markdown is sent. The Markdown representation is also addressable directly at https://metrocounselling.ca/career/index.md, and is advertised via a Link rel=\"alternate\" header.",
        "tags": [
          "pages"
        ],
        "parameters": [
          {
            "$ref": "#/components/parameters/Accept"
          }
        ],
        "responses": {
          "200": {
            "description": "The page, in the negotiated representation.",
            "headers": {
              "API-Version": {
                "$ref": "#/components/headers/ApiVersion"
              },
              "RateLimit-Policy": {
                "$ref": "#/components/headers/RateLimitPolicy"
              },
              "Deprecation": {
                "$ref": "#/components/headers/Deprecation"
              },
              "Sunset": {
                "$ref": "#/components/headers/Sunset"
              },
              "Vary": {
                "description": "Always \"Accept, Accept-Encoding\" so caches key on the representation.",
                "schema": {
                  "type": "string"
                }
              },
              "Link": {
                "description": "Advertises the Markdown alternate and the agent guide.",
                "schema": {
                  "type": "string"
                }
              }
            },
            "content": {
              "text/html": {
                "schema": {
                  "type": "string"
                }
              },
              "text/markdown": {
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "404": {
            "description": "No resource exists at this path. Negotiated as HTML, Markdown, or problem details. Paths under /api return JSON by default regardless of the Accept header.",
            "headers": {
              "API-Version": {
                "$ref": "#/components/headers/ApiVersion"
              },
              "RateLimit-Policy": {
                "$ref": "#/components/headers/RateLimitPolicy"
              },
              "Deprecation": {
                "$ref": "#/components/headers/Deprecation"
              },
              "Sunset": {
                "$ref": "#/components/headers/Sunset"
              }
            },
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/markdown": {
                "schema": {
                  "type": "string"
                }
              },
              "text/html": {
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "406": {
            "description": "No representation matches the Accept header.",
            "headers": {
              "API-Version": {
                "$ref": "#/components/headers/ApiVersion"
              },
              "RateLimit-Policy": {
                "$ref": "#/components/headers/RateLimitPolicy"
              },
              "Deprecation": {
                "$ref": "#/components/headers/Deprecation"
              },
              "Sunset": {
                "$ref": "#/components/headers/Sunset"
              }
            },
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/child-counselling-services-surrey": {
      "get": {
        "operationId": "getChildCounsellingServicesSurreyPage",
        "summary": "Child Counselling Services in Surrey, BC | Metro Counselling",
        "description": "Specialized child counselling and therapy in Surrey, BC. Professional support for children's mental health, anxiety, behaviour, and development. Returns prerendered HTML by default, or Markdown when Accept: text/markdown is sent. The Markdown representation is also addressable directly at https://metrocounselling.ca/child-counselling-services-surrey/index.md, and is advertised via a Link rel=\"alternate\" header.",
        "tags": [
          "pages"
        ],
        "parameters": [
          {
            "$ref": "#/components/parameters/Accept"
          }
        ],
        "responses": {
          "200": {
            "description": "The page, in the negotiated representation.",
            "headers": {
              "API-Version": {
                "$ref": "#/components/headers/ApiVersion"
              },
              "RateLimit-Policy": {
                "$ref": "#/components/headers/RateLimitPolicy"
              },
              "Deprecation": {
                "$ref": "#/components/headers/Deprecation"
              },
              "Sunset": {
                "$ref": "#/components/headers/Sunset"
              },
              "Vary": {
                "description": "Always \"Accept, Accept-Encoding\" so caches key on the representation.",
                "schema": {
                  "type": "string"
                }
              },
              "Link": {
                "description": "Advertises the Markdown alternate and the agent guide.",
                "schema": {
                  "type": "string"
                }
              }
            },
            "content": {
              "text/html": {
                "schema": {
                  "type": "string"
                }
              },
              "text/markdown": {
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "404": {
            "description": "No resource exists at this path. Negotiated as HTML, Markdown, or problem details. Paths under /api return JSON by default regardless of the Accept header.",
            "headers": {
              "API-Version": {
                "$ref": "#/components/headers/ApiVersion"
              },
              "RateLimit-Policy": {
                "$ref": "#/components/headers/RateLimitPolicy"
              },
              "Deprecation": {
                "$ref": "#/components/headers/Deprecation"
              },
              "Sunset": {
                "$ref": "#/components/headers/Sunset"
              }
            },
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/markdown": {
                "schema": {
                  "type": "string"
                }
              },
              "text/html": {
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "406": {
            "description": "No representation matches the Accept header.",
            "headers": {
              "API-Version": {
                "$ref": "#/components/headers/ApiVersion"
              },
              "RateLimit-Policy": {
                "$ref": "#/components/headers/RateLimitPolicy"
              },
              "Deprecation": {
                "$ref": "#/components/headers/Deprecation"
              },
              "Sunset": {
                "$ref": "#/components/headers/Sunset"
              }
            },
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/contact-us": {
      "get": {
        "operationId": "getContactUsPage",
        "summary": "Contact Metro Counselling in Surrey, BC | Book a Session",
        "description": "Contact Metro Counselling at 604-619-9992. Located at 201-10366 136A Street, Surrey, BC V3T 1W4. Book your counselling session today. Returns prerendered HTML by default, or Markdown when Accept: text/markdown is sent. The Markdown representation is also addressable directly at https://metrocounselling.ca/contact-us/index.md, and is advertised via a Link rel=\"alternate\" header.",
        "tags": [
          "pages"
        ],
        "parameters": [
          {
            "$ref": "#/components/parameters/Accept"
          }
        ],
        "responses": {
          "200": {
            "description": "The page, in the negotiated representation.",
            "headers": {
              "API-Version": {
                "$ref": "#/components/headers/ApiVersion"
              },
              "RateLimit-Policy": {
                "$ref": "#/components/headers/RateLimitPolicy"
              },
              "Deprecation": {
                "$ref": "#/components/headers/Deprecation"
              },
              "Sunset": {
                "$ref": "#/components/headers/Sunset"
              },
              "Vary": {
                "description": "Always \"Accept, Accept-Encoding\" so caches key on the representation.",
                "schema": {
                  "type": "string"
                }
              },
              "Link": {
                "description": "Advertises the Markdown alternate and the agent guide.",
                "schema": {
                  "type": "string"
                }
              }
            },
            "content": {
              "text/html": {
                "schema": {
                  "type": "string"
                }
              },
              "text/markdown": {
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "404": {
            "description": "No resource exists at this path. Negotiated as HTML, Markdown, or problem details. Paths under /api return JSON by default regardless of the Accept header.",
            "headers": {
              "API-Version": {
                "$ref": "#/components/headers/ApiVersion"
              },
              "RateLimit-Policy": {
                "$ref": "#/components/headers/RateLimitPolicy"
              },
              "Deprecation": {
                "$ref": "#/components/headers/Deprecation"
              },
              "Sunset": {
                "$ref": "#/components/headers/Sunset"
              }
            },
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/markdown": {
                "schema": {
                  "type": "string"
                }
              },
              "text/html": {
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "406": {
            "description": "No representation matches the Accept header.",
            "headers": {
              "API-Version": {
                "$ref": "#/components/headers/ApiVersion"
              },
              "RateLimit-Policy": {
                "$ref": "#/components/headers/RateLimitPolicy"
              },
              "Deprecation": {
                "$ref": "#/components/headers/Deprecation"
              },
              "Sunset": {
                "$ref": "#/components/headers/Sunset"
              }
            },
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/counsellor/albin-issac": {
      "get": {
        "operationId": "getCounsellorAlbinIssacPage",
        "summary": "Albin Issac, RCC | Counsellor in Surrey, BC | Metro Counselling",
        "description": "Albin Issac, Registered Clinical Counsellor at Metro Counselling Surrey. Professional counselling support for your mental health journey. Returns prerendered HTML by default, or Markdown when Accept: text/markdown is sent. The Markdown representation is also addressable directly at https://metrocounselling.ca/counsellor/albin-issac/index.md, and is advertised via a Link rel=\"alternate\" header.",
        "tags": [
          "pages"
        ],
        "parameters": [
          {
            "$ref": "#/components/parameters/Accept"
          }
        ],
        "responses": {
          "200": {
            "description": "The page, in the negotiated representation.",
            "headers": {
              "API-Version": {
                "$ref": "#/components/headers/ApiVersion"
              },
              "RateLimit-Policy": {
                "$ref": "#/components/headers/RateLimitPolicy"
              },
              "Deprecation": {
                "$ref": "#/components/headers/Deprecation"
              },
              "Sunset": {
                "$ref": "#/components/headers/Sunset"
              },
              "Vary": {
                "description": "Always \"Accept, Accept-Encoding\" so caches key on the representation.",
                "schema": {
                  "type": "string"
                }
              },
              "Link": {
                "description": "Advertises the Markdown alternate and the agent guide.",
                "schema": {
                  "type": "string"
                }
              }
            },
            "content": {
              "text/html": {
                "schema": {
                  "type": "string"
                }
              },
              "text/markdown": {
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "404": {
            "description": "No resource exists at this path. Negotiated as HTML, Markdown, or problem details. Paths under /api return JSON by default regardless of the Accept header.",
            "headers": {
              "API-Version": {
                "$ref": "#/components/headers/ApiVersion"
              },
              "RateLimit-Policy": {
                "$ref": "#/components/headers/RateLimitPolicy"
              },
              "Deprecation": {
                "$ref": "#/components/headers/Deprecation"
              },
              "Sunset": {
                "$ref": "#/components/headers/Sunset"
              }
            },
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/markdown": {
                "schema": {
                  "type": "string"
                }
              },
              "text/html": {
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "406": {
            "description": "No representation matches the Accept header.",
            "headers": {
              "API-Version": {
                "$ref": "#/components/headers/ApiVersion"
              },
              "RateLimit-Policy": {
                "$ref": "#/components/headers/RateLimitPolicy"
              },
              "Deprecation": {
                "$ref": "#/components/headers/Deprecation"
              },
              "Sunset": {
                "$ref": "#/components/headers/Sunset"
              }
            },
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/counsellor/beth-mares": {
      "get": {
        "operationId": "getCounsellorBethMaresPage",
        "summary": "Beth Mares | Self-Care Coach & Therapeutic Touch | Metro Counselling Surrey",
        "description": "Beth Mares, Self-Care Coach and Therapeutic Touch Practitioner at Metro Counselling Surrey. Holistic wellness, Reiki, and therapeutic touch. Returns prerendered HTML by default, or Markdown when Accept: text/markdown is sent. The Markdown representation is also addressable directly at https://metrocounselling.ca/counsellor/beth-mares/index.md, and is advertised via a Link rel=\"alternate\" header.",
        "tags": [
          "pages"
        ],
        "parameters": [
          {
            "$ref": "#/components/parameters/Accept"
          }
        ],
        "responses": {
          "200": {
            "description": "The page, in the negotiated representation.",
            "headers": {
              "API-Version": {
                "$ref": "#/components/headers/ApiVersion"
              },
              "RateLimit-Policy": {
                "$ref": "#/components/headers/RateLimitPolicy"
              },
              "Deprecation": {
                "$ref": "#/components/headers/Deprecation"
              },
              "Sunset": {
                "$ref": "#/components/headers/Sunset"
              },
              "Vary": {
                "description": "Always \"Accept, Accept-Encoding\" so caches key on the representation.",
                "schema": {
                  "type": "string"
                }
              },
              "Link": {
                "description": "Advertises the Markdown alternate and the agent guide.",
                "schema": {
                  "type": "string"
                }
              }
            },
            "content": {
              "text/html": {
                "schema": {
                  "type": "string"
                }
              },
              "text/markdown": {
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "404": {
            "description": "No resource exists at this path. Negotiated as HTML, Markdown, or problem details. Paths under /api return JSON by default regardless of the Accept header.",
            "headers": {
              "API-Version": {
                "$ref": "#/components/headers/ApiVersion"
              },
              "RateLimit-Policy": {
                "$ref": "#/components/headers/RateLimitPolicy"
              },
              "Deprecation": {
                "$ref": "#/components/headers/Deprecation"
              },
              "Sunset": {
                "$ref": "#/components/headers/Sunset"
              }
            },
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/markdown": {
                "schema": {
                  "type": "string"
                }
              },
              "text/html": {
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "406": {
            "description": "No representation matches the Accept header.",
            "headers": {
              "API-Version": {
                "$ref": "#/components/headers/ApiVersion"
              },
              "RateLimit-Policy": {
                "$ref": "#/components/headers/RateLimitPolicy"
              },
              "Deprecation": {
                "$ref": "#/components/headers/Deprecation"
              },
              "Sunset": {
                "$ref": "#/components/headers/Sunset"
              }
            },
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/counsellor/cynthia-csepregi": {
      "get": {
        "operationId": "getCounsellorCynthiaCsepregiPage",
        "summary": "Cynthia Csepregi, RCC, MSW | Counsellor in Surrey, BC | Metro Counselling",
        "description": "Cynthia Csepregi, RCC and Social Worker at Metro Counselling Surrey. 14+ years experience in mental health, crisis intervention, and supporting positive change. Returns prerendered HTML by default, or Markdown when Accept: text/markdown is sent. The Markdown representation is also addressable directly at https://metrocounselling.ca/counsellor/cynthia-csepregi/index.md, and is advertised via a Link rel=\"alternate\" header.",
        "tags": [
          "pages"
        ],
        "parameters": [
          {
            "$ref": "#/components/parameters/Accept"
          }
        ],
        "responses": {
          "200": {
            "description": "The page, in the negotiated representation.",
            "headers": {
              "API-Version": {
                "$ref": "#/components/headers/ApiVersion"
              },
              "RateLimit-Policy": {
                "$ref": "#/components/headers/RateLimitPolicy"
              },
              "Deprecation": {
                "$ref": "#/components/headers/Deprecation"
              },
              "Sunset": {
                "$ref": "#/components/headers/Sunset"
              },
              "Vary": {
                "description": "Always \"Accept, Accept-Encoding\" so caches key on the representation.",
                "schema": {
                  "type": "string"
                }
              },
              "Link": {
                "description": "Advertises the Markdown alternate and the agent guide.",
                "schema": {
                  "type": "string"
                }
              }
            },
            "content": {
              "text/html": {
                "schema": {
                  "type": "string"
                }
              },
              "text/markdown": {
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "404": {
            "description": "No resource exists at this path. Negotiated as HTML, Markdown, or problem details. Paths under /api return JSON by default regardless of the Accept header.",
            "headers": {
              "API-Version": {
                "$ref": "#/components/headers/ApiVersion"
              },
              "RateLimit-Policy": {
                "$ref": "#/components/headers/RateLimitPolicy"
              },
              "Deprecation": {
                "$ref": "#/components/headers/Deprecation"
              },
              "Sunset": {
                "$ref": "#/components/headers/Sunset"
              }
            },
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/markdown": {
                "schema": {
                  "type": "string"
                }
              },
              "text/html": {
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "406": {
            "description": "No representation matches the Accept header.",
            "headers": {
              "API-Version": {
                "$ref": "#/components/headers/ApiVersion"
              },
              "RateLimit-Policy": {
                "$ref": "#/components/headers/RateLimitPolicy"
              },
              "Deprecation": {
                "$ref": "#/components/headers/Deprecation"
              },
              "Sunset": {
                "$ref": "#/components/headers/Sunset"
              }
            },
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/counsellor/fatemeh-poorrezvan": {
      "get": {
        "operationId": "getCounsellorFatemehPoorrezvanPage",
        "summary": "Fatemeh Poorrezvan, RCC | Counsellor in Surrey, BC | Metro Counselling",
        "description": "Fatemeh Poorrezvan, Registered Clinical Counsellor at Metro Counselling Surrey. Counselling in English, Farsi, and Turkish. Returns prerendered HTML by default, or Markdown when Accept: text/markdown is sent. The Markdown representation is also addressable directly at https://metrocounselling.ca/counsellor/fatemeh-poorrezvan/index.md, and is advertised via a Link rel=\"alternate\" header.",
        "tags": [
          "pages"
        ],
        "parameters": [
          {
            "$ref": "#/components/parameters/Accept"
          }
        ],
        "responses": {
          "200": {
            "description": "The page, in the negotiated representation.",
            "headers": {
              "API-Version": {
                "$ref": "#/components/headers/ApiVersion"
              },
              "RateLimit-Policy": {
                "$ref": "#/components/headers/RateLimitPolicy"
              },
              "Deprecation": {
                "$ref": "#/components/headers/Deprecation"
              },
              "Sunset": {
                "$ref": "#/components/headers/Sunset"
              },
              "Vary": {
                "description": "Always \"Accept, Accept-Encoding\" so caches key on the representation.",
                "schema": {
                  "type": "string"
                }
              },
              "Link": {
                "description": "Advertises the Markdown alternate and the agent guide.",
                "schema": {
                  "type": "string"
                }
              }
            },
            "content": {
              "text/html": {
                "schema": {
                  "type": "string"
                }
              },
              "text/markdown": {
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "404": {
            "description": "No resource exists at this path. Negotiated as HTML, Markdown, or problem details. Paths under /api return JSON by default regardless of the Accept header.",
            "headers": {
              "API-Version": {
                "$ref": "#/components/headers/ApiVersion"
              },
              "RateLimit-Policy": {
                "$ref": "#/components/headers/RateLimitPolicy"
              },
              "Deprecation": {
                "$ref": "#/components/headers/Deprecation"
              },
              "Sunset": {
                "$ref": "#/components/headers/Sunset"
              }
            },
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/markdown": {
                "schema": {
                  "type": "string"
                }
              },
              "text/html": {
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "406": {
            "description": "No representation matches the Accept header.",
            "headers": {
              "API-Version": {
                "$ref": "#/components/headers/ApiVersion"
              },
              "RateLimit-Policy": {
                "$ref": "#/components/headers/RateLimitPolicy"
              },
              "Deprecation": {
                "$ref": "#/components/headers/Deprecation"
              },
              "Sunset": {
                "$ref": "#/components/headers/Sunset"
              }
            },
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/counsellor/karen-gorseth": {
      "get": {
        "operationId": "getCounsellorKarenGorsethPage",
        "summary": "Karen Gorseth, RCC | Counsellor in Surrey, BC | Metro Counselling",
        "description": "Karen Gorseth, Registered Clinical Counsellor at Metro Counselling Surrey. Professional counselling support for your mental health journey. Returns prerendered HTML by default, or Markdown when Accept: text/markdown is sent. The Markdown representation is also addressable directly at https://metrocounselling.ca/counsellor/karen-gorseth/index.md, and is advertised via a Link rel=\"alternate\" header.",
        "tags": [
          "pages"
        ],
        "parameters": [
          {
            "$ref": "#/components/parameters/Accept"
          }
        ],
        "responses": {
          "200": {
            "description": "The page, in the negotiated representation.",
            "headers": {
              "API-Version": {
                "$ref": "#/components/headers/ApiVersion"
              },
              "RateLimit-Policy": {
                "$ref": "#/components/headers/RateLimitPolicy"
              },
              "Deprecation": {
                "$ref": "#/components/headers/Deprecation"
              },
              "Sunset": {
                "$ref": "#/components/headers/Sunset"
              },
              "Vary": {
                "description": "Always \"Accept, Accept-Encoding\" so caches key on the representation.",
                "schema": {
                  "type": "string"
                }
              },
              "Link": {
                "description": "Advertises the Markdown alternate and the agent guide.",
                "schema": {
                  "type": "string"
                }
              }
            },
            "content": {
              "text/html": {
                "schema": {
                  "type": "string"
                }
              },
              "text/markdown": {
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "404": {
            "description": "No resource exists at this path. Negotiated as HTML, Markdown, or problem details. Paths under /api return JSON by default regardless of the Accept header.",
            "headers": {
              "API-Version": {
                "$ref": "#/components/headers/ApiVersion"
              },
              "RateLimit-Policy": {
                "$ref": "#/components/headers/RateLimitPolicy"
              },
              "Deprecation": {
                "$ref": "#/components/headers/Deprecation"
              },
              "Sunset": {
                "$ref": "#/components/headers/Sunset"
              }
            },
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/markdown": {
                "schema": {
                  "type": "string"
                }
              },
              "text/html": {
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "406": {
            "description": "No representation matches the Accept header.",
            "headers": {
              "API-Version": {
                "$ref": "#/components/headers/ApiVersion"
              },
              "RateLimit-Policy": {
                "$ref": "#/components/headers/RateLimitPolicy"
              },
              "Deprecation": {
                "$ref": "#/components/headers/Deprecation"
              },
              "Sunset": {
                "$ref": "#/components/headers/Sunset"
              }
            },
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/counsellor/kristina-sohal": {
      "get": {
        "operationId": "getCounsellorKristinaSohalPage",
        "summary": "Kristina Sohal, RCC | Counsellor in Surrey, BC | Metro Counselling",
        "description": "Kristina Sohal, Registered Clinical Counsellor at Metro Counselling Surrey. Specializing in CBT, mindfulness, and solution-focused therapy. English and Punjabi. Returns prerendered HTML by default, or Markdown when Accept: text/markdown is sent. The Markdown representation is also addressable directly at https://metrocounselling.ca/counsellor/kristina-sohal/index.md, and is advertised via a Link rel=\"alternate\" header.",
        "tags": [
          "pages"
        ],
        "parameters": [
          {
            "$ref": "#/components/parameters/Accept"
          }
        ],
        "responses": {
          "200": {
            "description": "The page, in the negotiated representation.",
            "headers": {
              "API-Version": {
                "$ref": "#/components/headers/ApiVersion"
              },
              "RateLimit-Policy": {
                "$ref": "#/components/headers/RateLimitPolicy"
              },
              "Deprecation": {
                "$ref": "#/components/headers/Deprecation"
              },
              "Sunset": {
                "$ref": "#/components/headers/Sunset"
              },
              "Vary": {
                "description": "Always \"Accept, Accept-Encoding\" so caches key on the representation.",
                "schema": {
                  "type": "string"
                }
              },
              "Link": {
                "description": "Advertises the Markdown alternate and the agent guide.",
                "schema": {
                  "type": "string"
                }
              }
            },
            "content": {
              "text/html": {
                "schema": {
                  "type": "string"
                }
              },
              "text/markdown": {
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "404": {
            "description": "No resource exists at this path. Negotiated as HTML, Markdown, or problem details. Paths under /api return JSON by default regardless of the Accept header.",
            "headers": {
              "API-Version": {
                "$ref": "#/components/headers/ApiVersion"
              },
              "RateLimit-Policy": {
                "$ref": "#/components/headers/RateLimitPolicy"
              },
              "Deprecation": {
                "$ref": "#/components/headers/Deprecation"
              },
              "Sunset": {
                "$ref": "#/components/headers/Sunset"
              }
            },
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/markdown": {
                "schema": {
                  "type": "string"
                }
              },
              "text/html": {
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "406": {
            "description": "No representation matches the Accept header.",
            "headers": {
              "API-Version": {
                "$ref": "#/components/headers/ApiVersion"
              },
              "RateLimit-Policy": {
                "$ref": "#/components/headers/RateLimitPolicy"
              },
              "Deprecation": {
                "$ref": "#/components/headers/Deprecation"
              },
              "Sunset": {
                "$ref": "#/components/headers/Sunset"
              }
            },
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/counsellor/rafael-tejada": {
      "get": {
        "operationId": "getCounsellorRafaelTejadaPage",
        "summary": "Rafael Tejada, RCC | Counsellor in Surrey, BC | Metro Counselling",
        "description": "Rafael Tejada, Registered Clinical Counsellor at Metro Counselling Surrey. Compassionate professional support for your mental health journey. Returns prerendered HTML by default, or Markdown when Accept: text/markdown is sent. The Markdown representation is also addressable directly at https://metrocounselling.ca/counsellor/rafael-tejada/index.md, and is advertised via a Link rel=\"alternate\" header.",
        "tags": [
          "pages"
        ],
        "parameters": [
          {
            "$ref": "#/components/parameters/Accept"
          }
        ],
        "responses": {
          "200": {
            "description": "The page, in the negotiated representation.",
            "headers": {
              "API-Version": {
                "$ref": "#/components/headers/ApiVersion"
              },
              "RateLimit-Policy": {
                "$ref": "#/components/headers/RateLimitPolicy"
              },
              "Deprecation": {
                "$ref": "#/components/headers/Deprecation"
              },
              "Sunset": {
                "$ref": "#/components/headers/Sunset"
              },
              "Vary": {
                "description": "Always \"Accept, Accept-Encoding\" so caches key on the representation.",
                "schema": {
                  "type": "string"
                }
              },
              "Link": {
                "description": "Advertises the Markdown alternate and the agent guide.",
                "schema": {
                  "type": "string"
                }
              }
            },
            "content": {
              "text/html": {
                "schema": {
                  "type": "string"
                }
              },
              "text/markdown": {
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "404": {
            "description": "No resource exists at this path. Negotiated as HTML, Markdown, or problem details. Paths under /api return JSON by default regardless of the Accept header.",
            "headers": {
              "API-Version": {
                "$ref": "#/components/headers/ApiVersion"
              },
              "RateLimit-Policy": {
                "$ref": "#/components/headers/RateLimitPolicy"
              },
              "Deprecation": {
                "$ref": "#/components/headers/Deprecation"
              },
              "Sunset": {
                "$ref": "#/components/headers/Sunset"
              }
            },
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/markdown": {
                "schema": {
                  "type": "string"
                }
              },
              "text/html": {
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "406": {
            "description": "No representation matches the Accept header.",
            "headers": {
              "API-Version": {
                "$ref": "#/components/headers/ApiVersion"
              },
              "RateLimit-Policy": {
                "$ref": "#/components/headers/RateLimitPolicy"
              },
              "Deprecation": {
                "$ref": "#/components/headers/Deprecation"
              },
              "Sunset": {
                "$ref": "#/components/headers/Sunset"
              }
            },
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/counsellor/sarvenaz-amiri": {
      "get": {
        "operationId": "getCounsellorSarvenazAmiriPage",
        "summary": "Sarvenaz Amiri, RCC | Counsellor in Surrey, BC | Metro Counselling",
        "description": "Sarvenaz Amiri, Registered Clinical Counsellor at Metro Counselling Surrey. Trauma-informed, client-centered care for anxiety, depression, and PTSD in English and Farsi. Returns prerendered HTML by default, or Markdown when Accept: text/markdown is sent. The Markdown representation is also addressable directly at https://metrocounselling.ca/counsellor/sarvenaz-amiri/index.md, and is advertised via a Link rel=\"alternate\" header.",
        "tags": [
          "pages"
        ],
        "parameters": [
          {
            "$ref": "#/components/parameters/Accept"
          }
        ],
        "responses": {
          "200": {
            "description": "The page, in the negotiated representation.",
            "headers": {
              "API-Version": {
                "$ref": "#/components/headers/ApiVersion"
              },
              "RateLimit-Policy": {
                "$ref": "#/components/headers/RateLimitPolicy"
              },
              "Deprecation": {
                "$ref": "#/components/headers/Deprecation"
              },
              "Sunset": {
                "$ref": "#/components/headers/Sunset"
              },
              "Vary": {
                "description": "Always \"Accept, Accept-Encoding\" so caches key on the representation.",
                "schema": {
                  "type": "string"
                }
              },
              "Link": {
                "description": "Advertises the Markdown alternate and the agent guide.",
                "schema": {
                  "type": "string"
                }
              }
            },
            "content": {
              "text/html": {
                "schema": {
                  "type": "string"
                }
              },
              "text/markdown": {
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "404": {
            "description": "No resource exists at this path. Negotiated as HTML, Markdown, or problem details. Paths under /api return JSON by default regardless of the Accept header.",
            "headers": {
              "API-Version": {
                "$ref": "#/components/headers/ApiVersion"
              },
              "RateLimit-Policy": {
                "$ref": "#/components/headers/RateLimitPolicy"
              },
              "Deprecation": {
                "$ref": "#/components/headers/Deprecation"
              },
              "Sunset": {
                "$ref": "#/components/headers/Sunset"
              }
            },
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/markdown": {
                "schema": {
                  "type": "string"
                }
              },
              "text/html": {
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "406": {
            "description": "No representation matches the Accept header.",
            "headers": {
              "API-Version": {
                "$ref": "#/components/headers/ApiVersion"
              },
              "RateLimit-Policy": {
                "$ref": "#/components/headers/RateLimitPolicy"
              },
              "Deprecation": {
                "$ref": "#/components/headers/Deprecation"
              },
              "Sunset": {
                "$ref": "#/components/headers/Sunset"
              }
            },
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/couples-therapy-marriage-counselling-surrey": {
      "get": {
        "operationId": "getCouplesTherapyMarriageCounsellingSurreyPage",
        "summary": "Marriage Counselling & Couples Therapy in Surrey, BC",
        "description": "Expert marriage counselling and couples therapy in Surrey, BC. Strengthen communication, rebuild trust, and resolve conflict with registered clinical counsellors. Returns prerendered HTML by default, or Markdown when Accept: text/markdown is sent. The Markdown representation is also addressable directly at https://metrocounselling.ca/couples-therapy-marriage-counselling-surrey/index.md, and is advertised via a Link rel=\"alternate\" header.",
        "tags": [
          "pages"
        ],
        "parameters": [
          {
            "$ref": "#/components/parameters/Accept"
          }
        ],
        "responses": {
          "200": {
            "description": "The page, in the negotiated representation.",
            "headers": {
              "API-Version": {
                "$ref": "#/components/headers/ApiVersion"
              },
              "RateLimit-Policy": {
                "$ref": "#/components/headers/RateLimitPolicy"
              },
              "Deprecation": {
                "$ref": "#/components/headers/Deprecation"
              },
              "Sunset": {
                "$ref": "#/components/headers/Sunset"
              },
              "Vary": {
                "description": "Always \"Accept, Accept-Encoding\" so caches key on the representation.",
                "schema": {
                  "type": "string"
                }
              },
              "Link": {
                "description": "Advertises the Markdown alternate and the agent guide.",
                "schema": {
                  "type": "string"
                }
              }
            },
            "content": {
              "text/html": {
                "schema": {
                  "type": "string"
                }
              },
              "text/markdown": {
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "404": {
            "description": "No resource exists at this path. Negotiated as HTML, Markdown, or problem details. Paths under /api return JSON by default regardless of the Accept header.",
            "headers": {
              "API-Version": {
                "$ref": "#/components/headers/ApiVersion"
              },
              "RateLimit-Policy": {
                "$ref": "#/components/headers/RateLimitPolicy"
              },
              "Deprecation": {
                "$ref": "#/components/headers/Deprecation"
              },
              "Sunset": {
                "$ref": "#/components/headers/Sunset"
              }
            },
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/markdown": {
                "schema": {
                  "type": "string"
                }
              },
              "text/html": {
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "406": {
            "description": "No representation matches the Accept header.",
            "headers": {
              "API-Version": {
                "$ref": "#/components/headers/ApiVersion"
              },
              "RateLimit-Policy": {
                "$ref": "#/components/headers/RateLimitPolicy"
              },
              "Deprecation": {
                "$ref": "#/components/headers/Deprecation"
              },
              "Sunset": {
                "$ref": "#/components/headers/Sunset"
              }
            },
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/depression-treatment-counsellors-in-surrey": {
      "get": {
        "operationId": "getDepressionTreatmentCounsellorsInSurreyPage",
        "summary": "Depression Counselling & Treatment in Surrey, BC",
        "description": "Expert depression counselling and treatment in Surrey, BC. Professional support, evidence-based therapy, and compassionate care from registered clinical counsellors. Returns prerendered HTML by default, or Markdown when Accept: text/markdown is sent. The Markdown representation is also addressable directly at https://metrocounselling.ca/depression-treatment-counsellors-in-surrey/index.md, and is advertised via a Link rel=\"alternate\" header.",
        "tags": [
          "pages"
        ],
        "parameters": [
          {
            "$ref": "#/components/parameters/Accept"
          }
        ],
        "responses": {
          "200": {
            "description": "The page, in the negotiated representation.",
            "headers": {
              "API-Version": {
                "$ref": "#/components/headers/ApiVersion"
              },
              "RateLimit-Policy": {
                "$ref": "#/components/headers/RateLimitPolicy"
              },
              "Deprecation": {
                "$ref": "#/components/headers/Deprecation"
              },
              "Sunset": {
                "$ref": "#/components/headers/Sunset"
              },
              "Vary": {
                "description": "Always \"Accept, Accept-Encoding\" so caches key on the representation.",
                "schema": {
                  "type": "string"
                }
              },
              "Link": {
                "description": "Advertises the Markdown alternate and the agent guide.",
                "schema": {
                  "type": "string"
                }
              }
            },
            "content": {
              "text/html": {
                "schema": {
                  "type": "string"
                }
              },
              "text/markdown": {
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "404": {
            "description": "No resource exists at this path. Negotiated as HTML, Markdown, or problem details. Paths under /api return JSON by default regardless of the Accept header.",
            "headers": {
              "API-Version": {
                "$ref": "#/components/headers/ApiVersion"
              },
              "RateLimit-Policy": {
                "$ref": "#/components/headers/RateLimitPolicy"
              },
              "Deprecation": {
                "$ref": "#/components/headers/Deprecation"
              },
              "Sunset": {
                "$ref": "#/components/headers/Sunset"
              }
            },
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/markdown": {
                "schema": {
                  "type": "string"
                }
              },
              "text/html": {
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "406": {
            "description": "No representation matches the Accept header.",
            "headers": {
              "API-Version": {
                "$ref": "#/components/headers/ApiVersion"
              },
              "RateLimit-Policy": {
                "$ref": "#/components/headers/RateLimitPolicy"
              },
              "Deprecation": {
                "$ref": "#/components/headers/Deprecation"
              },
              "Sunset": {
                "$ref": "#/components/headers/Sunset"
              }
            },
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/developers": {
      "get": {
        "operationId": "getDevelopersPage",
        "summary": "Developer & Agent Documentation | Metro Counselling",
        "description": "How automated agents can read Metro Counselling's public pages: OpenAPI description, llms.txt, Markdown content negotiation, and structured JSON error responses. Returns prerendered HTML by default, or Markdown when Accept: text/markdown is sent. The Markdown representation is also addressable directly at https://metrocounselling.ca/developers/index.md, and is advertised via a Link rel=\"alternate\" header.",
        "tags": [
          "pages"
        ],
        "parameters": [
          {
            "$ref": "#/components/parameters/Accept"
          }
        ],
        "responses": {
          "200": {
            "description": "The page, in the negotiated representation.",
            "headers": {
              "API-Version": {
                "$ref": "#/components/headers/ApiVersion"
              },
              "RateLimit-Policy": {
                "$ref": "#/components/headers/RateLimitPolicy"
              },
              "Deprecation": {
                "$ref": "#/components/headers/Deprecation"
              },
              "Sunset": {
                "$ref": "#/components/headers/Sunset"
              },
              "Vary": {
                "description": "Always \"Accept, Accept-Encoding\" so caches key on the representation.",
                "schema": {
                  "type": "string"
                }
              },
              "Link": {
                "description": "Advertises the Markdown alternate and the agent guide.",
                "schema": {
                  "type": "string"
                }
              }
            },
            "content": {
              "text/html": {
                "schema": {
                  "type": "string"
                }
              },
              "text/markdown": {
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "404": {
            "description": "No resource exists at this path. Negotiated as HTML, Markdown, or problem details. Paths under /api return JSON by default regardless of the Accept header.",
            "headers": {
              "API-Version": {
                "$ref": "#/components/headers/ApiVersion"
              },
              "RateLimit-Policy": {
                "$ref": "#/components/headers/RateLimitPolicy"
              },
              "Deprecation": {
                "$ref": "#/components/headers/Deprecation"
              },
              "Sunset": {
                "$ref": "#/components/headers/Sunset"
              }
            },
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/markdown": {
                "schema": {
                  "type": "string"
                }
              },
              "text/html": {
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "406": {
            "description": "No representation matches the Accept header.",
            "headers": {
              "API-Version": {
                "$ref": "#/components/headers/ApiVersion"
              },
              "RateLimit-Policy": {
                "$ref": "#/components/headers/RateLimitPolicy"
              },
              "Deprecation": {
                "$ref": "#/components/headers/Deprecation"
              },
              "Sunset": {
                "$ref": "#/components/headers/Sunset"
              }
            },
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/family-therapy-counselling-services-in-surrey": {
      "get": {
        "operationId": "getFamilyTherapyCounsellingServicesInSurreyPage",
        "summary": "Family Therapy & Counselling in Surrey, BC",
        "description": "Professional family therapy and counselling in Surrey, BC. Strengthen family bonds, resolve conflicts, and improve communication with experienced therapists. Returns prerendered HTML by default, or Markdown when Accept: text/markdown is sent. The Markdown representation is also addressable directly at https://metrocounselling.ca/family-therapy-counselling-services-in-surrey/index.md, and is advertised via a Link rel=\"alternate\" header.",
        "tags": [
          "pages"
        ],
        "parameters": [
          {
            "$ref": "#/components/parameters/Accept"
          }
        ],
        "responses": {
          "200": {
            "description": "The page, in the negotiated representation.",
            "headers": {
              "API-Version": {
                "$ref": "#/components/headers/ApiVersion"
              },
              "RateLimit-Policy": {
                "$ref": "#/components/headers/RateLimitPolicy"
              },
              "Deprecation": {
                "$ref": "#/components/headers/Deprecation"
              },
              "Sunset": {
                "$ref": "#/components/headers/Sunset"
              },
              "Vary": {
                "description": "Always \"Accept, Accept-Encoding\" so caches key on the representation.",
                "schema": {
                  "type": "string"
                }
              },
              "Link": {
                "description": "Advertises the Markdown alternate and the agent guide.",
                "schema": {
                  "type": "string"
                }
              }
            },
            "content": {
              "text/html": {
                "schema": {
                  "type": "string"
                }
              },
              "text/markdown": {
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "404": {
            "description": "No resource exists at this path. Negotiated as HTML, Markdown, or problem details. Paths under /api return JSON by default regardless of the Accept header.",
            "headers": {
              "API-Version": {
                "$ref": "#/components/headers/ApiVersion"
              },
              "RateLimit-Policy": {
                "$ref": "#/components/headers/RateLimitPolicy"
              },
              "Deprecation": {
                "$ref": "#/components/headers/Deprecation"
              },
              "Sunset": {
                "$ref": "#/components/headers/Sunset"
              }
            },
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/markdown": {
                "schema": {
                  "type": "string"
                }
              },
              "text/html": {
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "406": {
            "description": "No representation matches the Accept header.",
            "headers": {
              "API-Version": {
                "$ref": "#/components/headers/ApiVersion"
              },
              "RateLimit-Policy": {
                "$ref": "#/components/headers/RateLimitPolicy"
              },
              "Deprecation": {
                "$ref": "#/components/headers/Deprecation"
              },
              "Sunset": {
                "$ref": "#/components/headers/Sunset"
              }
            },
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/grief-counselling-support-surrey": {
      "get": {
        "operationId": "getGriefCounsellingSupportSurreyPage",
        "summary": "Grief Counselling & Bereavement Support in Surrey, BC",
        "description": "Compassionate grief counselling and bereavement support in Surrey, BC. Professional help navigating loss, mourning, and healing. Returns prerendered HTML by default, or Markdown when Accept: text/markdown is sent. The Markdown representation is also addressable directly at https://metrocounselling.ca/grief-counselling-support-surrey/index.md, and is advertised via a Link rel=\"alternate\" header.",
        "tags": [
          "pages"
        ],
        "parameters": [
          {
            "$ref": "#/components/parameters/Accept"
          }
        ],
        "responses": {
          "200": {
            "description": "The page, in the negotiated representation.",
            "headers": {
              "API-Version": {
                "$ref": "#/components/headers/ApiVersion"
              },
              "RateLimit-Policy": {
                "$ref": "#/components/headers/RateLimitPolicy"
              },
              "Deprecation": {
                "$ref": "#/components/headers/Deprecation"
              },
              "Sunset": {
                "$ref": "#/components/headers/Sunset"
              },
              "Vary": {
                "description": "Always \"Accept, Accept-Encoding\" so caches key on the representation.",
                "schema": {
                  "type": "string"
                }
              },
              "Link": {
                "description": "Advertises the Markdown alternate and the agent guide.",
                "schema": {
                  "type": "string"
                }
              }
            },
            "content": {
              "text/html": {
                "schema": {
                  "type": "string"
                }
              },
              "text/markdown": {
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "404": {
            "description": "No resource exists at this path. Negotiated as HTML, Markdown, or problem details. Paths under /api return JSON by default regardless of the Accept header.",
            "headers": {
              "API-Version": {
                "$ref": "#/components/headers/ApiVersion"
              },
              "RateLimit-Policy": {
                "$ref": "#/components/headers/RateLimitPolicy"
              },
              "Deprecation": {
                "$ref": "#/components/headers/Deprecation"
              },
              "Sunset": {
                "$ref": "#/components/headers/Sunset"
              }
            },
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/markdown": {
                "schema": {
                  "type": "string"
                }
              },
              "text/html": {
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "406": {
            "description": "No representation matches the Accept header.",
            "headers": {
              "API-Version": {
                "$ref": "#/components/headers/ApiVersion"
              },
              "RateLimit-Policy": {
                "$ref": "#/components/headers/RateLimitPolicy"
              },
              "Deprecation": {
                "$ref": "#/components/headers/Deprecation"
              },
              "Sunset": {
                "$ref": "#/components/headers/Sunset"
              }
            },
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/holy-fire-reiki-therapy-surrey": {
      "get": {
        "operationId": "getHolyFireReikiTherapySurreyPage",
        "summary": "Holy Fire Reiki Therapy in Surrey, BC | Metro Counselling",
        "description": "Experience Holy Fire Reiki energy healing in Surrey, BC. Professional Reiki therapy for physical and emotional well-being. Returns prerendered HTML by default, or Markdown when Accept: text/markdown is sent. The Markdown representation is also addressable directly at https://metrocounselling.ca/holy-fire-reiki-therapy-surrey/index.md, and is advertised via a Link rel=\"alternate\" header.",
        "tags": [
          "pages"
        ],
        "parameters": [
          {
            "$ref": "#/components/parameters/Accept"
          }
        ],
        "responses": {
          "200": {
            "description": "The page, in the negotiated representation.",
            "headers": {
              "API-Version": {
                "$ref": "#/components/headers/ApiVersion"
              },
              "RateLimit-Policy": {
                "$ref": "#/components/headers/RateLimitPolicy"
              },
              "Deprecation": {
                "$ref": "#/components/headers/Deprecation"
              },
              "Sunset": {
                "$ref": "#/components/headers/Sunset"
              },
              "Vary": {
                "description": "Always \"Accept, Accept-Encoding\" so caches key on the representation.",
                "schema": {
                  "type": "string"
                }
              },
              "Link": {
                "description": "Advertises the Markdown alternate and the agent guide.",
                "schema": {
                  "type": "string"
                }
              }
            },
            "content": {
              "text/html": {
                "schema": {
                  "type": "string"
                }
              },
              "text/markdown": {
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "404": {
            "description": "No resource exists at this path. Negotiated as HTML, Markdown, or problem details. Paths under /api return JSON by default regardless of the Accept header.",
            "headers": {
              "API-Version": {
                "$ref": "#/components/headers/ApiVersion"
              },
              "RateLimit-Policy": {
                "$ref": "#/components/headers/RateLimitPolicy"
              },
              "Deprecation": {
                "$ref": "#/components/headers/Deprecation"
              },
              "Sunset": {
                "$ref": "#/components/headers/Sunset"
              }
            },
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/markdown": {
                "schema": {
                  "type": "string"
                }
              },
              "text/html": {
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "406": {
            "description": "No representation matches the Accept header.",
            "headers": {
              "API-Version": {
                "$ref": "#/components/headers/ApiVersion"
              },
              "RateLimit-Policy": {
                "$ref": "#/components/headers/RateLimitPolicy"
              },
              "Deprecation": {
                "$ref": "#/components/headers/Deprecation"
              },
              "Sunset": {
                "$ref": "#/components/headers/Sunset"
              }
            },
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/icbc-coverage-and-other-coverage": {
      "get": {
        "operationId": "getIcbcCoverageAndOtherCoveragePage",
        "summary": "ICBC Counselling Coverage in Surrey, BC | Metro Counselling",
        "description": "ICBC counselling and trauma therapy in Surrey, BC. Direct billing, 12 free sessions, and specialized support for accident-related anxiety, PTSD, and grief. Returns prerendered HTML by default, or Markdown when Accept: text/markdown is sent. The Markdown representation is also addressable directly at https://metrocounselling.ca/icbc-coverage-and-other-coverage/index.md, and is advertised via a Link rel=\"alternate\" header.",
        "tags": [
          "pages"
        ],
        "parameters": [
          {
            "$ref": "#/components/parameters/Accept"
          }
        ],
        "responses": {
          "200": {
            "description": "The page, in the negotiated representation.",
            "headers": {
              "API-Version": {
                "$ref": "#/components/headers/ApiVersion"
              },
              "RateLimit-Policy": {
                "$ref": "#/components/headers/RateLimitPolicy"
              },
              "Deprecation": {
                "$ref": "#/components/headers/Deprecation"
              },
              "Sunset": {
                "$ref": "#/components/headers/Sunset"
              },
              "Vary": {
                "description": "Always \"Accept, Accept-Encoding\" so caches key on the representation.",
                "schema": {
                  "type": "string"
                }
              },
              "Link": {
                "description": "Advertises the Markdown alternate and the agent guide.",
                "schema": {
                  "type": "string"
                }
              }
            },
            "content": {
              "text/html": {
                "schema": {
                  "type": "string"
                }
              },
              "text/markdown": {
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "404": {
            "description": "No resource exists at this path. Negotiated as HTML, Markdown, or problem details. Paths under /api return JSON by default regardless of the Accept header.",
            "headers": {
              "API-Version": {
                "$ref": "#/components/headers/ApiVersion"
              },
              "RateLimit-Policy": {
                "$ref": "#/components/headers/RateLimitPolicy"
              },
              "Deprecation": {
                "$ref": "#/components/headers/Deprecation"
              },
              "Sunset": {
                "$ref": "#/components/headers/Sunset"
              }
            },
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/markdown": {
                "schema": {
                  "type": "string"
                }
              },
              "text/html": {
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "406": {
            "description": "No representation matches the Accept header.",
            "headers": {
              "API-Version": {
                "$ref": "#/components/headers/ApiVersion"
              },
              "RateLimit-Policy": {
                "$ref": "#/components/headers/RateLimitPolicy"
              },
              "Deprecation": {
                "$ref": "#/components/headers/Deprecation"
              },
              "Sunset": {
                "$ref": "#/components/headers/Sunset"
              }
            },
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/indian-head-massage-therapy-surrey": {
      "get": {
        "operationId": "getIndianHeadMassageTherapySurreyPage",
        "summary": "Indian Head Massage Therapy in Surrey, BC",
        "description": "Traditional Indian head massage therapy in Surrey, BC. Stress relief, relaxation, and improved well-being. Returns prerendered HTML by default, or Markdown when Accept: text/markdown is sent. The Markdown representation is also addressable directly at https://metrocounselling.ca/indian-head-massage-therapy-surrey/index.md, and is advertised via a Link rel=\"alternate\" header.",
        "tags": [
          "pages"
        ],
        "parameters": [
          {
            "$ref": "#/components/parameters/Accept"
          }
        ],
        "responses": {
          "200": {
            "description": "The page, in the negotiated representation.",
            "headers": {
              "API-Version": {
                "$ref": "#/components/headers/ApiVersion"
              },
              "RateLimit-Policy": {
                "$ref": "#/components/headers/RateLimitPolicy"
              },
              "Deprecation": {
                "$ref": "#/components/headers/Deprecation"
              },
              "Sunset": {
                "$ref": "#/components/headers/Sunset"
              },
              "Vary": {
                "description": "Always \"Accept, Accept-Encoding\" so caches key on the representation.",
                "schema": {
                  "type": "string"
                }
              },
              "Link": {
                "description": "Advertises the Markdown alternate and the agent guide.",
                "schema": {
                  "type": "string"
                }
              }
            },
            "content": {
              "text/html": {
                "schema": {
                  "type": "string"
                }
              },
              "text/markdown": {
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "404": {
            "description": "No resource exists at this path. Negotiated as HTML, Markdown, or problem details. Paths under /api return JSON by default regardless of the Accept header.",
            "headers": {
              "API-Version": {
                "$ref": "#/components/headers/ApiVersion"
              },
              "RateLimit-Policy": {
                "$ref": "#/components/headers/RateLimitPolicy"
              },
              "Deprecation": {
                "$ref": "#/components/headers/Deprecation"
              },
              "Sunset": {
                "$ref": "#/components/headers/Sunset"
              }
            },
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/markdown": {
                "schema": {
                  "type": "string"
                }
              },
              "text/html": {
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "406": {
            "description": "No representation matches the Accept header.",
            "headers": {
              "API-Version": {
                "$ref": "#/components/headers/ApiVersion"
              },
              "RateLimit-Policy": {
                "$ref": "#/components/headers/RateLimitPolicy"
              },
              "Deprecation": {
                "$ref": "#/components/headers/Deprecation"
              },
              "Sunset": {
                "$ref": "#/components/headers/Sunset"
              }
            },
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/individual-counselling-therapy-surrey": {
      "get": {
        "operationId": "getIndividualCounsellingTherapySurreyPage",
        "summary": "Individual Counselling & Therapy in Surrey, BC | Metro Counselling",
        "description": "Professional one-on-one counselling in Surrey, BC. Personalized therapy for anxiety, depression, stress, life transitions, and personal growth with experienced RCCs. Returns prerendered HTML by default, or Markdown when Accept: text/markdown is sent. The Markdown representation is also addressable directly at https://metrocounselling.ca/individual-counselling-therapy-surrey/index.md, and is advertised via a Link rel=\"alternate\" header.",
        "tags": [
          "pages"
        ],
        "parameters": [
          {
            "$ref": "#/components/parameters/Accept"
          }
        ],
        "responses": {
          "200": {
            "description": "The page, in the negotiated representation.",
            "headers": {
              "API-Version": {
                "$ref": "#/components/headers/ApiVersion"
              },
              "RateLimit-Policy": {
                "$ref": "#/components/headers/RateLimitPolicy"
              },
              "Deprecation": {
                "$ref": "#/components/headers/Deprecation"
              },
              "Sunset": {
                "$ref": "#/components/headers/Sunset"
              },
              "Vary": {
                "description": "Always \"Accept, Accept-Encoding\" so caches key on the representation.",
                "schema": {
                  "type": "string"
                }
              },
              "Link": {
                "description": "Advertises the Markdown alternate and the agent guide.",
                "schema": {
                  "type": "string"
                }
              }
            },
            "content": {
              "text/html": {
                "schema": {
                  "type": "string"
                }
              },
              "text/markdown": {
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "404": {
            "description": "No resource exists at this path. Negotiated as HTML, Markdown, or problem details. Paths under /api return JSON by default regardless of the Accept header.",
            "headers": {
              "API-Version": {
                "$ref": "#/components/headers/ApiVersion"
              },
              "RateLimit-Policy": {
                "$ref": "#/components/headers/RateLimitPolicy"
              },
              "Deprecation": {
                "$ref": "#/components/headers/Deprecation"
              },
              "Sunset": {
                "$ref": "#/components/headers/Sunset"
              }
            },
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/markdown": {
                "schema": {
                  "type": "string"
                }
              },
              "text/html": {
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "406": {
            "description": "No representation matches the Accept header.",
            "headers": {
              "API-Version": {
                "$ref": "#/components/headers/ApiVersion"
              },
              "RateLimit-Policy": {
                "$ref": "#/components/headers/RateLimitPolicy"
              },
              "Deprecation": {
                "$ref": "#/components/headers/Deprecation"
              },
              "Sunset": {
                "$ref": "#/components/headers/Sunset"
              }
            },
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/lgbtq-counselling": {
      "get": {
        "operationId": "getLgbtqCounsellingPage",
        "summary": "LGBTQ+ Counselling in Surrey, BC | Metro Counselling",
        "description": "Affirming LGBTQ+ counselling in Surrey, BC. Inclusive, professional support in a safe and welcoming environment for queer, trans, and non-binary clients. Returns prerendered HTML by default, or Markdown when Accept: text/markdown is sent. The Markdown representation is also addressable directly at https://metrocounselling.ca/lgbtq-counselling/index.md, and is advertised via a Link rel=\"alternate\" header.",
        "tags": [
          "pages"
        ],
        "parameters": [
          {
            "$ref": "#/components/parameters/Accept"
          }
        ],
        "responses": {
          "200": {
            "description": "The page, in the negotiated representation.",
            "headers": {
              "API-Version": {
                "$ref": "#/components/headers/ApiVersion"
              },
              "RateLimit-Policy": {
                "$ref": "#/components/headers/RateLimitPolicy"
              },
              "Deprecation": {
                "$ref": "#/components/headers/Deprecation"
              },
              "Sunset": {
                "$ref": "#/components/headers/Sunset"
              },
              "Vary": {
                "description": "Always \"Accept, Accept-Encoding\" so caches key on the representation.",
                "schema": {
                  "type": "string"
                }
              },
              "Link": {
                "description": "Advertises the Markdown alternate and the agent guide.",
                "schema": {
                  "type": "string"
                }
              }
            },
            "content": {
              "text/html": {
                "schema": {
                  "type": "string"
                }
              },
              "text/markdown": {
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "404": {
            "description": "No resource exists at this path. Negotiated as HTML, Markdown, or problem details. Paths under /api return JSON by default regardless of the Accept header.",
            "headers": {
              "API-Version": {
                "$ref": "#/components/headers/ApiVersion"
              },
              "RateLimit-Policy": {
                "$ref": "#/components/headers/RateLimitPolicy"
              },
              "Deprecation": {
                "$ref": "#/components/headers/Deprecation"
              },
              "Sunset": {
                "$ref": "#/components/headers/Sunset"
              }
            },
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/markdown": {
                "schema": {
                  "type": "string"
                }
              },
              "text/html": {
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "406": {
            "description": "No representation matches the Accept header.",
            "headers": {
              "API-Version": {
                "$ref": "#/components/headers/ApiVersion"
              },
              "RateLimit-Policy": {
                "$ref": "#/components/headers/RateLimitPolicy"
              },
              "Deprecation": {
                "$ref": "#/components/headers/Deprecation"
              },
              "Sunset": {
                "$ref": "#/components/headers/Sunset"
              }
            },
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/meet-our-counsellors": {
      "get": {
        "operationId": "getMeetOurCounsellorsPage",
        "summary": "Meet Our Counsellors in Surrey, BC | Metro Counselling",
        "description": "Meet the registered clinical counsellors and therapists at Metro Counselling in Surrey, BC. Multilingual team specializing in trauma, anxiety, depression, and couples therapy. Returns prerendered HTML by default, or Markdown when Accept: text/markdown is sent. The Markdown representation is also addressable directly at https://metrocounselling.ca/meet-our-counsellors/index.md, and is advertised via a Link rel=\"alternate\" header.",
        "tags": [
          "pages"
        ],
        "parameters": [
          {
            "$ref": "#/components/parameters/Accept"
          }
        ],
        "responses": {
          "200": {
            "description": "The page, in the negotiated representation.",
            "headers": {
              "API-Version": {
                "$ref": "#/components/headers/ApiVersion"
              },
              "RateLimit-Policy": {
                "$ref": "#/components/headers/RateLimitPolicy"
              },
              "Deprecation": {
                "$ref": "#/components/headers/Deprecation"
              },
              "Sunset": {
                "$ref": "#/components/headers/Sunset"
              },
              "Vary": {
                "description": "Always \"Accept, Accept-Encoding\" so caches key on the representation.",
                "schema": {
                  "type": "string"
                }
              },
              "Link": {
                "description": "Advertises the Markdown alternate and the agent guide.",
                "schema": {
                  "type": "string"
                }
              }
            },
            "content": {
              "text/html": {
                "schema": {
                  "type": "string"
                }
              },
              "text/markdown": {
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "404": {
            "description": "No resource exists at this path. Negotiated as HTML, Markdown, or problem details. Paths under /api return JSON by default regardless of the Accept header.",
            "headers": {
              "API-Version": {
                "$ref": "#/components/headers/ApiVersion"
              },
              "RateLimit-Policy": {
                "$ref": "#/components/headers/RateLimitPolicy"
              },
              "Deprecation": {
                "$ref": "#/components/headers/Deprecation"
              },
              "Sunset": {
                "$ref": "#/components/headers/Sunset"
              }
            },
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/markdown": {
                "schema": {
                  "type": "string"
                }
              },
              "text/html": {
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "406": {
            "description": "No representation matches the Accept header.",
            "headers": {
              "API-Version": {
                "$ref": "#/components/headers/ApiVersion"
              },
              "RateLimit-Policy": {
                "$ref": "#/components/headers/RateLimitPolicy"
              },
              "Deprecation": {
                "$ref": "#/components/headers/Deprecation"
              },
              "Sunset": {
                "$ref": "#/components/headers/Sunset"
              }
            },
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/mental-health-counselling-surrey": {
      "get": {
        "operationId": "getMentalHealthCounsellingSurreyPage",
        "summary": "Mental Health Counselling in Surrey, BC | Metro Counselling",
        "description": "Comprehensive mental health counselling in Surrey, BC. Professional support for anxiety, depression, trauma, and other mental health concerns. Returns prerendered HTML by default, or Markdown when Accept: text/markdown is sent. The Markdown representation is also addressable directly at https://metrocounselling.ca/mental-health-counselling-surrey/index.md, and is advertised via a Link rel=\"alternate\" header.",
        "tags": [
          "pages"
        ],
        "parameters": [
          {
            "$ref": "#/components/parameters/Accept"
          }
        ],
        "responses": {
          "200": {
            "description": "The page, in the negotiated representation.",
            "headers": {
              "API-Version": {
                "$ref": "#/components/headers/ApiVersion"
              },
              "RateLimit-Policy": {
                "$ref": "#/components/headers/RateLimitPolicy"
              },
              "Deprecation": {
                "$ref": "#/components/headers/Deprecation"
              },
              "Sunset": {
                "$ref": "#/components/headers/Sunset"
              },
              "Vary": {
                "description": "Always \"Accept, Accept-Encoding\" so caches key on the representation.",
                "schema": {
                  "type": "string"
                }
              },
              "Link": {
                "description": "Advertises the Markdown alternate and the agent guide.",
                "schema": {
                  "type": "string"
                }
              }
            },
            "content": {
              "text/html": {
                "schema": {
                  "type": "string"
                }
              },
              "text/markdown": {
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "404": {
            "description": "No resource exists at this path. Negotiated as HTML, Markdown, or problem details. Paths under /api return JSON by default regardless of the Accept header.",
            "headers": {
              "API-Version": {
                "$ref": "#/components/headers/ApiVersion"
              },
              "RateLimit-Policy": {
                "$ref": "#/components/headers/RateLimitPolicy"
              },
              "Deprecation": {
                "$ref": "#/components/headers/Deprecation"
              },
              "Sunset": {
                "$ref": "#/components/headers/Sunset"
              }
            },
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/markdown": {
                "schema": {
                  "type": "string"
                }
              },
              "text/html": {
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "406": {
            "description": "No representation matches the Accept header.",
            "headers": {
              "API-Version": {
                "$ref": "#/components/headers/ApiVersion"
              },
              "RateLimit-Policy": {
                "$ref": "#/components/headers/RateLimitPolicy"
              },
              "Deprecation": {
                "$ref": "#/components/headers/Deprecation"
              },
              "Sunset": {
                "$ref": "#/components/headers/Sunset"
              }
            },
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/other-wellness-therapies": {
      "get": {
        "operationId": "getOtherWellnessTherapiesPage",
        "summary": "Wellness Therapies in Surrey, BC | Metro Counselling",
        "description": "Holistic wellness therapies in Surrey: Holy Fire Reiki, oxygen therapy, Indian head massage, and therapeutic touch. Mind-body care alongside counselling. Returns prerendered HTML by default, or Markdown when Accept: text/markdown is sent. The Markdown representation is also addressable directly at https://metrocounselling.ca/other-wellness-therapies/index.md, and is advertised via a Link rel=\"alternate\" header.",
        "tags": [
          "pages"
        ],
        "parameters": [
          {
            "$ref": "#/components/parameters/Accept"
          }
        ],
        "responses": {
          "200": {
            "description": "The page, in the negotiated representation.",
            "headers": {
              "API-Version": {
                "$ref": "#/components/headers/ApiVersion"
              },
              "RateLimit-Policy": {
                "$ref": "#/components/headers/RateLimitPolicy"
              },
              "Deprecation": {
                "$ref": "#/components/headers/Deprecation"
              },
              "Sunset": {
                "$ref": "#/components/headers/Sunset"
              },
              "Vary": {
                "description": "Always \"Accept, Accept-Encoding\" so caches key on the representation.",
                "schema": {
                  "type": "string"
                }
              },
              "Link": {
                "description": "Advertises the Markdown alternate and the agent guide.",
                "schema": {
                  "type": "string"
                }
              }
            },
            "content": {
              "text/html": {
                "schema": {
                  "type": "string"
                }
              },
              "text/markdown": {
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "404": {
            "description": "No resource exists at this path. Negotiated as HTML, Markdown, or problem details. Paths under /api return JSON by default regardless of the Accept header.",
            "headers": {
              "API-Version": {
                "$ref": "#/components/headers/ApiVersion"
              },
              "RateLimit-Policy": {
                "$ref": "#/components/headers/RateLimitPolicy"
              },
              "Deprecation": {
                "$ref": "#/components/headers/Deprecation"
              },
              "Sunset": {
                "$ref": "#/components/headers/Sunset"
              }
            },
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/markdown": {
                "schema": {
                  "type": "string"
                }
              },
              "text/html": {
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "406": {
            "description": "No representation matches the Accept header.",
            "headers": {
              "API-Version": {
                "$ref": "#/components/headers/ApiVersion"
              },
              "RateLimit-Policy": {
                "$ref": "#/components/headers/RateLimitPolicy"
              },
              "Deprecation": {
                "$ref": "#/components/headers/Deprecation"
              },
              "Sunset": {
                "$ref": "#/components/headers/Sunset"
              }
            },
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/oxygen-therapy-surrey": {
      "get": {
        "operationId": "getOxygenTherapySurreyPage",
        "summary": "Oxygen Therapy in Surrey, BC | Metro Counselling",
        "description": "Professional oxygen therapy in Surrey, BC. Wellness and recovery support through oxygen therapy treatment. Returns prerendered HTML by default, or Markdown when Accept: text/markdown is sent. The Markdown representation is also addressable directly at https://metrocounselling.ca/oxygen-therapy-surrey/index.md, and is advertised via a Link rel=\"alternate\" header.",
        "tags": [
          "pages"
        ],
        "parameters": [
          {
            "$ref": "#/components/parameters/Accept"
          }
        ],
        "responses": {
          "200": {
            "description": "The page, in the negotiated representation.",
            "headers": {
              "API-Version": {
                "$ref": "#/components/headers/ApiVersion"
              },
              "RateLimit-Policy": {
                "$ref": "#/components/headers/RateLimitPolicy"
              },
              "Deprecation": {
                "$ref": "#/components/headers/Deprecation"
              },
              "Sunset": {
                "$ref": "#/components/headers/Sunset"
              },
              "Vary": {
                "description": "Always \"Accept, Accept-Encoding\" so caches key on the representation.",
                "schema": {
                  "type": "string"
                }
              },
              "Link": {
                "description": "Advertises the Markdown alternate and the agent guide.",
                "schema": {
                  "type": "string"
                }
              }
            },
            "content": {
              "text/html": {
                "schema": {
                  "type": "string"
                }
              },
              "text/markdown": {
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "404": {
            "description": "No resource exists at this path. Negotiated as HTML, Markdown, or problem details. Paths under /api return JSON by default regardless of the Accept header.",
            "headers": {
              "API-Version": {
                "$ref": "#/components/headers/ApiVersion"
              },
              "RateLimit-Policy": {
                "$ref": "#/components/headers/RateLimitPolicy"
              },
              "Deprecation": {
                "$ref": "#/components/headers/Deprecation"
              },
              "Sunset": {
                "$ref": "#/components/headers/Sunset"
              }
            },
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/markdown": {
                "schema": {
                  "type": "string"
                }
              },
              "text/html": {
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "406": {
            "description": "No representation matches the Accept header.",
            "headers": {
              "API-Version": {
                "$ref": "#/components/headers/ApiVersion"
              },
              "RateLimit-Policy": {
                "$ref": "#/components/headers/RateLimitPolicy"
              },
              "Deprecation": {
                "$ref": "#/components/headers/Deprecation"
              },
              "Sunset": {
                "$ref": "#/components/headers/Sunset"
              }
            },
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/post-traumatic-stress-disorder-counsellors": {
      "get": {
        "operationId": "getPostTraumaticStressDisorderCounsellorsPage",
        "summary": "PTSD & Trauma Counselling in Surrey, BC | Metro Counselling",
        "description": "Professional PTSD and trauma counselling in Surrey, BC. Specialized therapy for post-traumatic stress, ICBC trauma claims, and trauma recovery. Returns prerendered HTML by default, or Markdown when Accept: text/markdown is sent. The Markdown representation is also addressable directly at https://metrocounselling.ca/post-traumatic-stress-disorder-counsellors/index.md, and is advertised via a Link rel=\"alternate\" header.",
        "tags": [
          "pages"
        ],
        "parameters": [
          {
            "$ref": "#/components/parameters/Accept"
          }
        ],
        "responses": {
          "200": {
            "description": "The page, in the negotiated representation.",
            "headers": {
              "API-Version": {
                "$ref": "#/components/headers/ApiVersion"
              },
              "RateLimit-Policy": {
                "$ref": "#/components/headers/RateLimitPolicy"
              },
              "Deprecation": {
                "$ref": "#/components/headers/Deprecation"
              },
              "Sunset": {
                "$ref": "#/components/headers/Sunset"
              },
              "Vary": {
                "description": "Always \"Accept, Accept-Encoding\" so caches key on the representation.",
                "schema": {
                  "type": "string"
                }
              },
              "Link": {
                "description": "Advertises the Markdown alternate and the agent guide.",
                "schema": {
                  "type": "string"
                }
              }
            },
            "content": {
              "text/html": {
                "schema": {
                  "type": "string"
                }
              },
              "text/markdown": {
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "404": {
            "description": "No resource exists at this path. Negotiated as HTML, Markdown, or problem details. Paths under /api return JSON by default regardless of the Accept header.",
            "headers": {
              "API-Version": {
                "$ref": "#/components/headers/ApiVersion"
              },
              "RateLimit-Policy": {
                "$ref": "#/components/headers/RateLimitPolicy"
              },
              "Deprecation": {
                "$ref": "#/components/headers/Deprecation"
              },
              "Sunset": {
                "$ref": "#/components/headers/Sunset"
              }
            },
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/markdown": {
                "schema": {
                  "type": "string"
                }
              },
              "text/html": {
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "406": {
            "description": "No representation matches the Accept header.",
            "headers": {
              "API-Version": {
                "$ref": "#/components/headers/ApiVersion"
              },
              "RateLimit-Policy": {
                "$ref": "#/components/headers/RateLimitPolicy"
              },
              "Deprecation": {
                "$ref": "#/components/headers/Deprecation"
              },
              "Sunset": {
                "$ref": "#/components/headers/Sunset"
              }
            },
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/services": {
      "get": {
        "operationId": "getServicesPage",
        "summary": "Counselling Services in Surrey, BC | Metro Counselling",
        "description": "Comprehensive counselling services in Surrey: individual, couples, family, anxiety, depression, trauma, grief, anger management, and child counselling. Returns prerendered HTML by default, or Markdown when Accept: text/markdown is sent. The Markdown representation is also addressable directly at https://metrocounselling.ca/services/index.md, and is advertised via a Link rel=\"alternate\" header.",
        "tags": [
          "pages"
        ],
        "parameters": [
          {
            "$ref": "#/components/parameters/Accept"
          }
        ],
        "responses": {
          "200": {
            "description": "The page, in the negotiated representation.",
            "headers": {
              "API-Version": {
                "$ref": "#/components/headers/ApiVersion"
              },
              "RateLimit-Policy": {
                "$ref": "#/components/headers/RateLimitPolicy"
              },
              "Deprecation": {
                "$ref": "#/components/headers/Deprecation"
              },
              "Sunset": {
                "$ref": "#/components/headers/Sunset"
              },
              "Vary": {
                "description": "Always \"Accept, Accept-Encoding\" so caches key on the representation.",
                "schema": {
                  "type": "string"
                }
              },
              "Link": {
                "description": "Advertises the Markdown alternate and the agent guide.",
                "schema": {
                  "type": "string"
                }
              }
            },
            "content": {
              "text/html": {
                "schema": {
                  "type": "string"
                }
              },
              "text/markdown": {
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "404": {
            "description": "No resource exists at this path. Negotiated as HTML, Markdown, or problem details. Paths under /api return JSON by default regardless of the Accept header.",
            "headers": {
              "API-Version": {
                "$ref": "#/components/headers/ApiVersion"
              },
              "RateLimit-Policy": {
                "$ref": "#/components/headers/RateLimitPolicy"
              },
              "Deprecation": {
                "$ref": "#/components/headers/Deprecation"
              },
              "Sunset": {
                "$ref": "#/components/headers/Sunset"
              }
            },
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/markdown": {
                "schema": {
                  "type": "string"
                }
              },
              "text/html": {
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "406": {
            "description": "No representation matches the Accept header.",
            "headers": {
              "API-Version": {
                "$ref": "#/components/headers/ApiVersion"
              },
              "RateLimit-Policy": {
                "$ref": "#/components/headers/RateLimitPolicy"
              },
              "Deprecation": {
                "$ref": "#/components/headers/Deprecation"
              },
              "Sunset": {
                "$ref": "#/components/headers/Sunset"
              }
            },
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/tele-health-system": {
      "get": {
        "operationId": "getTeleHealthSystemPage",
        "summary": "Online Counselling & Telehealth Therapy in Surrey, BC",
        "description": "Secure online counselling and telehealth therapy across British Columbia. Virtual sessions with registered clinical counsellors from the comfort of home. Returns prerendered HTML by default, or Markdown when Accept: text/markdown is sent. The Markdown representation is also addressable directly at https://metrocounselling.ca/tele-health-system/index.md, and is advertised via a Link rel=\"alternate\" header.",
        "tags": [
          "pages"
        ],
        "parameters": [
          {
            "$ref": "#/components/parameters/Accept"
          }
        ],
        "responses": {
          "200": {
            "description": "The page, in the negotiated representation.",
            "headers": {
              "API-Version": {
                "$ref": "#/components/headers/ApiVersion"
              },
              "RateLimit-Policy": {
                "$ref": "#/components/headers/RateLimitPolicy"
              },
              "Deprecation": {
                "$ref": "#/components/headers/Deprecation"
              },
              "Sunset": {
                "$ref": "#/components/headers/Sunset"
              },
              "Vary": {
                "description": "Always \"Accept, Accept-Encoding\" so caches key on the representation.",
                "schema": {
                  "type": "string"
                }
              },
              "Link": {
                "description": "Advertises the Markdown alternate and the agent guide.",
                "schema": {
                  "type": "string"
                }
              }
            },
            "content": {
              "text/html": {
                "schema": {
                  "type": "string"
                }
              },
              "text/markdown": {
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "404": {
            "description": "No resource exists at this path. Negotiated as HTML, Markdown, or problem details. Paths under /api return JSON by default regardless of the Accept header.",
            "headers": {
              "API-Version": {
                "$ref": "#/components/headers/ApiVersion"
              },
              "RateLimit-Policy": {
                "$ref": "#/components/headers/RateLimitPolicy"
              },
              "Deprecation": {
                "$ref": "#/components/headers/Deprecation"
              },
              "Sunset": {
                "$ref": "#/components/headers/Sunset"
              }
            },
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/markdown": {
                "schema": {
                  "type": "string"
                }
              },
              "text/html": {
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "406": {
            "description": "No representation matches the Accept header.",
            "headers": {
              "API-Version": {
                "$ref": "#/components/headers/ApiVersion"
              },
              "RateLimit-Policy": {
                "$ref": "#/components/headers/RateLimitPolicy"
              },
              "Deprecation": {
                "$ref": "#/components/headers/Deprecation"
              },
              "Sunset": {
                "$ref": "#/components/headers/Sunset"
              }
            },
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/womens-issues-counsellors-in-surrey": {
      "get": {
        "operationId": "getWomensIssuesCounsellorsInSurreyPage",
        "summary": "Women's Counselling in Surrey, BC | Metro Counselling",
        "description": "Counselling for women in Surrey, BC. Professional support for women's mental health, life transitions, relationships, and personal well-being. Returns prerendered HTML by default, or Markdown when Accept: text/markdown is sent. The Markdown representation is also addressable directly at https://metrocounselling.ca/womens-issues-counsellors-in-surrey/index.md, and is advertised via a Link rel=\"alternate\" header.",
        "tags": [
          "pages"
        ],
        "parameters": [
          {
            "$ref": "#/components/parameters/Accept"
          }
        ],
        "responses": {
          "200": {
            "description": "The page, in the negotiated representation.",
            "headers": {
              "API-Version": {
                "$ref": "#/components/headers/ApiVersion"
              },
              "RateLimit-Policy": {
                "$ref": "#/components/headers/RateLimitPolicy"
              },
              "Deprecation": {
                "$ref": "#/components/headers/Deprecation"
              },
              "Sunset": {
                "$ref": "#/components/headers/Sunset"
              },
              "Vary": {
                "description": "Always \"Accept, Accept-Encoding\" so caches key on the representation.",
                "schema": {
                  "type": "string"
                }
              },
              "Link": {
                "description": "Advertises the Markdown alternate and the agent guide.",
                "schema": {
                  "type": "string"
                }
              }
            },
            "content": {
              "text/html": {
                "schema": {
                  "type": "string"
                }
              },
              "text/markdown": {
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "404": {
            "description": "No resource exists at this path. Negotiated as HTML, Markdown, or problem details. Paths under /api return JSON by default regardless of the Accept header.",
            "headers": {
              "API-Version": {
                "$ref": "#/components/headers/ApiVersion"
              },
              "RateLimit-Policy": {
                "$ref": "#/components/headers/RateLimitPolicy"
              },
              "Deprecation": {
                "$ref": "#/components/headers/Deprecation"
              },
              "Sunset": {
                "$ref": "#/components/headers/Sunset"
              }
            },
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/markdown": {
                "schema": {
                  "type": "string"
                }
              },
              "text/html": {
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "406": {
            "description": "No representation matches the Accept header.",
            "headers": {
              "API-Version": {
                "$ref": "#/components/headers/ApiVersion"
              },
              "RateLimit-Policy": {
                "$ref": "#/components/headers/RateLimitPolicy"
              },
              "Deprecation": {
                "$ref": "#/components/headers/Deprecation"
              },
              "Sunset": {
                "$ref": "#/components/headers/Sunset"
              }
            },
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/api": {
      "get": {
        "operationId": "getApiRoot",
        "summary": "JSON API discovery document",
        "description": "Entry point for the JSON surface. Returns the current version path, the address of every machine-readable resource, the published rate-limit policy, and the versioning and deprecation contract. Paths under /api return JSON by default regardless of Accept.",
        "tags": [
          "json-api"
        ],
        "responses": {
          "200": {
            "description": "Discovery document.",
            "headers": {
              "API-Version": {
                "$ref": "#/components/headers/ApiVersion"
              },
              "RateLimit-Policy": {
                "$ref": "#/components/headers/RateLimitPolicy"
              },
              "Deprecation": {
                "$ref": "#/components/headers/Deprecation"
              },
              "Sunset": {
                "$ref": "#/components/headers/Sunset"
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiRoot"
                }
              }
            }
          },
          "404": {
            "description": "No resource exists at this path. Negotiated as HTML, Markdown, or problem details. Paths under /api return JSON by default regardless of the Accept header.",
            "headers": {
              "API-Version": {
                "$ref": "#/components/headers/ApiVersion"
              },
              "RateLimit-Policy": {
                "$ref": "#/components/headers/RateLimitPolicy"
              },
              "Deprecation": {
                "$ref": "#/components/headers/Deprecation"
              },
              "Sunset": {
                "$ref": "#/components/headers/Sunset"
              }
            },
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/markdown": {
                "schema": {
                  "type": "string"
                }
              },
              "text/html": {
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "406": {
            "description": "No representation matches the Accept header.",
            "headers": {
              "API-Version": {
                "$ref": "#/components/headers/ApiVersion"
              },
              "RateLimit-Policy": {
                "$ref": "#/components/headers/RateLimitPolicy"
              },
              "Deprecation": {
                "$ref": "#/components/headers/Deprecation"
              },
              "Sunset": {
                "$ref": "#/components/headers/Sunset"
              }
            },
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/pages": {
      "get": {
        "operationId": "getPageIndex",
        "summary": "Index of every public page",
        "description": "Machine-readable index of all public pages: canonical URL, title, description, the address of the Markdown representation, and the representations each page can produce. Equivalent to sitemap.xml with page metadata attached.",
        "tags": [
          "json-api"
        ],
        "responses": {
          "200": {
            "description": "Page index.",
            "headers": {
              "API-Version": {
                "$ref": "#/components/headers/ApiVersion"
              },
              "RateLimit-Policy": {
                "$ref": "#/components/headers/RateLimitPolicy"
              },
              "Deprecation": {
                "$ref": "#/components/headers/Deprecation"
              },
              "Sunset": {
                "$ref": "#/components/headers/Sunset"
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PageIndex"
                }
              }
            }
          },
          "404": {
            "description": "No resource exists at this path. Negotiated as HTML, Markdown, or problem details. Paths under /api return JSON by default regardless of the Accept header.",
            "headers": {
              "API-Version": {
                "$ref": "#/components/headers/ApiVersion"
              },
              "RateLimit-Policy": {
                "$ref": "#/components/headers/RateLimitPolicy"
              },
              "Deprecation": {
                "$ref": "#/components/headers/Deprecation"
              },
              "Sunset": {
                "$ref": "#/components/headers/Sunset"
              }
            },
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/markdown": {
                "schema": {
                  "type": "string"
                }
              },
              "text/html": {
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "406": {
            "description": "No representation matches the Accept header.",
            "headers": {
              "API-Version": {
                "$ref": "#/components/headers/ApiVersion"
              },
              "RateLimit-Policy": {
                "$ref": "#/components/headers/RateLimitPolicy"
              },
              "Deprecation": {
                "$ref": "#/components/headers/Deprecation"
              },
              "Sunset": {
                "$ref": "#/components/headers/Sunset"
              }
            },
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/llms.txt": {
      "get": {
        "operationId": "getAgentGuide",
        "summary": "Agent guide (llms.txt)",
        "description": "Scope, per-page usage guidance, contact routing, and the safety boundaries an agent must respect before acting on this content.",
        "tags": [
          "machine-readable"
        ],
        "responses": {
          "200": {
            "description": "Agent guide (llms.txt)",
            "content": {
              "text/plain": {
                "schema": {
                  "type": "string"
                }
              }
            }
          }
        }
      }
    },
    "/sitemap.xml": {
      "get": {
        "operationId": "getSitemap",
        "summary": "XML sitemap",
        "description": "Canonical list of indexable pages. Authoritative source for which routes exist.",
        "tags": [
          "machine-readable"
        ],
        "responses": {
          "200": {
            "description": "XML sitemap",
            "content": {
              "application/xml": {
                "schema": {
                  "type": "string"
                }
              }
            }
          }
        }
      }
    },
    "/robots.txt": {
      "get": {
        "operationId": "getRobotsPolicy",
        "summary": "Crawler policy",
        "description": "Crawler access rules and excluded administrative routes.",
        "tags": [
          "machine-readable"
        ],
        "responses": {
          "200": {
            "description": "Crawler policy",
            "content": {
              "text/plain": {
                "schema": {
                  "type": "string"
                }
              }
            }
          }
        }
      }
    },
    "/openapi.json": {
      "get": {
        "operationId": "getServiceDescription",
        "summary": "This service description",
        "description": "The OpenAPI description of this surface. Generated from the site configuration at build time.",
        "tags": [
          "machine-readable"
        ],
        "responses": {
          "200": {
            "description": "This service description",
            "content": {
              "application/json": {
                "schema": {
                  "type": "string"
                }
              }
            }
          }
        }
      }
    }
  },
  "components": {
    "parameters": {
      "Accept": {
        "name": "Accept",
        "in": "header",
        "required": false,
        "description": "Selects the representation. Standard q-values and wildcards are honoured. Omitting the header returns text/html.",
        "schema": {
          "type": "string",
          "default": "text/html",
          "examples": [
            "text/html",
            "text/markdown",
            "application/json"
          ]
        }
      }
    },
    "headers": {
      "ApiVersion": {
        "description": "Major version of the surface that produced this response.",
        "schema": {
          "type": "string",
          "examples": [
            "1"
          ]
        }
      },
      "RateLimitPolicy": {
        "description": "Published request budget in RFC 9331 form. Advisory: no per-client counter is enforced, so RateLimit-Remaining and RateLimit-Reset are deliberately not sent.",
        "schema": {
          "type": "string",
          "examples": [
            "default;q=600;w=60"
          ]
        }
      },
      "Deprecation": {
        "description": "Present only on a deprecated version: the date the deprecation was announced (RFC 9745).",
        "schema": {
          "type": "string"
        }
      },
      "Sunset": {
        "description": "Present only on a deprecated version: the date the version stops responding (RFC 8594). At least 180 days after the Deprecation date.",
        "schema": {
          "type": "string"
        }
      }
    },
    "schemas": {
      "ProblemDetails": {
        "type": "object",
        "description": "RFC 9457 problem details with a machine-readable code and ordered resolution hints.",
        "required": [
          "type",
          "title",
          "status",
          "code",
          "detail",
          "instance",
          "resolution",
          "links"
        ],
        "properties": {
          "type": {
            "type": "string",
            "format": "uri",
            "description": "URI identifying the problem type."
          },
          "title": {
            "type": "string",
            "description": "Short, human-readable summary."
          },
          "status": {
            "type": "integer",
            "description": "HTTP status code.",
            "examples": [
              404
            ]
          },
          "code": {
            "type": "string",
            "description": "Stable machine-readable error code.",
            "enum": [
              "resource_not_found",
              "not_acceptable"
            ]
          },
          "detail": {
            "type": "string",
            "description": "Explanation specific to this occurrence."
          },
          "instance": {
            "type": "string",
            "description": "Path that produced the error."
          },
          "resolution": {
            "type": "array",
            "description": "Ordered steps an agent can take to recover.",
            "items": {
              "type": "string"
            }
          },
          "links": {
            "type": "object",
            "description": "Absolute URLs of the machine-readable entry points.",
            "properties": {
              "serviceDescription": {
                "type": "string",
                "format": "uri"
              },
              "agentGuide": {
                "type": "string",
                "format": "uri"
              },
              "sitemap": {
                "type": "string",
                "format": "uri"
              },
              "documentation": {
                "type": "string",
                "format": "uri"
              },
              "home": {
                "type": "string",
                "format": "uri"
              }
            }
          },
          "available": {
            "type": "array",
            "description": "Present on 406 responses: the representations this endpoint can produce.",
            "items": {
              "type": "string"
            }
          }
        }
      },
      "ApiRoot": {
        "type": "object",
        "description": "Discovery document for the JSON surface.",
        "required": [
          "name",
          "version",
          "currentVersionPath",
          "endpoints",
          "rateLimit",
          "versioning"
        ],
        "properties": {
          "name": {
            "type": "string"
          },
          "description": {
            "type": "string"
          },
          "version": {
            "type": "string"
          },
          "currentVersionPath": {
            "type": "string"
          },
          "endpoints": {
            "type": "object",
            "additionalProperties": {
              "type": "string",
              "format": "uri"
            }
          },
          "rateLimit": {
            "type": "object",
            "properties": {
              "policy": {
                "type": "string"
              },
              "enforced": {
                "type": "boolean"
              },
              "note": {
                "type": "string"
              }
            }
          },
          "versioning": {
            "type": "object",
            "additionalProperties": {
              "type": "string"
            }
          }
        }
      },
      "PageIndex": {
        "type": "object",
        "description": "Every public page with its metadata and representations.",
        "required": [
          "version",
          "count",
          "pages"
        ],
        "properties": {
          "version": {
            "type": "string"
          },
          "count": {
            "type": "integer"
          },
          "sitemap": {
            "type": "string",
            "format": "uri"
          },
          "pages": {
            "type": "array",
            "items": {
              "type": "object",
              "required": [
                "path",
                "url",
                "title",
                "description",
                "markdownUrl",
                "representations"
              ],
              "properties": {
                "path": {
                  "type": "string"
                },
                "url": {
                  "type": "string",
                  "format": "uri"
                },
                "title": {
                  "type": "string"
                },
                "description": {
                  "type": "string"
                },
                "markdownUrl": {
                  "type": "string",
                  "format": "uri"
                },
                "representations": {
                  "type": "array",
                  "items": {
                    "type": "string"
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}
