TMF620 Product Catalog Management

The Product Catalog Management API provides a consistent set of mechanisms to manage product offerings, product specifications, and product catalog entries across telecom BSS systems. Covers catalog creation, product offering management, pricing, and lifecycle management.

OpenAPI Specification

tm-forum-tmf620-product-catalog-openapi.yaml Raw ↑
openapi: 3.0.1
info:
  title: Product Catalog Management
  description: >-
    Product Catalog API is one of Catalog Management API Family. Product Catalog API goal is to
    provide a catalog of products. 

    ### Operations

    Product Catalog API performs the following operations on the resources :

    - Retrieve an entity or a collection of entities depending on filter criteria

    - Partial update of an entity (including updating rules)

    - Create an entity (including default values and creation rules)

    - Delete an entity

    - Manage notification of events
  version: 5.0.0
servers:
- url: 'https://serverRoot/productCatalogManagement/v5/'
tags:
- name: productCatalog
  description: Operations for ProductCatalog Resource
- name: category
  description: Operations for Category Resource
- name: productOffering
  description: Operations for ProductOffering Resource
- name: productOfferingPrice
  description: Operations for ProductOfferingPrice Resource
- name: productSpecification
  description: Operations for ProductSpecification Resource
- name: importJob
  description: Operations for ImportJob Resource
- name: exportJob
  description: Operations for ExportJob Resource
- name: notification listener
  description: Notifications for Resource Lifecycle and event notifications
- name: events subscription
  description: Endpoints to register and terminate an Event Listener
paths:
  /category:
    get:
      tags:
      - category
      summary: TM Forum List or Find Category Objects
      description: List or find Category objects
      operationId: listCategory
      parameters:
      - $ref: '#/components/parameters/Fields'
      - $ref: '#/components/parameters/Offset'
      - $ref: '#/components/parameters/Limit'
      responses:
        '200':
          $ref: '#/components/responses/200CategoryArray'
        '400':
          $ref: '#/components/responses/400'
        '401':
          $ref: '#/components/responses/401'
        '403':
          $ref: '#/components/responses/403'
        '404':
          $ref: '#/components/responses/404'
        '405':
          $ref: '#/components/responses/405'
        '500':
          $ref: '#/components/responses/500'
        '501':
          $ref: '#/components/responses/501'
        '503':
          $ref: '#/components/responses/503'
    post:
      tags:
      - category
      summary: TM Forum Creates a Category
      description: This operation creates a Category entity.
      operationId: createCategory
      parameters:
      - $ref: '#/components/parameters/Fields'
      requestBody:
        $ref: '#/components/requestBodies/Category_FVO'
      responses:
        '201':
          $ref: '#/components/responses/201Category'
        '202':
          description: Accepted
        '400':
          $ref: '#/components/responses/400'
        '401':
          $ref: '#/components/responses/401'
        '403':
          $ref: '#/components/responses/403'
        '404':
          $ref: '#/components/responses/404'
        '405':
          $ref: '#/components/responses/405'
        '409':
          $ref: '#/components/responses/409'
        '500':
          $ref: '#/components/responses/500'
        '501':
          $ref: '#/components/responses/501'
        '503':
          $ref: '#/components/responses/503'
  '/category/{id}':
    get:
      tags:
      - category
      summary: TM Forum Retrieves a Category by ID
      description: >-
        This operation retrieves a Category entity. Attribute selection enabled for all first level
        attributes.
      operationId: retrieveCategory
      parameters:
      - $ref: '#/components/parameters/Id'
      - $ref: '#/components/parameters/Fields'
      responses:
        '200':
          $ref: '#/components/responses/200Category_Get'
        '400':
          $ref: '#/components/responses/400'
        '401':
          $ref: '#/components/responses/401'
        '403':
          $ref: '#/components/responses/403'
        '404':
          $ref: '#/components/responses/404'
        '405':
          $ref: '#/components/responses/405'
        '500':
          $ref: '#/components/responses/500'
        '501':
          $ref: '#/components/responses/501'
        '503':
          $ref: '#/components/responses/503'
    patch:
      tags:
      - category
      summary: TM Forum Updates Partially a Category
      description: This operation updates partially a Category entity.
      operationId: patchCategory
      parameters:
      - $ref: '#/components/parameters/Id'
      - $ref: '#/components/parameters/Fields'
      requestBody:
        $ref: '#/components/requestBodies/Category_MVO'
      responses:
        '200':
          $ref: '#/components/responses/200Category_Patch'
        '202':
          description: Accepted
        '400':
          $ref: '#/components/responses/400'
        '401':
          $ref: '#/components/responses/401'
        '403':
          $ref: '#/components/responses/403'
        '404':
          $ref: '#/components/responses/404'
        '405':
          $ref: '#/components/responses/405'
        '409':
          $ref: '#/components/responses/409'
        '500':
          $ref: '#/components/responses/500'
        '501':
          $ref: '#/components/responses/501'
        '503':
          $ref: '#/components/responses/503'
    delete:
      tags:
      - category
      summary: TM Forum Deletes a Category
      description: This operation deletes a Category entity.
      operationId: deleteCategory
      parameters:
      - $ref: '#/components/parameters/Id'
      responses:
        '202':
          $ref: '#/components/responses/202'
        '204':
          $ref: '#/components/responses/204'
        '400':
          $ref: '#/components/responses/400'
        '401':
          $ref: '#/components/responses/401'
        '403':
          $ref: '#/components/responses/403'
        '404':
          $ref: '#/components/responses/404'
        '405':
          $ref: '#/components/responses/405'
        '409':
          $ref: '#/components/responses/409'
        '500':
          $ref: '#/components/responses/500'
        '501':
          $ref: '#/components/responses/501'
        '503':
          $ref: '#/components/responses/503'
  /exportJob:
    get:
      tags:
      - exportJob
      summary: TM Forum List or Find ExportJob Objects
      description: List or find ExportJob objects
      operationId: listExportJob
      parameters:
      - $ref: '#/components/parameters/Fields'
      - $ref: '#/components/parameters/Offset'
      - $ref: '#/components/parameters/Limit'
      responses:
        '200':
          $ref: '#/components/responses/200ExportJobArray'
        '400':
          $ref: '#/components/responses/400'
        '401':
          $ref: '#/components/responses/401'
        '403':
          $ref: '#/components/responses/403'
        '404':
          $ref: '#/components/responses/404'
        '405':
          $ref: '#/components/responses/405'
        '500':
          $ref: '#/components/responses/500'
        '501':
          $ref: '#/components/responses/501'
        '503':
          $ref: '#/components/responses/503'
    post:
      tags:
      - exportJob
      summary: TM Forum Creates a ExportJob
      description: This operation creates a ExportJob entity.
      operationId: createExportJob
      parameters:
      - $ref: '#/components/parameters/Fields'
      requestBody:
        $ref: '#/components/requestBodies/ExportJob_FVO'
      responses:
        '201':
          $ref: '#/components/responses/201ExportJob'
        '202':
          description: Accepted
        '400':
          $ref: '#/components/responses/400'
        '401':
          $ref: '#/components/responses/401'
        '403':
          $ref: '#/components/responses/403'
        '404':
          $ref: '#/components/responses/404'
        '405':
          $ref: '#/components/responses/405'
        '409':
          $ref: '#/components/responses/409'
        '500':
          $ref: '#/components/responses/500'
        '501':
          $ref: '#/components/responses/501'
        '503':
          $ref: '#/components/responses/503'
  '/exportJob/{id}':
    get:
      tags:
      - exportJob
      summary: TM Forum Retrieves a ExportJob by ID
      description: >-
        This operation retrieves a ExportJob entity. Attribute selection enabled for all first level
        attributes.
      operationId: retrieveExportJob
      parameters:
      - $ref: '#/components/parameters/Id'
      - $ref: '#/components/parameters/Fields'
      responses:
        '200':
          $ref: '#/components/responses/200ExportJob_Get'
        '400':
          $ref: '#/components/responses/400'
        '401':
          $ref: '#/components/responses/401'
        '403':
          $ref: '#/components/responses/403'
        '404':
          $ref: '#/components/responses/404'
        '405':
          $ref: '#/components/responses/405'
        '500':
          $ref: '#/components/responses/500'
        '501':
          $ref: '#/components/responses/501'
        '503':
          $ref: '#/components/responses/503'
    delete:
      tags:
      - exportJob
      summary: TM Forum Deletes a ExportJob
      description: This operation deletes a ExportJob entity.
      operationId: deleteExportJob
      parameters:
      - $ref: '#/components/parameters/Id'
      responses:
        '202':
          $ref: '#/components/responses/202'
        '204':
          $ref: '#/components/responses/204'
        '400':
          $ref: '#/components/responses/400'
        '401':
          $ref: '#/components/responses/401'
        '403':
          $ref: '#/components/responses/403'
        '404':
          $ref: '#/components/responses/404'
        '405':
          $ref: '#/components/responses/405'
        '409':
          $ref: '#/components/responses/409'
        '500':
          $ref: '#/components/responses/500'
        '501':
          $ref: '#/components/responses/501'
        '503':
          $ref: '#/components/responses/503'
  /hub:
    post:
      operationId: createHub
      summary: TM Forum Create a Subscription (hub) to Receive Events
      description: Sets the communication endpoint to receive Events.
      tags:
      - events subscription
      requestBody:
        $ref: '#/components/requestBodies/Hub_FVO'
      responses:
        '201':
          $ref: '#/components/responses/Hub'
        default:
          $ref: '#/components/responses/Error'
  '/hub/{id}':
    delete:
      operationId: hubDelete
      summary: TM Forum Remove a Subscription (hub) to Receive Events
      description: ''
      tags:
      - events subscription
      parameters:
      - $ref: '#/components/parameters/Id'
      responses:
        '204':
          description: Deleted
        default:
          $ref: '#/components/responses/Error'
  /importJob:
    get:
      tags:
      - importJob
      summary: TM Forum List or Find ImportJob Objects
      description: List or find ImportJob objects
      operationId: listImportJob
      parameters:
      - $ref: '#/components/parameters/Fields'
      - $ref: '#/components/parameters/Offset'
      - $ref: '#/components/parameters/Limit'
      responses:
        '200':
          $ref: '#/components/responses/200ImportJobArray'
        '400':
          $ref: '#/components/responses/400'
        '401':
          $ref: '#/components/responses/401'
        '403':
          $ref: '#/components/responses/403'
        '404':
          $ref: '#/components/responses/404'
        '405':
          $ref: '#/components/responses/405'
        '500':
          $ref: '#/components/responses/500'
        '501':
          $ref: '#/components/responses/501'
        '503':
          $ref: '#/components/responses/503'
    post:
      tags:
      - importJob
      summary: TM Forum Creates a ImportJob
      description: This operation creates a ImportJob entity.
      operationId: createImportJob
      parameters:
      - $ref: '#/components/parameters/Fields'
      requestBody:
        $ref: '#/components/requestBodies/ImportJob_FVO'
      responses:
        '201':
          $ref: '#/components/responses/201ImportJob'
        '202':
          description: Accepted
        '400':
          $ref: '#/components/responses/400'
        '401':
          $ref: '#/components/responses/401'
        '403':
          $ref: '#/components/responses/403'
        '404':
          $ref: '#/components/responses/404'
        '405':
          $ref: '#/components/responses/405'
        '409':
          $ref: '#/components/responses/409'
        '500':
          $ref: '#/components/responses/500'
        '501':
          $ref: '#/components/responses/501'
        '503':
          $ref: '#/components/responses/503'
  '/importJob/{id}':
    get:
      tags:
      - importJob
      summary: TM Forum Retrieves a ImportJob by ID
      description: >-
        This operation retrieves a ImportJob entity. Attribute selection enabled for all first level
        attributes.
      operationId: retrieveImportJob
      parameters:
      - $ref: '#/components/parameters/Id'
      - $ref: '#/components/parameters/Fields'
      responses:
        '200':
          $ref: '#/components/responses/200ImportJob_Get'
        '400':
          $ref: '#/components/responses/400'
        '401':
          $ref: '#/components/responses/401'
        '403':
          $ref: '#/components/responses/403'
        '404':
          $ref: '#/components/responses/404'
        '405':
          $ref: '#/components/responses/405'
        '500':
          $ref: '#/components/responses/500'
        '501':
          $ref: '#/components/responses/501'
        '503':
          $ref: '#/components/responses/503'
    delete:
      tags:
      - importJob
      summary: TM Forum Deletes a ImportJob
      description: This operation deletes a ImportJob entity.
      operationId: deleteImportJob
      parameters:
      - $ref: '#/components/parameters/Id'
      responses:
        '202':
          $ref: '#/components/responses/202'
        '204':
          $ref: '#/components/responses/204'
        '400':
          $ref: '#/components/responses/400'
        '401':
          $ref: '#/components/responses/401'
        '403':
          $ref: '#/components/responses/403'
        '404':
          $ref: '#/components/responses/404'
        '405':
          $ref: '#/components/responses/405'
        '409':
          $ref: '#/components/responses/409'
        '500':
          $ref: '#/components/responses/500'
        '501':
          $ref: '#/components/responses/501'
        '503':
          $ref: '#/components/responses/503'
  /listener/categoryAttributeValueChangeEvent:
    post:
      tags:
      - notification listener
      summary: TM Forum Client Listener for Entity CategoryAttributeValueChangeEvent
      description: >-
        Example of a client listener for receiving the notification
        CategoryAttributeValueChangeEvent
      operationId: categoryAttributeValueChangeEvent
      requestBody:
        $ref: '#/components/requestBodies/CategoryAttributeValueChangeEvent'
      responses:
        '204':
          description: Notified
        default:
          $ref: '#/components/responses/Error'
  /listener/categoryCreateEvent:
    post:
      tags:
      - notification listener
      summary: TM Forum Client Listener for Entity CategoryCreateEvent
      description: Example of a client listener for receiving the notification CategoryCreateEvent
      operationId: categoryCreateEvent
      requestBody:
        $ref: '#/components/requestBodies/CategoryCreateEvent'
      responses:
        '204':
          description: Notified
        default:
          $ref: '#/components/responses/Error'
  /listener/categoryDeleteEvent:
    post:
      tags:
      - notification listener
      summary: TM Forum Client Listener for Entity CategoryDeleteEvent
      description: Example of a client listener for receiving the notification CategoryDeleteEvent
      operationId: categoryDeleteEvent
      requestBody:
        $ref: '#/components/requestBodies/CategoryDeleteEvent'
      responses:
        '204':
          description: Notified
        default:
          $ref: '#/components/responses/Error'
  /listener/categoryStateChangeEvent:
    post:
      tags:
      - notification listener
      summary: TM Forum Client Listener for Entity CategoryStateChangeEvent
      description: Example of a client listener for receiving the notification CategoryStateChangeEvent
      operationId: categoryStateChangeEvent
      requestBody:
        $ref: '#/components/requestBodies/CategoryStateChangeEvent'
      responses:
        '204':
          description: Notified
        default:
          $ref: '#/components/responses/Error'
  /listener/exportJobCreateEvent:
    post:
      tags:
      - notification listener
      summary: TM Forum Client Listener for Entity ExportJobCreateEvent
      description: Example of a client listener for receiving the notification ExportJobCreateEvent
      operationId: exportJobCreateEvent
      requestBody:
        $ref: '#/components/requestBodies/ExportJobCreateEvent'
      responses:
        '204':
          description: Notified
        default:
          $ref: '#/components/responses/Error'
  /listener/exportJobStateChangeEvent:
    post:
      tags:
      - notification listener
      summary: TM Forum Client Listener for Entity ExportJobStateChangeEvent
      description: Example of a client listener for receiving the notification ExportJobStateChangeEvent
      operationId: exportJobStateChangeEvent
      requestBody:
        $ref: '#/components/requestBodies/ExportJobStateChangeEvent'
      responses:
        '204':
          description: Notified
        default:
          $ref: '#/components/responses/Error'
  /listener/importJobCreateEvent:
    post:
      tags:
      - notification listener
      summary: TM Forum Client Listener for Entity ImportJobCreateEvent
      description: Example of a client listener for receiving the notification ImportJobCreateEvent
      operationId: importJobCreateEvent
      requestBody:
        $ref: '#/components/requestBodies/ImportJobCreateEvent'
      responses:
        '204':
          description: Notified
        default:
          $ref: '#/components/responses/Error'
  /listener/importJobStateChangeEvent:
    post:
      tags:
      - notification listener
      summary: TM Forum Client Listener for Entity ImportJobStateChangeEvent
      description: Example of a client listener for receiving the notification ImportJobStateChangeEvent
      operationId: importJobStateChangeEvent
      requestBody:
        $ref: '#/components/requestBodies/ImportJobStateChangeEvent'
      responses:
        '204':
          description: Notified
        default:
          $ref: '#/components/responses/Error'
  /listener/productCatalogAttributeValueChangeEvent:
    post:
      tags:
      - notification listener
      summary: TM Forum Client Listener for Entity ProductCatalogAttributeValueChangeEvent
      description: >-
        Example of a client listener for receiving the notification
        ProductCatalogAttributeValueChangeEvent
      operationId: productCatalogAttributeValueChangeEvent
      requestBody:
        $ref: '#/components/requestBodies/ProductCatalogAttributeValueChangeEvent'
      responses:
        '204':
          description: Notified
        default:
          $ref: '#/components/responses/Error'
  /listener/productCatalogCreateEvent:
    post:
      tags:
      - notification listener
      summary: TM Forum Client Listener for Entity ProductCatalogCreateEvent
      description: Example of a client listener for receiving the notification ProductCatalogCreateEvent
      operationId: productCatalogCreateEvent
      requestBody:
        $ref: '#/components/requestBodies/ProductCatalogCreateEvent'
      responses:
        '204':
          description: Notified
        default:
          $ref: '#/components/responses/Error'
  /listener/productCatalogDeleteEvent:
    post:
      tags:
      - notification listener
      summary: TM Forum Client Listener for Entity ProductCatalogDeleteEvent
      description: Example of a client listener for receiving the notification ProductCatalogDeleteEvent
      operationId: productCatalogDeleteEvent
      requestBody:
        $ref: '#/components/requestBodies/ProductCatalogDeleteEvent'
      responses:
        '204':
          description: Notified
        default:
          $ref: '#/components/responses/Error'
  /listener/productCatalogStateChangeEvent:
    post:
      tags:
      - notification listener
      summary: TM Forum Client Listener for Entity ProductCatalogStateChangeEvent
      description: Example of a client listener for receiving the notification ProductCatalogStateChangeEvent
      operationId: productCatalogStateChangeEvent
      requestBody:
        $ref: '#/components/requestBodies/ProductCatalogStateChangeEvent'
      responses:
        '204':
          description: Notified
        default:
          $ref: '#/components/responses/Error'
  /listener/productOfferingAttributeValueChangeEvent:
    post:
      tags:
      - notification listener
      summary: TM Forum Client Listener for Entity ProductOfferingAttributeValueChangeEvent
      description: >-
        Example of a client listener for receiving the notification
        ProductOfferingAttributeValueChangeEvent
      operationId: productOfferingAttributeValueChangeEvent
      requestBody:
        $ref: '#/components/requestBodies/ProductOfferingAttributeValueChangeEvent'
      responses:
        '204':
          description: Notified
        default:
          $ref: '#/components/responses/Error'
  /listener/productOfferingCreateEvent:
    post:
      tags:
      - notification listener
      summary: TM Forum Client Listener for Entity ProductOfferingCreateEvent
      description: Example of a client listener for receiving the notification ProductOfferingCreateEvent
      operationId: productOfferingCreateEvent
      requestBody:
        $ref: '#/components/requestBodies/ProductOfferingCreateEvent'
      responses:
        '204':
          description: Notified
        default:
          $ref: '#/components/responses/Error'
  /listener/productOfferingDeleteEvent:
    post:
      tags:
      - notification listener
      summary: TM Forum Client Listener for Entity ProductOfferingDeleteEvent
      description: Example of a client listener for receiving the notification ProductOfferingDeleteEvent
      operationId: productOfferingDeleteEvent
      requestBody:
        $ref: '#/components/requestBodies/ProductOfferingDeleteEvent'
      responses:
        '204':
          description: Notified
        default:
          $ref: '#/components/responses/Error'
  /listener/productOfferingPriceAttributeValueChangeEvent:
    post:
      tags:
      - notification listener
      summary: TM Forum Client Listener for Entity ProductOfferingPriceAttributeValueChangeEvent
      description: >-
        Example of a client listener for receiving the notification
        ProductOfferingPriceAttributeValueChangeEvent
      operationId: productOfferingPriceAttributeValueChangeEvent
      requestBody:
        $ref: '#/components/requestBodies/ProductOfferingPriceAttributeValueChangeEvent'
      responses:
        '204':
          description: Notified
        default:
          $ref: '#/components/responses/Error'
  /listener/productOfferingPriceCreateEvent:
    post:
      tags:
      - notification listener
      summary: TM Forum Client Listener for Entity ProductOfferingPriceCreateEvent
      description: Example of a client listener for receiving the notification ProductOfferingPriceCreateEvent
      operationId: productOfferingPriceCreateEvent
      requestBody:
        $ref: '#/components/requestBodies/ProductOfferingPriceCreateEvent'
      responses:
        '204':
          description: Notified
        default:
          $ref: '#/components/responses/Error'
  /listener/productOfferingPriceDeleteEvent:
    post:
      tags:
      - notification listener
      summary: TM Forum Client Listener for Entity ProductOfferingPriceDeleteEvent
      description: Example of a client listener for receiving the notification ProductOfferingPriceDeleteEvent
      operationId: productOfferingPriceDeleteEvent
      requestBody:
        $ref: '#/components/requestBodies/ProductOfferingPriceDeleteEvent'
      responses:
        '204':
          description: Notified
        default:
          $ref: '#/components/responses/Error'
  /listener/productOfferingPriceStateChangeEvent:
    post:
      tags:
      - notification listener
      summary: TM Forum Client Listener for Entity ProductOfferingPriceStateChangeEvent
      description: >-
        Example of a client listener for receiving the notification
        ProductOfferingPriceStateChangeEvent
      operationId: productOfferingPriceStateChangeEvent
      requestBody:
        $ref: '#/components/requestBodies/ProductOfferingPriceStateChangeEvent'
      responses:
        '204':
          description: Notified
        default:
          $ref: '#/components/responses/Error'
  /listener/productOfferingStateChangeEvent:
    post:
      tags:
      - notification listener
      summary: TM Forum Client Listener for Entity ProductOfferingStateChangeEvent
      description: Example of a client listener for receiving the notification ProductOfferingStateChangeEvent
      operationId: productOfferingStateChangeEvent
      requestBody:
        $ref: '#/components/requestBodies/ProductOfferingStateChangeEvent'
      responses:
        '204':
          description: Notified
        default:
          $ref: '#/components/responses/Error'
  /listener/productSpecificationAttributeValueChangeEvent:
    post:
      tags:
      - notification listener
      summary: TM Forum Client Listener for Entity ProductSpecificationAttributeValueChangeEvent
      description: >-
        Example of a client listener for receiving the notification
        ProductSpecificationAttributeValueChangeEvent
      operationId: productSpecificationAttributeValueChangeEvent
      requestBody:
        $ref: '#/components/requestBodies/ProductSpecificationAttributeValueChangeEvent'
      responses:
        '204':
          description: Notified
        default:
          $ref: '#/components/responses/Error'
  /listener/productSpecificationCreateEvent:
    post:
      tags:
      - notification listener
      summary: TM Forum Client Listener for Entity ProductSpecificationCreateEvent
      description: Example of a client listener for receiving the notification ProductSpecificationCreateEvent
      operationId: productSpecificationCreateEvent
      requestBody:
        $ref: '#/components/requestBodies/ProductSpecificationCreateEvent'
      responses:
        '204':
          description: Notified
        default:
          $ref: '#/components/responses/Error'
  /listener/productSpecificationDeleteEvent:
    post:
      tags:
      - notification listener
      summary: TM Forum Client Listener for Entity ProductSpecificationDeleteEvent
      description: Example of a client listener for receiving the notification ProductSpecificationDeleteEvent
      operationId: productSpecificationDeleteEvent
      requestBody:
        $ref: '#/components/requestBodies/ProductSpecificationDeleteEvent'
      responses:
        '204':
          description: Notified
        default:
          $ref: '#/components/responses/Error'
  /listener/productSpecificationStateChangeEvent:
    post:
      tags:
      - notification listener
      summary: TM Forum Client Listener for Entity ProductSpecificationStateChangeEvent
      description: >-
        Example of a client listener for receiving the notification
        ProductSpecificationStateChangeEvent
      operationId: productSpecificationStateChangeEvent
      requestBody:
        $ref: '#/components/requestBodies/ProductSpecificationStateChangeEvent'
      responses:
        '204':
          description: Notified
        default:
          $ref: '#/components/responses/Error'
  /productCatalog:
    get:
      tags:
      - productCatalog
      summary: TM Forum List or Find ProductCatalog Objects
      description: List or find ProductCatalog objects
      operationId: listProductCatalog
      parameters:
      - $ref: '#/components/parameters/Fields'
      - $ref: '#/components/parameters/Offset'
      - $ref: '#/components/parameters/Limit'
      responses:
        '200':
          $ref: '#/components/responses/200ProductCatalogArray'
        '400':
          $ref: '#/components/responses/400'
        '401':
          $ref: '#/components/responses/401'
        '403':
          $ref: '#/components/responses/403'
        '404':
          $ref: '#/components/responses/404'
        '405':
          $ref: '#/components/responses/405'
        '500':
          $ref: '#/components/responses/500'
        '501':
          $ref: '#/components/responses/501'
        '503':
          $ref: '#/components/responses/503'
    post:
      tags:
      - productCatalog
      summary: TM Forum Creates a ProductCatalog
      description: This operation creates a ProductCatalog entity.
      operationId: createProductCatalog
      parameters:
      - $ref: '#/components/parameters/Fields'
      requestBody:
        $ref: '#/components/requestBodies/ProductCatalog_FVO'
      responses:
        '201':
          $ref: '#/components/responses/201ProductCatalog'
        '202':
          description: Accepted
        '400':
          $ref: '#/components/responses/400'
        '401':
          $ref: '#/components/responses/401'
        '403':
          $ref: '#/components/responses/403'
        '404':
          $ref: '#/components/responses/404'
        '405':
          $ref: '#/components/responses/405'
        '409':
          $ref: '#/components/responses/409'
        '500':
          $ref: '#/components/responses/500'
        '501':
          $ref: '#/components/responses/501'
        '503':
          $ref: '#/components/responses/503'
  '/productCatalog/{id}':
    get:
      tags:
      - productCatalog
      summary: TM Forum Retrieves a ProductCatalog by ID
      description: >-
        This operation retrieves a ProductCatalog entity. Attribute selection enabled for all first
        level attributes.
      operationId: retrieveProductCatalog
      parameters:
      - $ref: '#/components/parameters/Id'
      - $ref: '#/components/parameters/Fields'
      responses:
        '200':
          $ref: '#/components/responses/200ProductCatalog_Get'
        '400':
          $ref: '#/components/responses/400'
        '401':
          $ref: '#/components/responses/401'
        '403':
          $ref: '#/components/responses/403'
        '404':
          $ref: '#/components/responses/404'
        '405':
          $ref: '#/components/responses/405'
        '500':
          $ref: '#/components/responses/500'
        '501':
          $ref: '#/components/responses/501'
        '503':
          $ref: '#/components/responses/503'
    patch:
      tags:
      - productCatalog
      summary: TM Forum Updates Partially a ProductCatalog
      description: This operation updates partially a ProductCatalog entity.
      operationId: patchProductCatalog
      parameters:
      - $ref: '#/components/parameters/Id'
      - $ref: '#/components/parameters/Fields'
      requestBody:
        $ref: '#/components/requestBodies/ProductCatalog_MVO'
      responses:
        '200':
          $ref: '#/components/responses/200ProductCatalog_Patch'
        '202':
          description: Accepted
        '400':
          $ref: '#/components/responses/400'
        '401':
          $ref: '#/components/responses/401'
        '403':
          $ref: '#/components/responses/403'
        '404':
          $ref: '#/components/responses/404'
        '405':
          $ref: '#/components/responses/405'
        '409':
          $ref: '#/components/responses/409'
        '500':
          $ref: '#/components/responses/500'
        '501':
          $ref: '#/components/responses/501'
        '503':
          $ref: '#/components/responses/503'
    delete:
      tags:
      - productCatalog
      summary: TM Forum Deletes a ProductCatalog
      description: This operation deletes a ProductCatalog entity.
      operationId: deleteProductCatalog
      parameters:
      - $ref: '#/components/parameters/Id'
      responses:
        '202':
          $ref: '#/components/responses/202'
        '204':
          $ref: '#/components/responses/204'
        '400':
          $ref: '#/components/responses/400'
        '401':
          $ref: '#/component

# --- truncated at 32 KB (559 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/tm-forum/refs/heads/main/openapi/tm-forum-tmf620-product-catalog-openapi.yaml