{
 "openapi": "3.0.3",
 "info": {
  "title": "GLP-1 Price Compare API",
  "version": "2026-08-31",
  "description": "Static, versioned, key-free JSON API over the open GLP-1 pricing dataset (CC BY 4.0). Every price carries a source URL, a verification date and an evidence grade; grade D means third-party report, never verified.",
  "license": {
   "name": "CC BY 4.0",
   "url": "https://creativecommons.org/licenses/by/4.0/"
  }
 },
 "servers": [
  {
   "url": "https://glp1pricecompare.com"
  }
 ],
 "paths": {
  "/api/v1/providers.json": {
   "get": {
    "summary": "All provider entities",
    "responses": {
     "200": {
      "description": "JSON payload",
      "content": {
       "application/json": {}
      }
     }
    }
   }
  },
  "/api/v1/providers/{slug}.json": {
   "get": {
    "summary": "One provider with observations and history",
    "responses": {
     "200": {
      "description": "JSON payload",
      "content": {
       "application/json": {}
      }
     }
    }
   }
  },
  "/api/v1/prices.json": {
   "get": {
    "summary": "All price observations",
    "responses": {
     "200": {
      "description": "JSON payload",
      "content": {
       "application/json": {}
      }
     }
    }
   }
  },
  "/api/v1/prices/tirzepatide.json": {
   "get": {
    "summary": "Tirzepatide observations",
    "responses": {
     "200": {
      "description": "JSON payload",
      "content": {
       "application/json": {}
      }
     }
    }
   }
  },
  "/api/v1/prices/semaglutide.json": {
   "get": {
    "summary": "Semaglutide observations",
    "responses": {
     "200": {
      "description": "JSON payload",
      "content": {
       "application/json": {}
      }
     }
    }
   }
  },
  "/api/v1/price-history.json": {
   "get": {
    "summary": "All recorded changes and corrections",
    "responses": {
     "200": {
      "description": "JSON payload",
      "content": {
       "application/json": {}
      }
     }
    }
   }
  },
  "/api/v1/changes.json": {
   "get": {
    "summary": "This month’s changes and corrections",
    "responses": {
     "200": {
      "description": "JSON payload",
      "content": {
       "application/json": {}
      }
     }
    }
   }
  },
  "/api/v1/cheapest.json": {
   "get": {
    "summary": "Cheapest results across every family",
    "responses": {
     "200": {
      "description": "JSON payload",
      "content": {
       "application/json": {}
      }
     }
    }
   }
  },
  "/api/v1/cheapest/{medication}/{family}.json": {
   "get": {
    "summary": "Cheapest for one family: overall, month-to-month, 12-month, flat, no-membership, under-200, third-party",
    "responses": {
     "200": {
      "description": "JSON payload",
      "content": {
       "application/json": {}
      }
     }
    }
   }
  },
  "/api/v1/answers.json": {
   "get": {
    "summary": "Canonical dated answers (identical wording to /answers/, /data/answers.json and llms.txt)",
    "responses": {
     "200": {
      "description": "JSON payload",
      "content": {
       "application/json": {}
      }
     }
    }
   }
  }
 }
}