{"openapi":"3.1.0","info":{"title":"VagueJade public catalogue API","version":"1.0.0"},"servers":[{"url":"https://vaguejade.com/api/public/v1"}],"paths":{"/catalog":{"get":{"summary":"The public product catalogue","operationId":"getCatalog","responses":{"200":{"description":"The public catalogue","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Catalog"}}}},"404":{"description":"The catalogue is not published in this environment","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}}},"/products/{slug}":{"get":{"summary":"A single public product","operationId":"getProduct","parameters":[{"name":"slug","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"The product","content":{"application/json":{"schema":{"type":"object","properties":{"product":{"allOf":[{"$ref":"#/components/schemas/Product"},{"type":"object","properties":{"faq":{"type":"array","items":{"type":"object","properties":{"question":{"type":"string"},"answer":{"type":"string"}},"required":["question","answer"]}}}}]}}}}}},"404":{"description":"Unknown, non-allowlisted, inactive or malformed slug","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}}},"/openapi.json":{"get":{"summary":"This OpenAPI document","operationId":"getOpenApiDocument","responses":{"200":{"description":"The OpenAPI document"},"404":{"description":"The catalogue is not published in this environment","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}}}},"components":{"schemas":{"Catalog":{"type":"object","properties":{"schema_version":{"type":"string"},"generated_at":{"type":"string","format":"date-time"},"seller":{"type":"object","properties":{"name":{"type":"string"},"url":{"type":"string"}}},"currency":{"type":"string"},"shipping":{"type":"object","properties":{"service":{"type":"string"},"destination_country":{"type":"string"}}},"products":{"type":"array","items":{"$ref":"#/components/schemas/Product"}}}},"Product":{"type":"object","properties":{"id":{"type":"string"},"slug":{"type":"string"},"name":{"type":"string"},"description":{"type":"string"},"format":{"type":"string"},"price":{"$ref":"#/components/schemas/Price"},"availability":{"type":"string","enum":["in_stock","out_of_stock","backorder","pre_order","unknown"]},"url":{"type":"string"},"image_url":{"type":["string","null"]},"updated_at":{"type":"string","format":"date-time"},"variants":{"type":"array","items":{"$ref":"#/components/schemas/Variant"}},"related":{"type":"array","items":{"type":"object","properties":{"slug":{"type":"string"},"name":{"type":"string"},"url":{"type":"string"}},"required":["slug","name","url"]}}}},"Variant":{"type":"object","properties":{"id":{"type":["string","null"]},"label":{"type":"string"},"price":{"$ref":"#/components/schemas/Price"},"availability":{"type":"string","enum":["in_stock","out_of_stock","backorder","pre_order","unknown"]}}},"Price":{"type":"object","properties":{"amount":{"type":"string"},"currency":{"type":"string"}}},"Error":{"type":"object","properties":{"error":{"type":"object","properties":{"code":{"type":"string"},"message":{"type":"string"}},"required":["code","message"]}},"required":["error"]}}}}