-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathcharacteristic-openapi.json
More file actions
1 lines (1 loc) · 6.42 KB
/
characteristic-openapi.json
File metadata and controls
1 lines (1 loc) · 6.42 KB
1
{"openapi":"3.1.0","info":{"title":"Characteristic Service","description":"Service for managing product characteristics","version":"0.1.0"},"paths":{"/health":{"get":{"summary":"Health Check","operationId":"health_check_health_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/api/v1/characteristics":{"post":{"summary":"Create Characteristic","operationId":"create_characteristic_api_v1_characteristics_post","security":[{"HTTPBearer":[]}],"parameters":[{"name":"public_key","in":"query","required":false,"schema":{"type":"string","title":"Public Key"}},{"name":"algorithm","in":"query","required":false,"schema":{"type":"string","default":"RS256","title":"Algorithm"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CharacteristicCreate"}}}},"responses":{"201":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/CharacteristicRead"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"get":{"summary":"List Characteristics","operationId":"list_characteristics_api_v1_characteristics_get","security":[{"HTTPBearer":[]}],"parameters":[{"name":"skip","in":"query","required":false,"schema":{"type":"integer","minimum":0,"default":0,"title":"Skip"}},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","maximum":1000,"minimum":1,"default":100,"title":"Limit"}},{"name":"public_key","in":"query","required":false,"schema":{"type":"string","title":"Public Key"}},{"name":"algorithm","in":"query","required":false,"schema":{"type":"string","default":"RS256","title":"Algorithm"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/CharacteristicRead"},"title":"Response List Characteristics Api V1 Characteristics Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/characteristics/{char_id}":{"get":{"summary":"Get Characteristic","operationId":"get_characteristic_api_v1_characteristics__char_id__get","security":[{"HTTPBearer":[]}],"parameters":[{"name":"char_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Char Id"}},{"name":"public_key","in":"query","required":false,"schema":{"type":"string","title":"Public Key"}},{"name":"algorithm","in":"query","required":false,"schema":{"type":"string","default":"RS256","title":"Algorithm"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/CharacteristicRead"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"put":{"summary":"Update Characteristic","operationId":"update_characteristic_api_v1_characteristics__char_id__put","security":[{"HTTPBearer":[]}],"parameters":[{"name":"char_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Char Id"}},{"name":"public_key","in":"query","required":false,"schema":{"type":"string","title":"Public Key"}},{"name":"algorithm","in":"query","required":false,"schema":{"type":"string","default":"RS256","title":"Algorithm"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CharacteristicUpdate"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/CharacteristicRead"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"delete":{"summary":"Delete Characteristic","operationId":"delete_characteristic_api_v1_characteristics__char_id__delete","security":[{"HTTPBearer":[]}],"parameters":[{"name":"char_id","in":"path","required":true,"schema":{"type":"string","format":"uuid","title":"Char Id"}},{"name":"public_key","in":"query","required":false,"schema":{"type":"string","title":"Public Key"}},{"name":"algorithm","in":"query","required":false,"schema":{"type":"string","default":"RS256","title":"Algorithm"}}],"responses":{"204":{"description":"Successful Response"},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}}},"components":{"schemas":{"CharacteristicCreate":{"properties":{"name":{"type":"string","maxLength":200,"minLength":1,"title":"Name"},"value":{"type":"string","maxLength":100,"minLength":1,"title":"Value"},"unit_of_measure":{"$ref":"#/components/schemas/UnitOfMeasure"}},"type":"object","required":["name","value","unit_of_measure"],"title":"CharacteristicCreate"},"CharacteristicRead":{"properties":{"name":{"type":"string","maxLength":200,"minLength":1,"title":"Name"},"value":{"type":"string","maxLength":100,"minLength":1,"title":"Value"},"unit_of_measure":{"$ref":"#/components/schemas/UnitOfMeasure"},"id":{"type":"string","format":"uuid","title":"Id"},"created_at":{"type":"string","format":"date-time","title":"Created At"},"updated_at":{"type":"string","format":"date-time","title":"Updated At"}},"type":"object","required":["name","value","unit_of_measure","id","created_at","updated_at"],"title":"CharacteristicRead"},"CharacteristicUpdate":{"properties":{"name":{"anyOf":[{"type":"string","maxLength":200,"minLength":1},{"type":"null"}],"title":"Name"},"value":{"anyOf":[{"type":"string","maxLength":100,"minLength":1},{"type":"null"}],"title":"Value"},"unit_of_measure":{"anyOf":[{"$ref":"#/components/schemas/UnitOfMeasure"},{"type":"null"}]}},"type":"object","title":"CharacteristicUpdate"},"HTTPValidationError":{"properties":{"detail":{"items":{"$ref":"#/components/schemas/ValidationError"},"type":"array","title":"Detail"}},"type":"object","title":"HTTPValidationError"},"UnitOfMeasure":{"type":"string","enum":["Mbps","Gbps","MB","GB","TB","GHz","Volt","Watt","Meter","None","%","Seconds","Minutes","Hours","Days","Months","Years","Unit"],"title":"UnitOfMeasure"},"ValidationError":{"properties":{"loc":{"items":{"anyOf":[{"type":"string"},{"type":"integer"}]},"type":"array","title":"Location"},"msg":{"type":"string","title":"Message"},"type":{"type":"string","title":"Error Type"}},"type":"object","required":["loc","msg","type"],"title":"ValidationError"}},"securitySchemes":{"HTTPBearer":{"type":"http","scheme":"bearer"}}}}