{
  "openapi": "3.0.3",
  "info": {
    "title": "Open Labor Project API",
    "version": "1.0.0",
    "description": "Free auto repair data for every vehicle 1955-present: labor time estimates, torque specifications, fluid capacities, OBD-II DTC codes, and battery specs. Data is independently AI-generated, fact-checked by a second model, and confidence-labeled per record (see https://openlaborproject.com/data-provenance/). Free keys (10 req/day) at https://openlaborproject.com/developers - paid tiers from $49/mo. MCP server for AI agents: https://openlaborproject.com/mcp",
    "contact": { "email": "support@openlaborproject.com", "url": "https://openlaborproject.com/developers" }
  },
  "servers": [{ "url": "https://openlaborproject.com/api/v1" }],
  "security": [{ "ApiKeyAuth": [] }],
  "components": {
    "securitySchemes": {
      "ApiKeyAuth": { "type": "apiKey", "in": "header", "name": "x-api-key" }
    },
    "parameters": {
      "make": { "name": "make", "in": "query", "required": true, "schema": { "type": "string" }, "example": "toyota", "description": "Make slug" },
      "model": { "name": "model", "in": "query", "required": true, "schema": { "type": "string" }, "example": "camry", "description": "Model slug" },
      "year": { "name": "year", "in": "query", "required": true, "schema": { "type": "string" }, "example": "2018", "description": "Single year (2018) or range (2015-2020)" },
      "engine": { "name": "engine", "in": "query", "required": false, "schema": { "type": "string" }, "example": "2.5l-4-cyl", "description": "Engine slug; omit for all engines" }
    },
    "responses": {
      "OK": { "description": "Success. Shape: { data, meta, error: null }" },
      "Unauthorized": { "description": "Missing/invalid API key" },
      "RateLimited": { "description": "Daily limit reached for this key" }
    }
  },
  "paths": {
    "/vehicles": {
      "get": {
        "summary": "List makes, or models/variants for a make",
        "parameters": [
          { "name": "make", "in": "query", "required": false, "schema": { "type": "string" } },
          { "name": "model", "in": "query", "required": false, "schema": { "type": "string" } }
        ],
        "responses": { "200": { "$ref": "#/components/responses/OK" }, "401": { "$ref": "#/components/responses/Unauthorized" }, "429": { "$ref": "#/components/responses/RateLimited" } }
      }
    },
    "/labor-times": {
      "get": {
        "summary": "Labor-time estimates (book hours) per repair job",
        "parameters": [
          { "$ref": "#/components/parameters/make" }, { "$ref": "#/components/parameters/model" },
          { "$ref": "#/components/parameters/year" }, { "$ref": "#/components/parameters/engine" },
          { "name": "job", "in": "query", "required": false, "schema": { "type": "string" }, "description": "Single job slug" }
        ],
        "responses": { "200": { "$ref": "#/components/responses/OK" }, "401": { "$ref": "#/components/responses/Unauthorized" }, "429": { "$ref": "#/components/responses/RateLimited" } }
      }
    },
    "/torque-specs": {
      "get": {
        "summary": "Torque specifications grouped by repair job",
        "parameters": [
          { "$ref": "#/components/parameters/make" }, { "$ref": "#/components/parameters/model" },
          { "$ref": "#/components/parameters/year" }, { "$ref": "#/components/parameters/engine" },
          { "name": "job", "in": "query", "required": false, "schema": { "type": "string" } }
        ],
        "responses": { "200": { "$ref": "#/components/responses/OK" }, "401": { "$ref": "#/components/responses/Unauthorized" }, "429": { "$ref": "#/components/responses/RateLimited" } }
      }
    },
    "/fluid-specs": {
      "get": {
        "summary": "Fluid types, capacities, change intervals",
        "parameters": [
          { "$ref": "#/components/parameters/make" }, { "$ref": "#/components/parameters/model" },
          { "$ref": "#/components/parameters/year" }, { "$ref": "#/components/parameters/engine" }
        ],
        "responses": { "200": { "$ref": "#/components/responses/OK" }, "401": { "$ref": "#/components/responses/Unauthorized" }, "429": { "$ref": "#/components/responses/RateLimited" } }
      }
    },
    "/dtc-codes": {
      "get": {
        "summary": "DTC code lookup (generic or per-vehicle)",
        "parameters": [
          { "name": "code", "in": "query", "required": false, "schema": { "type": "string" }, "example": "P0300" },
          { "name": "make", "in": "query", "required": false, "schema": { "type": "string" } },
          { "name": "model", "in": "query", "required": false, "schema": { "type": "string" } },
          { "name": "year", "in": "query", "required": false, "schema": { "type": "string" } }
        ],
        "responses": { "200": { "$ref": "#/components/responses/OK" }, "401": { "$ref": "#/components/responses/Unauthorized" }, "429": { "$ref": "#/components/responses/RateLimited" } }
      }
    },
    "/battery-specs": {
      "get": {
        "summary": "OE battery data: BCI group, chemistry, CCA, dimensions, cross-references",
        "parameters": [
          { "$ref": "#/components/parameters/make" }, { "$ref": "#/components/parameters/model" },
          { "$ref": "#/components/parameters/year" }, { "$ref": "#/components/parameters/engine" }
        ],
        "responses": { "200": { "$ref": "#/components/responses/OK" }, "401": { "$ref": "#/components/responses/Unauthorized" }, "429": { "$ref": "#/components/responses/RateLimited" } }
      }
    }
  }
}
