{"openapi":"3.1.0","info":{"title":"AbaNinja Products API","version":"3.0.0","x-domain-id":"products"},"servers":[{"url":"https://api.abaninja.ch","description":"The AbaNinja API server"}],"tags":[{"name":"products","description":"Manage products","x-displayName":"Products"},{"name":"product-groups","description":"Manage product groups","x-displayName":"Product Groups"},{"name":"product-suppliers","description":"Manage product suppliers","x-displayName":"Product Suppliers"}],"security":[{"ApiToken":[]}],"paths":{"/accounts/{accountUuid}/products/v2/product-groups":{"get":{"tags":["product-groups"],"summary":"Get product groups","description":"Get all product groups","operationId":"products_list_product_groups","parameters":[{"name":"accountUuid","in":"path","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"groupNumber","in":"query","description":"groupNumber to search for","required":false,"schema":{"type":"integer"}},{"name":"onlyArchived","in":"query","description":"if true only archived items are returend","required":false,"schema":{"type":"boolean","default":false}}],"responses":{"200":{"description":"Successful response","content":{"application/json":{"schema":{"allOf":[{"description":"The response format of most endpoints for successful requests","required":["data","message","status"],"properties":{"data":{"title":"data"},"message":{"title":"message","type":"string"},"status":{"title":"status","description":"HTTP status code","type":"integer"},"meta":{"title":"meta","type":["object","null"]}},"type":"object"},{"properties":{"data":{"type":"array","items":{"title":"Product Group Resource","properties":{"uuid":{"type":"string","format":"uuid"},"id":{"type":"integer","format":"int64","deprecated":true},"groupNumber":{"type":"integer","format":"int64"},"bookingAccountNumber":{"type":["string","null"]},"isArchived":{"type":"boolean"},"isDeletable":{"type":"boolean"},"translations":{"properties":{"de":{"properties":{"description":{"type":"string"}},"type":"object"},"en":{"properties":{"description":{"type":"string"}},"type":"object"},"fr":{"properties":{"description":{"type":"string"}},"type":"object"},"it":{"properties":{"description":{"type":"string"}},"type":"object"}},"type":"object"}},"type":"object"}},"status":{"example":200}},"type":"object"}]}}}}},"security":[{"ApiToken":["https://api.abaninja.ch/auth/products"]}],"x-legacy-operation-id":"060d55444f77a3086a503ba1777aed59","x-required-scopes":["products"]},"post":{"tags":["product-groups"],"summary":"Create product group","description":"Create a new product group","operationId":"products_create_product_groups","parameters":[{"name":"accountUuid","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"description":"Product group body","required":true,"content":{"application/json":{"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","$id":"https://api.abaninja.ch/schemas/2.0.0/product-group.schema.json","description":"A Schema for create/update product group in AbaNinja over API","type":"object","properties":{"groupNumber":{"type":"integer"},"bookingAccountNumber":{"type":["null","string"]},"translations":{"type":"object","properties":{"de":{"type":"object","properties":{"description":{"type":"string","maxLength":255}}},"en":{"type":"object","properties":{"description":{"type":"string","maxLength":255}}},"fr":{"type":"object","properties":{"description":{"type":"string","maxLength":255}}},"it":{"type":"object","properties":{"description":{"type":"string","maxLength":255}}}},"required":["de","en","fr","it"]}},"required":["groupNumber","translations","bookingAccountNumber"]}}}},"responses":{"200":{"description":"Successful response","content":{"application/json":{"schema":{"allOf":[{"description":"The response format of most endpoints for successful requests","required":["data","message","status"],"properties":{"data":{"title":"data"},"message":{"title":"message","type":"string"},"status":{"title":"status","description":"HTTP status code","type":"integer"},"meta":{"title":"meta","type":["object","null"]}},"type":"object"},{"properties":{"data":{"title":"Product Group Resource","properties":{"uuid":{"type":"string","format":"uuid"},"id":{"type":"integer","format":"int64","deprecated":true},"groupNumber":{"type":"integer","format":"int64"},"bookingAccountNumber":{"type":["string","null"]},"isArchived":{"type":"boolean"},"isDeletable":{"type":"boolean"},"translations":{"properties":{"de":{"properties":{"description":{"type":"string"}},"type":"object"},"en":{"properties":{"description":{"type":"string"}},"type":"object"},"fr":{"properties":{"description":{"type":"string"}},"type":"object"},"it":{"properties":{"description":{"type":"string"}},"type":"object"}},"type":"object"}},"type":"object"},"status":{"example":200}},"type":"object"}]}}}},"400":{"description":"Bad request or validation error","content":{"application/json":{"schema":{"allOf":[{"description":"The response format of most endpoints for erronous requests","required":["detail","type","message","status"],"properties":{"detail":{"title":"details"},"type":{"title":"type","type":"string"},"requestUuid":{"title":"requestUuid","type":"string","format":"uuid"},"path":{"title":"path","type":"string"},"message":{"title":"message","type":["string","null"]},"status":{"title":"status","description":"HTTP status code","type":"integer"}},"type":"object"},{"properties":{}}]}}}}},"security":[{"ApiToken":["https://api.abaninja.ch/auth/products"]}],"x-legacy-operation-id":"38b8cb6a4999840925313ca33139d958","x-required-scopes":["products"]}},"/accounts/{accountUuid}/products/v2/products":{"get":{"tags":["products"],"summary":"Get products","description":"Return all products","operationId":"products_list_products","parameters":[{"name":"accountUuid","in":"path","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"page","in":"query","schema":{"type":["integer","null"],"default":1,"minimum":1}},{"name":"perPage","in":"query","schema":{"type":["integer","null"],"minimum":1}},{"name":"limit","in":"query","description":"use perPage instead","required":false,"deprecated":true,"schema":{"type":["integer","null"],"minimum":1}},{"name":"productKey","in":"query","required":false,"schema":{"description":"filter for productKey","type":["string","null"]}},{"name":"isArchived","in":"query","required":false,"schema":{"description":"if true only archived products are returned","type":"boolean"}}],"responses":{"200":{"description":"Successful response","content":{"application/json":{"schema":{"allOf":[{"description":"The response format of most endpoints for successful requests","required":["data","message","status"],"properties":{"data":{"title":"data"},"message":{"title":"message","type":"string"},"status":{"title":"status","description":"HTTP status code","type":"integer"},"meta":{"title":"meta","type":["object","null"]}},"type":"object"},{"properties":{"data":{"type":"array","items":{"title":"Product Resource","properties":{"uuid":{"type":"string","format":"uuid"},"productId":{"description":"use uuid instead","type":"integer","format":"int64","deprecated":true},"productUuid":{"description":"use uuid instead","type":"string","format":"uuid","deprecated":true},"productKey":{"type":["string","null"]},"archivedAt":{"type":["string","null"],"format":"date-time"},"isInclusive":{"description":"if prices are inclusive tax","type":"boolean"},"isService":{"description":"if it is a service or else a product","type":"boolean"},"eanCode":{"type":["string","null"]},"productUnit":{"properties":{"id":{"type":"integer","format":"int64","deprecated":true},"uuid":{"type":"string","format":"uuid"},"isocode":{"type":["string","null"]},"translations":{"properties":{"de":{"properties":{"unit":{"type":"string"},"description":{"type":"string"},"text":{"description":"Combines unit and description","type":"string"},"unitPlural":{"type":["string","null"]}},"type":"object"},"en":{"properties":{"unit":{"type":"string"},"description":{"type":"string"},"text":{"description":"Combines unit and description","type":"string"},"unitPlural":{"type":["string","null"]}},"type":"object"},"fr":{"properties":{"unit":{"type":"string"},"description":{"type":"string"},"text":{"description":"Combines unit and description","type":"string"},"unitPlural":{"type":["string","null"]}},"type":"object"},"it":{"properties":{"unit":{"type":"string"},"description":{"type":"string"},"text":{"description":"Combines unit and description","type":"string"},"unitPlural":{"type":["string","null"]}},"type":"object"}},"type":"object"}},"type":["object","null"]},"productGroup":{"properties":{"productGroupId":{"type":"integer","format":"int64","deprecated":true},"productGroupUuid":{"type":"string","format":"uuid"},"productGroupNumber":{"type":"integer","format":"int64"},"productGroupDescription":{"type":"string"},"productGroupBookingAccountNumber":{"type":"integer","format":"int64"},"productGroupBookingAccountId":{"type":["integer","null"],"format":"int64"}},"type":["object","null"]},"tags":{"type":"array","items":{"type":"string"}},"properties":{"type":"array","items":{"title":"Product Property Resource","properties":{"id":{"type":"integer","format":"int64"},"type":{"type":"string","enum":["weight","width","height","length","volume"]},"value":{"type":"number"},"isocode":{"type":"string"},"translations":{"properties":{"de":{"properties":{"description":{"type":"string"},"unit":{"type":"string"}},"type":"object"},"en":{"properties":{"description":{"type":"string"},"unit":{"type":"string"}},"type":"object"},"fr":{"properties":{"description":{"type":"string"},"unit":{"type":"string"}},"type":"object"},"it":{"properties":{"description":{"type":"string"},"unit":{"type":"string"}},"type":"object"}},"type":"object"}},"type":"object"}},"cost":{"description":"Price of a single item","type":"number"},"taxRate":{"type":["number","null"]},"taxRateUuid":{"type":["string","null"],"format":"uuid"},"bookingAccountNumber":{"type":["string","null"]},"hasImage":{"type":"boolean"},"translations":{"properties":{"de":{"properties":{"productName":{"type":"string"},"productDescription":{"type":"string"}},"type":"object"},"en":{"properties":{"productName":{"type":"string"},"productDescription":{"type":"string"}},"type":"object"},"fr":{"properties":{"productName":{"type":"string"},"productDescription":{"type":"string"}},"type":"object"},"it":{"properties":{"productName":{"type":"string"},"productDescription":{"type":"string"}},"type":"object"}},"type":"object"}},"type":"object"}},"status":{"example":200},"meta":{"properties":{"pagination":{"properties":{"currentPage":{"type":"integer","minimum":1},"firstPageUrl":{"type":["string","null"],"format":"uri"},"from":{"type":["integer","null"],"example":1},"lastPage":{"type":"integer"},"lastPageUrl":{"type":"string","format":"uri"},"nextPageUrl":{"type":["string","null"],"format":"uri"},"perPage":{"type":"integer","example":50},"previousPageUrl":{"type":["string","null"],"format":"uri"},"to":{"type":["integer","null"],"example":50},"totalItems":{"type":"integer"}},"type":"object"}},"type":"object"}},"type":"object"}]}}}},"400":{"description":"Bad request or validation error","content":{"application/json":{"schema":{"allOf":[{"description":"The response format of most endpoints for erronous requests","required":["detail","type","message","status"],"properties":{"detail":{"title":"details"},"type":{"title":"type","type":"string"},"requestUuid":{"title":"requestUuid","type":"string","format":"uuid"},"path":{"title":"path","type":"string"},"message":{"title":"message","type":["string","null"]},"status":{"title":"status","description":"HTTP status code","type":"integer"}},"type":"object"},{"properties":{}}]}}}}},"security":[{"ApiToken":["https://api.abaninja.ch/auth/products"]}],"x-legacy-operation-id":"7e5261f234fa115780165a03aaebd308","x-required-scopes":["products"]},"post":{"tags":["products"],"summary":"Create product","description":"Create a new product or service","operationId":"products_create_products","parameters":[{"name":"accountUuid","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"description":"Product body","required":true,"content":{"application/json":{"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","$id":"https://api.abaninja.ch/schemas/2.0.0/product.create.schema.json","description":"A Schema for creating a product in AbaNinja over API","type":"object","properties":{"productKey":{"type":"string","maxLength":30},"productGroupUuid":{"type":["null","string"],"format":"uuid"},"productGroupNumber":{"deprecated":true,"description":"use productGroupUuid instead","type":["null","number"]},"isService":{"type":"boolean"},"tags":{"type":"array","items":{"type":"string"},"maxItems":100},"translations":{"type":"object","properties":{"de":{"type":"object","properties":{"productName":{"type":"string","maxLength":255},"productDescription":{"type":"string","maxLength":2000}}},"en":{"type":"object","properties":{"productName":{"type":"string","maxLength":255},"productDescription":{"type":"string","maxLength":2000}}},"fr":{"type":"object","properties":{"productName":{"type":"string","maxLength":255},"productDescription":{"type":"string","maxLength":2000}}},"it":{"type":"object","properties":{"productName":{"type":"string","maxLength":255},"productDescription":{"type":"string","maxLength":2000}}}}},"properties":{"type":"array","items":{"type":"object","properties":{"type":{"type":"string","enum":["weight","width","height","length","volume"]},"value":{"type":["null","number"]},"isocode":{"type":"string"}},"required":["type","value","isocode"]}},"eanCode":{"type":["null","string"],"maxLength":13},"unitUuid":{"type":"string","format":"uuid"},"cost":{"type":"number"},"taxRate":{"deprecated":true,"description":"Tax rate to use as default for this product. Use \"taxRateUuid\" instead.","type":["null","number"]},"taxRateType":{"deprecated":true,"description":"The type of the tax rate to find. Only used in combination with \"taxRate\".","type":["null","string"],"enum":[null,"NORMAL","ACQUISITION","NOT_RELEVANT"],"default":"NORMAL"},"taxRateUuid":{"type":["null","string"],"format":"uuid"},"bookingAccountNumber":{"deprecated":true,"description":"use bookingAccountUuid instead","type":["null","string"]},"bookingAccountUuid":{"type":["null","string"],"format":"uuid"}},"required":["isService","translations","unitUuid","cost"]}}}},"responses":{"201":{"description":"Successful response","content":{"application/json":{"schema":{"allOf":[{"description":"The response format of most endpoints for successful requests","required":["data","message","status"],"properties":{"data":{"title":"data"},"message":{"title":"message","type":"string"},"status":{"title":"status","description":"HTTP status code","type":"integer"},"meta":{"title":"meta","type":["object","null"]}},"type":"object"},{"properties":{"data":{"title":"Product Resource","properties":{"uuid":{"type":"string","format":"uuid"},"productId":{"description":"use uuid instead","type":"integer","format":"int64","deprecated":true},"productUuid":{"description":"use uuid instead","type":"string","format":"uuid","deprecated":true},"productKey":{"type":["string","null"]},"archivedAt":{"type":["string","null"],"format":"date-time"},"isInclusive":{"description":"if prices are inclusive tax","type":"boolean"},"isService":{"description":"if it is a service or else a product","type":"boolean"},"eanCode":{"type":["string","null"]},"productUnit":{"properties":{"id":{"type":"integer","format":"int64","deprecated":true},"uuid":{"type":"string","format":"uuid"},"isocode":{"type":["string","null"]},"translations":{"properties":{"de":{"properties":{"unit":{"type":"string"},"description":{"type":"string"},"text":{"description":"Combines unit and description","type":"string"},"unitPlural":{"type":["string","null"]}},"type":"object"},"en":{"properties":{"unit":{"type":"string"},"description":{"type":"string"},"text":{"description":"Combines unit and description","type":"string"},"unitPlural":{"type":["string","null"]}},"type":"object"},"fr":{"properties":{"unit":{"type":"string"},"description":{"type":"string"},"text":{"description":"Combines unit and description","type":"string"},"unitPlural":{"type":["string","null"]}},"type":"object"},"it":{"properties":{"unit":{"type":"string"},"description":{"type":"string"},"text":{"description":"Combines unit and description","type":"string"},"unitPlural":{"type":["string","null"]}},"type":"object"}},"type":"object"}},"type":["object","null"]},"productGroup":{"properties":{"productGroupId":{"type":"integer","format":"int64","deprecated":true},"productGroupUuid":{"type":"string","format":"uuid"},"productGroupNumber":{"type":"integer","format":"int64"},"productGroupDescription":{"type":"string"},"productGroupBookingAccountNumber":{"type":"integer","format":"int64"},"productGroupBookingAccountId":{"type":["integer","null"],"format":"int64"}},"type":["object","null"]},"tags":{"type":"array","items":{"type":"string"}},"properties":{"type":"array","items":{"title":"Product Property Resource","properties":{"id":{"type":"integer","format":"int64"},"type":{"type":"string","enum":["weight","width","height","length","volume"]},"value":{"type":"number"},"isocode":{"type":"string"},"translations":{"properties":{"de":{"properties":{"description":{"type":"string"},"unit":{"type":"string"}},"type":"object"},"en":{"properties":{"description":{"type":"string"},"unit":{"type":"string"}},"type":"object"},"fr":{"properties":{"description":{"type":"string"},"unit":{"type":"string"}},"type":"object"},"it":{"properties":{"description":{"type":"string"},"unit":{"type":"string"}},"type":"object"}},"type":"object"}},"type":"object"}},"cost":{"description":"Price of a single item","type":"number"},"taxRate":{"type":["number","null"]},"taxRateUuid":{"type":["string","null"],"format":"uuid"},"bookingAccountNumber":{"type":["string","null"]},"hasImage":{"type":"boolean"},"translations":{"properties":{"de":{"properties":{"productName":{"type":"string"},"productDescription":{"type":"string"}},"type":"object"},"en":{"properties":{"productName":{"type":"string"},"productDescription":{"type":"string"}},"type":"object"},"fr":{"properties":{"productName":{"type":"string"},"productDescription":{"type":"string"}},"type":"object"},"it":{"properties":{"productName":{"type":"string"},"productDescription":{"type":"string"}},"type":"object"}},"type":"object"}},"type":"object"},"status":{"example":201}},"type":"object"}]}}}},"400":{"description":"Bad request or validation error","content":{"application/json":{"schema":{"allOf":[{"description":"The response format of most endpoints for erronous requests","required":["detail","type","message","status"],"properties":{"detail":{"title":"details"},"type":{"title":"type","type":"string"},"requestUuid":{"title":"requestUuid","type":"string","format":"uuid"},"path":{"title":"path","type":"string"},"message":{"title":"message","type":["string","null"]},"status":{"title":"status","description":"HTTP status code","type":"integer"}},"type":"object"},{"properties":{}}]}}}}},"security":[{"ApiToken":["https://api.abaninja.ch/auth/products"]}],"x-legacy-operation-id":"339f5b8f99b40edf0116950d529b8966","x-required-scopes":["products"]}},"/accounts/{accountUuid}/products/{productUuid}/suppliers/{supplierUuid}":{"delete":{"tags":["product-suppliers"],"summary":"Delete supplier","description":"Deletes a supplier of a product","operationId":"products_delete_suppliers","parameters":[{"name":"accountUuid","in":"path","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"productUuid","in":"path","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"supplierUuid","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Successful response","content":{"application/json":{"schema":{"allOf":[{"description":"The response format of most endpoints for successful requests","required":["data","message","status"],"properties":{"data":{"title":"data"},"message":{"title":"message","type":"string"},"status":{"title":"status","description":"HTTP status code","type":"integer"},"meta":{"title":"meta","type":["object","null"]}},"type":"object"},{"properties":{"data":{},"status":{"example":200}},"type":"object"}]}}}},"404":{"description":"Resource not found","content":{"application/json":{"schema":{"allOf":[{"description":"The response format of most endpoints for erronous requests","required":["detail","type","message","status"],"properties":{"detail":{"title":"details"},"type":{"title":"type","type":"string"},"requestUuid":{"title":"requestUuid","type":"string","format":"uuid"},"path":{"title":"path","type":"string"},"message":{"title":"message","type":["string","null"]},"status":{"title":"status","description":"HTTP status code","type":"integer"}},"type":"object"},{"properties":{}}]}}}}},"security":[{"ApiToken":["https://api.abaninja.ch/auth/products"]}],"x-legacy-operation-id":"b57e0568a5ea730549fd0758a8471c07","x-required-scopes":["products"]}},"/accounts/{accountUuid}/products/v2/product-groups/{productGroupUuid}":{"get":{"tags":["product-groups"],"summary":"Get product group","description":"Get a single product group","operationId":"products_get_product_groups","parameters":[{"name":"accountUuid","in":"path","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"productGroupUuid","in":"path","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"onlyArchived","in":"query","description":"if true only archived items are returend","required":false,"schema":{"type":"boolean","default":false}}],"responses":{"200":{"description":"Successful response","content":{"application/json":{"schema":{"allOf":[{"description":"The response format of most endpoints for successful requests","required":["data","message","status"],"properties":{"data":{"title":"data"},"message":{"title":"message","type":"string"},"status":{"title":"status","description":"HTTP status code","type":"integer"},"meta":{"title":"meta","type":["object","null"]}},"type":"object"},{"properties":{"data":{"title":"Product Group Resource","properties":{"uuid":{"type":"string","format":"uuid"},"id":{"type":"integer","format":"int64","deprecated":true},"groupNumber":{"type":"integer","format":"int64"},"bookingAccountNumber":{"type":["string","null"]},"isArchived":{"type":"boolean"},"isDeletable":{"type":"boolean"},"translations":{"properties":{"de":{"properties":{"description":{"type":"string"}},"type":"object"},"en":{"properties":{"description":{"type":"string"}},"type":"object"},"fr":{"properties":{"description":{"type":"string"}},"type":"object"},"it":{"properties":{"description":{"type":"string"}},"type":"object"}},"type":"object"}},"type":"object"},"status":{"example":200}},"type":"object"}]}}}},"404":{"description":"Resource not found","content":{"application/json":{"schema":{"allOf":[{"description":"The response format of most endpoints for erronous requests","required":["detail","type","message","status"],"properties":{"detail":{"title":"details"},"type":{"title":"type","type":"string"},"requestUuid":{"title":"requestUuid","type":"string","format":"uuid"},"path":{"title":"path","type":"string"},"message":{"title":"message","type":["string","null"]},"status":{"title":"status","description":"HTTP status code","type":"integer"}},"type":"object"},{"properties":{}}]}}}}},"security":[{"ApiToken":["https://api.abaninja.ch/auth/products"]}],"x-legacy-operation-id":"6506f14a9b3be07dd866b8f95bf7f51b","x-required-scopes":["products"]},"patch":{"tags":["product-groups"],"summary":"Update product group","description":"Update a new product group","operationId":"products_update_product_groups","parameters":[{"name":"accountUuid","in":"path","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"productGroupUuid","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"description":"Product group body","required":true,"content":{"application/json":{"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","$id":"https://api.abaninja.ch/schemas/2.0.0/product-group.schema.json","description":"A Schema for create/update product group in AbaNinja over API","type":"object","properties":{"groupNumber":{"type":"integer"},"bookingAccountNumber":{"type":["null","string"]},"translations":{"type":"object","properties":{"de":{"type":"object","properties":{"description":{"type":"string","maxLength":255}}},"en":{"type":"object","properties":{"description":{"type":"string","maxLength":255}}},"fr":{"type":"object","properties":{"description":{"type":"string","maxLength":255}}},"it":{"type":"object","properties":{"description":{"type":"string","maxLength":255}}}},"required":["de","en","fr","it"]}},"required":["groupNumber","translations","bookingAccountNumber"]}}}},"responses":{"200":{"description":"Successful response","content":{"application/json":{"schema":{"allOf":[{"description":"The response format of most endpoints for successful requests","required":["data","message","status"],"properties":{"data":{"title":"data"},"message":{"title":"message","type":"string"},"status":{"title":"status","description":"HTTP status code","type":"integer"},"meta":{"title":"meta","type":["object","null"]}},"type":"object"},{"properties":{"data":{"title":"Product Group Resource","properties":{"uuid":{"type":"string","format":"uuid"},"id":{"type":"integer","format":"int64","deprecated":true},"groupNumber":{"type":"integer","format":"int64"},"bookingAccountNumber":{"type":["string","null"]},"isArchived":{"type":"boolean"},"isDeletable":{"type":"boolean"},"translations":{"properties":{"de":{"properties":{"description":{"type":"string"}},"type":"object"},"en":{"properties":{"description":{"type":"string"}},"type":"object"},"fr":{"properties":{"description":{"type":"string"}},"type":"object"},"it":{"properties":{"description":{"type":"string"}},"type":"object"}},"type":"object"}},"type":"object"},"status":{"example":200}},"type":"object"}]}}}},"400":{"description":"Bad request or validation error","content":{"application/json":{"schema":{"allOf":[{"description":"The response format of most endpoints for erronous requests","required":["detail","type","message","status"],"properties":{"detail":{"title":"details"},"type":{"title":"type","type":"string"},"requestUuid":{"title":"requestUuid","type":"string","format":"uuid"},"path":{"title":"path","type":"string"},"message":{"title":"message","type":["string","null"]},"status":{"title":"status","description":"HTTP status code","type":"integer"}},"type":"object"},{"properties":{}}]}}}},"404":{"description":"Resource not found","content":{"application/json":{"schema":{"allOf":[{"description":"The response format of most endpoints for erronous requests","required":["detail","type","message","status"],"properties":{"detail":{"title":"details"},"type":{"title":"type","type":"string"},"requestUuid":{"title":"requestUuid","type":"string","format":"uuid"},"path":{"title":"path","type":"string"},"message":{"title":"message","type":["string","null"]},"status":{"title":"status","description":"HTTP status code","type":"integer"}},"type":"object"},{"properties":{}}]}}}}},"security":[{"ApiToken":["https://api.abaninja.ch/auth/products"]}],"x-legacy-operation-id":"199672db384c0d6da6f9eb7f57612109","x-required-scopes":["products"]},"delete":{"tags":["product-groups"],"summary":"Delete product group","description":"Delete a product group","operationId":"products_delete_product_groups","parameters":[{"name":"accountUuid","in":"path","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"productGroupUuid","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"204":{"description":"Successful response"},"400":{"description":"Bad request or validation error","content":{"application/json":{"schema":{"allOf":[{"description":"The response format of most endpoints for erronous requests","required":["detail","type","message","status"],"properties":{"detail":{"title":"details"},"type":{"title":"type","type":"string"},"requestUuid":{"title":"requestUuid","type":"string","format":"uuid"},"path":{"title":"path","type":"string"},"message":{"title":"message","type":["string","null"]},"status":{"title":"status","description":"HTTP status code","type":"integer"}},"type":"object"},{"properties":{}}]}}}},"404":{"description":"Resource not found","content":{"application/json":{"schema":{"allOf":[{"description":"The response format of most endpoints for erronous requests","required":["detail","type","message","status"],"properties":{"detail":{"title":"details"},"type":{"title":"type","type":"string"},"requestUuid":{"title":"requestUuid","type":"string","format":"uuid"},"path":{"title":"path","type":"string"},"message":{"title":"message","type":["string","null"]},"status":{"title":"status","description":"HTTP status code","type":"integer"}},"type":"object"},{"properties":{}}]}}}}},"security":[{"ApiToken":["https://api.abaninja.ch/auth/products"]}],"x-legacy-operation-id":"27129b2728c6021d96f0b81f0e446950","x-required-scopes":["products"]}},"/accounts/{accountUuid}/products/v2/products/{productUuid}":{"get":{"tags":["products"],"summary":"Get product","description":"Get a single product","operationId":"products_get_products","parameters":[{"name":"accountUuid","in":"path","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"productUuid","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Successful response","content":{"application/json":{"schema":{"allOf":[{"description":"The response format of most endpoints for successful requests","required":["data","message","status"],"properties":{"data":{"title":"data"},"message":{"title":"message","type":"string"},"status":{"title":"status","description":"HTTP status code","type":"integer"},"meta":{"title":"meta","type":["object","null"]}},"type":"object"},{"properties":{"data":{"title":"Product Resource","properties":{"uuid":{"type":"string","format":"uuid"},"productId":{"description":"use uuid instead","type":"integer","format":"int64","deprecated":true},"productUuid":{"description":"use uuid instead","type":"string","format":"uuid","deprecated":true},"productKey":{"type":["string","null"]},"archivedAt":{"type":["string","null"],"format":"date-time"},"isInclusive":{"description":"if prices are inclusive tax","type":"boolean"},"isService":{"description":"if it is a service or else a product","type":"boolean"},"eanCode":{"type":["string","null"]},"productUnit":{"properties":{"id":{"type":"integer","format":"int64","deprecated":true},"uuid":{"type":"string","format":"uuid"},"isocode":{"type":["string","null"]},"translations":{"properties":{"de":{"properties":{"unit":{"type":"string"},"description":{"type":"string"},"text":{"description":"Combines unit and description","type":"string"},"unitPlural":{"type":["string","null"]}},"type":"object"},"en":{"properties":{"unit":{"type":"string"},"description":{"type":"string"},"text":{"description":"Combines unit and description","type":"string"},"unitPlural":{"type":["string","null"]}},"type":"object"},"fr":{"properties":{"unit":{"type":"string"},"description":{"type":"string"},"text":{"description":"Combines unit and description","type":"string"},"unitPlural":{"type":["string","null"]}},"type":"object"},"it":{"properties":{"unit":{"type":"string"},"description":{"type":"string"},"text":{"description":"Combines unit and description","type":"string"},"unitPlural":{"type":["string","null"]}},"type":"object"}},"type":"object"}},"type":["object","null"]},"productGroup":{"properties":{"productGroupId":{"type":"integer","format":"int64","deprecated":true},"productGroupUuid":{"type":"string","format":"uuid"},"productGroupNumber":{"type":"integer","format":"int64"},"productGroupDescription":{"type":"string"},"productGroupBookingAccountNumber":{"type":"integer","format":"int64"},"productGroupBookingAccountId":{"type":["integer","null"],"format":"int64"}},"type":["object","null"]},"tags":{"type":"array","items":{"type":"string"}},"properties":{"type":"array","items":{"title":"Product Property Resource","properties":{"id":{"type":"integer","format":"int64"},"type":{"type":"string","enum":["weight","width","height","length","volume"]},"value":{"type":"number"},"isocode":{"type":"string"},"translations":{"properties":{"de":{"properties":{"description":{"type":"string"},"unit":{"type":"string"}},"type":"object"},"en":{"properties":{"description":{"type":"string"},"unit":{"type":"string"}},"type":"object"},"fr":{"properties":{"description":{"type":"string"},"unit":{"type":"string"}},"type":"object"},"it":{"properties":{"description":{"type":"string"},"unit":{"type":"string"}},"type":"object"}},"type":"object"}},"type":"object"}},"cost":{"description":"Price of a single item","type":"number"},"taxRate":{"type":["number","null"]},"taxRateUuid":{"type":["string","null"],"format":"uuid"},"bookingAccountNumber":{"type":["string","null"]},"hasImage":{"type":"boolean"},"translations":{"properties":{"de":{"properties":{"productName":{"type":"string"},"productDescription":{"type":"string"}},"type":"object"},"en":{"properties":{"productName":{"type":"string"},"productDescription":{"type":"string"}},"type":"object"},"fr":{"properties":{"productName":{"type":"string"},"productDescription":{"type":"string"}},"type":"object"},"it":{"properties":{"productName":{"type":"string"},"productDescription":{"type":"string"}},"type":"object"}},"type":"object"}},"type":"object"},"status":{"example":200}},"type":"object"}]}}}},"404":{"description":"Resource not found","content":{"application/json":{"schema":{"allOf":[{"description":"The response format of most endpoints for erronous requests","required":["detail","type","message","status"],"properties":{"detail":{"title":"details"},"type":{"title":"type","type":"string"},"requestUuid":{"title":"requestUuid","type":"string","format":"uuid"},"path":{"title":"path","type":"string"},"message":{"title":"message","type":["string","null"]},"status":{"title":"status","description":"HTTP status code","type":"integer"}},"type":"object"},{"properties":{}}]}}}}},"security":[{"ApiToken":["https://api.abaninja.ch/auth/products"]}],"x-legacy-operation-id":"3288b4372422a1a6413237d06a0bcb15","x-required-scopes":["products"]},"patch":{"tags":["products"],"summary":"Update product","description":"Update a new product or service","operationId":"products_update_products","parameters":[{"name":"accountUuid","in":"path","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"productUuid","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"description":"Product body","required":true,"content":{"application/json":{"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","$id":"https://api.abaninja.ch/schemas/2.0.0/product.update.schema.json","description":"A Schema for updating a product in AbaNinja over API","type":"object","properties":{"productKey":{"type":"string","maxLength":30},"productGroupUuid":{"type":["null","string"],"format":"uuid"},"productGroupNumber":{"deprecated":true,"description":"use productGroupUuid instead","type":["null","number"]},"isService":{"type":"boolean"},"tags":{"type":"array","items":{"type":"string"},"maxItems":100},"translations":{"type":"object","properties":{"de":{"type":"object","properties":{"productName":{"type":"string","maxLength":255},"productDescription":{"type":"string","maxLength":2000}}},"en":{"type":"object","properties":{"productName":{"type":"string","maxLength":255},"productDescription":{"type":"string","maxLength":2000}}},"fr":{"type":"object","properties":{"productName":{"type":"string","maxLength":255},"productDescription":{"type":"string","maxLength":2000}}},"it":{"type":"object","properties":{"productName":{"type":"string","maxLength":255},"productDescription":{"type":"string","maxLength":2000}}}}},"properties":{"type":"array","items":{"type":"object","properties":{"type":{"type":"string","enum":["weight","width","height","length","volume"]},"value":{"type":["null","number"]},"isocode":{"type":"string"}},"required":["type","value","isocode"]}},"eanCode":{"type":["null","string"],"maxLength":13},"unitUuid":{"type":"string","format":"uuid"},"cost":{"type":"number"},"taxRate":{"deprecated":true,"description":"Tax rate to use as default for this product. Use \"taxRateUuid\" instead.","type":["null","number"]},"taxRateType":{"deprecated":true,"description":"The type of the tax rate to find. Only used in combination with \"taxRate\".","type":["null","string"],"enum":[null,"NORMAL","ACQUISITION","NOT_RELEVANT"],"default":"NORMAL"},"taxRateUuid":{"type":["null","string"],"format":"uuid"},"bookingAccountNumber":{"deprecated":true,"description":"use bookingAccountUuid instead","type":["null","string"]},"bookingAccountUuid":{"type":["null","string"],"format":"uuid"}}}}}},"responses":{"200":{"description":"Successful response","content":{"application/json":{"schema":{"allOf":[{"description":"The response format of most endpoints for successful requests","required":["data","message","status"],"properties":{"data":{"title":"data"},"message":{"title":"message","type":"string"},"status":{"title":"status","description":"HTTP status code","type":"integer"},"meta":{"title":"meta","type":["object","null"]}},"type":"object"},{"properties":{"data":{"title":"Product Resource","properties":{"uuid":{"type":"string","format":"uuid"},"productId":{"description":"use uuid instead","type":"integer","format":"int64","deprecated":true},"productUuid":{"description":"use uuid instead","type":"string","format":"uuid","deprecated":true},"productKey":{"type":["string","null"]},"archivedAt":{"type":["string","null"],"format":"date-time"},"isInclusive":{"description":"if prices are inclusive tax","type":"boolean"},"isService":{"description":"if it is a service or else a product","type":"boolean"},"eanCode":{"type":["string","null"]},"productUnit":{"properties":{"id":{"type":"integer","format":"int64","deprecated":true},"uuid":{"type":"string","format":"uuid"},"isocode":{"type":["string","null"]},"translations":{"properties":{"de":{"properties":{"unit":{"type":"string"},"description":{"type":"string"},"text":{"description":"Combines unit and description","type":"string"},"unitPlural":{"type":["string","null"]}},"type":"object"},"en":{"properties":{"unit":{"type":"string"},"description":{"type":"string"},"text":{"description":"Combines unit and description","type":"string"},"unitPlural":{"type":["string","null"]}},"type":"object"},"fr":{"properties":{"unit":{"type":"string"},"description":{"type":"string"},"text":{"description":"Combines unit and description","type":"string"},"unitPlural":{"type":["string","null"]}},"type":"object"},"it":{"properties":{"unit":{"type":"string"},"description":{"type":"string"},"text":{"description":"Combines unit and description","type":"string"},"unitPlural":{"type":["string","null"]}},"type":"object"}},"type":"object"}},"type":["object","null"]},"productGroup":{"properties":{"productGroupId":{"type":"integer","format":"int64","deprecated":true},"productGroupUuid":{"type":"string","format":"uuid"},"productGroupNumber":{"type":"integer","format":"int64"},"productGroupDescription":{"type":"string"},"productGroupBookingAccountNumber":{"type":"integer","format":"int64"},"productGroupBookingAccountId":{"type":["integer","null"],"format":"int64"}},"type":["object","null"]},"tags":{"type":"array","items":{"type":"string"}},"properties":{"type":"array","items":{"title":"Product Property Resource","properties":{"id":{"type":"integer","format":"int64"},"type":{"type":"string","enum":["weight","width","height","length","volume"]},"value":{"type":"number"},"isocode":{"type":"string"},"translations":{"properties":{"de":{"properties":{"description":{"type":"string"},"unit":{"type":"string"}},"type":"object"},"en":{"properties":{"description":{"type":"string"},"unit":{"type":"string"}},"type":"object"},"fr":{"properties":{"description":{"type":"string"},"unit":{"type":"string"}},"type":"object"},"it":{"properties":{"description":{"type":"string"},"unit":{"type":"string"}},"type":"object"}},"type":"object"}},"type":"object"}},"cost":{"description":"Price of a single item","type":"number"},"taxRate":{"type":["number","null"]},"taxRateUuid":{"type":["string","null"],"format":"uuid"},"bookingAccountNumber":{"type":["string","null"]},"hasImage":{"type":"boolean"},"translations":{"properties":{"de":{"properties":{"productName":{"type":"string"},"productDescription":{"type":"string"}},"type":"object"},"en":{"properties":{"productName":{"type":"string"},"productDescription":{"type":"string"}},"type":"object"},"fr":{"properties":{"productName":{"type":"string"},"productDescription":{"type":"string"}},"type":"object"},"it":{"properties":{"productName":{"type":"string"},"productDescription":{"type":"string"}},"type":"object"}},"type":"object"}},"type":"object"},"status":{"example":200}},"type":"object"}]}}}},"400":{"description":"Bad request or validation error","content":{"application/json":{"schema":{"allOf":[{"description":"The response format of most endpoints for erronous requests","required":["detail","type","message","status"],"properties":{"detail":{"title":"details"},"type":{"title":"type","type":"string"},"requestUuid":{"title":"requestUuid","type":"string","format":"uuid"},"path":{"title":"path","type":"string"},"message":{"title":"message","type":["string","null"]},"status":{"title":"status","description":"HTTP status code","type":"integer"}},"type":"object"},{"properties":{}}]}}}},"404":{"description":"Resource not found","content":{"application/json":{"schema":{"allOf":[{"description":"The response format of most endpoints for erronous requests","required":["detail","type","message","status"],"properties":{"detail":{"title":"details"},"type":{"title":"type","type":"string"},"requestUuid":{"title":"requestUuid","type":"string","format":"uuid"},"path":{"title":"path","type":"string"},"message":{"title":"message","type":["string","null"]},"status":{"title":"status","description":"HTTP status code","type":"integer"}},"type":"object"},{"properties":{}}]}}}}},"security":[{"ApiToken":["https://api.abaninja.ch/auth/products"]}],"x-legacy-operation-id":"a7d375d6ce207a4865df5fc5d5411562","x-required-scopes":["products"]},"delete":{"tags":["products"],"summary":"Delete product","description":"Delete product","operationId":"products_delete_products","parameters":[{"name":"accountUuid","in":"path","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"productUuid","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Successful response","content":{"application/json":{"schema":{"allOf":[{"description":"The response format of most endpoints for successful requests","required":["data","message","status"],"properties":{"data":{"title":"data"},"message":{"title":"message","type":"string"},"status":{"title":"status","description":"HTTP status code","type":"integer"},"meta":{"title":"meta","type":["object","null"]}},"type":"object"},{"properties":{"data":{},"status":{"example":200}},"type":"object"}]}}}}},"security":[{"ApiToken":["https://api.abaninja.ch/auth/products"]}],"x-legacy-operation-id":"f005d1ce8297646ffc6993154be0f291","x-required-scopes":["products"]}},"/accounts/{accountUuid}/products/v2/products/{productUuid}/actions":{"get":{"tags":["products"],"summary":"Get Actions","description":"Get applicable product actions","operationId":"products_list_actions","parameters":[{"name":"accountUuid","in":"path","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"productUuid","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Successful response","content":{"application/json":{"schema":{"allOf":[{"description":"The response format of most endpoints for successful requests","required":["data","message","status"],"properties":{"data":{"title":"data"},"message":{"title":"message","type":"string"},"status":{"title":"status","description":"HTTP status code","type":"integer"},"meta":{"title":"meta","type":["object","null"]}},"type":"object"},{"properties":{"data":{"type":"array","items":{"type":"string","enum":["archive","restore","delete"]}},"status":{"example":200}},"type":"object"}]}}}},"404":{"description":"Resource not found","content":{"application/json":{"schema":{"allOf":[{"description":"The response format of most endpoints for erronous requests","required":["detail","type","message","status"],"properties":{"detail":{"title":"details"},"type":{"title":"type","type":"string"},"requestUuid":{"title":"requestUuid","type":"string","format":"uuid"},"path":{"title":"path","type":"string"},"message":{"title":"message","type":["string","null"]},"status":{"title":"status","description":"HTTP status code","type":"integer"}},"type":"object"},{"properties":{}}]}}}}},"security":[{"ApiToken":["https://api.abaninja.ch/auth/products"]}],"x-legacy-operation-id":"7b81f608fce8bbe5804777064d6f946a","x-required-scopes":["products"]}},"/accounts/{accountUuid}/products/v2/products/{productUuid}/attachments":{"get":{"tags":["products"],"summary":"Get attachments","description":"Get all attachments of a product","operationId":"products_list_attachments","parameters":[{"name":"accountUuid","in":"path","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"productUuid","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Successful response","content":{"application/json":{"schema":{"allOf":[{"description":"The response format of most endpoints for successful requests","required":["data","message","status"],"properties":{"data":{"title":"data"},"message":{"title":"message","type":"string"},"status":{"title":"status","description":"HTTP status code","type":"integer"},"meta":{"title":"meta","type":["object","null"]}},"type":"object"},{"properties":{"data":{"type":"array","items":{"title":"Product Attachment Resource","properties":{"uuid":{"type":"string","format":"uuid"},"name":{"type":"string"},"size":{"type":"integer"},"mimeType":{"type":"string"},"url":{"type":["string","null"],"format":"uri"}},"type":"object"}},"status":{"example":200}},"type":"object"}]}}}},"404":{"description":"Resource not found","content":{"application/json":{"schema":{"allOf":[{"description":"The response format of most endpoints for erronous requests","required":["detail","type","message","status"],"properties":{"detail":{"title":"details"},"type":{"title":"type","type":"string"},"requestUuid":{"title":"requestUuid","type":"string","format":"uuid"},"path":{"title":"path","type":"string"},"message":{"title":"message","type":["string","null"]},"status":{"title":"status","description":"HTTP status code","type":"integer"}},"type":"object"},{"properties":{}}]}}}}},"security":[{"ApiToken":["https://api.abaninja.ch/auth/products"]}],"x-legacy-operation-id":"4ae7a5a250fee33cb961eed02e0c06ea","x-required-scopes":["products"]},"post":{"tags":["products"],"summary":"Upload attachment","description":"Upload an attachment for a product","operationId":"products_create_attachments","parameters":[{"name":"accountUuid","in":"path","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"productUuid","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"required":true,"content":{"multipart/form-data":{"schema":{"required":["file"],"properties":{"file":{"type":"string","format":"binary"}},"type":"object"}}}},"responses":{"201":{"description":"Successful response","content":{"application/json":{"schema":{"allOf":[{"description":"The response format of most endpoints for successful requests","required":["data","message","status"],"properties":{"data":{"title":"data"},"message":{"title":"message","type":"string"},"status":{"title":"status","description":"HTTP status code","type":"integer"},"meta":{"title":"meta","type":["object","null"]}},"type":"object"},{"properties":{"data":{"title":"Product Attachment Resource","properties":{"uuid":{"type":"string","format":"uuid"},"name":{"type":"string"},"size":{"type":"integer"},"mimeType":{"type":"string"},"url":{"type":["string","null"],"format":"uri"}},"type":"object"},"status":{"example":201}},"type":"object"}]}}}},"400":{"description":"Bad request or validation error","content":{"application/json":{"schema":{"allOf":[{"description":"The response format of most endpoints for erronous requests","required":["detail","type","message","status"],"properties":{"detail":{"title":"details"},"type":{"title":"type","type":"string"},"requestUuid":{"title":"requestUuid","type":"string","format":"uuid"},"path":{"title":"path","type":"string"},"message":{"title":"message","type":["string","null"]},"status":{"title":"status","description":"HTTP status code","type":"integer"}},"type":"object"},{"properties":{}}]}}}},"404":{"description":"Resource not found","content":{"application/json":{"schema":{"allOf":[{"description":"The response format of most endpoints for erronous requests","required":["detail","type","message","status"],"properties":{"detail":{"title":"details"},"type":{"title":"type","type":"string"},"requestUuid":{"title":"requestUuid","type":"string","format":"uuid"},"path":{"title":"path","type":"string"},"message":{"title":"message","type":["string","null"]},"status":{"title":"status","description":"HTTP status code","type":"integer"}},"type":"object"},{"properties":{}}]}}}}},"security":[{"ApiToken":["https://api.abaninja.ch/auth/products"]}],"x-legacy-operation-id":"55728d6dae8adfc66e0f534821241168","x-required-scopes":["products"]}},"/accounts/{accountUuid}/products/v2/products/{productUuid}/comments":{"get":{"tags":["products"],"summary":"Get comment collection","description":"fetches comments of a product via pagination","operationId":"products_list_comments","parameters":[{"name":"accountUuid","in":"path","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"productUuid","in":"path","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"page","in":"query","schema":{"type":["integer","null"],"default":1,"minimum":1}},{"name":"perPage","in":"query","schema":{"type":["integer","null"],"minimum":1}}],"responses":{"200":{"description":"Successful response","content":{"application/json":{"schema":{"allOf":[{"description":"The response format of most endpoints for successful requests","required":["data","message","status"],"properties":{"data":{"title":"data"},"message":{"title":"message","type":"string"},"status":{"title":"status","description":"HTTP status code","type":"integer"},"meta":{"title":"meta","type":["object","null"]}},"type":"object"},{"properties":{"data":{"type":"array","items":{"title":"Product Comment Resource","properties":{"uuid":{"type":"string","format":"uuid"},"authorUserUuid":{"type":["string","null"],"format":"uuid"},"createdAt":{"type":"string","format":"date-time"},"userName":{"type":"string"},"comment":{"type":"string"},"type":{"type":"string","enum":["intern"]},"isDeletable":{"description":"if the current user can delete the comment","type":"boolean"}},"type":"object"}},"status":{"example":200},"meta":{"properties":{"pagination":{"properties":{"currentPage":{"type":"integer","minimum":1},"firstPageUrl":{"type":["string","null"],"format":"uri"},"from":{"type":["integer","null"],"example":1},"lastPage":{"type":"integer"},"lastPageUrl":{"type":"string","format":"uri"},"nextPageUrl":{"type":["string","null"],"format":"uri"},"perPage":{"type":"integer","example":50},"previousPageUrl":{"type":["string","null"],"format":"uri"},"to":{"type":["integer","null"],"example":50},"totalItems":{"type":"integer"}},"type":"object"}},"type":"object"}},"type":"object"}]}}}},"404":{"description":"Resource not found","content":{"application/json":{"schema":{"allOf":[{"description":"The response format of most endpoints for erronous requests","required":["detail","type","message","status"],"properties":{"detail":{"title":"details"},"type":{"title":"type","type":"string"},"requestUuid":{"title":"requestUuid","type":"string","format":"uuid"},"path":{"title":"path","type":"string"},"message":{"title":"message","type":["string","null"]},"status":{"title":"status","description":"HTTP status code","type":"integer"}},"type":"object"},{"properties":{}}]}}}}},"security":[{"ApiToken":["https://api.abaninja.ch/auth/products"]}],"x-legacy-operation-id":"385f8a3c938bd4501c948dfc1bb3eb50","x-required-scopes":["products"]},"post":{"tags":["products"],"summary":"Create comment","description":"creates a new comment on a product for internal use","operationId":"products_create_comments","parameters":[{"name":"accountUuid","in":"path","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"productUuid","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"description":"Comment to create","required":true,"content":{"application/json":{"schema":{"title":"Create Product Comment Request","required":["comment"],"properties":{"comment":{"type":"string","minLength":3}},"type":"object"}}}},"responses":{"201":{"description":"Successful response","content":{"application/json":{"schema":{"allOf":[{"description":"The response format of most endpoints for successful requests","required":["data","message","status"],"properties":{"data":{"title":"data"},"message":{"title":"message","type":"string"},"status":{"title":"status","description":"HTTP status code","type":"integer"},"meta":{"title":"meta","type":["object","null"]}},"type":"object"},{"properties":{"data":{"title":"Product Comment Resource","properties":{"uuid":{"type":"string","format":"uuid"},"authorUserUuid":{"type":["string","null"],"format":"uuid"},"createdAt":{"type":"string","format":"date-time"},"userName":{"type":"string"},"comment":{"type":"string"},"type":{"type":"string","enum":["intern"]},"isDeletable":{"description":"if the current user can delete the comment","type":"boolean"}},"type":"object"},"status":{"example":201}},"type":"object"}]}}}},"400":{"description":"Bad request or validation error","content":{"application/json":{"schema":{"allOf":[{"description":"The response format of most endpoints for erronous requests","required":["detail","type","message","status"],"properties":{"detail":{"title":"details"},"type":{"title":"type","type":"string"},"requestUuid":{"title":"requestUuid","type":"string","format":"uuid"},"path":{"title":"path","type":"string"},"message":{"title":"message","type":["string","null"]},"status":{"title":"status","description":"HTTP status code","type":"integer"}},"type":"object"},{"properties":{}}]}}}},"404":{"description":"Resource not found","content":{"application/json":{"schema":{"allOf":[{"description":"The response format of most endpoints for erronous requests","required":["detail","type","message","status"],"properties":{"detail":{"title":"details"},"type":{"title":"type","type":"string"},"requestUuid":{"title":"requestUuid","type":"string","format":"uuid"},"path":{"title":"path","type":"string"},"message":{"title":"message","type":["string","null"]},"status":{"title":"status","description":"HTTP status code","type":"integer"}},"type":"object"},{"properties":{}}]}}}}},"security":[{"ApiToken":["https://api.abaninja.ch/auth/products"]}],"x-legacy-operation-id":"63ad77f1a6bd30c0928e1852c110a6a5","x-required-scopes":["products"]}},"/accounts/{accountUuid}/products/v2/products/{productUuid}/image":{"get":{"tags":["products"],"summary":"Get image","description":"Get the image of a product","operationId":"products_list_image","parameters":[{"name":"accountUuid","in":"path","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"productUuid","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Successful response","content":{"application/json":{"schema":{"allOf":[{"description":"The response format of most endpoints for successful requests","required":["data","message","status"],"properties":{"data":{"title":"data"},"message":{"title":"message","type":"string"},"status":{"title":"status","description":"HTTP status code","type":"integer"},"meta":{"title":"meta","type":["object","null"]}},"type":"object"},{"properties":{"data":{"title":"Product Attachment Resource","properties":{"uuid":{"type":"string","format":"uuid"},"name":{"type":"string"},"size":{"type":"integer"},"mimeType":{"type":"string"},"url":{"type":["string","null"],"format":"uri"}},"type":"object"},"status":{"example":200}},"type":"object"}]}}}},"204":{"description":"No image exists"},"404":{"description":"Resource not found","content":{"application/json":{"schema":{"allOf":[{"description":"The response format of most endpoints for erronous requests","required":["detail","type","message","status"],"properties":{"detail":{"title":"details"},"type":{"title":"type","type":"string"},"requestUuid":{"title":"requestUuid","type":"string","format":"uuid"},"path":{"title":"path","type":"string"},"message":{"title":"message","type":["string","null"]},"status":{"title":"status","description":"HTTP status code","type":"integer"}},"type":"object"},{"properties":{}}]}}}}},"security":[{"ApiToken":["https://api.abaninja.ch/auth/products"]}],"x-legacy-operation-id":"6bc83a5b65239fb10074761bcb13dd40","x-required-scopes":["products"]},"post":{"tags":["products"],"summary":"Upload image","description":"Upload an image for a product","operationId":"products_create_image","parameters":[{"name":"accountUuid","in":"path","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"productUuid","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"required":true,"content":{"multipart/form-data":{"schema":{"required":["file"],"properties":{"file":{"type":"string","format":"binary"}},"type":"object"}}}},"responses":{"201":{"description":"Successful response","content":{"application/json":{"schema":{"allOf":[{"description":"The response format of most endpoints for successful requests","required":["data","message","status"],"properties":{"data":{"title":"data"},"message":{"title":"message","type":"string"},"status":{"title":"status","description":"HTTP status code","type":"integer"},"meta":{"title":"meta","type":["object","null"]}},"type":"object"},{"properties":{"data":{"title":"Product Attachment Resource","properties":{"uuid":{"type":"string","format":"uuid"},"name":{"type":"string"},"size":{"type":"integer"},"mimeType":{"type":"string"},"url":{"type":["string","null"],"format":"uri"}},"type":"object"},"status":{"example":201}},"type":"object"}]}}}},"400":{"description":"Bad request or validation error","content":{"application/json":{"schema":{"allOf":[{"description":"The response format of most endpoints for erronous requests","required":["detail","type","message","status"],"properties":{"detail":{"title":"details"},"type":{"title":"type","type":"string"},"requestUuid":{"title":"requestUuid","type":"string","format":"uuid"},"path":{"title":"path","type":"string"},"message":{"title":"message","type":["string","null"]},"status":{"title":"status","description":"HTTP status code","type":"integer"}},"type":"object"},{"properties":{}}]}}}},"404":{"description":"Resource not found","content":{"application/json":{"schema":{"allOf":[{"description":"The response format of most endpoints for erronous requests","required":["detail","type","message","status"],"properties":{"detail":{"title":"details"},"type":{"title":"type","type":"string"},"requestUuid":{"title":"requestUuid","type":"string","format":"uuid"},"path":{"title":"path","type":"string"},"message":{"title":"message","type":["string","null"]},"status":{"title":"status","description":"HTTP status code","type":"integer"}},"type":"object"},{"properties":{}}]}}}}},"security":[{"ApiToken":["https://api.abaninja.ch/auth/products"]}],"x-legacy-operation-id":"a7ac35632b17926564daeaff89a0f5ff","x-required-scopes":["products"]},"delete":{"tags":["products"],"summary":"Delete image","description":"Delete the image of a product","operationId":"products_delete_image","parameters":[{"name":"accountUuid","in":"path","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"productUuid","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"204":{"description":"Successful response"},"404":{"description":"Resource not found","content":{"application/json":{"schema":{"allOf":[{"description":"The response format of most endpoints for erronous requests","required":["detail","type","message","status"],"properties":{"detail":{"title":"details"},"type":{"title":"type","type":"string"},"requestUuid":{"title":"requestUuid","type":"string","format":"uuid"},"path":{"title":"path","type":"string"},"message":{"title":"message","type":["string","null"]},"status":{"title":"status","description":"HTTP status code","type":"integer"}},"type":"object"},{"properties":{}}]}}}}},"security":[{"ApiToken":["https://api.abaninja.ch/auth/products"]}],"x-legacy-operation-id":"7747eccef4f9671fd6d580f507a271c3","x-required-scopes":["products"]}},"/accounts/{accountUuid}/products/v2/products/{productUuid}/suppliers":{"get":{"tags":["product-suppliers"],"summary":"Get suppliers","description":"Get product suppliers","operationId":"products_list_suppliers","parameters":[{"name":"accountUuid","in":"path","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"productUuid","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Successful response","content":{"application/json":{"schema":{"allOf":[{"description":"The response format of most endpoints for successful requests","required":["data","message","status"],"properties":{"data":{"title":"data"},"message":{"title":"message","type":"string"},"status":{"title":"status","description":"HTTP status code","type":"integer"},"meta":{"title":"meta","type":["object","null"]}},"type":"object"},{"properties":{"data":{"type":"array","items":{"title":"Product Supplier Resource","properties":{"uuid":{"type":"string","format":"uuid"},"id":{"type":"integer","format":"int64","deprecated":true},"addressUuid":{"type":"string","format":"uuid"},"addressId":{"type":"integer","format":"int64","deprecated":true},"name":{"description":"Name of the address","type":"string"},"productCode":{"type":["string","null"]},"productName":{"type":["string","null"]},"contactName":{"type":["string","null"]},"contactUuid":{"type":["string","null"],"format":"uuid"},"contactId":{"type":["integer","null"],"format":"int64","deprecated":true}},"type":"object"}},"status":{"example":200}},"type":"object"}]}}}}},"security":[{"ApiToken":["https://api.abaninja.ch/auth/products"]}],"x-legacy-operation-id":"297e90349ac8247f244037d9ab3921de","x-required-scopes":["products"]},"post":{"tags":["product-suppliers"],"summary":"Create supplier","description":"Create a product supplier","operationId":"products_create_suppliers","parameters":[{"name":"accountUuid","in":"path","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"productUuid","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"description":"Product supplier body","required":true,"content":{"application/json":{"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","$id":"https://api.abaninja.ch/schemas/2.0.0/product-supplier.schema.json","description":"A Schema for create/update product supplier in AbaNinja over API","type":"object","properties":{"addressUuid":{"type":"string","format":"uuid"},"personUuid":{"type":"string","format":"uuid"},"contactUuid":{"type":["null","string"],"format":"uuid"},"productCode":{"type":["null","string"],"maxLength":255},"productName":{"type":"string","maxLength":255}},"required":["addressUuid"]}}}},"responses":{"201":{"description":"Successful response","content":{"application/json":{"schema":{"allOf":[{"description":"The response format of most endpoints for successful requests","required":["data","message","status"],"properties":{"data":{"title":"data"},"message":{"title":"message","type":"string"},"status":{"title":"status","description":"HTTP status code","type":"integer"},"meta":{"title":"meta","type":["object","null"]}},"type":"object"},{"properties":{"data":{"title":"Product Supplier Resource","properties":{"uuid":{"type":"string","format":"uuid"},"id":{"type":"integer","format":"int64","deprecated":true},"addressUuid":{"type":"string","format":"uuid"},"addressId":{"type":"integer","format":"int64","deprecated":true},"name":{"description":"Name of the address","type":"string"},"productCode":{"type":["string","null"]},"productName":{"type":["string","null"]},"contactName":{"type":["string","null"]},"contactUuid":{"type":["string","null"],"format":"uuid"},"contactId":{"type":["integer","null"],"format":"int64","deprecated":true}},"type":"object"},"status":{"example":201}},"type":"object"}]}}}},"400":{"description":"Bad request or validation error","content":{"application/json":{"schema":{"allOf":[{"description":"The response format of most endpoints for erronous requests","required":["detail","type","message","status"],"properties":{"detail":{"title":"details"},"type":{"title":"type","type":"string"},"requestUuid":{"title":"requestUuid","type":"string","format":"uuid"},"path":{"title":"path","type":"string"},"message":{"title":"message","type":["string","null"]},"status":{"title":"status","description":"HTTP status code","type":"integer"}},"type":"object"},{"properties":{}}]}}}}},"security":[{"ApiToken":["https://api.abaninja.ch/auth/products"]}],"x-legacy-operation-id":"4dbb6d352ff548d64bf6669179b8f6e0","x-required-scopes":["products"]}},"/accounts/{accountUuid}/products/v2/product-groups/{productGroupUuid}/actions/archive":{"patch":{"tags":["product-groups"],"summary":"Archive product group","description":"Archive a product group","operationId":"products_update_archive","parameters":[{"name":"accountUuid","in":"path","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"productGroupUuid","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Successful response","content":{"application/json":{"schema":{"allOf":[{"description":"The response format of most endpoints for successful requests","required":["data","message","status"],"properties":{"data":{"title":"data"},"message":{"title":"message","type":"string"},"status":{"title":"status","description":"HTTP status code","type":"integer"},"meta":{"title":"meta","type":["object","null"]}},"type":"object"},{"properties":{"data":{"title":"Product Group Resource","properties":{"uuid":{"type":"string","format":"uuid"},"id":{"type":"integer","format":"int64","deprecated":true},"groupNumber":{"type":"integer","format":"int64"},"bookingAccountNumber":{"type":["string","null"]},"isArchived":{"type":"boolean"},"isDeletable":{"type":"boolean"},"translations":{"properties":{"de":{"properties":{"description":{"type":"string"}},"type":"object"},"en":{"properties":{"description":{"type":"string"}},"type":"object"},"fr":{"properties":{"description":{"type":"string"}},"type":"object"},"it":{"properties":{"description":{"type":"string"}},"type":"object"}},"type":"object"}},"type":"object"},"status":{"example":200}},"type":"object"}]}}}},"400":{"description":"Bad request or validation error","content":{"application/json":{"schema":{"allOf":[{"description":"The response format of most endpoints for erronous requests","required":["detail","type","message","status"],"properties":{"detail":{"title":"details"},"type":{"title":"type","type":"string"},"requestUuid":{"title":"requestUuid","type":"string","format":"uuid"},"path":{"title":"path","type":"string"},"message":{"title":"message","type":["string","null"]},"status":{"title":"status","description":"HTTP status code","type":"integer"}},"type":"object"},{"properties":{}}]}}}},"404":{"description":"Resource not found","content":{"application/json":{"schema":{"allOf":[{"description":"The response format of most endpoints for erronous requests","required":["detail","type","message","status"],"properties":{"detail":{"title":"details"},"type":{"title":"type","type":"string"},"requestUuid":{"title":"requestUuid","type":"string","format":"uuid"},"path":{"title":"path","type":"string"},"message":{"title":"message","type":["string","null"]},"status":{"title":"status","description":"HTTP status code","type":"integer"}},"type":"object"},{"properties":{}}]}}}}},"security":[{"ApiToken":["https://api.abaninja.ch/auth/products"]}],"x-legacy-operation-id":"55d3d032148e8dbfe24d314f445f48f9","x-required-scopes":["products"]}},"/accounts/{accountUuid}/products/v2/product-groups/{productGroupUuid}/actions/restore":{"patch":{"tags":["product-groups"],"summary":"Restore product group","description":"Restore a product group","operationId":"products_update_restore","parameters":[{"name":"accountUuid","in":"path","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"productGroupUuid","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Successful response","content":{"application/json":{"schema":{"allOf":[{"description":"The response format of most endpoints for successful requests","required":["data","message","status"],"properties":{"data":{"title":"data"},"message":{"title":"message","type":"string"},"status":{"title":"status","description":"HTTP status code","type":"integer"},"meta":{"title":"meta","type":["object","null"]}},"type":"object"},{"properties":{"data":{"title":"Product Group Resource","properties":{"uuid":{"type":"string","format":"uuid"},"id":{"type":"integer","format":"int64","deprecated":true},"groupNumber":{"type":"integer","format":"int64"},"bookingAccountNumber":{"type":["string","null"]},"isArchived":{"type":"boolean"},"isDeletable":{"type":"boolean"},"translations":{"properties":{"de":{"properties":{"description":{"type":"string"}},"type":"object"},"en":{"properties":{"description":{"type":"string"}},"type":"object"},"fr":{"properties":{"description":{"type":"string"}},"type":"object"},"it":{"properties":{"description":{"type":"string"}},"type":"object"}},"type":"object"}},"type":"object"},"status":{"example":200}},"type":"object"}]}}}},"400":{"description":"Bad request or validation error","content":{"application/json":{"schema":{"allOf":[{"description":"The response format of most endpoints for erronous requests","required":["detail","type","message","status"],"properties":{"detail":{"title":"details"},"type":{"title":"type","type":"string"},"requestUuid":{"title":"requestUuid","type":"string","format":"uuid"},"path":{"title":"path","type":"string"},"message":{"title":"message","type":["string","null"]},"status":{"title":"status","description":"HTTP status code","type":"integer"}},"type":"object"},{"properties":{}}]}}}},"404":{"description":"Resource not found","content":{"application/json":{"schema":{"allOf":[{"description":"The response format of most endpoints for erronous requests","required":["detail","type","message","status"],"properties":{"detail":{"title":"details"},"type":{"title":"type","type":"string"},"requestUuid":{"title":"requestUuid","type":"string","format":"uuid"},"path":{"title":"path","type":"string"},"message":{"title":"message","type":["string","null"]},"status":{"title":"status","description":"HTTP status code","type":"integer"}},"type":"object"},{"properties":{}}]}}}}},"security":[{"ApiToken":["https://api.abaninja.ch/auth/products"]}],"x-legacy-operation-id":"04c3cc76d63e1f0fb3387d6625f3fde1","x-required-scopes":["products"]}},"/accounts/{accountUuid}/products/v2/products/{productUuid}/actions/{action}":{"patch":{"tags":["products"],"summary":"Execute action","description":"Executes an action for a product","operationId":"products_update_actions","parameters":[{"name":"accountUuid","in":"path","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"productUuid","in":"path","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"action","in":"path","required":true,"schema":{"type":"string","enum":["archive","restore","delete"]}}],"responses":{"200":{"description":"Successful response","content":{"application/json":{"schema":{"allOf":[{"description":"The response format of most endpoints for successful requests","required":["data","message","status"],"properties":{"data":{"title":"data"},"message":{"title":"message","type":"string"},"status":{"title":"status","description":"HTTP status code","type":"integer"},"meta":{"title":"meta","type":["object","null"]}},"type":"object"},{"properties":{"data":{},"status":{"example":200}},"type":"object"}]}}}},"400":{"description":"Bad request or validation error","content":{"application/json":{"schema":{"allOf":[{"description":"The response format of most endpoints for erronous requests","required":["detail","type","message","status"],"properties":{"detail":{"title":"details"},"type":{"title":"type","type":"string"},"requestUuid":{"title":"requestUuid","type":"string","format":"uuid"},"path":{"title":"path","type":"string"},"message":{"title":"message","type":["string","null"]},"status":{"title":"status","description":"HTTP status code","type":"integer"}},"type":"object"},{"properties":{}}]}}}},"404":{"description":"Resource not found","content":{"application/json":{"schema":{"allOf":[{"description":"The response format of most endpoints for erronous requests","required":["detail","type","message","status"],"properties":{"detail":{"title":"details"},"type":{"title":"type","type":"string"},"requestUuid":{"title":"requestUuid","type":"string","format":"uuid"},"path":{"title":"path","type":"string"},"message":{"title":"message","type":["string","null"]},"status":{"title":"status","description":"HTTP status code","type":"integer"}},"type":"object"},{"properties":{}}]}}}}},"security":[{"ApiToken":["https://api.abaninja.ch/auth/products"]}],"x-legacy-operation-id":"fd0c0c33829f0a814203fed7395edb3f","x-required-scopes":["products"]}},"/accounts/{accountUuid}/products/v2/products/{productUuid}/attachments/{attachmentUuid}":{"delete":{"tags":["products"],"summary":"Delete attachment","description":"Delete an attachment of a product","operationId":"products_delete_attachments","parameters":[{"name":"accountUuid","in":"path","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"productUuid","in":"path","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"attachmentUuid","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"204":{"description":"Successful response"},"404":{"description":"Resource not found","content":{"application/json":{"schema":{"allOf":[{"description":"The response format of most endpoints for erronous requests","required":["detail","type","message","status"],"properties":{"detail":{"title":"details"},"type":{"title":"type","type":"string"},"requestUuid":{"title":"requestUuid","type":"string","format":"uuid"},"path":{"title":"path","type":"string"},"message":{"title":"message","type":["string","null"]},"status":{"title":"status","description":"HTTP status code","type":"integer"}},"type":"object"},{"properties":{}}]}}}}},"security":[{"ApiToken":["https://api.abaninja.ch/auth/products"]}],"x-legacy-operation-id":"7e9204ed31db65894f4586a62fe89f96","x-required-scopes":["products"]}},"/accounts/{accountUuid}/products/v2/products/{productUuid}/comments/{commentUuid}":{"get":{"tags":["products"],"summary":"Get comment","description":"fetches a single comment of a product","operationId":"products_get_comments","parameters":[{"name":"accountUuid","in":"path","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"productUuid","in":"path","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"commentUuid","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Successful response","content":{"application/json":{"schema":{"allOf":[{"description":"The response format of most endpoints for successful requests","required":["data","message","status"],"properties":{"data":{"title":"data"},"message":{"title":"message","type":"string"},"status":{"title":"status","description":"HTTP status code","type":"integer"},"meta":{"title":"meta","type":["object","null"]}},"type":"object"},{"properties":{"data":{"title":"Product Comment Resource","properties":{"uuid":{"type":"string","format":"uuid"},"authorUserUuid":{"type":["string","null"],"format":"uuid"},"createdAt":{"type":"string","format":"date-time"},"userName":{"type":"string"},"comment":{"type":"string"},"type":{"type":"string","enum":["intern"]},"isDeletable":{"description":"if the current user can delete the comment","type":"boolean"}},"type":"object"},"status":{"example":200}},"type":"object"}]}}}},"404":{"description":"Resource not found","content":{"application/json":{"schema":{"allOf":[{"description":"The response format of most endpoints for erronous requests","required":["detail","type","message","status"],"properties":{"detail":{"title":"details"},"type":{"title":"type","type":"string"},"requestUuid":{"title":"requestUuid","type":"string","format":"uuid"},"path":{"title":"path","type":"string"},"message":{"title":"message","type":["string","null"]},"status":{"title":"status","description":"HTTP status code","type":"integer"}},"type":"object"},{"properties":{}}]}}}}},"security":[{"ApiToken":["https://api.abaninja.ch/auth/products"]}],"x-legacy-operation-id":"c181e2c8875e3bbcfe810dc8d1650657","x-required-scopes":["products"]},"delete":{"tags":["products"],"summary":"Delete comment","description":"deletes a comment of a product, which cannot be restored anymore afterwards.","operationId":"products_delete_comments","parameters":[{"name":"accountUuid","in":"path","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"productUuid","in":"path","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"commentUuid","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"204":{"description":"Successful response"},"403":{"description":"Forbidden","content":{"application/json":{"schema":{"allOf":[{"description":"The response format of most endpoints for erronous requests","required":["detail","type","message","status"],"properties":{"detail":{"title":"details"},"type":{"title":"type","type":"string"},"requestUuid":{"title":"requestUuid","type":"string","format":"uuid"},"path":{"title":"path","type":"string"},"message":{"title":"message","type":["string","null"]},"status":{"title":"status","description":"HTTP status code","type":"integer"}},"type":"object"},{"properties":{}}]}}}},"404":{"description":"Resource not found","content":{"application/json":{"schema":{"allOf":[{"description":"The response format of most endpoints for erronous requests","required":["detail","type","message","status"],"properties":{"detail":{"title":"details"},"type":{"title":"type","type":"string"},"requestUuid":{"title":"requestUuid","type":"string","format":"uuid"},"path":{"title":"path","type":"string"},"message":{"title":"message","type":["string","null"]},"status":{"title":"status","description":"HTTP status code","type":"integer"}},"type":"object"},{"properties":{}}]}}}}},"security":[{"ApiToken":["https://api.abaninja.ch/auth/products"]}],"x-legacy-operation-id":"33502c6d1ccd28a53a244e8c4195e9bd","x-required-scopes":["products"]}},"/accounts/{accountUuid}/products/v2/products/{productUuid}/suppliers/{supplierUuid}":{"get":{"tags":["product-suppliers"],"summary":"Get supplier","description":"Get a single product suppliers","operationId":"products_get_suppliers","parameters":[{"name":"accountUuid","in":"path","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"productUuid","in":"path","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"supplierUuid","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Successful response","content":{"application/json":{"schema":{"allOf":[{"description":"The response format of most endpoints for successful requests","required":["data","message","status"],"properties":{"data":{"title":"data"},"message":{"title":"message","type":"string"},"status":{"title":"status","description":"HTTP status code","type":"integer"},"meta":{"title":"meta","type":["object","null"]}},"type":"object"},{"properties":{"data":{"title":"Product Supplier Resource","properties":{"uuid":{"type":"string","format":"uuid"},"id":{"type":"integer","format":"int64","deprecated":true},"addressUuid":{"type":"string","format":"uuid"},"addressId":{"type":"integer","format":"int64","deprecated":true},"name":{"description":"Name of the address","type":"string"},"productCode":{"type":["string","null"]},"productName":{"type":["string","null"]},"contactName":{"type":["string","null"]},"contactUuid":{"type":["string","null"],"format":"uuid"},"contactId":{"type":["integer","null"],"format":"int64","deprecated":true}},"type":"object"},"status":{"example":200}},"type":"object"}]}}}},"404":{"description":"Resource not found","content":{"application/json":{"schema":{"allOf":[{"description":"The response format of most endpoints for erronous requests","required":["detail","type","message","status"],"properties":{"detail":{"title":"details"},"type":{"title":"type","type":"string"},"requestUuid":{"title":"requestUuid","type":"string","format":"uuid"},"path":{"title":"path","type":"string"},"message":{"title":"message","type":["string","null"]},"status":{"title":"status","description":"HTTP status code","type":"integer"}},"type":"object"},{"properties":{}}]}}}}},"security":[{"ApiToken":["https://api.abaninja.ch/auth/products"]}],"x-legacy-operation-id":"609b660395b406b75cd1716bdcc3ff24","x-required-scopes":["products"]},"patch":{"tags":["product-suppliers"],"summary":"Update supplier","description":"Update a product supplier","operationId":"products_update_suppliers","parameters":[{"name":"accountUuid","in":"path","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"productUuid","in":"path","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"supplierUuid","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"description":"Product supplier body","required":true,"content":{"application/json":{"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","$id":"https://api.abaninja.ch/schemas/2.0.0/product-supplier.schema.json","description":"A Schema for create/update product supplier in AbaNinja over API","type":"object","properties":{"addressUuid":{"type":"string","format":"uuid"},"personUuid":{"type":"string","format":"uuid"},"contactUuid":{"type":["null","string"],"format":"uuid"},"productCode":{"type":["null","string"],"maxLength":255},"productName":{"type":"string","maxLength":255}},"required":["addressUuid"]}}}},"responses":{"200":{"description":"Successful response","content":{"application/json":{"schema":{"allOf":[{"description":"The response format of most endpoints for successful requests","required":["data","message","status"],"properties":{"data":{"title":"data"},"message":{"title":"message","type":"string"},"status":{"title":"status","description":"HTTP status code","type":"integer"},"meta":{"title":"meta","type":["object","null"]}},"type":"object"},{"properties":{"data":{"title":"Product Supplier Resource","properties":{"uuid":{"type":"string","format":"uuid"},"id":{"type":"integer","format":"int64","deprecated":true},"addressUuid":{"type":"string","format":"uuid"},"addressId":{"type":"integer","format":"int64","deprecated":true},"name":{"description":"Name of the address","type":"string"},"productCode":{"type":["string","null"]},"productName":{"type":["string","null"]},"contactName":{"type":["string","null"]},"contactUuid":{"type":["string","null"],"format":"uuid"},"contactId":{"type":["integer","null"],"format":"int64","deprecated":true}},"type":"object"},"status":{"example":200}},"type":"object"}]}}}},"400":{"description":"Bad request or validation error","content":{"application/json":{"schema":{"allOf":[{"description":"The response format of most endpoints for erronous requests","required":["detail","type","message","status"],"properties":{"detail":{"title":"details"},"type":{"title":"type","type":"string"},"requestUuid":{"title":"requestUuid","type":"string","format":"uuid"},"path":{"title":"path","type":"string"},"message":{"title":"message","type":["string","null"]},"status":{"title":"status","description":"HTTP status code","type":"integer"}},"type":"object"},{"properties":{}}]}}}},"404":{"description":"Resource not found","content":{"application/json":{"schema":{"allOf":[{"description":"The response format of most endpoints for erronous requests","required":["detail","type","message","status"],"properties":{"detail":{"title":"details"},"type":{"title":"type","type":"string"},"requestUuid":{"title":"requestUuid","type":"string","format":"uuid"},"path":{"title":"path","type":"string"},"message":{"title":"message","type":["string","null"]},"status":{"title":"status","description":"HTTP status code","type":"integer"}},"type":"object"},{"properties":{}}]}}}}},"security":[{"ApiToken":["https://api.abaninja.ch/auth/products"]}],"x-legacy-operation-id":"2a3c781d260221281dea27298eda0a33","x-required-scopes":["products"]}}},"components":{"securitySchemes":{"ApiToken":{"type":"http","scheme":"bearer","bearerFormat":"JWT","description":"Bearer token authentication. Create tokens in Settings > API Token."}}}}