diff --git a/MEC01002_AppGrant.yaml b/MEC01002_AppGrant.yaml index 00f2e660a5d2b094ae70002e9ae9f65f9ef08b11..913c1bdb3646f9e1ad515373e53016c8d22458b0 100644 --- a/MEC01002_AppGrant.yaml +++ b/MEC01002_AppGrant.yaml @@ -10,7 +10,7 @@ info: name: ETSI Forge url: https://forge.etsi.org/rep/mec/gs010-2-app-pkg-lcm-api email: cti_support@etsi.org - version: 3.1.1 + version: 3.2.1 servers: - url: https://localhost/granting/v1 paths: diff --git a/MEC01002_AppLcm.yaml b/MEC01002_AppLcm.yaml index 4f3e686381f2769097498ab2c77b23f4216c9ec5..a8f7c64e8afa5d72a00407974c6ec860445327f0 100644 --- a/MEC01002_AppLcm.yaml +++ b/MEC01002_AppLcm.yaml @@ -10,7 +10,7 @@ info: name: ETSI Forge url: https://forge.etsi.org/rep/mec/gs010-2-app-pkg-lcm-api email: cti_support@etsi.org - version: 3.1.1 + version: 3.2.1 servers: - url: https://localhost/app_lcm/v1 paths: @@ -67,11 +67,11 @@ paths: tags: - app-lcm parameters: - - $ref: '#/components/parameters/Query.Filter' - - $ref: '#/components/parameters/Query.All_fields' - - $ref: '#/components/parameters/Query.Fields' - - $ref: '#/components/parameters/Query.Exclude_fields' - - $ref: '#/components/parameters/Query.Exclude_default' + - $ref: '#/components/parameters/Query.filter' + - $ref: '#/components/parameters/Query.all_fields' + - $ref: '#/components/parameters/Query.fields' + - $ref: '#/components/parameters/Query.exclude_fields' + - $ref: '#/components/parameters/Query.exclude_default' responses: '200': description: 'Information about zero or more application instances was queried successfully. @@ -229,7 +229,7 @@ paths: post: summary: Callback POST used to send a notification description: Subscription notification - operationId: notificationPOST159916 + operationId: notificationPOST906012 requestBody: description: Subscription notification required: true @@ -257,7 +257,7 @@ paths: tags: - subscriptions parameters: - - $ref: '#/components/parameters/Query.Subscriptiontype' + - $ref: '#/components/parameters/Query.subscriptionType' responses: '200': description: Upon success, a response message content containing a list of all subscriptions is returned. @@ -552,11 +552,11 @@ paths: tags: - app-lcm parameters: - - $ref: '#/components/parameters/Query.Filter1' - - $ref: '#/components/parameters/Query.All_fields' - - $ref: '#/components/parameters/Query.Fields1' - - $ref: '#/components/parameters/Query.Exclude_fields1' - - $ref: '#/components/parameters/Query.Exclude_default1' + - $ref: '#/components/parameters/Query.filter1' + - $ref: '#/components/parameters/Query.all_fields' + - $ref: '#/components/parameters/Query.fields1' + - $ref: '#/components/parameters/Query.exclude_fields1' + - $ref: '#/components/parameters/Query.exclude_default1' responses: '200': description: 'Status information for zero or more application instance lifecycle management operation occurrences was queried successfully. @@ -1615,10 +1615,10 @@ components: filterType: type: string enum: - - SEE_DESCRIPTION + - PACKET description: 'Definition of filter type: per FLOW or PACKET - If it is per FLOW, the filter matches upstream (e.g. UE->EPC) packets and downstream (e.g. EPC->UE) packets are handled by the same context.' + ' priority: description: "Priority of this traffic rule within the range 0 to 255. If traffic rule conflicts, the one with higher priority take precedence. See note\_1." type: integer @@ -1659,6 +1659,18 @@ components: x-etsi-ref: 6.2.1.10 type: object properties: + direction: + type: integer + enum: + - 0 + - 1 + description: 'Identifies the direction of the data flow when the value of "filterType" is "per FLOW". See note. + + Permitted values: + + 00 = Downlink (towards the UE) + + 01 = Uplink (away from the UE)' srcAddress: description: 'An IP address or a range of IP addresses. @@ -1748,6 +1760,7 @@ components: tC: description: Used to match all IPv6 packets that have the same TC. type: integer + description: "|-\n NOTE:\tWhen direction, srcAddress, dstAddress, srcPort, dstPort and protocol are combined to describe a IP flow traffic filter which is transferred to 5G core network by MEC system, this group of attributes follows the rules specified in the clause 5.3.8 of ETSI TS 129 214 [22]." InterfaceDescriptor: x-etsi-ref: 6.2.1.11 type: object @@ -1786,9 +1799,6 @@ components: tunnelSrcAddress: description: Source address of the tunnel. type: string - tunnelSpecificData: - description: Parameters specific to the tunnel. - type: object required: - tunnelType - tunnelDstAddress @@ -2819,7 +2829,7 @@ components: type: string required: - countryCode - description: "|-\n NOTE:\tAt least one of civicAddress or geographicalPosition shall be present. If both are present they shall specify the same location, bound by the precision of the provided coordinates." + description: "|-\n NOTE:\tAt least one of civicAddress or geographicalPosition shall be present. If both are present, they shall specify the same location, bound by the precision of the provided coordinates." CancelMode: x-etsi-ref: 6.2.2.32 type: object @@ -2873,6 +2883,102 @@ components: required: - algorithm - hash + AppInstRegistrationSubscriptionRequest: + x-etsi-ref: 6.2.6.1 + type: object + properties: + subscriptionType: + description: Shall be set to "AppInstRegistrationSubscription". + type: string + callbackUri: + description: The URI of the endpoint for the subscription related notification to be sent to. + type: string + format: uri + appInstRegistrationSubscriptionFilter: + description: Criteria used to filter application instances registrations for which to send notifications related to this subscription. + $ref: '#/components/schemas/AppInstRegistrationSubscriptionFilter' + required: + - subscriptionType + - callbackUri + AppInstDeregistrationSubscriptionRequest: + x-etsi-ref: 6.2.6.2 + type: object + properties: + subscriptionType: + description: Shall be set to "AppInstDeregistrationSubscription". + type: string + callbackUri: + description: The URI of the endpoint for the subscription related notification to be sent to. + type: string + format: uri + appInstRegistrationSubscriptionFilter: + description: Criteria used to filter application instances registrations for which to send notifications related to this subscription. + $ref: '#/components/schemas/AppInstRegistrationSubscriptionFilter' + required: + - subscriptionType + - callbackUri + AppInstRegistrationNotification: + x-etsi-ref: 6.2.6.3 + type: object + properties: + id: + description: Identifier of this notification. If a notification is sent multiple times due to multiple subscriptions, the "notificationId" attribute of all these notifications shall have the same value. + type: string + notificationType: + description: Discriminator for the different notification types. Shall be set to "AppInstRegistrationSubscription" for this notification type. + type: string + subscriptionId: + description: Identifier of the subscription related to this notification. + type: string + timeStamp: + description: Date and time of the notification generation. + $ref: '#/components/schemas/TimeStamp' + appInfo: + description: Information provided by a MEC application instance as part of an application registration request/update to a MEC platform. + $ref: MecAppSupportApi.yaml#/components/schemas/AppInfo + _links: + $ref: '#/components/schemas/_links8' + required: + - id + - notificationType + - subscriptionId + - timeStamp + - _links + AppInstDeregistrationNotification: + x-etsi-ref: 6.2.6.4 + type: object + properties: + id: + description: Identifier of this notification. If a notification is sent multiple times due to multiple subscriptions, the "notificationId" attribute of all these notifications shall have the same value. + type: string + notificationType: + description: Discriminator for the different notification types. Shall be set to "AppInstDeregistrationSubscription" for this notification type. + type: string + subscriptionId: + description: Identifier of the subscription related to this notification. + type: string + timeStamp: + description: Date and time of the notification generation. + $ref: '#/components/schemas/TimeStamp' + appInstanceId: + description: The application instance identifier associated with application information resource that has been deleted at a MEC platform. + type: string + _links: + $ref: '#/components/schemas/_links9' + required: + - id + - notificationType + - subscriptionId + - timeStamp + - appInstanceId + - _links + AppInstRegistrationSubscriptionFilter: + x-etsi-ref: 6.2.6.5 + type: object + properties: + isInsByMec: + description: "If TRUE, only match application instances that are instantiated by the MEC management. \nDefault to FALSE if absent." + type: boolean TransportsSupported: description: Indicates transports and serialization formats supported made available to the service-consuming application. Defaults to REST + JSON if absent. type: object @@ -2899,7 +3005,7 @@ components: description: If present, and the application prefers to a cellular network to carry its traffic, this attribute shall be set to true. Otherwise, it shall be set to false. type: boolean wi-fiNetwork: - description: "If present, and the application prefers to a WiFi\xAEnetwork to carry its traffic, this attribute shall be set to true. Otherwise, it shall be set to false." + description: "If present, and the application prefers to a WiFi\xAE network to carry its traffic, this attribute shall be set to true. Otherwise, it shall be set to false." type: boolean fixedAccessNetwork: description: If present, and the application prefers to a fixed access network to carry its traffic, this attribute shall be set to true. Otherwise, it shall be set to false. @@ -3139,6 +3245,32 @@ components: $ref: '#/components/schemas/CivicAddressElement1' required: - civicAddressElement + _links8: + description: Links to resources related to this notification. + type: object + properties: + subscription: + description: A link to the related subscription. + $ref: '#/components/schemas/LinkType' + appRegistration: + description: Link to the resource representing the information of the registered application instance. + $ref: '#/components/schemas/LinkType' + required: + - subscription + - appRegistration + _links9: + description: Links to resources related to this notification. + type: object + properties: + subscription: + description: A link to the related subscription. + $ref: '#/components/schemas/LinkType' + appRegistration: + description: Link to the resource representing the deleted information of the registered application instance. + $ref: '#/components/schemas/LinkType' + required: + - subscription + - appRegistration VimConnectionInfoMap: type: object additionalProperties: @@ -3191,7 +3323,7 @@ components: schema: $ref: '#/components/schemas/ProblemDetails' parameters: - Query.Filter: + Query.filter: description: 'Attribute-based filtering parameters according to ETSI GS MEC 009 [4]. The API producer shall support receiving filtering parameters as part of the URI query string. @@ -3202,50 +3334,50 @@ components: name: filter in: query required: false - x-exportParamName: Query.Filter + x-exportParamName: Query.filter schema: type: string - Query.All_fields: + Query.all_fields: description: "Include all complex attributes in the response. See clause 6.18 in ETSI GS\_MEC\_009\_[4] for details. The API producer shall support this parameter." name: all_fields in: query required: false - x-exportParamName: Query.All_fields + x-exportParamName: Query.all_fields schema: type: string - Query.Fields: + Query.fields: description: "Complex attributes to be included into the response. See clause 6.18 in ETSI GS\_MEC\_009 [4] for details. The API producer should support this parameter." name: fields in: query required: false - x-exportParamName: Query.Fields + x-exportParamName: Query.fields schema: type: string - Query.Exclude_fields: + Query.exclude_fields: description: Complex attributes to be excluded from the response. See clause 6.18 in [4] for details. The API producer should support this parameter. name: exclude_fields in: query required: false - x-exportParamName: Query.Exclude_fields + x-exportParamName: Query.exclude_fields schema: type: string - Query.Exclude_default: + Query.exclude_default: description: "Indicates to exclude the following complex attributes from the response. See clause\_6.18 in ETSI GS MEC 009 [4] for details. The API producer shall support this parameter.\nThe following attributes shall be excluded from the AppInstanceInfo structure in the response message content if this parameter is provided, or none of the parameters \"all_fields\", \"fields\", \"exclude_fields\", \"exclude_default\" are provided:\nvimConnectionInfo;\ninstantiate;\nterminate;\noperate." name: exclude_default in: query required: false - x-exportParamName: Query.Exclude_default + x-exportParamName: Query.exclude_default schema: type: string - Query.Subscriptiontype: + Query.subscriptionType: description: Query parameter to filter on a specific subscription type. - name: subscriptiontype + name: subscriptionType in: query required: false - x-exportParamName: Query.Subscriptiontype + x-exportParamName: Query.subscriptionType schema: $ref: '#/components/schemas/AppInstanceSubscriptionType' - Query.Filter1: + Query.filter1: description: 'Attribute-based filtering parameters according to ETSI GS MEC 009 [4]. The API producer shall support receiving filtering parameters as part of the URI query string. @@ -3254,10 +3386,10 @@ components: name: filter1 in: query required: false - x-exportParamName: Query.Filter1 + x-exportParamName: Query.filter1 schema: type: string - Query.Fields1: + Query.fields1: description: 'Complex attributes of AppLcmOpOcc to be included into the response. @@ -3265,10 +3397,10 @@ components: name: fields1 in: query required: false - x-exportParamName: Query.Fields1 + x-exportParamName: Query.fields1 schema: type: string - Query.Exclude_fields1: + Query.exclude_fields1: description: 'Complex attributes of AppLcmOpOcc to be excluded from the response. @@ -3276,10 +3408,10 @@ components: name: exclude_fields1 in: query required: false - x-exportParamName: Query.Exclude_fields1 + x-exportParamName: Query.exclude_fields1 schema: type: string - Query.Exclude_default1: + Query.exclude_default1: description: 'Indicates to exclude the following complex attributes of AppLcmOpOcc from the response. @@ -3291,7 +3423,7 @@ components: name: exclude_default1 in: query required: false - x-exportParamName: Query.Exclude_default1 + x-exportParamName: Query.exclude_default1 schema: type: string diff --git a/MEC01002_AppPkgMgmt.yaml b/MEC01002_AppPkgMgmt.yaml index 2d23ba1a2a9be5e17914f4d491b3689b31cc22ec..1aadce93719d55dcf1dab9dd1730fe43dfaa2068 100644 --- a/MEC01002_AppPkgMgmt.yaml +++ b/MEC01002_AppPkgMgmt.yaml @@ -10,13 +10,13 @@ info: name: ETSI Forge url: https://forge.etsi.org/rep/mec/gs010-2-app-pkg-lcm-api email: cti_support@etsi.org - version: 3.1.1 + version: 3.2.1 servers: - url: https://localhost/app_pkgm/v1 paths: /onboarded_app_packages: post: - summary: Create a new resource for onboarded application package. + summary: POST /onboarded_app_packages endpoint. description: The POST method is used to create a resource for on-boarding an application package to a MEO/MEAO, which refers to the procedure of "onboarding operation" as described in clause 6.3.3.5. The POST method is also used to create a resource for on-boarding an application package from OSS through MEAO to NFVO as described in clause 5.6.2. operationId: OnboardedapppackagesPOST tags: @@ -55,17 +55,17 @@ paths: $ref: '#/components/responses/429' parameters: [] get: - summary: Query on-boarded application package information. + summary: GET /onboarded_app_packages endpoint. description: This GET method queries information relating to on-boarded application packages in the MEO/MEAO matching the filtering criteria. It refers to the procedure of "query operation" of application package as described in clause 6.3.3.2. This GET method also queries information relating to on-boarded application packages in the NFVO matching the filtering criteria by the OSS through MEAO to NFVO. operationId: OnboardedapppackagesGET tags: - app-pkgm parameters: - - $ref: '#/components/parameters/Query.Filter' - - $ref: '#/components/parameters/Query.All_fields' - - $ref: '#/components/parameters/Query.Fields' - - $ref: '#/components/parameters/Query.Exclude_fields' - - $ref: '#/components/parameters/Query.Exclude_default' + - $ref: '#/components/parameters/Query.filter' + - $ref: '#/components/parameters/Query.all_fields' + - $ref: '#/components/parameters/Query.fields' + - $ref: '#/components/parameters/Query.exclude_fields' + - $ref: '#/components/parameters/Query.exclude_default' responses: '200': description: Indicate the success of request. The response message content shall contain a list of representations of the "individual application package" resources that match the attribute filter. @@ -89,7 +89,7 @@ paths: $ref: '#/components/responses/429' /onboarded_app_packages/{appDId}: get: - summary: Read information of an individual on-boarded application package. + summary: GET /onboarded_app_packages/{appDId} endpoint. description: This GET method is used to query the information related to individual application package resources. operationId: OnboardedapppackagesGETAppdid tags: @@ -124,7 +124,7 @@ paths: schema: type: string delete: - summary: Delete an individual on-boarded application package. + summary: DELETE /onboarded_app_packages/{appDId} endpoint. description: This DELETE method realizes the procedure of "delete operation" of application package resource in MEO/MEAO or the procedure of "delete operation" of application package resource in NFVO by OSS through MEAO as described in clause 6.3.3.9. operationId: OnboardedapppackagesDELETEAppdid tags: @@ -152,7 +152,7 @@ paths: schema: type: string patch: - summary: Enable or disable an individual onboarded application package. + summary: PATCH /onboarded_app_packages/{appDId} endpoint. description: This PATCH method updates the operational state of an individual application package resource used by the procedure of "enable operation" as described in clause 6.3.3.6, "disable operation" as described in clause 6.3.3.7. operationId: OnboardedapppackagesPATCHAppdid tags: @@ -241,7 +241,7 @@ paths: post: summary: Callback POST used to send a notification description: Subscription notification - operationId: notificationPOST180140 + operationId: notificationPOST992495 requestBody: description: Subscription notification required: true @@ -385,17 +385,17 @@ paths: parameters: [] /onboarded_app_packages/{appDId}/appd: get: - summary: Read application descriptor of an onboarded application package. + summary: GET /onboarded_app_packages/{appDId}/appd endpoint. description: This GET method reads the content of the AppD of on-boarded individual application package resources. The format of the AppD is left for future specification. operationId: OnboardedapppackagesAppdGETAppdid tags: - app-pkgm parameters: - - $ref: '#/components/parameters/Query.Filter1' - - $ref: '#/components/parameters/Query.All_fields1' - - $ref: '#/components/parameters/Query.Fields1' - - $ref: '#/components/parameters/Query.Exclude_fields1' - - $ref: '#/components/parameters/Query.Exclude_default1' + - $ref: '#/components/parameters/Query.filter1' + - $ref: '#/components/parameters/Query.all_fields' + - $ref: '#/components/parameters/Query.fields1' + - $ref: '#/components/parameters/Query.exclude_fields1' + - $ref: '#/components/parameters/Query.exclude_default1' - name: appDId in: path required: true @@ -432,8 +432,8 @@ paths: $ref: '#/components/responses/429' /onboarded_app_packages/{appDId}/package_content: get: - summary: Fetch an on-boarded application package. - description: The GET method is used to fetch the onboarded application package content identified by appPkgId or appDId. The client can use this resource to fetch the content of the application package. + summary: GET /onboarded_app_packages/{appDId}/package_content endpoint. + description: The GET method is used to fetch the on-boarded application package content identified by appPkgId or appDId. The client can use this resource to fetch the content of the application package. operationId: OnboardedapppackagesPackagecontentGETAppdid tags: - app-pkgm @@ -467,7 +467,7 @@ paths: schema: type: string put: - summary: Upload an application package by providing the content of application package. + summary: PUT /onboarded_app_packages/{appDId}/package_content endpoint. description: This PUT method uploads the content of application package. operationId: OnboardedapppackagesPackagecontentPUTAppdid tags: @@ -1545,10 +1545,10 @@ components: filterType: type: string enum: - - SEE_DESCRIPTION + - PACKET description: 'Definition of filter type: per FLOW or PACKET - If it is per FLOW, the filter matches upstream (e.g. UE->EPC) packets and downstream (e.g. EPC->UE) packets are handled by the same context.' + ' priority: description: "Priority of this traffic rule within the range 0 to 255. If traffic rule conflicts, the one with higher priority take precedence. See note\_1." type: integer @@ -1589,6 +1589,18 @@ components: x-etsi-ref: 6.2.1.10 type: object properties: + direction: + type: integer + enum: + - 0 + - 1 + description: 'Identifies the direction of the data flow when the value of "filterType" is "per FLOW". See note. + + Permitted values: + + 00 = Downlink (towards the UE) + + 01 = Uplink (away from the UE)' srcAddress: description: 'An IP address or a range of IP addresses. @@ -1678,6 +1690,7 @@ components: tC: description: Used to match all IPv6 packets that have the same TC. type: integer + description: "|-\n NOTE:\tWhen direction, srcAddress, dstAddress, srcPort, dstPort and protocol are combined to describe a IP flow traffic filter which is transferred to 5G core network by MEC system, this group of attributes follows the rules specified in the clause 5.3.8 of ETSI TS 129 214 [22]." InterfaceDescriptor: x-etsi-ref: 6.2.1.11 type: object @@ -1716,9 +1729,6 @@ components: tunnelSrcAddress: description: Source address of the tunnel. type: string - tunnelSpecificData: - description: Parameters specific to the tunnel. - type: object required: - tunnelType - tunnelDstAddress @@ -1886,23 +1896,22 @@ components: The appPkgName with appPkgVersion can be used to uniquely identify the application package.' type: string appProvider: - description: The provider's name of the application package to be onboarded. + description: The provider's name of the application package to be on-boarded. type: string checksum: - description: Checksum of the onboarded application package. + description: Checksum of the application package to be on-boarded. $ref: '#/components/schemas/Checksum' userDefinedData: - description: User defined data for the application package. + description: User defined data for the application package to be on-boarded. type: object appPkgPath: - description: Address information of the application package. See note. + description: Address information of the application package to be on-boarded. See note. type: string format: uri required: - appPkgName - appPkgVersion - checksum - - appPkgPath description: "|-\n NOTE:\tIt is for further study how to convey appPkgPath, and align with ETSI GS NFV-SOL 005 [i.7]." AppPkgInfo: x-etsi-ref: 6.2.3.3 @@ -1914,34 +1923,56 @@ components: appDId: description: 'The application descriptor identifier. It is managed by the application provider to identify the application package and the application descriptor in a globally unique way. - It is copied from the AppD of the onboarded application package.' + It is copied from the AppD of the on-boarded application package. + + It shall be present after the application package content has been on-boarded and absent otherwise.' type: string appProvider: - description: The provider's name of the onboarded application package. + description: 'The provider''s name of the on-boarded application package. + + It is copied from the AppD of the on-boarded application package. + + It shall be present after the application package content has been on-boarded and absent otherwise.' type: string appName: - description: Name of the onboarded application. + description: 'Name of the on-boarded application. + + It is copied from the AppD of the on-boarded application package. + + It shall be present after the application package content has been on-boarded and absent otherwise.' type: string appSoftwareVersion: - description: Software version of the application. This is updated when there is any change to the software in the onboarded application package. + description: 'Software version of the application. This is updated when there is any change to the software in the on-boarded application package. + + This information is copied from the AppD. It shall be present after the application package content has been on-boarded and absent otherwise.' type: string appDVersion: - description: Version of the application descriptor. + description: 'Version of the application descriptor. + + It is copied from the AppD of the on-boarded application package. + + It shall be present after the application package content has been on-boarded and absent otherwise.' type: string checksum: - description: Checksum of the onboarded application package. + description: Checksum of the on-boarded application package. $ref: '#/components/schemas/Checksum' signingCertificate: - description: The singleton signing certificate if it is included as a file in the AppD archive. + description: 'The singleton signing certificate if it is included as a file in the application package. + + This attribute shall not be present before the application package content is on-boarded.' type: string softwareImages: - description: Information of application software image in application package. See note 1. + description: 'Information of application software image in application package. See note 1. + + This attribute shall not be present before the application package content is on-boarded.' type: array - minItems: 1 + minItems: 0 items: $ref: '#/components/schemas/AppPkgSWImageInfo' additionalArtifacts: - description: Additional information of application package artifacts that are not application software images. See note 2. + description: 'Additional information of application package artifacts that are not application software images. See note 2. + + This attribute shall not be present before the application package content is on-boarded.' type: array minItems: 0 items: @@ -1950,7 +1981,7 @@ components: type: string enum: - SEE_DESCRIPTION - description: 'Onboarding state of application package: + description: 'On-boarding state of application package: CREATED: The application package resource has been created. @@ -1963,7 +1994,7 @@ components: type: string enum: - SEE_DESCRIPTION - description: 'Operational state of the onboarded application package: + description: 'Operational state of the on-boarded application package: ENABLED: the application package can be used for instantiation of new application instances. @@ -1972,39 +2003,33 @@ components: type: string enum: - SEE_DESCRIPTION - description: 'Usage state of the onboarded instance of the application package: + description: 'Usage state of the on-boarded instance of the application package: IN_USE: application instances instantiated from this package exist. NOT_IN_USE: No application instance instantiated from this package exist.' mecInfo: - description: The MEC version that compatible with this application. This information is copied from the AppD. + description: The MEC version that compatible with this application. This information is copied from the AppD. It shall be present after the application package content has been on-boarded and absent otherwise. type: array - minItems: 1 + minItems: 0 items: type: string userDefinedData: description: User defined data for the application package. type: object onboardingFailureDetails: - description: Failure details of current onboarding procedure. See ETSI GS MEC 009 [4]. + description: Failure details of current on-boarding procedure. See ETSI GS MEC 009 [4]. $ref: '#/components/schemas/ProblemDetails' _links: $ref: '#/components/schemas/_links' required: - id - - appDId - - appName - - appSoftwareVersion - - appDVersion - checksum - - softwareImages - onboardingState - operationalState - usageState - - mecInfo - _links - description: "|-\n NOTE 1:\tThe data type of application software image information data model is related to virtualisation method and needs for further study.\nNOTE 2:\tThe data type of additional information of application package artifacts is not specified in the present document.\nNOTE 3:\tThis attribute applies only for the MEAO." + description: "|-\n NOTE 1:\tThe data type of application software image information data model is related to virtualisation method and not specified in the present document.\nNOTE 2:\tThe data type of additional information of application package artifacts is not specified in the present document.\nNOTE 3:\tThis attribute applies only for the MEAO." AppPkgSubscriptionInfo: x-etsi-ref: 6.2.3.4 type: object @@ -2200,6 +2225,102 @@ components: required: - algorithm - hash + AppInstRegistrationSubscriptionRequest: + x-etsi-ref: 6.2.6.1 + type: object + properties: + subscriptionType: + description: Shall be set to "AppInstRegistrationSubscription". + type: string + callbackUri: + description: The URI of the endpoint for the subscription related notification to be sent to. + type: string + format: uri + appInstRegistrationSubscriptionFilter: + description: Criteria used to filter application instances registrations for which to send notifications related to this subscription. + $ref: '#/components/schemas/AppInstRegistrationSubscriptionFilter' + required: + - subscriptionType + - callbackUri + AppInstDeregistrationSubscriptionRequest: + x-etsi-ref: 6.2.6.2 + type: object + properties: + subscriptionType: + description: Shall be set to "AppInstDeregistrationSubscription". + type: string + callbackUri: + description: The URI of the endpoint for the subscription related notification to be sent to. + type: string + format: uri + appInstRegistrationSubscriptionFilter: + description: Criteria used to filter application instances registrations for which to send notifications related to this subscription. + $ref: '#/components/schemas/AppInstRegistrationSubscriptionFilter' + required: + - subscriptionType + - callbackUri + AppInstRegistrationNotification: + x-etsi-ref: 6.2.6.3 + type: object + properties: + id: + description: Identifier of this notification. If a notification is sent multiple times due to multiple subscriptions, the "notificationId" attribute of all these notifications shall have the same value. + type: string + notificationType: + description: Discriminator for the different notification types. Shall be set to "AppInstRegistrationSubscription" for this notification type. + type: string + subscriptionId: + description: Identifier of the subscription related to this notification. + type: string + timeStamp: + description: Date and time of the notification generation. + $ref: '#/components/schemas/TimeStamp' + appInfo: + description: Information provided by a MEC application instance as part of an application registration request/update to a MEC platform. + $ref: MecAppSupportApi.yaml#/components/schemas/AppInfo + _links: + $ref: '#/components/schemas/_links4' + required: + - id + - notificationType + - subscriptionId + - timeStamp + - _links + AppInstDeregistrationNotification: + x-etsi-ref: 6.2.6.4 + type: object + properties: + id: + description: Identifier of this notification. If a notification is sent multiple times due to multiple subscriptions, the "notificationId" attribute of all these notifications shall have the same value. + type: string + notificationType: + description: Discriminator for the different notification types. Shall be set to "AppInstDeregistrationSubscription" for this notification type. + type: string + subscriptionId: + description: Identifier of the subscription related to this notification. + type: string + timeStamp: + description: Date and time of the notification generation. + $ref: '#/components/schemas/TimeStamp' + appInstanceId: + description: The application instance identifier associated with application information resource that has been deleted at a MEC platform. + type: string + _links: + $ref: '#/components/schemas/_links5' + required: + - id + - notificationType + - subscriptionId + - timeStamp + - appInstanceId + - _links + AppInstRegistrationSubscriptionFilter: + x-etsi-ref: 6.2.6.5 + type: object + properties: + isInsByMec: + description: "If TRUE, only match application instances that are instantiated by the MEC management. \nDefault to FALSE if absent." + type: boolean TransportsSupported: description: Indicates transports and serialization formats supported made available to the service-consuming application. Defaults to REST + JSON if absent. type: object @@ -2226,7 +2347,7 @@ components: description: If present, and the application prefers to a cellular network to carry its traffic, this attribute shall be set to true. Otherwise, it shall be set to false. type: boolean wi-fiNetwork: - description: "If present, and the application prefers to a WiFi\xAEnetwork to carry its traffic, this attribute shall be set to true. Otherwise, it shall be set to false." + description: "If present, and the application prefers to a WiFi\xAE network to carry its traffic, this attribute shall be set to true. Otherwise, it shall be set to false." type: boolean fixedAccessNetwork: description: If present, and the application prefers to a fixed access network to carry its traffic, this attribute shall be set to true. Otherwise, it shall be set to false. @@ -2245,7 +2366,7 @@ components: description: Link to the "Onboarded application package content" resource. $ref: '#/components/schemas/LinkType' vnfPkgInfo: - description: Link to the corresponding VNF package resource at NFVO. See note 3. + description: Link to the corresponding VNF package resource at NFVO. See note 3. This attribute shall not be present before the application package content is on-boarded. $ref: '#/components/schemas/LinkType' required: - self @@ -2296,6 +2417,32 @@ components: $ref: '#/components/schemas/LinkType' required: - subscription + _links4: + description: Links to resources related to this notification. + type: object + properties: + subscription: + description: A link to the related subscription. + $ref: '#/components/schemas/LinkType' + appRegistration: + description: Link to the resource representing the information of the registered application instance. + $ref: '#/components/schemas/LinkType' + required: + - subscription + - appRegistration + _links5: + description: Links to resources related to this notification. + type: object + properties: + subscription: + description: A link to the related subscription. + $ref: '#/components/schemas/LinkType' + appRegistration: + description: Link to the resource representing the deleted information of the registered application instance. + $ref: '#/components/schemas/LinkType' + required: + - subscription + - appRegistration responses: '200': description: OK @@ -2352,43 +2499,43 @@ components: schema: $ref: '#/components/schemas/ProblemDetails' parameters: - Query.Filter: + Query.filter: description: "Attribute-based filtering parameters according to ETSI GS MEC 009 [4].\nThe API producer shall support receiving filtering parameters as part of the URI query string.\nAll attribute names that appear in the AppPkgInfo and in data types referenced from it shall be supported in attribute-based filtering parameters. See clause 6.19 in ETSI GS\_MEC 009 [4] for details." name: filter in: query required: false - x-exportParamName: Query.Filter + x-exportParamName: Query.filter schema: type: string - Query.All_fields: + Query.all_fields: description: "Include all complex attributes in the response. See clause 6.18 in ETSI GS\_MEC\_009\_[4] for details. The API producer shall support this parameter." name: all_fields in: query required: false - x-exportParamName: Query.All_fields + x-exportParamName: Query.all_fields schema: type: string - Query.Fields: + Query.fields: description: 'Complex attributes of AppPkgInfo to be included into the response. See clause 6.18 in ETSI GS MEC 009 [4] for details. The API producer should support this parameter.' name: fields in: query required: false - x-exportParamName: Query.Fields + x-exportParamName: Query.fields schema: type: string - Query.Exclude_fields: + Query.exclude_fields: description: 'Complex attributes of AppPkgInfo to be excluded from the response. See clause 6.18 in ETSI GS MEC 009 [4] for details. The API producer should support this parameter.' name: exclude_fields in: query required: false - x-exportParamName: Query.Exclude_fields + x-exportParamName: Query.exclude_fields schema: type: string - Query.Exclude_default: + Query.exclude_default: description: 'Indicates to exclude the following complex attributes of AppPkgInfo from the response. @@ -2402,50 +2549,38 @@ components: name: exclude_default in: query required: false - x-exportParamName: Query.Exclude_default + x-exportParamName: Query.exclude_default schema: type: string - Query.Filter1: - description: 'Attribute-based filtering parameters according to ETSI GS MEC 009 [4]. - - The API producer shall support receiving filtering parameters as part of the URI query string. - - All attribute names that appear in the AppD and in data types referenced from it shall be supported in attribute-based filtering parameters. See clause 6.19 in ETSI GS MEC 009 [4] for detail.' + Query.filter1: + description: "Attribute-based filtering parameters according to ETSI GS MEC 009 [4].\nThe API producer shall support receiving filtering parameters as part of the URI query string.\nAll attribute names that appear in the AppD and in data types referenced from it shall be supported in attribute-based filtering parameters. See clause 6.19 in ETSI GS\_MEC\_009 [4] for detail." name: filter1 in: query required: false - x-exportParamName: Query.Filter1 - schema: - type: string - Query.All_fields1: - description: "Include all complex attributes in the response. See clause 6.18 in ETSI GS\_MEC 009 [4] for details. The API producer shall support this parameter." - name: all_fields1 - in: query - required: false - x-exportParamName: Query.All_fields1 + x-exportParamName: Query.filter1 schema: type: string - Query.Fields1: + Query.fields1: description: 'Complex attributes of AppD to be included into the response. See clause 6.18 in ETSI GS MEC 009 [4] for details. The API producer should support this parameter.' name: fields1 in: query required: false - x-exportParamName: Query.Fields1 + x-exportParamName: Query.fields1 schema: type: string - Query.Exclude_fields1: + Query.exclude_fields1: description: 'Complex attributes of AppD to be excluded from the response. See clause 6.18 in ETSI GS MEC 009 [4] for details. The API producer should support this parameter.' name: exclude_fields1 in: query required: false - x-exportParamName: Query.Exclude_fields1 + x-exportParamName: Query.exclude_fields1 schema: type: string - Query.Exclude_default1: + Query.exclude_default1: description: 'Indicates to exclude the following complex attributes of AppD from the response. @@ -2465,7 +2600,7 @@ components: name: exclude_default1 in: query required: false - x-exportParamName: Query.Exclude_default1 + x-exportParamName: Query.exclude_default1 schema: type: string