-- YAML module extracted from ITU-T X.785 (07/2021)

openapi: 3.0.0 info: title: ITU-T_MOAccessService description: ''This is the formal definition of the generic MO Access Service.'' termsOfService: https://www.itu.int/en/ITU-T/about/Pages/default.aspx contact: email: zlwang@bupt.edu.cn license: name: Apache 2.0 url: http://www.apache.org/licenses/LICENSE-2.0.html version: 1.0.0 externalDocs: description: See Recommendation ITU-T X.785 url: https://www.itu.int/itu-t/recommendations/index.aspx?ser=X servers: - url: https://www.itu.int/demo/genericMOAccessService/v1.0.0 - url: http://www.itu.int/demo/genericMOAccessService/v1.0.0 tags: - name: MOAccessService description: All APIs realted to the generic MO Access Service externalDocs: description: Find out more url: https://www.itu.int/itu-t/recommendations/index.aspx?ser=X paths: /MOAccessService: post: tags: - MOAccessService summary: "createMO" description: "create an MO instance with the specified attribute list" operationId: "createMO" requestBody: description: "The input parameters of the createMO operation" content: application/json: schema: $ref: ''#/components/schemas/CreateMORequest'' required: true responses: 201: description: "MO is successfully created, and the new MO ID value will be returned." content: application/json: schema: $ref: ''#/components/schemas/MOID'' 400: description: "Parameter Error occurred in the createMO operation" content: application/json: schema: $ref: ''#/components/schemas/CreateMOErrorInfo'' 404: description: "The URL does not exist" content: {} 405: description: "Method Not Allowed" content: {} 409: description: "Conflict MO Id" content: {} 500: description: "Internal Server Error" content: {} get: tags: - MOAccessService summary: "getMOAttributes" description: "get the attributes information of a specific MO instance" operationId: "getMOAttributes" parameters: - name: objectClass in: query description: "The Object class of the specified MO instance" required: true schema: type: string - name: moInstance in: query description: "The unique ID of the specific MO instance" required: true schema: type: string format: uri - name: attributeNameList in: query description: "the attribute name of the string" required: false schema: type: array items: $ref: ''#/components/schemas/attributeName'' responses: 200: description: "The attribute value list of the specified MO is retrieved successfully" content: application/json: schema: $ref: "#/components/schemas/MOInfo" 400: description: "Parameter Error occurred in the getMOAttributes operation" content: application/json: schema: $ref: "#/components/schemas/GetMOErrorInfo" 404: description: "Specified MO Not found" content: {} 500: description: "Internal Server Error" content: {} delete: tags: - MOAccessService summary: "deleteMO" description: "delete a specific MO instance" operationId: "deleteMO" parameters: - name: objectClass in: query description: "The Object class of the specified MO instance" required: true schema: type: string - name: moInstance in: query description: "The unique ID of the specific MO instance" required: true schema: type: string format: uri responses: 200: description: "The specified MO instance is deleted successfully" content: {} 400: description: "Parameter Error occurred in the deleteMO operation" content: application/json: schema: $ref: ''#/components/schemas/DeleteMOErrorInfo'' 404: description: "Specified MO does not exist" content: {} 405: description: "Method Not Allowed, the specified MO cannot be deleted" content: {} 500: description: "Internal Server Error" content: {} patch: tags: - MOAccessService summary: Set attribute values of an MO instance operationId: setMOAttributes requestBody: description: MO information that is used for modification content: application/json: schema: $ref: ''#/components/schemas/MOInfo'' required: true responses: 200: description: "The specified MO instance attributes are updated successfullly." content: application/json: schema: $ref: ''#/components/schemas/MOInfo'' 204: description: "MO successfully modified, without any change. No response is needed." 400: description: "Parameter Error occurred in the setMOAttributes operation" content: application/json: schema: $ref: "#/components/schemas/SetMOAttributesErrorInfo" 404: description: Specific MO does not exist. content: {} 405: description: Validation parameter content: {} 500: description: "Internal Server Error" content: {} components: schemas: ManagedObject_C: type: object required: - objectClass - objectInstance properties: objectClass: type: string objectInstance: type: string format: uri creationSource: $ref: ''#/components/schemas/SourceIndicatorType'' SourceIndicatorType: type: string enum: - resourceOperation - managementOperation - unknown ContainmentRelationshipType: type: object properties: associationRelationshipName: type: string associationDirection: $ref: ''#/components/schemas/DirectionType'' fromClass: type: string fromAssociationAttribute: type: string fromMuitiplicity: $ref: ''#/components/schemas/MultiplicityType'' toClass: type: string toAssociationAttribute: type: string toMuitiplicity: $ref: ''#/components/schemas/MultiplicityType'' AssociationRelationshipType: type: object properties: associationRelationshipName: type: string associationDirection: $ref: ''#/components/schemas/DirectionType'' fromClass: type: string fromAssociationAttribute: type: string fromMuitiplicity: $ref: ''#/components/schemas/MultiplicityType'' toClass: type: string toAssociationAttribute: type: string toMuitiplicity: $ref: ''#/components/schemas/MultiplicityType'' MultiplicityType: type: string enum: - zero_to_one - zero_to_n - one - one_to_n - n DirectionType: type: string enum: - unidirectional - bidirectional AdministrativeStateType: type: string enum: - locked - unlocked - shuttingDown AvailabilityStatusType: type: string enum: - inTest - failed - powerOff - offLine - offDuty - dependency - degraded - notInstalled - logFull AvailabilityStatusSetType: type: array items: $ref: ''#/components/schemas/AvailabilityStatusType'' BackedUpStatusType: type: boolean ControlStatusType: type: string enum: - inTestsubjectToTest - partOfServicesLocked - reservedForTest - suspended ControlStatusSetType: type: array items: $ref: ''#/components/schemas/ControlStatusType'' ExternalTimeType: type: string format: dateTime OperationalStateType: type: string enum: - disabled - enabled ProceduralStatusType: type: string enum: - initializationRequired - notInitialized - initializing - reporting - terminating ProceduralStatusSetType: type: array items: $ref: ''#/components/schemas/ProceduralStatusType'' StandbyStatusType: type: string enum: - hotStandby - coldStandby - providingService UnknownStatusType: type: boolean UsageStateType: type: string enum: - idle - active - busy MOInfo: type: object properties: moInfo: $ref: ''#/components/schemas/ManagedObject_C'' attributeList: type: array items: $ref: ''#/components/schemas/NVPair'' NVPair: type: object required: - name - value properties: name: type: string value: type: string type: type: string NVPairList: type: object properties: attributeList: type: array items: $ref: ''#/components/schemas/NVPair'' CreateMORequest: allOf: - $ref: ''#/components/schemas/ManagedObject_C'' - $ref: ''#/components/schemas/NVPairList'' CreateMOErrorInfo: type: object properties: code: type: string enum: - objectClassSpecificationMissmatched - invalidObjectInstance - noSuchObjectClass - noSuchAttribute - invalidAttributeValue - missingAttributeValue message: type: string required: - code GetMOErrorInfo: type: object properties: code: type: string enum: - duplicateInvocation - resourceLimitation - operationCancelled - complexityLimitation message: type: string required: - code SetMOAttributesErrorInfo: type: object properties: code: type: string enum: - modifyNotAllowed - noSuchAttribute - invalidAttributeValue - missingAttributeValue - complexityLimitation message: type: string required: - code DeleteMOErrorInfo: type: object properties: code: type: string enum: - resourceLimitation - complexityLimitation message: type: string required: - code attributeName: type: string MOID: type: string format: uri