TMF633 Service Catalog Management
The Service Catalog API manages service specifications and service catalog entries, enabling telecom operators to expose and manage network and digital service offerings through standardized catalog APIs.
The Service Catalog API manages service specifications and service catalog entries, enabling telecom operators to expose and manage network and digital service offerings through standardized catalog APIs.
{
"swagger": "2.0",
"info": {
"title": "Service Catalog Management",
"description": "## TMF API Reference: TMF633 - Service Catalog Management\n\n Version 4.0 \n\nThe Service Catalog API is one of Catalog Management API Family. Service Catalog API goal is to provide a catalog of services. \nService Catalog API performs the following operations on the resource :\n- Retrieve an entity or a collection of entities depending on filter criteria\n- Partial update of an entity (including updating rules)\n- Create an entity (including default values and creation rules)\n- Delete an entity (for administration purposes)\n- Manage notification of events. .\n\nCopyright \u00a9 TM Forum 2020. All Rights Reserved. ",
"version": "4.0.0"
},
"host": "serverRoot",
"basePath": "/tmf-api/serviceCatalogManagement/v4/",
"schemes": [
"https"
],
"consumes": [
"application/json;charset=utf-8"
],
"produces": [
"application/json;charset=utf-8"
],
"tags": [
{
"name": "serviceCatalog"
},
{
"name": "serviceCategory"
},
{
"name": "serviceCandidate"
},
{
"name": "serviceSpecification"
},
{
"name": "importJob"
},
{
"name": "exportJob"
},
{
"name": "notification listeners (client side)"
},
{
"name": "events subscription"
}
],
"paths": {
"/serviceCatalog": {
"get": {
"operationId": "listServiceCatalog",
"summary": "List or find ServiceCatalog objects",
"description": "This operation list or find ServiceCatalog entities",
"tags": [
"serviceCatalog"
],
"parameters": [
{
"name": "fields",
"description": "Comma-separated properties to be provided in response",
"required": false,
"in": "query",
"type": "string"
},
{
"name": "offset",
"description": "Requested index for start of resources to be provided in response",
"required": false,
"in": "query",
"type": "integer"
},
{
"name": "limit",
"description": "Requested number of resources to be provided in response",
"required": false,
"in": "query",
"type": "integer"
}
],
"responses": {
"200": {
"description": "Success",
"headers": {
"X-Result-Count": {
"description": "Actual number of items returned in the response body",
"type": "integer"
},
"X-Total-Count": {
"description": "Total number of items matching criteria",
"type": "integer"
}
},
"schema": {
"type": "array",
"items": {
"$ref": "#/definitions/ServiceCatalog"
}
}
},
"400": {
"description": "Bad Request",
"schema": {
"$ref": "#/definitions/Error"
}
},
"401": {
"description": "Unauthorized",
"schema": {
"$ref": "#/definitions/Error"
}
},
"403": {
"description": "Forbidden",
"schema": {
"$ref": "#/definitions/Error"
}
},
"404": {
"description": "Not Found",
"schema": {
"$ref": "#/definitions/Error"
}
},
"405": {
"description": "Method Not allowed",
"schema": {
"$ref": "#/definitions/Error"
}
},
"409": {
"description": "Conflict",
"schema": {
"$ref": "#/definitions/Error"
}
},
"500": {
"description": "Internal Server Error",
"schema": {
"$ref": "#/definitions/Error"
}
}
}
},
"post": {
"operationId": "createServiceCatalog",
"summary": "Creates a ServiceCatalog",
"description": "This operation creates a ServiceCatalog entity.",
"tags": [
"serviceCatalog"
],
"parameters": [
{
"name": "serviceCatalog",
"description": "The ServiceCatalog to be created",
"required": true,
"schema": {
"$ref": "#/definitions/ServiceCatalog_Create"
},
"in": "body"
}
],
"responses": {
"201": {
"description": "Created",
"schema": {
"$ref": "#/definitions/ServiceCatalog"
}
},
"400": {
"description": "Bad Request",
"schema": {
"$ref": "#/definitions/Error"
}
},
"401": {
"description": "Unauthorized",
"schema": {
"$ref": "#/definitions/Error"
}
},
"403": {
"description": "Forbidden",
"schema": {
"$ref": "#/definitions/Error"
}
},
"405": {
"description": "Method Not allowed",
"schema": {
"$ref": "#/definitions/Error"
}
},
"409": {
"description": "Conflict",
"schema": {
"$ref": "#/definitions/Error"
}
},
"500": {
"description": "Internal Server Error",
"schema": {
"$ref": "#/definitions/Error"
}
}
}
}
},
"/serviceCatalog/{id}": {
"get": {
"operationId": "retrieveServiceCatalog",
"summary": "Retrieves a ServiceCatalog by ID",
"description": "This operation retrieves a ServiceCatalog entity. Attribute selection is enabled for all first level attributes.",
"tags": [
"serviceCatalog"
],
"parameters": [
{
"name": "id",
"description": "Identifier of the ServiceCatalog",
"required": true,
"type": "string",
"in": "path"
},
{
"name": "fields",
"description": "Comma-separated properties to provide in response",
"required": false,
"type": "string",
"in": "query"
}
],
"responses": {
"200": {
"description": "Success",
"schema": {
"$ref": "#/definitions/ServiceCatalog"
}
},
"400": {
"description": "Bad Request",
"schema": {
"$ref": "#/definitions/Error"
}
},
"401": {
"description": "Unauthorized",
"schema": {
"$ref": "#/definitions/Error"
}
},
"403": {
"description": "Forbidden",
"schema": {
"$ref": "#/definitions/Error"
}
},
"404": {
"description": "Not Found",
"schema": {
"$ref": "#/definitions/Error"
}
},
"405": {
"description": "Method Not allowed",
"schema": {
"$ref": "#/definitions/Error"
}
},
"409": {
"description": "Conflict",
"schema": {
"$ref": "#/definitions/Error"
}
},
"500": {
"description": "Internal Server Error",
"schema": {
"$ref": "#/definitions/Error"
}
}
}
},
"patch": {
"operationId": "patchServiceCatalog",
"summary": "Updates partially a ServiceCatalog",
"description": "This operation updates partially a ServiceCatalog entity.",
"tags": [
"serviceCatalog"
],
"parameters": [
{
"name": "id",
"description": "Identifier of the ServiceCatalog",
"required": true,
"type": "string",
"in": "path"
},
{
"name": "serviceCatalog",
"description": "The ServiceCatalog to be updated",
"required": true,
"schema": {
"$ref": "#/definitions/ServiceCatalog_Update"
},
"in": "body"
}
],
"responses": {
"200": {
"description": "Updated",
"schema": {
"$ref": "#/definitions/ServiceCatalog"
}
},
"400": {
"description": "Bad Request",
"schema": {
"$ref": "#/definitions/Error"
}
},
"401": {
"description": "Unauthorized",
"schema": {
"$ref": "#/definitions/Error"
}
},
"403": {
"description": "Forbidden",
"schema": {
"$ref": "#/definitions/Error"
}
},
"404": {
"description": "Not Found",
"schema": {
"$ref": "#/definitions/Error"
}
},
"405": {
"description": "Method Not allowed",
"schema": {
"$ref": "#/definitions/Error"
}
},
"409": {
"description": "Conflict",
"schema": {
"$ref": "#/definitions/Error"
}
},
"500": {
"description": "Internal Server Error",
"schema": {
"$ref": "#/definitions/Error"
}
}
}
},
"delete": {
"operationId": "deleteServiceCatalog",
"summary": "Deletes a ServiceCatalog",
"description": "This operation deletes a ServiceCatalog entity.",
"tags": [
"serviceCatalog"
],
"parameters": [
{
"name": "id",
"description": "Identifier of the ServiceCatalog",
"required": true,
"type": "string",
"in": "path"
}
],
"responses": {
"204": {
"description": "Deleted"
},
"400": {
"description": "Bad Request",
"schema": {
"$ref": "#/definitions/Error"
}
},
"401": {
"description": "Unauthorized",
"schema": {
"$ref": "#/definitions/Error"
}
},
"403": {
"description": "Forbidden",
"schema": {
"$ref": "#/definitions/Error"
}
},
"404": {
"description": "Not Found",
"schema": {
"$ref": "#/definitions/Error"
}
},
"405": {
"description": "Method Not allowed",
"schema": {
"$ref": "#/definitions/Error"
}
},
"409": {
"description": "Conflict",
"schema": {
"$ref": "#/definitions/Error"
}
},
"500": {
"description": "Internal Server Error",
"schema": {
"$ref": "#/definitions/Error"
}
}
}
}
},
"/serviceCategory": {
"get": {
"operationId": "listServiceCategory",
"summary": "List or find ServiceCategory objects",
"description": "This operation list or find ServiceCategory entities",
"tags": [
"serviceCategory"
],
"parameters": [
{
"name": "fields",
"description": "Comma-separated properties to be provided in response",
"required": false,
"in": "query",
"type": "string"
},
{
"name": "offset",
"description": "Requested index for start of resources to be provided in response",
"required": false,
"in": "query",
"type": "integer"
},
{
"name": "limit",
"description": "Requested number of resources to be provided in response",
"required": false,
"in": "query",
"type": "integer"
}
],
"responses": {
"200": {
"description": "Success",
"headers": {
"X-Result-Count": {
"description": "Actual number of items returned in the response body",
"type": "integer"
},
"X-Total-Count": {
"description": "Total number of items matching criteria",
"type": "integer"
}
},
"schema": {
"type": "array",
"items": {
"$ref": "#/definitions/ServiceCategory"
}
}
},
"400": {
"description": "Bad Request",
"schema": {
"$ref": "#/definitions/Error"
}
},
"401": {
"description": "Unauthorized",
"schema": {
"$ref": "#/definitions/Error"
}
},
"403": {
"description": "Forbidden",
"schema": {
"$ref": "#/definitions/Error"
}
},
"404": {
"description": "Not Found",
"schema": {
"$ref": "#/definitions/Error"
}
},
"405": {
"description": "Method Not allowed",
"schema": {
"$ref": "#/definitions/Error"
}
},
"409": {
"description": "Conflict",
"schema": {
"$ref": "#/definitions/Error"
}
},
"500": {
"description": "Internal Server Error",
"schema": {
"$ref": "#/definitions/Error"
}
}
}
},
"post": {
"operationId": "createServiceCategory",
"summary": "Creates a ServiceCategory",
"description": "This operation creates a ServiceCategory entity.",
"tags": [
"serviceCategory"
],
"parameters": [
{
"name": "serviceCategory",
"description": "The ServiceCategory to be created",
"required": true,
"schema": {
"$ref": "#/definitions/ServiceCategory_Create"
},
"in": "body"
}
],
"responses": {
"201": {
"description": "Created",
"schema": {
"$ref": "#/definitions/ServiceCategory"
}
},
"400": {
"description": "Bad Request",
"schema": {
"$ref": "#/definitions/Error"
}
},
"401": {
"description": "Unauthorized",
"schema": {
"$ref": "#/definitions/Error"
}
},
"403": {
"description": "Forbidden",
"schema": {
"$ref": "#/definitions/Error"
}
},
"405": {
"description": "Method Not allowed",
"schema": {
"$ref": "#/definitions/Error"
}
},
"409": {
"description": "Conflict",
"schema": {
"$ref": "#/definitions/Error"
}
},
"500": {
"description": "Internal Server Error",
"schema": {
"$ref": "#/definitions/Error"
}
}
}
}
},
"/serviceCategory/{id}": {
"get": {
"operationId": "retrieveServiceCategory",
"summary": "Retrieves a ServiceCategory by ID",
"description": "This operation retrieves a ServiceCategory entity. Attribute selection is enabled for all first level attributes.",
"tags": [
"serviceCategory"
],
"parameters": [
{
"name": "id",
"description": "Identifier of the ServiceCategory",
"required": true,
"type": "string",
"in": "path"
},
{
"name": "fields",
"description": "Comma-separated properties to provide in response",
"required": false,
"type": "string",
"in": "query"
}
],
"responses": {
"200": {
"description": "Success",
"schema": {
"$ref": "#/definitions/ServiceCategory"
}
},
"400": {
"description": "Bad Request",
"schema": {
"$ref": "#/definitions/Error"
}
},
"401": {
"description": "Unauthorized",
"schema": {
"$ref": "#/definitions/Error"
}
},
"403": {
"description": "Forbidden",
"schema": {
"$ref": "#/definitions/Error"
}
},
"404": {
"description": "Not Found",
"schema": {
"$ref": "#/definitions/Error"
}
},
"405": {
"description": "Method Not allowed",
"schema": {
"$ref": "#/definitions/Error"
}
},
"409": {
"description": "Conflict",
"schema": {
"$ref": "#/definitions/Error"
}
},
"500": {
"description": "Internal Server Error",
"schema": {
"$ref": "#/definitions/Error"
}
}
}
},
"patch": {
"operationId": "patchServiceCategory",
"summary": "Updates partially a ServiceCategory",
"description": "This operation updates partially a ServiceCategory entity.",
"tags": [
"serviceCategory"
],
"parameters": [
{
"name": "id",
"description": "Identifier of the ServiceCategory",
"required": true,
"type": "string",
"in": "path"
},
{
"name": "serviceCategory",
"description": "The ServiceCategory to be updated",
"required": true,
"schema": {
"$ref": "#/definitions/ServiceCategory_Update"
},
"in": "body"
}
],
"responses": {
"200": {
"description": "Updated",
"schema": {
"$ref": "#/definitions/ServiceCategory"
}
},
"400": {
"description": "Bad Request",
"schema": {
"$ref": "#/definitions/Error"
}
},
"401": {
"description": "Unauthorized",
"schema": {
"$ref": "#/definitions/Error"
}
},
"403": {
"description": "Forbidden",
"schema": {
"$ref": "#/definitions/Error"
}
},
"404": {
"description": "Not Found",
"schema": {
"$ref": "#/definitions/Error"
}
},
"405": {
"description": "Method Not allowed",
"schema": {
"$ref": "#/definitions/Error"
}
},
"409": {
"description": "Conflict",
"schema": {
"$ref": "#/definitions/Error"
}
},
"500": {
"description": "Internal Server Error",
"schema": {
"$ref": "#/definitions/Error"
}
}
}
},
"delete": {
"operationId": "deleteServiceCategory",
"summary": "Deletes a ServiceCategory",
"description": "This operation deletes a ServiceCategory entity.",
"tags": [
"serviceCategory"
],
"parameters": [
{
"name": "id",
"description": "Identifier of the ServiceCategory",
"required": true,
"type": "string",
"in": "path"
}
],
"responses": {
"204": {
"description": "Deleted"
},
"400": {
"description": "Bad Request",
"schema": {
"$ref": "#/definitions/Error"
}
},
"401": {
"description": "Unauthorized",
"schema": {
"$ref": "#/definitions/Error"
}
},
"403": {
"description": "Forbidden",
"schema": {
"$ref": "#/definitions/Error"
}
},
"404": {
"description": "Not Found",
"schema": {
"$ref": "#/definitions/Error"
}
},
"405": {
"description": "Method Not allowed",
"schema": {
"$ref": "#/definitions/Error"
}
},
"409": {
"description": "Conflict",
"schema": {
"$ref": "#/definitions/Error"
}
},
"500": {
"description": "Internal Server Error",
"schema": {
"$ref": "#/definitions/Error"
}
}
}
}
},
"/serviceCandidate": {
"get": {
"operationId": "listServiceCandidate",
"summary": "List or find ServiceCandidate objects",
"description": "This operation list or find ServiceCandidate entities",
"tags": [
"serviceCandidate"
],
"parameters": [
{
"name": "fields",
"description": "Comma-separated properties to be provided in response",
"required": false,
"in": "query",
"type": "string"
},
{
"name": "offset",
"description": "Requested index for start of resources to be provided in response",
"required": false,
"in": "query",
"type": "integer"
},
{
"name": "limit",
"description": "Requested number of resources to be provided in response",
"required": false,
"in": "query",
"type": "integer"
}
],
"responses": {
"200": {
"description": "Success",
"headers": {
"X-Result-Count": {
"description": "Actual number of items returned in the response body",
"type": "integer"
},
"X-Total-Count": {
"description": "Total number of items matching criteria",
"type": "integer"
}
},
"schema": {
"type": "array",
"items": {
"$ref": "#/definitions/ServiceCandidate"
}
}
},
# --- truncated at 32 KB (261 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/tm-forum/refs/heads/main/openapi/tm-forum-tmf633-service-catalog-openapi.json