description: Management operations of repositories
- name: 'Admin'
description: Management operations of Administration items
+ - name: 'K8s Cluster'
+ description: Management operations of k8s Cluster
+ - name: 'KSU'
+ description: Management operations of KSU
+ - name: 'OKA packages'
+ description: Management operations of OKA packages
security:
- bearerAuth: []
$ref: '#/components/responses/UnexpectedError'
# END NS Packages
+# BEGIN Ns Config Templates
+ '/nsd/v1/ns_config_template':
+ get:
+ tags:
+ - "Ns packages"
+ summary: Query information about multiple Ns config templates
+ description: Query information about multiple Ns config templates
+ operationId: getNsconfigtemplates
+ responses:
+ '200':
+ description: OK
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/ArrayOfNsConfigTemplateInfo'
+ application/yaml:
+ schema:
+ $ref: '#/components/schemas/ArrayOfNsConfigTemplateInfo'
+ '400':
+ $ref: '#/components/responses/BadRequest'
+ '401':
+ $ref: '#/components/responses/Unauthorized'
+ '403':
+ $ref: '#/components/responses/Forbidden'
+ '404':
+ $ref: '#/components/responses/NotFound'
+ '405':
+ $ref: '#/components/responses/MethodNotAllowed'
+ '406':
+ $ref: '#/components/responses/NotAcceptable'
+ '409':
+ $ref: '#/components/responses/Conflict'
+ '422':
+ $ref: '#/components/responses/UnprocessableEntity'
+ '500':
+ $ref: '#/components/responses/InternalServerError'
+ '503':
+ $ref: '#/components/responses/ServiceUnavailable'
+ '5XX':
+ $ref: '#/components/responses/UnexpectedError'
+ default:
+ $ref: '#/components/responses/UnexpectedError'
+ post:
+ tags:
+ - "Ns packages"
+ summary: Create a new Ns config template
+ description: |
+ NS config templates are specific configuration templates
+ (instantiation parameters) to be applied to NS packages.
+ when they are instantiated.
+ Template consist of NSD ID, template name and instantiation parameters.
+ operationId: addNsconfigtemplate
+ requestBody:
+ $ref: '#/components/requestBodies/CreateNsConfigTemplateInfoRequest'
+ responses:
+ '201':
+ description: Created
+ headers:
+ Location:
+ schema:
+ type: string
+ format: uri
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/ObjectId'
+ application/yaml:
+ schema:
+ $ref: '#/components/schemas/ObjectId'
+ '400':
+ $ref: '#/components/responses/BadRequest'
+ '401':
+ $ref: '#/components/responses/Unauthorized'
+ '403':
+ $ref: '#/components/responses/Forbidden'
+ '404':
+ $ref: '#/components/responses/NotFound'
+ '405':
+ $ref: '#/components/responses/MethodNotAllowed'
+ '406':
+ $ref: '#/components/responses/NotAcceptable'
+ '409':
+ $ref: '#/components/responses/Conflict'
+ '422':
+ $ref: '#/components/responses/UnprocessableEntity'
+ '500':
+ $ref: '#/components/responses/InternalServerError'
+ '503':
+ $ref: '#/components/responses/ServiceUnavailable'
+ '5XX':
+ $ref: '#/components/responses/UnexpectedError'
+ default:
+ $ref: '#/components/responses/UnexpectedError'
+ '/nsd/v1/ns_config_template/{nsconfigTemplateId}':
+ parameters:
+ - name: nsconfigTemplateId
+ in: path
+ required: true
+ description: Ns config template ID
+ schema:
+ type: string
+ get:
+ tags:
+ - "Ns packages"
+ summary: Read information about an individual Ns config template resource
+ description: Read information about an individual Ns config template resource
+ operationId: getNsconfigtemplate
+ responses:
+ '200':
+ description: OK
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/NsConfigTemplateInfo'
+ application/yaml:
+ schema:
+ $ref: '#/components/schemas/NsConfigTemplateInfo'
+ '400':
+ $ref: '#/components/responses/BadRequest'
+ '401':
+ $ref: '#/components/responses/Unauthorized'
+ '403':
+ $ref: '#/components/responses/Forbidden'
+ '404':
+ $ref: '#/components/responses/NotFound'
+ '405':
+ $ref: '#/components/responses/MethodNotAllowed'
+ '406':
+ $ref: '#/components/responses/NotAcceptable'
+ '409':
+ $ref: '#/components/responses/Conflict'
+ '422':
+ $ref: '#/components/responses/UnprocessableEntity'
+ '500':
+ $ref: '#/components/responses/InternalServerError'
+ '503':
+ $ref: '#/components/responses/ServiceUnavailable'
+ '5XX':
+ $ref: '#/components/responses/UnexpectedError'
+ default:
+ $ref: '#/components/responses/UnexpectedError'
+ delete:
+ tags:
+ - "Ns packages"
+ summary: Delete an individual NS config template
+ description: Delete an individual NS config template
+ operationId: deleteNsconfigtemplate
+ responses:
+ '204':
+ description: No Content
+ '400':
+ $ref: '#/components/responses/BadRequest'
+ '401':
+ $ref: '#/components/responses/Unauthorized'
+ '403':
+ $ref: '#/components/responses/Forbidden'
+ '404':
+ $ref: '#/components/responses/NotFound'
+ '405':
+ $ref: '#/components/responses/MethodNotAllowed'
+ '406':
+ $ref: '#/components/responses/NotAcceptable'
+ '409':
+ $ref: '#/components/responses/Conflict'
+ '422':
+ $ref: '#/components/responses/UnprocessableEntity'
+ '500':
+ $ref: '#/components/responses/InternalServerError'
+ '503':
+ $ref: '#/components/responses/ServiceUnavailable'
+ '5XX':
+ $ref: '#/components/responses/UnexpectedError'
+ default:
+ $ref: '#/components/responses/UnexpectedError'
+ '/nsd/v1/ns_config_template/{nsconfigTemplateId}/template_content':
+ parameters:
+ - name: nsconfigTemplateId
+ in: path
+ required: true
+ description: Ns config template ID
+ schema:
+ type: string
+ get:
+ tags:
+ - "Ns packages"
+ summary: Fetch the content of a Ns config template
+ description: Fetch the content of a Ns config template
+ operationId: getTemplatecontent
+ responses:
+ '200':
+ description: OK
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/NsConfigTemplateInfo'
+ application/yaml:
+ schema:
+ $ref: '#/components/schemas/NsConfigTemplateInfo'
+ '206':
+ description: Partial Content
+ headers:
+ Content-Range:
+ schema:
+ type: string
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/NsConfigTemplateInfo'
+ application/yaml:
+ schema:
+ $ref: '#/components/schemas/NsConfigTemplateInfo'
+ '400':
+ $ref: '#/components/responses/BadRequest'
+ '401':
+ $ref: '#/components/responses/Unauthorized'
+ '403':
+ $ref: '#/components/responses/Forbidden'
+ '404':
+ $ref: '#/components/responses/NotFound'
+ '405':
+ $ref: '#/components/responses/MethodNotAllowed'
+ '406':
+ $ref: '#/components/responses/NotAcceptable'
+ '409':
+ $ref: '#/components/responses/Conflict'
+ '422':
+ $ref: '#/components/responses/UnprocessableEntity'
+ '500':
+ $ref: '#/components/responses/InternalServerError'
+ '503':
+ $ref: '#/components/responses/ServiceUnavailable'
+ '5XX':
+ $ref: '#/components/responses/UnexpectedError'
+ default:
+ $ref: '#/components/responses/UnexpectedError'
+ put:
+ tags:
+ - "Ns packages"
+ summary: Modify the content of a Ns config template
+ description: |
+ Template name and instantiation parameters
+ can be modified.
+ operationId: updateTemplatecontent
+ requestBody:
+ $ref: '#/components/requestBodies/NsConfigTemplateInfoModifications'
+ responses:
+ '202':
+ description: Accepted
+ '204':
+ description: No Content
+ '400':
+ $ref: '#/components/responses/BadRequest'
+ '401':
+ $ref: '#/components/responses/Unauthorized'
+ '403':
+ $ref: '#/components/responses/Forbidden'
+ '404':
+ $ref: '#/components/responses/NotFound'
+ '405':
+ $ref: '#/components/responses/MethodNotAllowed'
+ '406':
+ $ref: '#/components/responses/NotAcceptable'
+ '409':
+ $ref: '#/components/responses/Conflict'
+ '422':
+ $ref: '#/components/responses/UnprocessableEntity'
+ '500':
+ $ref: '#/components/responses/InternalServerError'
+ '503':
+ $ref: '#/components/responses/ServiceUnavailable'
+ '5XX':
+ $ref: '#/components/responses/UnexpectedError'
+ default:
+ $ref: '#/components/responses/UnexpectedError'
+# END Ns Config Templates
+
# BEGIN VNF Packages
'/vnfpkgm/v1/vnf_packages':
get:
description: NS Instance ID
schema:
type: string
+ - name: vcaStatusRefresh
+ in: query
+ required: false
+ description: Set to true if vca status needs to be refreshed.
+ schema:
+ type: boolean
get:
tags:
- "NS instances"
$ref: '#/components/responses/UnexpectedError'
default:
$ref: '#/components/responses/UnexpectedError'
- '/nslcm/v1/ns_instances/{nsInstanceId}/terminate':
+ '/nslcm/v1/ns_instances/{nsInstanceId}/heal':
parameters:
- name: nsInstanceId
in: path
post:
tags:
- "NS instances"
- summary: Terminate a NS instance
+ summary: Heal a NS instance
description: |
- Terminate a NS instance. The precondition is that the NS instance must have
+ Heal a NS instance. The precondition is that the NS instance must have
been created and must be in INSTANTIATED state. As a result of the
success of this operation, the NFVO creates a "NS Lifecycle Operation
- Occurrence" resource for the request, and the NS instance state becomes
- NOT_INSTANTIATED.
- operationId: terminateNSinstance
+ Occurrence" resource for the request, and the NS instance state remains
+ INSTANTIATED.
+ operationId: healNSinstance
requestBody:
- # Request data is not required
- $ref: '#/components/requestBodies/TerminateNsRequest'
+ $ref: '#/components/requestBodies/HealNsRequest'
responses:
'202':
description: Accepted
schema:
type: string
format: uri
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/ObjectId'
- application/yaml:
- schema:
- $ref: '#/components/schemas/ObjectId'
'400':
$ref: '#/components/responses/BadRequest'
'401':
$ref: '#/components/responses/UnexpectedError'
default:
$ref: '#/components/responses/UnexpectedError'
- '/nslcm/v1/ns_instances/{nsInstanceId}/action':
+ '/nslcm/v1/ns_instances/{nsInstanceId}/migrate':
parameters:
- name: nsInstanceId
in: path
post:
tags:
- "NS instances"
- summary: Execute an action on a NS instance
+ summary: Migrate VNFs in a NS instance
description: |
- Execute an action on a NS instance.
- The NS instance must have been created and must be in INSTANTIATED state.
- operationId: actionOnNSinstance
+ Migrate the VNFs and VDUs in a NS instance. The precondition is
+ that the NS instance must have been created and must be in
+ INSTANTIATED state. As a result of the success of this operation,
+ the NFVO creates a "NS Lifecycle Operation Occurrence" resource
+ for the request, and the NS instance state remains INSTANTIATED.
+ operationId: migrateNSinstance
requestBody:
- content:
- application/json:
- schema:
+ $ref: '#/components/requestBodies/NSinstanceMigrateRequest'
+ responses:
+ '202':
+ description: Accepted
+ headers:
+ Location:
+ description: |
+ It must point to the new "NS Lifecycle Operation Occurrence"
+ resource, i.e. an URI like ".../ns_lcm_op_occs/{nsLcmOpOccId}"
+ schema:
+ type: string
+ format: uri
+ '400':
+ $ref: '#/components/responses/BadRequest'
+ '401':
+ $ref: '#/components/responses/Unauthorized'
+ '403':
+ $ref: '#/components/responses/Forbidden'
+ '404':
+ $ref: '#/components/responses/NotFound'
+ '405':
+ $ref: '#/components/responses/MethodNotAllowed'
+ '406':
+ $ref: '#/components/responses/NotAcceptable'
+ '409':
+ $ref: '#/components/responses/Conflict'
+ '422':
+ $ref: '#/components/responses/UnprocessableEntity'
+ '500':
+ $ref: '#/components/responses/InternalServerError'
+ '503':
+ $ref: '#/components/responses/ServiceUnavailable'
+ '5XX':
+ $ref: '#/components/responses/UnexpectedError'
+ default:
+ $ref: '#/components/responses/UnexpectedError'
+ '/nslcm/v1/ns_instances/{nsInstanceId}/terminate':
+ parameters:
+ - name: nsInstanceId
+ in: path
+ required: true
+ description: NS Instance ID
+ schema:
+ type: string
+ post:
+ tags:
+ - "NS instances"
+ summary: Terminate a NS instance
+ description: |
+ Terminate a NS instance. The precondition is that the NS instance must have
+ been created and must be in INSTANTIATED state. As a result of the
+ success of this operation, the NFVO creates a "NS Lifecycle Operation
+ Occurrence" resource for the request, and the NS instance state becomes
+ NOT_INSTANTIATED.
+ operationId: terminateNSinstance
+ requestBody:
+ # Request data is not required
+ $ref: '#/components/requestBodies/TerminateNsRequest'
+ responses:
+ '202':
+ description: Accepted
+ headers:
+ Location:
+ description: |
+ It must point to the new "NS Lifecycle Operation Occurrence"
+ resource, i.e. an URI like ".../ns_lcm_op_occs/{nsLcmOpOccId}"
+ schema:
+ type: string
+ format: uri
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/ObjectId'
+ application/yaml:
+ schema:
+ $ref: '#/components/schemas/ObjectId'
+ '400':
+ $ref: '#/components/responses/BadRequest'
+ '401':
+ $ref: '#/components/responses/Unauthorized'
+ '403':
+ $ref: '#/components/responses/Forbidden'
+ '404':
+ $ref: '#/components/responses/NotFound'
+ '405':
+ $ref: '#/components/responses/MethodNotAllowed'
+ '406':
+ $ref: '#/components/responses/NotAcceptable'
+ '409':
+ $ref: '#/components/responses/Conflict'
+ '422':
+ $ref: '#/components/responses/UnprocessableEntity'
+ '500':
+ $ref: '#/components/responses/InternalServerError'
+ '503':
+ $ref: '#/components/responses/ServiceUnavailable'
+ '5XX':
+ $ref: '#/components/responses/UnexpectedError'
+ default:
+ $ref: '#/components/responses/UnexpectedError'
+ '/nslcm/v1/ns_instances/{nsInstanceId}/action':
+ parameters:
+ - name: nsInstanceId
+ in: path
+ required: true
+ description: NS Instance ID
+ schema:
+ type: string
+ post:
+ tags:
+ - "NS instances"
+ summary: Execute an action on a NS instance
+ description: |
+ Execute an action on a NS instance.
+ The NS instance must have been created and must be in INSTANTIATED state.
+ operationId: actionOnNSinstance
+ requestBody:
+ content:
+ application/json:
+ schema:
$ref: '#/components/schemas/NSinstanceActionRequest'
application/yaml:
schema:
$ref: '#/components/responses/UnexpectedError'
default:
$ref: '#/components/responses/UnexpectedError'
+ '/nslcm/v1/ns_instances/{nsInstanceId}/update':
+ parameters:
+ - name: nsInstanceId
+ in: path
+ required: true
+ description: NS Instance ID
+ schema:
+ type: string
+ post:
+ tags:
+ - "NS instances"
+ summary: Update a NS instance
+ description: |
+ Update a NS instance. The precondition is that the NS instance must have
+ been created and must be in INSTANTIATED state. As a result of the
+ success of this operation, the NFVO creates a "NS Lifecycle Operation
+ Occurrence" resource for the request, and the NS instance state remains
+ INSTANTIATED.
+ operationId: updateNSinstance
+ requestBody:
+ $ref: '#/components/requestBodies/UpdateNsRequest'
+ responses:
+ '202':
+ description: Accepted
+ headers:
+ Location:
+ description: |
+ It must point to the new "NS Lifecycle Operation Occurrence"
+ resource, i.e. an URI like ".../ns_lcm_op_occs/{nsLcmOpOccId}"
+ schema:
+ type: string
+ format: uri
+ '400':
+ $ref: '#/components/responses/BadRequest'
+ '401':
+ $ref: '#/components/responses/Unauthorized'
+ '403':
+ $ref: '#/components/responses/Forbidden'
+ '404':
+ $ref: '#/components/responses/NotFound'
+ '405':
+ $ref: '#/components/responses/MethodNotAllowed'
+ '406':
+ $ref: '#/components/responses/NotAcceptable'
+ '409':
+ $ref: '#/components/responses/Conflict'
+ '422':
+ $ref: '#/components/responses/UnprocessableEntity'
+ '500':
+ $ref: '#/components/responses/InternalServerError'
+ '503':
+ $ref: '#/components/responses/ServiceUnavailable'
+ '5XX':
+ $ref: '#/components/responses/UnexpectedError'
+ default:
+ $ref: '#/components/responses/UnexpectedError'
+ '/nslcm/v1/ns_instances_terminate':
+ post:
+ tags:
+ - "NS instances"
+ summary: Terminates NS instances
+ description: Terminates multiple NS instances.
+ operationId: MultiNsTerminateRequest
+ requestBody:
+ $ref: '#/components/requestBodies/MultiNsTerminateRequest'
+ responses:
+ '202':
+ description: Accepted
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/ObjectIdList'
+ application/yaml:
+ schema:
+ $ref: '#/components/schemas/ObjectIdList'
+ '400':
+ $ref: '#/components/responses/BadRequest'
+ '401':
+ $ref: '#/components/responses/Unauthorized'
+ '403':
+ $ref: '#/components/responses/Forbidden'
+ '404':
+ $ref: '#/components/responses/NotFound'
+ '405':
+ $ref: '#/components/responses/MethodNotAllowed'
+ '406':
+ $ref: '#/components/responses/NotAcceptable'
+ '409':
+ $ref: '#/components/responses/Conflict'
+ '422':
+ $ref: '#/components/responses/UnprocessableEntity'
+ '500':
+ $ref: '#/components/responses/InternalServerError'
+ '503':
+ $ref: '#/components/responses/ServiceUnavailable'
+ '5XX':
+ $ref: '#/components/responses/UnexpectedError'
+ default:
+ $ref: '#/components/responses/UnexpectedError'
'/nslcm/v1/ns_instances_content':
get:
tags:
$ref: '#/components/responses/UnexpectedError'
default:
$ref: '#/components/responses/UnexpectedError'
+ '/nslcm/v1/ns_lcm_op_occs/{nsLcmOpOccId}/cancel':
+ parameters:
+ - name: nsLcmOpOccId
+ in: path
+ required: true
+ description: NS LCM Operation Occurrence ID
+ schema:
+ type: string
+ post:
+ tags:
+ - "NS instances"
+ summary: Cancel an ongoing NS lifecycle management operation
+ description: Cancel an ongoing NS lifecycle management operation while it is being executed or rolled back
+ operationId: cancelNSLCMOpOcc
+ requestBody:
+ $ref: '#/components/requestBodies/CancelNSLCMOpOccRequest'
+ responses:
+ '202':
+ description: Accepted
+ '400':
+ $ref: '#/components/responses/BadRequest'
+ '401':
+ $ref: '#/components/responses/Unauthorized'
+ '403':
+ $ref: '#/components/responses/Forbidden'
+ '404':
+ $ref: '#/components/responses/NotFound'
+ '405':
+ $ref: '#/components/responses/MethodNotAllowed'
+ '406':
+ $ref: '#/components/responses/NotAcceptable'
+ '409':
+ $ref: '#/components/responses/Conflict'
+ '422':
+ $ref: '#/components/responses/UnprocessableEntity'
+ '500':
+ $ref: '#/components/responses/InternalServerError'
+ '503':
+ $ref: '#/components/responses/ServiceUnavailable'
+ '5XX':
+ $ref: '#/components/responses/UnexpectedError'
+ default:
+ $ref: '#/components/responses/UnexpectedError'
'/nslcm/v1/vnf_instances':
get:
tags:
$ref: '#/components/responses/UnexpectedError'
default:
$ref: '#/components/responses/UnexpectedError'
-# END NS Instances
-
-# BEGIN NetSlice Templates
- '/nst/v1/netslice_templates':
+ '/nslcm/v1/subscriptions':
get:
tags:
- - "NetSlice templates"
- summary: Query information about multiple NetSlice template resources
- description: Query information about multiple NetSlice template resources
- operationId: getNSTs
+ - NS instances
+ summary: Query information about multiple NS instance subscription
+ description: Query information about multiple NS instance subscription
+ operationId: getNsSubcriptions
responses:
'200':
description: OK
content:
application/json:
schema:
- $ref: '#/components/schemas/ArrayOfNstInfo'
+ $ref: '#/components/schemas/ArrayOfNslcmSubscriptionInfo'
application/yaml:
schema:
- $ref: '#/components/schemas/ArrayOfNstInfo'
+ $ref: '#/components/schemas/ArrayOfNslcmSubscriptionInfo'
'400':
$ref: '#/components/responses/BadRequest'
'401':
$ref: '#/components/responses/InternalServerError'
'503':
$ref: '#/components/responses/ServiceUnavailable'
- '5XX':
+ 5XX:
$ref: '#/components/responses/UnexpectedError'
default:
$ref: '#/components/responses/UnexpectedError'
post:
tags:
- - "NetSlice templates"
+ - NS instances
+ summary: Create a new subscription for the Network service
+ description: Create a new subscription for the Network service
+ operationId: addNsSubcriptions
+ requestBody:
+ $ref: '#/components/requestBodies/NslcmSubscriptionRequest'
+ responses:
+ '201':
+ description: Created
+ headers:
+ Location:
+ schema:
+ type: object
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/NslcmSubscriptionResponse'
+ application/yaml:
+ schema:
+ $ref: '#/components/schemas/NslcmSubscriptionResponse'
+ '400':
+ $ref: '#/components/responses/BadRequest'
+ '401':
+ $ref: '#/components/responses/Unauthorized'
+ '403':
+ $ref: '#/components/responses/Forbidden'
+ '404':
+ $ref: '#/components/responses/NotFound'
+ '405':
+ $ref: '#/components/responses/MethodNotAllowed'
+ '406':
+ $ref: '#/components/responses/NotAcceptable'
+ '409':
+ $ref: '#/components/responses/Conflict'
+ '422':
+ $ref: '#/components/responses/UnprocessableEntity'
+ '500':
+ $ref: '#/components/responses/InternalServerError'
+ '503':
+ $ref: '#/components/responses/ServiceUnavailable'
+ 5XX:
+ $ref: '#/components/responses/UnexpectedError'
+ default:
+ $ref: '#/components/responses/UnexpectedError'
+ '/nslcm/v1/subscriptions/{nsSubscriptionsId}':
+ parameters:
+ - name: nsSubscriptionsId
+ in: path
+ required: true
+ description: Network Service Subscription ID
+ schema:
+ type: string
+ get:
+ tags:
+ - NS instances
+ summary: Read information about an individual Network Service Subscription
+ description: Read information about an individual Network Service Subscription
+ operationId: getNsSubcriptionId
+ responses:
+ '200':
+ description: OK
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/NslcmSubscriptionInfo'
+ application/yaml:
+ schema:
+ $ref: '#/components/schemas/NslcmSubscriptionInfo'
+ '400':
+ $ref: '#/components/responses/BadRequest'
+ '401':
+ $ref: '#/components/responses/Unauthorized'
+ '403':
+ $ref: '#/components/responses/Forbidden'
+ '404':
+ $ref: '#/components/responses/NotFound'
+ '405':
+ $ref: '#/components/responses/MethodNotAllowed'
+ '406':
+ $ref: '#/components/responses/NotAcceptable'
+ '409':
+ $ref: '#/components/responses/Conflict'
+ '422':
+ $ref: '#/components/responses/UnprocessableEntity'
+ '500':
+ $ref: '#/components/responses/InternalServerError'
+ '503':
+ $ref: '#/components/responses/ServiceUnavailable'
+ 5XX:
+ $ref: '#/components/responses/UnexpectedError'
+ default:
+ $ref: '#/components/responses/UnexpectedError'
+ delete:
+ tags:
+ - NS instances
+ summary: Delete an individual Network Service Subscription
+ description: Delete an individual Network Service Subscription
+ operationId: deleteNsSubcriptionId
+ responses:
+ '204':
+ description: No Content
+ '400':
+ $ref: '#/components/responses/BadRequest'
+ '401':
+ $ref: '#/components/responses/Unauthorized'
+ '403':
+ $ref: '#/components/responses/Forbidden'
+ '404':
+ $ref: '#/components/responses/NotFound'
+ '405':
+ $ref: '#/components/responses/MethodNotAllowed'
+ '406':
+ $ref: '#/components/responses/NotAcceptable'
+ '409':
+ $ref: '#/components/responses/Conflict'
+ '422':
+ $ref: '#/components/responses/UnprocessableEntity'
+ '500':
+ $ref: '#/components/responses/InternalServerError'
+ '503':
+ $ref: '#/components/responses/ServiceUnavailable'
+ 5XX:
+ $ref: '#/components/responses/UnexpectedError'
+ default:
+ $ref: '#/components/responses/UnexpectedError'
+# END NS Instances
+
+# BEGIN Alarms
+ '/nsfm/v1/alarms':
+ get:
+ tags:
+ - "Alarms"
+ summary: Query information about multiple alarms
+ description: Query information about multiple alarms
+ operationId: getAlarms
+ responses:
+ '200':
+ description: OK
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/ArrayOfAlarm'
+ application/yaml:
+ schema:
+ $ref: '#/components/schemas/ArrayOfAlarm'
+ '400':
+ $ref: '#/components/responses/BadRequest'
+ '401':
+ $ref: '#/components/responses/Unauthorized'
+ '403':
+ $ref: '#/components/responses/Forbidden'
+ '404':
+ $ref: '#/components/responses/NotFound'
+ '405':
+ $ref: '#/components/responses/MethodNotAllowed'
+ '406':
+ $ref: '#/components/responses/NotAcceptable'
+ '409':
+ $ref: '#/components/responses/Conflict'
+ '422':
+ $ref: '#/components/responses/UnprocessableEntity'
+ '500':
+ $ref: '#/components/responses/InternalServerError'
+ '503':
+ $ref: '#/components/responses/ServiceUnavailable'
+ '5XX':
+ $ref: '#/components/responses/UnexpectedError'
+ default:
+ $ref: '#/components/responses/UnexpectedError'
+ '/nsfm/v1/alarms/{uuid}':
+ parameters:
+ - name: uuid
+ in: path
+ required: true
+ description: Alarm UUID
+ schema:
+ type: string
+ get:
+ tags:
+ - "Alarms"
+ summary: Read an individual Alarm
+ description: Read an individual Alarm
+ operationId: getAlarm
+ responses:
+ '200':
+ description: OK
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/Alarm'
+ application/yaml:
+ schema:
+ $ref: '#/components/schemas/Alarm'
+ '400':
+ $ref: '#/components/responses/BadRequest'
+ '401':
+ $ref: '#/components/responses/Unauthorized'
+ '403':
+ $ref: '#/components/responses/Forbidden'
+ '404':
+ $ref: '#/components/responses/NotFound'
+ '405':
+ $ref: '#/components/responses/MethodNotAllowed'
+ '406':
+ $ref: '#/components/responses/NotAcceptable'
+ '409':
+ $ref: '#/components/responses/Conflict'
+ '422':
+ $ref: '#/components/responses/UnprocessableEntity'
+ '500':
+ $ref: '#/components/responses/InternalServerError'
+ '503':
+ $ref: '#/components/responses/ServiceUnavailable'
+ '5XX':
+ $ref: '#/components/responses/UnexpectedError'
+ default:
+ $ref: '#/components/responses/UnexpectedError'
+ patch:
+ tags:
+ - "Alarms"
+ summary: Modify the data of an individual Alarm
+ description: Modify the data of an individual Alarm
+ operationId: updateAlarm
+ requestBody:
+ $ref: '#/components/requestBodies/AlarmInfoModifications'
+ responses:
+ '204':
+ description: No Content
+ '400':
+ $ref: '#/components/responses/BadRequest'
+ '401':
+ $ref: '#/components/responses/Unauthorized'
+ '403':
+ $ref: '#/components/responses/Forbidden'
+ '404':
+ $ref: '#/components/responses/NotFound'
+ '405':
+ $ref: '#/components/responses/MethodNotAllowed'
+ '406':
+ $ref: '#/components/responses/NotAcceptable'
+ '409':
+ $ref: '#/components/responses/Conflict'
+ '422':
+ $ref: '#/components/responses/UnprocessableEntity'
+ '500':
+ $ref: '#/components/responses/InternalServerError'
+ '503':
+ $ref: '#/components/responses/ServiceUnavailable'
+ '5XX':
+ $ref: '#/components/responses/UnexpectedError'
+ default:
+ $ref: '#/components/responses/UnexpectedError'
+# END Alarms
+
+# BEGIN NetSlice Templates
+ '/nst/v1/netslice_templates':
+ get:
+ tags:
+ - "NetSlice templates"
+ summary: Query information about multiple NetSlice template resources
+ description: Query information about multiple NetSlice template resources
+ operationId: getNSTs
+ responses:
+ '200':
+ description: OK
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/ArrayOfNstInfo'
+ application/yaml:
+ schema:
+ $ref: '#/components/schemas/ArrayOfNstInfo'
+ '400':
+ $ref: '#/components/responses/BadRequest'
+ '401':
+ $ref: '#/components/responses/Unauthorized'
+ '403':
+ $ref: '#/components/responses/Forbidden'
+ '404':
+ $ref: '#/components/responses/NotFound'
+ '405':
+ $ref: '#/components/responses/MethodNotAllowed'
+ '406':
+ $ref: '#/components/responses/NotAcceptable'
+ '409':
+ $ref: '#/components/responses/Conflict'
+ '422':
+ $ref: '#/components/responses/UnprocessableEntity'
+ '500':
+ $ref: '#/components/responses/InternalServerError'
+ '503':
+ $ref: '#/components/responses/ServiceUnavailable'
+ '5XX':
+ $ref: '#/components/responses/UnexpectedError'
+ default:
+ $ref: '#/components/responses/UnexpectedError'
+ post:
+ tags:
+ - "NetSlice templates"
summary: Create a new NetSlice template resource
description: Create a new NetSlice template resource
operationId: addNST
$ref: '#/components/responses/UnexpectedError'
# END PDU
-# BEGIN Admin
- '/admin/v1/tokens':
+# BEGIN k8s Cluster
+ '/k8scluster/v1/clusters':
get:
tags:
- - "Authentication"
- - "Admin"
- summary: Query information about multiple Tokens
- description: Query information about multiple Tokens
- operationId: getTokens
+ - 'K8s Cluster'
+ summary: Listing All Clusters
+ description: This API is used to obtain details about all clusters
+ operationId: listk8sCluster
responses:
'200':
description: OK
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/ArrayOfTokenInfo'
- application/yaml:
- schema:
- $ref: '#/components/schemas/ArrayOfTokenInfo'
'400':
$ref: '#/components/responses/BadRequest'
'401':
$ref: '#/components/responses/UnexpectedError'
post:
tags:
- - "Authentication"
- - "Admin"
- summary: Request a new Token
- description: Request a new Token
- operationId: createToken
+ - "K8s Cluster"
+ summary: Creating a Cluster
+ description: This API is used to create cluster
+ operationId: createk8sCluster
requestBody:
- $ref: '#/components/requestBodies/CreateTokenRequest'
+ $ref: '#/components/requestBodies/CreateCluster'
responses:
- '200':
- description: OK
- headers:
- Location:
- schema:
- type: string
- format: uri
+ '201':
+ description: Created
content:
application/json:
schema:
- $ref: '#/components/schemas/TokenInfo'
+ $ref: '#/components/schemas/ObjectId'
application/yaml:
schema:
- $ref: '#/components/schemas/TokenInfo'
+ $ref: '#/components/schemas/ObjectId'
'400':
$ref: '#/components/responses/BadRequest'
'401':
$ref: '#/components/responses/UnexpectedError'
default:
$ref: '#/components/responses/UnexpectedError'
- delete:
+ '/k8scluster/v1/clusters/{cluster_id}':
+ parameters:
+ - name: cluster_id
+ in: path
+ required: true
+ description: cluster_id
+ schema:
+ type: string
+ get:
tags:
- - "Authentication"
- - "Admin"
- summary: Delete the Token indicated in the Authorization Header
- description: Delete the Token indicated in the Authorization Header
- operationId: deleteAuthToken
+ - 'K8s Cluster'
+ summary: Reading a Specific Cluster
+ description: This API is used to obtain details about a specified cluster.
+ operationId: readk8sCluster
responses:
'200':
description: OK
- content:
- application/json:
- schema:
- type: string
- application/yaml:
- schema:
- type: string
'400':
$ref: '#/components/responses/BadRequest'
'401':
$ref: '#/components/responses/UnexpectedError'
default:
$ref: '#/components/responses/UnexpectedError'
- '/admin/v1/tokens/{tokenId}':
- parameters:
- - name: tokenId
- in: path
- required: true
- description: Token ID
- schema:
- type: string
- get:
+ delete:
tags:
- - "Authentication"
- - "Admin"
- summary: Query information about an individual Token
- description: Query information about an individual Token
- operationId: getToken
+ - "K8s Cluster"
+ summary: Deleting a Cluster
+ description: This API is used to delete a specified cluster.
+ operationId: deletek8sCluster
responses:
- '200':
- description: OK
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/TokenInfo'
- application/yaml:
- schema:
- $ref: '#/components/schemas/TokenInfo'
+ '202':
+ description: Accepted
'400':
$ref: '#/components/responses/BadRequest'
'401':
$ref: '#/components/responses/UnexpectedError'
default:
$ref: '#/components/responses/UnexpectedError'
- delete:
+ '/k8scluster/v1/clusters/{cluster_id}/get_creds':
+ parameters:
+ - name: cluster_id
+ in: path
+ required: true
+ description: cluster_id
+ schema:
+ type: string
+ get:
tags:
- - "Authentication"
- - "Admin"
- summary: Delete the Token indicated as parameter
- description: Delete the Token indicated as parameter
- operationId: deleteToken
+ - "K8s Cluster"
+ summary: Get Credentials of the cluster
+ description: This API is used to obtain a kube_config file of a specified cluster.
+ operationId: getCreds
responses:
'200':
description: OK
- content:
- application/json:
- schema:
- type: string
- application/yaml:
- schema:
- type: string
'400':
$ref: '#/components/responses/BadRequest'
'401':
$ref: '#/components/responses/UnexpectedError'
default:
$ref: '#/components/responses/UnexpectedError'
- '/admin/v1/users':
- get:
+ '/k8scluster/v1/clusters/{cluster_id}/scale':
+ parameters:
+ - name: cluster_id
+ in: path
+ required: true
+ description: cluster_id
+ schema:
+ type: string
+ post:
tags:
- - "Identity"
- - "Admin"
- summary: Query information about multiple Users
- description: Query information about multiple Users
- operationId: getUsers
+ - "K8s Cluster"
+ summary: Scaling Node
+ description: This API is used to scale the node into a specified cluster
+ operationId: nodeScaling
+ requestBody:
+ $ref: '#/components/requestBodies/ScaleNode'
responses:
- '200':
- description: OK
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/ArrayOfUserInfo'
- application/yaml:
- schema:
- $ref: '#/components/schemas/ArrayOfUserInfo'
+ '202':
+ description: Accepted
'400':
$ref: '#/components/responses/BadRequest'
'401':
'405':
$ref: '#/components/responses/MethodNotAllowed'
'406':
- $ref: '#/components/responses/NotAcceptable'
+ $ref: '#/components/responses/NotAcceptable'
'409':
- $ref: '#/components/responses/Conflict'
+ $ref: '#/components/responses/Conflict'
'422':
- $ref: '#/components/responses/UnprocessableEntity'
+ $ref: '#/components/responses/UnprocessableEntity'
'500':
$ref: '#/components/responses/InternalServerError'
'503':
- $ref: '#/components/responses/ServiceUnavailable'
+ $ref: '#/components/responses/ServiceUnavailable'
'5XX':
- $ref: '#/components/responses/UnexpectedError'
+ $ref: '#/components/responses/UnexpectedError'
default:
- $ref: '#/components/responses/UnexpectedError'
+ $ref: '#/components/responses/UnexpectedError'
+ '/k8scluster/v1/clusters/{cluster_id}/upgrade':
+ parameters:
+ - name: cluster_id
+ in: path
+ required: true
+ description: cluster_id
+ schema:
+ type: string
post:
tags:
- - "Identity"
- - "Admin"
- summary: Create a new User
- description: Create a new User
- operationId: createUser
+ - "K8s Cluster"
+ summary: Upgrading a Cluster
+ description: This API is used to Upgrade a Cluster
+ operationId: upgradeCluster
requestBody:
- $ref: '#/components/requestBodies/CreateUserRequest'
+ $ref: '#/components/requestBodies/UpgradeCluster'
responses:
- '201':
- description: Created
- headers:
- Location:
- schema:
- type: string
- format: uri
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/ObjectId'
- application/yaml:
- schema:
- $ref: '#/components/schemas/ObjectId'
+ '202':
+ description: Accepted
'400':
$ref: '#/components/responses/BadRequest'
'401':
$ref: '#/components/responses/UnexpectedError'
default:
$ref: '#/components/responses/UnexpectedError'
- '/admin/v1/users/{userId}':
- parameters:
- - name: userId
- in: path
- required: true
- description: User ID/Name
- schema:
- type: string
- get:
+ '/k8scluster/v1/app_profiles':
+ post:
tags:
- - "Identity"
- - "Admin"
- summary: Query information about an individual User
- description: Query information about an individual User
- operationId: getUser
+ - "K8s Cluster"
+ summary: Creating App-profiles
+ description: This API is used to create App-profiles
+ operationId: createAppProfile
+ requestBody:
+ $ref: '#/components/requestBodies/ProfileInfo'
responses:
- '200':
- description: OK
+ '201':
+ description: Created
content:
application/json:
schema:
- $ref: '#/components/schemas/UserInfo'
+ $ref: '#/components/schemas/ObjectId'
application/yaml:
schema:
- $ref: '#/components/schemas/UserInfo'
+ $ref: '#/components/schemas/ObjectId'
'400':
$ref: '#/components/responses/BadRequest'
'401':
$ref: '#/components/responses/UnexpectedError'
default:
$ref: '#/components/responses/UnexpectedError'
- patch:
+ get:
tags:
- - "Identity"
- - "Admin"
- summary: Modify a User
- description: Modify a User
- operationId: editUser
- requestBody:
- $ref: '#/components/requestBodies/EditUserRequest'
+ - "K8s Cluster"
+ summary: Listing App-profiles
+ description: This API is used to list all App-profiles
+ operationId: listAppProfile
responses:
- '204':
- description: No Content
+ '200':
+ description: OK
'400':
$ref: '#/components/responses/BadRequest'
'401':
$ref: '#/components/responses/UnexpectedError'
default:
$ref: '#/components/responses/UnexpectedError'
- delete:
+ '/k8scluster/v1/app_profiles/{app_profile_id}':
+ parameters:
+ - name: app_profile_id
+ in: path
+ required: true
+ description: app_profile_id
+ schema:
+ type: string
+ get:
tags:
- - "Identity"
- - "Admin"
- summary: Delete a User
- description: Delete a User
- operationId: deleteUser
+ - "K8s Cluster"
+ summary: Reading App-profiles
+ description: This API is used to reading specific App-profile
+ operationId: readAppProfile
responses:
- '204':
- description: No Content
+ '200':
+ description: OK
'400':
$ref: '#/components/responses/BadRequest'
'401':
$ref: '#/components/responses/UnexpectedError'
default:
$ref: '#/components/responses/UnexpectedError'
- '/admin/v1/projects':
- get:
+ patch:
tags:
- - "Identity"
- - "Admin"
- summary: Query information about multiple Projects
- description: Query information about multiple Projects
- operationId: getProjects
+ - "K8s Cluster"
+ summary: Patching App-profiles
+ description: This API is used to patch specific App-profile
+ operationId: patchAppProfile
+ requestBody:
+ $ref: '#/components/requestBodies/ProfileInfo'
responses:
- '200':
- description: OK
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/ArrayOfProjectInfo'
- application/yaml:
- schema:
- $ref: '#/components/schemas/ArrayOfProjectInfo'
+ '202':
+ description: Accepted
'400':
$ref: '#/components/responses/BadRequest'
'401':
$ref: '#/components/responses/UnexpectedError'
default:
$ref: '#/components/responses/UnexpectedError'
- post:
+ delete:
tags:
- - "Identity"
- - "Admin"
- summary: Create a new Project
- description: Create a new Project
- operationId: createProject
- requestBody:
- $ref: '#/components/requestBodies/CreateProjectRequest'
+ - "K8s Cluster"
+ summary: Deleteing App-profiles
+ description: This API is used to delete specific App-profile
+ operationId: deleteAppProfile
responses:
- '201':
- description: Created
- headers:
- Location:
- schema:
- type: string
- format: uri
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/ObjectId'
- application/yaml:
- schema:
- $ref: '#/components/schemas/ObjectId'
+ '202':
+ description: Accepted
'400':
$ref: '#/components/responses/BadRequest'
'401':
$ref: '#/components/responses/UnexpectedError'
default:
$ref: '#/components/responses/UnexpectedError'
- '/admin/v1/projects/{projectId}':
+ '/k8scluster/v1/clusters/{cluster_id}/app_profiles':
parameters:
- - name: projectId
+ - name: cluster_id
in: path
required: true
- description: Project ID/Name
+ description: cluster_id
schema:
type: string
- get:
+ patch:
tags:
- - "Identity"
- - "Admin"
- summary: Query information about an individual Project
- description: Query information about an individual Project
- operationId: getProject
+ - "K8s Cluster"
+ summary: Adding or Removing App profile to cluster
+ description: This API is used to add or remove app profiles to cluster
+ operationId: addRemoveAppProfile
+ requestBody:
+ $ref: '#/components/requestBodies/AttachDetachProfile'
responses:
- '200':
- description: OK
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/ProjectInfo'
- application/yaml:
- schema:
- $ref: '#/components/schemas/ProjectInfo'
+ '202':
+ description: Accepted
'400':
$ref: '#/components/responses/BadRequest'
'401':
$ref: '#/components/responses/UnexpectedError'
default:
$ref: '#/components/responses/UnexpectedError'
- patch:
+ get:
tags:
- - "Identity"
- - "Admin"
- summary: Modify a Project
- description: Modify a Project
- operationId: editProject
- requestBody:
- $ref: '#/components/requestBodies/EditProjectRequest'
+ - "K8s Cluster"
+ summary: Getting App-profile in cluster
+ description: This API is used to get app-profiles in specified cluster
+ operationId: getAppProfile
responses:
- '204':
- description: No Content
+ '200':
+ description: OK
'400':
$ref: '#/components/responses/BadRequest'
'401':
$ref: '#/components/responses/UnexpectedError'
default:
$ref: '#/components/responses/UnexpectedError'
- delete:
+ '/k8scluster/v1/infra_controller_profiles':
+ post:
tags:
- - "Identity"
- - "Admin"
- summary: Delete a Project
- description: Delete a Project
- operationId: deleteProject
+ - "K8s Cluster"
+ summary: Creating Infra controller profiles
+ description: This API is used to create Infra controllerprofiles
+ operationId: createInfraControllerProfile
+ requestBody:
+ $ref: '#/components/requestBodies/ProfileInfo'
responses:
- '204':
- description: No Content
+ '201':
+ description: Created
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/ObjectId'
+ application/yaml:
+ schema:
+ $ref: '#/components/schemas/ObjectId'
'400':
$ref: '#/components/responses/BadRequest'
'401':
$ref: '#/components/responses/UnexpectedError'
default:
$ref: '#/components/responses/UnexpectedError'
- '/admin/v1/roles':
get:
tags:
- - "Identity"
- - "Admin"
- summary: Query information about multiple Roles
- description: Query information about multiple Roles
- operationId: getRoles
+ - "K8s Cluster"
+ summary: Listing Infra controller profiles
+ description: This API is used to list all Infra controller profiles
+ operationId: listInfraControllerProfile
responses:
'200':
description: OK
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/ArrayOfRoleInfo'
- application/yaml:
- schema:
- $ref: '#/components/schemas/ArrayOfRoleInfo'
'400':
$ref: '#/components/responses/BadRequest'
'401':
$ref: '#/components/responses/UnexpectedError'
default:
$ref: '#/components/responses/UnexpectedError'
- post:
+ '/k8scluster/v1/infra_controller_profiles/{infra_controller_profile_id}':
+ parameters:
+ - name: infra_controller_profile_id
+ in: path
+ required: true
+ description: infra_controller_profile_id
+ schema:
+ type: string
+ get:
tags:
- - "Identity"
- - "Admin"
- summary: Create a new Role
- description: Create a new Role
- operationId: createRole
- requestBody:
- $ref: '#/components/requestBodies/CreateRoleRequest'
+ - "K8s Cluster"
+ summary: Reading Infra controller profiles
+ description: This API is used to reading specific Infra controller profile
+ operationId: readInfraControllerProfile
responses:
- '201':
- description: Created
- headers:
- Location:
- schema:
- type: string
- format: uri
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/ObjectId'
- application/yaml:
- schema:
- $ref: '#/components/schemas/ObjectId'
+ '200':
+ description: OK
'400':
$ref: '#/components/responses/BadRequest'
'401':
$ref: '#/components/responses/UnexpectedError'
default:
$ref: '#/components/responses/UnexpectedError'
- '/admin/v1/roles/{roleId}':
- parameters:
- - name: roleId
- in: path
- required: true
- description: Role ID/Name
- schema:
- type: string
- get:
+ patch:
tags:
- - "Identity"
- - "Admin"
- summary: Query information about an individual Role
- description: Query information about an individual Role
- operationId: getRole
+ - "K8s Cluster"
+ summary: Patching Infra controller profiles
+ description: This API is used to patch specific Infra controller profile
+ operationId: patchInfraControllerProfile
+ requestBody:
+ $ref: '#/components/requestBodies/ProfileInfo'
responses:
- '200':
- description: OK
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/RoleInfo'
- application/yaml:
- schema:
- $ref: '#/components/schemas/RoleInfo'
+ '202':
+ description: Accepted
'400':
$ref: '#/components/responses/BadRequest'
'401':
$ref: '#/components/responses/UnexpectedError'
default:
$ref: '#/components/responses/UnexpectedError'
- patch:
+ delete:
tags:
- - "Identity"
- - "Admin"
- summary: Modify a Role
- description: Modify a Role
- operationId: editRole
- requestBody:
- $ref: '#/components/requestBodies/EditRoleRequest'
+ - "K8s Cluster"
+ summary: Deleteing Infra controller profiles
+ description: This API is used to delete specific Infra controller profile
+ operationId: deleteInfraControllerProfile
responses:
- '204':
- description: No Content
+ '202':
+ description: Accepted
'400':
$ref: '#/components/responses/BadRequest'
'401':
$ref: '#/components/responses/UnexpectedError'
default:
$ref: '#/components/responses/UnexpectedError'
- delete:
+ '/k8scluster/v1/clusters/{cluster_id}/infra_controller_profiles':
+ parameters:
+ - name: cluster_id
+ in: path
+ required: true
+ description: cluster_id
+ schema:
+ type: string
+ patch:
tags:
- - "Identity"
- - "Admin"
- summary: Delete a Role
- description: Delete a Role
- operationId: deleteRole
+ - "K8s Cluster"
+ summary: Adding or Removing Infra controller profile to cluster
+ description: This API is used to add or remove infra controller profile to cluster
+ operationId: addremoveInfraControllerProfile
+ requestBody:
+ $ref: '#/components/requestBodies/AttachDetachProfile'
responses:
- '204':
- description: No Content
+ '202':
+ description: Accepted
'400':
$ref: '#/components/responses/BadRequest'
'401':
$ref: '#/components/responses/UnexpectedError'
default:
$ref: '#/components/responses/UnexpectedError'
- '/admin/v1/vims':
get:
tags:
- - "Infrastructure"
- - "Admin"
- summary: Query information about multiple VIMs
- description: Query information about multiple VIMs
- operationId: getVIMs
+ - "K8s Cluster"
+ summary: Getting Infra controller profile in cluster
+ description: This API is used to get infra controller profiles in specified cluster
+ operationId: getInfraControllerProfile
responses:
'200':
description: OK
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/ArrayOfVimInfo'
- application/yaml:
- schema:
- $ref: '#/components/schemas/ArrayOfVimInfo'
'400':
$ref: '#/components/responses/BadRequest'
'401':
$ref: '#/components/responses/UnexpectedError'
default:
$ref: '#/components/responses/UnexpectedError'
+ '/k8scluster/v1/infra_config_profiles':
post:
tags:
- - "Infrastructure"
- - "Admin"
- summary: Create a new VIM
- description: Create a new VIM
- operationId: createVIM
+ - "K8s Cluster"
+ summary: Creating Infra config profiles
+ description: This API is used to create Infra config profiles
+ operationId: createInfraConfigProfile
requestBody:
- $ref: '#/components/requestBodies/CreateVimRequest'
+ $ref: '#/components/requestBodies/ProfileInfo'
responses:
- '202':
- description: Accepted
+ '201':
+ description: Created
content:
application/json:
schema:
- $ref: '#/components/schemas/ObjectId_plus_OpId'
+ $ref: '#/components/schemas/ObjectId'
application/yaml:
schema:
- $ref: '#/components/schemas/ObjectId_plus_OpId'
+ $ref: '#/components/schemas/ObjectId'
'400':
$ref: '#/components/responses/BadRequest'
'401':
$ref: '#/components/responses/UnexpectedError'
default:
$ref: '#/components/responses/UnexpectedError'
- '/admin/v1/vims/{vimId}':
- parameters:
- - name: vimId
- in: path
- required: true
- description: VIM ID
- schema:
- type: string
- format: uuid
get:
tags:
- - "Infrastructure"
- - "Admin"
- summary: Query information about an individual VIM
- description: Query information about an individual VIM
- operationId: getVIM
+ - "K8s Cluster"
+ summary: Listing Infra config profiles
+ description: This API is used to list all Infra config profiles
+ operationId: listInfraConfigProfile
responses:
'200':
description: OK
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/VimInfo'
- application/yaml:
- schema:
- $ref: '#/components/schemas/VimInfo'
'400':
$ref: '#/components/responses/BadRequest'
'401':
$ref: '#/components/responses/UnexpectedError'
default:
$ref: '#/components/responses/UnexpectedError'
- patch:
+ '/k8scluster/v1/infra_config_profiles/{infra_config_profile_id}':
+ parameters:
+ - name: infra_config_profile_id
+ in: path
+ required: true
+ description: infra_config_profile_id
+ schema:
+ type: string
+ get:
tags:
- - "Infrastructure"
- - "Admin"
- summary: Modify a VIM
- description: Modify a VIM
- operationId: editVIM
- requestBody:
- $ref: '#/components/requestBodies/EditVimRequest'
+ - "K8s Cluster"
+ summary: Reading Infra config profiles
+ description: This API is used to reading specific Infra config profile
+ operationId: readInfraConfigProfile
responses:
- '202':
- description: Accepted
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/OpId'
- application/yaml:
- schema:
- $ref: '#/components/schemas/OpId'
+ '200':
+ description: OK
'400':
$ref: '#/components/responses/BadRequest'
'401':
$ref: '#/components/responses/UnexpectedError'
default:
$ref: '#/components/responses/UnexpectedError'
- delete:
+ patch:
tags:
- - "Infrastructure"
- - "Admin"
- summary: Delete a VIM
- description: Delete a VIM
- operationId: deleteVIM
+ - "K8s Cluster"
+ summary: Patching Infra config profiles
+ description: This API is used to patch specific Infra config profile
+ operationId: patchInfraConfigProfile
+ requestBody:
+ $ref: '#/components/requestBodies/ProfileInfo'
responses:
'202':
description: Accepted
$ref: '#/components/responses/UnexpectedError'
default:
$ref: '#/components/responses/UnexpectedError'
- '/admin/v1/vim_accounts':
- get:
+ delete:
tags:
- - "Infrastructure"
- - "Admin"
- summary: Query information about multiple VIM Accounts
- description: Query information about multiple VIM Accounts
- operationId: getVimAccounts
+ - "K8s Cluster"
+ summary: Deleteing Infra config profiles
+ description: This API is used to delete specific Infra config profile
+ operationId: deleteInfraConfigProfile
responses:
- '200':
- description: OK
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/ArrayOfVimInfo'
- application/yaml:
- schema:
- $ref: '#/components/schemas/ArrayOfVimInfo'
+ '202':
+ description: Accepted
'400':
$ref: '#/components/responses/BadRequest'
'401':
$ref: '#/components/responses/UnexpectedError'
default:
$ref: '#/components/responses/UnexpectedError'
- post:
+ '/k8scluster/v1/clusters/{cluster_id}/infra_config_profiles':
+ parameters:
+ - name: cluster_id
+ in: path
+ required: true
+ description: cluster_id
+ schema:
+ type: string
+ patch:
tags:
- - "Infrastructure"
- - "Admin"
- summary: Create a new VIM Account
- description: Create a new VIM Account
- operationId: createVimAccount
+ - "K8s Cluster"
+ summary: Adding or Removing Infra config profile to cluster
+ description: This API is used to add or remove infra config profile to cluster
+ operationId: addremoveInfraConfigProfile
requestBody:
- $ref: '#/components/requestBodies/CreateVimRequest'
+ $ref: '#/components/requestBodies/AttachDetachProfile'
responses:
'202':
description: Accepted
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/ObjectId_plus_OpId'
- application/yaml:
- schema:
- $ref: '#/components/schemas/ObjectId_plus_OpId'
'400':
$ref: '#/components/responses/BadRequest'
'401':
$ref: '#/components/responses/UnexpectedError'
default:
$ref: '#/components/responses/UnexpectedError'
- '/admin/v1/vim_accounts/{vimAccountId}':
- parameters:
- - name: vimAccountId
- in: path
- required: true
- description: VIM Account ID
- schema:
- type: string
- format: uuid
get:
tags:
- - "Infrastructure"
- - "Admin"
- summary: Query information about an individual VIM Account
- description: Query information about an individual VIM Account
- operationId: getVimAccount
+ - "K8s Cluster"
+ summary: Getting Infra config profile in cluster
+ description: This API is used to get infra config profiles in specified cluster
+ operationId: getInfraConfigProfile
responses:
'200':
description: OK
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/VimInfo'
- application/yaml:
- schema:
- $ref: '#/components/schemas/VimInfo'
'400':
$ref: '#/components/responses/BadRequest'
'401':
$ref: '#/components/responses/UnexpectedError'
default:
$ref: '#/components/responses/UnexpectedError'
- patch:
+ '/k8scluster/v1/resource_profiles':
+ post:
tags:
- - "Infrastructure"
- - "Admin"
- summary: Modify a VIM Account
- description: Modify a VIM Account
- operationId: editVimAccount
+ - "K8s Cluster"
+ summary: Creating resource profiles
+ description: This API is used to create resource profiles
+ operationId: createResourceProfile
requestBody:
- $ref: '#/components/requestBodies/EditVimRequest'
+ $ref: '#/components/requestBodies/ProfileInfo'
responses:
- '202':
- description: Accepted
+ '201':
+ description: Created
content:
application/json:
schema:
- $ref: '#/components/schemas/OpId'
+ $ref: '#/components/schemas/ObjectId'
application/yaml:
schema:
- $ref: '#/components/schemas/OpId'
+ $ref: '#/components/schemas/ObjectId'
'400':
$ref: '#/components/responses/BadRequest'
'401':
$ref: '#/components/responses/UnexpectedError'
default:
$ref: '#/components/responses/UnexpectedError'
- delete:
+ get:
tags:
- - "Infrastructure"
- - "Admin"
- summary: Delete a VIM Account
- description: Delete a VIM Account
- operationId: deleteVimAccount
+ - "K8s Cluster"
+ summary: Listing resource profiles
+ description: This API is used to list all resource profiles
+ operationId: listResourceProfile
responses:
- '202':
- description: Accepted
+ '200':
+ description: OK
'400':
$ref: '#/components/responses/BadRequest'
'401':
$ref: '#/components/responses/UnexpectedError'
default:
$ref: '#/components/responses/UnexpectedError'
- '/admin/v1/wim_accounts':
+ '/k8scluster/v1/resource_profiles/{resource_profile_id}':
+ parameters:
+ - name: resource_profile_id
+ in: path
+ required: true
+ description: resource_profile_id
+ schema:
+ type: string
get:
tags:
- - "Infrastructure"
- - "Admin"
- summary: Query information about multiple WIM Accounts
- description: Query information about multiple WIM Accounts
- operationId: getWimAccounts
+ - "K8s Cluster"
+ summary: Reading resource profiles
+ description: This API is used to reading specific resource profile
+ operationId: readResourceProfile
responses:
'200':
description: OK
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/ArrayOfWimInfo'
- application/yaml:
- schema:
- $ref: '#/components/schemas/ArrayOfWimInfo'
'400':
$ref: '#/components/responses/BadRequest'
'401':
$ref: '#/components/responses/UnexpectedError'
default:
$ref: '#/components/responses/UnexpectedError'
- post:
+ patch:
tags:
- - "Infrastructure"
- - "Admin"
- summary: Create a new WIM Account
- description: Create a new WIM Account
- operationId: createWimAccount
+ - "K8s Cluster"
+ summary: Patching resource profiles
+ description: This API is used to patch specific resource profile
+ operationId: patchResourceProfile
requestBody:
- $ref: '#/components/requestBodies/CreateWimRequest'
+ $ref: '#/components/requestBodies/ProfileInfo'
responses:
'202':
description: Accepted
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/ObjectId_plus_OpId'
- application/yaml:
- schema:
- $ref: '#/components/schemas/ObjectId_plus_OpId'
'400':
$ref: '#/components/responses/BadRequest'
'401':
$ref: '#/components/responses/UnexpectedError'
default:
$ref: '#/components/responses/UnexpectedError'
- '/admin/v1/wim_accounts/{wimAccountId}':
- parameters:
- - name: wimAccountId
- in: path
- required: true
- description: WIM Account ID
- schema:
- type: string
- format: uuid
- get:
+ delete:
tags:
- - "Infrastructure"
- - "Admin"
- summary: Query information about an individual WIM Account
- description: Query information about an individual WIM Account
- operationId: getWimAccount
+ - "K8s Cluster"
+ summary: Deleteing resource profiles
+ description: This API is used to delete specific resource profile
+ operationId: deleteResourceProfile
responses:
- '200':
- description: OK
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/WimInfo'
- application/yaml:
- schema:
- $ref: '#/components/schemas/WimInfo'
+ '202':
+ description: Accepted
'400':
$ref: '#/components/responses/BadRequest'
'401':
$ref: '#/components/responses/UnexpectedError'
default:
$ref: '#/components/responses/UnexpectedError'
+ '/k8scluster/v1/clusters/{cluster_id}/resource_profiles':
+ parameters:
+ - name: cluster_id
+ in: path
+ required: true
+ description: cluster_id
+ schema:
+ type: string
patch:
tags:
- - "Infrastructure"
- - "Admin"
- summary: Modify a WIM Account
- description: Modify a WIM Account
- operationId: editWimAccount
+ - "K8s Cluster"
+ summary: Adding or Removing Resource profile to cluster
+ description: This API is used to add or remove resource profiles to cluster
+ operationId: addremoveResourceProfile
requestBody:
- $ref: '#/components/requestBodies/EditWimRequest'
+ $ref: '#/components/requestBodies/AttachDetachProfile'
responses:
'202':
description: Accepted
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/OpId'
- application/yaml:
- schema:
- $ref: '#/components/schemas/OpId'
'400':
$ref: '#/components/responses/BadRequest'
'401':
$ref: '#/components/responses/UnexpectedError'
default:
$ref: '#/components/responses/UnexpectedError'
- delete:
+ get:
tags:
- - "Infrastructure"
- - "Admin"
- summary: Delete a WIM Account
- description: Delete a WIM Account
- operationId: deleteWimAccount
+ - "K8s Cluster"
+ summary: Getting Resource profile in cluster
+ description: This API is used to get resource profiles in specified cluster
+ operationId: getResourceProfile
responses:
- '202':
- description: Accepted
+ '200':
+ description: OK
'400':
$ref: '#/components/responses/BadRequest'
'401':
$ref: '#/components/responses/UnexpectedError'
default:
$ref: '#/components/responses/UnexpectedError'
- '/admin/v1/sdns':
+#END k8s Cluster
+
+# BEGIN OKA packages
+ '/oka/v1/oka_packages':
get:
tags:
- - "Infrastructure"
- - "Admin"
- summary: Query information about multiple SDNs
- description: Query information about multiple SDNs
- operationId: getSDNs
+ - "OKA packages"
+ summary: List OKA package
+ description: This API is used to List OKA packages
+ operationId: getOKAPackage
responses:
'200':
description: OK
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/ArrayOfSdnInfo'
- application/yaml:
- schema:
- $ref: '#/components/schemas/ArrayOfSdnInfo'
'400':
$ref: '#/components/responses/BadRequest'
'401':
$ref: '#/components/responses/UnexpectedError'
post:
tags:
- - "Infrastructure"
- - "Admin"
- summary: Create a new SDN
- description: Create a new SDN
- operationId: createSDN
+ - "OKA packages"
+ summary: Add OKA package
+ description: This API is used to add OKA packages
+ operationId: addOKAPackage
requestBody:
- $ref: '#/components/requestBodies/CreateSdnRequest'
+ content:
+ application/zip:
+ schema:
+ $ref: '#/components/schemas/OkaPackage'
responses:
- '202':
- description: Accepted
+ '201':
+ description: Created
content:
application/json:
schema:
- $ref: '#/components/schemas/ObjectId_plus_OpId'
+ $ref: '#/components/schemas/ObjectId'
application/yaml:
schema:
- $ref: '#/components/schemas/ObjectId_plus_OpId'
+ $ref: '#/components/schemas/ObjectId'
'400':
$ref: '#/components/responses/BadRequest'
'401':
$ref: '#/components/responses/UnexpectedError'
default:
$ref: '#/components/responses/UnexpectedError'
- '/admin/v1/sdns/{sdnId}':
+ '/oka/v1/oka_packages/{oka_pkg_id}':
parameters:
- - name: sdnId
+ - name: oka_pkg_id
in: path
required: true
- description: SDN ID
+ description: oka_pkg_id
schema:
type: string
- format: uuid
get:
tags:
- - "Infrastructure"
- - "Admin"
- summary: Query information about an individual SDN
- description: Query information about an individual SDN
- operationId: getSDN
+ - "OKA packages"
+ summary: Read OKA package
+ description: This API is used to Read OKA packages
+ operationId: readOKAPackage
responses:
'200':
description: OK
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/SdnInfo'
- application/yaml:
- schema:
- $ref: '#/components/schemas/SdnInfo'
'400':
$ref: '#/components/responses/BadRequest'
'401':
$ref: '#/components/responses/UnexpectedError'
patch:
tags:
- - "Infrastructure"
- - "Admin"
- summary: Modify a SDN
- description: Modify a SDN
- operationId: editSDN
+ - "OKA packages"
+ summary: Update OKA package
+ description: This API is used to Update OKA packages
+ operationId: updateOKAPackage
requestBody:
- $ref: '#/components/requestBodies/EditSdnRequest'
+ content:
+ application/zip:
+ schema:
+ $ref: '#/components/schemas/OkaPackage'
responses:
'202':
description: Accepted
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/OpId'
- application/yaml:
- schema:
- $ref: '#/components/schemas/OpId'
'400':
$ref: '#/components/responses/BadRequest'
'401':
$ref: '#/components/responses/UnexpectedError'
delete:
tags:
- - "Infrastructure"
- - "Admin"
- summary: Delete a SDN
- description: Delete a SDN
- operationId: deleteSDN
+ - "OKA packages"
+ summary: Delete OKA package
+ description: This API is used to Delete OKA packages
+ operationId: deleteOKAPackage
responses:
'202':
description: Accepted
$ref: '#/components/responses/UnexpectedError'
default:
$ref: '#/components/responses/UnexpectedError'
- '/admin/v1/k8sclusters':
+# END OKA packages
+
+# BEGIN KSU
+ '/ksu/v1/ksus':
get:
tags:
- - "Infrastructure"
- - "Admin"
- summary: Query information about multiple K8s Clusters
- description: Query information about multiple K8s Clusters
- operationId: getK8sClusters
+ - "KSU"
+ summary: Get KSU
+ description: This API is used to Get KSU
+ operationId: getKSU
responses:
'200':
description: OK
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/ArrayOfK8sClusterInfo'
- application/yaml:
- schema:
- $ref: '#/components/schemas/ArrayOfK8sClusterInfo'
'400':
$ref: '#/components/responses/BadRequest'
'401':
$ref: '#/components/responses/UnexpectedError'
post:
tags:
- - "Infrastructure"
- - "Admin"
- summary: Create a new K8s Cluster
- description: Create a new K8s Cluster
- operationId: createK8sCluster
+ - "KSU"
+ summary: Add KSU
+ description: This API is used to Add KSU
+ operationId: addKSU
requestBody:
- $ref: '#/components/requestBodies/CreateK8sClusterRequest'
+ $ref: '#/components/requestBodies/MultipleKsu'
responses:
- '202':
- description: Accepted
+ '201':
+ description: Created
content:
application/json:
schema:
- $ref: '#/components/schemas/ObjectId_plus_OpId'
+ $ref: '#/components/schemas/ObjectId'
application/yaml:
schema:
- $ref: '#/components/schemas/ObjectId_plus_OpId'
+ $ref: '#/components/schemas/ObjectId'
'400':
$ref: '#/components/responses/BadRequest'
'401':
$ref: '#/components/responses/UnexpectedError'
default:
$ref: '#/components/responses/UnexpectedError'
- '/admin/v1/k8sclusters/{k8sClusterId}':
+ '/ksu/v1/ksus/{ksu_id}':
parameters:
- - name: k8sClusterId
+ - name: ksu_id
in: path
required: true
- description: K8s Cluster ID
+ description: ksu_id
schema:
type: string
- format: uuid
get:
tags:
- - "Infrastructure"
- - "Admin"
- summary: Query information about an individual K8s Cluster
- description: Query information about an individual K8s Cluster
- operationId: getK8sCluster
+ - "KSU"
+ summary: Read KSU
+ description: This API is used to Read KSU
+ operationId: readKSU
responses:
'200':
description: OK
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/K8sClusterInfo'
- application/yaml:
- schema:
- $ref: '#/components/schemas/K8sClusterInfo'
'400':
$ref: '#/components/responses/BadRequest'
'401':
$ref: '#/components/responses/UnexpectedError'
patch:
tags:
- - "Infrastructure"
- - "Admin"
- summary: Modify a K8s Cluster
- description: Modify a K8s Cluster
- operationId: editK8sCluster
+ - "KSU"
+ summary: Update KSU
+ description: This API is used to Update KSU
+ operationId: updateKSU
requestBody:
- $ref: '#/components/requestBodies/EditK8sClusterRequest'
+ $ref: '#/components/requestBodies/Ksu'
+ responses:
+ '202':
+ description: Accepted
+ '400':
+ $ref: '#/components/responses/BadRequest'
+ '401':
+ $ref: '#/components/responses/Unauthorized'
+ '403':
+ $ref: '#/components/responses/Forbidden'
+ '404':
+ $ref: '#/components/responses/NotFound'
+ '405':
+ $ref: '#/components/responses/MethodNotAllowed'
+ '406':
+ $ref: '#/components/responses/NotAcceptable'
+ '409':
+ $ref: '#/components/responses/Conflict'
+ '422':
+ $ref: '#/components/responses/UnprocessableEntity'
+ '500':
+ $ref: '#/components/responses/InternalServerError'
+ '503':
+ $ref: '#/components/responses/ServiceUnavailable'
+ '5XX':
+ $ref: '#/components/responses/UnexpectedError'
+ default:
+ $ref: '#/components/responses/UnexpectedError'
+ delete:
+ tags:
+ - "KSU"
+ summary: Delete KSU
+ description: This API is used to Delete KSU
+ operationId: deleteKSU
+ responses:
+ '202':
+ description: Accepted
+ '400':
+ $ref: '#/components/responses/BadRequest'
+ '401':
+ $ref: '#/components/responses/Unauthorized'
+ '403':
+ $ref: '#/components/responses/Forbidden'
+ '404':
+ $ref: '#/components/responses/NotFound'
+ '405':
+ $ref: '#/components/responses/MethodNotAllowed'
+ '406':
+ $ref: '#/components/responses/NotAcceptable'
+ '409':
+ $ref: '#/components/responses/Conflict'
+ '422':
+ $ref: '#/components/responses/UnprocessableEntity'
+ '500':
+ $ref: '#/components/responses/InternalServerError'
+ '503':
+ $ref: '#/components/responses/ServiceUnavailable'
+ '5XX':
+ $ref: '#/components/responses/UnexpectedError'
+ default:
+ $ref: '#/components/responses/UnexpectedError'
+ '/ksu/v1/ksus/update':
+ post:
+ tags:
+ - "KSU"
+ summary: Update multiple KSU
+ description: This API is used to Update multiple KSU
+ operationId: updateMultipleKSU
+ requestBody:
+ $ref: '#/components/requestBodies/MultipleKsu'
+ responses:
+ '202':
+ description: Accepted
+ '400':
+ $ref: '#/components/responses/BadRequest'
+ '401':
+ $ref: '#/components/responses/Unauthorized'
+ '403':
+ $ref: '#/components/responses/Forbidden'
+ '404':
+ $ref: '#/components/responses/NotFound'
+ '405':
+ $ref: '#/components/responses/MethodNotAllowed'
+ '406':
+ $ref: '#/components/responses/NotAcceptable'
+ '409':
+ $ref: '#/components/responses/Conflict'
+ '422':
+ $ref: '#/components/responses/UnprocessableEntity'
+ '500':
+ $ref: '#/components/responses/InternalServerError'
+ '503':
+ $ref: '#/components/responses/ServiceUnavailable'
+ '5XX':
+ $ref: '#/components/responses/UnexpectedError'
+ default:
+ $ref: '#/components/responses/UnexpectedError'
+ '/ksu/v1/ksus/delete':
+ post:
+ tags:
+ - "KSU"
+ summary: Delete multiple KSU
+ description: This API is used to Delete multiple KSU
+ operationId: deleteMultipleKSU
+ requestBody:
+ $ref: '#/components/requestBodies/DeleteMultipleKsu'
+ responses:
+ '202':
+ description: Accepted
+ '400':
+ $ref: '#/components/responses/BadRequest'
+ '401':
+ $ref: '#/components/responses/Unauthorized'
+ '403':
+ $ref: '#/components/responses/Forbidden'
+ '404':
+ $ref: '#/components/responses/NotFound'
+ '405':
+ $ref: '#/components/responses/MethodNotAllowed'
+ '406':
+ $ref: '#/components/responses/NotAcceptable'
+ '409':
+ $ref: '#/components/responses/Conflict'
+ '422':
+ $ref: '#/components/responses/UnprocessableEntity'
+ '500':
+ $ref: '#/components/responses/InternalServerError'
+ '503':
+ $ref: '#/components/responses/ServiceUnavailable'
+ '5XX':
+ $ref: '#/components/responses/UnexpectedError'
+ default:
+ $ref: '#/components/responses/UnexpectedError'
+ '/ksu/v1/ksus/{ksu_id}/clone':
+ parameters:
+ - name: ksu_id
+ in: path
+ required: true
+ description: ksu_id
+ schema:
+ type: string
+ post:
+ tags:
+ - "KSU"
+ summary: Clone KSU
+ description: This API is used to Clone KSU
+ operationId: cloneKSU
+ requestBody:
+ $ref: '#/components/requestBodies/CloneKsu'
responses:
'202':
description: Accepted
content:
application/json:
schema:
- $ref: '#/components/schemas/OpId'
+ $ref: '#/components/schemas/ObjectId'
application/yaml:
schema:
- $ref: '#/components/schemas/OpId'
+ $ref: '#/components/schemas/ObjectId'
'400':
$ref: '#/components/responses/BadRequest'
'401':
$ref: '#/components/responses/UnexpectedError'
default:
$ref: '#/components/responses/UnexpectedError'
- delete:
+ '/ksu/v1/ksus/{ksu_id}/move':
+ parameters:
+ - name: ksu_id
+ in: path
+ required: true
+ description: ksu_id
+ schema:
+ type: string
+ post:
tags:
- - "Infrastructure"
- - "Admin"
- summary: Delete a K8s Cluster
- description: Delete a K8s Cluster
- operationId: deleteK8sCluster
+ - "KSU"
+ summary: Move KSU
+ description: This API is used to Move KSU
+ operationId: moveKSU
+ requestBody:
+ $ref: '#/components/requestBodies/MoveKsu'
responses:
'202':
description: Accepted
$ref: '#/components/responses/UnexpectedError'
default:
$ref: '#/components/responses/UnexpectedError'
- '/admin/v1/k8srepos':
+# END KSU
+
+# BEGIN Admin
+ '/admin/v1/tokens':
get:
tags:
- - "Repositories"
+ - "Authentication"
- "Admin"
- summary: Query information about multiple K8s Repos
- description: Query information about multiple K8s Repos
- operationId: getK8sRepos
+ summary: Query information about multiple Tokens
+ description: Query information about multiple Tokens
+ operationId: getTokens
responses:
'200':
description: OK
content:
application/json:
schema:
- $ref: '#/components/schemas/ArrayOfK8sRepoInfo'
+ $ref: '#/components/schemas/ArrayOfTokenInfo'
application/yaml:
schema:
- $ref: '#/components/schemas/ArrayOfK8sRepoInfo'
+ $ref: '#/components/schemas/ArrayOfTokenInfo'
'400':
$ref: '#/components/responses/BadRequest'
'401':
$ref: '#/components/responses/UnexpectedError'
post:
tags:
- - "Repositories"
+ - "Authentication"
- "Admin"
- summary: Create a new K8s Repo
- description: Create a new K8s Repo
- operationId: createK8sRepo
+ summary: Request a new Token
+ description: Request a new Token
+ operationId: createToken
requestBody:
- $ref: '#/components/requestBodies/CreateK8sRepoRequest'
+ $ref: '#/components/requestBodies/CreateTokenRequest'
responses:
- '202':
- description: Accepted
+ '200':
+ description: OK
+ headers:
+ Location:
+ schema:
+ type: string
+ format: uri
content:
application/json:
schema:
- $ref: '#/components/schemas/ObjectId_plus_OpId'
+ oneOf:
+ - $ref: '#/components/schemas/TokenInfo'
+ - $ref: '#/components/schemas/PasswordExpiryInfo'
application/yaml:
schema:
- $ref: '#/components/schemas/ObjectId_plus_OpId'
+ oneOf:
+ - $ref: '#/components/schemas/TokenInfo'
+ - $ref: '#/components/schemas/PasswordExpiryInfo'
'400':
$ref: '#/components/responses/BadRequest'
'401':
$ref: '#/components/responses/UnexpectedError'
default:
$ref: '#/components/responses/UnexpectedError'
- '/admin/v1/k8srepos/{k8sRepoId}':
- parameters:
- - name: k8sRepoId
- in: path
- required: true
- description: K8s Repo ID
- schema:
- type: string
- format: uuid
- get:
+ delete:
tags:
- - "Repositories"
+ - "Authentication"
- "Admin"
- summary: Query information about an individual K8s Repo
- description: Query information about an individual K8s Repo
- operationId: getK8sRepo
+ summary: Delete the Token indicated in the Authorization Header
+ description: Delete the Token indicated in the Authorization Header
+ operationId: deleteAuthToken
responses:
'200':
description: OK
content:
application/json:
schema:
- $ref: '#/components/schemas/K8sRepoInfo'
+ type: string
application/yaml:
schema:
- $ref: '#/components/schemas/K8sRepoInfo'
+ type: string
'400':
$ref: '#/components/responses/BadRequest'
'401':
$ref: '#/components/responses/UnexpectedError'
default:
$ref: '#/components/responses/UnexpectedError'
- delete:
+ '/admin/v1/tokens/{tokenId}':
+ parameters:
+ - name: tokenId
+ in: path
+ required: true
+ description: Token ID
+ schema:
+ type: string
+ get:
tags:
- - "Repositories"
+ - "Authentication"
- "Admin"
- summary: Delete a K8s Repo
- description: Delete a K8s Repo
- operationId: deleteK8sRepo
+ summary: Query information about an individual Token
+ description: Query information about an individual Token
+ operationId: getToken
responses:
- '202':
- description: Accepted
+ '200':
+ description: OK
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/TokenInfo'
+ application/yaml:
+ schema:
+ $ref: '#/components/schemas/TokenInfo'
'400':
$ref: '#/components/responses/BadRequest'
'401':
$ref: '#/components/responses/UnexpectedError'
default:
$ref: '#/components/responses/UnexpectedError'
-# END Admin
-
-externalDocs:
- description: Find out more about OSM
- url: 'https://osm.etsi.org/docs/user-guide/'
-
-components:
- responses:
- BadRequest:
- description: Bad request. The server cannot process the request due to a client error.
- content:
- application/json:
- schema:
+ delete:
+ tags:
+ - "Authentication"
+ - "Admin"
+ summary: Delete the Token indicated as parameter
+ description: Delete the Token indicated as parameter
+ operationId: deleteToken
+ responses:
+ '200':
+ description: OK
+ content:
+ application/json:
+ schema:
+ type: string
+ application/yaml:
+ schema:
+ type: string
+ '400':
+ $ref: '#/components/responses/BadRequest'
+ '401':
+ $ref: '#/components/responses/Unauthorized'
+ '403':
+ $ref: '#/components/responses/Forbidden'
+ '404':
+ $ref: '#/components/responses/NotFound'
+ '405':
+ $ref: '#/components/responses/MethodNotAllowed'
+ '406':
+ $ref: '#/components/responses/NotAcceptable'
+ '409':
+ $ref: '#/components/responses/Conflict'
+ '422':
+ $ref: '#/components/responses/UnprocessableEntity'
+ '500':
+ $ref: '#/components/responses/InternalServerError'
+ '503':
+ $ref: '#/components/responses/ServiceUnavailable'
+ '5XX':
+ $ref: '#/components/responses/UnexpectedError'
+ default:
+ $ref: '#/components/responses/UnexpectedError'
+ '/admin/v1/users':
+ get:
+ tags:
+ - "Identity"
+ - "Admin"
+ summary: Query information about multiple Users
+ description: Query information about multiple Users
+ operationId: getUsers
+ responses:
+ '200':
+ description: OK
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/ArrayOfUserInfo'
+ application/yaml:
+ schema:
+ $ref: '#/components/schemas/ArrayOfUserInfo'
+ '400':
+ $ref: '#/components/responses/BadRequest'
+ '401':
+ $ref: '#/components/responses/Unauthorized'
+ '403':
+ $ref: '#/components/responses/Forbidden'
+ '404':
+ $ref: '#/components/responses/NotFound'
+ '405':
+ $ref: '#/components/responses/MethodNotAllowed'
+ '406':
+ $ref: '#/components/responses/NotAcceptable'
+ '409':
+ $ref: '#/components/responses/Conflict'
+ '422':
+ $ref: '#/components/responses/UnprocessableEntity'
+ '500':
+ $ref: '#/components/responses/InternalServerError'
+ '503':
+ $ref: '#/components/responses/ServiceUnavailable'
+ '5XX':
+ $ref: '#/components/responses/UnexpectedError'
+ default:
+ $ref: '#/components/responses/UnexpectedError'
+ post:
+ tags:
+ - "Identity"
+ - "Admin"
+ summary: Create a new User
+ description: Create a new User
+ operationId: createUser
+ requestBody:
+ $ref: '#/components/requestBodies/CreateUserRequest'
+ responses:
+ '201':
+ description: Created
+ headers:
+ Location:
+ schema:
+ type: string
+ format: uri
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/ObjectId'
+ application/yaml:
+ schema:
+ $ref: '#/components/schemas/ObjectId'
+ '400':
+ $ref: '#/components/responses/BadRequest'
+ '401':
+ $ref: '#/components/responses/Unauthorized'
+ '403':
+ $ref: '#/components/responses/Forbidden'
+ '404':
+ $ref: '#/components/responses/NotFound'
+ '405':
+ $ref: '#/components/responses/MethodNotAllowed'
+ '406':
+ $ref: '#/components/responses/NotAcceptable'
+ '409':
+ $ref: '#/components/responses/Conflict'
+ '422':
+ $ref: '#/components/responses/UnprocessableEntity'
+ '500':
+ $ref: '#/components/responses/InternalServerError'
+ '503':
+ $ref: '#/components/responses/ServiceUnavailable'
+ '5XX':
+ $ref: '#/components/responses/UnexpectedError'
+ default:
+ $ref: '#/components/responses/UnexpectedError'
+ '/admin/v1/users/{userId}':
+ parameters:
+ - name: userId
+ in: path
+ required: true
+ description: User ID/Name
+ schema:
+ type: string
+ get:
+ tags:
+ - "Identity"
+ - "Admin"
+ summary: Query information about an individual User
+ description: Query information about an individual User
+ operationId: getUser
+ responses:
+ '200':
+ description: OK
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/UserInfo'
+ application/yaml:
+ schema:
+ $ref: '#/components/schemas/UserInfo'
+ '400':
+ $ref: '#/components/responses/BadRequest'
+ '401':
+ $ref: '#/components/responses/Unauthorized'
+ '403':
+ $ref: '#/components/responses/Forbidden'
+ '404':
+ $ref: '#/components/responses/NotFound'
+ '405':
+ $ref: '#/components/responses/MethodNotAllowed'
+ '406':
+ $ref: '#/components/responses/NotAcceptable'
+ '409':
+ $ref: '#/components/responses/Conflict'
+ '422':
+ $ref: '#/components/responses/UnprocessableEntity'
+ '500':
+ $ref: '#/components/responses/InternalServerError'
+ '503':
+ $ref: '#/components/responses/ServiceUnavailable'
+ '5XX':
+ $ref: '#/components/responses/UnexpectedError'
+ default:
+ $ref: '#/components/responses/UnexpectedError'
+ patch:
+ tags:
+ - "Identity"
+ - "Admin"
+ summary: Modify a User
+ description: Modify a User
+ operationId: editUser
+ requestBody:
+ $ref: '#/components/requestBodies/EditUserRequest'
+ responses:
+ '204':
+ description: No Content
+ '400':
+ $ref: '#/components/responses/BadRequest'
+ '401':
+ $ref: '#/components/responses/Unauthorized'
+ '403':
+ $ref: '#/components/responses/Forbidden'
+ '404':
+ $ref: '#/components/responses/NotFound'
+ '405':
+ $ref: '#/components/responses/MethodNotAllowed'
+ '406':
+ $ref: '#/components/responses/NotAcceptable'
+ '409':
+ $ref: '#/components/responses/Conflict'
+ '422':
+ $ref: '#/components/responses/UnprocessableEntity'
+ '500':
+ $ref: '#/components/responses/InternalServerError'
+ '503':
+ $ref: '#/components/responses/ServiceUnavailable'
+ '5XX':
+ $ref: '#/components/responses/UnexpectedError'
+ default:
+ $ref: '#/components/responses/UnexpectedError'
+ delete:
+ tags:
+ - "Identity"
+ - "Admin"
+ summary: Delete a User
+ description: Delete a User
+ operationId: deleteUser
+ responses:
+ '204':
+ description: No Content
+ '400':
+ $ref: '#/components/responses/BadRequest'
+ '401':
+ $ref: '#/components/responses/Unauthorized'
+ '403':
+ $ref: '#/components/responses/Forbidden'
+ '404':
+ $ref: '#/components/responses/NotFound'
+ '405':
+ $ref: '#/components/responses/MethodNotAllowed'
+ '406':
+ $ref: '#/components/responses/NotAcceptable'
+ '409':
+ $ref: '#/components/responses/Conflict'
+ '422':
+ $ref: '#/components/responses/UnprocessableEntity'
+ '500':
+ $ref: '#/components/responses/InternalServerError'
+ '503':
+ $ref: '#/components/responses/ServiceUnavailable'
+ '5XX':
+ $ref: '#/components/responses/UnexpectedError'
+ default:
+ $ref: '#/components/responses/UnexpectedError'
+ '/admin/v1/projects':
+ get:
+ tags:
+ - "Identity"
+ - "Admin"
+ summary: Query information about multiple Projects
+ description: Query information about multiple Projects
+ operationId: getProjects
+ responses:
+ '200':
+ description: OK
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/ArrayOfProjectInfo'
+ application/yaml:
+ schema:
+ $ref: '#/components/schemas/ArrayOfProjectInfo'
+ '400':
+ $ref: '#/components/responses/BadRequest'
+ '401':
+ $ref: '#/components/responses/Unauthorized'
+ '403':
+ $ref: '#/components/responses/Forbidden'
+ '404':
+ $ref: '#/components/responses/NotFound'
+ '405':
+ $ref: '#/components/responses/MethodNotAllowed'
+ '406':
+ $ref: '#/components/responses/NotAcceptable'
+ '409':
+ $ref: '#/components/responses/Conflict'
+ '422':
+ $ref: '#/components/responses/UnprocessableEntity'
+ '500':
+ $ref: '#/components/responses/InternalServerError'
+ '503':
+ $ref: '#/components/responses/ServiceUnavailable'
+ '5XX':
+ $ref: '#/components/responses/UnexpectedError'
+ default:
+ $ref: '#/components/responses/UnexpectedError'
+ post:
+ tags:
+ - "Identity"
+ - "Admin"
+ summary: Create a new Project
+ description: Create a new Project
+ operationId: createProject
+ requestBody:
+ $ref: '#/components/requestBodies/CreateProjectRequest'
+ responses:
+ '201':
+ description: Created
+ headers:
+ Location:
+ schema:
+ type: string
+ format: uri
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/ObjectId'
+ application/yaml:
+ schema:
+ $ref: '#/components/schemas/ObjectId'
+ '400':
+ $ref: '#/components/responses/BadRequest'
+ '401':
+ $ref: '#/components/responses/Unauthorized'
+ '403':
+ $ref: '#/components/responses/Forbidden'
+ '404':
+ $ref: '#/components/responses/NotFound'
+ '405':
+ $ref: '#/components/responses/MethodNotAllowed'
+ '406':
+ $ref: '#/components/responses/NotAcceptable'
+ '409':
+ $ref: '#/components/responses/Conflict'
+ '422':
+ $ref: '#/components/responses/UnprocessableEntity'
+ '500':
+ $ref: '#/components/responses/InternalServerError'
+ '503':
+ $ref: '#/components/responses/ServiceUnavailable'
+ '5XX':
+ $ref: '#/components/responses/UnexpectedError'
+ default:
+ $ref: '#/components/responses/UnexpectedError'
+ '/admin/v1/projects/{projectId}':
+ parameters:
+ - name: projectId
+ in: path
+ required: true
+ description: Project ID/Name
+ schema:
+ type: string
+ get:
+ tags:
+ - "Identity"
+ - "Admin"
+ summary: Query information about an individual Project
+ description: Query information about an individual Project
+ operationId: getProject
+ responses:
+ '200':
+ description: OK
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/ProjectInfo'
+ application/yaml:
+ schema:
+ $ref: '#/components/schemas/ProjectInfo'
+ '400':
+ $ref: '#/components/responses/BadRequest'
+ '401':
+ $ref: '#/components/responses/Unauthorized'
+ '403':
+ $ref: '#/components/responses/Forbidden'
+ '404':
+ $ref: '#/components/responses/NotFound'
+ '405':
+ $ref: '#/components/responses/MethodNotAllowed'
+ '406':
+ $ref: '#/components/responses/NotAcceptable'
+ '409':
+ $ref: '#/components/responses/Conflict'
+ '422':
+ $ref: '#/components/responses/UnprocessableEntity'
+ '500':
+ $ref: '#/components/responses/InternalServerError'
+ '503':
+ $ref: '#/components/responses/ServiceUnavailable'
+ '5XX':
+ $ref: '#/components/responses/UnexpectedError'
+ default:
+ $ref: '#/components/responses/UnexpectedError'
+ patch:
+ tags:
+ - "Identity"
+ - "Admin"
+ summary: Modify a Project
+ description: Modify a Project
+ operationId: editProject
+ requestBody:
+ $ref: '#/components/requestBodies/EditProjectRequest'
+ responses:
+ '204':
+ description: No Content
+ '400':
+ $ref: '#/components/responses/BadRequest'
+ '401':
+ $ref: '#/components/responses/Unauthorized'
+ '403':
+ $ref: '#/components/responses/Forbidden'
+ '404':
+ $ref: '#/components/responses/NotFound'
+ '405':
+ $ref: '#/components/responses/MethodNotAllowed'
+ '406':
+ $ref: '#/components/responses/NotAcceptable'
+ '409':
+ $ref: '#/components/responses/Conflict'
+ '422':
+ $ref: '#/components/responses/UnprocessableEntity'
+ '500':
+ $ref: '#/components/responses/InternalServerError'
+ '503':
+ $ref: '#/components/responses/ServiceUnavailable'
+ '5XX':
+ $ref: '#/components/responses/UnexpectedError'
+ default:
+ $ref: '#/components/responses/UnexpectedError'
+ delete:
+ tags:
+ - "Identity"
+ - "Admin"
+ summary: Delete a Project
+ description: Delete a Project
+ operationId: deleteProject
+ responses:
+ '204':
+ description: No Content
+ '400':
+ $ref: '#/components/responses/BadRequest'
+ '401':
+ $ref: '#/components/responses/Unauthorized'
+ '403':
+ $ref: '#/components/responses/Forbidden'
+ '404':
+ $ref: '#/components/responses/NotFound'
+ '405':
+ $ref: '#/components/responses/MethodNotAllowed'
+ '406':
+ $ref: '#/components/responses/NotAcceptable'
+ '409':
+ $ref: '#/components/responses/Conflict'
+ '422':
+ $ref: '#/components/responses/UnprocessableEntity'
+ '500':
+ $ref: '#/components/responses/InternalServerError'
+ '503':
+ $ref: '#/components/responses/ServiceUnavailable'
+ '5XX':
+ $ref: '#/components/responses/UnexpectedError'
+ default:
+ $ref: '#/components/responses/UnexpectedError'
+ '/admin/v1/roles':
+ get:
+ tags:
+ - "Identity"
+ - "Admin"
+ summary: Query information about multiple Roles
+ description: Query information about multiple Roles
+ operationId: getRoles
+ responses:
+ '200':
+ description: OK
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/ArrayOfRoleInfo'
+ application/yaml:
+ schema:
+ $ref: '#/components/schemas/ArrayOfRoleInfo'
+ '400':
+ $ref: '#/components/responses/BadRequest'
+ '401':
+ $ref: '#/components/responses/Unauthorized'
+ '403':
+ $ref: '#/components/responses/Forbidden'
+ '404':
+ $ref: '#/components/responses/NotFound'
+ '405':
+ $ref: '#/components/responses/MethodNotAllowed'
+ '406':
+ $ref: '#/components/responses/NotAcceptable'
+ '409':
+ $ref: '#/components/responses/Conflict'
+ '422':
+ $ref: '#/components/responses/UnprocessableEntity'
+ '500':
+ $ref: '#/components/responses/InternalServerError'
+ '503':
+ $ref: '#/components/responses/ServiceUnavailable'
+ '5XX':
+ $ref: '#/components/responses/UnexpectedError'
+ default:
+ $ref: '#/components/responses/UnexpectedError'
+ post:
+ tags:
+ - "Identity"
+ - "Admin"
+ summary: Create a new Role
+ description: Create a new Role
+ operationId: createRole
+ requestBody:
+ $ref: '#/components/requestBodies/CreateRoleRequest'
+ responses:
+ '201':
+ description: Created
+ headers:
+ Location:
+ schema:
+ type: string
+ format: uri
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/ObjectId'
+ application/yaml:
+ schema:
+ $ref: '#/components/schemas/ObjectId'
+ '400':
+ $ref: '#/components/responses/BadRequest'
+ '401':
+ $ref: '#/components/responses/Unauthorized'
+ '403':
+ $ref: '#/components/responses/Forbidden'
+ '404':
+ $ref: '#/components/responses/NotFound'
+ '405':
+ $ref: '#/components/responses/MethodNotAllowed'
+ '406':
+ $ref: '#/components/responses/NotAcceptable'
+ '409':
+ $ref: '#/components/responses/Conflict'
+ '422':
+ $ref: '#/components/responses/UnprocessableEntity'
+ '500':
+ $ref: '#/components/responses/InternalServerError'
+ '503':
+ $ref: '#/components/responses/ServiceUnavailable'
+ '5XX':
+ $ref: '#/components/responses/UnexpectedError'
+ default:
+ $ref: '#/components/responses/UnexpectedError'
+ '/admin/v1/roles/{roleId}':
+ parameters:
+ - name: roleId
+ in: path
+ required: true
+ description: Role ID/Name
+ schema:
+ type: string
+ get:
+ tags:
+ - "Identity"
+ - "Admin"
+ summary: Query information about an individual Role
+ description: Query information about an individual Role
+ operationId: getRole
+ responses:
+ '200':
+ description: OK
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/RoleInfo'
+ application/yaml:
+ schema:
+ $ref: '#/components/schemas/RoleInfo'
+ '400':
+ $ref: '#/components/responses/BadRequest'
+ '401':
+ $ref: '#/components/responses/Unauthorized'
+ '403':
+ $ref: '#/components/responses/Forbidden'
+ '404':
+ $ref: '#/components/responses/NotFound'
+ '405':
+ $ref: '#/components/responses/MethodNotAllowed'
+ '406':
+ $ref: '#/components/responses/NotAcceptable'
+ '409':
+ $ref: '#/components/responses/Conflict'
+ '422':
+ $ref: '#/components/responses/UnprocessableEntity'
+ '500':
+ $ref: '#/components/responses/InternalServerError'
+ '503':
+ $ref: '#/components/responses/ServiceUnavailable'
+ '5XX':
+ $ref: '#/components/responses/UnexpectedError'
+ default:
+ $ref: '#/components/responses/UnexpectedError'
+ patch:
+ tags:
+ - "Identity"
+ - "Admin"
+ summary: Modify a Role
+ description: Modify a Role
+ operationId: editRole
+ requestBody:
+ $ref: '#/components/requestBodies/EditRoleRequest'
+ responses:
+ '204':
+ description: No Content
+ '400':
+ $ref: '#/components/responses/BadRequest'
+ '401':
+ $ref: '#/components/responses/Unauthorized'
+ '403':
+ $ref: '#/components/responses/Forbidden'
+ '404':
+ $ref: '#/components/responses/NotFound'
+ '405':
+ $ref: '#/components/responses/MethodNotAllowed'
+ '406':
+ $ref: '#/components/responses/NotAcceptable'
+ '409':
+ $ref: '#/components/responses/Conflict'
+ '422':
+ $ref: '#/components/responses/UnprocessableEntity'
+ '500':
+ $ref: '#/components/responses/InternalServerError'
+ '503':
+ $ref: '#/components/responses/ServiceUnavailable'
+ '5XX':
+ $ref: '#/components/responses/UnexpectedError'
+ default:
+ $ref: '#/components/responses/UnexpectedError'
+ delete:
+ tags:
+ - "Identity"
+ - "Admin"
+ summary: Delete a Role
+ description: Delete a Role
+ operationId: deleteRole
+ responses:
+ '204':
+ description: No Content
+ '400':
+ $ref: '#/components/responses/BadRequest'
+ '401':
+ $ref: '#/components/responses/Unauthorized'
+ '403':
+ $ref: '#/components/responses/Forbidden'
+ '404':
+ $ref: '#/components/responses/NotFound'
+ '405':
+ $ref: '#/components/responses/MethodNotAllowed'
+ '406':
+ $ref: '#/components/responses/NotAcceptable'
+ '409':
+ $ref: '#/components/responses/Conflict'
+ '422':
+ $ref: '#/components/responses/UnprocessableEntity'
+ '500':
+ $ref: '#/components/responses/InternalServerError'
+ '503':
+ $ref: '#/components/responses/ServiceUnavailable'
+ '5XX':
+ $ref: '#/components/responses/UnexpectedError'
+ default:
+ $ref: '#/components/responses/UnexpectedError'
+ '/admin/v1/vims':
+ get:
+ tags:
+ - "Infrastructure"
+ - "Admin"
+ summary: Query information about multiple VIMs
+ description: Query information about multiple VIMs
+ operationId: getVIMs
+ responses:
+ '200':
+ description: OK
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/ArrayOfVimInfo'
+ application/yaml:
+ schema:
+ $ref: '#/components/schemas/ArrayOfVimInfo'
+ '400':
+ $ref: '#/components/responses/BadRequest'
+ '401':
+ $ref: '#/components/responses/Unauthorized'
+ '403':
+ $ref: '#/components/responses/Forbidden'
+ '404':
+ $ref: '#/components/responses/NotFound'
+ '405':
+ $ref: '#/components/responses/MethodNotAllowed'
+ '406':
+ $ref: '#/components/responses/NotAcceptable'
+ '409':
+ $ref: '#/components/responses/Conflict'
+ '422':
+ $ref: '#/components/responses/UnprocessableEntity'
+ '500':
+ $ref: '#/components/responses/InternalServerError'
+ '503':
+ $ref: '#/components/responses/ServiceUnavailable'
+ '5XX':
+ $ref: '#/components/responses/UnexpectedError'
+ default:
+ $ref: '#/components/responses/UnexpectedError'
+ post:
+ tags:
+ - "Infrastructure"
+ - "Admin"
+ summary: Create a new VIM
+ description: Create a new VIM
+ operationId: createVIM
+ requestBody:
+ $ref: '#/components/requestBodies/CreateVimRequest'
+ responses:
+ '202':
+ description: Accepted
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/ObjectId_plus_OpId'
+ application/yaml:
+ schema:
+ $ref: '#/components/schemas/ObjectId_plus_OpId'
+ '400':
+ $ref: '#/components/responses/BadRequest'
+ '401':
+ $ref: '#/components/responses/Unauthorized'
+ '403':
+ $ref: '#/components/responses/Forbidden'
+ '404':
+ $ref: '#/components/responses/NotFound'
+ '405':
+ $ref: '#/components/responses/MethodNotAllowed'
+ '406':
+ $ref: '#/components/responses/NotAcceptable'
+ '409':
+ $ref: '#/components/responses/Conflict'
+ '422':
+ $ref: '#/components/responses/UnprocessableEntity'
+ '500':
+ $ref: '#/components/responses/InternalServerError'
+ '503':
+ $ref: '#/components/responses/ServiceUnavailable'
+ '5XX':
+ $ref: '#/components/responses/UnexpectedError'
+ default:
+ $ref: '#/components/responses/UnexpectedError'
+ '/admin/v1/vims/{vimId}':
+ parameters:
+ - name: vimId
+ in: path
+ required: true
+ description: VIM ID
+ schema:
+ type: string
+ format: uuid
+ get:
+ tags:
+ - "Infrastructure"
+ - "Admin"
+ summary: Query information about an individual VIM
+ description: Query information about an individual VIM
+ operationId: getVIM
+ responses:
+ '200':
+ description: OK
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/VimInfo'
+ application/yaml:
+ schema:
+ $ref: '#/components/schemas/VimInfo'
+ '400':
+ $ref: '#/components/responses/BadRequest'
+ '401':
+ $ref: '#/components/responses/Unauthorized'
+ '403':
+ $ref: '#/components/responses/Forbidden'
+ '404':
+ $ref: '#/components/responses/NotFound'
+ '405':
+ $ref: '#/components/responses/MethodNotAllowed'
+ '406':
+ $ref: '#/components/responses/NotAcceptable'
+ '409':
+ $ref: '#/components/responses/Conflict'
+ '422':
+ $ref: '#/components/responses/UnprocessableEntity'
+ '500':
+ $ref: '#/components/responses/InternalServerError'
+ '503':
+ $ref: '#/components/responses/ServiceUnavailable'
+ '5XX':
+ $ref: '#/components/responses/UnexpectedError'
+ default:
+ $ref: '#/components/responses/UnexpectedError'
+ patch:
+ tags:
+ - "Infrastructure"
+ - "Admin"
+ summary: Modify a VIM
+ description: Modify a VIM
+ operationId: editVIM
+ requestBody:
+ $ref: '#/components/requestBodies/EditVimRequest'
+ responses:
+ '202':
+ description: Accepted
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/OpId'
+ application/yaml:
+ schema:
+ $ref: '#/components/schemas/OpId'
+ '400':
+ $ref: '#/components/responses/BadRequest'
+ '401':
+ $ref: '#/components/responses/Unauthorized'
+ '403':
+ $ref: '#/components/responses/Forbidden'
+ '404':
+ $ref: '#/components/responses/NotFound'
+ '405':
+ $ref: '#/components/responses/MethodNotAllowed'
+ '406':
+ $ref: '#/components/responses/NotAcceptable'
+ '409':
+ $ref: '#/components/responses/Conflict'
+ '422':
+ $ref: '#/components/responses/UnprocessableEntity'
+ '500':
+ $ref: '#/components/responses/InternalServerError'
+ '503':
+ $ref: '#/components/responses/ServiceUnavailable'
+ '5XX':
+ $ref: '#/components/responses/UnexpectedError'
+ default:
+ $ref: '#/components/responses/UnexpectedError'
+ delete:
+ tags:
+ - "Infrastructure"
+ - "Admin"
+ summary: Delete a VIM
+ description: Delete a VIM
+ operationId: deleteVIM
+ responses:
+ '202':
+ description: Accepted
+ '400':
+ $ref: '#/components/responses/BadRequest'
+ '401':
+ $ref: '#/components/responses/Unauthorized'
+ '403':
+ $ref: '#/components/responses/Forbidden'
+ '404':
+ $ref: '#/components/responses/NotFound'
+ '405':
+ $ref: '#/components/responses/MethodNotAllowed'
+ '406':
+ $ref: '#/components/responses/NotAcceptable'
+ '409':
+ $ref: '#/components/responses/Conflict'
+ '422':
+ $ref: '#/components/responses/UnprocessableEntity'
+ '500':
+ $ref: '#/components/responses/InternalServerError'
+ '503':
+ $ref: '#/components/responses/ServiceUnavailable'
+ '5XX':
+ $ref: '#/components/responses/UnexpectedError'
+ default:
+ $ref: '#/components/responses/UnexpectedError'
+ '/admin/v1/vim_accounts':
+ get:
+ tags:
+ - "Infrastructure"
+ - "Admin"
+ summary: Query information about multiple VIM Accounts
+ description: Query information about multiple VIM Accounts
+ operationId: getVimAccounts
+ responses:
+ '200':
+ description: OK
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/ArrayOfVimInfo'
+ application/yaml:
+ schema:
+ $ref: '#/components/schemas/ArrayOfVimInfo'
+ '400':
+ $ref: '#/components/responses/BadRequest'
+ '401':
+ $ref: '#/components/responses/Unauthorized'
+ '403':
+ $ref: '#/components/responses/Forbidden'
+ '404':
+ $ref: '#/components/responses/NotFound'
+ '405':
+ $ref: '#/components/responses/MethodNotAllowed'
+ '406':
+ $ref: '#/components/responses/NotAcceptable'
+ '409':
+ $ref: '#/components/responses/Conflict'
+ '422':
+ $ref: '#/components/responses/UnprocessableEntity'
+ '500':
+ $ref: '#/components/responses/InternalServerError'
+ '503':
+ $ref: '#/components/responses/ServiceUnavailable'
+ '5XX':
+ $ref: '#/components/responses/UnexpectedError'
+ default:
+ $ref: '#/components/responses/UnexpectedError'
+ post:
+ tags:
+ - "Infrastructure"
+ - "Admin"
+ summary: Create a new VIM Account
+ description: Create a new VIM Account
+ operationId: createVimAccount
+ requestBody:
+ $ref: '#/components/requestBodies/CreateVimRequest'
+ responses:
+ '202':
+ description: Accepted
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/ObjectId_plus_OpId'
+ application/yaml:
+ schema:
+ $ref: '#/components/schemas/ObjectId_plus_OpId'
+ '400':
+ $ref: '#/components/responses/BadRequest'
+ '401':
+ $ref: '#/components/responses/Unauthorized'
+ '403':
+ $ref: '#/components/responses/Forbidden'
+ '404':
+ $ref: '#/components/responses/NotFound'
+ '405':
+ $ref: '#/components/responses/MethodNotAllowed'
+ '406':
+ $ref: '#/components/responses/NotAcceptable'
+ '409':
+ $ref: '#/components/responses/Conflict'
+ '422':
+ $ref: '#/components/responses/UnprocessableEntity'
+ '500':
+ $ref: '#/components/responses/InternalServerError'
+ '503':
+ $ref: '#/components/responses/ServiceUnavailable'
+ '5XX':
+ $ref: '#/components/responses/UnexpectedError'
+ default:
+ $ref: '#/components/responses/UnexpectedError'
+ '/admin/v1/vim_accounts/{vimAccountId}':
+ parameters:
+ - name: vimAccountId
+ in: path
+ required: true
+ description: VIM Account ID
+ schema:
+ type: string
+ format: uuid
+ get:
+ tags:
+ - "Infrastructure"
+ - "Admin"
+ summary: Query information about an individual VIM Account
+ description: Query information about an individual VIM Account
+ operationId: getVimAccount
+ responses:
+ '200':
+ description: OK
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/VimInfo'
+ application/yaml:
+ schema:
+ $ref: '#/components/schemas/VimInfo'
+ '400':
+ $ref: '#/components/responses/BadRequest'
+ '401':
+ $ref: '#/components/responses/Unauthorized'
+ '403':
+ $ref: '#/components/responses/Forbidden'
+ '404':
+ $ref: '#/components/responses/NotFound'
+ '405':
+ $ref: '#/components/responses/MethodNotAllowed'
+ '406':
+ $ref: '#/components/responses/NotAcceptable'
+ '409':
+ $ref: '#/components/responses/Conflict'
+ '422':
+ $ref: '#/components/responses/UnprocessableEntity'
+ '500':
+ $ref: '#/components/responses/InternalServerError'
+ '503':
+ $ref: '#/components/responses/ServiceUnavailable'
+ '5XX':
+ $ref: '#/components/responses/UnexpectedError'
+ default:
+ $ref: '#/components/responses/UnexpectedError'
+ patch:
+ tags:
+ - "Infrastructure"
+ - "Admin"
+ summary: Modify a VIM Account
+ description: Modify a VIM Account
+ operationId: editVimAccount
+ requestBody:
+ $ref: '#/components/requestBodies/EditVimRequest'
+ responses:
+ '202':
+ description: Accepted
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/OpId'
+ application/yaml:
+ schema:
+ $ref: '#/components/schemas/OpId'
+ '400':
+ $ref: '#/components/responses/BadRequest'
+ '401':
+ $ref: '#/components/responses/Unauthorized'
+ '403':
+ $ref: '#/components/responses/Forbidden'
+ '404':
+ $ref: '#/components/responses/NotFound'
+ '405':
+ $ref: '#/components/responses/MethodNotAllowed'
+ '406':
+ $ref: '#/components/responses/NotAcceptable'
+ '409':
+ $ref: '#/components/responses/Conflict'
+ '422':
+ $ref: '#/components/responses/UnprocessableEntity'
+ '500':
+ $ref: '#/components/responses/InternalServerError'
+ '503':
+ $ref: '#/components/responses/ServiceUnavailable'
+ '5XX':
+ $ref: '#/components/responses/UnexpectedError'
+ default:
+ $ref: '#/components/responses/UnexpectedError'
+ delete:
+ tags:
+ - "Infrastructure"
+ - "Admin"
+ summary: Delete a VIM Account
+ description: Delete a VIM Account
+ operationId: deleteVimAccount
+ responses:
+ '202':
+ description: Accepted
+ '400':
+ $ref: '#/components/responses/BadRequest'
+ '401':
+ $ref: '#/components/responses/Unauthorized'
+ '403':
+ $ref: '#/components/responses/Forbidden'
+ '404':
+ $ref: '#/components/responses/NotFound'
+ '405':
+ $ref: '#/components/responses/MethodNotAllowed'
+ '406':
+ $ref: '#/components/responses/NotAcceptable'
+ '409':
+ $ref: '#/components/responses/Conflict'
+ '422':
+ $ref: '#/components/responses/UnprocessableEntity'
+ '500':
+ $ref: '#/components/responses/InternalServerError'
+ '503':
+ $ref: '#/components/responses/ServiceUnavailable'
+ '5XX':
+ $ref: '#/components/responses/UnexpectedError'
+ default:
+ $ref: '#/components/responses/UnexpectedError'
+ '/admin/v1/wim_accounts':
+ get:
+ tags:
+ - "Infrastructure"
+ - "Admin"
+ summary: Query information about multiple WIM Accounts
+ description: Query information about multiple WIM Accounts
+ operationId: getWimAccounts
+ responses:
+ '200':
+ description: OK
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/ArrayOfWimInfo'
+ application/yaml:
+ schema:
+ $ref: '#/components/schemas/ArrayOfWimInfo'
+ '400':
+ $ref: '#/components/responses/BadRequest'
+ '401':
+ $ref: '#/components/responses/Unauthorized'
+ '403':
+ $ref: '#/components/responses/Forbidden'
+ '404':
+ $ref: '#/components/responses/NotFound'
+ '405':
+ $ref: '#/components/responses/MethodNotAllowed'
+ '406':
+ $ref: '#/components/responses/NotAcceptable'
+ '409':
+ $ref: '#/components/responses/Conflict'
+ '422':
+ $ref: '#/components/responses/UnprocessableEntity'
+ '500':
+ $ref: '#/components/responses/InternalServerError'
+ '503':
+ $ref: '#/components/responses/ServiceUnavailable'
+ '5XX':
+ $ref: '#/components/responses/UnexpectedError'
+ default:
+ $ref: '#/components/responses/UnexpectedError'
+ post:
+ tags:
+ - "Infrastructure"
+ - "Admin"
+ summary: Create a new WIM Account
+ description: Create a new WIM Account
+ operationId: createWimAccount
+ requestBody:
+ $ref: '#/components/requestBodies/CreateWimRequest'
+ responses:
+ '202':
+ description: Accepted
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/ObjectId_plus_OpId'
+ application/yaml:
+ schema:
+ $ref: '#/components/schemas/ObjectId_plus_OpId'
+ '400':
+ $ref: '#/components/responses/BadRequest'
+ '401':
+ $ref: '#/components/responses/Unauthorized'
+ '403':
+ $ref: '#/components/responses/Forbidden'
+ '404':
+ $ref: '#/components/responses/NotFound'
+ '405':
+ $ref: '#/components/responses/MethodNotAllowed'
+ '406':
+ $ref: '#/components/responses/NotAcceptable'
+ '409':
+ $ref: '#/components/responses/Conflict'
+ '422':
+ $ref: '#/components/responses/UnprocessableEntity'
+ '500':
+ $ref: '#/components/responses/InternalServerError'
+ '503':
+ $ref: '#/components/responses/ServiceUnavailable'
+ '5XX':
+ $ref: '#/components/responses/UnexpectedError'
+ default:
+ $ref: '#/components/responses/UnexpectedError'
+ '/admin/v1/wim_accounts/{wimAccountId}':
+ parameters:
+ - name: wimAccountId
+ in: path
+ required: true
+ description: WIM Account ID
+ schema:
+ type: string
+ format: uuid
+ get:
+ tags:
+ - "Infrastructure"
+ - "Admin"
+ summary: Query information about an individual WIM Account
+ description: Query information about an individual WIM Account
+ operationId: getWimAccount
+ responses:
+ '200':
+ description: OK
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/WimInfo'
+ application/yaml:
+ schema:
+ $ref: '#/components/schemas/WimInfo'
+ '400':
+ $ref: '#/components/responses/BadRequest'
+ '401':
+ $ref: '#/components/responses/Unauthorized'
+ '403':
+ $ref: '#/components/responses/Forbidden'
+ '404':
+ $ref: '#/components/responses/NotFound'
+ '405':
+ $ref: '#/components/responses/MethodNotAllowed'
+ '406':
+ $ref: '#/components/responses/NotAcceptable'
+ '409':
+ $ref: '#/components/responses/Conflict'
+ '422':
+ $ref: '#/components/responses/UnprocessableEntity'
+ '500':
+ $ref: '#/components/responses/InternalServerError'
+ '503':
+ $ref: '#/components/responses/ServiceUnavailable'
+ '5XX':
+ $ref: '#/components/responses/UnexpectedError'
+ default:
+ $ref: '#/components/responses/UnexpectedError'
+ patch:
+ tags:
+ - "Infrastructure"
+ - "Admin"
+ summary: Modify a WIM Account
+ description: Modify a WIM Account
+ operationId: editWimAccount
+ requestBody:
+ $ref: '#/components/requestBodies/EditWimRequest'
+ responses:
+ '202':
+ description: Accepted
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/OpId'
+ application/yaml:
+ schema:
+ $ref: '#/components/schemas/OpId'
+ '400':
+ $ref: '#/components/responses/BadRequest'
+ '401':
+ $ref: '#/components/responses/Unauthorized'
+ '403':
+ $ref: '#/components/responses/Forbidden'
+ '404':
+ $ref: '#/components/responses/NotFound'
+ '405':
+ $ref: '#/components/responses/MethodNotAllowed'
+ '406':
+ $ref: '#/components/responses/NotAcceptable'
+ '409':
+ $ref: '#/components/responses/Conflict'
+ '422':
+ $ref: '#/components/responses/UnprocessableEntity'
+ '500':
+ $ref: '#/components/responses/InternalServerError'
+ '503':
+ $ref: '#/components/responses/ServiceUnavailable'
+ '5XX':
+ $ref: '#/components/responses/UnexpectedError'
+ default:
+ $ref: '#/components/responses/UnexpectedError'
+ delete:
+ tags:
+ - "Infrastructure"
+ - "Admin"
+ summary: Delete a WIM Account
+ description: Delete a WIM Account
+ operationId: deleteWimAccount
+ responses:
+ '202':
+ description: Accepted
+ '400':
+ $ref: '#/components/responses/BadRequest'
+ '401':
+ $ref: '#/components/responses/Unauthorized'
+ '403':
+ $ref: '#/components/responses/Forbidden'
+ '404':
+ $ref: '#/components/responses/NotFound'
+ '405':
+ $ref: '#/components/responses/MethodNotAllowed'
+ '406':
+ $ref: '#/components/responses/NotAcceptable'
+ '409':
+ $ref: '#/components/responses/Conflict'
+ '422':
+ $ref: '#/components/responses/UnprocessableEntity'
+ '500':
+ $ref: '#/components/responses/InternalServerError'
+ '503':
+ $ref: '#/components/responses/ServiceUnavailable'
+ '5XX':
+ $ref: '#/components/responses/UnexpectedError'
+ default:
+ $ref: '#/components/responses/UnexpectedError'
+ '/admin/v1/sdns':
+ get:
+ tags:
+ - "Infrastructure"
+ - "Admin"
+ summary: Query information about multiple SDNs
+ description: Query information about multiple SDNs
+ operationId: getSDNs
+ responses:
+ '200':
+ description: OK
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/ArrayOfSdnInfo'
+ application/yaml:
+ schema:
+ $ref: '#/components/schemas/ArrayOfSdnInfo'
+ '400':
+ $ref: '#/components/responses/BadRequest'
+ '401':
+ $ref: '#/components/responses/Unauthorized'
+ '403':
+ $ref: '#/components/responses/Forbidden'
+ '404':
+ $ref: '#/components/responses/NotFound'
+ '405':
+ $ref: '#/components/responses/MethodNotAllowed'
+ '406':
+ $ref: '#/components/responses/NotAcceptable'
+ '409':
+ $ref: '#/components/responses/Conflict'
+ '422':
+ $ref: '#/components/responses/UnprocessableEntity'
+ '500':
+ $ref: '#/components/responses/InternalServerError'
+ '503':
+ $ref: '#/components/responses/ServiceUnavailable'
+ '5XX':
+ $ref: '#/components/responses/UnexpectedError'
+ default:
+ $ref: '#/components/responses/UnexpectedError'
+ post:
+ tags:
+ - "Infrastructure"
+ - "Admin"
+ summary: Create a new SDN
+ description: Create a new SDN
+ operationId: createSDN
+ requestBody:
+ $ref: '#/components/requestBodies/CreateSdnRequest'
+ responses:
+ '202':
+ description: Accepted
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/ObjectId_plus_OpId'
+ application/yaml:
+ schema:
+ $ref: '#/components/schemas/ObjectId_plus_OpId'
+ '400':
+ $ref: '#/components/responses/BadRequest'
+ '401':
+ $ref: '#/components/responses/Unauthorized'
+ '403':
+ $ref: '#/components/responses/Forbidden'
+ '404':
+ $ref: '#/components/responses/NotFound'
+ '405':
+ $ref: '#/components/responses/MethodNotAllowed'
+ '406':
+ $ref: '#/components/responses/NotAcceptable'
+ '409':
+ $ref: '#/components/responses/Conflict'
+ '422':
+ $ref: '#/components/responses/UnprocessableEntity'
+ '500':
+ $ref: '#/components/responses/InternalServerError'
+ '503':
+ $ref: '#/components/responses/ServiceUnavailable'
+ '5XX':
+ $ref: '#/components/responses/UnexpectedError'
+ default:
+ $ref: '#/components/responses/UnexpectedError'
+ '/admin/v1/sdns/{sdnId}':
+ parameters:
+ - name: sdnId
+ in: path
+ required: true
+ description: SDN ID
+ schema:
+ type: string
+ format: uuid
+ get:
+ tags:
+ - "Infrastructure"
+ - "Admin"
+ summary: Query information about an individual SDN
+ description: Query information about an individual SDN
+ operationId: getSDN
+ responses:
+ '200':
+ description: OK
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/SdnInfo'
+ application/yaml:
+ schema:
+ $ref: '#/components/schemas/SdnInfo'
+ '400':
+ $ref: '#/components/responses/BadRequest'
+ '401':
+ $ref: '#/components/responses/Unauthorized'
+ '403':
+ $ref: '#/components/responses/Forbidden'
+ '404':
+ $ref: '#/components/responses/NotFound'
+ '405':
+ $ref: '#/components/responses/MethodNotAllowed'
+ '406':
+ $ref: '#/components/responses/NotAcceptable'
+ '409':
+ $ref: '#/components/responses/Conflict'
+ '422':
+ $ref: '#/components/responses/UnprocessableEntity'
+ '500':
+ $ref: '#/components/responses/InternalServerError'
+ '503':
+ $ref: '#/components/responses/ServiceUnavailable'
+ '5XX':
+ $ref: '#/components/responses/UnexpectedError'
+ default:
+ $ref: '#/components/responses/UnexpectedError'
+ patch:
+ tags:
+ - "Infrastructure"
+ - "Admin"
+ summary: Modify a SDN
+ description: Modify a SDN
+ operationId: editSDN
+ requestBody:
+ $ref: '#/components/requestBodies/EditSdnRequest'
+ responses:
+ '202':
+ description: Accepted
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/OpId'
+ application/yaml:
+ schema:
+ $ref: '#/components/schemas/OpId'
+ '400':
+ $ref: '#/components/responses/BadRequest'
+ '401':
+ $ref: '#/components/responses/Unauthorized'
+ '403':
+ $ref: '#/components/responses/Forbidden'
+ '404':
+ $ref: '#/components/responses/NotFound'
+ '405':
+ $ref: '#/components/responses/MethodNotAllowed'
+ '406':
+ $ref: '#/components/responses/NotAcceptable'
+ '409':
+ $ref: '#/components/responses/Conflict'
+ '422':
+ $ref: '#/components/responses/UnprocessableEntity'
+ '500':
+ $ref: '#/components/responses/InternalServerError'
+ '503':
+ $ref: '#/components/responses/ServiceUnavailable'
+ '5XX':
+ $ref: '#/components/responses/UnexpectedError'
+ default:
+ $ref: '#/components/responses/UnexpectedError'
+ delete:
+ tags:
+ - "Infrastructure"
+ - "Admin"
+ summary: Delete a SDN
+ description: Delete a SDN
+ operationId: deleteSDN
+ responses:
+ '202':
+ description: Accepted
+ '400':
+ $ref: '#/components/responses/BadRequest'
+ '401':
+ $ref: '#/components/responses/Unauthorized'
+ '403':
+ $ref: '#/components/responses/Forbidden'
+ '404':
+ $ref: '#/components/responses/NotFound'
+ '405':
+ $ref: '#/components/responses/MethodNotAllowed'
+ '406':
+ $ref: '#/components/responses/NotAcceptable'
+ '409':
+ $ref: '#/components/responses/Conflict'
+ '422':
+ $ref: '#/components/responses/UnprocessableEntity'
+ '500':
+ $ref: '#/components/responses/InternalServerError'
+ '503':
+ $ref: '#/components/responses/ServiceUnavailable'
+ '5XX':
+ $ref: '#/components/responses/UnexpectedError'
+ default:
+ $ref: '#/components/responses/UnexpectedError'
+ '/admin/v1/k8sclusters':
+ get:
+ tags:
+ - "Infrastructure"
+ - "Admin"
+ summary: Query information about multiple K8s Clusters
+ description: Query information about multiple K8s Clusters
+ operationId: getK8sClusters
+ responses:
+ '200':
+ description: OK
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/ArrayOfK8sClusterInfo'
+ application/yaml:
+ schema:
+ $ref: '#/components/schemas/ArrayOfK8sClusterInfo'
+ '400':
+ $ref: '#/components/responses/BadRequest'
+ '401':
+ $ref: '#/components/responses/Unauthorized'
+ '403':
+ $ref: '#/components/responses/Forbidden'
+ '404':
+ $ref: '#/components/responses/NotFound'
+ '405':
+ $ref: '#/components/responses/MethodNotAllowed'
+ '406':
+ $ref: '#/components/responses/NotAcceptable'
+ '409':
+ $ref: '#/components/responses/Conflict'
+ '422':
+ $ref: '#/components/responses/UnprocessableEntity'
+ '500':
+ $ref: '#/components/responses/InternalServerError'
+ '503':
+ $ref: '#/components/responses/ServiceUnavailable'
+ '5XX':
+ $ref: '#/components/responses/UnexpectedError'
+ default:
+ $ref: '#/components/responses/UnexpectedError'
+ post:
+ tags:
+ - "Infrastructure"
+ - "Admin"
+ summary: Create a new K8s Cluster
+ description: Create a new K8s Cluster
+ operationId: createK8sCluster
+ requestBody:
+ $ref: '#/components/requestBodies/CreateK8sClusterRequest'
+ responses:
+ '202':
+ description: Accepted
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/ObjectId_plus_OpId'
+ application/yaml:
+ schema:
+ $ref: '#/components/schemas/ObjectId_plus_OpId'
+ '400':
+ $ref: '#/components/responses/BadRequest'
+ '401':
+ $ref: '#/components/responses/Unauthorized'
+ '403':
+ $ref: '#/components/responses/Forbidden'
+ '404':
+ $ref: '#/components/responses/NotFound'
+ '405':
+ $ref: '#/components/responses/MethodNotAllowed'
+ '406':
+ $ref: '#/components/responses/NotAcceptable'
+ '409':
+ $ref: '#/components/responses/Conflict'
+ '422':
+ $ref: '#/components/responses/UnprocessableEntity'
+ '500':
+ $ref: '#/components/responses/InternalServerError'
+ '503':
+ $ref: '#/components/responses/ServiceUnavailable'
+ '5XX':
+ $ref: '#/components/responses/UnexpectedError'
+ default:
+ $ref: '#/components/responses/UnexpectedError'
+ '/admin/v1/k8sclusters/{k8sClusterId}':
+ parameters:
+ - name: k8sClusterId
+ in: path
+ required: true
+ description: K8s Cluster ID
+ schema:
+ type: string
+ format: uuid
+ get:
+ tags:
+ - "Infrastructure"
+ - "Admin"
+ summary: Query information about an individual K8s Cluster
+ description: Query information about an individual K8s Cluster
+ operationId: getK8sCluster
+ responses:
+ '200':
+ description: OK
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/K8sClusterInfo'
+ application/yaml:
+ schema:
+ $ref: '#/components/schemas/K8sClusterInfo'
+ '400':
+ $ref: '#/components/responses/BadRequest'
+ '401':
+ $ref: '#/components/responses/Unauthorized'
+ '403':
+ $ref: '#/components/responses/Forbidden'
+ '404':
+ $ref: '#/components/responses/NotFound'
+ '405':
+ $ref: '#/components/responses/MethodNotAllowed'
+ '406':
+ $ref: '#/components/responses/NotAcceptable'
+ '409':
+ $ref: '#/components/responses/Conflict'
+ '422':
+ $ref: '#/components/responses/UnprocessableEntity'
+ '500':
+ $ref: '#/components/responses/InternalServerError'
+ '503':
+ $ref: '#/components/responses/ServiceUnavailable'
+ '5XX':
+ $ref: '#/components/responses/UnexpectedError'
+ default:
+ $ref: '#/components/responses/UnexpectedError'
+ patch:
+ tags:
+ - "Infrastructure"
+ - "Admin"
+ summary: Modify a K8s Cluster
+ description: Modify a K8s Cluster
+ operationId: editK8sCluster
+ requestBody:
+ $ref: '#/components/requestBodies/EditK8sClusterRequest'
+ responses:
+ '202':
+ description: Accepted
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/OpId'
+ application/yaml:
+ schema:
+ $ref: '#/components/schemas/OpId'
+ '400':
+ $ref: '#/components/responses/BadRequest'
+ '401':
+ $ref: '#/components/responses/Unauthorized'
+ '403':
+ $ref: '#/components/responses/Forbidden'
+ '404':
+ $ref: '#/components/responses/NotFound'
+ '405':
+ $ref: '#/components/responses/MethodNotAllowed'
+ '406':
+ $ref: '#/components/responses/NotAcceptable'
+ '409':
+ $ref: '#/components/responses/Conflict'
+ '422':
+ $ref: '#/components/responses/UnprocessableEntity'
+ '500':
+ $ref: '#/components/responses/InternalServerError'
+ '503':
+ $ref: '#/components/responses/ServiceUnavailable'
+ '5XX':
+ $ref: '#/components/responses/UnexpectedError'
+ default:
+ $ref: '#/components/responses/UnexpectedError'
+ delete:
+ tags:
+ - "Infrastructure"
+ - "Admin"
+ summary: Delete a K8s Cluster
+ description: Delete a K8s Cluster
+ operationId: deleteK8sCluster
+ responses:
+ '202':
+ description: Accepted
+ '400':
+ $ref: '#/components/responses/BadRequest'
+ '401':
+ $ref: '#/components/responses/Unauthorized'
+ '403':
+ $ref: '#/components/responses/Forbidden'
+ '404':
+ $ref: '#/components/responses/NotFound'
+ '405':
+ $ref: '#/components/responses/MethodNotAllowed'
+ '406':
+ $ref: '#/components/responses/NotAcceptable'
+ '409':
+ $ref: '#/components/responses/Conflict'
+ '422':
+ $ref: '#/components/responses/UnprocessableEntity'
+ '500':
+ $ref: '#/components/responses/InternalServerError'
+ '503':
+ $ref: '#/components/responses/ServiceUnavailable'
+ '5XX':
+ $ref: '#/components/responses/UnexpectedError'
+ default:
+ $ref: '#/components/responses/UnexpectedError'
+ '/admin/v1/vca':
+ get:
+ tags:
+ - "Infrastructure"
+ - "Admin"
+ summary: Query information about multiple VCAs
+ description: Query information about multiple VCAs
+ operationId: getVcas
+ responses:
+ '200':
+ description: OK
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/ArrayOfVcaInfo'
+ application/yaml:
+ schema:
+ $ref: '#/components/schemas/ArrayOfVcaInfo'
+ '400':
+ $ref: '#/components/responses/BadRequest'
+ '401':
+ $ref: '#/components/responses/Unauthorized'
+ '403':
+ $ref: '#/components/responses/Forbidden'
+ '404':
+ $ref: '#/components/responses/NotFound'
+ '405':
+ $ref: '#/components/responses/MethodNotAllowed'
+ '406':
+ $ref: '#/components/responses/NotAcceptable'
+ '409':
+ $ref: '#/components/responses/Conflict'
+ '422':
+ $ref: '#/components/responses/UnprocessableEntity'
+ '500':
+ $ref: '#/components/responses/InternalServerError'
+ '503':
+ $ref: '#/components/responses/ServiceUnavailable'
+ '5XX':
+ $ref: '#/components/responses/UnexpectedError'
+ default:
+ $ref: '#/components/responses/UnexpectedError'
+ post:
+ tags:
+ - "Infrastructure"
+ - "Admin"
+ summary: Create a new VCA
+ description: Create a new VCA
+ operationId: createVca
+ requestBody:
+ $ref: '#/components/requestBodies/CreateVcaRequest'
+ responses:
+ '202':
+ description: Accepted
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/ObjectId_plus_OpId'
+ application/yaml:
+ schema:
+ $ref: '#/components/schemas/ObjectId_plus_OpId'
+ '400':
+ $ref: '#/components/responses/BadRequest'
+ '401':
+ $ref: '#/components/responses/Unauthorized'
+ '403':
+ $ref: '#/components/responses/Forbidden'
+ '404':
+ $ref: '#/components/responses/NotFound'
+ '405':
+ $ref: '#/components/responses/MethodNotAllowed'
+ '406':
+ $ref: '#/components/responses/NotAcceptable'
+ '409':
+ $ref: '#/components/responses/Conflict'
+ '422':
+ $ref: '#/components/responses/UnprocessableEntity'
+ '500':
+ $ref: '#/components/responses/InternalServerError'
+ '503':
+ $ref: '#/components/responses/ServiceUnavailable'
+ '5XX':
+ $ref: '#/components/responses/UnexpectedError'
+ default:
+ $ref: '#/components/responses/UnexpectedError'
+ '/admin/v1/vca/{vcaId}':
+ parameters:
+ - name: vcaId
+ in: path
+ required: true
+ description: VCA ID
+ schema:
+ type: string
+ format: uuid
+ get:
+ tags:
+ - "Infrastructure"
+ - "Admin"
+ summary: Query information about an individual VCA
+ description: Query information about an individual VCA
+ operationId: getVca
+ responses:
+ '200':
+ description: OK
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/VcaInfo'
+ application/yaml:
+ schema:
+ $ref: '#/components/schemas/VcaInfo'
+ '400':
+ $ref: '#/components/responses/BadRequest'
+ '401':
+ $ref: '#/components/responses/Unauthorized'
+ '403':
+ $ref: '#/components/responses/Forbidden'
+ '404':
+ $ref: '#/components/responses/NotFound'
+ '405':
+ $ref: '#/components/responses/MethodNotAllowed'
+ '406':
+ $ref: '#/components/responses/NotAcceptable'
+ '409':
+ $ref: '#/components/responses/Conflict'
+ '422':
+ $ref: '#/components/responses/UnprocessableEntity'
+ '500':
+ $ref: '#/components/responses/InternalServerError'
+ '503':
+ $ref: '#/components/responses/ServiceUnavailable'
+ '5XX':
+ $ref: '#/components/responses/UnexpectedError'
+ default:
+ $ref: '#/components/responses/UnexpectedError'
+ patch:
+ tags:
+ - "Infrastructure"
+ - "Admin"
+ summary: Modify a VCA
+ description: Modify a VCA
+ operationId: editVca
+ requestBody:
+ $ref: '#/components/requestBodies/EditVcaRequest'
+ responses:
+ '202':
+ description: Accepted
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/OpId'
+ application/yaml:
+ schema:
+ $ref: '#/components/schemas/OpId'
+ '400':
+ $ref: '#/components/responses/BadRequest'
+ '401':
+ $ref: '#/components/responses/Unauthorized'
+ '403':
+ $ref: '#/components/responses/Forbidden'
+ '404':
+ $ref: '#/components/responses/NotFound'
+ '405':
+ $ref: '#/components/responses/MethodNotAllowed'
+ '406':
+ $ref: '#/components/responses/NotAcceptable'
+ '409':
+ $ref: '#/components/responses/Conflict'
+ '422':
+ $ref: '#/components/responses/UnprocessableEntity'
+ '500':
+ $ref: '#/components/responses/InternalServerError'
+ '503':
+ $ref: '#/components/responses/ServiceUnavailable'
+ '5XX':
+ $ref: '#/components/responses/UnexpectedError'
+ default:
+ $ref: '#/components/responses/UnexpectedError'
+ delete:
+ tags:
+ - "Infrastructure"
+ - "Admin"
+ summary: Delete a VCA
+ description: Delete a VCA
+ operationId: deleteVca
+ responses:
+ '202':
+ description: Accepted
+ '400':
+ $ref: '#/components/responses/BadRequest'
+ '401':
+ $ref: '#/components/responses/Unauthorized'
+ '403':
+ $ref: '#/components/responses/Forbidden'
+ '404':
+ $ref: '#/components/responses/NotFound'
+ '405':
+ $ref: '#/components/responses/MethodNotAllowed'
+ '406':
+ $ref: '#/components/responses/NotAcceptable'
+ '409':
+ $ref: '#/components/responses/Conflict'
+ '422':
+ $ref: '#/components/responses/UnprocessableEntity'
+ '500':
+ $ref: '#/components/responses/InternalServerError'
+ '503':
+ $ref: '#/components/responses/ServiceUnavailable'
+ '5XX':
+ $ref: '#/components/responses/UnexpectedError'
+ default:
+ $ref: '#/components/responses/UnexpectedError'
+ '/admin/v1/k8srepos':
+ get:
+ tags:
+ - "Repositories"
+ - "Admin"
+ summary: Query information about multiple K8s Repos
+ description: Query information about multiple K8s Repos
+ operationId: getK8sRepos
+ responses:
+ '200':
+ description: OK
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/ArrayOfK8sRepoInfo'
+ application/yaml:
+ schema:
+ $ref: '#/components/schemas/ArrayOfK8sRepoInfo'
+ '400':
+ $ref: '#/components/responses/BadRequest'
+ '401':
+ $ref: '#/components/responses/Unauthorized'
+ '403':
+ $ref: '#/components/responses/Forbidden'
+ '404':
+ $ref: '#/components/responses/NotFound'
+ '405':
+ $ref: '#/components/responses/MethodNotAllowed'
+ '406':
+ $ref: '#/components/responses/NotAcceptable'
+ '409':
+ $ref: '#/components/responses/Conflict'
+ '422':
+ $ref: '#/components/responses/UnprocessableEntity'
+ '500':
+ $ref: '#/components/responses/InternalServerError'
+ '503':
+ $ref: '#/components/responses/ServiceUnavailable'
+ '5XX':
+ $ref: '#/components/responses/UnexpectedError'
+ default:
+ $ref: '#/components/responses/UnexpectedError'
+ post:
+ tags:
+ - "Repositories"
+ - "Admin"
+ summary: Create a new K8s Repo
+ description: Create a new K8s Repo
+ operationId: createK8sRepo
+ requestBody:
+ $ref: '#/components/requestBodies/CreateK8sRepoRequest'
+ responses:
+ '202':
+ description: Accepted
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/ObjectId_plus_OpId'
+ application/yaml:
+ schema:
+ $ref: '#/components/schemas/ObjectId_plus_OpId'
+ '400':
+ $ref: '#/components/responses/BadRequest'
+ '401':
+ $ref: '#/components/responses/Unauthorized'
+ '403':
+ $ref: '#/components/responses/Forbidden'
+ '404':
+ $ref: '#/components/responses/NotFound'
+ '405':
+ $ref: '#/components/responses/MethodNotAllowed'
+ '406':
+ $ref: '#/components/responses/NotAcceptable'
+ '409':
+ $ref: '#/components/responses/Conflict'
+ '422':
+ $ref: '#/components/responses/UnprocessableEntity'
+ '500':
+ $ref: '#/components/responses/InternalServerError'
+ '503':
+ $ref: '#/components/responses/ServiceUnavailable'
+ '5XX':
+ $ref: '#/components/responses/UnexpectedError'
+ default:
+ $ref: '#/components/responses/UnexpectedError'
+ '/admin/v1/k8srepos/{k8sRepoId}':
+ parameters:
+ - name: k8sRepoId
+ in: path
+ required: true
+ description: K8s Repo ID
+ schema:
+ type: string
+ format: uuid
+ get:
+ tags:
+ - "Repositories"
+ - "Admin"
+ summary: Query information about an individual K8s Repo
+ description: Query information about an individual K8s Repo
+ operationId: getK8sRepo
+ responses:
+ '200':
+ description: OK
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/K8sRepoInfo'
+ application/yaml:
+ schema:
+ $ref: '#/components/schemas/K8sRepoInfo'
+ '400':
+ $ref: '#/components/responses/BadRequest'
+ '401':
+ $ref: '#/components/responses/Unauthorized'
+ '403':
+ $ref: '#/components/responses/Forbidden'
+ '404':
+ $ref: '#/components/responses/NotFound'
+ '405':
+ $ref: '#/components/responses/MethodNotAllowed'
+ '406':
+ $ref: '#/components/responses/NotAcceptable'
+ '409':
+ $ref: '#/components/responses/Conflict'
+ '422':
+ $ref: '#/components/responses/UnprocessableEntity'
+ '500':
+ $ref: '#/components/responses/InternalServerError'
+ '503':
+ $ref: '#/components/responses/ServiceUnavailable'
+ '5XX':
+ $ref: '#/components/responses/UnexpectedError'
+ default:
+ $ref: '#/components/responses/UnexpectedError'
+ delete:
+ tags:
+ - "Repositories"
+ - "Admin"
+ summary: Delete a K8s Repo
+ description: Delete a K8s Repo
+ operationId: deleteK8sRepo
+ responses:
+ '202':
+ description: Accepted
+ '400':
+ $ref: '#/components/responses/BadRequest'
+ '401':
+ $ref: '#/components/responses/Unauthorized'
+ '403':
+ $ref: '#/components/responses/Forbidden'
+ '404':
+ $ref: '#/components/responses/NotFound'
+ '405':
+ $ref: '#/components/responses/MethodNotAllowed'
+ '406':
+ $ref: '#/components/responses/NotAcceptable'
+ '409':
+ $ref: '#/components/responses/Conflict'
+ '422':
+ $ref: '#/components/responses/UnprocessableEntity'
+ '500':
+ $ref: '#/components/responses/InternalServerError'
+ '503':
+ $ref: '#/components/responses/ServiceUnavailable'
+ '5XX':
+ $ref: '#/components/responses/UnexpectedError'
+ default:
+ $ref: '#/components/responses/UnexpectedError'
+# END Admin
+
+externalDocs:
+ description: Find out more about OSM
+ url: 'https://osm.etsi.org/docs/user-guide/'
+
+components:
+ responses:
+ BadRequest:
+ description: Bad request. The server cannot process the request due to a client error.
+ content:
+ application/json:
+ schema:
$ref: '#/components/schemas/ProblemDetails'
Unauthorized:
description: Authorization information is missing or invalid.
application/zip:
schema:
$ref: '#/components/schemas/NetSlicePackage'
+ NslcmSubscriptionResponse:
+ description: NslcmSubscriptionResponse
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/NslcmSubscriptionResponse'
+ application/yaml:
+ schema:
+ $ref: '#/components/schemas/NslcmSubscriptionResponse'
# END RESPONSES
schemas:
id:
type: string
format: uuid
+ ObjectIdList:
+ type: object
+ properties:
+ ns_ids:
+ type: array
+ items:
+ type: string
+ format: uuid
KeyValuePairs:
# A free list of key:value pairs
type: object
description:
description: NSD Description
type: string
+ AlarmInfoModifications:
+ description: |
+ Alarm Information
+ type: object
+ properties:
+ id:
+ description: UUID
+ type: string
+ is_enable:
+ description: To enable/disable the alarm.
+ type: string
+ threshold:
+ description: Threshold value of the Alarm
+ type: string
NsdInfo:
description: |
NS Descriptor Information
required:
- status
- detail
+ CreateNsConfigTemplateInfoRequest:
+ type: object
+ properties:
+ name:
+ description: Ns Config Template name
+ type: string
+ nsdId:
+ description: |
+ ID of NS descriptor to which
+ template is associated
+ type: string
+ config:
+ description: Instantiation parameters
+ type: object
+ additionalProperties: false
+ required:
+ - name
+ - nsdId
+ - config
+ additionalProperties: false
+ NsConfigTemplateInfo:
+ description: |
+ Ns Config template information includes NSD ID, name
+ and instantiation parameters of vld, vnf, additionParamForVnf,
+ additionalParamsForNs.
+ type: object
+ properties:
+ _id:
+ description: |
+ Identifier of the inboarded Ns config template resource.
+ type: string
+ format: uuid
+ name:
+ description: |
+ Name of the onboarded Ns config template. This information
+ is given by the user and it is unique.
+ type: string
+ nsdId:
+ description: |
+ Identifier of the NS descriptor, which is associated
+ with Ns config template
+ type: string
+ config:
+ description: |
+ It includes instantiation parameters such as
+ vld, vnf, additionalParamforVnf.
+ type: object
+ ArrayOfNsConfigTemplateInfo:
+ type: array
+ items:
+ $ref: '#/components/schemas/NsConfigTemplateInfo'
+ NsConfigTemplateInfoModifications:
+ description: |
+ Ns Config Template information
+ It includes name of the template and instantiation parameters.
+ Ns descriptor id cannot be edited.
+ type: object
+ properties:
+ name:
+ description: |
+ Name of the template
+ type: string
+ config:
+ description: |
+ Instantiation parameters such as vld, vnf, additionalParamsForVnf
+ can be edit.
+ type: object
VnfDescriptor:
type: string
format: yaml|json
Identifier of the VIM Account where the NS instance shall be created.
type: string
format: uuid
+ nsConfigTemplateId:
+ description: |
+ Identifier of the Ns config template which is selected
+ while instantiation
+ type: string
+ format: uuid
lcmOperationType:
type: string
nsInstanceId:
- scaleType
- scaleVnfData
additionalProperties: false
+ HealNsRequest:
+ description: >
+ This type represents request parameters for the "Heal NS" operation. This operation supports the healing of an NS
+ instance by healing one or more of the VNF that are part of this NS.
+ type: object
+ properties:
+ timeout_ns_heal:
+ description: timeout for the heal operation in seconds
+ type: integer
+ healVnfData:
+ description: >
+ List of VNF to be healed, together with the information needed to heal each.
+ type: array
+ items:
+ $ref: "#/components/schemas/HealVnfData"
+ required:
+ - healVnfData
+ HealVnfData:
+ description: >
+ This type represents the information to heal a VNF that is part of an NS.
+ type: object
+ required:
+ - vnfInstanceId
+ properties:
+ vnfInstanceId:
+ description: >
+ Identifies the VNF instance, part of the NS, requiring a
+ healing action.
+ type: string
+ format: uuid
+ cause:
+ description: >
+ Indicates the reason why a healing procedure is required.
+ type: string
+ additionalParams:
+ description: >
+ Additional parameters passed by the NFVO as input to
+ the healing process, specific to the VNF being healed.
+ type: object
+ properties:
+ run-day1:
+ description: >
+ Flag to indicate whether or not to run day1 primitives for the VNF (default: false).
+ type: boolean
+ default: false
+ vdu:
+ description: >
+ List of VDU to be healed, together with the information needed to heal each.
+ type: array
+ items:
+ $ref: "#/components/schemas/HealVduData"
+ HealVduData:
+ description: >
+ This type represents the information to heal a VDU that is part of a VNF.
+ type: object
+ required:
+ - vdu-id
+ properties:
+ vdu-id:
+ description: >
+ Identifies the VDU id, part of the VNF, requiring a healing action.
+ type: string
+ format: uuid
+ count-index:
+ description: >
+ Indicates the VDU number when the VDU is part of a scale-group.
+ type: integer
+ minimum: 0
+ run-day1:
+ description: >
+ Flag to indicate whether or not to run day1 primitives for the VDU (default: false).
+ type: boolean
+ default: false
+ NSinstanceMigrateRequest:
+ description: >
+ This type represents request parameters for the "Migrate" operation. This operation supports the migration of an NS
+ instance by migrating one or more of the VDUs that are part of this NS.
+ type: object
+ properties:
+ vnfInstanceId:
+ type: string
+ migrateToHost:
+ type: string
+ vdu:
+ type: object
+ properties:
+ vduId:
+ type: string
+ vduCountIndex:
+ type: integer
+ required:
+ - vduId
+ required:
+ - vnfInstanceId
+ additionalProperties: false
TerminateNsRequest:
type: object
properties:
- primitive
- primitive_params
additionalProperties: false
+ UpdateNsRequest:
+ description: >
+ This type represents request parameters for the "Update NS" operation. This operation supports the update of an NS
+ instance by updating one or more of the VNFs that are part of this NS.
+ type: object
+ properties:
+ updateType:
+ type: string
+ enum:
+ - CHANGE_VNFPKG
+ - REMOVE_VNF
+ - MODIFY_VNF_INFORMATION
+ - OPERATE_VNF
+ - VERTICAL_SCALE
+ changeVnfPackageData:
+ type: object
+ properties:
+ vnfInstanceId:
+ type: string
+ vnfdId:
+ type: string
+ required:
+ - vnfInstanceId
+ - vnfdId
+ removeVnfInstanceId:
+ type: string
+ modifyVnfInfoData:
+ type: object
+ properties:
+ vnfInstanceId:
+ type: string
+ vnfdId:
+ type: string
+ required:
+ - vnfInstanceId
+ - vnfdId
+ operateVnfData:
+ type: object
+ properties:
+ vnfInstanceId:
+ type: string
+ changeStateTo:
+ type: string
+ additionalParam:
+ type: object
+ properties:
+ run-day1:
+ type: boolean
+ vdu_id:
+ type: string
+ count-index:
+ type: number
+ required:
+ - vdu_id
+ - count-index
+ required:
+ - vnfInstanceId
+ - changeStateTo
+ additionalProperties: false
+ verticalScaleVnf:
+ type: object
+ properties:
+ vnfInstanceId:
+ type: string
+ vnfdId:
+ type: string
+ vduId:
+ type: string
+ countIndex:
+ type: number
+ required:
+ - vnfInstanceId
+ - vnfdId
+ - vduId
+ required:
+ - updateType
+ additionalProperties: false
+ MultiNsTerminateRequest:
+ type: object
+ properties:
+ ns_ids:
+ description: List of Ns instance Ids to be deleted
+ type: array
+ items:
+ type: string
+ format: uuid
+ autoremove:
+ description: remove network service if termination end without error
+ type: boolean
+ additionalProperties: false
# CreateNSinstanceContentRequest:
# Substituted by InstantiateNsRequest
CreateNSinstanceContentResponse:
type: array
items:
$ref: '#/components/schemas/NetSliceInstance'
+ Alarm:
+ description: |
+ Alarm Information
+ type: object
+ properties:
+ _id:
+ description: Identifier of the Alarm.
+ type: string
+ format: uuid
+ id:
+ description: Identifier of the Alarm.
+ type: string
+ format: uuid
+ metric:
+ description: Alarm metric.
+ type: string
+ threshold:
+ description: Threshold value of the Alarm.
+ type: number
+ format: float
+ operation:
+ description: Operation to be applied.
+ type: string
+ action:
+ description: Action to be taken.
+ type: string
+ status:
+ description: Current status of the alarm.
+ type: string
+ required:
+ - _id
+ - id
+ - metric
+ - threshold
+ - operation
+ ArrayOfAlarm:
+ type: array
+ items:
+ $ref: '#/components/schemas/Alarm'
# CreateNsiRequest:
# Substituted by InstantiateNsiRequest
InstantiateNsiRequest:
type: string
admin:
type: boolean
+ admin_show:
+ type: boolean
project_id:
type: string
format: uuid
issued_at:
type: number
format: float
+ user_show:
+ type: boolean
+ last_login:
+ type: number
+ format: float
+ login_count:
+ type: number
expires:
type: number
format: float
format: uuid
name:
type: string
+ PasswordExpiryInfo:
+ type: object
+ properties:
+ id:
+ type: string
+ message:
+ type: string
+ user_id:
+ type: string
+ format: uuid
ArrayOfTokenInfo:
type: array
items:
type: string
password:
type: string
+ old_password:
+ type: string
+ system_admin_id:
+ type: string
+ format: uuid
+ unlock:
+ type: boolean
+ renew:
+ type: boolean
projects:
oneOf:
- $ref: '#/components/schemas/ShortNameList'
type: integer
minimum: 0
nullable: false
- nsts:
+ slice_templates:
type: integer
minimum: 0
nullable: false
- pdus:
+ pduds:
type: integer
minimum: 0
nullable: false
- nsrs:
+ ns_instances:
type: integer
minimum: 0
nullable: false
- nsis:
+ slice_instances:
type: integer
minimum: 0
nullable: false
type: integer
minimum: 0
nullable: false
- sdns:
+ sdn_controllers:
+ type: integer
+ minimum: 0
+ nullable: false
+ k8sclusters:
+ type: integer
+ minimum: 0
+ nullable: false
+ vca:
+ type: integer
+ minimum: 0
+ nullable: false
+ k8srepos:
+ type: integer
+ minimum: 0
+ nullable: false
+ osmrepos:
type: integer
minimum: 0
nullable: false
type: integer
minimum: 0
nullable: true
- nsts:
+ slice_templates:
type: integer
minimum: 0
nullable: true
- pdus:
+ pduds:
type: integer
minimum: 0
nullable: true
- nsrs:
+ ns_instances:
type: integer
minimum: 0
nullable: true
- nsis:
+ slice_instances:
type: integer
minimum: 0
nullable: true
type: integer
minimum: 0
nullable: true
- sdns:
+ sdn_controllers:
+ type: integer
+ minimum: 0
+ nullable: true
+ k8sclusters:
+ type: integer
+ minimum: 0
+ nullable: true
+ vca:
+ type: integer
+ minimum: 0
+ nullable: true
+ k8srepos:
+ type: integer
+ minimum: 0
+ nullable: true
+ osmrepos:
type: integer
minimum: 0
nullable: true
additionalProperties: false
- ProjectInfo:
+ ProjectInfo:
+ type: object
+ properties:
+ _id:
+ type: string
+ format: uuid
+ name:
+ type: string
+ quotas:
+ $ref: '#/components/schemas/QuotasInfo'
+ ArrayOfProjectInfo:
+ type: array
+ items:
+ $ref: '#/components/schemas/ProjectInfo'
+ CreateProjectRequest:
+ type: object
+ properties:
+ name:
+ type: string
+ admin:
+ type: boolean
+ quotas:
+ $ref: '#/components/schemas/QuotasInfo'
+ required:
+ - name
+ additionalProperties: false
+ EditProjectRequest:
+ type: object
+ properties:
+ name:
+ type: string
+ admin:
+ type: boolean
+ quotas:
+ $ref: '#/components/schemas/EditQuotasInfo'
+ additionalProperties: false
+ PermissionsInfo:
+ type: object
+ additionalProperties:
+ type: boolean
+ nullable: false
+ description: |
+ Permissions keys must follow the syntax 'main_topic[:subtopic[:id[:component|action|etc]]]'
+ Permission values are either true or false
+ EditPermissionsInfo:
+ type: object
+ additionalProperties:
+ type: boolean
+ nullable: true
+ description: |
+ Permissions keys must follow the syntax 'main_topic[:subtopic[:id[:component|action|etc]]]'
+ Permission values are either true, false, or null
+ RoleInfo:
+ type: object
+ properties:
+ _id:
+ type: string
+ format: uuid
+ name:
+ type: string
+ permissions:
+ $ref: '#/components/schemas/PermissionsInfo'
+ ArrayOfRoleInfo:
+ type: array
+ items:
+ $ref: '#/components/schemas/RoleInfo'
+ CreateRoleRequest:
+ type: object
+ properties:
+ name:
+ type: string
+ permissions:
+ $ref: '#/components/schemas/PermissionsInfo'
+ required:
+ - name
+ additionalProperties: false
+ EditRoleRequest:
+ type: object
+ properties:
+ name:
+ type: string
+ permissions:
+ $ref: '#/components/schemas/EditPermissionsInfo'
+ additionalProperties: false
+ VimType:
+ type: string
+ enum:
+ - openvim
+ - openstack
+ - vmware
+ - opennebula
+ - aws
+ - azure
+ - fos
+ VimInfo:
+ type: object
+ properties:
+ _id:
+ type: string
+ format: uuid
+ schema_version:
+ type: string
+ format: X.Y[.Z]
+ schema_type:
+ type: string
+ name:
+ type: string
+ description:
+ type: string
+ vim:
+ type: string
+ datacenter:
+ type: string
+ vim_type:
+ $ref: '#/components/schemas/VimType'
+ vim_url:
+ type: string
+ format: uri
+ vim_tenant_name:
+ type: string
+ vim_user:
+ type: string
+ vim_password:
+ type: string
+ vca:
+ type: string
+ format: uuid
+ config:
+ type: object
+ additionalProperties: true
+ resources:
+ type: object
+ ArrayOfVimInfo:
+ type: array
+ items:
+ $ref: '#/components/schemas/VimInfo'
+ CreateVimRequest:
+ type: object
+ properties:
+ schema_version:
+ type: string
+ format: X.Y[.Z]
+ schema_type:
+ type: string
+ name:
+ type: string
+ description:
+ type: string
+ vim:
+ type: string
+ datacenter:
+ type: string
+ vim_type:
+ $ref: '#/components/schemas/VimType'
+ vim_url:
+ type: string
+ format: uri
+ vim_tenant_name:
+ type: string
+ vim_user:
+ type: string
+ vim_password:
+ type: string
+ vca:
+ type: string
+ format: uuid
+ config:
+ type: object
+ additionalProperties: true
+ prometheus-config:
+ type: object
+ additionalProperties: true
+ resources:
+ type: object
+ creds:
+ type: string
+ required:
+ - name
+ - vim_url
+ - vim_type
+ - vim_user
+ - vim_password
+ - vim_tenant_name
+ additionalProperties: false
+ EditVimRequest:
+ type: object
+ properties:
+ name:
+ type: string
+ description:
+ type: string
+ vim:
+ type: string
+ datacenter:
+ type: string
+ vim_type:
+ $ref: '#/components/schemas/VimType'
+ vim_url:
+ type: string
+ format: uri
+ vim_tenant_name:
+ type: string
+ vim_user:
+ type: string
+ vim_password:
+ type: string
+ vca:
+ type: string
+ format: uuid
+ prometheus-config:
+ type: object
+ additionalProperties: true
+ config:
+ type: object
+ additionalProperties: true
+ additionalProperties: false
+ ObjectId_plus_OpId:
+ type: object
+ properties:
+ id:
+ type: string
+ format: uuid
+ op_id:
+ type: string
+ format: uuid
+ OpId:
+ type: object
+ properties:
+ op_id:
+ type: string
+ format: uuid
+ WimType:
+ type: string
+ enum:
+ - onos
+ - odl
+ - tapi
+ - dynpac
+ - fake
+ WimInfo:
type: object
properties:
_id:
type: string
format: uuid
+ schema_version:
+ type: string
+ format: X.Y[.Z]
+ schema_type:
+ type: string
name:
type: string
- quotas:
- $ref: '#/components/schemas/QuotasInfo'
- ArrayOfProjectInfo:
+ description:
+ type: string
+ wim:
+ type: string
+ wim_type:
+ $ref: '#/components/schemas/WimType'
+ wim_url:
+ type: string
+ format: uri
+ user:
+ type: string
+ password:
+ type: string
+ config:
+ type: object
+ additionalProperties: true
+ ArrayOfWimInfo:
type: array
items:
- $ref: '#/components/schemas/ProjectInfo'
- CreateProjectRequest:
+ $ref: '#/components/schemas/WimInfo'
+ CreateWimRequest:
type: object
properties:
+ schema_version:
+ type: string
+ format: X.Y[.Z]
+ schema_type:
+ type: string
name:
type: string
- admin:
- type: boolean
- quotas:
- $ref: '#/components/schemas/QuotasInfo'
+ description:
+ type: string
+ wim:
+ type: string
+ wim_type:
+ $ref: '#/components/schemas/WimType'
+ wim_url:
+ type: string
+ format: uri
+ user:
+ type: string
+ password:
+ type: string
+ config:
+ type: object
+ additionalProperties: true
required:
- name
+ - wim_url
+ - wim_type
additionalProperties: false
- EditProjectRequest:
+ EditWimRequest:
type: object
properties:
name:
type: string
- admin:
- type: boolean
- quotas:
- $ref: '#/components/schemas/EditQuotasInfo'
+ description:
+ type: string
+ wim:
+ type: string
+ wim_type:
+ type: string
+ wim_url:
+ type: string
+ format: uri
+ user:
+ type: string
+ password:
+ type: string
+ config:
+ type: object
+ additionalProperties: true
additionalProperties: false
- PermissionsInfo:
+ SdnBasicProperties:
type: object
- additionalProperties:
- type: boolean
- nullable: false
- description: |
- Permissions keys must follow the syntax 'main_topic[:subtopic[:id[:component|action|etc]]]'
- Permission values are either true or false
- EditPermissionsInfo:
+ properties:
+ name:
+ type: string
+ description:
+ type: string
+ dpid:
+ type: string
+ format: mac_address
+ ip:
+ type: string
+ format: ipv4
+ port:
+ type: integer
+ type:
+ type: string
+ enum:
+ - floodlight
+ - opendaylight
+ - onos
+ version:
+ type: string
+ user:
+ type: string
+ password:
+ type: string
+ SdnExtraProperties:
type: object
- additionalProperties:
- type: boolean
- nullable: true
- description: |
- Permissions keys must follow the syntax 'main_topic[:subtopic[:id[:component|action|etc]]]'
- Permission values are either true, false, or null
- RoleInfo:
+ properties:
+ _id:
+ type: string
+ format: uuid
+ schema_version:
+ type: string
+ format: X.Y[.Z]
+ SdnInfo:
+ allOf:
+ - $ref: '#/components/schemas/SdnExtraProperties'
+ - $ref: '#/components/schemas/SdnBasicProperties'
+ ArrayOfSdnInfo:
+ type: array
+ items:
+ $ref: '#/components/schemas/SdnInfo'
+ CreateSdnRequest:
+ allOf:
+ - $ref: '#/components/schemas/SdnBasicProperties'
+ required:
+ - name
+ - type
+ - ip
+ - port
+ - dpid
+ additionalProperties: false
+ EditSdnRequest:
+ allOf:
+ - $ref: '#/components/schemas/SdnBasicProperties'
+ additionalProperties: false
+ NsPmJobReportInfo:
+ type: object
+ properties:
+ entries:
+ type: array
+ items:
+ type: object
+ properties:
+ objectInstanceId:
+ type: string
+ format: uuid
+ performanceMetric:
+ type: string
+ performanceValue:
+ type: object
+ properties:
+ performanceValue:
+ type: object
+ properties:
+ performanceValue:
+ type: number
+ vnfMemberIndex:
+ type: string
+ vduName:
+ type: string
+ timestamp:
+ type: number
+ PduInterfaces:
+ type: array
+ items:
+ type: object
+ properties:
+ name:
+ type: string
+ mgmt:
+ type: boolean
+ type:
+ type: string
+ enum:
+ - overlay
+ - underlay
+ ip-address:
+ type: string
+ format: ipv4
+ mac-address:
+ type: string
+ format: mac_address
+ vim-network-name:
+ type: string
+ vim-network-id:
+ type: string
+ required:
+ - name
+ - mgmt
+ - ip-address
+ additionalProperties: false
+ PduInfo:
type: object
properties:
_id:
format: uuid
name:
type: string
- permissions:
- $ref: '#/components/schemas/PermissionsInfo'
- ArrayOfRoleInfo:
+ type:
+ type: string
+ description:
+ type: string
+ shared:
+ type: boolean
+ vims:
+ type: array
+ items:
+ type: string
+ vim_accounts:
+ type: array
+ items:
+ type: string
+ interfaces:
+ $ref: '#/components/schemas/PduInterfaces'
+ ArrayOfPduInfo:
type: array
items:
- $ref: '#/components/schemas/RoleInfo'
- CreateRoleRequest:
+ $ref: '#/components/schemas/PduInfo'
+ CreatePduRequest:
type: object
properties:
name:
type: string
- permissions:
- $ref: '#/components/schemas/PermissionsInfo'
+ type:
+ type: string
+ description:
+ type: string
+ shared:
+ type: boolean
+ vims:
+ type: array
+ items:
+ type: string
+ vim_accounts:
+ type: array
+ items:
+ type: string
+ interfaces:
+ $ref: '#/components/schemas/PduInterfaces'
required:
- name
+ - type
+ - interfaces
additionalProperties: false
- EditRoleRequest:
+ EditPduRequest:
type: object
properties:
name:
type: string
- permissions:
- $ref: '#/components/schemas/EditPermissionsInfo'
+ type:
+ type: string
+ description:
+ type: string
+ shared:
+ type: boolean
+ vims:
+ type: array
+ items:
+ type: string
+ vim_accounts:
+ type: array
+ items:
+ type: string
+ interfaces:
+ $ref: '#/components/schemas/PduInterfaces'
additionalProperties: false
- VimType:
- type: string
- enum:
- - openvim
- - openstack
- - vmware
- - opennebula
- - aws
- - azure
- - fos
- VimInfo:
+ K8sClusterNetList:
+ type: array
+ items:
+ type: object
+ additionalProperties: false
+ K8sClusterDeploymentMethods:
+ type: object
+ properties:
+ juju-bundle:
+ type: boolean
+ helm-chart-v3:
+ type: boolean
+ additionalProperties: false
+ minProperties: 3
+ K8sClusterInfo:
type: object
properties:
_id:
type: string
description:
type: string
- vim:
- type: string
- datacenter:
- type: string
- vim_type:
- $ref: '#/components/schemas/VimType'
- vim_url:
- type: string
- format: uri
- vim_tenant_name:
+ credentials:
+ type: object
+ additionalProperties: true
+ vim_account:
type: string
- vim_user:
+ format: uuid
+ k8s_version:
type: string
- vim_password:
+ nets:
+ $ref: '#/components/schemas/K8sClusterNetList'
+ deployment_methods:
+ $ref: '#/components/schemas/K8sClusterDeploymentMethods'
+ namespace:
type: string
- config:
- type: object
- additionalProperties: true
- ArrayOfVimInfo:
+ cni:
+ type: array
+ items:
+ type: string
+ ArrayOfK8sClusterInfo:
type: array
items:
- $ref: '#/components/schemas/VimInfo'
- CreateVimRequest:
+ $ref: '#/components/schemas/K8sClusterInfo'
+ CreateK8sClusterRequest:
type: object
properties:
schema_version:
type: string
description:
type: string
- vim:
- type: string
- datacenter:
- type: string
- vim_type:
- $ref: '#/components/schemas/VimType'
- vim_url:
- type: string
- format: uri
- vim_tenant_name:
+ credentials:
+ type: object
+ additionalProperties: true
+ vim_account:
type: string
- vim_user:
+ format: uuid
+ k8s_version:
type: string
- vim_password:
+ nets:
+ $ref: '#/components/schemas/K8sClusterNetList'
+ namespace:
type: string
- config:
- type: object
- additionalProperties: true
+ cni:
+ type: array
+ items:
+ type: string
required:
- name
- - vim_url
- - vim_type
- - vim_user
- - vim_password
- - vim_tenant_name
+ - credentials
+ - vim_account
+ - k8s_version
+ - nets
additionalProperties: false
- EditVimRequest:
+ EditK8sClusterRequest:
type: object
properties:
name:
type: string
description:
type: string
- vim:
- type: string
- datacenter:
- type: string
- vim_type:
- $ref: '#/components/schemas/VimType'
- vim_url:
- type: string
- format: uri
- vim_tenant_name:
- type: string
- vim_user:
- type: string
- vim_password:
- type: string
- config:
+ credentials:
type: object
additionalProperties: true
- additionalProperties: false
- ObjectId_plus_OpId:
- type: object
- properties:
- id:
+ vim_account:
type: string
format: uuid
- op_id:
+ k8s_version:
type: string
- format: uuid
- OpId:
- type: object
- properties:
- op_id:
+ nets:
+ $ref: '#/components/schemas/K8sClusterNetList'
+ namespace:
type: string
- format: uuid
- WimType:
- type: string
- enum:
- - onos
- - odl
- - tapi
- - dynpac
- - fake
- WimInfo:
+ cni:
+ type: array
+ items:
+ type: string
+ additionalProperties: false
+ VcaInfo:
type: object
properties:
_id:
type: string
description:
type: string
- wim:
- type: string
- wim_type:
- $ref: '#/components/schemas/WimType'
- wim_url:
+ endpoints:
type: string
- format: uri
user:
type: string
- password:
+ secret:
type: string
- config:
+ cacert:
+ type: string
+ lxd-cloud:
+ type: string
+ lxd-credentials:
+ type: string
+ k8s-cloud:
+ type: string
+ k8s-credentials:
+ type: string
+ model-config:
type: object
additionalProperties: true
- ArrayOfWimInfo:
+ ArrayOfVcaInfo:
type: array
items:
- $ref: '#/components/schemas/WimInfo'
- CreateWimRequest:
+ $ref: '#/components/schemas/VcaInfo'
+ CreateVcaRequest:
type: object
properties:
schema_version:
type: string
description:
type: string
- wim:
- type: string
- wim_type:
- $ref: '#/components/schemas/WimType'
- wim_url:
+ endpoints:
type: string
- format: uri
user:
type: string
- password:
+ secret:
type: string
- config:
+ cacert:
+ type: string
+ lxd-cloud:
+ type: string
+ lxd-credentials:
+ type: string
+ k8s-cloud:
+ type: string
+ k8s-credentials:
+ type: string
+ model-config:
type: object
additionalProperties: true
required:
- name
- - wim_url
- - wim_type
+ - endpoints
+ - user
+ - secret
+ - cacert
+ - lxd-cloud
+ - lxd-credentials
+ - k8s-cloud
+ - k8s-credentials
additionalProperties: false
- EditWimRequest:
+ EditVcaRequest:
type: object
properties:
name:
type: string
description:
type: string
- wim:
+ endpoints:
+ type: string
+ user:
+ type: string
+ secret:
+ type: string
+ cacert:
+ type: string
+ lxd-cloud:
+ type: string
+ lxd-credentials:
+ type: string
+ k8s-cloud:
+ type: string
+ k8s-credentials:
+ type: string
+ model-config:
+ type: object
+ additionalProperties: true
+ additionalProperties: false
+ K8sRepoType:
+ type: string
+ enum:
+ - chart
+ - bundle
+ K8sRepoInfo:
+ type: object
+ properties:
+ _id:
+ type: string
+ format: uuid
+ name:
type: string
- wim_type:
+ description:
type: string
- wim_url:
+ type:
+ $ref: '#/components/schemas/K8sRepoType'
+ url:
type: string
format: uri
- user:
+ username:
type: string
+ description: repository username
password:
type: string
- config:
- type: object
- additionalProperties: true
+ description: repository password
+ ca-file:
+ type: string
+ description: verify certificates of HTTPS-enabled servers using this CA bundle
+ cert-file:
+ type: string
+ description: identify HTTPS client using this SSL certificate file
+ skip-tls-verify:
+ type: boolean
+ description: skip tls certificate checks for the repository
+ key-file:
+ type: string
+ description: identify HTTPS client using this SSL key file
+ oci:
+ type: boolean
+ default: false
+ description: >
+ Flag to indicate whether or not it is an OCI-enabled repo (default: false)
+ required:
+ - name
+ - type
+ - url
additionalProperties: false
- SdnBasicProperties:
+ ArrayOfK8sRepoInfo:
+ type: array
+ items:
+ $ref: '#/components/schemas/K8sRepoInfo'
+ CreateK8sRepoRequest:
type: object
properties:
name:
type: string
description:
type: string
- dpid:
- type: string
- format: mac_address
- ip:
- type: string
- format: ipv4
- port:
- type: integer
type:
+ $ref: '#/components/schemas/K8sRepoType'
+ url:
type: string
- enum:
- - floodlight
- - opendaylight
- - onos
- version:
- type: string
- user:
+ format: uri
+ required:
+ - name
+ - type
+ - url
+ additionalProperties: false
+ NslcmSubscriptionResponse:
+ type: object
+ properties:
+ id:
type: string
- password:
+ format: uuid
+ filter:
+ type: object
+ CallbackUri:
type: string
- SdnExtraProperties:
+ format: uri
+ _links:
+ type: object
+ NslcmSubscriptionInfo:
type: object
properties:
_id:
type: string
format: uuid
+ _admin:
+ type: object
schema_version:
type: string
- format: X.Y[.Z]
- SdnInfo:
- allOf:
- - $ref: '#/components/schemas/SdnExtraProperties'
- - $ref: '#/components/schemas/SdnBasicProperties'
- ArrayOfSdnInfo:
+ format: 'X.Y[.Z]'
+ CallbackUri:
+ type: string
+ format: uri
+ filter:
+ type: object
+ authentication:
+ $ref: '#/components/schemas/Authenticationschema'
+ ArrayOfNslcmSubscriptionInfo:
type: array
items:
- $ref: '#/components/schemas/SdnInfo'
- CreateSdnRequest:
- allOf:
- - $ref: '#/components/schemas/SdnBasicProperties'
- required:
- - name
- - type
- - ip
- - port
- - dpid
- additionalProperties: false
- EditSdnRequest:
- allOf:
- - $ref: '#/components/schemas/SdnBasicProperties'
- additionalProperties: false
- NsPmJobReportInfo:
+ $ref: '#/components/schemas/NslcmSubscriptionInfo'
+ NsInstanceSubscriptionFilter:
+ description: |
+ used to identify the network service
type: object
- properties:
- entries:
- type: array
- items:
- type: object
- properties:
- objectInstanceId:
- type: string
- format: uuid
- performanceMetric:
- type: string
- performanceValue:
- type: object
- properties:
- performanceValue:
- type: object
- properties:
- performanceValue:
- type: number
- vnfMemberIndex:
- type: string
- vduName:
- type: string
- timestamp:
- type: number
- PduInterfaces:
+ oneOf:
+ - $ref: '#/components/schemas/nsdIds'
+ - $ref: '#/components/schemas/vnfdIds'
+ - $ref: '#/components/schemas/pnfdIds'
+ - $ref: '#/components/schemas/nsInstanceIds'
+ - $ref: '#/components/schemas/nsInstanceNames'
+ nsdIds:
type: array
items:
- type: object
- properties:
- name:
- type: string
- mgmt:
- type: boolean
- type:
- type: string
- enum:
- - overlay
- - underlay
- ip-address:
- type: string
- format: ipv4
- mac-address:
- type: string
- format: mac_address
- vim-network-name:
- type: string
- vim-network-id:
- type: string
- required:
- - name
- - mgmt
- - ip-address
- additionalProperties: false
- PduInfo:
+ type: string
+ vnfdIds:
+ type: array
+ items:
+ type: string
+ pnfdIds:
+ type: array
+ items:
+ type: string
+ nsInstanceIds:
+ type: array
+ items:
+ type: string
+ nsInstanceNames:
+ type: array
+ items:
+ type: string
+ Nslcmsubschema:
type: object
properties:
- _id:
- type: string
- format: uuid
- name:
- type: string
- type:
- type: string
- description:
- type: string
- shared:
- type: boolean
- vims:
+ nsInstanceSubscriptionFilter:
+ $ref: '#/components/schemas/NsInstanceSubscriptionFilter'
+ notificationTypes:
+ description: |
+ If NsLcmOperationOccurrenceNotification is selected then at least operationTypes or states is required. If NsLcmOperationOccurrenceNotification is selected then at least nsComponentTypes, lcmOpName and lcmOpOccStatus is required
type: array
items:
type: string
- vim_accounts:
+ enum:
+ - NsIdentifierCreationNotification
+ - NsIdentifierDeletionNotification
+ - NsLcmOperationOccurrenceNotification
+ - NsChangeNotification
+ operationTypes:
type: array
items:
type: string
- interfaces:
- $ref: '#/components/schemas/PduInterfaces'
- ArrayOfPduInfo:
- type: array
- items:
- $ref: '#/components/schemas/PduInfo'
- CreatePduRequest:
- type: object
- properties:
- name:
- type: string
- type:
- type: string
- description:
- type: string
- shared:
- type: boolean
- vims:
+ enum:
+ - INSTANTIATE
+ - SCALE
+ - TERMINATE
+ - UPDATE
+ - HEAL
+ operationStates:
type: array
items:
type: string
- vim_accounts:
+ enum:
+ - PROCESSING
+ - COMPLETED
+ - PARTIALLY_COMPLETED
+ - FAILED
+ - FAILED_TEMP
+ - ROLLING_BACK
+ - ROLLED_BACK
+ nsComponentTypes:
type: array
items:
type: string
- interfaces:
- $ref: '#/components/schemas/PduInterfaces'
- required:
- - name
- - type
- - interfaces
- additionalProperties: false
- EditPduRequest:
- type: object
- properties:
- name:
- type: string
- type:
- type: string
- description:
- type: string
- shared:
- type: boolean
- vims:
+ enum:
+ - VNF
+ - NS
+ - PNF
+ lcmOpNameImpactingNsComponent:
type: array
items:
type: string
- vim_accounts:
+ enum:
+ - VNF_INSTANTIATE
+ - VNF_SCALE
+ - VNF_SCALE_TO_LEVEL
+ - VNF_CHANGE_FLAVOUR
+ - VNF_TERMINATE
+ - VNF_HEAL
+ - VNF_OPERATE
+ - VNF_CHANGE_EXT_CONN
+ - VNF_MODIFY_INFO
+ - NS_INSTANTIATE
+ - NS_SCALE
+ - NS_UPDATE
+ - NS_TERMINATE
+ - NS_HEAL
+ lcmOpOccStatusImpactingNsComponent:
type: array
items:
type: string
- interfaces:
- $ref: '#/components/schemas/PduInterfaces'
- additionalProperties: false
- K8sClusterNetList:
- type: array
- items:
- type: object
- additionalProperties: true
- K8sClusterInfo:
+ enum:
+ - START
+ - COMPLETED
+ - PARTIALLY_COMPLETED
+ - FAILED
+ - ROLLED_BACK
+ Authenticationschema:
type: object
properties:
- _id:
- type: string
- format: uuid
- schema_version:
- type: string
- format: X.Y[.Z]
- schema_type:
- type: string
- name:
+ authType:
type: string
- description:
- type: string
- credentials:
+ enum:
+ - basic
+ paramsBasic:
type: object
- additionalProperties: true
- vim_account:
- type: string
- format: uuid
- k8s_version:
- type: string
- nets:
- $ref: '#/components/schemas/K8sClusterNetList'
- namespace:
+ properties:
+ userName:
+ type: string
+ password:
+ type: string
+ NslcmSubscriptionRequest:
+ type: object
+ properties:
+ filter:
+ $ref: '#/components/schemas/Nslcmsubschema'
+ CallbackUri:
type: string
- cni:
- type: array
- items:
- type: string
- ArrayOfK8sClusterInfo:
- type: array
- items:
- $ref: '#/components/schemas/K8sClusterInfo'
- CreateK8sClusterRequest:
+ format: uri
+ authentication:
+ $ref: '#/components/schemas/Authenticationschema'
+ required:
+ - CallbackUri
+ CancelNSLCMOpOccRequest:
type: object
properties:
- schema_version:
- type: string
- format: X.Y[.Z]
- schema_type:
+ cancelMode:
type: string
+ enum:
+ - GRACEFUL
+ - FORCEFUL
+ CreateClusterInfo:
+ type: object
+ properties:
name:
type: string
- description:
- type: string
- credentials:
- type: object
- additionalProperties: true
vim_account:
type: string
- format: uuid
+ location:
+ type: string
k8s_version:
type: string
- nets:
- $ref: '#/components/schemas/K8sClusterNetList'
- namespace:
+ node_size:
type: string
- cni:
+ node_count:
+ type: string
+ description:
+ type: string
+ region_name:
+ type: string
+ resource_group:
+ type: string
+ infra_controller_profiles:
type: array
items:
type: string
- required:
- - name
- - credentials
- - vim_account
- - k8s_version
- - nets
- additionalProperties: false
- EditK8sClusterRequest:
+ infra_config_profiles:
+ type: array
+ items:
+ type: string
+ resource_profiles:
+ type: array
+ items:
+ type: string
+ app_profiles:
+ type: array
+ items:
+ type: string
+ ScaleNodeInfo:
+ type: object
+ properties:
+ node_count:
+ type: integer
+ ProfileInfo:
type: object
properties:
name:
type: string
description:
type: string
- credentials:
- type: object
- additionalProperties: true
- vim_account:
- type: string
- format: uuid
+ UpgradeClusterInfo:
+ type: object
+ properties:
k8s_version:
type: string
- nets:
- $ref: '#/components/schemas/K8sClusterNetList'
- namespace:
- type: string
- cni:
- type: array
- items:
- type: string
- additionalProperties: false
- K8sRepoType:
- type: string
- enum:
- - chart
- - bundle
- K8sRepoInfo:
+ AttachDetachProfile:
+ type: object
+ properties:
+ add_profile:
+ type: array
+ items:
+ type: object
+ properties:
+ _id:
+ type: string
+ remove_profile:
+ type: array
+ items:
+ type: object
+ properties:
+ _id:
+ type: string
+ OkaPackage:
type: object
properties:
- _id:
- type: string
- format: uuid
name:
type: string
description:
type: string
- type:
- $ref: '#/components/schemas/K8sRepoType'
- url:
+ package:
type: string
- format: uri
- ArrayOfK8sRepoInfo:
- type: array
- items:
- $ref: '#/components/schemas/K8sRepoInfo'
- CreateK8sRepoRequest:
+ format: binary
+ MultipleKsu:
+ type: object
+ properties:
+ ksus:
+ type: array
+ items:
+ type: object
+ properties:
+ name:
+ type: string
+ profile:
+ type: object
+ properties:
+ _id:
+ type: string
+ profile_type:
+ type: string
+ oka:
+ type: array
+ items:
+ type: object
+ properties:
+ _id:
+ type: string
+ sw_catalog_path:
+ type: string
+ transformation:
+ type: object
+ description:
+ type: string
+ Ksu:
type: object
properties:
name:
type: string
description:
type: string
- type:
- $ref: '#/components/schemas/K8sRepoType'
- url:
+ profile:
+ type: object
+ properties:
+ id:
+ type: string
+ profile_type:
+ type: string
+ oka:
+ type: array
+ items:
+ type: object
+ properties:
+ _id:
+ type: string
+ sw_catalog_path:
+ type: string
+ transformation:
+ type: object
+ DeleteMultipleKsu:
+ type: object
+ properties:
+ ksus:
+ type: array
+ items:
+ type: object
+ properties:
+ _id:
+ type: string
+ CloneKsu:
+ type: object
+ properties:
+ name:
type: string
- format: uri
- required:
- - name
- - type
- - url
- additionalProperties: false
+ profile:
+ type: object
+ properties:
+ _id:
+ type: string
+ profile_type:
+ type: string
+ MoveKsu:
+ type: object
+ properties:
+ profile:
+ type: object
+ properties:
+ _id:
+ type: string
+ profile_type:
+ type: string
# END SCHEMAS
requestBodies:
application/yaml:
schema:
$ref: '#/components/schemas/NsdInfoModifications'
+ AlarmInfoModifications:
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/AlarmInfoModifications'
+ application/yaml:
+ schema:
+ $ref: '#/components/schemas/AlarmInfoModifications'
NsDescriptor:
content:
text/plain:
application/zip:
schema:
$ref: '#/components/schemas/NsPackage'
+ CreateNsConfigTemplateInfoRequest:
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/CreateNsdInfoRequest'
+ application/yaml:
+ schema:
+ $ref: '#/components/schemas/CreateNsdInfoRequest'
+ NsConfigTemplateInfoModifications:
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/NsdInfoModifications'
+ application/yaml:
+ schema:
+ $ref: '#/components/schemas/NsdInfoModifications'
CreateVnfPkgInfoRequest:
content:
application/json:
application/yaml:
schema:
$ref: '#/components/schemas/InstantiateNsRequest'
+ HealNsRequest:
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/HealNsRequest'
+ application/yaml:
+ schema:
+ $ref: '#/components/schemas/HealNsRequest'
+ NSinstanceMigrateRequest:
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/NSinstanceMigrateRequest'
+ application/yaml:
+ schema:
+ $ref: '#/components/schemas/NSinstanceMigrateRequest'
ScaleNsRequest:
content:
application/json:
application/yaml:
schema:
$ref: '#/components/schemas/TerminateNsRequest'
+ UpdateNsRequest:
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/UpdateNsRequest'
+ application/yaml:
+ schema:
+ $ref: '#/components/schemas/UpdateNsRequest'
+ MultiNsTerminateRequest:
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/MultiNsTerminateRequest'
+ application/yaml:
+ schema:
+ $ref: '#/components/schemas/MultiNsTerminateRequest'
# CreateNSinstanceContentRequest:
# Substituted by InstantiateNsRequest
CreateNstInfoRequest:
application/yaml:
schema:
$ref: '#/components/schemas/EditK8sClusterRequest'
+ CreateVcaRequest:
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/CreateVcaRequest'
+ application/yaml:
+ schema:
+ $ref: '#/components/schemas/CreateVcaRequest'
+ EditVcaRequest:
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/EditVcaRequest'
+ application/yaml:
+ schema:
+ $ref: '#/components/schemas/EditVcaRequest'
CreateK8sRepoRequest:
content:
application/json:
application/yaml:
schema:
$ref: '#/components/schemas/CreateK8sRepoRequest'
+ NslcmSubscriptionRequest:
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/NslcmSubscriptionRequest'
+ application/yaml:
+ schema:
+ $ref: '#/components/schemas/NslcmSubscriptionRequest'
+ CancelNSLCMOpOccRequest:
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/CancelNSLCMOpOccRequest'
+ application/yaml:
+ schema:
+ $ref: '#/components/schemas/CancelNSLCMOpOccRequest'
+ CreateCluster:
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/CreateClusterInfo'
+ application/yaml:
+ schema:
+ $ref: '#/components/schemas/CreateClusterInfo'
+ ScaleNode:
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/ScaleNodeInfo'
+ application/yaml:
+ schema:
+ $ref: '#/components/schemas/ScaleNodeInfo'
+ UpgradeCluster:
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/UpgradeClusterInfo'
+ application/yaml:
+ schema:
+ $ref: '#/components/schemas/UpgradeClusterInfo'
+ ProfileInfo:
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/ProfileInfo'
+ application/yaml:
+ schema:
+ $ref: '#/components/schemas/ProfileInfo'
+ AttachDetachProfile:
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/AttachDetachProfile'
+ application/yaml:
+ schema:
+ $ref: '#/components/schemas/AttachDetachProfile'
+ MultipleKsu:
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/MultipleKsu'
+ application/yaml:
+ schema:
+ $ref: '#/components/schemas/MultipleKsu'
+ Ksu:
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/Ksu'
+ application/yaml:
+ schema:
+ $ref: '#/components/schemas/Ksu'
+ DeleteMultipleKsu:
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/DeleteMultipleKsu'
+ application/yaml:
+ schema:
+ $ref: '#/components/schemas/DeleteMultipleKsu'
+ CloneKsu:
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/CloneKsu'
+ application/yaml:
+ schema:
+ $ref: '#/components/schemas/CloneKsu'
+ MoveKsu:
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/MoveKsu'
+ application/yaml:
+ schema:
+ $ref: '#/components/schemas/MoveKsu'
# END REQUEST BODIES
securitySchemes: