{"components":{"securitySchemes":{"ApiKey":{"in":"header","name":"X-Api-Key","type":"apiKey"},"Bearer":{"scheme":"bearer","type":"http"}}},"info":{"description":"Monthly UTC quotas. 120 requests/minute/key. Original data attribution retained.","title":"HartaFarmacii Commercial API","version":"1.0.0"},"openapi":"3.0.3","paths":{"/cheie/rotire":{"post":{"parameters":[],"responses":{"200":{"content":{"application/json":{"schema":{"type":"object"}}},"description":"JSON response"},"400":{"description":"Invalid parameters"},"401":{"description":"Invalid/inactive key"},"404":{"description":"Not found"},"429":{"description":"Quota/rate exceeded; Retry-After header"},"503":{"description":"Temporarily unavailable"}},"summary":"Revoke current key and return its replacement once"}},"/cont":{"get":{"parameters":[],"responses":{"200":{"content":{"application/json":{"schema":{"type":"object"}}},"description":"JSON response"},"400":{"description":"Invalid parameters"},"401":{"description":"Invalid/inactive key"},"404":{"description":"Not found"},"429":{"description":"Quota/rate exceeded; Retry-After header"},"503":{"description":"Temporarily unavailable"}},"summary":"Account and daily usage; no quota consumed"}},"/farmacii":{"get":{"parameters":[{"description":"","in":"query","name":"city","required":false,"schema":{"maxLength":100,"type":"string"}},{"description":"","in":"query","name":"county","required":false,"schema":{"maxLength":100,"type":"string"}},{"description":"","in":"query","name":"chain","required":false,"schema":{"maxLength":100,"type":"string"}},{"description":"","in":"query","name":"service","required":false,"schema":{"enum":["vaccination","compounding"],"type":"string"}},{"description":"","in":"query","name":"limit","required":false,"schema":{"default":100,"maximum":200,"minimum":1,"type":"integer"}},{"description":"","in":"query","name":"after_id","required":false,"schema":{"default":0,"maximum":9223372036854775807,"minimum":0,"type":"integer"}}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"data":{"items":{"type":"object"},"type":"array"},"meta":{"properties":{"has_more":{"type":"boolean"},"next_after_id":{"nullable":true,"type":"integer"}},"type":"object"}},"required":["data","meta"],"type":"object"}}},"description":"JSON response"},"400":{"description":"Invalid parameters"},"401":{"description":"Invalid/inactive key"},"404":{"description":"Not found"},"429":{"description":"Quota/rate exceeded; Retry-After header"},"503":{"description":"Temporarily unavailable"}},"summary":"Visible pharmacies, cursor pagination"}},"/gtin/{gtin}":{"get":{"parameters":[{"description":"","in":"path","name":"gtin","required":true,"schema":{"pattern":"^(?:[0-9]{8}|[0-9]{12,14})$","type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"type":"object"}}},"description":"JSON response"},"400":{"description":"Invalid parameters"},"401":{"description":"Invalid/inactive key"},"404":{"description":"Not found"},"429":{"description":"Quota/rate exceeded; Retry-After header"},"503":{"description":"Temporarily unavailable"}},"summary":"Resolve a barcode to a product slug"}},"/produse":{"get":{"parameters":[{"description":"","in":"query","name":"q","required":true,"schema":{"maxLength":100,"minLength":2,"type":"string"}},{"description":"Canonical substance slug","in":"query","name":"substanta","required":false,"schema":{"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"type":"object"}}},"description":"JSON response"},"400":{"description":"Invalid parameters"},"401":{"description":"Invalid/inactive key"},"404":{"description":"Not found"},"429":{"description":"Quota/rate exceeded; Retry-After header"},"503":{"description":"Temporarily unavailable"}},"summary":"Product search, up to 40 results"}},"/produse/{slug}":{"get":{"parameters":[{"description":"","in":"path","name":"slug","required":true,"schema":{"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"type":"object"}}},"description":"JSON response"},"400":{"description":"Invalid parameters"},"401":{"description":"Invalid/inactive key"},"404":{"description":"Not found"},"429":{"description":"Quota/rate exceeded; Retry-After header"},"503":{"description":"Temporarily unavailable"}},"summary":"Product and visible offers"}},"/produse/{slug}/istoric":{"get":{"parameters":[{"description":"","in":"path","name":"slug","required":true,"schema":{"type":"string"}},{"description":"","in":"query","name":"days","required":false,"schema":{"default":30,"maximum":90,"minimum":1,"type":"integer"}},{"description":"","in":"query","name":"limit","required":false,"schema":{"default":1000,"maximum":1000,"minimum":1,"type":"integer"}},{"description":"","in":"query","name":"after_id","required":false,"schema":{"default":0,"maximum":9223372036854775807,"minimum":0,"type":"integer"}}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"data":{"items":{"type":"object"},"type":"array"},"meta":{"properties":{"has_more":{"type":"boolean"},"next_after_id":{"nullable":true,"type":"integer"}},"type":"object"}},"required":["data","meta"],"type":"object"}}},"description":"JSON response"},"400":{"description":"Invalid parameters"},"401":{"description":"Invalid/inactive key"},"404":{"description":"Not found"},"429":{"description":"Quota/rate exceeded; Retry-After header"},"503":{"description":"Temporarily unavailable"}},"summary":"Available historical observations"}}},"security":[{"ApiKey":[]},{"Bearer":[]}],"servers":[{"url":"https://hartafarmacii.ro/api/comercial/v1"}]}
