openapi: 3.0.1 info: title: Provisioning MnS version: 16.5.0 description: >- OAS 3.0.1 definition of the Provisioning MnS © 2020, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). All rights reserved. externalDocs: description: 3GPP TS 28.532; Generic management services url: http://www.3gpp.org/ftp/Specs/archive/28_series/28.532/ servers: - url: '{MnSRoot}/ProvMnS/{MnSVersion}/{URI-LDN-first-part}' variables: MnSRoot: description: See clause 4.4.2 of TS 32.158 default: http://example.com/3GPPManagement MnSVersion: description: Version number of the OpenAPI definition default: XXX URI-LDN-first-part: description: See clause 4.4.2 of TS 32.158 default: '' paths: '/{className}={id}': parameters: - name: className in: path required: true schema: type: string - name: id in: path required: true schema: type: string put: summary: Replaces a complete single resource or creates it if it does not exist description: >- With HTTP PUT a complete resource is replaced or created if it does not exist. The target resource is identified by the target URI. requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/Resource' responses: '200': description: >- Success case ("200 OK"). This status code shall be returned when the resource is replaced, and when the replaced resource representation is not identical to the resource representation in the request. This status code may be retourned when the resource is updated and when the updated resource representation is identical to the resource representation in the request. The representation of the updated resource is returned in the response message body. content: application/json: schema: $ref: '#/components/schemas/Resource' '201': description: >- Success case ("201 Created"). This status code shall be returned when the resource is created. The representation of the created resource is returned in the response message body. content: application/json: schema: $ref: '#/components/schemas/Resource' '204': description: >- Success case ("204 No Content"). This status code may be returned only when the replaced resource representation is identical to the representation in the request. The response has no message body. default: description: Error case. content: application/json: schema: $ref: 'comDefs.yaml#/components/schemas/ErrorResponse' callbacks: notifyMOICreation: '{request.body#/notificationRecipientAddress}': post: requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/NotifyMoiCreation' responses: '204': description: >- Success case ("204 No Content"). The notification is successfully delivered. The response has no message body. default: description: Error case. content: application/json: schema: $ref: 'comDefs.yaml#/components/schemas/ErrorResponse' notifyMOIDeletion: '{request.body#/notificationRecipientAddress}': post: requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/NotifyMoiDeletion' responses: '204': description: >- Success case ("204 No Content"). The notification is successfully delivered. The response has no message body. default: description: Error case. content: application/json: schema: $ref: 'comDefs.yaml#/components/schemas/ErrorResponse' notifyMOIAttributeValueChanges: '{request.body#/notificationRecipientAddress}': post: requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/NotifyMoiAttributeValueChanges' responses: '204': description: >- Success case ("204 No Content"). The notification is successfully delivered. The response has no message body. default: description: Error case. content: application/json: schema: $ref: 'comDefs.yaml#/components/schemas/ErrorResponse' notifyMOIChanges: '{request.body#/notificationRecipientAddress}': post: requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/NotifyMoiChanges' responses: '204': description: >- Success case ("204 No Content"). The notification is successfully delivered. The response has no message body. default: description: Error case. content: application/json: schema: $ref: 'comDefs.yaml#/components/schemas/ErrorResponse' get: summary: Reads one or multiple resources description: >- With HTTP GET resources are read. The resources to be retrieved are identified with the target URI. The attributes and fields parameter of the query components allow to select the resource properties to be returned. parameters: - name: scope in: query description: >- This parameter extends the set of targeted resources beyond the base resource identified with the path component of the URI. No scoping mechanism is specified in the present document. required: false schema: $ref: '#/components/schemas/Scope' style: form explode: true - name: filter in: query description: >- This parameter reduces the targeted set of resources by applying a filter to the scoped set of resource representations. Only resource representations for which the filter construct evaluates to "true" are targeted. No filter language is specified in the present document. required: false schema: $ref: 'comDefs.yaml#/components/schemas/Filter' - name: attributes in: query description: >- This parameter specifies the attributes of the scoped resources that are returned. required: true schema: type: array items: type: string style: form explode: false - name: fields in: query description: >- This parameter specifies the attribute field of the scoped resources that are returned. required: false schema: type: array items: type: string style: form explode: false responses: '200': description: >- Success case ("200 OK"). The resources identified in the request for retrieval are returned in the response message body. In case the attributes or fields query parameters are used, only the selected attributes or sub-attributes are returned. The response message body is constructed according to the hierarchical response construction method (TS 32.158 [15]). content: application/json: schema: $ref: '#/components/schemas/Resource' default: description: Error case. content: application/json: schema: $ref: 'comDefs.yaml#/components/schemas/ErrorResponse' patch: summary: Patches one or multiple resources description: >- With HTTP PATCH resources are created, updated or deleted. The resources to be modified are identified with the target URI (base resource) and the patch document included in the request message body. requestBody: description: >- The request body describes changes to be made to the target resources. The following patch media types are available - "application/merge-patch+json" (RFC 7396) - "application/3gpp-merge-patch+json" (TS 32.158) - "application/json-patch+json" (RFC 6902) - "application/3gpp-json-patch+json" (TS 32.158) required: true content: application/merge-patch+json: schema: $ref: '#/components/schemas/Resource' application/3gpp-merge-patch+json: schema: $ref: '#/components/schemas/Resource' application/json-patch+json: schema: type: array items: type: object application/3gpp-json-patch+json: schema: type: array items: type: object responses: '200': description: >- Success case ("200 OK"). This status code is returned when the updated the resource representations shall be returned for some reason. The resource representations are returned in the response message body. The response message body is constructed according to the hierarchical response construction method (TS 32.158 [15]) content: application/json: schema: $ref: '#/components/schemas/Resource' '204': description: >- Success case ("204 No Content"). This status code is returned when there is no need to return the updated resource representations. The response message body is empty. default: description: Error case. content: application/json: schema: $ref: 'comDefs.yaml#/components/schemas/ErrorResponse' delete: summary: Deletes one or multiple resources description: >- With HTTP DELETE resources are deleted. The resources to be deleted are identified with the target URI. parameters: - name: scope in: query description: >- This parameter extends the set of targeted resources beyond the base resource identified with the path component of the URI. No scoping mechanism is specified in the present document. required: false schema: $ref: '#/components/schemas/Scope' style: form explode: true - name: filter in: query description: >- This parameter reduces the targeted set of resources by applying a filter to the scoped set of resource representations. Only resources representations for which the filter construct evaluates to "true" are returned. No filter language is specified in the present document. required: false schema: $ref: 'comDefs.yaml#/components/schemas/Filter' responses: '200': description: >- Success case ("200 OK"). This status code shall be returned, when query parameters are present in the request and one or multiple resources are deleted. The URIs of the deleted resources are returned in the response message body. '204': description: >- Success case ("204 No Content"). This status code shall be returned, when no query parameters are present in the request and only one resource is deleted. The message body is empty. content: application/json: schema: type: array items: $ref: 'comDefs.yaml#/components/schemas/Uri' default: description: Error case. content: application/json: schema: $ref: 'comDefs.yaml#/components/schemas/ErrorResponse' components: schemas: CorrelatedNotification: type: object properties: source: $ref: 'comDefs.yaml#/components/schemas/Dn' notificationIds: type: array items: $ref: 'comDefs.yaml#/components/schemas/NotificationId' required: - source - notificationIds CmNotificationTypes: type: string enum: - notifyMOICreation - notifyMOIDeletion - notifyMOIAttributeValueChanges - notifyMOIChanges SourceIndicator: type: string enum: - RESOURCE_OPERATION - MANAGEMENT_OPERATION - SON_OPERATION - UNKNOWN Operation: type: string enum: - CREATE - DELETE - REPLACE ScopeType: type: string enum: - BASE_ONLY - BASE_NTH_LEVEL - BASE_SUBTREE - BASE_ALL Scope: type: object properties: scopeType: $ref: '#/components/schemas/ScopeType' scopeLevel: type: integer Resource: oneOf: - type: object properties: id: type: string attributes: type: object additionalProperties: type: array items: type: object - anyOf: - $ref: 'genericNrm.yaml#/components/schemas/resources-genericNrm' - $ref: 'nrNrm.yaml#/components/schemas/resources-nrNrm' - $ref: '5gcNrm.yaml#/components/schemas/resources-5gcNrm' - $ref: 'sliceNrm.yaml#/components/schemas/resources-sliceNrm' MoiChange: type: object properties: notificationId: $ref: 'comDefs.yaml#/components/schemas/NotificationId' correlatedNotifications: type: array items: $ref: '#/components/schemas/CorrelatedNotification' additionalText: type: string sourceIndicator: $ref: '#/components/schemas/SourceIndicator' path: $ref: 'comDefs.yaml#/components/schemas/Uri' operation: $ref: '#/components/schemas/Operation' value: oneOf: - $ref: 'comDefs.yaml#/components/schemas/AttributeNameValuePairSet' - $ref: 'comDefs.yaml#/components/schemas/AttributeValueChangeSet' NotifyMoiCreation: allOf: - $ref: 'comDefs.yaml#/components/schemas/NotificationHeader' - type: object properties: correlatedNotifications: type: array items: $ref: '#/components/schemas/CorrelatedNotification' additionalText: type: string sourceIndicator: $ref: '#/components/schemas/SourceIndicator' attributeList: $ref: 'comDefs.yaml#/components/schemas/AttributeNameValuePairSet' NotifyMoiDeletion: allOf: - $ref: 'comDefs.yaml#/components/schemas/NotificationHeader' - type: object properties: correlatedNotifications: type: array items: $ref: '#/components/schemas/CorrelatedNotification' additionalText: type: string sourceIndicator: $ref: '#/components/schemas/SourceIndicator' attributeList: $ref: 'comDefs.yaml#/components/schemas/AttributeNameValuePairSet' NotifyMoiAttributeValueChanges: allOf: - $ref: 'comDefs.yaml#/components/schemas/NotificationHeader' - type: object properties: correlatedNotifications: type: array items: $ref: '#/components/schemas/CorrelatedNotification' additionalText: type: string sourceIndicator: $ref: '#/components/schemas/SourceIndicator' attributeListValueChanges: $ref: 'comDefs.yaml#/components/schemas/AttributeValueChangeSet' required: - attributeListValueChanges NotifyMoiChanges: allOf: - $ref: 'comDefs.yaml#/components/schemas/NotificationHeader' - type: object properties: moiChanges: type: array items: $ref: '#/components/schemas/MoiChange' required: - moiChanges