{
  "openapi": "3.1.0",
  "info": {
    "title": "HRjoy API",
    "version": "1.0.0",
    "description": "Read-only, static JSON describing HRjoy’s HR consultancy services and bespoke HR software. No authentication. An MCP server with the same data is at /mcp."
  },
  "servers": [
    {
      "url": "https://hrjoy.co.uk"
    }
  ],
  "paths": {
    "/api/index.json": {
      "get": {
        "summary": "Overview and links",
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Overview"
                }
              }
            }
          }
        }
      }
    },
    "/api/services.json": {
      "get": {
        "summary": "Every service",
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Services"
                }
              }
            }
          }
        }
      }
    },
    "/api/services/{slug}.json": {
      "get": {
        "summary": "One service",
        "parameters": [
          {
            "name": "slug",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "enum": [
                "hr-advice-employee-relations",
                "workplace-investigations",
                "people-strategy-organisational-change",
                "pay-reward-job-evaluation",
                "management-learning-development",
                "employee-engagement-insight"
              ]
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Service"
                }
              }
            }
          },
          "404": {
            "description": "Unknown slug"
          }
        }
      }
    },
    "/api/software.json": {
      "get": {
        "summary": "Bespoke HR software",
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Software"
                }
              }
            }
          }
        }
      }
    },
    "/api/commissioning.json": {
      "get": {
        "summary": "Ways to engage, approach, brief checklist and assurance",
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Commissioning"
                }
              }
            }
          }
        }
      }
    },
    "/api/faq.json": {
      "get": {
        "summary": "Every question and answer",
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Faq"
                }
              }
            }
          }
        }
      }
    }
  },
  "components": {
    "schemas": {
      "Service": {
        "type": "object",
        "required": [
          "slug",
          "name",
          "summary",
          "url"
        ],
        "properties": {
          "slug": {
            "type": "string"
          },
          "name": {
            "type": "string"
          },
          "summary": {
            "type": "string"
          },
          "introduction": {
            "type": "string"
          },
          "you_can_commission": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "the_work_can_deliver": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "who_it_is_for": {
            "type": "string"
          },
          "faq": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {
                "question": {
                  "type": "string"
                },
                "answer": {
                  "type": "string"
                }
              }
            }
          },
          "scope": {
            "type": "string"
          },
          "url": {
            "type": "string",
            "format": "uri"
          },
          "start_a_brief": {
            "type": "string",
            "format": "uri"
          }
        }
      },
      "Services": {
        "type": "object",
        "properties": {
          "generated": {
            "type": "string",
            "format": "date"
          },
          "services": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Service"
            }
          }
        }
      },
      "Overview": {
        "type": "object",
        "properties": {
          "name": {
            "type": "string"
          },
          "description": {
            "type": "string"
          },
          "services": {
            "type": "array",
            "items": {
              "type": "object"
            }
          },
          "mcp": {
            "type": "string",
            "format": "uri"
          }
        }
      },
      "Software": {
        "type": "object",
        "properties": {
          "name": {
            "type": "string"
          },
          "use_cases": {
            "type": "array",
            "items": {
              "type": "object"
            }
          },
          "build_steps": {
            "type": "array",
            "items": {
              "type": "object"
            }
          }
        }
      },
      "Commissioning": {
        "type": "object",
        "properties": {
          "ways_to_engage": {
            "type": "array",
            "items": {
              "type": "object"
            }
          },
          "approach": {
            "type": "array",
            "items": {
              "type": "object"
            }
          },
          "a_useful_brief_includes": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "assurance_evidence": {
            "type": "array",
            "items": {
              "type": "object"
            }
          }
        }
      },
      "Faq": {
        "type": "object",
        "properties": {
          "faq": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {
                "question": {
                  "type": "string"
                },
                "answer": {
                  "type": "string"
                },
                "url": {
                  "type": "string",
                  "format": "uri"
                }
              }
            }
          }
        }
      }
    }
  }
}