openapi: 3.2.0 info: title: Mef Category API version: 4.0.1 description: 'Operations tagged category across 2 of this provider''s published API definitions: mef-lso-cantata-product-catalog-openapi.yml, mef-lso-sonata-product-catalog-openapi.yml. Each path carries the servers of the definition it was published in.' servers: - url: http://{serverBase}/mefApi/cantata/productCatalog/v4/ variables: serverBase: description: The base of Buyer's URL. default: mplify.net - url: http://{serverBase}/mefApi/sonata/productCatalog/v4/ variables: serverBase: description: The base of Buyer's URL. default: mplify.net tags: - name: category paths: /category: get: tags: - category summary: Lists or finds Category objects description: This operation lists or finds Category entities operationId: listCategory parameters: - name: parentCategory.id in: query description: Id of the Parent of this Product Category. required: false schema: type: string - name: lastUpdate.gt in: query description: The date and time the Product Category was created or most recently updated, greater than required: false schema: type: string format: date-time - name: lastUpdate.lt in: query description: The date and time the Product Category was created or most recently updated, less than required: false schema: type: string format: date-time - name: buyerId in: query description: The unique identifier of the organization that is acting as a Buyer. It MUST be specified in the request only when the requester represents more than one Buyer. required: false schema: type: string - name: sellerId in: query description: The unique identifier of the organization that is acting as the Seller. It MUST be specified in the request only when the responding entity represents more than one Seller. required: false schema: type: string - name: offset in: query description: Requested index for the start of item to be provided in response requested by the client. Note that the index starts with "0". required: false schema: type: integer format: int32 - name: limit in: query description: Requested number of items to be provided in response requested by client required: false schema: type: integer format: int32 responses: '200': description: OK. (https://tools.ietf.org/html/rfc7231#section-6.3.1) headers: X-Pagination-Throttled: description: 'Used to indicate that the result page was throttled to maximum possible size and there are additional results that can be fetched ' schema: type: boolean X-Total-Count: description: 'The total number of matching items. E.g. if there are 50 matching items in total, but the request has offset=10 and limit=10, then the X-Total-Count is 50. ' schema: type: integer X-Result-Count: description: The number of items included in the response schema: type: integer content: application/json;charset=utf-8: schema: type: array items: $ref: '#/components/schemas/ProductCategory' '400': description: Bad Request content: application/json;charset=utf-8: schema: $ref: '#/components/schemas/Error400' '401': description: Unauthorized content: application/json;charset=utf-8: schema: $ref: '#/components/schemas/Error401' '403': description: Forbidden content: application/json;charset=utf-8: schema: $ref: '#/components/schemas/Error403' '422': content: application/json;charset=utf-8: schema: items: $ref: '#/components/schemas/Error422' type: array description: Unprocessable entity due to the business validation problems '500': description: Internal Server Error content: application/json;charset=utf-8: schema: $ref: '#/components/schemas/Error500' servers: - url: http://{serverBase}/mefApi/cantata/productCatalog/v4/ variables: serverBase: description: The base of Buyer's URL. default: mplify.net /category/{id}: get: tags: - category summary: Retrieves a Category by ID description: This operation retrieves a Category entity. operationId: retrieveCategory parameters: - name: id in: path description: Identifier of the Category required: true schema: type: string - name: buyerId in: query description: The unique identifier of the organization that is acting as a Buyer. MUST be specified in the request only when the requester represents more than one Buyer. required: false schema: type: string - name: sellerId in: query description: The unique identifier of the organization that is acting as the Seller. MUST be specified in the request only when responding entity represents more than one Seller. required: false schema: type: string responses: '200': description: OK. (https://tools.ietf.org/html/rfc7231#section-6.3.1) content: application/json;charset=utf-8: schema: $ref: '#/components/schemas/ProductCategory' '400': description: Bad Request content: application/json;charset=utf-8: schema: $ref: '#/components/schemas/Error400' '401': description: Unauthorized content: application/json;charset=utf-8: schema: $ref: '#/components/schemas/Error401' '403': description: Forbidden content: application/json;charset=utf-8: schema: $ref: '#/components/schemas/Error403' '404': description: Not Found content: application/json;charset=utf-8: schema: $ref: '#/components/schemas/Error404' '500': description: Internal Server Error content: application/json;charset=utf-8: schema: $ref: '#/components/schemas/Error500' servers: - url: http://{serverBase}/mefApi/cantata/productCatalog/v4/ variables: serverBase: description: The base of Buyer's URL. default: mplify.net components: schemas: Error422: allOf: - $ref: '#/components/schemas/Error' - properties: code: $ref: '#/components/schemas/Error422Code' description: "One of the following error codes:\n - missingProperty: The property the Seller has expected is not present in the payload\n - invalidValue: The property has an incorrect value\n - invalidFormat: The property value does not comply with the expected value format\n - referenceNotFound: The object referenced by the property cannot be identified in the Seller system\n - unexpectedProperty: Additional property, not expected by the Seller has been provided\n - tooManyRecords: the number of records to be provided in the response exceeds the Seller's threshold.\n - otherIssue: Other problem was identified (detailed information provided in a reason)\n" propertyPath: description: 'A pointer to a particular property of the payload that caused the validation issue. It is highly recommended that this property should be used. Defined using JavaScript Object Notation (JSON) Pointer (https://tools.ietf.org/html/rfc6901). ' type: string required: - code type: object description: Unprocessable entity due to a business validation problem. (https://tools.ietf.org/html/rfc4918#section-11.2) Error400Code: description: 'One of the following error codes: - missingQueryParameter: The URI is missing a required query-string parameter - missingQueryValue: The URI is missing a required query-string parameter value - invalidQuery: The query section of the URI is invalid. - invalidBody: The request has an invalid body' type: string enum: - missingQueryParameter - missingQueryValue - invalidQuery - invalidBody Error422Code: description: "One of the following error codes:\n - missingProperty: The property the Seller has expected is not present in the payload\n - invalidValue: The property has an incorrect value\n - invalidFormat: The property value does not comply with the expected value format\n - referenceNotFound: The object referenced by the property cannot be identified in the Seller system\n - unexpectedProperty: Additional property, not expected by the Seller has been provided\n - tooManyRecords: the number of records to be provided in the response exceeds the Seller's threshold.\n - otherIssue: Other problem was identified (detailed information provided in a reason)\n" enum: - missingProperty - invalidValue - invalidFormat - referenceNotFound - unexpectedProperty - tooManyRecords - otherIssue type: string Error404: description: Resource for the requested path not found. (https://tools.ietf.org/html/rfc7231#section-6.5.4) allOf: - $ref: '#/components/schemas/Error' - type: object properties: code: description: 'The following error code: - notFound: A current representation for the target resource not found' type: string enum: - notFound required: - code ProductCategory: description: The Product Category is a grouping of Product Offerings in logical containers defined by the Seller. A Product Category may contain other (sub)Product Categories and/or Product Offerings. type: object properties: id: description: Unique identifier (within the Seller domain) for the Product Category. type: string href: description: Reference of the Product Category type: string format: uri name: description: The name (unique within the Seller domain) of the Product Category type: string description: description: Description of the Product Category type: string lastUpdate: description: The date and time the Product Category was created or most recently updated. type: string format: date-time parentCategory: description: Identifier referencing the parent Product Category of this Product Category. $ref: '#/components/schemas/ProductCategoryRef' subCategory: description: A list of references to the Product Category, to which this Product Category is a parent of. type: array items: $ref: '#/components/schemas/ProductCategoryRef' productOffering: description: A list of references to Product Offering grouped within this Category type: array items: $ref: '#/components/schemas/ProductOfferingRef' required: - id - name - description - lastUpdate ProductCategoryRef: description: Represents the reference to Category type: object properties: id: description: Unique (within the Seller domain) identifier for the Category type: string href: description: Hyperlink to access the Category type: string format: uri required: - id Error403: description: Forbidden. This code indicates that the server understood the request but refuses to authorize it. (https://tools.ietf.org/html/rfc7231#section-6.5.3) allOf: - $ref: '#/components/schemas/Error' - type: object properties: code: description: 'This code indicates that the server understood the request but refuses to authorize it because of one of the following error codes: - accessDenied: Access denied - forbiddenRequester: Forbidden requester - tooManyUsers: Too many users' $ref: '#/components/schemas/Error403Code' required: - code Error401: description: Unauthorized. (https://tools.ietf.org/html/rfc7235#section-3.1) allOf: - $ref: '#/components/schemas/Error' - type: object properties: code: description: 'One of the following error codes: - missingCredentials: No credentials provided. - invalidCredentials: Provided credentials are invalid or expired' $ref: '#/components/schemas/Error401Code' required: - code Error401Code: description: 'One of the following error codes: - missingCredentials: No credentials provided. - invalidCredentials: Provided credentials are invalid or expired' type: string enum: - missingCredentials - invalidCredentials Error400: description: Bad Request. (https://tools.ietf.org/html/rfc7231#section-6.5.1) allOf: - $ref: '#/components/schemas/Error' - type: object properties: code: description: 'One of the following error codes: - missingQueryParameter: The URI is missing a required query-string parameter - missingQueryValue: The URI is missing a required query-string parameter value - invalidQuery: The query section of the URI is invalid. - invalidBody: The request has an invalid body' $ref: '#/components/schemas/Error400Code' required: - code Error500: description: Internal Server Error. (https://tools.ietf.org/html/rfc7231#section-6.6.1) allOf: - $ref: '#/components/schemas/Error' - type: object properties: code: description: 'The following error code: - internalError: Internal server error - the server encountered an unexpected condition that prevented it from fulfilling the request.' type: string enum: - internalError required: - code Error403Code: description: 'This code indicates that the server understood the request but refuses to authorize it because of one of the following error codes: - accessDenied: Access denied - forbiddenRequester: Forbidden requester - tooManyUsers: Too many users' type: string enum: - accessDenied - forbiddenRequester - tooManyUsers Error: description: 'Standard Class used to describe API response error Not intended to be used directly. The `code` in the HTTP header is used as a discriminator for the type of error returned in runtime. ' type: object properties: reason: description: Text that explains the reason for the error. This can be shown to a client user. type: string maxLength: 255 message: description: Text that provides mode details and corrective actions related to the error. This can be shown to a client user. type: string referenceError: description: URL pointing to documentation describing the error type: string format: uri required: - reason ProductOfferingRef: description: ProductOffering reference. A product offering represents entities that are launched from the provider of the catalog. type: object properties: id: description: Unique (within the Seller domain) identifier for the Product Offering. type: string href: description: Hyperlink to access the Product Offering type: string required: - id x-refined-from: - mef-lso-cantata-product-catalog-openapi.yml - mef-lso-sonata-product-catalog-openapi.yml