From 66a534e956ae5bd6ad2f045ef1519b8eb2df5c88 Mon Sep 17 00:00:00 2001 From: Ikram Ul Haq Date: Thu, 21 Sep 2023 16:01:37 +0500 Subject: [PATCH] Latest Generated OAS for all MEC document --- .../README..md | 10 + .../Auto_Generated_OAS_Output_Files/README.md | 92 + .../gs_mec01002v030101p_AppGrant.yaml | 920 ++++ .../gs_mec01002v030101p_AppLcm.yaml | 3693 +++++++++++++++ .../gs_mec01002v030101p_AppPkgMgmt.yaml | 2955 ++++++++++++ .../gs_mec011v030101p_SrvMgmt.yaml | 1139 +++++ .../gs_mec012v020201p.yaml | 3979 +++++++++++++++++ .../gs_mec013v030101p.yaml | 3174 +++++++++++++ .../gs_mec014v020101p.yaml | 180 + .../gs_mec014v030101p.yaml | 180 + .../gs_mec015v020201p_BWM_API.yaml | 485 ++ .../gs_mec015v020201p_MTS_API.yaml | 557 +++ .../gs_mec021v020201p.yaml | 1253 ++++++ .../gs_mec028v020301p.yaml | 2995 +++++++++++++ .../gs_mec029v020201p.yaml | 2004 +++++++++ .../gs_mec030v030101p.yaml | 1937 ++++++++ .../gs_mec033v030101p.yaml | 757 ++++ .../gs_mec040v030101p.yaml | 354 ++ Auto_Generated_OAS_Output_Files/README..md | 10 + Auto_Generated_OAS_Output_Files/README.md | 92 + .../gs_mec01002v030101p_AppGrant.yaml | 920 ++++ .../gs_mec01002v030101p_AppLcm.yaml | 3693 +++++++++++++++ .../gs_mec01002v030101p_AppPkgMgmt.yaml | 2955 ++++++++++++ .../gs_mec011v030101p_SrvMgmt.yaml | 1139 +++++ .../gs_mec012v020201p.yaml | 3979 +++++++++++++++++ .../gs_mec013v030101p.yaml | 3174 +++++++++++++ .../gs_mec014v020101p.yaml | 180 + .../gs_mec015v020201p_BWM_API.yaml | 485 ++ .../gs_mec015v020201p_MTS_API.yaml | 557 +++ .../gs_mec021v020201p.yaml | 1253 ++++++ .../gs_mec028v020301p.yaml | 2995 +++++++++++++ .../gs_mec029v020201p.yaml | 2004 +++++++++ .../gs_mec030v030101p.yaml | 1937 ++++++++ .../gs_mec033v030101p.yaml | 757 ++++ .../gs_mec040v030101p.yaml | 354 ++ 35 files changed, 53148 insertions(+) create mode 100644 Auto_Generated_OAS_Output_Files/Auto_Generated_OAS_Output_Files/README..md create mode 100644 Auto_Generated_OAS_Output_Files/Auto_Generated_OAS_Output_Files/README.md create mode 100644 Auto_Generated_OAS_Output_Files/Auto_Generated_OAS_Output_Files/gs_mec01002v030101p_AppGrant.yaml create mode 100644 Auto_Generated_OAS_Output_Files/Auto_Generated_OAS_Output_Files/gs_mec01002v030101p_AppLcm.yaml create mode 100644 Auto_Generated_OAS_Output_Files/Auto_Generated_OAS_Output_Files/gs_mec01002v030101p_AppPkgMgmt.yaml create mode 100644 Auto_Generated_OAS_Output_Files/Auto_Generated_OAS_Output_Files/gs_mec011v030101p_SrvMgmt.yaml create mode 100644 Auto_Generated_OAS_Output_Files/Auto_Generated_OAS_Output_Files/gs_mec012v020201p.yaml create mode 100644 Auto_Generated_OAS_Output_Files/Auto_Generated_OAS_Output_Files/gs_mec013v030101p.yaml create mode 100644 Auto_Generated_OAS_Output_Files/Auto_Generated_OAS_Output_Files/gs_mec014v020101p.yaml create mode 100644 Auto_Generated_OAS_Output_Files/Auto_Generated_OAS_Output_Files/gs_mec014v030101p.yaml create mode 100644 Auto_Generated_OAS_Output_Files/Auto_Generated_OAS_Output_Files/gs_mec015v020201p_BWM_API.yaml create mode 100644 Auto_Generated_OAS_Output_Files/Auto_Generated_OAS_Output_Files/gs_mec015v020201p_MTS_API.yaml create mode 100644 Auto_Generated_OAS_Output_Files/Auto_Generated_OAS_Output_Files/gs_mec021v020201p.yaml create mode 100644 Auto_Generated_OAS_Output_Files/Auto_Generated_OAS_Output_Files/gs_mec028v020301p.yaml create mode 100644 Auto_Generated_OAS_Output_Files/Auto_Generated_OAS_Output_Files/gs_mec029v020201p.yaml create mode 100644 Auto_Generated_OAS_Output_Files/Auto_Generated_OAS_Output_Files/gs_mec030v030101p.yaml create mode 100644 Auto_Generated_OAS_Output_Files/Auto_Generated_OAS_Output_Files/gs_mec033v030101p.yaml create mode 100644 Auto_Generated_OAS_Output_Files/Auto_Generated_OAS_Output_Files/gs_mec040v030101p.yaml create mode 100644 Auto_Generated_OAS_Output_Files/README..md create mode 100644 Auto_Generated_OAS_Output_Files/README.md create mode 100644 Auto_Generated_OAS_Output_Files/gs_mec01002v030101p_AppGrant.yaml create mode 100644 Auto_Generated_OAS_Output_Files/gs_mec01002v030101p_AppLcm.yaml create mode 100644 Auto_Generated_OAS_Output_Files/gs_mec01002v030101p_AppPkgMgmt.yaml create mode 100644 Auto_Generated_OAS_Output_Files/gs_mec011v030101p_SrvMgmt.yaml create mode 100644 Auto_Generated_OAS_Output_Files/gs_mec012v020201p.yaml create mode 100644 Auto_Generated_OAS_Output_Files/gs_mec013v030101p.yaml create mode 100644 Auto_Generated_OAS_Output_Files/gs_mec014v020101p.yaml create mode 100644 Auto_Generated_OAS_Output_Files/gs_mec015v020201p_BWM_API.yaml create mode 100644 Auto_Generated_OAS_Output_Files/gs_mec015v020201p_MTS_API.yaml create mode 100644 Auto_Generated_OAS_Output_Files/gs_mec021v020201p.yaml create mode 100644 Auto_Generated_OAS_Output_Files/gs_mec028v020301p.yaml create mode 100644 Auto_Generated_OAS_Output_Files/gs_mec029v020201p.yaml create mode 100644 Auto_Generated_OAS_Output_Files/gs_mec030v030101p.yaml create mode 100644 Auto_Generated_OAS_Output_Files/gs_mec033v030101p.yaml create mode 100644 Auto_Generated_OAS_Output_Files/gs_mec040v030101p.yaml diff --git a/Auto_Generated_OAS_Output_Files/Auto_Generated_OAS_Output_Files/README..md b/Auto_Generated_OAS_Output_Files/Auto_Generated_OAS_Output_Files/README..md new file mode 100644 index 0000000..b9daa77 --- /dev/null +++ b/Auto_Generated_OAS_Output_Files/Auto_Generated_OAS_Output_Files/README..md @@ -0,0 +1,10 @@ +# Auto-Generated OpenAPI Specification Outputs +This folder contains the generated OpenAPI specifications (OAS) created by the `doc2oas` automation script. These specifications are generated from the latest MEC specification documents. +## Usage +You can use the generated OpenAPI specifications for various purposes, including: +- Building API documentation. +- Integrating MEC specifications into your applications. +- Validating MEC-related API requests and responses. +## [](#note-about-generated-openapis)Note About Generated OpenAPIs + +Note that while the `doc2oas_automation_script.py` tool aims to provide OpenAPI specifications, the generated OpenAPIs may not always be 100% correct. The reason for this is that the configuration files, which are used to generate the specifications, need to be updated manually. In many cases, the configuration file remains the same for the latest version, but there are instances where modifications in the configuration files are required for the latest versions. diff --git a/Auto_Generated_OAS_Output_Files/Auto_Generated_OAS_Output_Files/README.md b/Auto_Generated_OAS_Output_Files/Auto_Generated_OAS_Output_Files/README.md new file mode 100644 index 0000000..6eb700a --- /dev/null +++ b/Auto_Generated_OAS_Output_Files/Auto_Generated_OAS_Output_Files/README.md @@ -0,0 +1,92 @@ +# Auto Generated OAS + + + +## Getting started + +To make it easy for you to get started with GitLab, here's a list of recommended next steps. + +Already a pro? Just edit this README.md and make it your own. Want to make it easy? [Use the template at the bottom](#editing-this-readme)! + +## Add your files + +- [ ] [Create](https://docs.gitlab.com/ee/user/project/repository/web_editor.html#create-a-file) or [upload](https://docs.gitlab.com/ee/user/project/repository/web_editor.html#upload-a-file) files +- [ ] [Add files using the command line](https://docs.gitlab.com/ee/gitlab-basics/add-file.html#add-a-file-using-the-command-line) or push an existing Git repository with the following command: + +``` +cd existing_repo +git remote add origin https://forge.etsi.org/rep/mec/auto-generated-oas.git +git branch -M main +git push -uf origin main +``` + +## Integrate with your tools + +- [ ] [Set up project integrations](https://forge.etsi.org/rep/mec/auto-generated-oas/-/settings/integrations) + +## Collaborate with your team + +- [ ] [Invite team members and collaborators](https://docs.gitlab.com/ee/user/project/members/) +- [ ] [Create a new merge request](https://docs.gitlab.com/ee/user/project/merge_requests/creating_merge_requests.html) +- [ ] [Automatically close issues from merge requests](https://docs.gitlab.com/ee/user/project/issues/managing_issues.html#closing-issues-automatically) +- [ ] [Enable merge request approvals](https://docs.gitlab.com/ee/user/project/merge_requests/approvals/) +- [ ] [Automatically merge when pipeline succeeds](https://docs.gitlab.com/ee/user/project/merge_requests/merge_when_pipeline_succeeds.html) + +## Test and Deploy + +Use the built-in continuous integration in GitLab. + +- [ ] [Get started with GitLab CI/CD](https://docs.gitlab.com/ee/ci/quick_start/index.html) +- [ ] [Analyze your code for known vulnerabilities with Static Application Security Testing(SAST)](https://docs.gitlab.com/ee/user/application_security/sast/) +- [ ] [Deploy to Kubernetes, Amazon EC2, or Amazon ECS using Auto Deploy](https://docs.gitlab.com/ee/topics/autodevops/requirements.html) +- [ ] [Use pull-based deployments for improved Kubernetes management](https://docs.gitlab.com/ee/user/clusters/agent/) +- [ ] [Set up protected environments](https://docs.gitlab.com/ee/ci/environments/protected_environments.html) + +*** + +# Editing this README + +When you're ready to make this README your own, just edit this file and use the handy template below (or feel free to structure it however you want - this is just a starting point!). Thank you to [makeareadme.com](https://www.makeareadme.com/) for this template. + +## Suggestions for a good README +Every project is different, so consider which of these sections apply to yours. The sections used in the template are suggestions for most open source projects. Also keep in mind that while a README can be too long and detailed, too long is better than too short. If you think your README is too long, consider utilizing another form of documentation rather than cutting out information. + +## Name +Choose a self-explaining name for your project. + +## Description +Let people know what your project can do specifically. Provide context and add a link to any reference visitors might be unfamiliar with. A list of Features or a Background subsection can also be added here. If there are alternatives to your project, this is a good place to list differentiating factors. + +## Badges +On some READMEs, you may see small images that convey metadata, such as whether or not all the tests are passing for the project. You can use Shields to add some to your README. Many services also have instructions for adding a badge. + +## Visuals +Depending on what you are making, it can be a good idea to include screenshots or even a video (you'll frequently see GIFs rather than actual videos). Tools like ttygif can help, but check out Asciinema for a more sophisticated method. + +## Installation +Within a particular ecosystem, there may be a common way of installing things, such as using Yarn, NuGet, or Homebrew. However, consider the possibility that whoever is reading your README is a novice and would like more guidance. Listing specific steps helps remove ambiguity and gets people to using your project as quickly as possible. If it only runs in a specific context like a particular programming language version or operating system or has dependencies that have to be installed manually, also add a Requirements subsection. + +## Usage +Use examples liberally, and show the expected output if you can. It's helpful to have inline the smallest example of usage that you can demonstrate, while providing links to more sophisticated examples if they are too long to reasonably include in the README. + +## Support +Tell people where they can go to for help. It can be any combination of an issue tracker, a chat room, an email address, etc. + +## Roadmap +If you have ideas for releases in the future, it is a good idea to list them in the README. + +## Contributing +State if you are open to contributions and what your requirements are for accepting them. + +For people who want to make changes to your project, it's helpful to have some documentation on how to get started. Perhaps there is a script that they should run or some environment variables that they need to set. Make these steps explicit. These instructions could also be useful to your future self. + +You can also document commands to lint the code or run tests. These steps help to ensure high code quality and reduce the likelihood that the changes inadvertently break something. Having instructions for running tests is especially helpful if it requires external setup, such as starting a Selenium server for testing in a browser. + +## Authors and acknowledgment +Show your appreciation to those who have contributed to the project. + +## License +For open source projects, say how it is licensed. + +## Project status +If you have run out of energy or time for your project, put a note at the top of the README saying that development has slowed down or stopped completely. Someone may choose to fork your project or volunteer to step in as a maintainer or owner, allowing your project to keep going. You can also make an explicit request for maintainers. diff --git a/Auto_Generated_OAS_Output_Files/Auto_Generated_OAS_Output_Files/gs_mec01002v030101p_AppGrant.yaml b/Auto_Generated_OAS_Output_Files/Auto_Generated_OAS_Output_Files/gs_mec01002v030101p_AppGrant.yaml new file mode 100644 index 0000000..9636d8e --- /dev/null +++ b/Auto_Generated_OAS_Output_Files/Auto_Generated_OAS_Output_Files/gs_mec01002v030101p_AppGrant.yaml @@ -0,0 +1,920 @@ +openapi: 3.1.0 +jsonSchemaDialect: https://json-schema.org/draft/2020-12/schema +info: + title: 'ETSI GS MEC 010-2 - Part 2: Application lifecycle, rules and requirements management' + description: 'ETSI GS MEC 010-2 - Part 2: Application lifecycle, rules and requirements management described using OpenAPI.' + license: + name: BSD-3-Clause + url: https://forge.etsi.org/legal-matters + contact: + 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 +paths: + /grants: + post: + summary: Request a grant for a particular application LCM operation. + description: The POST method requests a grant for a particular application lifecycle operation. + operationId: grantsPOST + tags: + - granting + requestBody: + description: The POST method is to request a grand for an application lifecycle operation. + required: true + content: + application/json: + schema: + type: object + properties: + GrantRequest: + $ref: '#/components/schemas/GrantRequest' + responses: + '201': + description: 'Shall be returned when the grant was created successfully (synchronous mode). + + + A representation of the created "Individual grant" resource shall be returned in the response message content. + + + The HTTP response shall include a "Location" HTTP header that indicates the URI of the "Individual grant" resource just created.' + content: + application/json: + schema: + type: object + properties: + Grant: + $ref: '#/components/schemas/Grant' + '202': + description: 'Shall be returned when the request was accepted for processing, and it is expected to take some time to create the grant (asynchronous mode). + + + The HTTP response shall include a "Location" HTTP header that indicates the URI of the "Individual grant" resource just created.' + content: + application/json: + schema: + type: object + properties: {} + '400': + $ref: '#/components/responses/400' + '401': + $ref: '#/components/responses/401' + '403': + $ref: '#/components/responses/403' + '404': + $ref: '#/components/responses/404' + '406': + $ref: '#/components/responses/406' + '429': + $ref: '#/components/responses/429' + /grants/{grantId}: + get: + summary: Read the status of grant for the application LCM operation. + description: The GET method reads a grant. + operationId: grantsByIdGET + tags: + - granting + responses: + '200': + description: 'Shall be returned when the grant was read successfully. + + + A representation of the "individual grant" resource shall be returned in the response message content.' + content: + application/json: + schema: + type: object + properties: + Grant: + $ref: '#/components/schemas/Grant' + '202': + description: 'Shall be returned when the process of creating the grant is ongoing, no grant is available yet. + + + The response message content shall be empty. + + + The HTTP response shall include a "Location" HTTP header that contains the URI of the newly-created resource.' + content: + application/json: + schema: + type: object + properties: {} + '400': + $ref: '#/components/responses/400' + '401': + $ref: '#/components/responses/401' + '403': + $ref: '#/components/responses/403' + '404': + $ref: '#/components/responses/404' + '406': + $ref: '#/components/responses/406' + '429': + $ref: '#/components/responses/429' +components: + schemas: + ProblemDetails: + type: object + properties: + type: + type: string + format: uri + description: A URI reference according to IETF RFC 3986 that identifies the problem type + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: URI + title: + type: string + description: A short, human-readable summary of the problem type + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: String + status: + type: integer + format: uint32 + description: The HTTP status code for this occurrence of the problem + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: Uint32 + detail: + type: string + description: A human-readable explanation specific to this occurrence of the problem + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: String + instance: + type: string + format: uri + description: A URI reference that identifies the specific occurrence of the problem + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: URI + LinkType: + title: LinkType + required: + - href + type: object + properties: + href: + type: string + description: URI referring to a resource + KeyValuePairs: + description: 'This data type represents a list of key-value pairs. The order of the pairs in the list is not + + significant. In JSON, a set of key-value pairs is represented as an object. It shall comply with + + the provisions defined in clause 4 of IETF RFC 8259. + + ' + type: object + properties: + key: + type: string + value: + type: string + KeyValuePair: + description: 'This data type represents a list of key-value pairs. The order of the pairs in the list is not + + significant. In JSON, a set of key-value pairs is represented as an object. It shall comply with + + the provisions defined in clause 4 of IETF RFC 8259. + + ' + type: object + properties: + key: + type: string + value: + type: string + GrantRequest: + x-etsi-ref: 6.2.4.2 + type: object + properties: + appInstanceId: + description: Identifier of the application instance which this grant request is related to. Shall also be provided for application instances that not yet exist but are planned to exist in the future, i.e. if the grant is requested for Instantiate. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + appLcmOpOccId: + description: The identifier of the application lifecycle management operation occurrence associated to the GrantRequest. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + appDId: + description: Identifier of the AppD that defines the application for which the LCM operation is to be granted. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + operation: + type: string + description: 'The lifecycle management operation for which granting is requested: + + INSTANTIATE. + + OPERATE. + + TERMINATE. + + + See notes 1 and 2.' + enum: + - SEE_DESCRIPTION + x-etsi-mec-origin-type: Enum_inlined + x-etsi-mec-cardinality: '1' + addResources: + description: List of resource definitions in the AppD for resources to be added by the LCM operation which is related to this grant request, with one entry per resource. + x-etsi-mec-origin-type: ResourceDefinition + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + $ref: '#/components/schemas/ResourceDefinition' + tempResources: + description: List of resource definitions in the AppD for resources to be temporarily instantiated during the runtime of the LCM operation which is related to this grant request. See note 3. + x-etsi-mec-origin-type: ResourceDefinition + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + $ref: '#/components/schemas/ResourceDefinition' + removeResources: + description: Removed by the LCM operation which is related to this grant request, with one entry per resource. + x-etsi-mec-origin-type: ResourceDefinition + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + $ref: '#/components/schemas/ResourceDefinition' + updateResources: + description: Provides the definitions of resources to be modified by the LCM operation which is related to this grant request, with one entry per resource. + x-etsi-mec-origin-type: ResourceDefinition + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + $ref: '#/components/schemas/ResourceDefinition' + additionalParams: + $ref: '#/components/schemas/KeyValuePairs' + _links: + $ref: '#/components/schemas/_links' + required: + - appInstanceId + - appLcmOpOccId + - appDId + - operation + - _links + x-etsi-notes: "NOTE 1:\tOther application LCM operations can be executed by the MEPM without requesting granting.\nNOTE 2:\tIf the granting request is for Instantiate, addResources shall be present.\nNOTE 3:\tThe MEO will assume that the MEPM will be responsible to both allocate and release the temporary resource during the runtime of the LCM operation. This means, the resource can be allocated and consumed after the \"start\" notification for the LCM operation is sent by the MEPM, and the resource will be released before the \"result\" notification of the application LCM operation is sent by the MEPM." + ResourceDefinition: + x-etsi-ref: 6.2.4.3 + type: object + properties: + id: + description: Identifier of this "ResourceDefinition" structure, unique at least within the scope of the "GrantRequest" structure. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + type: + type: string + description: 'Type of the resource definition referenced. + + Permitted values: + + COMPUTE. + + STORAGE. + + LINKPORT + + OSCONTAINER, see note.' + enum: + - SEE_DESCRIPTION + x-etsi-mec-origin-type: Enum_inlined + x-etsi-mec-cardinality: '1' + vduId: + description: 'Reference to the related VDU in the AppD applicable to this resource. + + Shall only be present if a VDU is applicable to this resource.' + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + resourceTemplateId: + description: 'Reference to a resource template in the AppD as follows: + + If type="COMPUTE": VirtualComputeDescriptor, + + If type="LINKPORT": AppExtCpd, + + If type="STORAGE": VirtualStorageDescriptor, + + If type="OSCONTAINER": osContainerDescriptor. + + Cardinality may be greater than "1" when + + Type ="OSCONTAINER" and multiple references to + + OsContainerDescriptor are present in the AppD. Cardinality shall be "1" otherwise.' + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 1..N + type: array + minItems: 1 + items: + type: string + resource: + $ref: '#/components/schemas/Resource' + required: + - id + - type + - resourceTemplateId + - resource + x-etsi-notes: "NOTE:\tThis permitted value reflects the ETSI NFV interpretation of the cloud native workloads." + Grant: + x-etsi-ref: 6.2.4.4 + type: object + properties: + id: + description: 'Identifier of the Grant. ' + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + appInstanceId: + description: Identifier of the application instance which this Grant is related to. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + appLcmOpOccId: + description: The identifier of the application lifecycle management operation occurrence associated to the Grant. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + vimConnections: + description: 'Provides information regarding VIM connections that are approved to be used by the MEPM to allocate resources, and provides parameters of these VIM connections. + + See note 1.' + x-etsi-mec-origin-type: VimConnectionInfoMap + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + $ref: '#/components/schemas/VimConnectionInfoMap' + zones: + description: Identifies resource zones where the resources are approved to be allocated by the MEPM. + x-etsi-mec-origin-type: ZoneInfo + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + $ref: '#/components/schemas/ZoneInfo' + zoneGroups: + description: Information about groups of resource zones that are related and that the MEO has chosen to fulfil a zoneGroup constraint in the Grant request. + x-etsi-mec-origin-type: ZoneGroupInfo + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + $ref: '#/components/schemas/ZoneGroupInfo' + addResources: + description: List of resources that are approved to be added, with one entry per resource. + x-etsi-mec-origin-type: GrantInfo + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + $ref: '#/components/schemas/GrantInfo' + tempResources: + description: List of resources that are approved to be temporarily instantiated during the runtime of the lifecycle operation, with one entry per resource. + x-etsi-mec-origin-type: GrantInfo + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + $ref: '#/components/schemas/GrantInfo' + removeResources: + description: List of resources that are approved to be removed, with one entry per resource. + x-etsi-mec-origin-type: GrantInfo + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + $ref: '#/components/schemas/GrantInfo' + updateResources: + description: List of resources that are approved to be modified, with one entry per resource. + x-etsi-mec-origin-type: GrantInfo + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + $ref: '#/components/schemas/GrantInfo' + vimAssets: + $ref: '#/components/schemas/VimAssets' + extVirtualLinks: + description: Information about external VLs to connect the application instance to. See note 3. + x-etsi-mec-origin-type: ExtVirtualLinkData + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + $ref: '#/components/schemas/ExtVirtualLinkData' + additionalParams: + $ref: '#/components/schemas/KeyValuePairs' + _links: + $ref: '#/components/schemas/_links' + required: + - id + - appInstanceId + - appLcmOpOccId + - _links + x-etsi-notes: "NOTE 1: \tThis interface allows to signal the use of multiple VIMs per application. However, due to the partial support of this feature in the present release, it is recommended in the present document that the number of entries in the \"vims\" attribute in the Grant is not greater than 1.\nNOTE 2:\tThe further condition will be defined by ETSI GS NFV-SOL 003 [7].\nNOTE 3:\tExternal VLs can be passed in the application lifecycle management operation requests such as Instantiate, and/or in the grant response. The MEO may choose to override in the grant response external VL instances that have been passed previously in the associated application lifecycle management request, if the lifecycle management request has originated from the MEO itself." + GrantInfo: + x-etsi-ref: 6.2.4.5 + type: object + properties: + resourceDefinitionId: + description: Identifier of the related "ResourceDefinition" structure from the related "GrantRequest" structure. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + vimConnectionId: + description: Identifier of the VIM connection to be used to manage this resource. Shall be present for new resources, and shall be absent for resources that have already been allocated. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + zoneId: + description: Reference to the identifier of the "ZoneInfo" structure in the "Grant" structure defining the resource zone into which this resource is to be placed. Shall be present for new resources if the zones concept is applicable to them (typically, Compute resources), and shall be absent for resources that have already been allocated. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + resourceGroupId: + description: 'Identifier of the "infrastructure resource group", logical grouping of virtual resources assigned to a tenant within an Infrastructure Domain, to be provided when allocating the resource. + + If the VIM connection referenced by "vimConnectionId" applies to multiple infrastructure resource groups, this attribute shall be present for new resources. + + If the VIM connection referenced by "vimConnectionId" applies to a single infrastructure resource group, this attribute may be present for new resources. + + This attribute shall be absent for resources that have already been allocated.' + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + containerNamespace: + description: 'The value of the namespace in which the MCIOs of an application with containerized components shall be deployed. + + This attribute shall be present if the granted resources are managed by a CISM. The attribute shall be absent if the granted resources are not managed by a CISM. See note.' + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + mcioConstraints: + description: 'The constraint values to be assigned to MCIOs of an application with containerized components. + + The key in the key-value pair indicates the parameter name of the MCIO constraint in the MCIO declarative descriptor and shall be one of the possible enumeration values of the "mcioConstraintsParams" attribute as specified in clause 7.1.6.2.2 of ETSI GS NFV-IFA 011 [1]. The value in the key-value pair indicates the value to be assigned to the MCIO constraint. + + This attribute shall be present if the granted resources are managed by a CISM. The attribute shall be absent if the granted resources are not managed by a CISM. See note.' + x-etsi-mec-origin-type: KeyValuePair + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + $ref: '#/components/schemas/KeyValuePair' + required: + - resourceDefinitionId + x-etsi-notes: "NOTE:\tThis attribute reflects the ETSI NFV interpretation of the cloud native workloads." + ZoneInfo: + x-etsi-ref: 6.2.4.6 + type: object + properties: + id: + description: The identifier of this ZoneInfo instance, for the purpose of referencing it from other structures in the "Grant" structure. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + zoneId: + description: The identifier of the resource zone, as managed by the resource management layer (typically, the VIM). + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + vimConnectionId: + description: 'Identifier of the connection to the VIM that manages the resource zone. + + + The applicable "VimConnectionInfo" structure, which is referenced by vimConnectionId, can be obtained from the " vimConnectionInfo" attribute of the "AppInstanceInfo" structure.' + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + required: + - id + - zoneId + ZoneGroupInfo: + x-etsi-ref: 6.2.4.7 + type: object + properties: + zoneId: + description: References of identifiers of "ZoneInfo" structures, each of which provides information about a resource zone that belongs to this group. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 1..N + type: array + minItems: 1 + items: + type: string + required: + - zoneId + ExtVirtualLinkData: + x-etsi-ref: 6.2.4.8 + type: object + properties: + id: + description: The identifier of the external VL instance. The identifier is assigned by the MEC entity that manages this VL instance. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + vimConnectionId: + description: Identifier of the VIM connection to manage this resource. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + resourceId: + description: The identifier of the resource in the scope of the VIM. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + extCps: + description: External CPs of the application instance to be connected to this external VL. + x-etsi-mec-origin-type: AppExtCpData + x-etsi-mec-cardinality: 1..N + type: array + minItems: 1 + items: + $ref: '#/components/schemas/AppExtCpData' + extLinkPorts: + description: Externally provided link ports to be used to connect external connection points to this external VL. If this attribute is not present, the MEPM shall create the link ports on the external VL. + x-etsi-mec-origin-type: ExtLinkPortData + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + $ref: '#/components/schemas/ExtLinkPortData' + required: + - id + - resourceId + - extCps + ExtLinkPortData: + x-etsi-ref: 6.2.4.9 + type: object + properties: + id: + description: Identifier of this link port as provided by the entity that has created the link port. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + resourceHandle: + # description': Reference to the virtualised resource realizing this link port. + $ref: '#/components/schemas/ResourceHandle' + # x-etsi-mec-origin-type': ResourceHandle + # x-etsi-mec-cardinality': '1' + required: + - id + - resourceHandle + ResourceHandle: + x-etsi-ref: 6.2.4.10 + type: object + properties: + vimConnectionId: + description: 'Identifier of the VIM connection to manage the resource. + + The applicable "VimConnectionInfo" structure, which is referenced by vimConnectionId, can be obtained from the "vimConnectionInfo" attribute of the "AppInstance" structure.' + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + resourceId: + description: Identifier of the resource in the scope of the VIM or the CISM or the resource provider. See note 2. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + vimLevelResourceType: + description: Type of the resource in the scope of the VIM. See note 1. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + required: + - resourceId + x-etsi-notes: "NOTE 1:\tThe value set of the \"vimLevelResourceType\" attribute is within the scope of the VIM and can be used as information that complements the ResourceHandle. This value set is different from the value set of the \"type\" attribute in the ResourceDefinition.\nNOTE 2:\tWhen the container infrastructure service is a Kubernetes\xAE instance the resourceId shall be populated in the following way:\nFor a compute MCIO, it is the instance identifier that Kubernetes\xAE assigns, which is unique cluster wide per resource type.\nFor a storage MCIO modelled as a persistent volume claim, it is the name of the persistent volume claim, i.e. the value of the 'claimName' field in the Kubernetes\xAE manifest, or a compound name built by Kubernetes\xAE if the persistent volume claim is defined inline in another template instead of in its own manifest.\nFor a network MCIO representing a NetworkAttachmentDefinition, a Service or an Ingress, it is the value of the 'metadata.name' field in Kubernetes\xAE manifest." + VimSoftwareImage: + x-etsi-ref: 6.2.4.11 + type: object + properties: + vimConnectionId: + description: Identifier of the VIM connection to access the software image referenced in this structure. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + appDSoftwareImageId: + description: Identifier which references the software image descriptor in the AppD. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + vimSoftwareImageId: + description: Identifier of the software image in the resource management layer (i.e. VIM). See note. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + required: + - appDSoftwareImageId + - vimSoftwareImageId + x-etsi-notes: "NOTE:\tFor an OS container image, the value of this attribute is a string concatenating the name and tag of the image in the CIR separated by a colon ':' with no spaces, e.g. \"dbImage:001\"." + AppExtCpData: + x-etsi-ref: 6.2.4.12 + type: object + properties: + cpdId: + description: The identifier of the CPD in the AppD. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + cpConfig: + description: List of instance data that need to be configured on the CP instances created from the respective CPD. + x-etsi-mec-origin-type: AppExtCpConfigMap + x-etsi-mec-cardinality: 1..N + type: array + minItems: 1 + items: + $ref: '#/components/schemas/AppExtCpConfigMap' + required: + - cpdId + - cpConfig + AppExtCpConfig: + x-etsi-ref: 6.2.4.13 + type: object + properties: + cpInstanceId: + description: 'Identifier of the external CP instance to which this set of configuration parameters is requested to be applied. + + + Shall be present if this instance has already been created.' + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + linkPortId: + description: Identifier of a pre-configured link port to which the external CP will be associated. See note. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + cpProtocolData: + description: Parameters for configuring the network protocols on the link port that connects the CP to a VL. See note. + x-etsi-mec-origin-type: CpProtocolData + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + $ref: '#/components/schemas/CpProtocolData' + x-etsi-notes: "NOTE:\tThe following conditions apply to the attributes \"linkPortId\" and \" cpProtocolData\":\nThe \"linkPortId\" and \"cpProtocolData\" attributes shall both be absent for the deletion of an existing external CP instance addressed by cpInstanceId.\nAt least one of these attributes shall be present for a to-be-created external CP instance or an existing external CP instance.\nIf the \"linkPortId\" attribute is absent, the MEPM shall create a link port.\nIf the \"cpProtocolData\" attribute is absent, the \"linkPortId\" attribute shall be provided referencing a pre-created link port, and the MEPM can use means outside the scope of the present document to obtain the pre-configured address information for the connection point from the resource representing the link port.\nIf both \"cpProtocolData\" and \"linkportId\" are provided, the API consumer shall ensure that the cpProtocolData can be used with the pre-created link port referenced by \"linkPortId\"." + CpProtocolData: + x-etsi-ref: 6.2.4.14 + type: object + properties: + layerProtocol: + type: string + description: 'Identifier of layer(s) and protocol(s). + + + Permitted values: IP_OVER_ETHERNET. + + + See note.' + enum: + - SEE_DESCRIPTION + x-etsi-mec-origin-type: Enum_inlined + x-etsi-mec-cardinality: '1' + ipOverEthernet: + # description': Network address data for IP over Ethernet to assign to the extCP instance. Shall be present if layerProtocol is equal to "IP_OVER_ETHERNET", and shall be absent otherwise. + $ref: '#/components/schemas/IpOverEthernetAddressData' + # x-etsi-mec-origin-type': IpOverEthernetAddressData + # x-etsi-mec-cardinality': 0..1 + required: + - layerProtocol + x-etsi-notes: "NOTE:\tThis attribute allows to signal the addition of further types of layer and protocol in future versions of the present document in a backwards-compatible way. In the current version of the present document, only IP over Ethernet is supported." + IpOverEthernetAddressData: + x-etsi-ref: 6.2.4.15 + type: object + properties: + macAddress: + description: MAC address. If this attribute is not present, it shall be chosen by the VIM. See note 1. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + ipAddresses: + type: array + items: + $ref: '#/components/schemas/IpAddresses' + x-etsi-notes: "NOTE 1:\tAt least one of \"macAddress\" or \"ipAddresses\" shall be present.\nNOTE 2:\tExactly one of \"fixedAddresses\", \"numDynamicAddresses\" or \"ipAddressRange\" shall be present." + VimConnectionInfo: + x-etsi-ref: 6.2.2.18 + type: object + properties: + id: + description: The identifier of the VIM Connection. This identifier is managed by the MEO. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + vimId: + description: 'The identifier of the VIM instance. This identifier is managed by the MEO. + + + Shall be present to address additional information about the VIM if such information has been configured into the MEPM by means outside the scope of the present document, and should be absent otherwise.' + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + vimType: + description: 'Discriminator for the different types of the VIM information. + + + The value of this attribute determines the structure of the "interfaceInfo" and "accessInfo" attributes, based on the type of the VIM. + + + The set of permitted values is expected to change over time as new types or versions of VIMs become available.' + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + interfaceInfo: + $ref: '#/components/schemas/KeyValuePairs' + accessInfo: + $ref: '#/components/schemas/KeyValuePairs' + extra: + $ref: '#/components/schemas/KeyValuePairs' + required: + - id + - vimType + _links: + description: Links to resources related to this request. + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: '1' + type: object + properties: + appLcmOpOcc: + # description': Related lifecycle management operation occurrence. + $ref: '#/components/schemas/LinkType' + # x-etsi-mec-origin-type': LinkType + # x-etsi-mec-cardinality': '1' + appInstance: + # description': Related application instance. + $ref: '#/components/schemas/LinkType' + # x-etsi-mec-origin-type': LinkType + # x-etsi-mec-cardinality': '1' + required: + - appLcmOpOcc + - appInstance + Resource: + description: 'Resource information for an existing resource. + + Shall be present for resources that are planned to be deleted or modified. + + Shall be absent otherwise.' + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: '1' + type: object + properties: + vimConnectionInfo: + # description': Specifies the connection information of VIM for the resources of the application instance. + $ref: '#/components/schemas/VimConnectionInfo' + # x-etsi-mec-origin-type': VimConnectionInfo + # x-etsi-mec-cardinality': '1' + resourceId: + description: Identifier of the resource in the scope of the VIM. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + required: + - vimConnectionInfo + - resourceId + VimAssets: + description: 'Information about assets for the application that are managed by the MEO in the VIM, such as software images. + + See note 2.' + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: '0..1 ' + type: object + properties: + softwareImages: + description: Mappings between software images defined in the AppD and software images managed in the VIM. + x-etsi-mec-origin-type: VimSoftwareImage + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + $ref: '#/components/schemas/VimSoftwareImage' + AddressRange: + description: 'An IP address range to be used, e.g. in case of egress connections. + + + In case this attribute is present, IP addresses from the range will be used. See note 2.' + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: 0..1 + type: object + properties: + minAddress: + description: Lowest IP address belonging to the range. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + maxAddress: + description: Highest IP address belonging to the range. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + required: + - minAddress + - maxAddress + IpAddresses: + description: 'List of IP addresses to assign to the CP instance. Each entry represents IP address data for fixed or dynamic IP address assignment per subnet. + + + If this attribute is not present, no IP address shall be assigned. See note 1.' + x-etsi-mec-origin-type: Structure (inlined + x-etsi-mec-cardinality: 0..N + type: object + minItems: 0 + properties: + type: + type: string + description: 'The type of the IP addresses. + + + Permitted values: IPV4, IPV6.' + enum: + - SEE_DESCRIPTION + x-etsi-mec-origin-type: Enum_inlined + x-etsi-mec-cardinality: '1' + fixedAddresses: + description: Fixed addresses to assign (from the subnet defined by "subnetId" if provided). See note 2. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + type: string + numDynamicAddresses: + description: Number of dynamic addresses to assign (from the subnet defined by "subnetId" if provided). See note 2. + x-etsi-mec-origin-type: Integer + x-etsi-mec-cardinality: 0..1 + type: integer + addressRange: + $ref: '#/components/schemas/AddressRange' + subnetId: + description: 'Subnet defined by the identifier of the subnet resource in the VIM. + + + In case this attribute is present, IP addresses from that subnet will be assigned; otherwise, IP addresses not bound to a subnet will be assigned.' + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + required: + - type + VimConnectionInfoMap: + type: object + additionalProperties: + $ref: '#/components/schemas/VimConnectionInfo' + AppExtCpConfigMap: + type: object + additionalProperties: + $ref: '#/components/schemas/AppExtCpConfig' + responses: + '200': + description: OK + '204': + description: No Content + '400': + description: 'Bad Request: used to indicate that incorrect parameters were passed to the request.' + content: + application/problem+json: + schema: + $ref: '#/components/schemas/ProblemDetails' + '401': + description: 'Unauthorized: used when the client did not submit credentials.' + content: + application/problem+json: + schema: + $ref: '#/components/schemas/ProblemDetails' + '403': + description: 'Forbidden: operation is not allowed given the current status of the resource.' + content: + application/problem+json: + schema: + $ref: '#/components/schemas/ProblemDetails' + '404': + description: 'Not Found: used when a client provided a URI that cannot be mapped to a valid resource URI.' + content: + application/problem+json: + schema: + $ref: '#/components/schemas/ProblemDetails' + '406': + description: 'Not Acceptable: used to indicate that the server cannot provide the any of the content formats supported by the client.' + content: + application/problem+json: + schema: + $ref: '#/components/schemas/ProblemDetails' + '409': + description: 'Conflict: The operation cannot be executed currently, due to a conflict with the state of the resource. .' + content: + application/problem+json: + schema: + $ref: '#/components/schemas/ProblemDetails' + '429': + description: 'Too Many Requests: used when a rate limiter has triggered.' + content: + application/problem+json: + schema: + $ref: '#/components/schemas/ProblemDetails' + parameters: {} + diff --git a/Auto_Generated_OAS_Output_Files/Auto_Generated_OAS_Output_Files/gs_mec01002v030101p_AppLcm.yaml b/Auto_Generated_OAS_Output_Files/Auto_Generated_OAS_Output_Files/gs_mec01002v030101p_AppLcm.yaml new file mode 100644 index 0000000..58fd311 --- /dev/null +++ b/Auto_Generated_OAS_Output_Files/Auto_Generated_OAS_Output_Files/gs_mec01002v030101p_AppLcm.yaml @@ -0,0 +1,3693 @@ +openapi: 3.1.0 +jsonSchemaDialect: https://json-schema.org/draft/2020-12/schema +info: + title: 'ETSI GS MEC 010-2 - Part 2: Application lifecycle, rules and requirements management' + description: 'ETSI GS MEC 010-2 - Part 2: Application lifecycle, rules and requirements management described using OpenAPI.' + license: + name: BSD-3-Clause + url: https://forge.etsi.org/legal-matters + contact: + 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 +paths: + /app_instances: + post: + summary: Create an application instance resource. + description: The POST method is used to create an application instance resource, which refers to the procedure of "creating application instance resource operation" described in clause 6.3. + operationId: appinstancesPOST + tags: + - app-lcm + requestBody: + description: The POST method is used to create an application instance resource. + required: true + content: + application/json: + schema: + type: object + properties: + CreateAppInstanceRequest: + $ref: '#/components/schemas/CreateAppInstanceRequest' + responses: + '201': + description: 'An application instance identifier and the related resource has been created successfully. + + + The response message content shall contain a representation of the created resource. + + + The HTTP response shall include a "Location" HTTP header that contains the resource URI of the created application instance.' + content: + application/json: + schema: + type: object + properties: + AppInstanceInfo: + $ref: '#/components/schemas/AppInstanceInfo' + '400': + $ref: '#/components/responses/400' + '401': + $ref: '#/components/responses/401' + '403': + $ref: '#/components/responses/403' + '404': + $ref: '#/components/responses/404' + '406': + $ref: '#/components/responses/406' + '429': + $ref: '#/components/responses/429' + get: + summary: Query multiple application instance resources. + description: The GET method retrieves information about the application instances resources. This refers to the procedure of "query application instance information operation" as described in clause 6.3.1.5. + operationId: appinstancesGET + 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' + responses: + '200': + description: 'Information about zero or more application instances was queried successfully. + + + The response message content shall contain in an array the representations of zero or more application instances.' + content: + application/json: + schema: + type: object + properties: + AppInstanceInfo: + type: array + items: + $ref: '#/components/schemas/AppInstanceInfo' + '400': + $ref: '#/components/responses/400' + '401': + $ref: '#/components/responses/401' + '403': + $ref: '#/components/responses/403' + '404': + $ref: '#/components/responses/404' + '406': + $ref: '#/components/responses/406' + '429': + $ref: '#/components/responses/429' + /app_instances/{appInstanceId}: + get: + summary: Read an application instance resource. + description: "The GET method retrieves the information of an individual application instance via reading an individual application instance resource, which is used by the procedure of \"query application instance information operation\" as described in clause\_6.3.1.5." + operationId: appinstancesByIdGET + tags: + - app-lcm + responses: + '200': + description: 'Information about an individual application instance was read successfully. + + + The response message content shall contain a representation of the read resource.' + content: + application/json: + schema: + type: object + properties: + AppInstanceInfo: + $ref: '#/components/schemas/AppInstanceInfo' + '400': + $ref: '#/components/responses/400' + '401': + $ref: '#/components/responses/401' + '403': + $ref: '#/components/responses/403' + '404': + $ref: '#/components/responses/404' + '406': + $ref: '#/components/responses/406' + '429': + $ref: '#/components/responses/429' + delete: + summary: Delete individual application instance resource. + description: The DELETE method deletes an individual application instance resource, which refers to the procedure of "delete application instance identifier operation" as described in clause 6.3.1.8. + operationId: appinstancesByIdDELETE + tags: + - app-lcm + responses: + '204': + $ref: '#/components/responses/204' + '400': + $ref: '#/components/responses/400' + '401': + $ref: '#/components/responses/401' + '403': + $ref: '#/components/responses/403' + '404': + $ref: '#/components/responses/404' + '406': + $ref: '#/components/responses/406' + '429': + $ref: '#/components/responses/429' + /subscriptions: + post: + summary: Subscribe to notifications related to application instances' lifecycle change. + description: The POST method is to subscribe to the notification of application instance related change, which is mapped to the procedure of "subscription operation". + operationId: subscriptionsPOST + tags: + - subscriptions + requestBody: + description: 'The subscription request message content contains the data type of the specific subscription to application instance state change event that is to be created: + + AppInstSubscriptionRequest + + AppLcmOpOccSubscriptionRequest + + AppInstIdCreationSubscriptionRequest + + AppInstIdDeletionSubscriptionRequest.' + content: + application/json: + schema: + type: object + properties: + AppInstSubscriptionRequest: + $ref: '#/components/schemas/AppInstSubscriptionRequest' + responses: + '201': + description: 'Upon success, a response message content representing the created subscription is returned. + + + The response message content shall contain a representation of the created SubscriptionInfo with the appropriate data type: + + AppInstSubscriptionInfo + + AppLcmOpOccSubscriptionInfo + + AppInstIdCreationSubscriptionInfo + + AppInstIdDeletionSubscriptionInfo + + + The HTTP response shall include a "Location" HTTP header that contains the resource URI of the created subscription resource.' + content: + application/json: + schema: + type: object + properties: + AppLcmOpOccSubscriptionRequest: + $ref: '#/components/schemas/AppLcmOpOccSubscriptionRequest' + '400': + $ref: '#/components/responses/400' + '401': + $ref: '#/components/responses/401' + '403': + $ref: '#/components/responses/403' + '404': + $ref: '#/components/responses/404' + '406': + $ref: '#/components/responses/406' + '429': + $ref: '#/components/responses/429' + callbacks: + notification: + post: + summary: Callback POST used to send a notification + description: Subscription notification + operationId: notificationPOST + requestBody: + description: Subscription notification + required: true + content: + application/json: + schema: + type: object + properties: + subscriptionNotification: + oneOf: + - $ref: '#/components/schemas/AppInstSubscriptionRequest' + - $ref: '#/components/schemas/AppLcmOpOccSubscriptionRequest' + - $ref: '#/components/schemas/AppInstIdCreationSubscriptionRequest' + - $ref: '#/components/schemas/AppInstIdDeletionSubscriptionRequest' + get: + summary: Query multiple subscriptions. + description: The GET method retrieves the information of multiple subscriptions to notifications related to an application instance. + operationId: subscriptionsGET + tags: + - subscriptions + parameters: + - $ref: '#/components/parameters/Query.Subscriptiontype' + responses: + '200': + description: Upon success, a response message content containing a list of all subscriptions is returned. + content: + application/json: + schema: + type: object + properties: + AppInstanceSubscriptionLinkList: + $ref: '#/components/schemas/AppInstanceSubscriptionLinkList' + '400': + $ref: '#/components/responses/400' + '401': + $ref: '#/components/responses/401' + '403': + $ref: '#/components/responses/403' + '404': + $ref: '#/components/responses/404' + '406': + $ref: '#/components/responses/406' + '429': + $ref: '#/components/responses/429' + /subscriptions/{subscriptionId}: + get: + summary: Read an individual subscription resource. + description: The GET method retrieves the individual subscription information by reading an individual subscription resource. This method shall comply with the URI query parameters, request and response data structures, and response codes, as specified in tables 7.4.4.3.2-1 and 7.4.4.3.2-2. + operationId: subscriptionsByIdGET + tags: + - subscriptions + responses: + '200': + description: 'Upon success, a response message content containing a representation of the individual subscription resource shall be returned. + + + The allowed data types for the SubscriptionInfo are: + + AppInstSubscriptionInfo + + AppLcmOpOccSubscriptionInfo + + AppInstIdCreationSubscriptionInfo + + AppInstIdDeletionSubscriptionInfo.' + content: + application/json: + schema: + type: object + properties: + AppLcmOpOccSubscriptionRequest: + $ref: '#/components/schemas/AppLcmOpOccSubscriptionRequest' + '400': + $ref: '#/components/responses/400' + '401': + $ref: '#/components/responses/401' + '403': + $ref: '#/components/responses/403' + '404': + $ref: '#/components/responses/404' + '406': + $ref: '#/components/responses/406' + '429': + $ref: '#/components/responses/429' + delete: + summary: Terminate an individual subscription. + description: The DELETE method is used to delete an individual subscription to notifications related to application instances. + operationId: subscriptionsByIdDELETE + tags: + - subscriptions + responses: + '204': + $ref: '#/components/responses/204' + '401': + $ref: '#/components/responses/401' + '403': + $ref: '#/components/responses/403' + '404': + $ref: '#/components/responses/404' + '429': + $ref: '#/components/responses/429' + /user_defined_notification: + post: + description: The POST method delivers a notification from the application lifecycle management resource to the subscriber. + operationId: userdefinednotificationPOST + tags: + - notification + requestBody: + description: 'A notification of an event related to an application instance. + + The allowed data types of application state change notification are: + + AppInstNotification + + AppLcmOpOccNotification + + AppInstanceIdentifierCreationNotification + + AppInstanceIdentifierDeletionNotification.' + content: + application/json: + schema: + type: object + properties: + AppInstNotification: + $ref: '#/components/schemas/AppInstNotification' + responses: + '204': + description: The notification was delivered successfully. The response message content shall be empty. + content: + application/json: + schema: + type: object + properties: {} + '401': + $ref: '#/components/responses/401' + '403': + $ref: '#/components/responses/403' + '404': + $ref: '#/components/responses/404' + '429': + $ref: '#/components/responses/429' + /app_instances/{appInstanceId}/instantiate: + post: + summary: Instantiate the application instance. + description: The POST method is to instantiate the application instance. + operationId: instantiatePOST + tags: + - app-lcm + requestBody: + description: The request message content contains the information necessary to instantiate an application instance. + required: true + content: + application/json: + schema: + type: object + properties: + InstantiateAppRequest: + $ref: '#/components/schemas/InstantiateAppRequest' + responses: + '202': + description: 'The request was accepted for processing, but the processing has not yet been completed. + + + The response message content shall be empty. + + + The HTTP response shall include a "Location" HTTP header that contains the URI of the newly-created "application LCM operation occurrence" resource that corresponds to this application instance instantiation operation.' + content: + application/json: + schema: + type: object + properties: {} + '400': + $ref: '#/components/responses/400' + '401': + $ref: '#/components/responses/401' + '403': + $ref: '#/components/responses/403' + '404': + $ref: '#/components/responses/404' + '406': + $ref: '#/components/responses/406' + '429': + $ref: '#/components/responses/429' + /app_instances/{appInstanceId}/terminate: + post: + summary: Terminate the application instance. + description: The POST method is used to terminate an application instance. + operationId: terminatePOST + tags: + - app-lcm + requestBody: + description: Parameters for the termination, as defined in clause 6.2.2.9. + required: true + content: + application/json: + schema: + type: object + properties: + TerminateAppRequest: + $ref: '#/components/schemas/TerminateAppRequest' + responses: + '202': + description: 'The request was accepted for processing, but the processing has not yet been completed. + + + The response message content shall be empty. + + + The HTTP response shall include a "Location" HTTP header that contains the URI of the newlycreated "application LCM operation occurrence" resource that corresponds to this operation.' + content: + application/json: + schema: + type: object + properties: {} + '400': + $ref: '#/components/responses/400' + '401': + $ref: '#/components/responses/401' + '403': + $ref: '#/components/responses/403' + '404': + $ref: '#/components/responses/404' + '406': + $ref: '#/components/responses/406' + '429': + $ref: '#/components/responses/429' + /app_instances/{appInstanceId}/operate: + post: + summary: Start or stop the application instance. + description: The POST method is used to change the operational state, i.e. start or stop, of the application instance. + operationId: operatePOST + tags: + - app-lcm + requestBody: + description: The request message content contains the information necessary to change the operational state of application instance, as described in clause 6.2.2.8. + required: true + content: + application/json: + schema: + type: object + properties: + OperateAppRequest: + $ref: '#/components/schemas/OperateAppRequest' + responses: + '202': + description: 'The request was accepted for processing, but it is possible that the processing is not yet completed. + + + The response message content shall be empty. + + + The HTTP response shall include a "Location" HTTP header that contains the URI of the newlycreated "application LCM operation occurrence" resource that corresponds to this application instance instantiation operation.' + content: + application/json: + schema: + type: object + properties: {} + '400': + $ref: '#/components/responses/400' + '401': + $ref: '#/components/responses/401' + '403': + $ref: '#/components/responses/403' + '404': + $ref: '#/components/responses/404' + '406': + $ref: '#/components/responses/406' + '429': + $ref: '#/components/responses/429' + /app_lcm_op_occs: + get: + summary: Query multiple application lifecycle operation occurrences. + description: The GET method retrieves information of operation status about multiple application instance lifecycle management operation occurrences. + operationId: applcmopoccsGET + 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' + responses: + '200': + description: 'Status information for zero or more application instance lifecycle management operation occurrences was queried successfully. + + + The response message content shall contain in an array the status information about zero or more application lifecycle operation occurrences.' + content: + application/json: + schema: + type: object + properties: + AppLcmOpOcc: + type: array + items: + $ref: '#/components/schemas/AppLcmOpOcc' + '400': + $ref: '#/components/responses/400' + '401': + $ref: '#/components/responses/401' + '403': + $ref: '#/components/responses/403' + '404': + $ref: '#/components/responses/404' + '406': + $ref: '#/components/responses/406' + '429': + $ref: '#/components/responses/429' + /app_lcm_op_occs/{appLcmOpOccId}: + get: + summary: Read the operation state of the individual application lifecycle operation occurrence. + description: The GET method reads the status information of an individual application LCM operation occurrence, which is used by the procedure of "query application lifecycle operation status" as described in clause 6.3.1.6. + operationId: applcmopoccsByIdGET + tags: + - app-lcm + responses: + '200': + description: 'Information about an application LCM operation occurrence was read successfully. + + + The response message content shall contain status information about an application lifecycle management operation occurrence.' + content: + application/json: + schema: + type: object + properties: + AppLcmOpOcc: + $ref: '#/components/schemas/AppLcmOpOcc' + '400': + $ref: '#/components/responses/400' + '401': + $ref: '#/components/responses/401' + '403': + $ref: '#/components/responses/403' + '404': + $ref: '#/components/responses/404' + '406': + $ref: '#/components/responses/406' + '429': + $ref: '#/components/responses/429' + /app_lcm_op_occs/{appLcmOpOccId}/cancel: + post: + summary: Cancel an ongoing individual application LCM operation. + description: "The POST method is used to cancel an ongoing application lifecycle operation whose related \"Individual application LCM operation occurrence\" resource is in \"PROCESSING\" state. This method shall comply with the URI request and response data structures, and response codes, as specified in tables\_7.4.11.3.1-1 and 7.4.11.3.1-2." + operationId: cancelPOST + tags: + - app-lcm + requestBody: + description: The request message content contains the information on the cancellation mode to apply to the ongoing application LCM operation, as described in clause 5.4.5. + required: true + content: + application/json: + schema: + type: object + properties: + CancelMode: + $ref: '#/components/schemas/CancelMode' + responses: + '202': + description: 'The request was accepted for processing, but it is possible that the processing is not yet completed. + + + The response message content shall be empty.' + content: + application/json: + schema: + type: object + properties: {} + '400': + $ref: '#/components/responses/400' + '401': + $ref: '#/components/responses/401' + '403': + $ref: '#/components/responses/403' + '404': + $ref: '#/components/responses/404' + '406': + $ref: '#/components/responses/406' + '429': + $ref: '#/components/responses/429' + /app_lcm_op_occs/{appLcmOpOccId}/fail: + post: + summary: Finally fail an ongoing individual application LCM operation. + description: "The POST method marks an application lifecycle management operation occurrence as \"finally failed\" if that operation occurrence is in \"FAILED_TEMP\" state. This method shall comply with the URI request and response data structures, and response codes, as specified in tables\_7.4.12.3.1-1 and 7.4.12.3.1-2." + operationId: failPOST + tags: + - app-lcm + requestBody: + description: The POST request message content to this resource shall be empty. + content: + application/json: {} + required: false + responses: + '200': + description: 'Shall be returned when the state of the application lifecycle management operation occurrence has been changed successfully. + + + The response shall include a representation of the "Individual application lifecycle management operation occurrence" resource.' + content: + application/json: + schema: + type: object + properties: + AppLcmOpOcc: + $ref: '#/components/schemas/AppLcmOpOcc' + '400': + $ref: '#/components/responses/400' + '401': + $ref: '#/components/responses/401' + '403': + $ref: '#/components/responses/403' + '404': + $ref: '#/components/responses/404' + '406': + $ref: '#/components/responses/406' + '429': + $ref: '#/components/responses/429' + /app_lcm_op_occs/{appLcmOpOccId}/retry: + post: + summary: Retry an ongoing individual application LCM operation. + description: "The POST method is used to initiate retrying an application lifecycle operation that has experience a temporary failure, i.e. the related \"application LCM operation occurrence\" is in \"FAILED_TEMP\" state. This method shall comply with the URI request and response data structures, and response codes, as specified in tables\_7.4.13.3.1-1 and 7.4.13.3.1-2." + operationId: retryPOST + tags: + - app-lcm + requestBody: + description: The POST request message content to this resource shall be empty. . + content: + application/json: {} + required: false + responses: + '202': + description: 'The request was accepted for processing, but it is possible that the processing is not yet completed. + + + The response message content shall be empty.' + content: + application/json: + schema: + type: object + properties: {} + '400': + $ref: '#/components/responses/400' + '401': + $ref: '#/components/responses/401' + '403': + $ref: '#/components/responses/403' + '404': + $ref: '#/components/responses/404' + '406': + $ref: '#/components/responses/406' + '429': + $ref: '#/components/responses/429' + /app_instances/{appInstanceId}/configure_platform_for_app: + post: + description: The POST method is to provide configuration information in AppD to the MEPM-V, intended to configure the MEP to run the application instance. + operationId: configureplatformforappPOST + tags: + - app-lcm + requestBody: + description: "The request message content contains the information necessary to provide configuration information in AppD as described in clause\_6.2.2.21." + required: true + content: + application/json: + schema: + type: object + properties: + ConfigPlatformForAppRequest: + $ref: '#/components/schemas/ConfigPlatformForAppRequest' + responses: + '202': + description: 'The request has been accepted for processing, but the processing has not yet been completed. + + + The response message content shall be empty. + + + The HTTP response shall include a "Location" HTTP header that contains the URI of the newly-created "application LCM operation occurrence" resource that corresponds to this application instance configure operation.' + content: + application/json: + schema: + type: object + properties: {} + '400': + $ref: '#/components/responses/400' + '401': + $ref: '#/components/responses/401' + '403': + $ref: '#/components/responses/403' + '429': + $ref: '#/components/responses/429' +components: + schemas: + ProblemDetails: + type: object + properties: + type: + type: string + format: uri + description: A URI reference according to IETF RFC 3986 that identifies the problem type + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: URI + title: + type: string + description: A short, human-readable summary of the problem type + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: String + status: + type: integer + format: uint32 + description: The HTTP status code for this occurrence of the problem + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: Uint32 + detail: + type: string + description: A human-readable explanation specific to this occurrence of the problem + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: String + instance: + type: string + format: uri + description: A URI reference that identifies the specific occurrence of the problem + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: URI + VirtualMemoryData: + type: object + required: + - virtualMemSize + properties: + virtualMemSize: + type: number + description: Amount of virtual memory in MB. + virtualMemOversubscriptionPolicy: + type: string + description: 'The memory core oversubscription policy in terms of virtual memory to physical memory + + on the platform. The cardinality can be 0 during the allocation request, if no particular + + value is requested. + + ' + vduMemRequirements: + type: array + items: + $ref: '#/components/schemas/KeyValuePairs' + description: Array of key-value pair requirements on the memory for the VDU. + numaEnabled: + type: boolean + description: Specifies the memory allocation to be cognisant of the relevant process/core allocation. + hugePagesRequirements: + type: string + description: Specifies requirements on the huge pages resources for the virtual memory. + BlockStorageData: + type: object + required: + - sizeOfStorage + properties: + sizeOfStorage: + type: number + description: Size of virtualised storage resource in GB. + vduStorageRequirements: + type: array + items: + $ref: '#/components/schemas/KeyValuePairs' + description: An array of key-value pairs that articulate the storage deployment requirements. + rdmaEnabled: + type: boolean + description: Indicate if the storage support RDMA. + swImageDesc: + type: object + $ref: '#/components/schemas/SwImageDesc' + description: 'References the software image to be loaded on the VirtualStorage resource created + + based on this VirtualStorageDesc. Shall be absent when used for virtual disks. See note + + ' + VirtualCpuData: + type: object + required: + - numVirtualCpu + properties: + cpuArchitecture: + type: string + description: CPU architecture type. Examples are x86, ARM. + numVirtualCpu: + type: integer + description: Number of virtual CPUs. + virtualCpuClock: + type: number + description: Minimum virtual CPU clock rate (e.g. in MHz). + virtualCpuOversubscriptionPolicy: + type: string + description: The CPU core oversubscription policy, e.g. the relation of virtual CPU cores to physical CPU cores/threads. + vduCpuRequirements: + type: array + items: + $ref: '#/components/schemas/KeyValuePairs' + description: Array of key-value pair requirements on the Compute (CPU) for the VDU. + virtualCpuPinning: + $ref: '#/components/schemas/VirtualCpuPinningData' + RequestedAdditionalCapabilityData: + type: object + required: + - requestedAdditionalCapabilityName + - supportMandatory + - targetPerformanceParameters + properties: + requestedAdditionalCapabilityName: + type: string + description: Specifies a requested additional capability for the VDU + supportMandatory: + type: boolean + description: Indicates whether the requested additional capability is mandatory for successful operation + minRequestedAdditionalCapabilityVersion: + type: string + description: Specifies the minimum version of the requested additional capability + preferredRequestedAdditionalCapabilityVersion: + type: string + description: Specifies the preferred version of the requested additional capability + targetPerformanceParameters: + type: array + description: Specifies specific attributes, dependent on the requested additional capability type. + items: + $ref: '#/components/schemas/KeyValuePairs' + VirtualStorageDescriptor: + type: object + required: + - id + - typeOfStorage + properties: + id: + type: string + description: Unique identifier of this VirtualStorageDesc in the VNFD. + typeOfStorage: + type: string + description: Type of virtualised storage resource. + enum: + - BLOCK + - OBJECT + - FILE + blockStorageData: + type: object + $ref: '#/components/schemas/BlockStorageData' + description: Details of block storage. + objectStorageData: + type: object + $ref: '#/components/schemas/ObjectStorageData' + description: Details of object storage. + fileStorageData: + type: object + $ref: '#/components/schemas/FileStorageData' + description: Details of file storage. + nfviMaintenanceInfo: + type: object + $ref: '#/components/schemas/NfviMaintenanceInfo' + description: Information on the rules to be observed during NFVI operation and maintenance. + perVnfcInstance: + type: boolean + description: Indicates whether the virtual storage resource shall be instantiated per VNFC instance. + FileStorageData: + type: object + required: + - sizeOfStorage + - fileSystemProtocol + - intVirtualLinkDesc + properties: + sizeOfStorage: + type: number + description: Size of virtualised storage resource in GB. + fileSystemProtocol: + type: string + description: The shared file system protocol (e.g. NFS, CIFS). + intVirtualLinkDesc: + type: object + $ref: '#/components/schemas/VnfVirtualLinkDesc' + description: Reference of the internal VLD which this file storage connects to. + VnfVirtualLinkDesc: + type: object + required: + - virtualLinkDescId + - virtualLinkDescFlavour + - connectivityType + properties: + virtualLinkDescId: + type: string + description: Unique identifier of this internal VLD in VNFD. + virtualLinkDescFlavour: + type: array + description: Describes a specific flavour of the VL with specific bitrate requirements. + items: + $ref: '#/components/schemas/VirtualLinkDescFlavour' + connectivityType: + type: object + description: See clause 7.1.7.3. + $ref: '#/components/schemas/ConnectivityType' + testAccess: + type: array + description: Specifies test access facilities expected on the VL. + items: + type: string + example: passive monitoring + description: + type: string + description: Provides human-readable information on the purpose of the VL. + example: control plane traffic + monitoringParameter: + type: array + description: Specifies the virtualised resource related performance metrics on VLD level to be tracked by the VNFM. + items: + $ref: '#/components/schemas/MonitoringParameter' + nfviMaintenanceInfo: + type: object + description: When present, provides information on the rules to be observed when an instance based on this VnfVirtualLinkDesc is impacted during NFVI operation and maintenance (e.g. NFVI resource upgrades). NfviMaintenanceInfo is defined in clause 7.1.8.17. + $ref: '#/components/schemas/NfviMaintenanceInfo' + externallyManaged: + type: string + description: Specifies the intent of the VNF designer with respect to the internal VL instances created from this descriptor being externally managed. + enum: + - REQUIRED + - ALLOWED + default: ALLOWED + ConnectivityType: + type: object + required: + - layerProtocol + properties: + layerProtocol: + type: array + description: 'Specifies the protocols that the VL uses See note 1 and note 2. + + ' + items: + type: string + enum: + - Ethernet + - MPLS + - ODU2 + - IPV4 + - IPV6 + - Pseudo-Wire + - Etc + minItems: 1 + flowPattern: + type: string + description: Specifies the flow pattern of the connectivity (Line, Tree, Mesh, etc.). + description: "NOTE 1 The top layer protocol of the VL protocol stack shall always be provided. The lower layer protocols may be included when there are specific requirements on these layers. \nNOTE 2 If more than 1 values are present, the first value represents the highest layer protocol data, and the last value represents the lowest layer protocol data. \n" + QoS: + type: object + required: + - latency + - packetDelayVariation + properties: + latency: + type: number + description: Latency of the VL in milliseconds. + packetDelayVariation: + type: number + description: Packet delay variation of the VL in milliseconds. + packetLossRatio: + type: number + description: Packet loss ratio of the VL in percentage. + VirtualLinkDescFlavour: + type: object + required: + - flavourId + properties: + flavourId: + type: string + description: Identifies a flavour within a VnfVirtualLinkDesc. + qos: + type: object + $ref: '#/components/schemas/QoS' + description: QoS of the VL. + Version: + type: object + required: + - srcVnfdId + - dstVnfdId + - srcFlavourId + properties: + srcVnfdId: + type: string + description: Identifier of the source VNFD and the source VNF package. See note 1. + dstVnfdId: + type: string + description: Identifier of the destination VNFD and the destination VNF package. See note 1. + srcFlavourId: + type: string + description: Identifier of the deployment flavour in the source VNF package for which this modification applies. See note 2. + description: "NOTE 1: Either the srcVnfdId or the dstVnfdId shall be equal to the vnfdId of the VNFD containing this version selector. \nNOTE 2: It is up to protocol design stage to decide whether there is further optimization potential to apply one modification for multiple srcFlavourIds.\n" + AppInstanceSubscriptionType: + type: string + enum: + - AppInstanceStateChangeSubscription + - AppLcmOpOccStateChangeSubscription + - AppIdentifierCreationSubscription + - AppIdentifierDeletionSubscription + description: String representing the type of a subscription. + McioInfo: + type: object + required: + - mcioId + - mcioName + - mcioNamespace + - vduId + - cismId + - mcioType + - desiredInstances + - availableInstances + properties: + mcioId: + type: string + description: Identifier of this MCIO, created by the CISM. + mcioName: + type: string + description: Human readable name of this MCIO. + mcioNamespace: + type: string + description: Namespace of this MCIO + vduId: + type: string + description: Reference to the applicable Vdu information element in the VNFD. + cismId: + type: string + description: Identifier of the CISM managing this MCIO. + mcioType: + type: string + description: The type of MCIO. See note 1. + desiredInstances: + type: integer + description: Number of desired MCIO instances. + availableInstances: + type: integer + description: Number of available MCIO instances + additionalInfo: + type: string + description: Additional information which is specific to the MCIO, its type, and which is available from the CISM. See note 2 + description: "NOTE 1: The type of MCIO as specified in the declarative descriptor of the MCIO, and that can be read from the CISM.\nEXAMPLE: In case of MCIOs managed by Kubernetes\xAE, the type of MCIO corresponds to the \"kind\" property of the declarative descriptor.\nNOTE 2: If the attribute additionalInfo is present, it may contain runtime information on the actual and desired state of the MCIO(s)\n" + CommunicationInterface: + type: object + properties: + ipAddresses: + type: array + description: Entry point information of the service as one or more pairs of IP address and port. + items: + $ref: '#/components/schemas/ipAddresses' + OsContainerDescriptor: + title: OsContainerDescriptor + type: object + required: + - osContainerDescId + - name + - description + - swImageDesc + properties: + osContainerDescId: + type: string + description: Unique identifier of this OsContainerDesc in the VNFD. + name: + type: string + description: Human readable name of this OS container. + description: + type: string + description: Human readable description of this OS container. + requestedCpuResources: + type: integer + description: Number of CPU resources requested for the container (e.g. in milli-CPU-s). + requestedMemoryResources: + type: number + description: Amount of memory resources requested for the container (e.g. in MB). + requestedEphemeralStorageResources: + type: number + description: Size of ephemeral storage resources requested for the container (e.g. in GB). + extendedResourceRequests: + type: array + items: + $ref: '#/components/schemas/KeyValuePairs' + description: An array of key-value pairs of extended resources required by the container see note. + cpuResourceLimit: + type: integer + description: Number of CPU resources the container can maximally use (e.g. in milli-CPU). + memoryResourceLimit: + type: number + description: Amount of memory resources the container can maximally use (e.g. in MB). + ephemeralStorageResourceLimit: + type: number + description: Size of ephemeral storage resources the container can maximally use (e.g. in GB). + hugePageResources: + type: object + description: Specifies HugePages resources requested for the container, which the container can maximally use. + additionalProperties: + type: string + cpuPinningRequirements: + type: object + $ref: '#/components/schemas/VirtualCpuPinningData' + description: Requirements for CPU pinning configuration for this OS container. + swImageDesc: + type: object + $ref: '#/components/schemas/SwImageDesc' + description: Describes the software image realizing this OS container. + bootData: + type: string + description: Contains a string or a URL to a file contained in the VNF package used to customize a container resource at boot time. The bootData may contain variable parts that are replaced by deployment specific values before being sent. + monitoringParameters: + type: array + items: + $ref: '#/components/schemas/MonitoringParameter' + description: Specifies the virtualized resource related performance metrics on the OsContainerDesc level to be tracked by the VNFM. + KeyValuePairs: + type: object + additionalProperties: + type: object + ObjectStorageData: + type: object + properties: + maxSizeOfStorage: + type: number + description: Maximum size of virtualized storage resource in GB. + VirtualCpuPinningData: + type: object + properties: + virtualCpuPinningPolicy: + type: string + description: Indicates the policy for CPU pinning. + enum: + - STATIC + - DYNAMIC + virtualCpuPinningRule: + type: array + items: + type: string + description: List of rules that should be considered during the allocation of the virtual CPUs to logical CPUs in case of "STATIC" virtualCpuPinningPolicy. + SwImageDesc: + type: object + required: + - id + - name + - version + - containerFormat + - swImage + properties: + id: + type: string + description: The identifier of this software image. + name: + type: string + description: The name of this software image. + version: + type: string + description: The version of this software image. + checksum: + $ref: '#/components/schemas/ChecksumData' + description: The checksum of the software image file. See note 3. + containerFormat: + type: string + description: The container format describes the container file format in which software image is provided. + diskFormat: + type: string + description: The disk format of a software image is the format of the underlying disk image. See note 1. + minDisk: + type: number + description: The minimal disk size requirement for this software image. The value of the "size of storage" attribute of the VirtualStorageDesc referencing this SwImageDesc shall not be smaller than the value of minDisk. See note 1. + minRam: + type: number + description: The minimal RAM requirement for this software image. The value of the "size" attribute of VirtualMemoryData of the Vdu referencing this SwImageDesc shall not be smaller than the value of minRam. See note 2. + size: + type: number + description: The size of this software image file. See note 3. + swImage: + type: object + $ref: '#/components/schemas/SwImageDesc' + description: This is a reference to the actual software image. The reference can be relative to the root of the VNF Package or can be a URL. + operatingSystem: + type: string + description: Specifies the operating system used in the software image. This attribute may also identify if a 32 bit or 64 bit software image is used. + supportedVirtualisationEnvironment: + type: array + items: + type: string + description: Specifies the virtualisation environments (e.g. hypervisor) compatible with this software image. + description: "NOTE 1: The attribute shall be present for VM-based software images referenced from a Vdu or from a VirtualStorageDesc, and shall be absent otherwise.\nNOTE 2: The attribute may be present for VM-based software images referenced from a Vdu or from a VirtualStorageDesc, and shall be absent otherwise.\nNOTE 3: The attribute shall be present for VM-based software images referenced from a Vdu or from a VirtualStorageDesc, and may be present otherwise. \n" + MonitoringParameter: + type: object + required: + - monitoringParameterId + - performanceMetric + properties: + monitoringParameterId: + type: string + description: Unique identifier of the monitoring parameter. + name: + type: string + description: Human readable name of the monitoring parameter. + performanceMetric: + type: string + description: Specifies the virtualised resource performance metric. + collectionPeriod: + type: string + description: An attribute that describes the periodicity at which to collect the performance information. + VirtualComputeDescriptor: + title: VirtualComputeDescriptor + type: object + required: + - virtualComputeDescId + - virtualMemory + - virtualCpu + properties: + virtualComputeDescId: + type: string + description: Unique identifier of this VirtualComputeDesc in the VNFD. + logicalNode: + type: array + description: The logical node requirements. + items: + $ref: '#/components/schemas/LogicalNodeRequirements' + requestAdditionalCapabilities: + type: array + description: Specifies requirements for additional capabilities. These may be for a range of purposes. One example is acceleration related capabilities. See clause 7.1.9.5. + items: + $ref: '#/components/schemas/RequestedAdditionalCapabilityData' + computeRequirements: + description: Specifies compute requirements. + type: array + items: + type: string + format: not-specified + virtualMemory: + type: object + description: The virtual memory of the virtualised compute. See clause 7.1.9.3.2. + $ref: '#/components/schemas/VirtualMemoryData' + virtualCpu: + type: object + description: The virtual CPU(s) of the virtualised compute. See clause 7.1.9.2.3. + $ref: '#/components/schemas/VirtualCpuData' + virtualDisk: + type: array + description: The local or ephemeral disk(s) of the virtualised compute. See clause 7.1.9.4.3. + items: + $ref: '#/components/schemas/BlockStorageData' + LogicalNodeRequirements: + type: object + required: + - id + - logicalNodeRequirementDetail + properties: + id: + type: string + format: uuid + description: Identifies this set of logical node requirements + logicalNodeRequirementDetail: + description: 'The logical node-level compute, memory and I/O requirements. An array of key-value pairs that articulate the deployment requirements. This could include the number of CPU cores on this logical node, a memory configuration specific to a logical node (e.g. such as available in the Linux kernel via the libnuma library) or a requirement related to the association of an I/O device with the logical node. + + ' + type: array + items: + type: string + format: not-specified + ChecksumData: + type: object + required: + - algorithm + - hash + properties: + algorithm: + type: string + description: Specifies the algorithm used to obtain the checksum value. See note. + hash: + type: string + description: 'Contains the result of applying the algorithm indicated by the algorithm attribute to the data to which this ChecksumData refers. + + ' + description: 'NOTE: The algorithm attribute value shall be one of the Hash Function Textual Names present in [2]. + + ' + ipAddresses: + type: object + required: + - host + - port + properties: + host: + type: string + description: Host portion of the address. + port: + type: integer + description: Port portion of the address. + Polygon: + type: string + description: 'To specify a constraint specific to Polygons, it is useful to introduce the concept of a linear ring: + + + - A linear ring is a closed LineString with four or more positions. + + - The first and last positions are equivalent, and they MUST contain identical values; their representation SHOULD also be identical. + + - A linear ring is the boundary of a surface or the boundary of a hole in a surface. + + - A linear ring MUST follow the right-hand rule with respect to the area it bounds, i.e., exterior rings are counterclockwise, and holes are clockwise. + + + Note: The [GJ2008] specification did not discuss linear ring winding order. For backward compatibility, parsers SHOULD NOT reject Polygons that do not follow the right-hand rule. + + + Though a linear ring is not explicitly represented as a GeoJSON geometry type, it leads to a canonical formulation of the Polygon geometry type definition as follows: + + + - For type "Polygon", the "coordinates" member MUST be an array of linear ring coordinate arrays. + + - For Polygons with more than one of these rings, the first MUST be the exterior ring, and any others MUST be interior rings. The exterior ring bounds the surface, and the interior rings (if present) bound holes within the surface. + + ' + TransportTypes: + x-etsi-ref: 8.1.6.4 + type: string + enum: + - REST_HTTP + - MB_TOPIC_BASED + - MB_ROUTING + - MB_PUBSUB + - RPC + - RPC_STREAMING + - WEBSOCKET + description: The enumeration TransportType represents types of transports. + x-etsi-mec-extensible: true + x-etsi-mec-enumeration-table: + - value: REST_HTTP + description: RESTful API using HTTP (as defined in IETF RFC 9110 [11]). + - value: MB_TOPIC_BASED + description: Topic-based message bus which routes messages to receivers based on subscriptions, if a pattern passed on subscription matches the topic of the message. EXAMPLE MQTT (see [i.4]). + - value: MB_ROUTING + description: Routing-based message bus which routes messages to receivers based on subscriptions, if a key passed on subscription is equal to the key of the message. + - value: MB_PUBSUB + description: Publish-subscribe based message bus which distributes messages to all subscribers. + - value: RPC + description: Remote procedure call. EXAMPLE GRPC (see [i.5]). + - value: RPC_STREAMING + description: Remote procedure call supporting streams of requests and responses. EXAMPLE GRPC (see [i.5]). + - value: WEBSOCKET + description: Websockets as defined in IETF RFC 6455 [12]. + SerializerType: + x-etsi-ref: 8.1.6.3 + type: string + enum: + - JSON + - XML + - PROTOBUF3 + x-etsi-mec-extensible: true + x-etsi-mec-enumeration-table: + - value: JSON + description: Javascript object notation [9] + - value: XML + description: eXtensible Mark-up Language version 1.1 [10] + - value: PROTOBUF3 + description: Protocol buffers version 3 [i.3] + SecurityInfo: + x-etsi-ref: 8.1.5.4 + type: object + properties: + oAuth2Info: + $ref: '#/components/schemas/OAuth2Info' + (extensions): + description: Extensions for alternative transport mechanisms. These extensions depend on the actual transport, and are out of scope of the present document. For instance, such extensions may be used to signal the necessary parameters for the client to use TLS-based authorization defined for alternative transports (see ETSI GS MEC 009 [5] for more information). + OAuth2Info: + description: Parameters related to use of OAuth 2.0. Shall be present in case OAuth 2.0 (see IETF RFC 6749 [13]) is supported to secure the provision of the service over the transport. + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: 0..1 + type: object + properties: + grantTypes: + description: "List of supported OAuth 2.0 grant types. Each entry shall be one of the following permitted values: \u2022 OAUTH2_AUTHORIZATION_CODE (Authorization code grant type) \u2022 OAUTH2_IMPLICIT_GRANT (Implicit grant type) \u2022 OAUTH2_RESOURCE_OWNER (Resource owner password credentials grant type) \u2022 OAUTH2_CLIENT_CREDENTIALS (Client credentials grant type) Only the value \"OAUTH2_CLIENT_CREDENTIALS\" is supported in the present document." + x-etsi-mec-origin-type: Enum_inlined + x-etsi-mec-cardinality: 1..4 + type: array + minItems: 0 + items: + type: string + enum: + - SEE_DESCRIPTION + tokenEndpoint: + description: The token endpoint. Shall be present unless the grant type is OAUTH2_IMPLICIT_GRANT. + x-etsi-mec-origin-type: Uri + x-etsi-mec-cardinality: 0..1 + type: string + format: uri + required: + - grantTypes + NfviMaintenanceInfo: + type: object + required: + - impactNotificationLeadTime + properties: + impactNotificationLeadTime: + type: number + description: The minimum notification lead time requested for upcoming impact of the virtualised resource or their group. + isImpactMitigationRequested: + type: boolean + description: When set to True, it is requested that at the time of the notification of an upcoming change that is expected to have an impact on the VNF, virtualised resource(s) of the same characteristics as the impacted ones is/are provided to compensate for the impact. + supportedMigrationType: + type: array + description: Applicable to VirtualComputeDesc and VirtualStorageDesc. When present, specifies the allowed migration types in the order of preference in case of an impact starting with the most preferred type. For LIVE_MIGRATION, see note 1. + items: + type: string + enum: + - NO_MIGRATION + - OFFLINE_MIGRATION + - LIVE_MIGRATION + maxUndetectableInterruptionTime: + type: number + description: Applicable to VirtualComputeDesc and VirtualStorageDesc. When present, it specifies the maximum interruption time that can go undetected at the VNF level and therefore which will not trigger VNF-internal recovery during live migration. (see note 1) + minRecoveryTimeBetweenImpacts: + type: number + description: When present, it specifies the time required by the group to recover from an impact, thus, the minimum time requested between consecutive impacts of the group. (see note 2.) + maxNumberOfImpactedInstances: + type: object + $ref: '#/components/schemas/MaxNumberOfImpactedInstances' + description: When present, specifies for different group sizes the maximum number of instances that can be impacted simultaneously within the group of virtualised resources without losing functionality. Zero cardinality indicates no constraint (see note 2). MaxNumberOfImpactedInstances is defined in clause 7.1.8.18. See note 3. + minNumberOfPreservedInstances: + type: object + $ref: '#/components/schemas/MinNumberOfPreservedInstances' + description: When present, specifies for different group sizes the minimum number of instances which need to be preserved simultaneously within the group of virtualised resources. Zero cardinality indicates no constraint (see note 2). MinNumberOfPreservedInstances is defined in clause 7.1.8.22.See note 3. + description: 'NOTE 1: When the maximum undetectable interruption time is specified it constrains the live migration. If it cannot be + + guaranteed on an NFVI that the interruption caused by the live migration will be less than the indicated + + maximum undetectable interruption time, then life migration should be downgraded according to the order of preference. + + NOTE 2: Impacts to instances of the group happening within the minimum recovery time are considered simultaneous + + impacts. + + NOTE 3: Either "maxNumberOfImpactedInstances" or "minNumberOfPreservedInstances" may be provided, but not both + + ' + MaxNumberOfImpactedInstances: + type: object + required: + - maxNumberOfImpactedInstances + properties: + groupSize: + type: integer + description: Determines the size of the group for which the maxNumberOfImpactedInstances is specified. + maxNumberOfImpactedInstances: + type: integer + description: The maximum number of instances that can be impacted simultaneously within the group of the specified size. + description: "NOTE 1: Each groupSize value specified for a group of virtual resources shall be unique, and it shall be possible to form an ascending ordered list of groupSizes. \nNOTE 2: The number of instances in the group for which the maxNumberOfImpactedInstances is specified may be equal to groupSize or less. When the number of instances is less than \n the groupSize, it shall be at least 1 if this is the first groupSize in the ordered list of groupSizes, or it shall be greater by at least 1 than the previous groupSize in the ordered list of groupSizes.\n" + MinNumberOfPreservedInstances: + type: object + required: + - minNumberOfPreservedInstances + properties: + groupSize: + type: integer + description: When present, determines the size of the group for which the minNumberOfPreservedInstances is specified. Otherwise, the size is not limited. + minNumberOfPreservedInstances: + type: integer + description: The minimum number of instances which need to be preserved simultaneously within the group of the specified size. + description: "NOTE 1: Each groupSize value specified for a group of virtual resources shall be unique, and it shall be possible to form \n an ascending ordered list of groupSizes. \nNOTE 2: The number of instances in the group for which the minNumberOfPreservedInstances is specified may be equal \n to groupSize or less.\n" + CategoryRef: + x-etsi-ref: 8.1.5.2 + type: object + properties: + href: + description: Reference of the catalogue. + x-etsi-mec-origin-type: Uri + x-etsi-mec-cardinality: '1' + type: string + id: + description: Unique identifier of the category. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + name: + description: Name of the category. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + version: + description: Name of the category. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + required: + - href + - id + - name + - version + ServiceDescriptor: + x-etsi-ref: 6.2.1.7 + type: object + properties: + serName: + description: The name of the service, for example, RNIS, LocationService, etc. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + serCategory: + # description': A Category reference of the service, defined in ETSI GS MEC 011 [17]. + $ref: '#/components/schemas/CategoryRef' + # x-etsi-mec-origin-type': CategoryRef + # x-etsi-mec-cardinality': 0..1 + version: + description: The version of the service. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + transportsSupported: + type: array + items: + $ref: '#/components/schemas/TransportsSupported' + required: + - serName + - version + FeatureDependency: + x-etsi-ref: 6.2.1.8 + type: object + properties: + featureName: + description: The name of the feature, for example, UserApps, UEIdentity, etc. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + version: + description: The version of the feature. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + required: + - featureName + - version + TrafficRuleDescriptor: + x-etsi-ref: 6.2.1.9 + type: object + properties: + trafficRuleId: + description: Identifies the traffic rule. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + filterType: + type: string + 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.' + enum: + - SEE_DESCRIPTION + x-etsi-mec-origin-type: Enum_inlined + x-etsi-mec-cardinality: '1' + 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." + x-etsi-mec-origin-type: Integer + x-etsi-mec-cardinality: '1' + type: integer + trafficFilter: + description: The filter used to identify specific flow/packets that need to be handled by the MEC host. + x-etsi-mec-origin-type: TrafficFilter + x-etsi-mec-cardinality: 1..N + type: array + minItems: 1 + items: + $ref: '#/components/schemas/TrafficFilter' + action: + type: string + description: 'Identifies the action of the MEC host data plane, when a packet matches the trafficFilter, the example actions include: + + DROP, + + FORWARD_DECAPSULATED, + + FORWARD_ENCAPSULATED, + + PASSTHROUGH, + + DUPLICATE_DECAPSULATED, + + DUPLICATE_ENCAPSULATED ' + enum: + - SEE_DESCRIPTION + x-etsi-mec-origin-type: Enum_inlined + x-etsi-mec-cardinality: '1' + dstInterface: + # description': Describes the destination interface information. If the action is FORWARD_DECAPSULATED, FORWARD_ENCAPSULATED or PASSTHROUGH, one value shall be provided. If the action is DUPLICATE_DECAPSULATED or DUPLICATE_ENCAPSULATED, two values shall be provided. See note 2. If the action is DROP, no value shall be provided. + $ref: '#/components/schemas/InterfaceDescriptor' + # x-etsi-mec-origin-type': InterfaceDescriptor + # x-etsi-mec-cardinality': 0..2 + required: + - trafficRuleId + - filterType + - priority + - trafficFilter + - action + x-etsi-notes: "NOTE 1:\tValue indicates the priority in descending order, i.e. with 0 as the highest priority and 255 as the lowest priority.\nNOTE 2:\tSome applications (like inline/tap) require two interfaces. The first interface in the case of inline/tap is on the client (e.g. UE) side and the second on the core network (e.g. EPC) side." + TrafficFilter: + x-etsi-ref: 6.2.1.10 + type: object + properties: + srcAddress: + description: 'An IP address or a range of IP addresses. + + For IPv4, the IP address could be an IP address plus mask, or an individual IP address, or a range of IP addresses. + + For IPv6, the IP address could be an IP prefix, or a range of IP prefixes.' + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + type: string + dstAddress: + description: 'An IP address or a range of IP addresses. + + For IPv4, the IP address could be an IP address plus mask, or an individual IP address, or a range of IP addresses. + + For IPv6, the IP address could be an IP prefix, or a range of IP prefixes.' + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + type: string + srcPort: + description: A port or a range of ports. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + type: string + dstPort: + description: A port or a range of ports. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + type: string + protocol: + description: Specify the protocol of the traffic filter. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + type: string + tag: + description: Used for tag based traffic rule. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + type: string + uri: + description: An URI label, in application layer, i.e. in HTTP message, is used to filter the traffic. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + type: string + packetLabel: + description: A customized packet label in network layer, as defined by the owner of the MEC platform, is used to filter the traffic. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + type: string + srcTunnelAddress: + description: Used for GTP tunnel based traffic rule. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + type: string + tgtTunnelAddress: + description: Used for GTP tunnel based traffic rule. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + type: string + srcTunnelPort: + description: Used for GTP tunnel based traffic rule. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + type: string + dstTunnelPort: + description: Used for GTP tunnel based traffic rule. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + type: string + qCI: + description: Used to match all packets that have the same QCI. + x-etsi-mec-origin-type: Integer + x-etsi-mec-cardinality: 0..1 + type: integer + dSCP: + description: Used to match all IPv4 packets that have the same DSCP. + x-etsi-mec-origin-type: Integer + x-etsi-mec-cardinality: 0..1 + type: integer + tC: + description: Used to match all IPv6 packets that have the same TC. + x-etsi-mec-origin-type: Integer + x-etsi-mec-cardinality: 0..1 + type: integer + InterfaceDescriptor: + x-etsi-ref: 6.2.1.11 + type: object + properties: + interfaceType: + type: string + description: 'Type of interface: TUNNEL, MAC, IP, etc.' + enum: + - SEE_DESCRIPTION + x-etsi-mec-origin-type: Enum_inlined + x-etsi-mec-cardinality: '1' + tunnelInfo: + # description': Included only if the destination address type is tunnel. + $ref: '#/components/schemas/TunnelInfo' + # x-etsi-mec-origin-type': TunnelInfo + # x-etsi-mec-cardinality': 0..1 + srcMACAddress: + description: If the interface type is MAC, the source address identifies the MAC address of the interface. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + dstMACAddress: + description: If the interface type is MAC, the destination address identifies the MAC address of the destination. Only used for dstInterface. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + dstIPAddress: + description: If the interface type is IP, the destination address identifies the IP address of the destination. Only used for dstInterface. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + required: + - interfaceType + TunnelInfo: + x-etsi-ref: 6.2.1.12 + type: object + properties: + tunnelType: + type: string + description: 'Type of tunnel: GTP-U, GRE, etc.' + enum: + - SEE_DESCRIPTION + x-etsi-mec-origin-type: Enum_inlined + x-etsi-mec-cardinality: '1' + tunnelDstAddress: + description: Destination address of the tunnel. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + tunnelSrcAddress: + description: Source address of the tunnel. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + tunnelSpecificData: + description: Parameters specific to the tunnel. + x-etsi-mec-origin-type: Not_specified + x-etsi-mec-cardinality: 0..1 + type: object + required: + - tunnelType + - tunnelDstAddress + - tunnelSrcAddress + DNSRuleDescriptor: + x-etsi-ref: 6.2.1.13 + type: object + properties: + dnsRuleId: + description: Identifies the DNS Rule + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + domainName: + description: FQDN of the DNS rule + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + ipAddressType: + type: string + description: 'Specifies the IP address type, value: IP_V6, IP_V4' + enum: + - SEE_DESCRIPTION + x-etsi-mec-origin-type: Enum_inlined + x-etsi-mec-cardinality: '1' + ipAddress: + description: IP address given by the DNS rule + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + ttl: + description: Time-to-live value + x-etsi-mec-origin-type: Integer + x-etsi-mec-cardinality: 0..1 + type: integer + required: + - dnsRuleId + - domainName + - ipAddressType + - ipAddress + LatencyDescriptor: + x-etsi-ref: 6.2.1.14 + type: object + properties: + maxLatency: + description: The value of the maximum latency in nano seconds tolerated by the MEC application. See note. + x-etsi-mec-origin-type: Uint32 + x-etsi-mec-cardinality: '1' + type: integer + format: uint32 + required: + - maxLatency + x-etsi-notes: "NOTE:\tThe latency is considered to be the one way end-to-end latency between the client application (e.g. in a device) and the service (i.e. the MEC application instance)." + ServiceDependency: + x-etsi-ref: 6.2.1.17 + type: object + properties: + serName: + description: The name of the service, for example, RNIS, LocationService, AMS, etc. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + serCategory: + # description': A Category reference of the service. + $ref: '#/components/schemas/CategoryRef' + # x-etsi-mec-origin-type': CategoryRef + # x-etsi-mec-cardinality': 0..1 + version: + description: The version of the service. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + serTransportDependencies: + description: Indicates transport and serialization format dependencies of consuming the service. Defaults to REST + JSON if absent. See note. + x-etsi-mec-origin-type: TransportDependency + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + $ref: '#/components/schemas/TransportDependency' + requestedPermissions: + description: 'Requested permissions regarding the access of the application to the service. See clause 7.2 of ETSI GS MEC 009 [4]. + + The format of this attribute is left for the data model design stage.' + x-etsi-mec-origin-type: Not_specified + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + $ref: '#/components/schemas/Not_specified' + required: + - serName + - version + x-etsi-notes: "NOTE:\tThis attribute indicates groups of transport bindings that a service-consuming MEC application supports for the consumption of the MEC service defined by this ServiceDependency structure. If at least one of the indicated groups is supported by the service it may be consumed by the application." + TransportDependency: + x-etsi-ref: 6.2.1.18 + type: object + properties: + transport: + # description': Information about the transport in this transport binding. + $ref: '#/components/schemas/TransportDescriptor' + # x-etsi-mec-origin-type': TransportDescriptor + # x-etsi-mec-cardinality': '1' + serializers: + description: Information about the serializers in this transport binding, as defined in the SerializerType type in ETSI GS MEC 011 [17]. Support for at least one of the entries is required in conjunction with the transport. + x-etsi-mec-origin-type: SerializerType + x-etsi-mec-cardinality: 1..N + type: array + minItems: 1 + items: + $ref: '#/components/schemas/SerializerType' + labels: + description: Set of labels that allow to define groups of transport bindings. The mechanism of the grouping is defined below this table. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 1..N + type: array + minItems: 1 + items: + type: string + required: + - transport + - serializers + - labels + TransportDescriptor: + x-etsi-ref: 6.2.1.19 + type: object + properties: + name: + description: The name of this transport. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + description: + description: Human-readable description of this transport. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + type: + # description': Type of the transport, as defined in the TransportTypes type in ETSI GS MEC 011 [17]. + $ref: '#/components/schemas/TransportTypes' + # x-etsi-mec-origin-type': TransportTypes + # x-etsi-mec-cardinality': '1' + protocol: + description: The name of the protocol used. Shall be set to "HTTP" for a REST API. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + version: + description: The version of the protocol used. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + security: + # description': Information about the security used by the transport in ETSI GS MEC 011 [17]. + $ref: '#/components/schemas/SecurityInfo' + # x-etsi-mec-origin-type': SecurityInfo + # x-etsi-mec-cardinality': '1' + implSpecificInfo: + description: Additional implementation specific details of the transport. + x-etsi-mec-origin-type: Not_specified + x-etsi-mec-cardinality: 0..1 + type: object + required: + - name + - type + - protocol + - version + - security + UserContextTransferCapability: + x-etsi-ref: 6.2.1.20 + type: object + properties: + statefulApplication: + description: 'If the application is stateful, this attribute shall be set to true. + + Otherwise, this attribute shall be set to false. ' + x-etsi-mec-origin-type: Boolean + x-etsi-mec-cardinality: '1' + type: boolean + userContextTransferSupport: + description: 'This attribute shall be present if the application is stateful and shall be absent otherwise. + + + If the application supports the user context transfer, this attribute shall be set to true. + + Otherwise this attribute shall be set to false.' + x-etsi-mec-origin-type: Boolean + x-etsi-mec-cardinality: 0..1 + type: boolean + required: + - statefulApplication + AppNetworkPolicy: + x-etsi-ref: 6.2.1.21 + type: object + properties: + steeredNetwork: + $ref: '#/components/schemas/SteeredNetwork' + required: + - steeredNetwork + x-etsi-notes: "NOTE:\tThe network types may depend on the availability of deployed access networks of MEC system." + LocationConstraints: + x-etsi-ref: 6.2.2.2 + type: object + properties: + countryCode: + description: The two-letter ISO 3166 [3] country code in capital letters. Shall be present in the case that "area" attribute is absent. May be present if the "area" attribute is present. See note. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + civicAddressElement: + type: array + items: + $ref: '#/components/schemas/CivicAddressElement' + area: + # description': Geographic area. Shall be absent if the "civicAddressElement" attribute is present. The content of this attribute shall follow the provisions for the "Polygon" geometry object as defined in IETF RFC 7946 [8], for which the "type" member shall be set to the value "Polygon". See note. + $ref: '#/components/schemas/Polygon' + # x-etsi-mec-origin-type': "Polygon (see IETF RFC\_7946\_[8])" + # x-etsi-mec-cardinality': 0..1 + x-etsi-notes: "NOTE:\tIf both \"countryCode\" and \"area\" are present, no conflicts should exist between the values of these two attributes. In case of conflicts, the API producer (e.g. MEO, MEAO) shall disregard parts of the geographic area signalled by \"area\" that are outside the boundaries of the country signalled by \"countryCode\". If \"countryCode\" is absent, it is solely the \"area\" attribute that defines the location constraint." + CreateAppInstanceRequest: + x-etsi-ref: 6.2.2.3 + type: object + properties: + appDId: + description: The application descriptor identifier. It is managed by the application provider to identify the application descriptor in a globally unique way. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + appInstanceName: + description: Human-readable name of the application instance to be created. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + appInstanceDescription: + description: Human-readable description of the application instance to be created. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + appPlacementInfo: + # description': Describes the information of selected MEC platform for the application instance to associate. See note. + $ref: '#/components/schemas/MepInformation' + # x-etsi-mec-origin-type': MepInformation + # x-etsi-mec-cardinality': 0..1 + required: + - appDId + x-etsi-notes: "NOTE:\tThis field applies to Mm3* reference point only." + AppInstanceInfo: + x-etsi-ref: 6.2.2.4 + type: object + properties: + id: + description: Identifier of the application instance represented by this data type. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + appInstanceName: + description: Name of the application instance. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + appInstanceDescription: + description: Human-readable description of the application instance to be created. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + appDId: + description: 'The application descriptor identifier is managed by the application provider to identify the application descriptor in a globally unique way. + + It is copied from the AppD of the onboarded application package.' + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + appProvider: + description: The onboarded application package provider name. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + appName: + description: The onboarded application name. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + appSoftVersion: + description: The application software version. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + appDVersion: + description: Version of the application descriptor. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + appPkgId: + description: Identifier of the onboarded application package. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + vimConnectionInfo: + description: "Information about VIM connections to be used for managing the resources for the application instance.\nThe keys of the map, each of which identifies information about a particular VIM connection, are managed by the MEO and referenced from other data structures via the \"vimConnectionId\" attribute. \nSee notes 1 and 3." + x-etsi-mec-origin-type: VimConnectionInfoMap + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + $ref: '#/components/schemas/VimConnectionInfoMap' + nsInstanceId: + description: Identifier of the NS instance created by NFVO in which the MEC application has been instantiated as a VNF instance. See note 2. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + vnfInstanceId: + description: "Identifier of the VNF instance created by VNFM that the MEC application has been instantiated as. See\_note 2." + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + instantiationState: + type: string + description: "Instantiation state of the application instance: \nNOT_INSTANTIATED: the application instance is not instantiated.\nINSTANTIATED: the application instance has been instantiated." + enum: + - SEE_DESCRIPTION + x-etsi-mec-origin-type: Enum_inlined + x-etsi-mec-cardinality: '1' + instantiatedAppState: + $ref: '#/components/schemas/InstantiatedAppState' + communicationInterface: + # description': Interface for communication with other application instances. See clause 7.5.2 of ETSI GS MEC 021 [13] for the data type definition. + $ref: '#/components/schemas/CommunicationInterface' + # x-etsi-mec-origin-type': CommunicationInterface + # x-etsi-mec-cardinality': 0..1 + _links: + $ref: '#/components/schemas/_links' + required: + - id + - appDId + - appProvider + - appName + - appSoftVersion + - appDVersion + - appPkgId + - instantiationState + - _links + x-etsi-notes: "NOTE 1:\tThis field does not apply if the data structure is used by MEAO.\nNOTE 2:\tThis field applies if the data structure is used by MEAO.\nNOTE 3:\tThis field does not apply if the data structure is used on Mm3*.\nNOTE 4:\tThis field applies if the data structure is used on Mm3*.\nNOTE 5:\tThis field applies if the data structure is used on Mm1 or Mm3*.\nNOTE 6:\tIt is not specified in the present document how location information is obtained in the case of MEC in NFV.\nNOTE 7:\tThis attribute reflects the ETSI NFV interpretation of the cloud native workloads." + AppInstanceSubscriptionFilter: + x-etsi-ref: 6.2.2.5 + type: object + properties: + appInstSelectorType: + type: integer + description: '0 = void + + 1 = APP_IDENTITY + + 2 = APP_NAME + + 3 = APP_D_ID + + 4 = APP_FROM_PROVIDER' + enum: + - SEE_DESCRIPTION + x-etsi-mec-origin-type: Enum (Inlined) + x-etsi-mec-cardinality: '1' + appInstances: + description: 'If appInstIdSelector = APP_IDENTITY match existing application instances with an "application instance identifier" listed in this attribute. + + + If appInstIdSelector = APP_NAME match existing application instances with an "application instance name" listed in this attribute. + + + If appInstIdSelector = APP_D_ID match existing application instances, or those created in the future whilst the subscription is active, based on the application descriptors identified by one of the "application descriptor identities" listed in this attribute. + + + If appInstIdSelector = APP_FROM_PROVIDER this attribute shall not be included.' + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + type: string + appsFromProviders: + type: array + items: + $ref: '#/components/schemas/AppsFromProviders' + required: + - appInstSelectorType + AppLcmOpOccSubscriptionFilter: + x-etsi-ref: 6.2.2.6 + type: object + properties: + appInstanceSubscriptionFilter: + # description': If present, this attribute contains filter criteria that selects one or more application instances on which to receive "LCM operation occurrence" notifications. + $ref: '#/components/schemas/AppInstanceSubscriptionFilter' + # x-etsi-mec-origin-type': AppInstanceSubscriptionFilter + # x-etsi-mec-cardinality': 0..1 + notificationTypes: + description: 'Match particular notification types. + + + Permitted values: + + AppLcmOpOccNotification.' + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + operationTypes: + type: string + description: 'Type of the LCM operation represented by this application instance LCM operation occurrence. + + + Permitted values: + + INSTANTIATE. + + OPERATE. + + TERMINATE. + + + Match particular application lifecycle operation types for the notification of AppLcmOpOccNotification. + + + May be present if the "notificationTypes" attribute contains the value "AppLcmOpOccNotification", and shall be absent otherwise.' + enum: + - SEE_DESCRIPTION + x-etsi-mec-origin-type: array(Enum (inlined)) + x-etsi-mec-cardinality: 0..N + operationStates: + type: string + description: 'Type of the LCM operation state represented by this application instance LCM operation occurrence. + + + Permitted values: + + STARTING. + + PROCESSING. + + COMPLETED. + + FAILED. + + FAILED_TEMP + + + Match particular LCM operation state values as reported in notifications of AppLcmOpOccNotification. + + + May be present if the "notificationTypes" attribute contains the value "AppLcmOpOccNotification", and shall be absent otherwise.' + enum: + - SEE_DESCRIPTION + x-etsi-mec-origin-type: array(Enum (inlined)) + x-etsi-mec-cardinality: 0..N + InstantiateAppRequest: + x-etsi-ref: 6.2.2.7 + type: object + properties: + virtualComputeDescriptor: + # description': Describes CPU and memory requirements, as well as optional additional requirements, such as disk and acceleration related capabilities, of the single VM to realize the application instance to be created. See notes 1 and 4. + $ref: '#/components/schemas/VirtualComputeDescriptor' + # x-etsi-mec-origin-type': VirtualComputeDescriptor + # x-etsi-mec-cardinality': 0..1 + osContainerDescriptor: + description: 'Describes CPU, memory requirements and limits, and software images of the OS Containers realizing this MEC application corresponding to OS Containers sharing the same host and same network namespace. + + See notes 1, 4 and 5.' + x-etsi-mec-origin-type: OsContainerDescriptor + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + $ref: '#/components/schemas/OsContainerDescriptor' + virtualStorageDescriptor: + description: Defines descriptors of virtual storage resources to be used by the application instance to be created. See note 1. + x-etsi-mec-origin-type: VirtualStorageDescriptor + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + $ref: '#/components/schemas/VirtualStorageDescriptor' + selectedMECHostInfo: + description: Describes the information of selected host for the application instance. See note 2. + x-etsi-mec-origin-type: MECHostInformation + x-etsi-mec-cardinality: 1..N + type: array + minItems: 1 + items: + $ref: '#/components/schemas/MECHostInformation' + locationConstraints: + # description': Defines the location constraints for the application instance to be created. See note 3. + $ref: '#/components/schemas/LocationConstraints' + # x-etsi-mec-origin-type': LocationConstraints + # x-etsi-mec-cardinality': 0..1 + vimConnectionInfo: + description: "Information about VIM connections to be used for managing the resources for the application instance, or refer to external/externally-managed virtual links.\nThis attribute shall only be supported and may be present if application-related resource management in direct mode is applicable. See\_note 2." + x-etsi-mec-origin-type: VimConnectionInfoMap + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + $ref: '#/components/schemas/VimConnectionInfoMap' + appTermCandsForCoord: + # description': Provides sets of applications as termination candidate alternatives that the MEO/MEAO shall select from when utilizing the coordinate LCM operation exchange in pre-emption situations (see step 3 in clause 5.3.1). If this attribute is omitted, the MEO/MEAO shall make its own selection for the coordinate LCM operation exchange. See note 3. + $ref: '#/components/schemas/AppTermCandsForCoord' + # x-etsi-mec-origin-type': AppTermCandsForCoord + # x-etsi-mec-cardinality': 0..1 + required: + - selectedMECHostInfo + x-etsi-notes: "NOTE 1:\tThis attribute may be provided in the InstantiateAppRequest structure to override the same attribute in the AppD.\nNOTE 2:\tThis field applies to Mm3 reference point only.\nNOTE 3:\tThis field applies to Mm1 reference point only.\nNOTE 4:\tOnly one of virtualComputeDescriptor or osContainerDescriptor shall be present.\nNOTE 5:\tThis attribute reflects the ETSI NFV interpretation of the cloud native workloads." + OperateAppRequest: + x-etsi-ref: 6.2.2.8 + type: object + properties: + changeStateTo: + type: string + description: 'The desired operational state: + + STARTED: the application instance is up and running. + + STOPPED: the application instance stops operation.' + enum: + - SEE_DESCRIPTION + x-etsi-mec-origin-type: Enum_inlined + x-etsi-mec-cardinality: '1' + stopType: + type: string + description: 'The stop type: + + FORCEFUL: it will stop the application immediately after accepting the request. + + GRACEFUL: it will first arrange to take the application instance out of service after accepting the request. Once that operation is successful or once the timer value specified in the "gracefulStopTimeout" attribute expires, it will stop the application. + + See notes 1 and 3.' + enum: + - SEE_DESCRIPTION + x-etsi-mec-origin-type: Enum_inlined + x-etsi-mec-cardinality: 0..1 + gracefulStopTimeout: + description: The time interval (in seconds) to wait for the application instance to be taken out of service during graceful stop, before stopping the application. See note 1 and note 2. + x-etsi-mec-origin-type: Integer + x-etsi-mec-cardinality: 0..1 + type: integer + required: + - changeStateTo + x-etsi-notes: "NOTE 1:\tThe \"stopType\" and \"gracefulStopTimeout\" attributes shall be absent, when the \"changeStateTo\" attribute is equal to \"STARTED\".\nNOTE 2:\tThe \"gracefulStopTimeout\" attribute shall be present, when the \"changeStateTo\" is equal to \"STOPPED\" and the \"stopType\" attribute is equal to \"GRACEFUL\". The \"gracefulStopTimeout\" attribute shall be absent, when the \"changeStateTo\" attribute is equal to \"STOPPED\" and the \"stopType\" attribute is equal to \"FORCEFUL\".\nNOTE 3:\tThe request shall be treated as if the \"stopType\" attribute was set to \"FORCEFUL\", when the \"changeStateTo\" attribute is equal to \"STOPPED\" and the \"stopType\" attribute is absent." + TerminateAppRequest: + x-etsi-ref: 6.2.2.9 + type: object + properties: + terminationType: + type: string + description: "Indicates whether forceful or graceful termination is requested. \nFORCEFUL: it will shut down the application instance and release the resources immediately after accepting the request. See note.\nGRACEFUL: it will first arrange to take the application instance out of service after accepting the request. Once the operation of taking the application instance out of service finishes or once the timer value specified in the \"gracefulTerminationTimeout\" attribute expires, it will shut down the application instance and release the resources." + enum: + - SEE_DESCRIPTION + x-etsi-mec-origin-type: Enum_inlined + x-etsi-mec-cardinality: '1' + gracefulTerminationTimeout: + description: 'This attribute is only applicable in case of graceful termination. It defines the time to wait for the application instance to be taken out of service before shutting down the application and releasing the resources. + + The unit is seconds. + + If not given and the "terminationType" attribute is set to "GRACEFUL", it is expected to wait for the successful taking out of service of the application, no matter how long it takes, before shutting down the application and releasing the resources.' + x-etsi-mec-origin-type: Integer + x-etsi-mec-cardinality: 0..1 + type: integer + required: + - terminationType + x-etsi-notes: "NOTE:\tIf the application instance is still in service, requesting forceful termination can adversely impact service." + AppInstSubscriptionInfo: + x-etsi-ref: 6.2.2.10 + type: object + properties: + id: + description: Identifier of the subscription to application instance operational state change notification. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + subscriptionType: + description: Shall be set to "AppInstanceStateChangeSubscription". + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + appInstanceState: + type: string + description: 'Application instance state subscribed to: + + NOT_INSTANTIATED: the application instance is not instantiated. + + STARTED: the application instance is up and running. + + STOPPED: the application instance stops operation.' + enum: + - SEE_DESCRIPTION + x-etsi-mec-origin-type: Enum_inlined + x-etsi-mec-cardinality: 0..1 + appInstanceSubscriptionFilter: + # description': Criteria used to select application instances on which to send notifications related to this subscription. + $ref: '#/components/schemas/AppInstanceSubscriptionFilter' + # x-etsi-mec-origin-type': AppInstanceSubscriptionFilter + # x-etsi-mec-cardinality': 0..1 + callbackUri: + description: The URI of the endpoint for the subscription related notification to be sent to. + x-etsi-mec-origin-type: Uri + x-etsi-mec-cardinality: '1' + type: string + format: uri + _links: + $ref: '#/components/schemas/_links1' + required: + - id + - subscriptionType + - callbackUri + - _links + AppInstNotification: + x-etsi-ref: 6.2.2.11 + 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. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + notificationType: + description: Discriminator for the different notification types. Shall be set to "AppInstanceStateChangeSubscription" for this notification type. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + appInstanceState: + type: string + description: 'Application instance state: + + NOT_INSTANTIATED: the application instance is not instantiated. + + STARTED: the application instance is up and running. + + STOPPED: the application instance stops operation.' + enum: + - SEE_DESCRIPTION + x-etsi-mec-origin-type: Enum_inlined + x-etsi-mec-cardinality: '1' + subscriptionId: + description: Identifier of the subscription related to this notification. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + timeStamp: + # description': Date and time of the notification generation. + $ref: '#/components/schemas/TimeStamp' + # x-etsi-mec-origin-type': TimeStamp + # x-etsi-mec-cardinality': '1' + appInstanceId: + description: Identifier of application instance. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + appPkgId: + description: Identifier of the onboarded application package. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + appDId: + description: The application descriptor identifier identifies the application package and the application descriptor in a globally unique way. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + appInstLocation: + # description': Location of the MEC application instance. Shall be present if the application instance is instantiated and shall be absent otherwise. + $ref: '#/components/schemas/LocationInformation' + # x-etsi-mec-origin-type': LocationInformation + # x-etsi-mec-cardinality': 0..1 + _links: + $ref: '#/components/schemas/_links2' + required: + - id + - notificationType + - appInstanceState + - subscriptionId + - timeStamp + - appInstanceId + - appPkgId + - appDId + - _links + AppInstSubscriptionRequest: + x-etsi-ref: 6.2.2.12 + type: object + properties: + subscriptionType: + description: Shall be set to "AppInstanceStateChangeSubscription". + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + callbackUri: + description: The URI of the endpoint for the subscription related notification to be sent to. + x-etsi-mec-origin-type: Uri + x-etsi-mec-cardinality: '1' + type: string + format: uri + appInstanceState: + type: string + description: 'Only send notifications for application instances that are in one of the states listed in this attribute. If this attribute is absent, match all states. + + + Application states: + + NOT_INSTANTIATED: the application instance is not instantiated. + + STARTED: the application instance is up and running. + + STOPPED: the application instance stops operation.' + enum: + - SEE_DESCRIPTION + x-etsi-mec-origin-type: Enum_inlined + x-etsi-mec-cardinality: 0..1 + appInstanceSubscriptionFilter: + # description': Criteria used to filter application instances for which to send notifications related to this subscription. + $ref: '#/components/schemas/AppInstanceSubscriptionFilter' + # x-etsi-mec-origin-type': AppInstanceSubscriptionFilter + # x-etsi-mec-cardinality': 0..1 + required: + - subscriptionType + - callbackUri + AppLcmOpOcc: + x-etsi-ref: 6.2.2.13 + type: object + properties: + id: + description: Identifier of the subscription to application LCM operation occurrence notification. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + operationState: + type: string + description: 'Operation state: + + STARTING: the LCM operation starting. + + PROCESSING: the LCM operation is currently in execution. + + COMPLETED: the LCM operation has been completed. + + FAILED: The LCM operation has failed and it cannot be retried, as it is determined that such action will not succeed. + + FAILED_TEMP: The LCM operation has failed and execution has stopped, but the execution of the operation is not considered to be closed.' + enum: + - SEE_DESCRIPTION + x-etsi-mec-origin-type: Enum_inlined + x-etsi-mec-cardinality: '1' + stateEnteredTime: + # description': Date and time when the current state was entered. + $ref: '#/components/schemas/TimeStamp' + # x-etsi-mec-origin-type': TimeStamp + # x-etsi-mec-cardinality': '1' + startTime: + # description': Date and time of the start of the operation. + $ref: '#/components/schemas/TimeStamp' + # x-etsi-mec-origin-type': TimeStamp + # x-etsi-mec-cardinality': '1' + lcmOperation: + type: string + description: 'Type of the actual LCM operation represented by this application instance LCM operation occurrence: + + INSTANTIATE. + + OPERATE. + + TERMINATE. + + This attribute is associated to the operationParams.' + enum: + - SEE_DESCRIPTION + x-etsi-mec-origin-type: Enum_inlined + x-etsi-mec-cardinality: '1' + operationParams: + # description': 'Input parameters of the LCM operation. This attribute shall be formatted according to the request data type of the related LCM operation. The following mapping between LCM operation and the data type of this attribute shall apply: INSTANTIATE: InstantiateAppRequest. OPERATE: OperateAppRequest. TERMINATE: TerminateAppRequest. This attribute shall be present if this data type is returned in a response to reading an individual resource. See note 2.' + $ref: '#/components/schemas/InstantiateAppRequest' + # x-etsi-mec-origin-type': InstantiateAppRequest + # x-etsi-mec-cardinality': 0..1 + isCancelPending: + description: If the application LCM operation occurrence operationState is in "PROCESSING" state and the operation is being cancelled, this attribute shall be set to true. Otherwise, it shall be set to false. + x-etsi-mec-origin-type: Boolean + x-etsi-mec-cardinality: 0..1 + type: boolean + cancelMode: + # description': 'The mode of a cancellation: GRACEFUL: Indicates ongoing resource management operations in the underlying system are being allowed to complete execution or timing out. FORCEFUL: Indicates ongoing resource management operations in the underlying system are being forcefully cancelled. Shall be present when isCancelPending equals true and shall be absent otherwise.' + $ref: '#/components/schemas/CancelMode' + # x-etsi-mec-origin-type': CancelMode + # x-etsi-mec-cardinality': 0..1 + _links: + $ref: '#/components/schemas/_links3' + required: + - id + - operationState + - stateEnteredTime + - startTime + - lcmOperation + - _links + x-etsi-notes: "Note 1:\tVoid.\nNote 2:\tThis object contains structured data, and shall comply with the provisions of clause 4 of IETF RFC 8259 [5]." + AppLcmOpOccSubscriptionRequest: + x-etsi-ref: 6.2.2.14 + type: object + properties: + subscriptionType: + description: Shall be set to "AppLcmOpOccStateChangeSubscription". + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + callbackUri: + description: The URI of the endpoint for the subscription related notification to be sent to. + x-etsi-mec-origin-type: Uri + x-etsi-mec-cardinality: '1' + type: string + format: uri + appLcmOpOccSubscriptionFilter: + # description': Subscription filter criteria to match specific application LCM operation occurrences. + $ref: '#/components/schemas/AppLcmOpOccSubscriptionFilter' + # x-etsi-mec-origin-type': AppLcmOpOccSubscriptionFilter + # x-etsi-mec-cardinality': 0..1 + required: + - subscriptionType + - callbackUri + AppLcmOpOccSubscriptionInfo: + x-etsi-ref: 6.2.2.15 + type: object + properties: + id: + description: Identifier of this subscription resource. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + subscriptionType: + description: Shall be set to "AppLcmOpOccStateChangeSubscription". + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + callbackUri: + description: The URI of the endpoint for the subscription related notification to be sent to. + x-etsi-mec-origin-type: Uri + x-etsi-mec-cardinality: '1' + type: string + format: uri + appLcmOpOccSubscriptionFilter: + # description': Criteria used to select application LCM operation occurrences on which to send notifications related to this subscription. + $ref: '#/components/schemas/AppLcmOpOccSubscriptionFilter' + # x-etsi-mec-origin-type': AppLcmOpOccSubscriptionFilter + # x-etsi-mec-cardinality': 0..1 + _links: + $ref: '#/components/schemas/_links1' + required: + - id + - subscriptionType + - callbackUri + - _links + AppLcmOpOccNotification: + x-etsi-ref: 6.2.2.16 + 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. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + notificationType: + description: Discriminator for the different notification types. Shall be set to "AppLcmOpOccStateChangeSubscription" for this notification type. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + operationType: + type: string + description: 'Type of the LCM operation represented by this application instance LCM operation occurrence. + + + Permitted values: + + INSTANTIATE. + + OPERATE. + + TERMINATE.' + enum: + - SEE_DESCRIPTION + x-etsi-mec-origin-type: Enum_inlined + x-etsi-mec-cardinality: '1' + operationState: + type: string + description: 'Operation state: + + + STARTING: the LCM operation starting. + + PROCESSING: the LCM operation is currently in execution. + + COMPLETED: the LCM operation has been completed. + + FAILED: The LCM operation has failed and it cannot be retried, as it is determined that such action will not succeed. + + FAILED_TEMP: The LCM operation has failed and execution has stopped, but the execution of the operation is not considered to be closed.' + enum: + - SEE_DESCRIPTION + x-etsi-mec-origin-type: Enum_inlined + x-etsi-mec-cardinality: '1' + subscriptionId: + description: Identifier of the subscription to this notification. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + timeStamp: + # description': Date and time of the notification generation. + $ref: '#/components/schemas/TimeStamp' + # x-etsi-mec-origin-type': TimeStamp + # x-etsi-mec-cardinality': '1' + appLcmOpOccId: + description: Identifier of application lifecycle management operation occurrence. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + appInstanceId: + description: Identifier of application instance. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + _links: + $ref: '#/components/schemas/_links4' + required: + - id + - notificationType + - operationType + - operationState + - subscriptionId + - timeStamp + - appLcmOpOccId + - appInstanceId + - _links + MECHostInformation: + x-etsi-ref: 6.2.2.17 + type: object + properties: + hostName: + description: Human-readable name of MEC host. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + hostId: + $ref: '#/components/schemas/KeyValuePairs' + required: + - hostId + x-etsi-notes: "NOTE:\tThis information can be structured to cater for host identification schemes that are more complex than a simple identifier, e.g. when referring to the structure of an NFVI." + VimConnectionInfo: + x-etsi-ref: 6.2.2.18 + type: object + properties: + id: + description: The identifier of the VIM Connection. This identifier is managed by the MEO. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + vimId: + description: 'The identifier of the VIM instance. This identifier is managed by the MEO. + + + Shall be present to address additional information about the VIM if such information has been configured into the MEPM by means outside the scope of the present document, and should be absent otherwise.' + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + vimType: + description: 'Discriminator for the different types of the VIM information. + + + The value of this attribute determines the structure of the "interfaceInfo" and "accessInfo" attributes, based on the type of the VIM. + + + The set of permitted values is expected to change over time as new types or versions of VIMs become available.' + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + interfaceInfo: + $ref: '#/components/schemas/KeyValuePairs' + accessInfo: + $ref: '#/components/schemas/KeyValuePairs' + extra: + $ref: '#/components/schemas/KeyValuePairs' + required: + - id + - vimType + AppInstanceSubscriptionLinkList: + x-etsi-ref: 6.2.2.19 + type: object + properties: + _links: + $ref: '#/components/schemas/_links5' + required: + - _links + ConfigPlatformForAppRequest: + x-etsi-ref: 6.2.2.21 + type: object + properties: + appServiceRequired: + description: Describes services a MEC application requires to run. + x-etsi-mec-origin-type: ServiceDependency + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + $ref: '#/components/schemas/ServiceDependency' + appServiceOptional: + description: Describes services a MEC application may use if available. + x-etsi-mec-origin-type: ServiceDependency + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + $ref: '#/components/schemas/ServiceDependency' + appServiceProduced: + description: Describes services a MEC application is able to produce to the platform or other MEC applications. Only relevant for service-producing apps. + x-etsi-mec-origin-type: ServiceDescriptor + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + $ref: '#/components/schemas/ServiceDescriptor' + appFeatureRequired: + description: Describes features a MEC application requires to run. + x-etsi-mec-origin-type: FeatureDependency + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + $ref: '#/components/schemas/FeatureDependency' + appFeatureOptional: + description: Describes features a MEC application may use if available. + x-etsi-mec-origin-type: FeatureDependency + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + $ref: '#/components/schemas/FeatureDependency' + transportDependencies: + description: Transports, if any, that this application requires to be provided by the platform. These transports will be used by the application to deliver services provided by this application. Only relevant for service-producing apps. + x-etsi-mec-origin-type: TransportDependency + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + $ref: '#/components/schemas/TransportDependency' + appTrafficRule: + description: Describes traffic rules the MEC application requires. + x-etsi-mec-origin-type: TrafficRuleDescriptor + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + $ref: '#/components/schemas/TrafficRuleDescriptor' + appDNSRule: + description: Describes DNS rules the MEC application requires. + x-etsi-mec-origin-type: DNSRuleDescriptor + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + $ref: '#/components/schemas/DNSRuleDescriptor' + appLatency: + # description': Describes the maximum latency tolerated by the MEC application. + $ref: '#/components/schemas/LatencyDescriptor' + # x-etsi-mec-origin-type': LatencyDescriptor + # x-etsi-mec-cardinality': 0..1 + userContextTransferCapability: + # description': If the application supports the user context transfer capability, this attribute shall be included. + $ref: '#/components/schemas/UserContextTransferCapability' + # x-etsi-mec-origin-type': UserContextTransferCapability + # x-etsi-mec-cardinality': 0..1 + appNetworkPolicy: + # description': If present, it represents the application network policy of carrying the application traffic. + $ref: '#/components/schemas/AppNetworkPolicy' + # x-etsi-mec-origin-type': AppNetworkPolicy + # x-etsi-mec-cardinality': 0..1 + MepInformation: + x-etsi-ref: 6.2.2.22 + type: object + properties: + mepName: + description: Human-readable name of MEC platform. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + mepId: + description: Deployment-specific identifier of MEC platform. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + required: + - mepId + AppTermCandsForCoord: + x-etsi-ref: 6.2.2.23 + type: object + properties: + terminationOptions: + type: array + items: + $ref: '#/components/schemas/TerminationOptions' + required: + - terminationOptions + AppInstIdCreationSubscriptionRequest: + x-etsi-ref: 6.2.2.25 + type: object + properties: + subscriptionType: + description: Shall be set to "AppIdentifierCreationSubscription". + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + callbackUri: + description: The URI of the endpoint for the subscription related notification to be sent to. + x-etsi-mec-origin-type: Uri + x-etsi-mec-cardinality: '1' + type: string + format: uri + appInstanceSubscriptionFilter: + # description': Criteria used to filter application instances for which to send notifications related to this subscription. See note. + $ref: '#/components/schemas/AppInstanceSubscriptionFilter' + # x-etsi-mec-origin-type': AppInstanceSubscriptionFilter + # x-etsi-mec-cardinality': 0..1 + required: + - subscriptionType + - callbackUri + x-etsi-notes: "NOTE:\tIf present, the value of attribute \"appInstSelectorType\" in appInstanceSubscriptionFilter can only be set as \"APP_D_ID\" or \"APP_FROM_PROVIDER\"." + AppInstIdCreationSubscriptionInfo: + x-etsi-ref: 6.2.2.26 + type: object + properties: + id: + description: Identifier of the subscription to application instance operational state change notification. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + subscriptionType: + description: Shall be set to "AppIdentifierCreationSubscription". + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + callbackUri: + description: The URI of the endpoint for the subscription related notification to be sent to. + x-etsi-mec-origin-type: Uri + x-etsi-mec-cardinality: '1' + type: string + format: uri + appInstanceSubscriptionFilter: + # description': Criteria used to select application instances on which to send notifications related to this subscription. + $ref: '#/components/schemas/AppInstanceSubscriptionFilter' + # x-etsi-mec-origin-type': AppInstanceSubscriptionFilter + # x-etsi-mec-cardinality': 0..1 + _links: + $ref: '#/components/schemas/_links1' + required: + - id + - subscriptionType + - callbackUri + - _links + AppInstanceIdentifierCreationNotification: + x-etsi-ref: 6.2.2.27 + 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. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + notificationType: + description: Discriminator for the different notification types. Shall be set to "AppIdentifierCreationSubscription" for this notification type. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + subscriptionId: + description: Identifier of the subscription related to this notification. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + timeStamp: + # description': Date and time of the notification generation. + $ref: '#/components/schemas/TimeStamp' + # x-etsi-mec-origin-type': TimeStamp + # x-etsi-mec-cardinality': '1' + appInstanceId: + description: The created application instance Identifier. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + _links: + $ref: '#/components/schemas/_links6' + required: + - id + - notificationType + - subscriptionId + - timeStamp + - appInstanceId + - _links + AppInstIdDeletionSubscriptionRequest: + x-etsi-ref: 6.2.2.28 + type: object + properties: + subscriptionType: + description: Shall be set to "AppIdentifierDeletionSubscription". + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + callbackUri: + description: The URI of the endpoint for the subscription related notification to be sent to. + x-etsi-mec-origin-type: Uri + x-etsi-mec-cardinality: '1' + type: string + format: uri + appInstanceSubscriptionFilter: + # description': Criteria used to filter application instances for which to send notifications related to this subscription. + $ref: '#/components/schemas/AppInstanceSubscriptionFilter' + # x-etsi-mec-origin-type': AppInstanceSubscriptionFilter + # x-etsi-mec-cardinality': 0..1 + required: + - subscriptionType + - callbackUri + AppInstIdDeletionSubscriptionInfo: + x-etsi-ref: 6.2.2.29 + type: object + properties: + id: + description: Identifier of the subscription to application instance operational state change notification. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + subscriptionType: + description: Shall be set to "AppIdentifierDeletionSubscription". + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + callbackUri: + description: The URI of the endpoint for the subscription related notification to be sent to. + x-etsi-mec-origin-type: Uri + x-etsi-mec-cardinality: '1' + type: string + format: uri + appInstanceSubscriptionFilter: + # description': Criteria used to select application instances on which to send notifications related to this subscription. + $ref: '#/components/schemas/AppInstanceSubscriptionFilter' + # x-etsi-mec-origin-type': AppInstanceSubscriptionFilter + # x-etsi-mec-cardinality': 0..1 + _links: + $ref: '#/components/schemas/_links1' + required: + - id + - subscriptionType + - callbackUri + - _links + AppInstanceIdentifierDeletionNotification: + x-etsi-ref: 6.2.2.30 + 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. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + notificationType: + description: Discriminator for the different notification types. Shall be set to "AppIdentifierDeletionSubscription" for this notification type. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + subscriptionId: + description: Identifier of the subscription related to this notification. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + timeStamp: + # description': Date and time of the notification generation. + $ref: '#/components/schemas/TimeStamp' + # x-etsi-mec-origin-type': TimeStamp + # x-etsi-mec-cardinality': '1' + appInstanceId: + description: The deleted application instance Identifier. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + _links: + $ref: '#/components/schemas/_links7' + required: + - id + - notificationType + - subscriptionId + - timeStamp + - appInstanceId + - _links + LocationInformation: + x-etsi-ref: 6.2.2.31 + type: object + properties: + countryCode: + description: The two-letter ISO 3166 [3] country code in capital letters where an instance is deployed. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + civicAddress: + $ref: '#/components/schemas/CivicAddress' + geographicalPosition: + description: Geographical position (i.e. latitude and longitude) where an instance is deployed. The content of this attribute shall follow the provisions for the "Point" geometry object as defined in IETF RFC 7946 [8]. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + required: + - countryCode + x-etsi-notes: "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 + properties: + CancelMode: + type: string + description: 'Indicates the intervention action to be taken. + + GRACEFUL: Indicates ongoing resource management operations in the underlying system are allowed to complete execution or time out. + + FORCED: Indicates ongoing resource management operations in the underlying system are to be cancelled without allowing them to complete execution or time out.' + enum: + - SEE_DESCRIPTION + x-etsi-mec-origin-type: Enum_inlined + x-etsi-mec-cardinality: '1' + required: + - CancelMode + LinkType: + x-etsi-ref: 6.2.5.2 + type: object + properties: + href: + description: URI referring to a resource. + x-etsi-mec-origin-type: Uri + x-etsi-mec-cardinality: '1' + type: string + format: uri + required: + - href + TimeStamp: + x-etsi-ref: 6.2.5.4 + type: object + properties: + seconds: + description: "The seconds part of the Time. Time is defined as Unix-time since January\_1, 1970, 00:00:00 UTC." + x-etsi-mec-origin-type: Uint32 + x-etsi-mec-cardinality: '1' + type: integer + format: uint32 + nanoSeconds: + description: The nanoseconds part of the Time. Time is defined as Unix-time since January 1, 1970, 00:00:00 UTC. + x-etsi-mec-origin-type: Uint32 + x-etsi-mec-cardinality: '1' + type: integer + format: uint32 + required: + - seconds + - nanoSeconds + Checksum: + x-etsi-ref: 6.2.5.6 + type: object + properties: + algorithm: + description: Name of the algorithm used to generate the checksum, as defined in ETSI GS NFV-SOL 004 [18]. For example, SHA-256, SHA-512. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + hash: + description: The hexadecimal value of the checksum. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + required: + - algorithm + - hash + TransportsSupported: + description: Indicates transports and serialization formats supported made available to the service-consuming application. Defaults to REST + JSON if absent. + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: 0..N + type: object + minItems: 0 + properties: + transport: + # description': Information about the transport in this binding. + $ref: '#/components/schemas/TransportDescriptor' + # x-etsi-mec-origin-type': TransportDescriptor + # x-etsi-mec-cardinality': '1' + serializers: + description: "Information about the serializers in this binding, as defined in the SerializerType type in ETSI GS\_MEC\_011\_[17]." + x-etsi-mec-origin-type: SerializerType + x-etsi-mec-cardinality: 1..N + type: array + minItems: 1 + items: + $ref: '#/components/schemas/SerializerType' + required: + - transport + - serializers + SteeredNetwork: + description: 'This attribute provides an option for the application to specify a type of network to carry the application traffic. + + See note.' + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: '1' + type: object + properties: + cellularNetwork: + 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. + x-etsi-mec-origin-type: Boolean + x-etsi-mec-cardinality: 0..1 + 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." + x-etsi-mec-origin-type: Boolean + x-etsi-mec-cardinality: 0..1 + 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. + x-etsi-mec-origin-type: Boolean + x-etsi-mec-cardinality: 0..1 + type: boolean + CivicAddressElement: + description: Zero or more elements comprising the civic address. Shall be absent if the "area" attribute is present. + x-etsi-mec-origin-type: Structure(inlined + x-etsi-mec-cardinality: 0..N + type: object + minItems: 0 + properties: + caType: + description: Describe the content type of caValue. The value of caType shall comply with section 3.4 of IETF RFC 4776 [2]. + x-etsi-mec-origin-type: Integer + x-etsi-mec-cardinality: '1' + type: integer + caValue: + description: Content of civic address element corresponding to the caType. The format caValue shall comply with section 3.4 of IETF RFC 4776 [2]. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + required: + - caType + - caValue + InstantiatedAppState: + description: Information specific to an instantiated application. This attribute shall be present if the instantiationState attribute value is INSTANTIATED. + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: 0..1 + type: object + properties: + operationalState: + type: string + description: 'Operational state is applicable in the instantiation state INSTANTIATED: + + STARTED: the application instance is up and running. + + STOPPED: the application instance stops operation.' + enum: + - SEE_DESCRIPTION + x-etsi-mec-origin-type: Enum_inlined + x-etsi-mec-cardinality: '1' + appInstLocation: + # description': Location of the MEC application instance. See note 5 and note 6. + $ref: '#/components/schemas/LocationInformation' + # x-etsi-mec-origin-type': LocationInformation + # x-etsi-mec-cardinality': 0..1 + mcioInfo: + description: Information on the MCIO(s) representing application instance realized by one or a set of OS containers. See note 7. + x-etsi-mec-origin-type: McioInfo + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + $ref: '#/components/schemas/McioInfo' + required: + - operationalState + _links: + description: Links to resources related to this resource. + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: '1' + type: object + properties: + self: + # description': Self referring URI. + $ref: '#/components/schemas/LinkType' + # x-etsi-mec-origin-type': LinkType + # x-etsi-mec-cardinality': '1' + instantiate: + # description': Link to the "instantiate" task resource, if the related operation is possible based on the current status of this application instance resource (i.e. application instance in NOT_INSTANTIATED state). See note 3. + $ref: '#/components/schemas/LinkType' + # x-etsi-mec-origin-type': LinkType + # x-etsi-mec-cardinality': 0..1 + terminate: + # description': Link to the "terminate" task resource, if the related operation is possible based on the current status of this application instance resource (i.e. application instance is in INSTANTIATED state). + $ref: '#/components/schemas/LinkType' + # x-etsi-mec-origin-type': LinkType + # x-etsi-mec-cardinality': 0..1 + operate: + # description': Link to the "operate" task resource, if the related operation is supported for this application instance, and is possible based on the current status of this application instance resource (i.e. application instance is in INSTANTIATED state). + $ref: '#/components/schemas/LinkType' + # x-etsi-mec-origin-type': LinkType + # x-etsi-mec-cardinality': 0..1 + configure_platform_for_app: + # description': Link to the "configure_platform_for_app" task resource, if the related operation is supported for this application instance, and is possible based on the current status of this application instance resource (i.e. application instance is in INSTANTIATED state). See note 4. + $ref: '#/components/schemas/LinkType' + # x-etsi-mec-origin-type': LinkType + # x-etsi-mec-cardinality': 0..1 + required: + - self + Versions: + description: If present, match application instances that belong to application products with certain versions and a certain product name, from one particular provider. + x-etsi-mec-origin-type: Structure (inlined + x-etsi-mec-cardinality: 0..N + type: object + minItems: 0 + properties: + appSoftVersion: + description: Application software version to match. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + appDVersion: + description: If present, match application instances that belong to application products with certain appD versions, a certain software version and a certain product name, from one particular provider. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + type: string + required: + - appSoftVersion + AppProducts: + description: If present, match application instances that belong to application products with certain product names, from one particular provider. + x-etsi-mec-origin-type: Structure (inlined + x-etsi-mec-cardinality: 0..N + type: object + minItems: 0 + properties: + appName: + description: Name of the application product to match. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + versions: + type: array + items: + $ref: '#/components/schemas/Versions' + required: + - appName + AppsFromProviders: + description: Present only if appInstIdSelector = APP_FROM_PROVIDER. Match existing application instances, or those created in the future whilst the subscription is active, that belong to applications from certain providers. + x-etsi-mec-origin-type: Structure (inlined + x-etsi-mec-cardinality: 0..N + type: object + minItems: 0 + properties: + appProvider: + description: Name of the application provider to match. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + appProducts: + type: array + items: + $ref: '#/components/schemas/AppProducts' + required: + - appProvider + _links1: + description: Links to resources related to this resource. + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: '1' + type: object + properties: + self: + # description': URI of this resource. + $ref: '#/components/schemas/LinkType' + # x-etsi-mec-origin-type': LinkType + # x-etsi-mec-cardinality': '1' + required: + - self + _links2: + description: Links to resources related to this notification. + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: '1' + type: object + properties: + subscription: + # description': A link to the related subscription. + $ref: '#/components/schemas/LinkType' + # x-etsi-mec-origin-type': LinkType + # x-etsi-mec-cardinality': '1' + required: + - subscription + _links3: + description: Links to resources related to this resource. + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: '1' + type: object + properties: + self: + # description': URI of this resource. + $ref: '#/components/schemas/LinkType' + # x-etsi-mec-origin-type': LinkType + # x-etsi-mec-cardinality': '1' + appInstance: + # description': Link to the application instance that the operation applies to. + $ref: '#/components/schemas/LinkType' + # x-etsi-mec-origin-type': LinkType + # x-etsi-mec-cardinality': '1' + required: + - self + - appInstance + _links4: + description: Links to resources related to this notification. + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: '1' + type: object + properties: + appInstance: + # description': Link to the resource representing the application instance to which the notified change applies. + $ref: '#/components/schemas/LinkType' + # x-etsi-mec-origin-type': LinkType + # x-etsi-mec-cardinality': '1' + subscription: + # description': Link to the related subscription. + $ref: '#/components/schemas/LinkType' + # x-etsi-mec-origin-type': LinkType + # x-etsi-mec-cardinality': '1' + appLcmOpOcc: + # description': Link to the application lifecycle management operation occurrence that this notification is related to. + $ref: '#/components/schemas/LinkType' + # x-etsi-mec-origin-type': LinkType + # x-etsi-mec-cardinality': '1' + required: + - appInstance + - subscription + - appLcmOpOcc + Subscriptions: + description: A link list to the subscriptions. + x-etsi-mec-origin-type: array (Structure (inlined)) + x-etsi-mec-cardinality: 0..N + type: object + minItems: 0 + properties: + href: + description: The URI referring to the subscription. + x-etsi-mec-origin-type: Uri + x-etsi-mec-cardinality: '1' + type: string + format: uri + subscriptionType: + # description': Type of the subscription. + $ref: '#/components/schemas/AppInstanceSubscriptionType' + # x-etsi-mec-origin-type': AppInstanceSubscriptionType + # x-etsi-mec-cardinality': '1' + required: + - href + - subscriptionType + _links5: + description: List of hyperlinks related to the resource. + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: '1' + type: object + properties: + self: + # description': URI of this resource. + $ref: '#/components/schemas/LinkType' + # x-etsi-mec-origin-type': LinkType + # x-etsi-mec-cardinality': '1' + subscriptions: + type: array + items: + $ref: '#/components/schemas/Subscriptions' + required: + - self + TerminationOptions: + description: Sets of application options for the MEO/MEAO to select from as candidates for termination. The MEO/MEAO shall select one or more of these alternate options to pass to the OSS when utilizing the LCM coordination exchange in pre-emption situations. For each option, the MEO/MEAO may select all, or a subset, of the candidate set's members. + x-etsi-mec-origin-type: Structure(inline + x-etsi-mec-cardinality: 1..N + type: object + minItems: 1 + properties: + appInstIdTerminationCands: + description: 'List of application instance identifiers, constituting a candidate set for termination. ' + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 1..N + type: array + minItems: 1 + items: + type: string + required: + - appInstIdTerminationCands + _links6: + description: Links to resources related to this notification. + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: '1' + type: object + properties: + subscription: + # description': A link to the related subscription. + $ref: '#/components/schemas/LinkType' + # x-etsi-mec-origin-type': LinkType + # x-etsi-mec-cardinality': '1' + appInstance: + # description': Link to the resource representing the created application instance. + $ref: '#/components/schemas/LinkType' + # x-etsi-mec-origin-type': LinkType + # x-etsi-mec-cardinality': '1' + required: + - subscription + - appInstance + _links7: + description: Links to resources related to this notification. + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: '1' + type: object + properties: + subscription: + # description': A link to the related subscription. + $ref: '#/components/schemas/LinkType' + # x-etsi-mec-origin-type': LinkType + # x-etsi-mec-cardinality': '1' + appInstance: + # description': Link to the resource representing the deleted application instance. + $ref: '#/components/schemas/LinkType' + # x-etsi-mec-origin-type': LinkType + # x-etsi-mec-cardinality': '1' + required: + - subscription + - appInstance + CivicAddressElement1: + description: Provides elements comprising a single civic address as described in section 3.4, with accompanying example in section 5 of IETF RFC 4776 [2]. + x-etsi-mec-origin-type: Structure (inlined + x-etsi-mec-cardinality: 1..N + type: object + minItems: 1 + properties: + caType: + description: "Describe the content type of caValue. The value of caType shall comply with section 3.4 of IETF RFC\_4776 [2]. " + x-etsi-mec-origin-type: Integer + x-etsi-mec-cardinality: '1' + type: integer + caValue: + description: "Content of civic address element corresponding to the caType. The format caValue shall comply with section\_3.4 of IETF RFC 4776 [2]." + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + required: + - caType + - caValue + CivicAddress: + description: Provides the civic address of the site hosting the MEC application instance. + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: 0..1 + type: object + properties: + civicAddressElement: + type: array + items: + $ref: '#/components/schemas/CivicAddressElement1' + required: + - civicAddressElement + VimConnectionInfoMap: + type: object + additionalProperties: + $ref: '#/components/schemas/VimConnectionInfo' + responses: + '200': + description: OK + '204': + description: No Content + '400': + description: 'Bad Request: used to indicate that incorrect parameters were passed to the request.' + content: + application/problem+json: + schema: + $ref: '#/components/schemas/ProblemDetails' + '401': + description: 'Unauthorized: used when the client did not submit credentials.' + content: + application/problem+json: + schema: + $ref: '#/components/schemas/ProblemDetails' + '403': + description: 'Forbidden: operation is not allowed given the current status of the resource.' + content: + application/problem+json: + schema: + $ref: '#/components/schemas/ProblemDetails' + '404': + description: 'Not Found: used when a client provided a URI that cannot be mapped to a valid resource URI.' + content: + application/problem+json: + schema: + $ref: '#/components/schemas/ProblemDetails' + '406': + description: 'Not Acceptable: used to indicate that the server cannot provide the any of the content formats supported by the client.' + content: + application/problem+json: + schema: + $ref: '#/components/schemas/ProblemDetails' + '409': + description: 'Conflict: The operation cannot be executed currently, due to a conflict with the state of the resource. .' + content: + application/problem+json: + schema: + $ref: '#/components/schemas/ProblemDetails' + '429': + description: 'Too Many Requests: used when a rate limiter has triggered.' + content: + application/problem+json: + schema: + $ref: '#/components/schemas/ProblemDetails' + parameters: + 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. + + All attribute names that appear in the AppInstanceInfo 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 + cardinality: 0..1 + in: query + required: false + x-exportParamName: Query.Filter + 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 + cardinality: 0..1 + in: query + required: false + x-exportParamName: Query.All_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 + cardinality: 0..1 + in: query + required: false + x-exportParamName: Query.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 + cardinality: 0..1 + in: query + required: false + x-exportParamName: Query.Exclude_fields + 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 + cardinality: 0..1 + in: query + required: false + x-exportParamName: Query.Exclude_default + Query.Subscriptiontype: + description: Query parameter to filter on a specific subscription type. + name: subscriptiontype + cardinality: 0..1 + in: query + required: false + x-exportParamName: Query.Subscriptiontype + schema: + $ref: '#/components/schemas/AppInstanceSubscriptionType' + 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 AppLcmOpOcc 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 + cardinality: 0..1 + in: query + required: false + x-exportParamName: Query.Filter1 + Query.Fields1: + description: 'Complex attributes of AppLcmOpOcc 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 + cardinality: 0..1 + in: query + required: false + x-exportParamName: Query.Fields1 + Query.Exclude_fields1: + description: 'Complex attributes of AppLcmOpOcc 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 + cardinality: 0..1 + in: query + required: false + x-exportParamName: Query.Exclude_fields1 + Query.Exclude_default1: + description: 'Indicates to exclude the following complex attributes of AppLcmOpOcc from the response. + + + The following attributes shall be excluded from the AppLcmOpOcc 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: + + operationParams; + + _links.' + name: exclude_default + cardinality: 0..1 + in: query + required: false + x-exportParamName: Query.Exclude_default1 + diff --git a/Auto_Generated_OAS_Output_Files/Auto_Generated_OAS_Output_Files/gs_mec01002v030101p_AppPkgMgmt.yaml b/Auto_Generated_OAS_Output_Files/Auto_Generated_OAS_Output_Files/gs_mec01002v030101p_AppPkgMgmt.yaml new file mode 100644 index 0000000..12440ea --- /dev/null +++ b/Auto_Generated_OAS_Output_Files/Auto_Generated_OAS_Output_Files/gs_mec01002v030101p_AppPkgMgmt.yaml @@ -0,0 +1,2955 @@ +openapi: 3.1.0 +jsonSchemaDialect: https://json-schema.org/draft/2020-12/schema +info: + title: 'ETSI GS MEC 010-2 - Part 2: Application lifecycle, rules and requirements management' + description: 'ETSI GS MEC 010-2 - Part 2: Application lifecycle, rules and requirements management described using OpenAPI.' + license: + name: BSD-3-Clause + url: https://forge.etsi.org/legal-matters + contact: + 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 +paths: + /app_packages: + post: + summary: Create a new resource for onboarded application package. + 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: + - app-pkgm + requestBody: + description: The POST method is used to create a new resource for onboarding an application package onto a MEO/MEAO. + required: true + content: + application/json: + schema: + type: object + properties: + CreateAppPkg: + $ref: '#/components/schemas/CreateAppPkg' + responses: + '201': + description: "Indicates a successful request. The response message content shall contain a representation of the application package resource defined in clause\_6.2.\n\nThe HTTP response includes a \"Location\" HTTP header that contains the URI of the created resource." + content: + application/json: + schema: + type: object + properties: + AppPkgInfo: + $ref: '#/components/schemas/AppPkgInfo' + '400': + $ref: '#/components/responses/400' + '401': + $ref: '#/components/responses/401' + '403': + $ref: '#/components/responses/403' + '404': + $ref: '#/components/responses/404' + '406': + $ref: '#/components/responses/406' + '429': + $ref: '#/components/responses/429' + get: + summary: Query on-boarded application package information. + 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' + 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. + content: + application/json: + schema: + type: object + properties: + AppPkgInfo: + type: array + items: + $ref: '#/components/schemas/AppPkgInfo' + '400': + $ref: '#/components/responses/400' + '401': + $ref: '#/components/responses/401' + '403': + $ref: '#/components/responses/403' + '404': + $ref: '#/components/responses/404' + '406': + $ref: '#/components/responses/406' + '429': + $ref: '#/components/responses/429' + /onboarded_app_packages: + post: + summary: Create a new resource for onboarded application package. + 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: + - app-pkgm + requestBody: + description: The POST method is used to create a new resource for onboarding an application package onto a MEO/MEAO. + required: true + content: + application/json: + schema: + type: object + properties: + CreateAppPkg: + $ref: '#/components/schemas/CreateAppPkg' + responses: + '201': + description: "Indicates a successful request. The response message content shall contain a representation of the application package resource defined in clause\_6.2.\n\nThe HTTP response includes a \"Location\" HTTP header that contains the URI of the created resource." + content: + application/json: + schema: + type: object + properties: + AppPkgInfo: + $ref: '#/components/schemas/AppPkgInfo' + '400': + $ref: '#/components/responses/400' + '401': + $ref: '#/components/responses/401' + '403': + $ref: '#/components/responses/403' + '404': + $ref: '#/components/responses/404' + '406': + $ref: '#/components/responses/406' + '429': + $ref: '#/components/responses/429' + get: + summary: Query on-boarded application package information. + 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' + 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. + content: + application/json: + schema: + type: object + properties: + AppPkgInfo: + type: array + items: + $ref: '#/components/schemas/AppPkgInfo' + '400': + $ref: '#/components/responses/400' + '401': + $ref: '#/components/responses/401' + '403': + $ref: '#/components/responses/403' + '404': + $ref: '#/components/responses/404' + '406': + $ref: '#/components/responses/406' + '429': + $ref: '#/components/responses/429' + /app_packages/{appPkgId}: + post: + description: The POST method delivers a notification from the application package management resource in MEO or MEAO to the subscriber. + operationId: userdefinednotificationPOST + tags: + - notification + requestBody: + description: A notification of an application package for on-boarding or operational state change. + required: true + content: + application/json: + schema: + type: object + properties: + AppPkgNotification: + $ref: '#/components/schemas/AppPkgNotification' + responses: + '204': + description: 'The notification was delivered successfully. + + The response message content shall be empty.' + content: + application/json: + schema: + type: object + properties: {} + '401': + $ref: '#/components/responses/401' + '403': + $ref: '#/components/responses/403' + '404': + $ref: '#/components/responses/404' + '429': + $ref: '#/components/responses/429' + /onboarded_app_packages/{appDId}: + get: + summary: Read information of an individual on-boarded application package. + description: This GET method is used to query the information related to individual application package resources. + operationId: onboardedapppackagesByIdGET + tags: + - app-pkgm + responses: + '200': + description: Indicates the success of request. The response message content shall contain a representation of the resource. + content: + application/json: + schema: + type: object + properties: + AppPkgInfo: + $ref: '#/components/schemas/AppPkgInfo' + '400': + $ref: '#/components/responses/400' + '401': + $ref: '#/components/responses/401' + '403': + $ref: '#/components/responses/403' + '404': + $ref: '#/components/responses/404' + '406': + $ref: '#/components/responses/406' + '429': + $ref: '#/components/responses/429' + delete: + summary: Delete an individual on-boarded application package. + 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: onboardedapppackagesByIdDELETE + tags: + - app-pkgm + responses: + '204': + $ref: '#/components/responses/204' + '400': + $ref: '#/components/responses/400' + '401': + $ref: '#/components/responses/401' + '403': + $ref: '#/components/responses/403' + '404': + $ref: '#/components/responses/404' + '406': + $ref: '#/components/responses/406' + '429': + $ref: '#/components/responses/429' + patch: + summary: Enable or disable an individual onboarded application package. + 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: onboardedapppackagesByIdPATCH + tags: + - app-pkgm + requestBody: + description: Parameters for application package information modification. + required: true + content: + application/json: + schema: + type: object + properties: + AppPkgInfoModifications: + $ref: '#/components/schemas/AppPkgInfoModifications' + responses: + '200': + description: Shall be returned when the operation has been completed successfully. + content: + application/json: + schema: + type: object + properties: + AppPkgInfoModifications: + $ref: '#/components/schemas/AppPkgInfoModifications' + '400': + $ref: '#/components/responses/400' + '401': + $ref: '#/components/responses/401' + '403': + $ref: '#/components/responses/403' + '404': + $ref: '#/components/responses/404' + '406': + $ref: '#/components/responses/406' + '429': + $ref: '#/components/responses/429' + /subscriptions: + post: + summary: Subscribe to notification related to on-boarding and/or changes of application packages. + description: The POST method is used to subscribe to notifications about on-boarding an application package, or about operational state changes of on-boarded application package, which is mapped to the procedure of "subscription operation" as described in clause 6.3.3.3. + operationId: subscriptionsPOST + tags: + - app-pkgm + requestBody: + description: The input parameters of "subscribe operation" to notifications about changes related to application package management for the onboarding, or operational state change of application package. + required: true + content: + application/json: + schema: + type: object + properties: + AppPkgSubscription: + $ref: '#/components/schemas/AppPkgSubscription' + responses: + '201': + description: Upon success, a response message content representing the created subscription shall be returned. + content: + application/json: + schema: + type: object + properties: + AppPkgSubscriptionInfo: + $ref: '#/components/schemas/AppPkgSubscriptionInfo' + '400': + $ref: '#/components/responses/400' + '401': + $ref: '#/components/responses/401' + '403': + $ref: '#/components/responses/403' + '404': + $ref: '#/components/responses/404' + '406': + $ref: '#/components/responses/406' + '429': + $ref: '#/components/responses/429' + callbacks: + notification: + post: + summary: Callback POST used to send a notification + description: Subscription notification + operationId: notificationPOST + requestBody: + description: Subscription notification + required: true + content: + application/json: + schema: + type: object + properties: + subscriptionNotification: + $ref: '#/components/schemas/AppPkgSubscription' + get: + summary: Query multiple subscriptions. + description: This GET method is used to retrieve the information of subscriptions to individual application package resource in MEO or MEAO. Upon success, the response contains the list of links to the subscriptions that are present for the requestor. + operationId: subscriptionsGET + tags: + - app-pkgm + responses: + '200': + description: Upon success, a response message content containing a list of zero or more subscriptions shall be returned. + content: + application/json: + schema: + type: object + properties: + AppPkgSubscriptionLinkList: + $ref: '#/components/schemas/AppPkgSubscriptionLinkList' + '400': + $ref: '#/components/responses/400' + '401': + $ref: '#/components/responses/401' + '403': + $ref: '#/components/responses/403' + '404': + $ref: '#/components/responses/404' + '406': + $ref: '#/components/responses/406' + '429': + $ref: '#/components/responses/429' + /subscriptions/{subscriptionId}: + get: + summary: Read resource of an individual subscription. + description: This GET method is used to retrieve the individual subscription information to the application package resource in MEO or MEAO. + operationId: subscriptionsByIdGET + tags: + - app-pkgm + responses: + '200': + description: Upon success, a response message content containing a representation of the resource shall be returned. + content: + application/json: + schema: + type: object + properties: + AppPkgSubscriptionInfo: + $ref: '#/components/schemas/AppPkgSubscriptionInfo' + '400': + $ref: '#/components/responses/400' + '401': + $ref: '#/components/responses/401' + '403': + $ref: '#/components/responses/403' + '404': + $ref: '#/components/responses/404' + '406': + $ref: '#/components/responses/406' + '429': + $ref: '#/components/responses/429' + delete: + summary: Terminate an individual subscription. + description: This DELETE method is used to delete the individual subscription to notifications about application package changes in MEO or MEAO. + operationId: subscriptionsByIdDELETE + tags: + - app-pkgm + responses: + '204': + $ref: '#/components/responses/204' + '401': + $ref: '#/components/responses/401' + '403': + $ref: '#/components/responses/403' + '404': + $ref: '#/components/responses/404' + '429': + $ref: '#/components/responses/429' + /user_defined_notification: + post: + description: The POST method delivers a notification from the application package management resource in MEO or MEAO to the subscriber. + operationId: userdefinednotificationPOST + tags: + - notification + requestBody: + description: A notification of an application package for on-boarding or operational state change. + required: true + content: + application/json: + schema: + type: object + properties: + AppPkgNotification: + $ref: '#/components/schemas/AppPkgNotification' + responses: + '204': + description: 'The notification was delivered successfully. + + The response message content shall be empty.' + content: + application/json: + schema: + type: object + properties: {} + '401': + $ref: '#/components/responses/401' + '403': + $ref: '#/components/responses/403' + '404': + $ref: '#/components/responses/404' + '429': + $ref: '#/components/responses/429' + /app_packages/{appPkgId}/appd: + get: + summary: Read application descriptor of an onboarded application package. + 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: appdGET + 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' + responses: + '200': + description: 'Indicates the success of request, and the content of the AppD is returned. + + + The response message content shall contain a copy of the file representing the AppD or a ZIP file that contains the file or multiple files representing the AppD. + + + The "Content-Type" HTTP header shall be set according to the format of the returned file, which is selected according to "Accept" HTTP header options passed in the request.' + content: + application/json: + schema: + type: object + properties: + AppD: + $ref: '#/components/schemas/AppD' + '400': + $ref: '#/components/responses/400' + '401': + $ref: '#/components/responses/401' + '403': + $ref: '#/components/responses/403' + '404': + $ref: '#/components/responses/404' + '406': + $ref: '#/components/responses/406' + '429': + $ref: '#/components/responses/429' + /onboarded_app_packages/{appDId}/appd: + get: + summary: Read application descriptor of an onboarded application package. + 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: appdGET + 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' + responses: + '200': + description: 'Indicates the success of request, and the content of the AppD is returned. + + + The response message content shall contain a copy of the file representing the AppD or a ZIP file that contains the file or multiple files representing the AppD. + + + The "Content-Type" HTTP header shall be set according to the format of the returned file, which is selected according to "Accept" HTTP header options passed in the request.' + content: + application/json: + schema: + type: object + properties: + AppD: + $ref: '#/components/schemas/AppD' + '400': + $ref: '#/components/responses/400' + '401': + $ref: '#/components/responses/401' + '403': + $ref: '#/components/responses/403' + '404': + $ref: '#/components/responses/404' + '406': + $ref: '#/components/responses/406' + '429': + $ref: '#/components/responses/429' + /app_packages/{appPkgId}/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. + operationId: packagecontentGET + tags: + - app-pkgm + responses: + '200': + description: "On success, a copy of the on-boarded application package is returned in the response message content. \n\nThe \"Content-Type\" HTTP header shall be set according to the type of the file, i.e. to \"application/zip\" for an application package." + content: + application/json: + schema: + type: object + properties: {} + '400': + $ref: '#/components/responses/400' + '401': + $ref: '#/components/responses/401' + '403': + $ref: '#/components/responses/403' + '404': + $ref: '#/components/responses/404' + '406': + $ref: '#/components/responses/406' + '416': + $ref: '#/components/responses/416' + '429': + $ref: '#/components/responses/429' + put: + summary: Upload an application package by providing the content of application package. + description: This PUT method uploads the content of application package. + operationId: packagecontentPUT + tags: + - app-pkgm + requestBody: + description: 'The message content shall contain a ZIP file that represents the application package. + + The "Content-Type" HTTP header shall be set to "application/zip".' + content: + application/json: {} + required: false + responses: + '202': + description: 'The application package has been accepted for uploading, but the processing has not been completed. It is expected to take some time for processing. + + + The response message content shall be empty.' + content: + application/json: + schema: + type: object + properties: {} + '400': + $ref: '#/components/responses/400' + '401': + $ref: '#/components/responses/401' + '403': + $ref: '#/components/responses/403' + '404': + $ref: '#/components/responses/404' + '406': + $ref: '#/components/responses/406' + '429': + $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. + operationId: packagecontentGET + tags: + - app-pkgm + responses: + '200': + description: "On success, a copy of the on-boarded application package is returned in the response message content. \n\nThe \"Content-Type\" HTTP header shall be set according to the type of the file, i.e. to \"application/zip\" for an application package." + content: + application/json: + schema: + type: object + properties: {} + '400': + $ref: '#/components/responses/400' + '401': + $ref: '#/components/responses/401' + '403': + $ref: '#/components/responses/403' + '404': + $ref: '#/components/responses/404' + '406': + $ref: '#/components/responses/406' + '416': + $ref: '#/components/responses/416' + '429': + $ref: '#/components/responses/429' + put: + summary: Upload an application package by providing the content of application package. + description: This PUT method uploads the content of application package. + operationId: packagecontentPUT + tags: + - app-pkgm + requestBody: + description: 'The message content shall contain a ZIP file that represents the application package. + + The "Content-Type" HTTP header shall be set to "application/zip".' + content: + application/json: {} + required: false + responses: + '202': + description: 'The application package has been accepted for uploading, but the processing has not been completed. It is expected to take some time for processing. + + + The response message content shall be empty.' + content: + application/json: + schema: + type: object + properties: {} + '400': + $ref: '#/components/responses/400' + '401': + $ref: '#/components/responses/401' + '403': + $ref: '#/components/responses/403' + '404': + $ref: '#/components/responses/404' + '406': + $ref: '#/components/responses/406' + '429': + $ref: '#/components/responses/429' +components: + schemas: + ProblemDetails: + type: object + properties: + type: + type: string + format: uri + description: A URI reference according to IETF RFC 3986 that identifies the problem type + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: URI + title: + type: string + description: A short, human-readable summary of the problem type + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: String + status: + type: integer + format: uint32 + description: The HTTP status code for this occurrence of the problem + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: Uint32 + detail: + type: string + description: A human-readable explanation specific to this occurrence of the problem + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: String + instance: + type: string + format: uri + description: A URI reference that identifies the specific occurrence of the problem + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: URI + VirtualStorageDescriptor: + type: object + properties: + id: + type: string + description: Unique identifier of this VirtualStorageDesc in the VNFD. + typeOfStorage: + type: string + enum: + - BLOCK + - OBJECT + - FILE + description: Type of virtualized storage resource. + blockStorageData: + $ref: '#/components/schemas/BlockStorageData' + description: Details of block storage. Required when typeOfStorage is set to "BLOCK". + objectStorageData: + $ref: '#/components/schemas/ObjectStorageData' + description: Details of object storage. Required when typeOfStorage is set to "OBJECT". + fileStorageData: + $ref: '#/components/schemas/FileStorageData' + description: Details of file storage. Required when typeOfStorage is set to "FILE". + nfviMaintenanceInfo: + $ref: '#/components/schemas/NfviMaintenanceInfo' + description: Information on NFVI operation and maintenance rules for instances based on this VirtualStorageDesc. + perVnfcInstance: + type: boolean + description: Indicates whether the virtual storage resource should be instantiated per VNFC instance. + AppPkgSWImageInfo: + NOTE 1: The data type of application software image information data model is related to virtualisation method and needs for further study. + AppPkgArtifactInfo: + NOTE 2: The data type of additional information of application package artifacts is not specified in the present document. + McioIdentificationData: + type: object + required: + - name + - type + properties: + name: + type: string + description: The name of the mcio. See note 1. + type: + type: string + description: The type of the mcio. See note 2. + description: "NOTE 1: When the container infrastructure service is a Kubernetes\xAE instance it is the value of the 'metadata.name' \n field in Kubernetes\xAE manifest. \nNOTE 2: When the container infrastructure service is a Kubernetes\xAE instance it is the value of the 'kind' field in \n Kubernetes\xAE manifest. \n" + OsContainerDescriptor: + title: OsContainerDescriptor + type: object + required: + - osContainerDescId + - name + - description + - swImageDesc + properties: + osContainerDescId: + type: string + description: Unique identifier of this OsContainerDesc in the VNFD. + name: + type: string + description: Human readable name of this OS container. + description: + type: string + description: Human readable description of this OS container. + requestedCpuResources: + type: integer + description: Number of CPU resources requested for the container (e.g. in milli-CPU-s). + requestedMemoryResources: + type: number + description: Amount of memory resources requested for the container (e.g. in MB). + requestedEphemeralStorageResources: + type: number + description: Size of ephemeral storage resources requested for the container (e.g. in GB). + extendedResourceRequests: + type: array + items: + $ref: '#/components/schemas/KeyValuePairs' + description: An array of key-value pairs of extended resources required by the container see note. + additionalProperties: + type: string + description: See note. + cpuResourceLimit: + type: integer + description: Number of CPU resources the container can maximally use (e.g. in milli-CPU). + memoryResourceLimit: + type: number + description: Amount of memory resources the container can maximally use (e.g. in MB). + ephemeralStorageResourceLimit: + type: number + description: Size of ephemeral storage resources the container can maximally use (e.g. in GB). + hugePageResources: + type: object + description: Specifies HugePages resources requested for the container, which the container can maximally use. + additionalProperties: + type: string + cpuPinningRequirements: + $ref: '#/components/schemas/VirtualCpuPinningData' + description: Requirements for CPU pinning configuration for this OS container. + swImageDesc: + $ref: '#/components/schemas/SwImageDesc' + description: Describes the software image realizing this OS container. + bootData: + type: string + description: Contains a string or a URL to a file contained in the VNF package used to customize a container resource at boot time. The bootData may contain variable parts that are replaced by deployment specific values before being sent. + monitoringParameters: + type: array + items: + $ref: '#/components/schemas/MonitoringParameter' + description: Specifies the virtualized resource related performance metrics on the OsContainerDesc level to be tracked by the VNFM. + description: "NOTE: Extended resources are to describe any type of resource provided by the container infrastructure. One \n example implementation of extended resources is \"Extended Resources\" in case the container infrastructure \n service is a Kubernetes\xAE instance. \n" + VirtualCpuPinningData: + type: object + properties: + virtualCpuPinningPolicy: + type: string + description: Indicates the policy for CPU pinning. + enum: + - STATIC + - DYNAMIC + virtualCpuPinningRule: + type: array + items: + type: string + description: List of rules that should be considered during the allocation of the virtual CPUs to logical CPUs in case of "STATIC" virtualCpuPinningPolicy. + AppInstanceSubscriptionType: + type: string + enum: + - AppInstanceStateChangeSubscription + - AppLcmOpOccStateChangeSubscription + - AppIdentifierCreationSubscription + - AppIdentifierDeletionSubscription + description: String representing the type of a subscription. + ServicePortData: + type: object + required: + - name + - protocol + - port + - portConfigurable + properties: + name: + type: string + description: The name of the port exposed by the VirtualCp. + protocol: + type: string + enum: + - TCP + - UDP + - SCTP + description: The L4 protocol for this port exposed by the VirtualCp. + port: + type: integer + description: The L4 port number exposed by the VirtualCp. + portConfigurable: + type: boolean + description: Specifies whether the port attribute value is allowed to be configurable. + AdditionalServiceData: + type: object + required: + - portData + properties: + portData: + type: array + items: + $ref: '#/components/schemas/ServicePortData' + minItems: 1 + serviceData: + type: string + description: Service matching information exposed by the VirtualCp. See note. + description: "This information element describes the additional service data of the VirtualCp used to expose\nproperties of the VirtualCp to NFV-MANO.\n\nIf the VirtualCp is exposed by a VNF component realized by one or a set of OS containers,\nthe properties are mirrored from the declarative descriptor of the corresponding MCIO where available. \n\nNOTE: This attribute shall only be present if additional information is needed to identify the\nservice termination within the VNF, such as for example a url path information in an HTTP request\nrequired to allow a single VirtualCp IP address to be used for several HTTP based services that\nuse the same portnumber. \n" + MonitoringParameter: + type: object + required: + - monitoringParameterId + - performanceMetric + properties: + monitoringParameterId: + type: string + description: Unique identifier of the monitoring parameter. + name: + type: string + description: Human readable name of the monitoring parameter. + performanceMetric: + type: string + description: Specifies the virtualised resource performance metric. + collectionPeriod: + type: string + description: An attribute that describes the periodicity at which to collect the performance information. + ChangeAppInstanceStateOpConfig: + type: object + description: 'This information element defines attributes that affect the invocation of the OperateVnf operation. + + ' + required: + - minGracefulStopTimeout + properties: + minGracefulStopTimeout: + type: number + description: Minimum timeout value for graceful stop of a VNF instance. + maxRecommendedGracefulStopTimeout: + type: number + description: "Maximum recommended timeout value that can be needed to gracefully stop a VNF instance of a particular type under certain conditions, such as maximum load condition. This is provided by VNF provider as information for the operator facilitating the selection of optimal timeout value. This value is not used as constraint. \n" + parameter: + type: array + items: + type: string + description: 'Array of KVP requirements for VNF-specific parameters to be passed when invoking the OperateVnf operation. See note. + + ' + SwImageDescriptor: + type: object + required: + - id + - name + - version + - containerFormat + - swImage + properties: + id: + type: string + description: The identifier of this software image. + name: + type: string + description: The name of this software image. + version: + type: string + items: + $ref: '#/components/schemas/Version' + description: The version of this software image. + checksum: + $ref: '#/components/schemas/ChecksumData' + description: The checksum of the software image file. See note 3. + containerFormat: + type: string + description: The container format describes the container file format in which software image is provided. + diskFormat: + type: string + description: The disk format of a software image is the format of the underlying disk image. See note 1. + minDisk: + type: number + description: The minimal disk size requirement for this software image. See note 1. + minRam: + type: number + description: The minimal RAM requirement for this software image. See note 2. + size: + type: number + description: The size of this software image file. See note 3. + swImage: + type: object + items: + $ref: '#/components/schemas/SwImageDesc' + description: A reference to the actual software image. + operatingSystem: + type: string + description: Specifies the operating system used in the software image. + supportedVirtualisationEnvironment: + type: array + items: + type: string + description: Specifies the virtualisation environments (e.g. hypervisor) compatible with this software image. + description: "NOTE 1: The attribute shall be present for VM-based software images referenced from a Vdu or from a VirtualStorageDesc, and shall be absent otherwise. \nNOTE 2: The attribute may be present for VM-based software images referenced from a Vdu or from a VirtualStorageDesc, and shall be absent otherwise. \nNOTE 3: The attribute shall be present for VM-based software images referenced from a Vdu or from a VirtualStorageDesc, and may be present otherwise. \n" + TerminateAppInstanceOpConfig: + type: object + description: 'This information element defines attributes that affect the invocation of the TerminateVnf operation. + + ' + required: + - minGracefulTerminationTimeout + properties: + minGracefulTerminationTimeout: + type: number + description: Minimum timeout value for graceful stop of a VNF instance. + maxRecommendedGracefulTerminationTimeout: + type: number + description: "Maximum recommended timeout value that can be needed to gracefully terminate a VNF instance of a particular type under certain conditions, such as maximum load condition. This is provided by VNF provider as information for the operator facilitating the selection of optimal timeout value. This value is not used as constraint. \n" + parameter: + type: array + items: + type: string + description: "Array of KVP requirements for VNF-specific parameters to be passed when invoking the TerminateVnf operation. See note. \n" + VirtualComputeDescriptor: + title: VirtualComputeDescriptor + type: object + required: + - virtualComputeDescId + - virtualMemory + - virtualCpu + properties: + virtualComputeDescId: + type: string + description: Unique identifier of this VirtualComputeDesc in the VNFD. + logicalNode: + type: array + items: + $ref: '#/components/schemas/LogicalNodeRequirements' + requestAdditionalCapabilities: + type: array + items: + $ref: '#/components/schemas/RequestedAdditionalCapabilityData' + computeRequirements: + description: Specifies compute requirements. + type: array + items: + type: string + format: not-specified + virtualMemory: + $ref: '#/components/schemas/VirtualMemoryData' + virtualCpu: + $ref: '#/components/schemas/VirtualCpuData' + virtualDisk: + type: array + items: + $ref: '#/components/schemas/BlockStorageData' + VirtualNetworkInterfaceRequirements: + type: object + properties: + name: + type: string + description: Provides a human readable name for the requirement. + description: + type: string + description: Provides a human readable description of the requirement. + standardizedNetworkInterfaceRequirements: + type: string + description: The requirements on standardized network interface capabilities, e.g. SR-IOV or secondary container cluster network interface deployment requirements.See note + networkInterfaceRequirements: + type: string + description: The additional network interface requirements beyond those specified in the standardizedNetworkInterfaceRequirements attribute.An element from an array of key-value pairs that articulate the network interface deployment requirements.See note. + nicIoRequirements: + items: + $ref: '#/components/schemas/LogicalNodeRequirements' + description: This references (couples) the CPD with any logical node I/O requirements (for network devices) that may have been created. Linking these attributes is necessary so that I/O requirements that need to be articulated at the logical node level can be associated with the network interface requirements associated with the CPD.See note + description: 'NOTE: At least one of the attributes "standardizedNetworkInterfaceRequirements", "networkInterfaceRequirements", "nicIoRequirements" shall be present + + ' + AppPkgSubscriptionType: + title: AppPkgSubscriptionType + enum: + - AppPackageOnBoardingSubscription + - AppPackageChangeSubscription + - AppPackageDeletionSubscription + type: string + description: type of a subscription. + examples: + - AppPackageOnBoardingSubscription + KeyValuePairs: + type: object + additionalProperties: + type: object + ObjectStorageData: + type: object + properties: + maxSizeOfStorage: + type: number + description: Maximum size of virtualized storage resource in GB. + FileStorageData: + type: object + properties: + sizeOfStorage: + type: number + description: Size of virtualized storage resource in GB. + fileSystemProtocol: + type: string + description: The shared file system protocol (e.g. NFS, CIFS). + intVirtualLinkDesc: + $ref: '#/components/schemas/VnfVirtualLinkDesc' + description: Reference of the internal VLD which this file storage connects to. + VnfVirtualLinkDesc: + type: object + properties: + virtualLinkDescId: + type: string + description: Unique identifier of this internal VLD in VNFD. + virtualLinkDescFlavour: + type: array + items: + $ref: '#/components/schemas/VirtualLinkDescFlavour' + description: Describes a specific flavour of the VL with specific bitrate requirements. + connectivityType: + $ref: '#/components/schemas/ConnectivityType' + description: See clause 7.1.7.3. + testAccess: + type: array + items: + type: string + description: Specifies test access facilities expected on the VL. + description: + type: string + description: Provides human-readable information on the purpose of the VL. + monitoringParameter: + type: array + items: + $ref: '#/components/schemas/MonitoringParameter' + description: Specifies the virtualised resource related performance metrics on VLD level to be tracked by the VNFM. + nfviMaintenanceInfo: + $ref: '#/components/schemas/NfviMaintenanceInfo' + description: Provides information on the rules to be observed when an instance based on this VnfVirtualLinkDesc is impacted during NFVI operation and maintenance. + externallyManaged: + type: string + enum: + - REQUIRED + - ALLOWED + default: ALLOWED + description: Specifies the intent of the VNF designer with respect to the internal VL instances created from this descriptor being externally managed. + ConnectivityType: + type: object + properties: + layerProtocol: + type: array + items: + type: string + description: Specifies the protocols that the VL uses. + enum: + - Ethernet + - MPLS + - ODU2 + - IPV4 + - IPV6 + - Pseudo-Wire + - Etc. + minItems: 1 + flowPattern: + type: string + description: Specifies the flow pattern of the connectivity (Line, Tree, Mesh, etc.). + required: + - layerProtocol + QoS: + type: object + properties: + latency: + type: number + description: Specifies the maximum latency in ms. + packetDelayVariation: + type: number + description: Specifies the maximum jitter in ms. + packetLossRatio: + type: number + description: Specifies the maximum packet loss ratio. + required: + - latency + - packetDelayVariation + VirtualLinkDescFlavour: + type: object + properties: + flavourId: + type: string + description: Identifies a flavour within a VnfVirtualLinkDesc. + qos: + $ref: '#/components/schemas/QoS' + description: QoS of the VL. + required: + - flavourId + NfviMaintenanceInfo: + type: object + properties: + impactNotificationLeadTime: + type: number + description: The minimum notification lead time requested for upcoming impact of the virtualised resource or their group. + isImpactMitigationRequested: + type: boolean + description: Indicates if it is requested to provide virtualised resource(s) of the same characteristics as the impacted ones to compensate for the impact. + supportedMigrationType: + type: array + items: + type: string + enum: + - NO_MIGRATION + - OFFLINE_MIGRATION + - LIVE_MIGRATION + description: Specifies the allowed migration types in order of preference in case of an impact. + maxUndetectableInterruptionTime: + type: number + description: Specifies the maximum interruption time that can go undetected at the VNF level during live migration. + minRecoveryTimeBetweenImpacts: + type: number + description: Specifies the time required by the group to recover from an impact, indicating the minimum time between consecutive impacts of the group. + maxNumberOfImpactedInstances: + type: array + items: + $ref: '#/components/schemas/MaxNumberOfImpactedInstances' + description: Specifies the maximum number of instances that can be impacted simultaneously within the group of virtualised resources for different group sizes. + minNumberOfPreservedInstances: + type: array + items: + $ref: '#/components/schemas/MinNumberOfPreservedInstances' + description: Specifies the minimum number of instances which need to be preserved simultaneously within the group of virtualised resources for different group sizes. + MaxNumberOfImpactedInstances: + type: object + properties: + groupSize: + type: integer + description: Determines the size of the group for which the maxNumberOfImpactedInstances is specified. + maxNumberOfImpactedInstances: + type: integer + description: The maximum number of instances that can be impacted simultaneously within the group of the specified size. + MinNumberOfPreservedInstances: + type: object + properties: + groupSize: + type: integer + description: Determines the size of the group for which the minNumberOfPreservedInstances is specified. + minNumberOfPreservedInstances: + type: integer + description: The minimum number of instances which need to be preserved simultaneously within the group of the specified size. + CategoryRef: + x-etsi-ref: 8.1.5.2 + type: object + properties: + href: + description: Reference of the catalogue. + x-etsi-mec-origin-type: Uri + x-etsi-mec-cardinality: '1' + type: string + id: + description: Unique identifier of the category. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + name: + description: Name of the category. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + version: + description: Name of the category. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + required: + - href + - id + - name + - version + SerializerType: + x-etsi-ref: 8.1.6.3 + type: string + enum: + - JSON + - XML + - PROTOBUF3 + x-etsi-mec-extensible: true + x-etsi-mec-enumeration-table: + - value: JSON + description: Javascript object notation [9] + - value: XML + description: eXtensible Mark-up Language version 1.1 [10] + - value: PROTOBUF3 + description: Protocol buffers version 3 [i.3] + TransportTypes: + x-etsi-ref: 8.1.6.4 + type: string + enum: + - REST_HTTP + - MB_TOPIC_BASED + - MB_ROUTING + - MB_PUBSUB + - RPC + - RPC_STREAMING + - WEBSOCKET + description: The enumeration TransportType represents types of transports. + x-etsi-mec-extensible: true + x-etsi-mec-enumeration-table: + - value: REST_HTTP + description: RESTful API using HTTP (as defined in IETF RFC 9110 [11]). + - value: MB_TOPIC_BASED + description: Topic-based message bus which routes messages to receivers based on subscriptions, if a pattern passed on subscription matches the topic of the message. EXAMPLE MQTT (see [i.4]). + - value: MB_ROUTING + description: Routing-based message bus which routes messages to receivers based on subscriptions, if a key passed on subscription is equal to the key of the message. + - value: MB_PUBSUB + description: Publish-subscribe based message bus which distributes messages to all subscribers. + - value: RPC + description: Remote procedure call. EXAMPLE GRPC (see [i.5]). + - value: RPC_STREAMING + description: Remote procedure call supporting streams of requests and responses. EXAMPLE GRPC (see [i.5]). + - value: WEBSOCKET + description: Websockets as defined in IETF RFC 6455 [12]. + LogicalNodeRequirements: + type: object + required: + - id + properties: + id: + type: string + format: uuid + description: Identifies this set of logical node requirements + logicalNodeRequirementDetail: + type: array + description: "The logical node-level compute, memory and I/O requirements. An array of key-value pairs that articulate the deployment requirements. This could include the number of CPU cores on this logical node, a memory configuration specific to a logical node (e.g. such as available in the Linux kernel via the libnuma library) or a requirement related to the association of an I/O device with the logical node. \n" + items: + type: string + format: not-specified + BlockStorageData: + type: object + required: + - sizeOfStorage + properties: + sizeOfStorage: + type: number + description: Size of virtualised storage resource in GB. + vduStorageRequirements: + type: array + items: + $ref: '#/components/schemas/KeyValuePairs' + description: An array of key-value pairs that articulate the storage deployment requirements. + rdmaEnabled: + type: boolean + description: Indicate if the storage support RDMA. + swImageDesc: + $ref: '#/components/schemas/SwImageDesc' + description: References the software image to be loaded on the VirtualStorage resource created based on this VirtualStorageDesc. Shall be absent when used for virtual disks. See note. + description: 'NOTE: This attribute shall not be present in a VirtualStorageDesc used in a VDU realized by one or a set of OS containers + + ' + Version: + type: object + required: + - srcVnfdId + - dstVnfdId + - srcFlavourId + properties: + srcVnfdId: + type: string + description: Identifier of the source VNFD and the source VNF package. See note 1. + dstVnfdId: + type: string + description: Identifier of the destination VNFD and the destination VNF package. See note 1. + srcFlavourId: + type: string + description: Identifier of the deployment flavour in the source VNF package for which this modification applies. See note 2. + description: "NOTE 1: Either the srcVnfdId or the dstVnfdId shall be equal to the vnfdId of the VNFD containing this version selector. \nNOTE 2: It is up to protocol design stage to decide whether there is further optimization potential to apply one modification for multiple srcFlavourIds.\n" + SwImageDesc: + type: object + required: + - id + - name + - version + - containerFormat + - swImage + properties: + id: + type: string + description: The identifier of this software image. + name: + type: string + description: The name of this software image. + version: + type: string + description: The version of this software image. + checksum: + $ref: '#/components/schemas/ChecksumData' + description: The checksum of the software image file. See note 3 + containerFormat: + type: string + description: The container format describes the container file format in which software image is provided. + diskFormat: + type: string + description: The disk format of a software image is the format of the underlying disk image. See note 1 + minDisk: + type: number + description: The minimal disk size requirement for this software image. The value of the "size of storage" attribute of the VirtualStorageDesc referencing this SwImageDesc shall not be smaller than the value of minDisk. See note 1 + minRam: + type: number + description: The minimal RAM requirement for this software image. The value of the "size" attribute of VirtualMemoryData of the Vdu referencing this SwImageDesc shall not be smaller than the value of minRam. See note 2 + size: + type: number + description: The size of this software image file. See note 3 + swImage: + $ref: '#/components/schemas/SwImageDesc' + description: This is a reference to the actual software image. The reference can be relative to the root of the VNF Package or can be a URL. + operatingSystem: + type: string + description: Specifies the operating system used in the software image. This attribute may also identify if a 32 bit or 64 bit software image is used. + supportedVirtualisationEnvironment: + type: array + items: + type: string + description: Specifies the virtualisation environments (e.g. hypervisor) compatible with this software image. + description: "NOTE 1: The attribute shall be present for VM-based software images referenced from a Vdu or from a VirtualStorageDesc, and shall be absent otherwise. \nNOTE 2: The attribute may be present for VM-based software images referenced from a Vdu or from a VirtualStorageDesc, and shall be absent otherwise. \nNOTE 3: The attribute shall be present for VM-based software images referenced from a Vdu or from a VirtualStorageDesc, and may be present otherwise. \n" + ChecksumData: + type: object + required: + - algorithm + - hash + properties: + algorithm: + type: string + description: Specifies the algorithm used to obtain the checksum value see note. + hash: + type: string + description: Contains the result of applying the algorithm indicated by the algorithm attribute to the data to which this ChecksumData refers. + description: "NOTE: The algorithm attribute value shall be one of the Hash Function Textual Names present in [2]. \n" + VirtualCpuData: + type: object + required: + - numVirtualCpu + properties: + cpuArchitecture: + type: string + description: CPU architecture type. Examples are x86, ARM. + numVirtualCpu: + type: integer + description: Number of virtual CPUs. + virtualCpuClock: + type: number + description: Minimum virtual CPU clock rate (e.g. in MHz). + virtualCpuOversubscriptionPolicy: + type: string + description: The CPU core oversubscription policy, e.g. the relation of virtual CPU cores to physical CPU cores/threads. + vduCpuRequirements: + type: array + items: + $ref: '#/components/schemas/KeyValuePairs' + description: Array of key-value pair requirements on the Compute (CPU) for the VDU. + virtualCpuPinning: + $ref: '#/components/schemas/VirtualCpuPinningData' + VirtualMemoryData: + type: object + required: + - virtualMemSize + properties: + virtualMemSize: + type: number + description: Amount of virtual memory in MB. + virtualMemOversubscriptionPolicy: + type: string + description: 'The memory core oversubscription policy in terms of virtual memory to physical memory + + on the platform. The cardinality can be 0 during the allocation request, if no particular + + value is requested. + + ' + vduMemRequirements: + type: array + items: + $ref: '#/components/schemas/KeyValuePairs' + description: Array of key-value pair requirements on the memory for the VDU. + numaEnabled: + type: boolean + description: Specifies the memory allocation to be cognisant of the relevant process/core allocation. + hugePagesRequirements: + type: string + description: Specifies requirements on the huge pages resources for the virtual memory. + RequestedAdditionalCapabilityData: + type: object + required: + - requestedAdditionalCapabilityName + - supportMandatory + - targetPerformanceParameters + properties: + requestedAdditionalCapabilityName: + type: string + description: Specifies a requested additional capability for the VDU + supportMandatory: + type: boolean + description: Indicates whether the requested additional capability is mandatory for successful operation + minRequestedAdditionalCapabilityVersion: + type: string + description: Specifies the minimum version of the requested additional capability + preferredRequestedAdditionalCapabilityVersion: + type: string + description: Specifies the preferred version of the requested additional capability + targetPerformanceParameters: + type: array + items: + $ref: '#/components/schemas/KeyValuePairs' + OAuth2Info: + description: Parameters related to use of OAuth 2.0. Shall be present in case OAuth 2.0 (see IETF RFC 6749 [13]) is supported to secure the provision of the service over the transport. + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: 0..1 + type: object + properties: + grantTypes: + description: "List of supported OAuth 2.0 grant types. Each entry shall be one of the following permitted values: \u2022 OAUTH2_AUTHORIZATION_CODE (Authorization code grant type) \u2022 OAUTH2_IMPLICIT_GRANT (Implicit grant type) \u2022 OAUTH2_RESOURCE_OWNER (Resource owner password credentials grant type) \u2022 OAUTH2_CLIENT_CREDENTIALS (Client credentials grant type) Only the value \"OAUTH2_CLIENT_CREDENTIALS\" is supported in the present document." + x-etsi-mec-origin-type: Enum_inlined + x-etsi-mec-cardinality: 1..4 + type: array + minItems: 0 + items: + type: string + enum: + - SEE_DESCRIPTION + tokenEndpoint: + description: The token endpoint. Shall be present unless the grant type is OAUTH2_IMPLICIT_GRANT. + x-etsi-mec-origin-type: Uri + x-etsi-mec-cardinality: 0..1 + type: string + format: uri + required: + - grantTypes + SecurityInfo: + x-etsi-ref: 8.1.5.4 + type: object + properties: + oAuth2Info: + $ref: '#/components/schemas/OAuth2Info' + (extensions): + description: Extensions for alternative transport mechanisms. These extensions depend on the actual transport, and are out of scope of the present document. For instance, such extensions may be used to signal the necessary parameters for the client to use TLS-based authorization defined for alternative transports (see ETSI GS MEC 009 [5] for more information). + AppD: + x-etsi-ref: 6.2.1.2 + type: object + properties: + appDId: + description: "Identifier of this MEC application descriptor. This attribute shall be globally unique. See note\_1." + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + appName: + description: Name to identify the MEC application. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + appProvider: + description: Provider of the application and of the AppD. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + appSoftVersion: + description: Identifies the version of software of the MEC application. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + appDVersion: + description: Identifies the version of the application descriptor. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + mecVersion: + description: 'Identifies version(s) of MEC system compatible with the MEC application described in this version of the AppD. + + The value shall be formatted as comma-separated list of strings. Each entry shall have the format .. where , and are decimal numbers representing the version of the present document. + + Whitespace between list entries shall be trimmed before validation.' + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + appInfoName: + description: Human readable name for the MEC application. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + appDescription: + description: Human readable description of the MEC application. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + virtualComputeDescriptor: + # description': Describes CPU and memory requirements, as well as optional additional requirements, such as disk and acceleration related capabilities, of the single VM used to realize this MEC application. See note 5. + $ref: '#/components/schemas/VirtualComputeDescriptor' + # x-etsi-mec-origin-type': VirtualComputeDescriptor + # x-etsi-mec-cardinality': 0..1 + osContainerDescriptor: + description: 'Describes CPU, memory requirements and limits, and software images of the OS Containers realizing this MEC application corresponding to OS Containers sharing the same host and same network namespace. + + See notes 5 and 7.' + x-etsi-mec-origin-type: OsContainerDescriptor + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + $ref: '#/components/schemas/OsContainerDescriptor' + swImageDescriptor: + description: 'Describes the descriptors of the software image to be used by the virtualisation container used to realize this MEC application. + + See note 5.' + x-etsi-mec-origin-type: SwImageDescriptor + x-etsi-mec-cardinality: 1..N + type: array + minItems: 1 + items: + $ref: '#/components/schemas/SwImageDescriptor' + virtualStorageDescriptor: + description: Defines descriptors of virtual storage resources to be used by the MEC application. + x-etsi-mec-origin-type: VirtualStorageDescriptor + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + $ref: '#/components/schemas/VirtualStorageDescriptor' + appExtCpd: + description: Describes external interface(s) exposed by this MEC application. See note 4. + x-etsi-mec-origin-type: AppExternalCpd + x-etsi-mec-cardinality: 1..N + type: array + minItems: 1 + items: + $ref: '#/components/schemas/AppExternalCpd' + appServiceRequired: + description: Describes services a MEC application requires to run. + x-etsi-mec-origin-type: ServiceDependency + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + $ref: '#/components/schemas/ServiceDependency' + appServiceOptional: + description: Describes services a MEC application may use if available. + x-etsi-mec-origin-type: ServiceDependency + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + $ref: '#/components/schemas/ServiceDependency' + appServiceProduced: + description: Describes services a MEC application is able to produce to the platform or other MEC applications. Only relevant for service-producing apps. + x-etsi-mec-origin-type: ServiceDescriptor + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + $ref: '#/components/schemas/ServiceDescriptor' + appFeatureRequired: + description: Describes features a MEC application requires to run. + x-etsi-mec-origin-type: FeatureDependency + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + $ref: '#/components/schemas/FeatureDependency' + appFeatureOptional: + description: Describes features a MEC application may use if available. + x-etsi-mec-origin-type: FeatureDependency + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + $ref: '#/components/schemas/FeatureDependency' + transportDependencies: + description: 'Transports, if any, that this application requires to be provided by the platform. These transports will be used by the application to deliver services provided by this application. Only relevant for service-producing apps. + + See note 2.' + x-etsi-mec-origin-type: TransportDependency + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + $ref: '#/components/schemas/TransportDependency' + appTrafficRule: + description: Describes traffic rules the MEC application requires. + x-etsi-mec-origin-type: TrafficRuleDescriptor + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + $ref: '#/components/schemas/TrafficRuleDescriptor' + appDNSRule: + description: Describes DNS rules the MEC application requires. + x-etsi-mec-origin-type: DNSRuleDescriptor + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + $ref: '#/components/schemas/DNSRuleDescriptor' + appLatency: + # description': Describes the maximum latency tolerated by the MEC application. + $ref: '#/components/schemas/LatencyDescriptor' + # x-etsi-mec-origin-type': LatencyDescriptor + # x-etsi-mec-cardinality': 0..1 + terminateAppInstanceOpConfig: + # description': Configuration parameters for the Terminate application instance operation. + $ref: '#/components/schemas/TerminateAppInstanceOpConfig' + # x-etsi-mec-origin-type': TerminateAppInstanceOpConfig + # x-etsi-mec-cardinality': 0..1 + changeAppInstanceStateOpConfig: + # description': Configuration parameters for the change application instance state operation. + $ref: '#/components/schemas/ChangeAppInstanceStateOpConfig' + # x-etsi-mec-origin-type': ChangeAppInstanceStateOpConfig + # x-etsi-mec-cardinality': 0..1 + userContextTransferCapability: + # description': If the application supports the user context transfer capability, this attribute shall be included. + $ref: '#/components/schemas/UserContextTransferCapability' + # x-etsi-mec-origin-type': UserContextTransferCapability + # x-etsi-mec-cardinality': 0..1 + appNetworkPolicy: + # description': If present, it represents the application network policy of carrying the application traffic. + $ref: '#/components/schemas/AppNetworkPolicy' + # x-etsi-mec-origin-type': AppNetworkPolicy + # x-etsi-mec-cardinality': 0..1 + mciopId: + description: Identifies the MCIOP in the application package, used in containerized workload management, when the application is realized by a set of OS containers. See note 7. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + mcioIdentificationData: + # description': Name and type of the Managed Container Infrastructure Object (MCIO) that realizes this application. It allows the VNFM to identify the MCIO e.g. when querying the Container Infrastructure Service Management (CISM). See note 7. It shall be present when the application is realized by one or a set of OS containers and shall be absent otherwise. + $ref: '#/components/schemas/McioIdentificationData' + # x-etsi-mec-origin-type': McioIdentificationData + # x-etsi-mec-cardinality': 0..1 + logicalNode: + description: 'The logical node requirements. + + See notes 6 and 7.' + x-etsi-mec-origin-type: LogicalNodeRequirements + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + $ref: '#/components/schemas/LogicalNodeRequirements' + requestAdditionalCapabilities: + description: "Specifies requirements for additional capabilities. These can be for a range of purposes. One example is acceleration related capabilities. \nSee notes 6 and 7." + x-etsi-mec-origin-type: RequestedAdditionalCapabilityData + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + $ref: '#/components/schemas/RequestedAdditionalCapabilityData' + mcioConstraintParams: + description: "The parameter names for constraints expected to be assigned to MCIOs realizing this application.\nThe value specifies the standardized semantical context of the MCIO constraints and the parameter names for the MCIO constraints in the MCIO declarative descriptor.\nThe mcioConstraintParams attribute shall have one of the following values, expressing the associated semantical context.\nVALUES:\nlocalAffinityCisNode\nnodeAdditionalCapabilitySsd\nnodeAdditionalCapabilityDpdk\nnodeAdditionalCapabilitySriov\nnodeAdditionalCapabilityGpu\nnodeAdditionalCapabilityFpga\nnodeAdditionalCapabilityCpuPin\nnodeCapabilityLogicalNuma\nnodePool\nFor the associated semantical context of the values, refer to the description under the table\_7.1.6.2.2-1 of ETSI GS NFV IFA 011 [1].\nSee note 7." + x-etsi-mec-origin-type: Enum + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + type: string + required: + - appDId + - appName + - appProvider + - appSoftVersion + - appDVersion + - mecVersion + - appDescription + - swImageDescriptor + - appExtCpd + x-etsi-notes: "NOTE 1:\tThe appDId shall be used as the unique identifier of the application package that contains this AppD.\nNOTE 2:\tThis attribute indicates groups of transport bindings which a service-producing MEC application requires to be supported by the platform in order to be able to produce its services. At least one of the indicated groups needs to be supported to fulfil the requirements.\nNOTE 3:\tThe support of application descriptor containing descriptions of multiple virtualisation containers and/or application software images is out of scope of the present document.\nNOTE 4:\tExternal interfaces are used to connect to e.g. other MEC applications, MEC services, UEs and also MEC platform and OSS.\nNOTE 5:\tOnly one of virtualComputeDescriptor or osContainerDescriptor shall be present. If virtualComputeDescriptor presents, only a single swImageDescriptor shall be provided. \nNOTE 6:\tIf the AppD includes virtualComputeDesc, then logicalNode and requestedAdditionalCapabilites shall not be present.\nNOTE 7:\tThis attribute reflects the ETSI NFV interpretation of the cloud native workloads." + AppExternalCpd: + x-etsi-ref: 6.2.1.6 + type: object + properties: + virtualNetworkInterfaceRequirements: + description: Specifies requirements on a virtual network interface realizing the CPs instantiated from this CPD. See note 1. + x-etsi-mec-origin-type: VirtualNetworkInterfaceRequirements + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + $ref: '#/components/schemas/VirtualNetworkInterfaceRequirements' + additionalServiceData: + description: Additional service identification data of the external CP. + x-etsi-mec-origin-type: AdditionalServiceData + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + $ref: '#/components/schemas/AdditionalServiceData' + inherited_attributes: + description: All attributes inherited from Cpd. See note 2. + x-etsi-mec-origin-type: inherited_attributes + x-etsi-mec-cardinality: '1' + type: object + required: + - inherited_attributes + x-etsi-notes: "NOTE 1:\tAn AppD conformant to the present document shall not specify \"virtualNetworkInterfaceRequirements\" in AppExternalCpd corresponding to primary container cluster network interfaces.\nNOTE 2:\tFor CPs exposed by MEC Applications realized only by one or set of OS containers and used by the OS containers to connect to the primary container cluster external network, the ability to configure virtualised resources based on cpRole and trunkMode attributes might not be supported by all container technologies." + ServiceDescriptor: + x-etsi-ref: 6.2.1.7 + type: object + properties: + serName: + description: The name of the service, for example, RNIS, LocationService, etc. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + serCategory: + # description': A Category reference of the service, defined in ETSI GS MEC 011 [17]. + $ref: '#/components/schemas/CategoryRef' + # x-etsi-mec-origin-type': CategoryRef + # x-etsi-mec-cardinality': 0..1 + version: + description: The version of the service. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + transportsSupported: + type: array + items: + $ref: '#/components/schemas/TransportsSupported' + required: + - serName + - version + FeatureDependency: + x-etsi-ref: 6.2.1.8 + type: object + properties: + featureName: + description: The name of the feature, for example, UserApps, UEIdentity, etc. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + version: + description: The version of the feature. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + required: + - featureName + - version + TrafficRuleDescriptor: + x-etsi-ref: 6.2.1.9 + type: object + properties: + trafficRuleId: + description: Identifies the traffic rule. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + filterType: + type: string + 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.' + enum: + - SEE_DESCRIPTION + x-etsi-mec-origin-type: Enum_inlined + x-etsi-mec-cardinality: '1' + 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." + x-etsi-mec-origin-type: Integer + x-etsi-mec-cardinality: '1' + type: integer + trafficFilter: + description: The filter used to identify specific flow/packets that need to be handled by the MEC host. + x-etsi-mec-origin-type: TrafficFilter + x-etsi-mec-cardinality: 1..N + type: array + minItems: 1 + items: + $ref: '#/components/schemas/TrafficFilter' + action: + type: string + description: 'Identifies the action of the MEC host data plane, when a packet matches the trafficFilter, the example actions include: + + DROP, + + FORWARD_DECAPSULATED, + + FORWARD_ENCAPSULATED, + + PASSTHROUGH, + + DUPLICATE_DECAPSULATED, + + DUPLICATE_ENCAPSULATED ' + enum: + - SEE_DESCRIPTION + x-etsi-mec-origin-type: Enum_inlined + x-etsi-mec-cardinality: '1' + dstInterface: + # description': Describes the destination interface information. If the action is FORWARD_DECAPSULATED, FORWARD_ENCAPSULATED or PASSTHROUGH, one value shall be provided. If the action is DUPLICATE_DECAPSULATED or DUPLICATE_ENCAPSULATED, two values shall be provided. See note 2. If the action is DROP, no value shall be provided. + $ref: '#/components/schemas/InterfaceDescriptor' + # x-etsi-mec-origin-type': InterfaceDescriptor + # x-etsi-mec-cardinality': 0..2 + required: + - trafficRuleId + - filterType + - priority + - trafficFilter + - action + x-etsi-notes: "NOTE 1:\tValue indicates the priority in descending order, i.e. with 0 as the highest priority and 255 as the lowest priority.\nNOTE 2:\tSome applications (like inline/tap) require two interfaces. The first interface in the case of inline/tap is on the client (e.g. UE) side and the second on the core network (e.g. EPC) side." + TrafficFilter: + x-etsi-ref: 6.2.1.10 + type: object + properties: + srcAddress: + description: 'An IP address or a range of IP addresses. + + For IPv4, the IP address could be an IP address plus mask, or an individual IP address, or a range of IP addresses. + + For IPv6, the IP address could be an IP prefix, or a range of IP prefixes.' + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + type: string + dstAddress: + description: 'An IP address or a range of IP addresses. + + For IPv4, the IP address could be an IP address plus mask, or an individual IP address, or a range of IP addresses. + + For IPv6, the IP address could be an IP prefix, or a range of IP prefixes.' + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + type: string + srcPort: + description: A port or a range of ports. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + type: string + dstPort: + description: A port or a range of ports. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + type: string + protocol: + description: Specify the protocol of the traffic filter. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + type: string + tag: + description: Used for tag based traffic rule. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + type: string + uri: + description: An URI label, in application layer, i.e. in HTTP message, is used to filter the traffic. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + type: string + packetLabel: + description: A customized packet label in network layer, as defined by the owner of the MEC platform, is used to filter the traffic. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + type: string + srcTunnelAddress: + description: Used for GTP tunnel based traffic rule. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + type: string + tgtTunnelAddress: + description: Used for GTP tunnel based traffic rule. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + type: string + srcTunnelPort: + description: Used for GTP tunnel based traffic rule. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + type: string + dstTunnelPort: + description: Used for GTP tunnel based traffic rule. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + type: string + qCI: + description: Used to match all packets that have the same QCI. + x-etsi-mec-origin-type: Integer + x-etsi-mec-cardinality: 0..1 + type: integer + dSCP: + description: Used to match all IPv4 packets that have the same DSCP. + x-etsi-mec-origin-type: Integer + x-etsi-mec-cardinality: 0..1 + type: integer + tC: + description: Used to match all IPv6 packets that have the same TC. + x-etsi-mec-origin-type: Integer + x-etsi-mec-cardinality: 0..1 + type: integer + InterfaceDescriptor: + x-etsi-ref: 6.2.1.11 + type: object + properties: + interfaceType: + type: string + description: 'Type of interface: TUNNEL, MAC, IP, etc.' + enum: + - SEE_DESCRIPTION + x-etsi-mec-origin-type: Enum_inlined + x-etsi-mec-cardinality: '1' + tunnelInfo: + # description': Included only if the destination address type is tunnel. + $ref: '#/components/schemas/TunnelInfo' + # x-etsi-mec-origin-type': TunnelInfo + # x-etsi-mec-cardinality': 0..1 + srcMACAddress: + description: If the interface type is MAC, the source address identifies the MAC address of the interface. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + dstMACAddress: + description: If the interface type is MAC, the destination address identifies the MAC address of the destination. Only used for dstInterface. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + dstIPAddress: + description: If the interface type is IP, the destination address identifies the IP address of the destination. Only used for dstInterface. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + required: + - interfaceType + TunnelInfo: + x-etsi-ref: 6.2.1.12 + type: object + properties: + tunnelType: + type: string + description: 'Type of tunnel: GTP-U, GRE, etc.' + enum: + - SEE_DESCRIPTION + x-etsi-mec-origin-type: Enum_inlined + x-etsi-mec-cardinality: '1' + tunnelDstAddress: + description: Destination address of the tunnel. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + tunnelSrcAddress: + description: Source address of the tunnel. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + tunnelSpecificData: + description: Parameters specific to the tunnel. + x-etsi-mec-origin-type: Not_specified + x-etsi-mec-cardinality: 0..1 + type: object + required: + - tunnelType + - tunnelDstAddress + - tunnelSrcAddress + DNSRuleDescriptor: + x-etsi-ref: 6.2.1.13 + type: object + properties: + dnsRuleId: + description: Identifies the DNS Rule + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + domainName: + description: FQDN of the DNS rule + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + ipAddressType: + type: string + description: 'Specifies the IP address type, value: IP_V6, IP_V4' + enum: + - SEE_DESCRIPTION + x-etsi-mec-origin-type: Enum_inlined + x-etsi-mec-cardinality: '1' + ipAddress: + description: IP address given by the DNS rule + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + ttl: + description: Time-to-live value + x-etsi-mec-origin-type: Integer + x-etsi-mec-cardinality: 0..1 + type: integer + required: + - dnsRuleId + - domainName + - ipAddressType + - ipAddress + LatencyDescriptor: + x-etsi-ref: 6.2.1.14 + type: object + properties: + maxLatency: + description: The value of the maximum latency in nano seconds tolerated by the MEC application. See note. + x-etsi-mec-origin-type: Uint32 + x-etsi-mec-cardinality: '1' + type: integer + format: uint32 + required: + - maxLatency + x-etsi-notes: "NOTE:\tThe latency is considered to be the one way end-to-end latency between the client application (e.g. in a device) and the service (i.e. the MEC application instance)." + ServiceDependency: + x-etsi-ref: 6.2.1.17 + type: object + properties: + serName: + description: The name of the service, for example, RNIS, LocationService, AMS, etc. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + serCategory: + # description': A Category reference of the service. + $ref: '#/components/schemas/CategoryRef' + # x-etsi-mec-origin-type': CategoryRef + # x-etsi-mec-cardinality': 0..1 + version: + description: The version of the service. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + serTransportDependencies: + description: Indicates transport and serialization format dependencies of consuming the service. Defaults to REST + JSON if absent. See note. + x-etsi-mec-origin-type: TransportDependency + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + $ref: '#/components/schemas/TransportDependency' + requestedPermissions: + description: 'Requested permissions regarding the access of the application to the service. See clause 7.2 of ETSI GS MEC 009 [4]. + + The format of this attribute is left for the data model design stage.' + x-etsi-mec-origin-type: Not_specified + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + $ref: '#/components/schemas/Not_specified' + required: + - serName + - version + x-etsi-notes: "NOTE:\tThis attribute indicates groups of transport bindings that a service-consuming MEC application supports for the consumption of the MEC service defined by this ServiceDependency structure. If at least one of the indicated groups is supported by the service it may be consumed by the application." + TransportDependency: + x-etsi-ref: 6.2.1.18 + type: object + properties: + transport: + # description': Information about the transport in this transport binding. + $ref: '#/components/schemas/TransportDescriptor' + # x-etsi-mec-origin-type': TransportDescriptor + # x-etsi-mec-cardinality': '1' + serializers: + description: Information about the serializers in this transport binding, as defined in the SerializerType type in ETSI GS MEC 011 [17]. Support for at least one of the entries is required in conjunction with the transport. + x-etsi-mec-origin-type: SerializerType + x-etsi-mec-cardinality: 1..N + type: array + minItems: 1 + items: + $ref: '#/components/schemas/SerializerType' + labels: + description: Set of labels that allow to define groups of transport bindings. The mechanism of the grouping is defined below this table. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 1..N + type: array + minItems: 1 + items: + type: string + required: + - transport + - serializers + - labels + TransportDescriptor: + x-etsi-ref: 6.2.1.19 + type: object + properties: + name: + description: The name of this transport. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + description: + description: Human-readable description of this transport. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + type: + # description': Type of the transport, as defined in the TransportTypes type in ETSI GS MEC 011 [17]. + $ref: '#/components/schemas/TransportTypes' + # x-etsi-mec-origin-type': TransportTypes + # x-etsi-mec-cardinality': '1' + protocol: + description: The name of the protocol used. Shall be set to "HTTP" for a REST API. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + version: + description: The version of the protocol used. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + security: + # description': Information about the security used by the transport in ETSI GS MEC 011 [17]. + $ref: '#/components/schemas/SecurityInfo' + # x-etsi-mec-origin-type': SecurityInfo + # x-etsi-mec-cardinality': '1' + implSpecificInfo: + description: Additional implementation specific details of the transport. + x-etsi-mec-origin-type: Not_specified + x-etsi-mec-cardinality: 0..1 + type: object + required: + - name + - type + - protocol + - version + - security + UserContextTransferCapability: + x-etsi-ref: 6.2.1.20 + type: object + properties: + statefulApplication: + description: 'If the application is stateful, this attribute shall be set to true. + + Otherwise, this attribute shall be set to false. ' + x-etsi-mec-origin-type: Boolean + x-etsi-mec-cardinality: '1' + type: boolean + userContextTransferSupport: + description: 'This attribute shall be present if the application is stateful and shall be absent otherwise. + + + If the application supports the user context transfer, this attribute shall be set to true. + + Otherwise this attribute shall be set to false.' + x-etsi-mec-origin-type: Boolean + x-etsi-mec-cardinality: 0..1 + type: boolean + required: + - statefulApplication + AppNetworkPolicy: + x-etsi-ref: 6.2.1.21 + type: object + properties: + steeredNetwork: + $ref: '#/components/schemas/SteeredNetwork' + required: + - steeredNetwork + x-etsi-notes: "NOTE:\tThe network types may depend on the availability of deployed access networks of MEC system." + CreateAppPkg: + x-etsi-ref: 6.2.3.2 + type: object + properties: + appPkgName: + description: Name of the application package to be onboarded. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + appPkgVersion: + description: 'Version of the application package to be onboarded. + + The appPkgName with appPkgVersion can be used to uniquely identify the application package.' + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + appProvider: + description: The provider's name of the application package to be onboarded. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + checksum: + # description': Checksum of the onboarded application package. + $ref: '#/components/schemas/Checksum' + # x-etsi-mec-origin-type': Checksum + # x-etsi-mec-cardinality': '1' + userDefinedData: + $ref: '#/components/schemas/KeyValuePairs' + appPkgPath: + description: Address information of the application package. See note. + x-etsi-mec-origin-type: Uri + x-etsi-mec-cardinality: '1' + type: string + format: uri + required: + - appPkgName + - appPkgVersion + - checksum + - appPkgPath + x-etsi-notes: "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 + type: object + properties: + id: + description: Identifier of the application package resource. This identifier is allocated by the MEO. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + 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.' + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + appProvider: + description: The provider's name of the onboarded application package. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + appName: + description: Name of the onboarded application. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + 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. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + appDVersion: + description: Version of the application descriptor. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + checksum: + # description': Checksum of the onboarded application package. + $ref: '#/components/schemas/Checksum' + # x-etsi-mec-origin-type': Checksum + # x-etsi-mec-cardinality': '1' + signingCertificate: + description: The singleton signing certificate if it is included as a file in the AppD archive. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + softwareImages: + description: Information of application software image in application package. See note 1. + x-etsi-mec-origin-type: AppPkgSWImageInfo + x-etsi-mec-cardinality: 1..N + type: array + minItems: 1 + items: + $ref: '#/components/schemas/AppPkgSWImageInfo' + additionalArtifacts: + description: Additional information of application package artifacts that are not application software images. See note 2. + x-etsi-mec-origin-type: AppPkgArtifactInfo + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + $ref: '#/components/schemas/AppPkgArtifactInfo' + onboardingState: + type: string + description: 'Onboarding state of application package: + + CREATED: The application package resource has been created. + + UPLOADING: The associated application package content is being uploaded. + + PROCESSING: The associated application package content is being processed, e.g. validation. + + ONBOARDED: The associated application package content is successfully onboarded.' + enum: + - SEE_DESCRIPTION + x-etsi-mec-origin-type: Enum_inlined + x-etsi-mec-cardinality: '1' + operationalState: + type: string + description: 'Operational state of the onboarded application package: + + ENABLED: the application package can be used for instantiation of new application instances. + + DISABLED: the application package cannot be used for further application instantiation requests.' + enum: + - SEE_DESCRIPTION + x-etsi-mec-origin-type: Enum_inlined + x-etsi-mec-cardinality: '1' + usageState: + type: string + description: 'Usage state of the onboarded 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.' + enum: + - SEE_DESCRIPTION + x-etsi-mec-origin-type: Enum_inlined + x-etsi-mec-cardinality: '1' + mecInfo: + description: The MEC version that compatible with this application. This information is copied from the AppD. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 1..N + type: array + minItems: 1 + items: + type: string + userDefinedData: + $ref: '#/components/schemas/KeyValuePairs' + onboardingFailureDetails: + # description': Failure details of current onboarding procedure. See ETSI GS MEC 009 [4]. + $ref: '#/components/schemas/ProblemDetails' + # x-etsi-mec-origin-type': ProblemDetails + # x-etsi-mec-cardinality': 0..1 + _links: + $ref: '#/components/schemas/_links' + required: + - id + - appDId + - appName + - appSoftwareVersion + - appDVersion + - checksum + - softwareImages + - onboardingState + - operationalState + - usageState + - mecInfo + - _links + x-etsi-notes: "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." + AppPkgSubscriptionInfo: + x-etsi-ref: 6.2.3.4 + type: object + properties: + id: + description: Identifier of the subscription to application package notification. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + subscriptionType: + # description': Type of subscription. + $ref: '#/components/schemas/AppPkgSubscriptionType' + # x-etsi-mec-origin-type': AppPkgSubscriptionType + # x-etsi-mec-cardinality': '1' + callbackUri: + description: The URI of the endpoint for the subscription related notification to be sent to. + x-etsi-mec-origin-type: Uri + x-etsi-mec-cardinality: '1' + type: string + format: uri + _links: + $ref: '#/components/schemas/_links1' + required: + - id + - subscriptionType + - callbackUri + - _links + AppPkgSubscriptionLinkList: + x-etsi-ref: 6.2.3.5 + type: object + properties: + _links: + $ref: '#/components/schemas/_links2' + required: + - _links + AppPkgNotification: + x-etsi-ref: 6.2.3.6 + 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. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + notificationType: + description: 'Discriminator for the different notification types: + + "AppPackageOnBoarded": notification of the new onboarded application package. + + "AppPackageEnabled": notification of the operational state change of onboarded application package. + + "AppPackageDisabled": notification of the onboarded application package disabled. + + "AppPackageDeleted": notification of the application package deleted.' + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + subscriptionId: + description: Identifier of the subscription to this notification. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + timeStamp: + # description': Date and time of the notification generation. + $ref: '#/components/schemas/TimeStamp' + # x-etsi-mec-origin-type': TimeStamp + # x-etsi-mec-cardinality': '1' + appPkgId: + description: Identifier of the onboarded application package. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + appDId: + description: The application descriptor identifier identifies the application package and the application descriptor in a globally unique way. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + operationalState: + type: string + description: 'Operational state of the application package: + + ENABLED: the application package can be used for instantiation of new application instances. + + DISABLED: the application package cannot be used for further application instantiation requests.' + enum: + - SEE_DESCRIPTION + x-etsi-mec-origin-type: Enum_inlined + x-etsi-mec-cardinality: '1' + _links: + $ref: '#/components/schemas/_links3' + required: + - id + - notificationType + - subscriptionId + - timeStamp + - appPkgId + - appDId + - operationalState + - _links + AppPkgSubscription: + x-etsi-ref: 6.2.3.7 + type: object + properties: + callbackUri: + description: The URI of the endpoint for the subscription related notification to be sent to. + x-etsi-mec-origin-type: Uri + x-etsi-mec-cardinality: '1' + type: string + format: uri + subscriptionType: + # description': Type of the subscription. + $ref: '#/components/schemas/AppPkgSubscriptionType' + # x-etsi-mec-origin-type': AppPkgSubscriptionType + # x-etsi-mec-cardinality': '1' + appPkgFilter: + description: The attribute-based filter is to filter application packages on which the query applies. + x-etsi-mec-origin-type: AppPkgFilter + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + $ref: '#/components/schemas/AppPkgFilter' + required: + - callbackUri + - subscriptionType + AppPkgInfoModifications: + x-etsi-ref: 6.2.3.8 + type: object + properties: + operationalState: + type: string + description: "New value of the \"operationalState\" attribute of the \"OnboardedAppPkgInfo\" structure.\n\nPermitted values \nDISABLED: to disable the individual application package.\nENABLED: to enable the individual application package." + enum: + - SEE_DESCRIPTION + x-etsi-mec-origin-type: Enum_inlined + x-etsi-mec-cardinality: '1' + required: + - operationalState + AppPkgFilter: + x-etsi-ref: 6.2.3.10 + type: object + properties: + appPkgInfoId: + description: Match the application package identifier which is allocated by the MEO. See note. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + appDId: + description: Match the application descriptor identifier which is allocated by the application provider. See note. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + appProvider: + description: Match the provider's name of the onboarded application. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + appName: + description: Match the name of the onboarded application. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + appSoftwareVersion: + description: Match the software version of the application package. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + appDVersion: + description: Match the version of the application descriptor. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + operationalState: + type: string + description: 'Match particular operational state of the application package: + + ENABLED: the application package can be used for instantiation of new application instances. + + DISABLED: the application package cannot be used for further application instantiation requests. + + + May be present if the "subscriptionType" attribute contains the value "AppPackageChangeSubscription", and shall be absent otherwise.' + enum: + - SEE_DESCRIPTION + x-etsi-mec-origin-type: Enum_inlined + x-etsi-mec-cardinality: 0..1 + usageState: + type: string + description: 'Match particular usage state of the application package: + + IN_USE: application instances instantiated from this package exist. + + NOT_IN_USE: No application instance instantiated from this package exist. + + + May be present if the "subscriptionType" attribute contains the value "AppPackageChangeSubscription", and shall be absent otherwise.' + enum: + - SEE_DESCRIPTION + x-etsi-mec-origin-type: Enum_inlined + x-etsi-mec-cardinality: 0..1 + x-etsi-notes: "NOTE:\tThe attributes \"appPkgInfoId \", and \"appDId\" are alternatives to reference particular application package in a filter. They should not be used both in the same filter instance, but one alternative should be chosen." + LinkType: + x-etsi-ref: 6.2.5.2 + type: object + properties: + href: + description: URI referring to a resource. + x-etsi-mec-origin-type: Uri + x-etsi-mec-cardinality: '1' + type: string + format: uri + required: + - href + TimeStamp: + x-etsi-ref: 6.2.5.4 + type: object + properties: + seconds: + description: "The seconds part of the Time. Time is defined as Unix-time since January\_1, 1970, 00:00:00 UTC." + x-etsi-mec-origin-type: Uint32 + x-etsi-mec-cardinality: '1' + type: integer + format: uint32 + nanoSeconds: + description: The nanoseconds part of the Time. Time is defined as Unix-time since January 1, 1970, 00:00:00 UTC. + x-etsi-mec-origin-type: Uint32 + x-etsi-mec-cardinality: '1' + type: integer + format: uint32 + required: + - seconds + - nanoSeconds + Checksum: + x-etsi-ref: 6.2.5.6 + type: object + properties: + algorithm: + description: Name of the algorithm used to generate the checksum, as defined in ETSI GS NFV-SOL 004 [18]. For example, SHA-256, SHA-512. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + hash: + description: The hexadecimal value of the checksum. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + required: + - algorithm + - hash + TransportsSupported: + description: Indicates transports and serialization formats supported made available to the service-consuming application. Defaults to REST + JSON if absent. + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: 0..N + type: object + minItems: 0 + properties: + transport: + # description': Information about the transport in this binding. + $ref: '#/components/schemas/TransportDescriptor' + # x-etsi-mec-origin-type': TransportDescriptor + # x-etsi-mec-cardinality': '1' + serializers: + description: "Information about the serializers in this binding, as defined in the SerializerType type in ETSI GS\_MEC\_011\_[17]." + x-etsi-mec-origin-type: SerializerType + x-etsi-mec-cardinality: 1..N + type: array + minItems: 1 + items: + $ref: '#/components/schemas/SerializerType' + required: + - transport + - serializers + SteeredNetwork: + description: 'This attribute provides an option for the application to specify a type of network to carry the application traffic. + + See note.' + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: '1' + type: object + properties: + cellularNetwork: + 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. + x-etsi-mec-origin-type: Boolean + x-etsi-mec-cardinality: 0..1 + 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." + x-etsi-mec-origin-type: Boolean + x-etsi-mec-cardinality: 0..1 + 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. + x-etsi-mec-origin-type: Boolean + x-etsi-mec-cardinality: 0..1 + type: boolean + _links: + description: Links to resources related to this resource. + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: '1' + type: object + properties: + self: + # description': Self referring URI. + $ref: '#/components/schemas/LinkType' + # x-etsi-mec-origin-type': LinkType + # x-etsi-mec-cardinality': '1' + appD: + # description': Link to the appD resource. + $ref: '#/components/schemas/LinkType' + # x-etsi-mec-origin-type': LinkType + # x-etsi-mec-cardinality': '1' + appPkgContent: + # description': Link to the "Onboarded application package content" resource. + $ref: '#/components/schemas/LinkType' + # x-etsi-mec-origin-type': LinkType + # x-etsi-mec-cardinality': '1' + vnfPkgInfo: + # description': Link to the corresponding VNF package resource at NFVO. See note 3. + $ref: '#/components/schemas/LinkType' + # x-etsi-mec-origin-type': LinkType + # x-etsi-mec-cardinality': 0..1 + required: + - self + - appD + - appPkgContent + _links1: + description: Links to resources related to this resource. + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: '1' + type: object + properties: + self: + # description': URI of this resource. + $ref: '#/components/schemas/LinkType' + # x-etsi-mec-origin-type': LinkType + # x-etsi-mec-cardinality': '1' + required: + - self + Subscriptions: + description: A link list to the subscriptions to an application package. + x-etsi-mec-origin-type: array (Structure (inlined)) + x-etsi-mec-cardinality: 0..N + type: object + minItems: 0 + properties: + href: + description: The URI referring to the subscription. + x-etsi-mec-origin-type: Uri + x-etsi-mec-cardinality: '1' + type: string + format: uri + subscriptionType: + # description': Type of the subscription. + $ref: '#/components/schemas/AppPkgSubscriptionType' + # x-etsi-mec-origin-type': AppPkgSubscriptionType + # x-etsi-mec-cardinality': '1' + required: + - href + - subscriptionType + _links2: + description: Links to resources related to this resource. + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: '1' + type: object + properties: + self: + # description': URI of this resource. + $ref: '#/components/schemas/LinkType' + # x-etsi-mec-origin-type': LinkType + # x-etsi-mec-cardinality': '1' + subscriptions: + type: array + items: + $ref: '#/components/schemas/Subscriptions' + required: + - self + _links3: + description: Links to resources related to this notification. + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: '1' + type: object + properties: + subscription: + # description': A link to the related subscription. + $ref: '#/components/schemas/LinkType' + # x-etsi-mec-origin-type': LinkType + # x-etsi-mec-cardinality': '1' + required: + - subscription + responses: + '200': + description: OK + '204': + description: No Content + '206': + description: Partial Content + '400': + description: 'Bad Request: used to indicate that incorrect parameters were passed to the request.' + content: + application/problem+json: + schema: + $ref: '#/components/schemas/ProblemDetails' + '401': + description: 'Unauthorized: used when the client did not submit credentials.' + content: + application/problem+json: + schema: + $ref: '#/components/schemas/ProblemDetails' + '403': + description: 'Forbidden: operation is not allowed given the current status of the resource.' + content: + application/problem+json: + schema: + $ref: '#/components/schemas/ProblemDetails' + '404': + description: 'Not Found: used when a client provided a URI that cannot be mapped to a valid resource URI.' + content: + application/problem+json: + schema: + $ref: '#/components/schemas/ProblemDetails' + '406': + description: 'Not Acceptable: used to indicate that the server cannot provide the any of the content formats supported by the client.' + content: + application/problem+json: + schema: + $ref: '#/components/schemas/ProblemDetails' + '409': + description: 'Conflict: The operation cannot be executed currently, due to a conflict with the state of the resource. .' + content: + application/problem+json: + schema: + $ref: '#/components/schemas/ProblemDetails' + '416': + description: 'Range Not Satisfiable: The byte range passed in the "Range" header did not match any available byte range. .' + content: + application/problem+json: + schema: + $ref: '#/components/schemas/ProblemDetails' + '429': + description: 'Too Many Requests: used when a rate limiter has triggered.' + content: + application/problem+json: + schema: + $ref: '#/components/schemas/ProblemDetails' + parameters: + 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 + cardinality: 0..1 + in: query + required: false + x-exportParamName: Query.Filter + 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 + cardinality: 0..1 + in: query + required: false + x-exportParamName: Query.All_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 + cardinality: 0..1 + in: query + required: false + x-exportParamName: Query.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 + cardinality: 0..1 + in: query + required: false + x-exportParamName: Query.Exclude_fields + Query.Exclude_default: + description: 'Indicates to exclude the following complex attributes of AppPkgInfo from the response. + + + The following attributes shall be excluded from the AppPkgInfo 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: + + checksum; + + softwareImages; + + additionalArtifacts.' + name: exclude_default + cardinality: 0..1 + in: query + required: false + x-exportParamName: Query.Exclude_default + 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.' + name: filter + cardinality: 0..1 + in: query + required: false + x-exportParamName: Query.Filter1 + 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_fields + cardinality: 0..1 + in: query + required: false + x-exportParamName: Query.All_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: fields + cardinality: 0..1 + in: query + required: false + x-exportParamName: Query.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_fields + cardinality: 0..1 + in: query + required: false + x-exportParamName: Query.Exclude_fields1 + Query.Exclude_default1: + description: 'Indicates to exclude the following complex attributes of AppD from the response. + + + The following attributes shall be excluded from the AppPkgInfo 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: + + virtualComputeDescriptor; + + swImageDescriptor; + + virtualStorageDescriptor; + + appExtCpd; + + terminateAppInstanceOpConfig; + + changeAppInstanceStateOpConfig.' + name: exclude_default + cardinality: 0..1 + in: query + required: false + x-exportParamName: Query.Exclude_default1 + diff --git a/Auto_Generated_OAS_Output_Files/Auto_Generated_OAS_Output_Files/gs_mec011v030101p_SrvMgmt.yaml b/Auto_Generated_OAS_Output_Files/Auto_Generated_OAS_Output_Files/gs_mec011v030101p_SrvMgmt.yaml new file mode 100644 index 0000000..a880c7f --- /dev/null +++ b/Auto_Generated_OAS_Output_Files/Auto_Generated_OAS_Output_Files/gs_mec011v030101p_SrvMgmt.yaml @@ -0,0 +1,1139 @@ +openapi: 3.1.0 +jsonSchemaDialect: https://json-schema.org/draft/2020-12/schema +info: + contact: + url: https://forge.etsi.org/rep/mec/gs011-app-enablement-api + title: ETSI GS MEC 011 Edge Platform Application Enablement + description: 'The present document focuses on the functionalities enabled via the Mp1 reference point between MEC applications and MEC platform, which allows these applications to interact with the MEC system. Service management functionality includes registration/deregistration, discovery and event notifications. Application support functionality includes application start-up, registration and termination, traffic rules, DNS and time of day. It describes the information flows, required information, and specifies the necessary operations, data models and API definitions. + + ' + license: + name: BSD-3-Clause + url: https://forge.etsi.org/legal-matters + version: 3.1.1 +paths: + /services: + get: + summary: Retrieve information about a list of mecService resources of an application instance. + description: This method retrieves information about a list of mecService resources. This method is typically used in "service availability query" procedure as described in clause 5.2.5. Figure 8.2.3.3.1-1 shows the example message flows using GET method. + operationId: servicesGET + tags: + - serviceManagement + parameters: + - $ref: '#/components/parameters/Query.Ser_instance_id' + - $ref: '#/components/parameters/Query.Ser_name' + - $ref: '#/components/parameters/Query.Ser_category_id' + - $ref: '#/components/parameters/Query.Scope_of_locality' + - $ref: '#/components/parameters/Query.Consumed_local_only' + - $ref: '#/components/parameters/Query.Is_local' + responses: + '200': + description: Upon success, a response message content containing an array of the mecServices is returned. + content: + application/json: + schema: + type: object + properties: + ServiceInfo: + type: array + items: + $ref: '#/components/schemas/ServiceInfo' + '400': + $ref: '#/components/responses/400' + '404': + $ref: '#/components/responses/404' + '403': + $ref: '#/components/responses/403' + '414': + $ref: '#/components/responses/414' + /services/{serviceId}: + get: + summary: Retrieve information about a mecService resource of an application instance. + description: This method retrieves information about a mecService resource. This method is typically used in "service availability query" procedure as described in clause 5.2.5. + operationId: servicesByIdGET + tags: + - serviceManagement + responses: + '200': + description: It is used to indicate nonspecific success. The response message content contains a representation of the resource. + content: + application/json: + schema: + type: object + properties: + ServiceInfo: + $ref: '#/components/schemas/ServiceInfo' + '400': + $ref: '#/components/responses/400' + '404': + $ref: '#/components/responses/404' + '403': + $ref: '#/components/responses/403' + /transports: + get: + summary: Retrieve information about the available transports. + description: This method retrieves information about a list of available transports. This method is typically used by a service-producing application to discover transports provided by the MEC platform in the "transport information query" procedure as described in clause 5.2.9. Figure 8.2.5.3.1-1 shows the example message flows using GET method. + operationId: transportsGET + tags: + - serviceManagement + responses: + '200': + description: Upon success, a response message content containing an array describing the available transports is returned. + content: + application/json: + schema: + type: object + properties: + TransportInfo: + type: array + items: + $ref: '#/components/schemas/TransportInfo' + '400': + $ref: '#/components/responses/400' + '404': + $ref: '#/components/responses/404' + '403': + $ref: '#/components/responses/403' + /applications/{appInstanceId}/services: + get: + summary: Retrieve information about a list of mecService resources of an application instance. + description: This method retrieves information about a list of mecService resources that is associated with an application instance. This method is typically used in "service availability query" procedure as described in clause 5.2.5. Figure 8.2.6.3.1-1 shows the example message flows using GET method. + operationId: servicesGET + tags: + - serviceManagement + parameters: + - $ref: '#/components/parameters/Query.Ser_instance_id' + - $ref: '#/components/parameters/Query.Ser_name' + - $ref: '#/components/parameters/Query.Ser_category_id' + - $ref: '#/components/parameters/Query.Scope_of_locality' + - $ref: '#/components/parameters/Query.Consumed_local_only' + - $ref: '#/components/parameters/Query.Is_local' + responses: + '200': + description: Upon success, a response message content containing an array of the mecServices is returned. + content: + application/json: + schema: + type: object + properties: + ServiceInfo: + type: array + items: + $ref: '#/components/schemas/ServiceInfo' + '400': + $ref: '#/components/responses/400' + '404': + $ref: '#/components/responses/404' + '403': + $ref: '#/components/responses/403' + '414': + $ref: '#/components/responses/414' + post: + summary: Create a mecService resource of an application instance. + description: "This method is used to create a mecService resource that is associated with the application instance. This method is typically used in \"service availability update and new service registration\" procedure as described in clause 5.2.4. Figure\_8.2.6.3.4-1 shows the message flow." + operationId: servicesPOST + tags: + - serviceManagement + requestBody: + description: Message content in the request contains ServiceInfo to be created. + required: true + content: + application/json: + schema: + type: object + properties: + ServiceInfo: + $ref: '#/components/schemas/ServiceInfo' + responses: + '201': + description: Upon success, the HTTP response shall include a "Location" HTTP header that contains the resource URI of the created resource. + content: + application/json: + schema: + type: object + properties: + ServiceInfo: + $ref: '#/components/schemas/ServiceInfo' + '400': + $ref: '#/components/responses/400' + '404': + $ref: '#/components/responses/404' + '403': + $ref: '#/components/responses/403' + /applications/{appInstanceId}/services/{serviceId}: + get: + summary: Retrieve information about a mecService resource of an application instance. + description: This method retrieves information about a mecService resource that is associated with an application instance. This method is typically used in "service availability query" procedure as described in clause 5.2.5. + operationId: servicesByIdGET + tags: + - serviceManagement + responses: + '200': + description: It is used to indicate nonspecific success. The response message content contains a representation of the resource. + content: + application/json: + schema: + type: object + properties: + ServiceInfo: + $ref: '#/components/schemas/ServiceInfo' + '400': + $ref: '#/components/responses/400' + '404': + $ref: '#/components/responses/404' + '403': + $ref: '#/components/responses/403' + put: + summary: Update the information about a mecService resource of an application instance. + description: PUT HTTP method shall comply with the URI query parameters, request and response data structures, and response codes, as specified in tables 8.2.7.3.2-1 and 8.2.7.3.2-2. + operationId: servicesByIdPUT + tags: + - serviceManagement + requestBody: + description: One or more updated attributes that are allowed to be changed (i.e. "state" or other attributes based on definition in clause 8.1.2.2) are included in the ServiceInfo data structure in the message content of the request. + required: true + content: + application/json: + schema: + type: object + properties: + ServiceInfo: + $ref: '#/components/schemas/ServiceInfo' + responses: + '200': + description: Upon success, a response message content containing data type describing the updated ServiceInfo is returned. + content: + application/json: + schema: + type: object + properties: + ServiceInfo: + $ref: '#/components/schemas/ServiceInfo' + '400': + $ref: '#/components/responses/400' + '404': + $ref: '#/components/responses/404' + '403': + $ref: '#/components/responses/403' + '412': + $ref: '#/components/responses/412' + delete: + summary: Delete a mecService resource. + description: This method deletes a mecService resource. This method is typically used in the service deregistration procedure. Figure 8.2.7.3.5-1 shows the example message flows using DELETE method. + operationId: servicesByIdDELETE + tags: + - serviceManagement + responses: + '204': + $ref: '#/components/responses/204' + '404': + $ref: '#/components/responses/404' + '403': + $ref: '#/components/responses/403' + /applications/{appInstanceId}/subscriptions: + get: + summary: Retrieve information about a list of mecSrvMgmtSubscription resources for this subscriber. + description: The GET method may be used to request information about all subscriptions for this requestor. Upon success, the response contains message content with all the subscriptions for the requestor. + operationId: subscriptionsGET + tags: + - serviceManagement + responses: + '200': + description: Upon success, a response message content containing the list of links to the requested subscriptions is returned. + content: + application/json: + schema: + type: object + properties: + SubscriptionLinkList: + $ref: '#/components/schemas/SubscriptionLinkList' + '400': + $ref: '#/components/responses/400' + '404': + $ref: '#/components/responses/404' + '403': + $ref: '#/components/responses/403' + post: + summary: Create a mecSrvMgmtSubscription resource. + description: The POST method may be used to create a new subscription. One example use case is to create a new subscription to the MEC service availability notifications. Upon success, the response contains message content describing the created subscription. This method is typically used in "Subscribing to service availability event notifications" procedure as described in clause 5.2.6.2. Figure 8.2.8.3.4-1 shows the example message flows using POST method. + operationId: subscriptionsPOST + tags: + - serviceManagement + requestBody: + description: Message content in the request contains a subscription to the MEC service availability notifications that is to be created. + required: true + content: + application/json: + schema: + type: object + properties: + SerAvailabilityNotificationSubscription: + $ref: '#/components/schemas/SerAvailabilityNotificationSubscription' + responses: + '201': + description: Upon success, the HTTP response shall include a "Location" HTTP header that contains the resource URI of the created subscription resource. + content: + application/json: + schema: + type: object + properties: + SerAvailabilityNotificationSubscription: + $ref: '#/components/schemas/SerAvailabilityNotificationSubscription' + '400': + $ref: '#/components/responses/400' + '404': + $ref: '#/components/responses/404' + '403': + $ref: '#/components/responses/403' + callbacks: + notification: + post: + summary: Callback POST used to send a notification + description: Subscription notification + operationId: notificationPOST + requestBody: + description: Subscription notification + required: true + content: + application/json: + schema: + type: object + properties: + subscriptionNotification: + $ref: '#/components/schemas/SerAvailabilityNotificationSubscription' + /applications/{appInstanceId}/subscriptions/{subscriptionId}: + get: + summary: Retrieve information about a mecSrvMgmtSubscription resource for this subscriber. + description: The GET method requests information about a subscription for this requestor. Upon success, the response contains message content with the subscription for the requestor. + operationId: subscriptionsByIdGET + tags: + - serviceManagement + responses: + '200': + description: Upon success, a response message content containing the requested subscription is returned. + content: + application/json: + schema: + type: object + properties: + ? 'SerAvailabilityNotification + + Subscription' + : $ref: '#/components/schemas/SerAvailabilityNotification + + Subscription' + '400': + $ref: '#/components/responses/400' + '404': + $ref: '#/components/responses/404' + '403': + $ref: '#/components/responses/403' + delete: + summary: Delete a mecSrvMgmtSubscription resource. + description: This method deletes a mecSrvMgmtSubscription. This method is typically used in "Unsubscribing from event notifications" procedure as described in clause 5.2.6.3. Figure 8.2.9.3.5-1 shows the example message flows using DELETE method. + operationId: subscriptionsByIdDELETE + tags: + - serviceManagement + responses: + '204': + $ref: '#/components/responses/204' + '404': + $ref: '#/components/responses/404' + '403': + $ref: '#/components/responses/403' + 'Resource URI: (allocated by the MEC platform)': + get: + description: 'This method retrieves information about an "Individual mecServiceLiveness" resource. ' + operationId: 'Resource URI: (allocated by the MEC platform)GET' + tags: + - serviceManagement + responses: + '200': + description: It is used to indicate nonspecific success. The response message content contains a representation of the resource. + content: + application/json: + schema: + type: object + properties: + ServiceLivenessInfo: + $ref: '#/components/schemas/ServiceLivenessInfo' + '400': + $ref: '#/components/responses/400' + '404': + $ref: '#/components/responses/404' + '403': + $ref: '#/components/responses/403' + patch: + description: The MEC application instance that provides MEC service shall send a PATCH request to the resource URI representing the liveness of the service instance. + operationId: 'Resource URI: (allocated by the MEC platform)PATCH' + tags: + - serviceManagement + requestBody: + description: It contains an update of the liveness state. + required: true + content: + application/json: + schema: + type: object + properties: + ServiceLivenessUpdate: + $ref: '#/components/schemas/ServiceLivenessUpdate' + responses: + '200': + description: Upon success, a response message content is returned containing the updated liveness interval value of the service Instance. + content: + application/json: + schema: + type: object + properties: + ServiceLivenessInfo: + $ref: '#/components/schemas/ServiceLivenessInfo' + '204': + description: Successful response sent when there is no need to provide a new liveness interval value to the service Instance. + content: + application/json: + schema: + type: object + properties: {} + '400': + $ref: '#/components/responses/400' + '404': + $ref: '#/components/responses/404' + '403': + $ref: '#/components/responses/403' + '412': + $ref: '#/components/responses/412' +components: + schemas: + ProblemDetails: + type: object + properties: + type: + type: string + format: uri + description: A URI reference according to IETF RFC 3986 that identifies the problem type + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: URI + title: + type: string + description: A short, human-readable summary of the problem type + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: String + status: + type: integer + format: uint32 + description: The HTTP status code for this occurrence of the problem + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: Uint32 + detail: + type: string + description: A human-readable explanation specific to this occurrence of the problem + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: String + instance: + type: string + format: uri + description: A URI reference that identifies the specific occurrence of the problem + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: URI + LocalityType: + type: string + enum: + - MEC_SYSTEM + - MEC_HOST + - NFVI_POP + - ZONE + - ZONE_GROUP + - NFVI_NODE + description: Enumeration representing types of locality. + SerializerType: + type: string + enum: + - JSON + - XML + - PROTOBUF3 + description: Enumeration representing types of serializers. + example: JSON + TransportType: + type: string + enum: + - REST_HTTP + - MB_TOPIC_BASED + - MB_ROUTING + - MB_PUBSUB + - RPC + - RPC_STREAMING + - WEBSOCKET + description: Enumeration representing types of transports. + ServiceState: + type: string + enum: + - ACTIVE + - INACTIVE + - SUSPENDED + description: Enumeration representing possible states of a MEC service instance. + SerInstanceId: + description: Identifier of the service instance assigned by the MEPM/MEC platform. For the uniqueness of the identifier across the MEC system, UUID format [i.7] is recommended.Shall be absent in POST requests, and present otherwise + SerName: + description: The name of the service. This is how the service producing MEC application identifies the service instance it produces. + SubscriptionLinkList: + x-etsi-ref: 6.2.2 + type: object + properties: + _links: + $ref: '#/components/schemas/_links' + required: + - _links + LinkType: + x-etsi-ref: 6.3.2 + type: object + properties: + href: + description: URI referring to a resource + x-etsi-mec-origin-type: Uri + x-etsi-mec-cardinality: '1' + type: string + format: uri + required: + - href + ServiceInfo: + x-etsi-ref: 8.1.2.2 + type: object + properties: + serInstanceId: + # description': 0..1 + $ref: '#/components/schemas/SerInstanceId' + # x-etsi-mec-origin-type': SerInstanceId + # x-etsi-mec-cardinality': 0..1 + serName: + # description': '1' + $ref: '#/components/schemas/SerName' + # x-etsi-mec-origin-type': SerName + # x-etsi-mec-cardinality': '1' + serCategory: + # description': 0..1 + $ref: '#/components/schemas/CategoryRef' + # x-etsi-mec-origin-type': CategoryRef + # x-etsi-mec-cardinality': 0..1 + version: + description: '1' + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + state: + # description': '1' + $ref: '#/components/schemas/ServiceState' + # x-etsi-mec-origin-type': ServiceState + # x-etsi-mec-cardinality': '1' + transportId: + description: Identifier of the platform-provided transport to be used by the service. Valid identifiers may be obtained using the "Transport information query" procedure. May be present in POST requests to signal the use of a platform-provided transport for the service, and shall be absent otherwise. See note 2. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + transportInfo: + # description': Information regarding the transport used by the service. May be present in POST requests to signal the use of an application-provided transport for the service, and shall be present otherwise. See note 2. + $ref: '#/components/schemas/TransportInfo' + # x-etsi-mec-origin-type': TransportInfo + # x-etsi-mec-cardinality': 0..1 + serializer: + # description': Indicate the supported serialization format of the service. + $ref: '#/components/schemas/SerializerType' + # x-etsi-mec-origin-type': SerializerType + # x-etsi-mec-cardinality': '1' + scopeOfLocality: + # description': The scope of locality as expressed by "consumedLocalOnly" and "isLocal". If absent, defaults to MEC_HOST. See notes 3, 5 and 6. + $ref: '#/components/schemas/LocalityType' + # x-etsi-mec-origin-type': LocalityType + # x-etsi-mec-cardinality': 0..1 + consumedLocalOnly: + description: 'Indicate whether the service can only be consumed by the MEC applications located in the same locality (as defined by scopeOfLocality) as this service instance (TRUE) or not (FALSE). + + Default to TRUE if absent.' + x-etsi-mec-origin-type: Boolean + x-etsi-mec-cardinality: 0..1 + type: boolean + isLocal: + description: 'Indicate whether the service is located in the same locality (as defined by scopeOfLocality) as the consuming MEC application (TRUE) or not (FALSE). + + Default to TRUE if absent. See note 4.' + x-etsi-mec-origin-type: Boolean + x-etsi-mec-cardinality: 0..1 + type: boolean + livenessInterval: + description: 'Interval (in seconds) between two consecutive "heartbeat" messages (see clause 8.2.10.3.3). + + If the service-producing application supports sending "heartbeat" messages, it shall include this attribute in the registration request. In this case, the application shall either set the value of this attribute to zero or shall use this attribute to propose a non-zero positive value for the liveness interval. + + If the application has provided this attribute in the request and the MEC platform requires "heartbeat" messages, the MEC platform shall return this attribute value in the HTTP responses. The MEC platform may use the value proposed in the request or may choose a different value. + + If the MEC platform does not require "heartbeat" messages for this service instance it shall omit the attribute in responses.' + x-etsi-mec-origin-type: Integer + x-etsi-mec-cardinality: 0..1 + type: integer + _links: + $ref: '#/components/schemas/_links1' + required: + - serName + - version + - state + - serializer + - _links + x-etsi-notes: "NOTE 1:\tThe service category may be included in the application descriptor. It may be allocated by the operator or by the application developer.\nNOTE 2:\tEither transportId or transportInfo but not both shall be present in POST requests.\nNOTE 3:\tValues NFVI_POP, ZONE and NFVI_NODE are used when the service instance is deployed as a VNF.\nNOTE 4:\tThe isLocal is used only in service availability query response and service availability subscription/notification messages.\nNOTE 5:\tValue ZONE_GROUP can be used when the service instance is deployed as a VNF.\nNOTE 6:\tRegarding the value MEC_SYSTEM, if the service is running on the same MEC system as the MEC app, then it will be local to it." + TransportInfo: + x-etsi-ref: 8.1.2.3 + type: object + properties: + id: + description: The identifier of this transport. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + name: + description: The name of this transport. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + description: + description: Human-readable description of this transport. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + type: + # description': Type of the transport. + $ref: '#/components/schemas/TransportType' + # x-etsi-mec-origin-type': TransportType + # x-etsi-mec-cardinality': '1' + protocol: + description: The name of the protocol used. Shall be set to "HTTP" for a REST API. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + version: + description: The version of the protocol used. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + endpoint: + # description': Information about the endpoint to access the transport. + $ref: '#/components/schemas/EndPointInfo' + # x-etsi-mec-origin-type': EndPointInfo + # x-etsi-mec-cardinality': '1' + security: + # description': Information about the security used by the transport. + $ref: '#/components/schemas/SecurityInfo' + # x-etsi-mec-origin-type': SecurityInfo + # x-etsi-mec-cardinality': '1' + implSpecificInfo: + description: Additional implementation specific details of the transport. + x-etsi-mec-origin-type: Not_specified + x-etsi-mec-cardinality: 0..1 + type: object + required: + - id + - name + - type + - protocol + - version + - endpoint + - security + ServiceLivenessInfo: + x-etsi-ref: 8.1.2.4 + type: object + properties: + state: + # description': Liveness state of the MEC service instance. The valid values are defined in clause 8.1.6.6. + $ref: '#/components/schemas/ServiceState' + # x-etsi-mec-origin-type': ServiceState + # x-etsi-mec-cardinality': '1' + timeStamp: + $ref: '#/components/schemas/TimeStamp' + interval: + description: The interval (in seconds) between two consecutive "heartbeat" messages (see clause 8.2.10.3.3) that MEC platform has determined. + x-etsi-mec-origin-type: Integer + x-etsi-mec-cardinality: '1' + type: integer + required: + - state + - timeStamp + - interval + ServiceLivenessUpdate: + x-etsi-ref: 8.1.2.5 + type: object + properties: + state: + # description': Update to the state of the MEC service instance to indicate that the service is still alive ("heartbeat" message). Shall be set to "ACTIVE". + $ref: '#/components/schemas/ServiceState' + # x-etsi-mec-origin-type': ServiceState + # x-etsi-mec-cardinality': '1' + required: + - state + SerAvailabilityNotificationSubscription: + x-etsi-ref: 8.1.3.2 + type: object + properties: + subscriptionType: + description: Shall be set to "SerAvailabilityNotificationSubscription". + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + callbackReference: + description: URI selected by the MEC application instance to receive notifications on the subscribed MEC service availability information. This shall be included in both the request and the response. + x-etsi-mec-origin-type: Uri + x-etsi-mec-cardinality: '1' + type: string + format: uri + _links: + $ref: '#/components/schemas/_links2' + filteringCriteria: + $ref: '#/components/schemas/FilteringCriteria' + required: + - subscriptionType + - callbackReference + x-etsi-notes: "NOTE:\tThe attributes \"serInstanceIds\", \"serNames\" and \"serCategories\" provide mutually-exclusive alternatives to define a set of services. Only one of them may be present." + ServiceAvailabilityNotification: + x-etsi-ref: 8.1.4.2 + type: object + properties: + notificationType: + description: Shall be set to "SerAvailabilityNotification". + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + serviceReferences: + type: array + items: + $ref: '#/components/schemas/ServiceReferences' + _links: + $ref: '#/components/schemas/_links3' + required: + - notificationType + - serviceReferences + - _links + CategoryRef: + x-etsi-ref: 8.1.5.2 + type: object + properties: + href: + description: Reference of the catalogue. + x-etsi-mec-origin-type: Uri + x-etsi-mec-cardinality: '1' + type: string + format: uri + id: + description: Unique identifier of the category. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + name: + description: Name of the category. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + version: + description: Category version. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + required: + - href + - id + - name + - version + EndPointInfo: + x-etsi-ref: 8.1.5.3 + type: object + properties: + uris: + description: Entry point information of the service as string, formatted according to URI syntax (see IETF RFC 3986 [8]). Shall be used for REST APIs. See note. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + type: string + fqdn: + description: Fully Qualified Domain Name of the service. See note. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + type: string + addresses: + type: array + items: + $ref: '#/components/schemas/Addresses' + alternative: + description: "Entry point information of the service in a format defined by an implementation, or in an external specification. See\_note." + x-etsi-mec-origin-type: Not_specified + x-etsi-mec-cardinality: 0..1 + type: object + x-etsi-notes: "NOTE:\tExactly one of \"uris\", \"fqdn\", \"addresses\" or \"alternative\" shall be present." + SecurityInfo: + x-etsi-ref: 8.1.5.4 + type: object + properties: + oAuth2Info: + $ref: '#/components/schemas/OAuth2Info' + (extensions): + description: 'Extensions for alternative transport mechanisms. These extensions depend on the actual transport, and are out of scope of the present document. + + For instance, such extensions may be used to signal the necessary parameters for the client to use TLSbased authorization defined for alternative transports (see ETSI GS MEC 009 [5] for more information).' + x-etsi-mec-origin-type: Not_specified + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + $ref: '#/components/schemas/Not_specified' + Subscriptions: + description: The MEC application instance's subscriptions. + x-etsi-mec-origin-type: Structure (inlined + x-etsi-mec-cardinality: 0..N + type: object + minItems: 0 + properties: + href: + description: URI referring to the subscription. + x-etsi-mec-origin-type: Uri + x-etsi-mec-cardinality: '1' + type: string + format: uri + subscriptionType: + description: Type of the subscription. The values are as defined in the "subscriptionType" attribute for each different Mp1 event subscription data type. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + required: + - href + - subscriptionType + _links: + description: Object containing hyperlinks related to the resource. + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: '1' + type: object + properties: + self: + # description': Self-referring URI. + $ref: '#/components/schemas/LinkType' + # x-etsi-mec-origin-type': LinkType + # x-etsi-mec-cardinality': '1' + subscriptions: + type: array + items: + $ref: '#/components/schemas/Subscriptions' + required: + - self + _links1: + description: Links to resources related to this resource. Shall be absent in HTTP requests. + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: '1' + type: object + properties: + self: + # description': Link to this resource. Shall be present in HTTP responses. + $ref: '#/components/schemas/LinkType' + # x-etsi-mec-origin-type': LinkType + # x-etsi-mec-cardinality': '1' + liveness: + # description': Link to the "Individual mecServiceLiveness" resource where the MEC platform expects the service instance to send the liveness information. The structure of the URI of that resource is outside the scope of the present document. Shall be present in HTTP responses if the MEC platform requires "heartbeat" messages for this service instance and shall be absent otherwise. + $ref: '#/components/schemas/LinkType' + # x-etsi-mec-origin-type': LinkType + # x-etsi-mec-cardinality': 0..1 + required: + - self + TimeStamp: + description: The time when the last "heartbeat" message was received by MEC platform. + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: '1' + type: object + properties: + seconds: + description: The seconds part of the time. Time is defined as Unixtime since January 1, 1970, 00:00:00 UTC. + x-etsi-mec-origin-type: Uint32 + x-etsi-mec-cardinality: '1' + type: integer + format: uint32 + nanoSeconds: + description: The nanoseconds part of the time. Time is defined as Unix-time since January 1, 1970, 00:00:00 UTC. + x-etsi-mec-origin-type: Uint32 + x-etsi-mec-cardinality: '1' + type: integer + format: uint32 + required: + - seconds + - nanoSeconds + _links2: + description: Object containing hyperlinks related to the resource. This shall only be included in the HTTP responses. + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: 0..1 + type: object + properties: + self: + # description': Self-referring URI. + $ref: '#/components/schemas/LinkType' + # x-etsi-mec-origin-type': LinkType + # x-etsi-mec-cardinality': '1' + required: + - self + FilteringCriteria: + description: Filtering criteria to match services for which events are requested to be reported. If absent, matches all services. All child attributes are combined with the logical "AND" operation. + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: 0..1 + type: object + properties: + serInstanceIds: + description: 'Identifiers of service instances about which to report events. + + See note.' + x-etsi-mec-origin-type: SerInstanceId + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + $ref: '#/components/schemas/SerInstanceId' + serNames: + description: 'Names of services about which to report events. + + See note.' + x-etsi-mec-origin-type: SerName + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + $ref: '#/components/schemas/SerName' + serCategories: + description: 'Categories of services about which to report events. + + See note.' + x-etsi-mec-origin-type: CategoryRef + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + $ref: '#/components/schemas/CategoryRef' + states: + description: 'States of the services about which to report events. If the event is a state change, this filter represents the state after the change. ' + x-etsi-mec-origin-type: ServiceState + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + $ref: '#/components/schemas/ServiceState' + isLocal: + description: Restrict event reporting to whether the service is local to the MEC platform where the subscription is managed. + x-etsi-mec-origin-type: Boolean + x-etsi-mec-cardinality: 0..1 + type: boolean + ServiceReferences: + description: List of links to services whose availability has changed. + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: 1..N + type: object + minItems: 1 + properties: + link: + # description': Link to the resource representing the individual service. Shall be present unless "changeType"="REMOVED". + $ref: '#/components/schemas/LinkType' + # x-etsi-mec-origin-type': LinkType + # x-etsi-mec-cardinality': 0..1 + serName: + # description': Name of the service. + $ref: '#/components/schemas/SerName' + # x-etsi-mec-origin-type': SerName + # x-etsi-mec-cardinality': '1' + serInstanceId: + # description': Identifier of the service. + $ref: '#/components/schemas/SerInstanceId' + # x-etsi-mec-origin-type': SerInstanceId + # x-etsi-mec-cardinality': '1' + state: + # description': State of the service after the modification. + $ref: '#/components/schemas/ServiceState' + # x-etsi-mec-origin-type': ServiceState + # x-etsi-mec-cardinality': '1' + changeType: + type: string + description: "Type of the change. \nValid values:\nADDED:\nThe service was newly added.\nREMOVED:\nThe service was removed.\nSTATE_CHANGED:\nOnly the state of the service was changed. \nATTRIBUTES_CHANGED:\nAt least one attribute of the service other than state was changed. The change may or may not include changing the state." + enum: + - SEE_DESCRIPTION + x-etsi-mec-origin-type: Enum_inlined + x-etsi-mec-cardinality: '1' + required: + - serName + - serInstanceId + - state + - changeType + _links3: + description: Object containing hyperlinks related to the resource. + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: '1' + type: object + properties: + subscription: + # description': A link to the related subscription. + $ref: '#/components/schemas/LinkType' + # x-etsi-mec-origin-type': LinkType + # x-etsi-mec-cardinality': '1' + required: + - subscription + Addresses: + description: Entry point information of the service as one or more pairs of IP address and port. See note. + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: 0..N + type: object + minItems: 0 + properties: + host: + description: Host portion of the address. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + port: + description: Port portion of the address. + x-etsi-mec-origin-type: Int + x-etsi-mec-cardinality: '1' + type: integer + required: + - host + - port + OAuth2Info: + description: Parameters related to use of OAuth 2.0. Shall be present in case OAuth 2.0 (see IETF RFC 6749 [13]) is supported to secure the provision of the service over the transport. + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: 0..1 + type: object + properties: + grantTypes: + type: array + description: "List of supported OAuth 2.0 grant types.\nEach entry shall be one of the following permitted values:\nOAUTH2_AUTHORIZATION_CODE (Authorization code grant type)\nOAUTH2_IMPLICIT_GRANT\n\t(Implicit grant type)\nOAUTH2_RESOURCE_OWNER\n\t(Resource owner password credentials grant type)\nOAUTH2_CLIENT_CREDENTIALS\n\t(Client credentials grant type)\nOnly the value \"OAUTH2_CLIENT_CREDENTIALS\" is supported in the present document. " + maxItems: '1' + minItems: '4' + items: + enum: SEE_DESCRIPTION + type: string + x-etsi-mec-origin-type: Enum_inlined + x-etsi-mec-cardinality: 1..4 + tokenEndpoint: + description: The token endpoint. Shall be present unless the grant type is OAUTH2_IMPLICIT_GRANT. + x-etsi-mec-origin-type: Uri + x-etsi-mec-cardinality: 0..1 + type: string + format: uri + required: + - grantTypes + responses: + '200': + description: OK + '204': + description: No Content + '400': + description: 'Bad Request: used to indicate that incorrect parameters were passed to the request.' + content: + application/problem+json: + schema: + $ref: '#/components/schemas/ProblemDetails' + '401': + description: 'Unauthorized: used when the client did not submit credentials.' + content: + application/problem+json: + schema: + $ref: '#/components/schemas/ProblemDetails' + '403': + description: 'Forbidden: operation is not allowed given the current status of the resource.' + content: + application/problem+json: + schema: + $ref: '#/components/schemas/ProblemDetails' + '404': + description: 'Not Found: used when a client provided a URI that cannot be mapped to a valid resource URI.' + content: + application/problem+json: + schema: + $ref: '#/components/schemas/ProblemDetails' + '409': + description: 'Conflict: The operation cannot be executed currently, due to a conflict with the state of the resource. .' + content: + application/problem+json: + schema: + $ref: '#/components/schemas/ProblemDetails' + '412': + description: 'Precondition failed: used when a condition has failed during conditional requests, e.g. when using ETags to avoid write conflicts when using PUT' + content: + application/problem+json: + schema: + $ref: '#/components/schemas/ProblemDetails' + '414': + description: 'URI Too Long: used to indicate that the server is refusing to process the request because the request URI is longer than the server is willing or able to process.' + content: + application/problem+json: + schema: + $ref: '#/components/schemas/ProblemDetails' + '429': + description: 'Too Many Requests: used when a rate limiter has triggered.' + content: + application/problem+json: + schema: + $ref: '#/components/schemas/ProblemDetails' + parameters: + Query.Ser_instance_id: + description: 'A MEC application instance may use multiple ser_instance_ids as an input parameter to query the availability of a list of MEC service instances. ser_instance_id corresponds to serInstanceId defined in table 8.1.2.2-1. + + See note.' + name: ser_instance_id + cardinality: 0..N + in: query + required: false + x-exportParamName: Query.Ser_instance_id + schema: + type: array + items: + type: string + Query.Ser_name: + description: "A MEC application instance may use multiple ser_names as an input parameter to query the availability of a list of MEC service instances. ser_name corresponds to serName defined in table\_8.1.2.2-1.\nSee note." + name: ser_name + cardinality: 0..N + in: query + required: false + x-exportParamName: Query.Ser_name + schema: + type: array + items: + type: string + Query.Ser_category_id: + description: 'A MEC application instance may use ser_category_id as an input parameter to query the availability of a list of MEC service instances in a serCategory. ser_category_id corresponds to serCategory defined in table 8.1.2.2-1. + + See note.' + name: ser_category_id + cardinality: 0..1 + in: query + required: false + x-exportParamName: Query.Ser_category_id + schema: + type: string + Query.Scope_of_locality: + description: A MEC application instance may use scope_of_locality as an input parameter to query the availability of a list of MEC service instances with a certain scope of locality, as defined in LocalityType in table 8.1.6.5-1. scope_of_locality corresponds to scopeOfLocality defined in table 8.1.2.2-1. + name: scope_of_locality + cardinality: 0..1 + in: query + required: false + x-exportParamName: Query.Scope_of_locality + schema: + $ref: '#/components/schemas/LocalityType' + Query.Consumed_local_only: + description: A MEC application instance may use consumed_local_only as an input parameter to query the availability of a list of MEC service instances that can be consumed only locally. consumed_local_only corresponds to consumedLocalOnly defined in table 8.1.2.2-1. + name: consumed_local_only + cardinality: 0..1 + in: query + required: false + x-exportParamName: Query.Consumed_local_only + schema: + type: boolean + Query.Is_local: + description: A MEC application instance may use is_local as an input parameter to query the availability of a list of MEC service instances in the local MEC host or in local and remote MEC hosts. is_local corresponds to isLocal defined in table 8.1.2.2-1. + name: is_local + cardinality: 0..1 + in: query + required: false + x-exportParamName: Query.Is_local + schema: + type: boolean + diff --git a/Auto_Generated_OAS_Output_Files/Auto_Generated_OAS_Output_Files/gs_mec012v020201p.yaml b/Auto_Generated_OAS_Output_Files/Auto_Generated_OAS_Output_Files/gs_mec012v020201p.yaml new file mode 100644 index 0000000..1dab221 --- /dev/null +++ b/Auto_Generated_OAS_Output_Files/Auto_Generated_OAS_Output_Files/gs_mec012v020201p.yaml @@ -0,0 +1,3979 @@ +openapi: 3.1.0 +jsonSchemaDialect: https://json-schema.org/draft/2020-12/schema +info: + contact: + url: https://forge.etsi.org/rep/mec/gs012-rnis-api + title: ETSI GS MEC 012 Radio Network Information API + description: The ETSI MEC ISG Radio Network Information API described using OpenAPI. + license: + name: BSD-3-Clause + url: https://forge.etsi.org/legal-matters + version: 2.2.1 +paths: + /queries/rab_info: + get: + summary: Retrieve current status of Radio Access Bearer information . + description: The GET method is used to query information about the Radio Access Bearers. + operationId: rabinfoGET + tags: + - queries + parameters: + - $ref: '#/components/parameters/Query.App_ins_id' + - $ref: '#/components/parameters/Query.Cell_id' + - $ref: '#/components/parameters/Query.Ue_ipv4_address' + - $ref: '#/components/parameters/Query.Ue_ipv6_address' + - $ref: '#/components/parameters/Query.Nated_ip_address' + - $ref: '#/components/parameters/Query.Gtp_teid' + - $ref: '#/components/parameters/Query.Erab_id' + - $ref: '#/components/parameters/Query.Qci' + - $ref: '#/components/parameters/Query.Erab_mbr_dl' + - $ref: '#/components/parameters/Query.Erab_mbr_ul' + - $ref: '#/components/parameters/Query.Erab_gbr_dl' + - $ref: '#/components/parameters/Query.Erab_gbr_ul' + responses: + '200': + description: Upon success, a response body containing the Radio Access Bearer information is returned. + content: + application/json: + schema: + type: object + properties: + RabInfo: + $ref: '#/components/schemas/RabInfo' + '400': + $ref: '#/components/responses/400' + '401': + $ref: '#/components/responses/401' + '403': + $ref: '#/components/responses/403' + '404': + $ref: '#/components/responses/404' + '406': + $ref: '#/components/responses/406' + '429': + $ref: '#/components/responses/429' + /queries/plmn_info: + get: + summary: Retrieve current status of PLMN information. + description: The GET method is used to query information about the Mobile Network. + operationId: plmninfoGET + tags: + - queries + parameters: + - $ref: '#/components/parameters/Query.App_ins_id1' + responses: + '200': + description: Upon success, a response body containing the array of Mobile Network information is returned. + content: + application/json: + schema: + type: object + properties: + PlmnInfo: + type: array + items: + $ref: '#/components/schemas/PlmnInfo' + '400': + $ref: '#/components/responses/400' + '401': + $ref: '#/components/responses/401' + '403': + $ref: '#/components/responses/403' + '404': + $ref: '#/components/responses/404' + '406': + $ref: '#/components/responses/406' + '429': + $ref: '#/components/responses/429' + /queries/s1_bearer_info: + get: + summary: Retrieve current status of S1 bearer information. + description: The GET method is used to query information about the S1 bearer(s). + operationId: s1bearerinfoGET + tags: + - queries + parameters: + - $ref: '#/components/parameters/Query.Temp_ue_id' + - $ref: '#/components/parameters/Query.Ue_ipv4_address' + - $ref: '#/components/parameters/Query.Ue_ipv6_address' + - $ref: '#/components/parameters/Query.Nated_ip_address' + - $ref: '#/components/parameters/Query.Gtp_teid' + - $ref: '#/components/parameters/Query.Cell_id' + - $ref: '#/components/parameters/Query.Erab_id1' + responses: + '200': + description: Upon success, a response body containing the UE S1-U bearer information is returned. + content: + application/json: + schema: + type: object + properties: + S1BearerInfo: + $ref: '#/components/schemas/S1BearerInfo' + '400': + $ref: '#/components/responses/400' + '401': + $ref: '#/components/responses/401' + '403': + $ref: '#/components/responses/403' + '404': + $ref: '#/components/responses/404' + '406': + $ref: '#/components/responses/406' + '429': + $ref: '#/components/responses/429' + /queries/layer2_meas: + get: + summary: Retrieve current status of layer 2 measurements information. + description: The GET method is used to query information about the layer 2 measurements. + operationId: layer2measGET + tags: + - queries + parameters: + - $ref: '#/components/parameters/Query.App_ins_id' + - $ref: '#/components/parameters/Query.Cell_id1' + - $ref: '#/components/parameters/Query.Ue_ipv4_address' + - $ref: '#/components/parameters/Query.Ue_ipv6_address' + - $ref: '#/components/parameters/Query.Nated_ip_address' + - $ref: '#/components/parameters/Query.Gtp_teid' + - $ref: '#/components/parameters/Query.Dl_gbr_prb_usage_cell' + - $ref: '#/components/parameters/Query.Ul_gbr_prb_usage_cell' + - $ref: '#/components/parameters/Query.Dl_nongbr_prb_usage_cell' + - $ref: '#/components/parameters/Query.Ul_nongbr_prb_usage_cell' + - $ref: '#/components/parameters/Query.Dl_total_prb_usage_cell' + - $ref: '#/components/parameters/Query.Ul_total_prb_usage_cell' + - $ref: '#/components/parameters/Query.Received_dedicated_preambles_cell' + - $ref: '#/components/parameters/Query.Received_randomly_selecte_preambles_low_range_cell' + - $ref: '#/components/parameters/Query.Received_randomly_selected_preambles_high_range_cell' + - $ref: '#/components/parameters/Query.Number_of_active_ue_dl_gbr_cell' + - $ref: '#/components/parameters/Query.Number_of_active_ue_ul_gbr_cell' + - $ref: '#/components/parameters/Query.Number_of_active_ue_dl_nongbr_cell' + - $ref: '#/components/parameters/Query.Number_of_active_ue_ul_nongbr_cell' + - $ref: '#/components/parameters/Query.Dl_gbr_pdr_cell' + - $ref: '#/components/parameters/Query.Ul_gbr_pdr_cell' + - $ref: '#/components/parameters/Query.Dl_nongbr_pdr_cell' + - $ref: '#/components/parameters/Query.Ul_nongbr_pdr_cell' + - $ref: '#/components/parameters/Query.Dl_gbr_delay_ue' + - $ref: '#/components/parameters/Query.Ul_gbr_delay_ue' + - $ref: '#/components/parameters/Query.Dl_nongbr_delay_ue' + - $ref: '#/components/parameters/Query.Ul_nongbr_delay_ue' + - $ref: '#/components/parameters/Query.Dl_gbr_pdr_ue' + - $ref: '#/components/parameters/Query.Ul_gbr_pdr_ue' + - $ref: '#/components/parameters/Query.Dl_nongbr_pdr_ue' + - $ref: '#/components/parameters/Query.Ul_nongbr_pdr_ue' + - $ref: '#/components/parameters/Query.Dl_gbr_throughput_ue' + - $ref: '#/components/parameters/Query.Ul_gbr_throughput_ue' + - $ref: '#/components/parameters/Query.Dl_nongbr_throughput_ue' + - $ref: '#/components/parameters/Query.Ul_nongbr_throughput_ue' + - $ref: '#/components/parameters/Query.Dl_gbr_data_volume_ue' + - $ref: '#/components/parameters/Query.Ul_gbr_data_volume_ue' + - $ref: '#/components/parameters/Query.Dl_nongbr_data_volume_ue' + - $ref: '#/components/parameters/Query.Ul_nongbr_data_volume_ue' + responses: + '200': + description: Upon success, a response body containing the layer 2 measurements information is returned. + content: + application/json: + schema: + type: object + properties: + L2Meas: + $ref: '#/components/schemas/L2Meas' + '400': + $ref: '#/components/responses/400' + '401': + $ref: '#/components/responses/401' + '403': + $ref: '#/components/responses/403' + '404': + $ref: '#/components/responses/404' + '406': + $ref: '#/components/responses/406' + '414': + $ref: '#/components/responses/414' + '429': + $ref: '#/components/responses/429' + /subscriptions: + get: + summary: Retrieve a list of active subscriptions for this subscriber. + description: The GET method is used to request information about the subscriptions for this requestor. Upon success, the response contains entity body with the list of links to the subscriptions that are present for the requestor. + operationId: subscriptionsGET + tags: + - subscriptions + parameters: + - $ref: '#/components/parameters/Query.Subscription_type' + responses: + '200': + description: Upon success, a response body containing the list of links to requestor's subscriptions is returned. + content: + application/json: + schema: + type: object + properties: + SubscriptionLinkList: + $ref: '#/components/schemas/SubscriptionLinkList' + '400': + $ref: '#/components/responses/400' + '401': + $ref: '#/components/responses/401' + '403': + $ref: '#/components/responses/403' + '404': + $ref: '#/components/responses/404' + '406': + $ref: '#/components/responses/406' + '429': + $ref: '#/components/responses/429' + post: + summary: Create a new subscription. + description: The POST method is used to create a new subscription to Radio Network Information notifications. Upon success, the response contains entity body describing the created subscription. + operationId: subscriptionsPOST + tags: + - subscriptions + requestBody: + description: 'The entity body in the request contains data type of the specific RNI event subscription that is to be created, where the data type options are listed below and defined in clauses 6.3.2 through 6.3.9 and in clause 6.3.11: + + CellChangeSubscription + + RabEstSubscription + + RabModSubscription + + RabRelSubscription + + MeasRepUeSubscription + + NrMeasRepUeSubscription + + MeasTaSubscription + + CaReconfSubscription + + S1BearerSubscription.' + content: + application/json: + schema: + type: object + properties: + CellChangeSubscription: + $ref: '#/components/schemas/CellChangeSubscription' + responses: + '201': + description: 'Indicates successful resource creation, where the resource URI shall be returned in the HTTP Location header field. + + + In the returned NotificationSubscription structure, the created subscription is described using the appropriate data type from the list below and as defined in clauses 6.3.2 through 6.3.9 and in clause 6.3.11: + + CellChangeSubscription + + RabEstSubscription + + RabModSubscription + + RabRelSubscription + + MeasRepUeSubscription + + NrMeasRepUeSubscription + + MeasTaSubscription + + CaReconfSubscription + + S1BearerSubscription.' + content: + application/json: + schema: + type: object + properties: + CellChangeSubscription: + $ref: '#/components/schemas/CellChangeSubscription' + '400': + $ref: '#/components/responses/400' + '401': + $ref: '#/components/responses/401' + '403': + $ref: '#/components/responses/403' + '404': + $ref: '#/components/responses/404' + '406': + $ref: '#/components/responses/406' + '415': + $ref: '#/components/responses/415' + '422': + $ref: '#/components/responses/422' + '429': + $ref: '#/components/responses/429' + callbacks: + notification: + post: + summary: Callback POST used to send a notification + description: Subscription notification + operationId: notificationPOST + requestBody: + description: Subscription notification + required: true + content: + application/json: + schema: + type: object + properties: + subscriptionNotification: + oneOf: + - $ref: '#/components/schemas/CellChangeSubscription' + - $ref: '#/components/schemas/RabEstSubscription' + - $ref: '#/components/schemas/RabModSubscription' + - $ref: '#/components/schemas/RabRelSubscription' + - $ref: '#/components/schemas/MeasRepUeSubscription' + - $ref: '#/components/schemas/NrMeasRepUeSubscription' + - $ref: '#/components/schemas/MeasTaSubscription' + - $ref: '#/components/schemas/CaReconfSubscription' + - $ref: '#/components/schemas/S1BearerSubscription' + /subscriptions/{subscriptionId}: + get: + summary: Retrieve information on current specific subscription. + description: The GET method is used to retrieve information about this subscription. Upon success, the response contains entity body with the data type describing the subscription. + operationId: subscriptionsByIdGET + tags: + - subscriptions + responses: + '200': + description: 'Upon success, a response body containing data type describing the specific RNI event subscription is returned. The allowed data types for subscriptions are defined in clauses 6.3.2 through 6.3.9 and in clause 6.3.11 and are as follows: + + CellChangeSubscription + + RabEstSubscription + + RabModSubscription + + RabRelSubscription + + MeasRepUeSubscription + + NrMeasRepUeSubscription + + MeasTaSubscription + + CaReconfSubscription + + S1BearerSubscription.' + content: + application/json: + schema: + type: object + properties: + CellChangeSubscription: + $ref: '#/components/schemas/CellChangeSubscription' + '400': + $ref: '#/components/responses/400' + '401': + $ref: '#/components/responses/401' + '403': + $ref: '#/components/responses/403' + '404': + $ref: '#/components/responses/404' + '406': + $ref: '#/components/responses/406' + '429': + $ref: '#/components/responses/429' + put: + summary: Modify existing subscription by sending a new data structure. + description: 'The PUT method is used to update the existing subscription. PUT method in this case has "replace" semantics. Upon successful operation, the target resource is updated with new Data Type received within the message body of the PUT request. ' + operationId: subscriptionsByIdPUT + tags: + - subscriptions + requestBody: + description: 'New NotificationSubscription is included as entity body of the request. The allowed data types for subscriptions are defined in clauses 6.3.2 through 6.3.9 and in clause 6.3.11 and are as follows: + + CellChangeSubscription + + RabEstSubscription + + RabModSubscription + + RabRelSubscription + + MeasRepUeSubscription + + NrMeasRepUeSubscription + + MeasTaSubscription + + CaReconfSubscription + + S1BearerSubscription.' + content: + application/json: + schema: + type: object + properties: + CellChangeSubscription: + $ref: '#/components/schemas/CellChangeSubscription' + responses: + '200': + description: 'Upon success, a response body containing data type describing the updated subscription is returned. The allowed data types for subscriptions are defined in clauses 6.3.2 through 6.3.9 and in clause 6.3.11 and are as follows: + + CellChangeSubscription + + RabEstSubscription + + RabModSubscription + + RabRelSubscription + + MeasRepUeSubscription + + NrMeasRepUeSubscription + + MeasTaSubscription + + CaReconfSubscription + + S1BearerSubscription.' + content: + application/json: + schema: + type: object + properties: + CellChangeSubscription: + $ref: '#/components/schemas/CellChangeSubscription' + '400': + $ref: '#/components/responses/400' + '401': + $ref: '#/components/responses/401' + '403': + $ref: '#/components/responses/403' + '404': + $ref: '#/components/responses/404' + '406': + $ref: '#/components/responses/406' + '412': + $ref: '#/components/responses/412' + '422': + $ref: '#/components/responses/422' + '429': + $ref: '#/components/responses/429' + delete: + summary: Cancel the existing subscription. + description: The DELETE method is used to cancel the existing subscription. Cancellation can be made by deleting the resource that represents existing subscription. + operationId: subscriptionsByIdDELETE + tags: + - subscriptions + responses: + '204': + $ref: '#/components/responses/204' + '401': + $ref: '#/components/responses/401' + '403': + $ref: '#/components/responses/403' + '404': + $ref: '#/components/responses/404' + '429': + $ref: '#/components/responses/429' +components: + schemas: + ProblemDetails: + type: object + properties: + type: + type: string + format: uri + description: A URI reference according to IETF RFC 3986 that identifies the problem type + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: URI + title: + type: string + description: A short, human-readable summary of the problem type + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: String + status: + type: integer + format: uint32 + description: The HTTP status code for this occurrence of the problem + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: Uint32 + detail: + type: string + description: A human-readable explanation specific to this occurrence of the problem + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: String + instance: + type: string + format: uri + description: A URI reference that identifies the specific occurrence of the problem + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: URI + Enum: + type: integer + CellId: + type: string + description: String representing the E-UTRAN Cell Identity. Encoded as a bit string (size (28)) as defined in ETSI TS 136 413 [i.3]. + NrCellId: + type: string + description: String representing the NR Cell Identity. Encoded as a bit string (size (36)) as defined in ETSI TS 138 423 [i.17]. + Trigger: + description: As defined in Ref ETSI TS 136 331 [i.7]

0 = NOT_AVAILABLE

1 = PERIODICAL_REPORT_STRONGEST_CELLS

2 = PERIODICAL_REPORT_STRONGEST_CELLS_FOR_SON

3 = PERIODICAL_REPORT_CGI

4 = INTRA_PERIODICAL_REPORT_STRONGEST_CELLS

5 = INTRA_PERIODICAL_REPORT_CGI

10 = EVENT_A1

11 = EVENT_A2

12 = EVENT_A3

13 = EVENT_A4

14 = EVENT_A5

15 = EVENT_A6

20 = EVENT_B1

21 = EVENT_B2

20 = EVENT_B1-NR

21 = EVENT_B2-NR

30 = EVENT_C1

31 = EVENT_C2

40 = EVENT_W1

41 = EVENT_W2

42 = EVENT_W3

50 = EVENT_V1

51 = EVENT_V2

60 = EVENT_H1

61 = EVENT_H2 + enum: + - 0 + - 1 + - 2 + - 3 + - 4 + - 5 + - 10 + - 11 + - 12 + - 13 + - 14 + - 15 + - 20 + - 21 + - 30 + - 31 + - 40 + - 41 + - 42 + - 50 + - 51 + - 60 + - 61 + type: integer + TriggerNr: + description: The enumeration Trigger represents specified triggers for a 5G UE Measurement Report. Full details can be found in ETSI TS 138 331 [i.13]).

0 = NOT_AVAILABLE

1 = NR_PERIODICAL

2 = NR_CGI

10 = EVENT_A1

11 = EVENT_A2

12 = EVENT_A3

13 = EVENT_A4

14 = EVENT_A5

15 = EVENT_A6

20 = INTER_RAT_PERIODICAL

21 = INTER_RAT_CGI

30 = EVENT_B1

31 = EVENT_B2 + enum: + - 0 + - 1 + - 2 + - 10 + - 11 + - 12 + - 13 + - 14 + - 15 + - 20 + - 21 + - 30 + - 31 + type: integer + AssociateId1_: + properties: + type: + description: 'Numeric value (0-255) corresponding to specified type of identifier as following:

0 = reserved.

1 = UE_IPv4_ADDRESS.

2 = UE_IPV6_ADDRESS.

3 = NATED_IP_ADDRESS.

4 = GTP_TEID.' + enum: + - 0 + - 1 + - 2 + - 3 + - 4 + type: integer + x-etsi-mec-cardinality: '1' + x-etsi-mec-origin-type: Enum + value: + description: Value for the identifier. + type: string + x-etsi-mec-cardinality: '1' + x-etsi-mec-origin-type: String + NRcgi: + type: object + properties: + plmn: + $ref: '#/components/schemas/Plmn' + nrCellId: + $ref: '#/components/schemas/NrCellId' + required: + - plmn + - nrCellId + description: New Radio Cell Global Identifier. + L2Meas1_: + properties: + cellInfo: + description: The per cell measurement information as defined below. + items: + type: object + properties: + dl_gbr_prb_usage_cell: + description: It indicates the PRB usage for downlink GBR traffic, as defined in ETSI TS 136 314 [i.11] and ETSI TS 136 423 [i.12]. + type: integer + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: Integer (0..100) + dl_nongbr_prb_usage_cell: + description: "It indicates (in percentage) the PRB usage for downlink non-GBR traffic, as defined in ETSI TS\_136\_314 [i.11] and ETSI TS\_136 423 [i.12]." + type: integer + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: Integer (0..100) + dl_total_prb_usage_cell: + description: "It indicates (in percentage) the PRB usage for total downlink traffic, as defined in ETSI TS\_136\_314 [i.11] and ETSI TS\_136 423 [i.12]." + type: integer + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: Integer (0..100) + ecgi: + $ref: '#/components/schemas/Ecgi' + ul_gbr_prb_usage_cell: + description: "It indicates (in percentage) the PRB usage for uplink GBR traffic, as defined in ETSI TS\_136\_314\_[i.11] and ETSI TS\_136 423 [i.12]." + type: integer + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: Integer (0..100) + ul_nongbr_prb_usage_cell: + description: "It indicates (in percentage) the PRB usage for uplink non-GBR traffic, as defined in ETSI TS\_136\_314 [i.11] and ETSI TS\_136 423 [i.12]." + type: integer + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: Integer (0..100) + ul_total_prb_usage_cell: + description: "It indicates (in percentage) the PRB usage for total uplink traffic, as defined in ETSI TS\_136\_314\_[i.11] and ETSI TS\_136\_423 [i.12]." + type: integer + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: Integer (0..100) + received_dedicated_preambles_cell: + description: It indicates (in percentage) the received dedicated preamples, as defined in ETSI TS 136 314 [i.11]. + type: integer + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: Integer (0..100) + received_randomly_selected_preambles_high_range_cell: + description: It indicates (in percentage) the received randomly selected preambles in the high range, as defined in ETSI TS 136 314 [i.11]. + type: integer + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: Integer (0..100) + received_randomly_selected_preambles_low_range_cell: + description: It indicates (in percentage) the received randomly selected preambles in the low range, as defined in ETSI TS 136 314 [i.11]. + type: integer + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: Integer (0..100) + number_of_active_ue_dl_gbr_cell: + description: It indicates the number of active UEs with downlink GBR traffic, as defined in ETSI TS 136 314 [i.11]. + type: integer + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: Integer + number_of_active_ue_dl_nongbr_cell: + description: "It indicates the number of active UEs with downlink non-GBR traffic, as defined in ETSI TS\_136\_314 [i.11]." + type: integer + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: Integer + number_of_active_ue_ul_gbr_cell: + description: It indicates the number of active UEs with uplink GBR traffic, as defined in ETSI TS 136 314 [i.11]. + type: integer + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: Integer + number_of_active_ue_ul_nongbr_cell: + description: "It indicates the number of active UEs with uplink non-GBR traffic, as defined in ETSI TS\_136\_314\_[i.11]." + type: integer + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: Integer + dl_gbr_pdr_cell: + description: It indicates the packet discard rate in percentage of the downlink GBR traffic in a cell, as defined in ETSI TS 136 314 [i.11]. + type: integer + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: Integer (0..100) + dl_nongbr_pdr_cell: + description: It indicates the packet discard rate in percentage of the downlink non-GBR traffic in a cell, as defined in ETSI TS 136 314 [i.11]. + type: integer + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: Integer (0..100) + ul_gbr_pdr_cell: + description: It indicates the packet discard rate in percentage of the uplink GBR traffic in a cell, as defined in ETSI TS 136 314 [i.11]. + type: integer + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: Integer (0..100) + ul_nongbr_pdr_cell: + description: It indicates the packet discard rate in percentage of the uplink non-GBR traffic in a cell, as defined in ETSI TS 136 314 [i.11]. + type: integer + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: Integer (0..100) + required: + - ecgi + minItems: 0 + type: array + x-etsi-mec-cardinality: 0..N + x-etsi-mec-origin-type: Structure (inlined) + cellUEInfo: + description: The per cell per UE layer 2 measurements information as defined below. + items: + type: object + properties: + associateId: + $ref: '#/components/schemas/AssociateId' + dl_gbr_delay_ue: + description: It indicates the packet delay of the downlink GBR traffic of a UE, as defined in ETSI TS 136 314 [i.11]. + type: integer + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: Integer + dl_nongbr_delay_ue: + description: "It indicates the packet delay of the downlink non-GBR traffic of a UE, as defined in ETSI TS\_136\_314\_[i.11]." + type: integer + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: Integer + ecgi: + $ref: '#/components/schemas/Ecgi' + ul_gbr_delay_ue: + description: It indicates the packet delay of the uplink GBR traffic of a UE, as defined in ETSI TS 136 314 [i.11]. + type: integer + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: Integer + ul_nongbr_delay_ue: + description: It indicates the packet delay of the uplink non-GBR traffic of a UE, as defined in ETSI TS 136 314 [i.11]. + type: integer + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: Integer + dl_gbr_data_volume_ue: + description: It indicates the data volume of the downlink GBR traffic of a UE, as defined in ETSI TS 136 314 [i.11]. + type: integer + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: Integer + dl_gbr_pdr_ue: + description: It indicates the packet discard rate in percentage of the downlink GBR traffic of a UE, as defined in ETSI TS 136 314 [i.11]. + type: integer + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: Integer (0..100) + dl_gbr_throughput_ue: + description: It indicates the scheduled throughput of the downlink GBR traffic of a UE, as defined in ETSI TS 136 314 [i.11]. + type: integer + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: Integer + dl_nongbr_data_volume_ue: + description: "It indicates the data volume of the downlink non-GBR traffic of a UE, as defined in ETSI TS\_136\_314\_[i.11]." + type: integer + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: Integer + dl_nongbr_pdr_ue: + description: It indicates the packet discard rate in percentage of the downlink nonGBR traffic of a UE, as defined in ETSI TS 136 314 [i.11]. + type: integer + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: Integer (0..100) + dl_nongbr_throughput_ue: + description: It indicates the scheduled throughput of the downlink nonGBR traffic of a UE, as defined in ETSI TS 136 314 [i.11]. + type: integer + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: Integer + ul_gbr_data_volume_ue: + description: It indicates the data volume of the uplink GBR traffic of a UE, as defined in ETSI TS 136 314 [i.11]. + type: integer + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: Integer + ul_gbr_pdr_ue: + description: It indicates the packet discard rate in percentage of the uplink GBR traffic of a UE, as defined in ETSI TS 136 314 [i.11]. + type: integer + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: Integer (0..100) + ul_gbr_throughput_ue: + description: It indicates the scheduled throughput of the uplink GBR traffic of a UE, as defined in ETSI TS 136 314 [i.11]. + type: integer + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: Integer + ul_nongbr_data_volume_ue: + description: It indicates the data volume of the uplink non-GBR traffic of a UE, as defined in ETSI TS 136 314 [i.11]. + type: integer + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: Integer + ul_nongbr_pdr_ue: + description: It indicates the packet discard rate in percentage of the uplink nonGBR traffic of a UE, as defined in ETSI TS 136 314 [i.11]. + type: integer + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: Integer (0..100) + ul_nongbr_throughput_ue: + description: It indicates the scheduled throughput of the uplink non-GBR traffic of a UE, as defined in ETSI TS 136 314 [i.11]. + type: integer + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: Integer + required: + - ecgi + - associateId + minItems: 0 + type: array + x-etsi-mec-cardinality: 0..N + x-etsi-mec-origin-type: Structure (inlined) + timeStamp: + $ref: '#/components/schemas/TimeStamp' + type: object + x-etsi-ref: 6.2.4a + InlineSubscription: + oneOf: + - $ref: '#/components/schemas/CellChangeSubscription' + - $ref: '#/components/schemas/RabEstSubscription' + - $ref: '#/components/schemas/RabModSubscription' + - $ref: '#/components/schemas/RabRelSubscription' + - $ref: '#/components/schemas/MeasRepUeSubscription' + - $ref: '#/components/schemas/NrMeasRepUeSubscription' + - $ref: '#/components/schemas/MeasTaSubscription' + - $ref: '#/components/schemas/CaReconfSubscription' + - $ref: '#/components/schemas/S1BearerSubscription' + discriminator: + propertyName: subscriptionType + InlineNotification: + oneOf: + - $ref: '#/components/schemas/CellChangeNotification' + - $ref: '#/components/schemas/RabEstNotification' + - $ref: '#/components/schemas/RabModNotification' + - $ref: '#/components/schemas/RabRelNotification' + - $ref: '#/components/schemas/MeasRepUeNotification' + - $ref: '#/components/schemas/NrMeasRepUeNotification' + - $ref: '#/components/schemas/MeasTaNotification' + - $ref: '#/components/schemas/CaReconfNotification' + - $ref: '#/components/schemas/S1BearerNotification' + discriminator: + propertyName: notificationType + PlmnInfo: + x-etsi-ref: 6.2.2 + type: object + properties: + timeStamp: + # description': Time stamp. + $ref: '#/components/schemas/TimeStamp' + # x-etsi-mec-origin-type': TimeStamp + # x-etsi-mec-cardinality': 0..1 + appInstanceId: + description: Unique identifier for the MEC application instance. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + plmn: + description: Public Land Mobile Network Identity. + x-etsi-mec-origin-type: Plmn + x-etsi-mec-cardinality: 1..N + type: array + minItems: 1 + items: + $ref: '#/components/schemas/Plmn' + required: + - appInstanceId + - plmn + RabInfo: + x-etsi-ref: 6.2.3 + type: object + properties: + timeStamp: + # description': Time stamp. + $ref: '#/components/schemas/TimeStamp' + # x-etsi-mec-origin-type': TimeStamp + # x-etsi-mec-cardinality': 0..1 + appInstanceId: + description: Unique identifier for the MEC application instance. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + requestId: + description: Unique identifier allocated by the service consumer for the RAB Information request. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + cellUserInfo: + type: array + items: + $ref: '#/components/schemas/CellUserInfo' + required: + - appInstanceId + - requestId + S1BearerInfo: + description: S1 bearer information as defined below. + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: 1..N + type: object + minItems: 1 + properties: + erabId: + description: The attribute that uniquely identifies a S1 bearer for a specific UE, as defined in ETSI TS 136 413 [i.3]. + x-etsi-mec-origin-type: Integer + x-etsi-mec-cardinality: '1' + type: integer + enbInfo: + $ref: '#/components/schemas/EnbInfo' + sGwInfo: + $ref: '#/components/schemas/SGwInfo' + required: + - erabId + - enbInfo + - sGwInfo + L2Meas: + x-etsi-ref: 6.2.4a + type: object + properties: + timeStamp: + # description': Time stamp. + $ref: '#/components/schemas/TimeStamp' + # x-etsi-mec-origin-type': TimeStamp + # x-etsi-mec-cardinality': 0..1 + cellInfo: + type: array + items: + $ref: '#/components/schemas/CellInfo' + cellUEInfo: + type: array + items: + $ref: '#/components/schemas/CellUEInfo' + CellChangeSubscription: + x-etsi-ref: 6.3.2 + type: object + properties: + subscriptionType: + description: Shall be set to "CellChangeSubscription". + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + callbackReference: + description: URI exposed by the client on which to receive notifications via HTTP. See note. + x-etsi-mec-origin-type: Uri + x-etsi-mec-cardinality: 0..1 + type: string + format: uri + requestTestNotification: + description: 'Shall be set to TRUE by the service consumer to request a test notification via HTTP on the callbackReference URI, specified in ETSI GS MEC 009 [6], as described in clause 6.12a. ' + x-etsi-mec-origin-type: Boolean + x-etsi-mec-cardinality: 0..1 + type: boolean + websockNotifConfig: + # description': Provides details to negotiate and signal the use of a Websocket connection between RNIS and the service consumer for notifications. See note. + $ref: '#/components/schemas/WebsockNotifConfig' + # x-etsi-mec-origin-type': WebsockNotifConfig + # x-etsi-mec-cardinality': 0..1 + _links: + $ref: '#/components/schemas/_links' + filterCriteriaAssocHo: + $ref: '#/components/schemas/FilterCriteriaAssocHo' + expiryDeadline: + # description': Time stamp. + $ref: '#/components/schemas/TimeStamp' + # x-etsi-mec-origin-type': TimeStamp + # x-etsi-mec-cardinality': 0..1 + required: + - subscriptionType + - filterCriteriaAssocHo + x-etsi-notes: "NOTE:\tAt least one of callbackReference and websockNotifConfig shall be provided by the service consumer. If both are provided, it is up to RNIS to choose an alternative and return only that alternative in the response, specified in ETSI GS MEC 009 [6], as described in clause 6.12a." + RabEstSubscription: + x-etsi-ref: 6.3.3 + type: object + properties: + subscriptionType: + description: Shall be set to "RabEstSubscription". + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + callbackReference: + description: URI exposed by the client on which to receive notifications via HTTP. See note. + x-etsi-mec-origin-type: Uri + x-etsi-mec-cardinality: 0..1 + type: string + format: uri + requestTestNotification: + description: "Shall be set to TRUE by the service consumer to request a test notification via HTTP on the callbackReference URI, specified in ETSI GS MEC 009 [6], as described in clause\_6.12a. " + x-etsi-mec-origin-type: Boolean + x-etsi-mec-cardinality: 0..1 + type: boolean + websockNotifConfig: + # description': Provides details to negotiate and signal the use of a Websocket connection between RNIS and the service consumer for notifications. See note. + $ref: '#/components/schemas/WebsockNotifConfig' + # x-etsi-mec-origin-type': WebsockNotifConfig + # x-etsi-mec-cardinality': 0..1 + _links: + $ref: '#/components/schemas/_links' + filterCriteriaQci: + $ref: '#/components/schemas/FilterCriteriaQci' + expiryDeadline: + # description': Time stamp. + $ref: '#/components/schemas/TimeStamp' + # x-etsi-mec-origin-type': TimeStamp + # x-etsi-mec-cardinality': 0..1 + required: + - subscriptionType + - filterCriteriaQci + x-etsi-notes: "NOTE:\tAt least one of callbackReference and websockNotifConfig shall be provided by the service consumer. If both are provided, it is up to RNIS to choose an alternative and return only that alternative in the response, specified in ETSI GS MEC 009 [6], as described in clause 6.12a." + RabModSubscription: + x-etsi-ref: 6.3.4 + type: object + properties: + subscriptionType: + description: Shall be set to "RabModSubscription". + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + callbackReference: + description: URI exposed by the client on which to receive notifications via HTTP. See note. + x-etsi-mec-origin-type: Uri + x-etsi-mec-cardinality: 0..1 + type: string + format: uri + requestTestNotification: + description: "Shall be set to TRUE by the service consumer to request a test notification via HTTP on the callbackReference URI, specified in ETSI GS MEC 009 [6], as described in clause\_6.12a. " + x-etsi-mec-origin-type: Boolean + x-etsi-mec-cardinality: 0..1 + type: boolean + websockNotifConfig: + # description': Provides details to negotiate and signal the use of a Websocket connection between RNIS and the service consumer for notifications. See note. + $ref: '#/components/schemas/WebsockNotifConfig' + # x-etsi-mec-origin-type': WebsockNotifConfig + # x-etsi-mec-cardinality': 0..1 + _links: + $ref: '#/components/schemas/_links' + filterCriteriaQci: + $ref: '#/components/schemas/FilterCriteriaQci1' + expiryDeadline: + # description': Time stamp. + $ref: '#/components/schemas/TimeStamp' + # x-etsi-mec-origin-type': TimeStamp + # x-etsi-mec-cardinality': 0..1 + required: + - subscriptionType + - filterCriteriaQci + x-etsi-notes: "NOTE:\tAt least one of callbackReference and websockNotifConfig shall be provided by the service consumer. If both are provided, it is up to RNIS to choose an alternative and return only that alternative in the response, specified in ETSI GS MEC 009 [6], as described in clause 6.12a." + RabRelSubscription: + x-etsi-ref: 6.3.5 + type: object + properties: + subscriptionType: + description: Shall be set to "RabRelSubscription". + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + callbackReference: + description: URI selected by the service consumer to receive notifications on the subscribed RNIS information. This shall be included both in the request and in response. If not present, the service consumer is requesting the use of a Websocket for notifications. See note. + x-etsi-mec-origin-type: Uri + x-etsi-mec-cardinality: 0..1 + type: string + format: uri + requestTestNotification: + description: 'Set to TRUE by the service consumer to request a test notification on the callbackReference URI to determine if it is reachable by RNIS for notifications. ' + x-etsi-mec-origin-type: Boolean + x-etsi-mec-cardinality: 0..1 + type: boolean + websockNotifConfig: + # description': Provides details to negotiate and signal the use of a Websocket connection between RNIS and the service consumer for notifications, either in place of the callbackReference URI or if it is not reachable via the test notification. + $ref: '#/components/schemas/WebsockNotifConfig' + # x-etsi-mec-origin-type': WebsockNotifConfig + # x-etsi-mec-cardinality': 0..1 + _links: + $ref: '#/components/schemas/_links' + filterCriteriaQci: + $ref: '#/components/schemas/FilterCriteriaQci1' + expiryDeadline: + # description': Time stamp. + $ref: '#/components/schemas/TimeStamp' + # x-etsi-mec-origin-type': TimeStamp + # x-etsi-mec-cardinality': 0..1 + required: + - subscriptionType + - filterCriteriaQci + x-etsi-notes: "NOTE:\tAt least one of callbackReference and websockNotifConfig shall be provided by the service consumer. If both are provided, it is up to RNIS to select the method to be used for notifications and to return only that method in the response." + MeasRepUeSubscription: + x-etsi-ref: 6.3.6 + type: object + properties: + subscriptionType: + description: Shall be set to "MeasRepUeSubscription". + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + callbackReference: + description: URI selected by the service consumer to receive notifications on the subscribed RNIS information. This shall be included both in the request and in response. If not present, the service consumer is requesting the use of a Websocket for notifications. See note. + x-etsi-mec-origin-type: Uri + x-etsi-mec-cardinality: 0..1 + type: string + format: uri + requestTestNotification: + description: 'Set to TRUE by the service consumer to request a test notification on the callbackReference URI to determine if it is reachable by RNIS for notifications. ' + x-etsi-mec-origin-type: Boolean + x-etsi-mec-cardinality: 0..1 + type: boolean + websockNotifConfig: + # description': Provides details to negotiate and signal the use of a Websocket connection between RNIS and the service consumer for notifications, either in place of the callbackReference URI or if it is not reachable via the test notification. + $ref: '#/components/schemas/WebsockNotifConfig' + # x-etsi-mec-origin-type': WebsockNotifConfig + # x-etsi-mec-cardinality': 0..1 + _links: + $ref: '#/components/schemas/_links' + filterCriteriaAssocTri: + $ref: '#/components/schemas/FilterCriteriaAssocTri' + expiryDeadline: + # description': Time stamp. + $ref: '#/components/schemas/TimeStamp' + # x-etsi-mec-origin-type': TimeStamp + # x-etsi-mec-cardinality': 0..1 + required: + - subscriptionType + - filterCriteriaAssocTri + x-etsi-notes: "NOTE:\tAt least one of callbackReference and websockNotifConfig shall be provided by the service consumer. If both are provided, it is up to RNIS to select the method to be used for notifications and to return only that method in the response." + MeasTaSubscription: + x-etsi-ref: 6.3.7 + type: object + properties: + subscriptionType: + description: Shall be set to "MeasTaSubscription". + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + callbackReference: + description: URI exposed by the client on which to receive notifications via HTTP. See note. + x-etsi-mec-origin-type: Uri + x-etsi-mec-cardinality: 0..1 + type: string + format: uri + requestTestNotification: + description: 'Shall be set to TRUE by the service consumer to request a test notification via HTTP on the callbackReference URI, specified in ETSI GS MEC 009 [6], as described in clause 6.12a. ' + x-etsi-mec-origin-type: Boolean + x-etsi-mec-cardinality: 0..1 + type: boolean + websockNotifConfig: + # description': Provides details to negotiate and signal the use of a Websocket connection between RNIS and the service consumer for notifications. See note. + $ref: '#/components/schemas/WebsockNotifConfig' + # x-etsi-mec-origin-type': WebsockNotifConfig + # x-etsi-mec-cardinality': 0..1 + _links: + $ref: '#/components/schemas/_links' + filterCriteriaAssoc: + $ref: '#/components/schemas/FilterCriteriaAssoc' + expiryDeadline: + # description': Time stamp. + $ref: '#/components/schemas/TimeStamp' + # x-etsi-mec-origin-type': TimeStamp + # x-etsi-mec-cardinality': 0..1 + required: + - subscriptionType + - filterCriteriaAssoc + x-etsi-notes: "NOTE:\tAt least one of callbackReference and websockNotifConfig shall be provided by the service consumer. If both are provided, it is up to RNIS to choose an alternative and return only that alternative in the response, specified in ETSI GS MEC 009 [6], as described in clause 6.12a." + CaReconfSubscription: + x-etsi-ref: 6.3.8 + type: object + properties: + subscriptionType: + description: Shall be set to "CaReconfSubscription". + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + callbackReference: + description: URI exposed by the client on which to receive notifications via HTTP. See note. + x-etsi-mec-origin-type: Uri + x-etsi-mec-cardinality: 0..1 + type: string + format: uri + requestTestNotification: + description: 'Shall be set to TRUE by the service consumer to request a test notification via HTTP on the callbackReference URI, specified in ETSI GS MEC 009 [6], as described in clause 6.12a. ' + x-etsi-mec-origin-type: Boolean + x-etsi-mec-cardinality: 0..1 + type: boolean + websockNotifConfig: + # description': Provides details to negotiate and signal the use of a Websocket connection between RNIS and the service consumer for notifications. See note. + $ref: '#/components/schemas/WebsockNotifConfig' + # x-etsi-mec-origin-type': WebsockNotifConfig + # x-etsi-mec-cardinality': 0..1 + _links: + $ref: '#/components/schemas/_links' + filterCriteriaAssoc: + $ref: '#/components/schemas/FilterCriteriaAssoc' + expiryDeadline: + # description': Time stamp. + $ref: '#/components/schemas/TimeStamp' + # x-etsi-mec-origin-type': TimeStamp + # x-etsi-mec-cardinality': 0..1 + required: + - subscriptionType + - filterCriteriaAssoc + x-etsi-notes: "NOTE:\tAt least one of callbackReference and websockNotifConfig shall be provided by the service consumer. If both are provided, it is up to RNIS to choose an alternative and return only that alternative in the response, specified in ETSI GS MEC 009 [6], as described in clause 6.12a." + S1BearerSubscription: + x-etsi-ref: 6.3.9 + type: object + properties: + subscriptionType: + description: Shall be set to "S1BearerSubscription". + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + callbackReference: + description: URI exposed by the client on which to receive notifications via HTTP. See note. + x-etsi-mec-origin-type: Uri + x-etsi-mec-cardinality: 0..1 + type: string + format: uri + requestTestNotification: + description: "Shall be set to TRUE by the service consumer to request a test notification via HTTP on the callbackReference URI, specified in ETSI GS MEC 009 [6], as described in clause\_6.12a. " + x-etsi-mec-origin-type: Boolean + x-etsi-mec-cardinality: 0..1 + type: boolean + websockNotifConfig: + # description': Provides details to negotiate and signal the use of a Websocket connection between RNIS and the service consumer for notifications. See note. + $ref: '#/components/schemas/WebsockNotifConfig' + # x-etsi-mec-origin-type': WebsockNotifConfig + # x-etsi-mec-cardinality': 0..1 + _links: + $ref: '#/components/schemas/_links' + eventType: + description: "Description of the subscribed event. The event is included both in the request and in the response. \nFor the eventType, the following values are currently defined:\n0 = RESERVED.\n1 = S1_BEARER_ESTABLISH.\n2 = S1_BEARER_MODIFY.\n3 = S1_BEARER_RELEASE." + x-etsi-mec-origin-type: Enum + x-etsi-mec-cardinality: 1..N + type: array + minItems: 1 + items: + type: integer + S1BearerSubscriptionCriteria: + $ref: '#/components/schemas/S1BearerSubscriptionCriteria' + expiryDeadline: + # description': Time stamp. + $ref: '#/components/schemas/TimeStamp' + # x-etsi-mec-origin-type': TimeStamp + # x-etsi-mec-cardinality': 0..1 + required: + - subscriptionType + - eventType + - S1BearerSubscriptionCriteria + x-etsi-notes: "NOTE:\tAt least one of callbackReference and websockNotifConfig shall be provided by the service consumer. If both are provided, it is up to RNIS to choose an alternative and return only that alternative in the response, specified in ETSI GS MEC 009 [6], as described in clause 6.12a." + SubscriptionLinkList: + x-etsi-ref: 6.3.10 + type: object + properties: + _links: + $ref: '#/components/schemas/_links1' + required: + - _links + NrMeasRepUeSubscription: + x-etsi-ref: 6.3.11 + type: object + properties: + subscriptionType: + description: Shall be set to "NrMeasRepUeSubscription". + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + callbackReference: + description: URI exposed by the client on which to receive notifications via HTTP. See note. + x-etsi-mec-origin-type: Uri + x-etsi-mec-cardinality: 0..1 + type: string + format: uri + requestTestNotification: + description: "Shall be set to TRUE by the service consumer to request a test notification via HTTP on the callbackReference URI, specified in ETSI GS\_MEC\_009\_[6], as described in clause 6.12a. " + x-etsi-mec-origin-type: Boolean + x-etsi-mec-cardinality: 0..1 + type: boolean + websockNotifConfig: + # description': Provides details to negotiate and signal the use of a Websocket connection between RNIS and the service consumer for notifications. See note. + $ref: '#/components/schemas/WebsockNotifConfig' + # x-etsi-mec-origin-type': WebsockNotifConfig + # x-etsi-mec-cardinality': 0..1 + _links: + $ref: '#/components/schemas/_links' + filterCriteriaNrMrs: + $ref: '#/components/schemas/FilterCriteriaNrMrs' + expiryDeadline: + # description': Time stamp. + $ref: '#/components/schemas/TimeStamp' + # x-etsi-mec-origin-type': TimeStamp + # x-etsi-mec-cardinality': 0..1 + required: + - subscriptionType + - filterCriteriaNrMrs + x-etsi-notes: "NOTE:\tAt least one of callbackReference and websockNotifConfig shall be provided by the service consumer. If both are provided, it is up to RNIS to choose an alternative and return only that alternative in the response, specified in ETSI GS MEC 009 [6], as described in clause 6.12a." + WebsockNotifConfig: + x-etsi-ref: 6.3.12 + type: object + properties: + websocketUri: + description: Set by RNIS to indicate to the service consumer the Websocket URI to be used for delivering notifications. + x-etsi-mec-origin-type: Uri + x-etsi-mec-cardinality: 0..1 + type: string + format: uri + requestWebsocketUri: + description: Set to true by the service consumer to indicate that Websocket delivery is requested. + x-etsi-mec-origin-type: Boolean + x-etsi-mec-cardinality: 0..1 + type: boolean + CellChangeNotification: + x-etsi-ref: 6.4.2 + type: object + properties: + notificationType: + description: Shall be set to "CellChangeNotification". + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + timeStamp: + # description': Time stamp. + $ref: '#/components/schemas/TimeStamp' + # x-etsi-mec-origin-type': TimeStamp + # x-etsi-mec-cardinality': 0..1 + associateId: + description: 0 to N identifiers to associate the event for a specific UE or flow. + x-etsi-mec-origin-type: AssociateId + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + $ref: '#/components/schemas/AssociateId' + srcEcgi: + # description': E-UTRAN Cell Global Identifier of the source cell. + $ref: '#/components/schemas/Ecgi' + # x-etsi-mec-origin-type': Ecgi + # x-etsi-mec-cardinality': '1' + trgEcgi: + description: E-UTRAN Cell Global Identifier of the target cell. See note. + x-etsi-mec-origin-type: Ecgi + x-etsi-mec-cardinality: 1..N + type: array + minItems: 1 + items: + $ref: '#/components/schemas/Ecgi' + hoStatus: + type: integer + description: 'Indicate the status of the UE handover procedure. Values are defined as following: + + 1 = IN_PREPARATION. + + 2 = IN_EXECUTION. + + 3 = COMPLETED. + + 4 = REJECTED. + + 5 = CANCELLED.' + enum: + - SEE_DESCRIPTION + x-etsi-mec-origin-type: Enum + x-etsi-mec-cardinality: '1' + tempUeId: + $ref: '#/components/schemas/TempUeId' + _links: + description: Links to resources related to this notification. + x-etsi-mec-origin-type: '1' + x-etsi-mec-cardinality: Structure (inlined) + type: array + items: + $ref: '#/components/schemas/1' + subscription: + description: A link to the related subscription. + x-etsi-mec-origin-type: '1' + x-etsi-mec-cardinality: LinkType + type: array + items: + $ref: '#/components/schemas/1' + required: + - notificationType + - srcEcgi + - trgEcgi + - hoStatus + - _links + - subscription + x-etsi-notes: "NOTE:\tCardinality N is valid only in case of statuses IN_PREPARATION, REJECTED and CANCELLED." + RabEstNotification: + x-etsi-ref: 6.4.3 + type: object + properties: + notificationType: + description: Shall be set to "RabEstNotification". + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + timeStamp: + # description': Time stamp. + $ref: '#/components/schemas/TimeStamp' + # x-etsi-mec-origin-type': TimeStamp + # x-etsi-mec-cardinality': 0..1 + ecgi: + # description': E-UTRAN Cell Global Identifier. + $ref: '#/components/schemas/Ecgi' + # x-etsi-mec-origin-type': Ecgi + # x-etsi-mec-cardinality': '1' + associateId: + description: '0 to N identifiers to bind the event for a specific UE or flow. ' + x-etsi-mec-origin-type: AssociateId + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + $ref: '#/components/schemas/AssociateId' + erabId: + description: The attribute that uniquely identifies a Radio Access bearer for specific UE as defined in ETSI TS 136 413 [i.3]. + x-etsi-mec-origin-type: Integer + x-etsi-mec-cardinality: '1' + type: integer + erabQosParameters: + $ref: '#/components/schemas/ErabQosParameters1' + tempUeId: + $ref: '#/components/schemas/TempUeId1' + _links: + description: Links to resources related to this notification. + x-etsi-mec-origin-type: '1' + x-etsi-mec-cardinality: Structure (inlined) + type: array + items: + $ref: '#/components/schemas/1' + subscription: + description: A link to the related subscription. + x-etsi-mec-origin-type: '1' + x-etsi-mec-cardinality: LinkType + type: array + items: + $ref: '#/components/schemas/1' + required: + - notificationType + - ecgi + - erabId + - _links + - subscription + RabModNotification: + x-etsi-ref: 6.4.4 + type: object + properties: + notificationType: + description: Shall be set to "RabModNotification". + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + timeStamp: + # description': Time stamp. + $ref: '#/components/schemas/TimeStamp' + # x-etsi-mec-origin-type': TimeStamp + # x-etsi-mec-cardinality': 0..1 + ecgi: + # description': E-UTRAN Cell Global Identifier. + $ref: '#/components/schemas/Ecgi' + # x-etsi-mec-origin-type': Ecgi + # x-etsi-mec-cardinality': '1' + associateId: + description: '0 to N identifiers to bind the event for a specific UE or flow. ' + x-etsi-mec-origin-type: AssociateId + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + $ref: '#/components/schemas/AssociateId' + erabId: + description: The attribute that uniquely identifies a Radio Access bearer for specific UE as defined in ETSI TS 136 413 [i.3]. + x-etsi-mec-origin-type: Integer + x-etsi-mec-cardinality: '1' + type: integer + erabQosParameters: + $ref: '#/components/schemas/ErabQosParameters2' + _links: + description: Links to resources related to this notification. + x-etsi-mec-origin-type: '1' + x-etsi-mec-cardinality: Structure (inlined) + type: array + items: + $ref: '#/components/schemas/1' + subscription: + description: A link to the related subscription. + x-etsi-mec-origin-type: '1' + x-etsi-mec-cardinality: LinkType + type: array + items: + $ref: '#/components/schemas/1' + required: + - notificationType + - ecgi + - erabId + - _links + - subscription + RabRelNotification: + x-etsi-ref: 6.4.5 + type: object + properties: + notificationType: + description: Shall be set to "RabRelNotification". + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + timeStamp: + # description': Time stamp. + $ref: '#/components/schemas/TimeStamp' + # x-etsi-mec-origin-type': TimeStamp + # x-etsi-mec-cardinality': 0..1 + ecgi: + # description': E-UTRAN Cell Global Identifier. + $ref: '#/components/schemas/Ecgi' + # x-etsi-mec-origin-type': Ecgi + # x-etsi-mec-cardinality': '1' + associateId: + description: 0 to N identifiers to bind the event for a specific UE or flow as defined below. + x-etsi-mec-origin-type: AssociateId + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + $ref: '#/components/schemas/AssociateId' + erabReleaseInfo: + $ref: '#/components/schemas/ErabReleaseInfo' + _links: + description: Links to resources related to this notification. + x-etsi-mec-origin-type: '1' + x-etsi-mec-cardinality: Structure (inlined) + type: array + items: + $ref: '#/components/schemas/1' + subscription: + description: A link to the related subscription. + x-etsi-mec-origin-type: '1' + x-etsi-mec-cardinality: LinkType + type: array + items: + $ref: '#/components/schemas/1' + required: + - notificationType + - ecgi + - erabReleaseInfo + - _links + - subscription + MeasRepUeNotification: + x-etsi-ref: 6.4.6 + type: object + properties: + notificationType: + description: Shall be set to "MeasRepUeNotification". + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + timeStamp: + # description': Time stamp. + $ref: '#/components/schemas/TimeStamp' + # x-etsi-mec-origin-type': TimeStamp + # x-etsi-mec-cardinality': 0..1 + ecgi: + # description': E-UTRAN Cell Global Identifier of the Primary serving Cell (PCell), as defined in ETSI TS 136 331 [i.7]. + $ref: '#/components/schemas/Ecgi' + # x-etsi-mec-origin-type': Ecgi + # x-etsi-mec-cardinality': '1' + associateId: + description: 0 to N identifiers to associate the event for a specific UE or flow. + x-etsi-mec-origin-type: AssociateId + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + $ref: '#/components/schemas/AssociateId' + rsrp: + description: "Reference Signal Received Power as defined in ETSI TS\_136 214 [i.5]." + x-etsi-mec-origin-type: Uint8 + x-etsi-mec-cardinality: '1' + type: integer + format: uint8 + rsrpEx: + description: Extended Reference Signal Received Power, with value mapping defined in ETSI TS 136 133 [i.16]. + x-etsi-mec-origin-type: Uint8 + x-etsi-mec-cardinality: 0..1 + type: integer + format: uint8 + rsrq: + description: Reference Signal Received Quality as defined in ETSI TS 136 214 [i.5]. + x-etsi-mec-origin-type: Uint8 + x-etsi-mec-cardinality: '1' + type: integer + format: uint8 + rsrqEx: + description: Extended Reference Signal Received Quality, with value mapping defined in ETSI TS 136 133 [i.16]. + x-etsi-mec-origin-type: Uint8 + x-etsi-mec-cardinality: 0..1 + type: integer + format: uint8 + sinr: + description: "Reference Signal \"Signal to Interference plus Noise Ratio\", with value mapping defined in ETSI TS\_136\_133\_[i.16]." + x-etsi-mec-origin-type: Uint8 + x-etsi-mec-cardinality: 0..1 + type: integer + format: uint8 + trigger: + # description': Corresponds to a specific E-UTRAN UE Measurement Report trigger. + $ref: '#/components/schemas/Trigger' + # x-etsi-mec-origin-type': Trigger + # x-etsi-mec-cardinality': '1' + eutranNeighbourCellMeasInfo: + type: array + items: + $ref: '#/components/schemas/EutranNeighbourCellMeasInfo' + carrierAggregationMeasInfo: + type: array + items: + $ref: '#/components/schemas/CarrierAggregationMeasInfo' + heightUe: + description: Indicates height of the UE in meters relative to the sea level as defined in ETSI TS 136 331 [i.7]. + x-etsi-mec-origin-type: Int + x-etsi-mec-cardinality: 0..1 + type: integer + newRadioMeasInfo: + type: array + items: + $ref: '#/components/schemas/NewRadioMeasInfo' + newRadioMeasNeiInfo: + type: array + items: + $ref: '#/components/schemas/NewRadioMeasNeiInfo' + _links: + description: Links to resources related to this notification. + x-etsi-mec-origin-type: '1' + x-etsi-mec-cardinality: Structure (inlined) + type: array + items: + $ref: '#/components/schemas/1' + subscription: + description: A link to the related subscription. + x-etsi-mec-origin-type: '1' + x-etsi-mec-cardinality: LinkType + type: array + items: + $ref: '#/components/schemas/1' + required: + - notificationType + - ecgi + - rsrp + - rsrq + - trigger + - _links + - subscription + MeasTaNotification: + x-etsi-ref: 6.4.7 + type: object + properties: + notificationType: + description: Shall be set to "MeasTaNotification". + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + timeStamp: + # description': Time stamp. + $ref: '#/components/schemas/TimeStamp' + # x-etsi-mec-origin-type': TimeStamp + # x-etsi-mec-cardinality': 0..1 + ecgi: + # description': E-UTRAN Cell Global Identifier. + $ref: '#/components/schemas/Ecgi' + # x-etsi-mec-origin-type': Ecgi + # x-etsi-mec-cardinality': '1' + associateId: + description: 0 to N identifiers to associate the event for a specific UE or flow. + x-etsi-mec-origin-type: AssociateId + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + $ref: '#/components/schemas/AssociateId' + timingAdvance: + description: The timing advance as defined in ETSI TS 136 214 [i.5]. + x-etsi-mec-origin-type: Uint32 + x-etsi-mec-cardinality: '1' + type: integer + format: uint32 + _links: + description: Links to resources related to this notification. + x-etsi-mec-origin-type: '1' + x-etsi-mec-cardinality: Structure (inlined) + type: array + items: + $ref: '#/components/schemas/1' + subscription: + description: A link to the related subscription. + x-etsi-mec-origin-type: '1' + x-etsi-mec-cardinality: LinkType + type: array + items: + $ref: '#/components/schemas/1' + required: + - notificationType + - ecgi + - timingAdvance + - _links + - subscription + CaReconfNotification: + x-etsi-ref: 6.4.8 + type: object + properties: + notificationType: + description: Shall be set to "CaReconfNotification". + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + timeStamp: + # description': Time stamp. + $ref: '#/components/schemas/TimeStamp' + # x-etsi-mec-origin-type': TimeStamp + # x-etsi-mec-cardinality': 0..1 + ecgi: + # description': E-UTRAN Cell Global Identifier. + $ref: '#/components/schemas/Ecgi' + # x-etsi-mec-origin-type': Ecgi + # x-etsi-mec-cardinality': '1' + associateId: + description: 0 to N identifiers to associate the event for a specific UE or flow. + x-etsi-mec-origin-type: AssociateId + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + $ref: '#/components/schemas/AssociateId' + secondaryCellAdd: + type: array + items: + $ref: '#/components/schemas/SecondaryCellAdd' + secondaryCellRemove: + type: array + items: + $ref: '#/components/schemas/SecondaryCellRemove' + carrierAggregationMeasInfo: + type: array + items: + $ref: '#/components/schemas/CarrierAggregationMeasInfo1' + _links: + description: Links to resources related to this notification. + x-etsi-mec-origin-type: '1' + x-etsi-mec-cardinality: Structure (inlined) + type: array + items: + $ref: '#/components/schemas/1' + subscription: + description: A link to the related subscription. + x-etsi-mec-origin-type: '1' + x-etsi-mec-cardinality: LinkType + type: array + items: + $ref: '#/components/schemas/1' + required: + - notificationType + - ecgi + - _links + - subscription + ExpiryNotification: + x-etsi-ref: 6.4.9 + type: object + properties: + notificationType: + description: Shall be set to "ExpiryNotification" + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + timeStamp: + # description': Time stamp of the notification. + $ref: '#/components/schemas/TimeStamp' + # x-etsi-mec-origin-type': TimeStamp + # x-etsi-mec-cardinality': 0..1 + _links: + $ref: '#/components/schemas/_links2' + expiryDeadline: + # description': Time stamp of the notification expiry. + $ref: '#/components/schemas/TimeStamp' + # x-etsi-mec-origin-type': TimeStamp + # x-etsi-mec-cardinality': '1' + required: + - notificationType + - _links + - expiryDeadline + S1BearerNotification: + x-etsi-ref: 6.4.10 + type: object + properties: + notificationType: + description: Shall be set to "S1BearerNotification". + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + timeStamp: + # description': Time stamp. + $ref: '#/components/schemas/TimeStamp' + # x-etsi-mec-origin-type': TimeStamp + # x-etsi-mec-cardinality': 0..1 + s1Event: + type: string + description: The subscribed event that triggered this notification in S1BearerSubscription. + enum: + - SEE_DESCRIPTION + x-etsi-mec-origin-type: Enum + x-etsi-mec-cardinality: '1' + s1UeInfo: + $ref: '#/components/schemas/S1UeInfo1' + _links: + description: Links to resources related to this notification. + x-etsi-mec-origin-type: '1' + x-etsi-mec-cardinality: Structure (inlined) + type: array + items: + $ref: '#/components/schemas/1' + subscription: + description: A link to the related subscription. + x-etsi-mec-origin-type: '1' + x-etsi-mec-cardinality: LinkType + type: array + items: + $ref: '#/components/schemas/1' + required: + - notificationType + - s1Event + - s1UeInfo + - _links + - subscription + NrMeasRepUeNotification: + x-etsi-ref: 6.4.11 + type: object + properties: + notificationType: + description: Shall be set to "NrMeasRepUeNotification". + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + timeStamp: + # description': Time stamp. + $ref: '#/components/schemas/TimeStamp' + # x-etsi-mec-origin-type': TimeStamp + # x-etsi-mec-cardinality': 0..1 + associateId: + description: 0 to N identifiers to associate the event for a specific UE or flow. + x-etsi-mec-origin-type: AssociateId + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + $ref: '#/components/schemas/AssociateId' + triggerNr: + # description': Corresponds to a specific 5G UE Measurement Report trigger. + $ref: '#/components/schemas/TriggerNr' + # x-etsi-mec-origin-type': TriggerNr + # x-etsi-mec-cardinality': '1' + servCellMeasInfo: + type: array + items: + $ref: '#/components/schemas/ServCellMeasInfo' + nrNeighCellMeasInfo: + type: array + items: + $ref: '#/components/schemas/NrNeighCellMeasInfo' + eutraNeighCellMeasInfo: + type: array + items: + $ref: '#/components/schemas/EutraNeighCellMeasInfo' + _links: + description: Links to resources related to this notification. + x-etsi-mec-origin-type: '1' + x-etsi-mec-cardinality: Structure (inlined) + type: array + items: + $ref: '#/components/schemas/1' + subscription: + description: A link to the related subscription. + x-etsi-mec-origin-type: '1' + x-etsi-mec-cardinality: LinkType + type: array + items: + $ref: '#/components/schemas/1' + required: + - notificationType + - triggerNr + - _links + - subscription + TestNotification: + x-etsi-ref: 6.4.12 + type: object + properties: + notificationType: + description: Shall be set to "TestNotification". + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + _links: + $ref: '#/components/schemas/_links3' + required: + - notificationType + - _links + LinkType: + x-etsi-ref: 6.5.2 + type: object + properties: + href: + description: URI referring to a resource + x-etsi-mec-origin-type: Uri + x-etsi-mec-cardinality: '1' + type: string + format: uri + required: + - href + TimeStamp: + x-etsi-ref: 6.5.3 + type: object + properties: + seconds: + description: The seconds part of the time. Time is defined as Unixtime since January 1, 1970, 00:00:00 UTC. + x-etsi-mec-origin-type: Uint32 + x-etsi-mec-cardinality: '1' + type: integer + format: uint32 + nanoSeconds: + description: The nanoseconds part of the time. Time is defined as Unix-time since January 1, 1970, 00:00:00 UTC. + x-etsi-mec-origin-type: Uint32 + x-etsi-mec-cardinality: '1' + type: integer + format: uint32 + required: + - seconds + - nanoSeconds + AssociateId: + x-etsi-ref: 6.5.4 + type: object + properties: + type: + type: integer + description: 'Numeric value (0-255) corresponding to specified type of identifier as following: + + 0 = reserved. + + 1= UE_IPv4_ADDRESS. + + 2 = UE_IPV6_ADDRESS. + + 3 = NATED_IP_ADDRESS. + + 4 = GTP_TEID.' + enum: + - SEE_DESCRIPTION + x-etsi-mec-origin-type: Enum + x-etsi-mec-cardinality: '1' + value: + description: Value for the identifier. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + required: + - type + - value + Plmn: + x-etsi-ref: 6.5.5 + type: object + properties: + mcc: + description: The Mobile Country Code part of PLMN Identity as defined in ETSI TS 136 413 [i.3]. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + mnc: + description: The Mobile Network Code part of PLMN Identity as defined in ETSI TS 136 413 [i.3]. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + required: + - mcc + - mnc + Ecgi: + x-etsi-ref: 6.5.6 + type: object + properties: + plmn: + # description': Public Land Mobile Network Identity. + $ref: '#/components/schemas/Plmn' + # x-etsi-mec-origin-type': Plmn + # x-etsi-mec-cardinality': '1' + cellId: + # description': E-UTRAN Cell Global Identifier. + $ref: '#/components/schemas/CellId' + # x-etsi-mec-origin-type': CellId + # x-etsi-mec-cardinality': '1' + required: + - plmn + - cellId + Nrcgi: + x-etsi-ref: 6.5.7 + type: object + properties: + plmn: + # description': Public Land Mobile Network Identity. + $ref: '#/components/schemas/Plmn' + # x-etsi-mec-origin-type': Plmn + # x-etsi-mec-cardinality': '1' + nrCellId: + # description': NR Cell Global Identifier. + $ref: '#/components/schemas/NrCellId' + # x-etsi-mec-origin-type': NrCellId + # x-etsi-mec-cardinality': '1' + required: + - plmn + - nrCellId + RsIndexResults: + x-etsi-ref: 6.5.8 + type: object + properties: + resultsSsbIndexes: + # description': Beam level measurement results based on SS/PBCH related measurements. + $ref: '#/components/schemas/ResultsPerSsbIndexList' + # x-etsi-mec-origin-type': ResultsPerSsbIndexList + # x-etsi-mec-cardinality': '1' + resultsCsiRsIndexes: + # description': Beam level measurement results based on CSI-RS related measurements. + $ref: '#/components/schemas/ResultsPerCsiRsIndexList' + # x-etsi-mec-origin-type': ResultsPerCsiRsIndexList + # x-etsi-mec-cardinality': '1' + required: + - resultsSsbIndexes + - resultsCsiRsIndexes + ResultsPerSsbIndexList: + x-etsi-ref: 6.5.9 + type: object + properties: + resultsPerSsbIndex: + type: array + items: + $ref: '#/components/schemas/ResultsPerSsbIndex' + ResultsPerCsiRsIndexList: + x-etsi-ref: 6.5.10 + type: object + properties: + resultsPerCsiRsIndex: + type: array + items: + $ref: '#/components/schemas/ResultsPerCsiRsIndex' + MeasQuantityResultsNr: + x-etsi-ref: 6.5.11 + type: object + properties: + rsrp: + description: "Reference Signal Received Power as defined in ETSI TS\_138 331 [i.13]." + x-etsi-mec-origin-type: Uint8 + x-etsi-mec-cardinality: 0..1 + type: integer + format: uint8 + rsrq: + description: "Reference Signal Received Quality as defined in ETSI TS\_138 331 [i.13]." + x-etsi-mec-origin-type: Uint8 + x-etsi-mec-cardinality: 0..1 + type: integer + format: uint8 + sinr: + description: Reference Signal to Interference & Noise Ratio as defined in ETSI TS 138 331 [i.13]. + x-etsi-mec-origin-type: Uint8 + x-etsi-mec-cardinality: 0..1 + type: integer + format: uint8 + QosInformation: + description: The QoS information for the E-RAB. + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: 0..1 + type: object + properties: + erabMbrDl: + description: This attribute indicates the maximum downlink ERAB Bit Rate as defined in ETSI TS 123 401 [i.4] for this bearer. + x-etsi-mec-origin-type: Integer + x-etsi-mec-cardinality: '1' + type: integer + erabMbrUl: + description: This attribute indicates the maximum uplink E-RAB Bit Rate as defined in ETSI TS 123 401 [i.4] for this bearer. + x-etsi-mec-origin-type: Integer + x-etsi-mec-cardinality: '1' + type: integer + erabGbrDl: + description: This attribute indicates the guaranteed downlink ERAB Bit Rate as defined in ETSI TS 123 401 [i.4] for this bearer. + x-etsi-mec-origin-type: Integer + x-etsi-mec-cardinality: '1' + type: integer + erabGbrUl: + description: This attribute indicates the guaranteed uplink ERAB Bit Rate as defined in ETSI TS 123 401 [i.4] for this bearer. + x-etsi-mec-origin-type: Integer + x-etsi-mec-cardinality: '1' + type: integer + required: + - erabMbrDl + - erabMbrUl + - erabGbrDl + - erabGbrUl + ErabQosParameters: + description: QoS parameters for the E-RAB as defined below. + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: 0..1 + type: object + properties: + qci: + description: "QoS Class Identifier as defined in ETSI TS\_123\_401\_[i.4]." + x-etsi-mec-origin-type: Integer + x-etsi-mec-cardinality: '1' + type: integer + qosInformation: + $ref: '#/components/schemas/QosInformation' + required: + - qci + ErabInfo: + description: Information on E-RAB as defined below. + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: 1..N + type: object + minItems: 1 + properties: + erabId: + description: "The attribute that uniquely identifies a Radio Access bearer for specific UE as defined in ETSI TS\_136\_413\_[i.3]." + x-etsi-mec-origin-type: Integer + x-etsi-mec-cardinality: '1' + type: integer + erabQosParameters: + $ref: '#/components/schemas/ErabQosParameters' + required: + - erabId + UeInfo: + description: Information on UEs in the specific cell as defined below. + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: 1..N + type: object + minItems: 1 + properties: + associateId: + description: 0 to N identifiers to associate the event for a specific UE or flow. + x-etsi-mec-origin-type: AssociateId + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + $ref: '#/components/schemas/AssociateId' + erabInfo: + type: array + items: + $ref: '#/components/schemas/ErabInfo' + required: + - erabInfo + CellUserInfo: + description: The information on users per cell as defined below. + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: 0..N + type: object + minItems: 0 + properties: + ecgi: + # description': E-UTRAN Cell Global Identifier. + $ref: '#/components/schemas/Ecgi' + # x-etsi-mec-origin-type': Ecgi + # x-etsi-mec-cardinality': '1' + ueInfo: + type: array + items: + $ref: '#/components/schemas/UeInfo' + required: + - ecgi + - ueInfo + TempUeId: + description: The temporary identifier allocated for the specific UE as defined below. + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: 0..1 + type: object + properties: + mmec: + description: MMEC as defined in ETSI TS 136 413 [i.3]. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + mtmsi: + description: M-TMSI as defined in ETSI TS 136 413 [i.3]. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + required: + - mmec + - mtmsi + EnbInfo: + description: S1 bearer information on eNB side as defined below. + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: '1' + type: object + properties: + ipAddress: + description: eNB transport layer address of this S1 bearer. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + tunnelId: + description: eNB GTP-U TEID of this S1 bearer. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + required: + - ipAddress + - tunnelId + SGwInfo: + description: S1 bearer information on GW side as defined below. + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: '1' + type: object + properties: + ipAddress: + description: SGW transport layer address of this S1 bearer. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + tunnelId: + description: SGW GTP-U TEID of this S1 bearer. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + required: + - ipAddress + - tunnelId + S1BearerInfoDetailed: + description: S1 bearer information as defined below. + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: 1..N + type: object + minItems: 1 + properties: + erabId: + description: The attribute that uniquely identifies a S1 bearer for a specific UE, as defined in ETSI TS 136 413 [i.3]. + x-etsi-mec-origin-type: Integer + x-etsi-mec-cardinality: '1' + type: integer + enbInfo: + $ref: '#/components/schemas/EnbInfo' + sGwInfo: + $ref: '#/components/schemas/SGwInfo' + required: + - erabId + - enbInfo + - sGwInfo + S1UeInfo: + description: Information on a specific UE as defined below. + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: 1..N + type: object + minItems: 1 + properties: + tempUeId: + $ref: '#/components/schemas/TempUeId' + associateId: + description: 1 to N identifiers to associate the information for a specific UE or flow. + x-etsi-mec-origin-type: AssociateId + x-etsi-mec-cardinality: 1..N + type: array + minItems: 1 + items: + $ref: '#/components/schemas/AssociateId' + ecgi: + description: E-UTRAN Cell Global Identifier. + x-etsi-mec-origin-type: Ecgi + x-etsi-mec-cardinality: 1..N + type: array + minItems: 1 + items: + $ref: '#/components/schemas/Ecgi' + s1BearerInfoDetailed: + type: array + items: + $ref: '#/components/schemas/S1BearerInfoDetailed' + required: + - associateId + - ecgi + - s1BearerInfoDetailed + CellInfo: + description: The per cell measurement information as defined below. + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: 0..N + type: object + minItems: 0 + properties: + ecgi: + # description': E-UTRAN Cell Global Identifier. + $ref: '#/components/schemas/Ecgi' + # x-etsi-mec-origin-type': Ecgi + # x-etsi-mec-cardinality': '1' + dl_gbr_prb_usage_cell: + description: It indicates the PRB usage for downlink GBR traffic, as defined in ETSI TS 136 314 [i.11] and ETSI TS 136 423 [i.12]. + x-etsi-mec-origin-type: Integer + x-etsi-mec-cardinality: 0..1 + type: integer + ul_gbr_prb_usage_cell: + description: "It indicates (in percentage) the PRB usage for uplink GBR traffic, as defined in ETSI TS\_136\_314\_[i.11] and ETSI TS\_136 423 [i.12]." + x-etsi-mec-origin-type: Integer + x-etsi-mec-cardinality: 0..1 + type: integer + dl_nongbr_prb_usage_cell: + description: "It indicates (in percentage) the PRB usage for downlink non-GBR traffic, as defined in ETSI TS\_136\_314 [i.11] and ETSI TS\_136 423 [i.12]." + x-etsi-mec-origin-type: Integer + x-etsi-mec-cardinality: 0..1 + type: integer + ul_nongbr_prb_usage_cell: + description: "It indicates (in percentage) the PRB usage for uplink non-GBR traffic, as defined in ETSI TS\_136\_314 [i.11] and ETSI TS\_136 423 [i.12]." + x-etsi-mec-origin-type: Integer + x-etsi-mec-cardinality: 0..1 + type: integer + dl_total_prb_usage_cell: + description: "It indicates (in percentage) the PRB usage for total downlink traffic, as defined in ETSI TS\_136\_314 [i.11] and ETSI TS\_136 423 [i.12]." + x-etsi-mec-origin-type: Integer + x-etsi-mec-cardinality: 0..1 + type: integer + ul_total_prb_usage_cell: + description: "It indicates (in percentage) the PRB usage for total uplink traffic, as defined in ETSI TS\_136\_314\_[i.11] and ETSI TS\_136\_423 [i.12]." + x-etsi-mec-origin-type: Integer + x-etsi-mec-cardinality: 0..1 + type: integer + received_dedicated_preambles_cell: + description: It indicates (in percentage) the received dedicated preambles, as defined in ETSI TS 136 314 [i.11]. + x-etsi-mec-origin-type: Integer + x-etsi-mec-cardinality: 0..1 + type: integer + received_randomly_selected _preambles_low_range_cell: + description: It indicates (in percentage) the received randomly selected preambles in the low range, as defined in ETSI TS 136 314 [i.11]. + x-etsi-mec-origin-type: Integer + x-etsi-mec-cardinality: 0..1 + type: integer + received_randomly_selected _preambles_high_range_cell: + description: It indicates (in percentage) the received randomly selected preambles in the high range, as defined in ETSI TS 136 314 [i.11]. + x-etsi-mec-origin-type: Integer + x-etsi-mec-cardinality: 0..1 + type: integer + number_of_active_ue_dl_gbr_cell: + description: It indicates the number of active UEs with downlink GBR traffic, as defined in ETSI TS 136 314 [i.11]. + x-etsi-mec-origin-type: Integer + x-etsi-mec-cardinality: 0..1 + type: integer + number_of_active_ue_ul_gbr_cell: + description: It indicates the number of active UEs with uplink GBR traffic, as defined in ETSI TS 136 314 [i.11]. + x-etsi-mec-origin-type: Integer + x-etsi-mec-cardinality: 0..1 + type: integer + number_of_active_ue_dl_nongbr_cell: + description: "It indicates the number of active UEs with downlink non-GBR traffic, as defined in ETSI TS\_136\_314 [i.11]." + x-etsi-mec-origin-type: Integer + x-etsi-mec-cardinality: 0..1 + type: integer + number_of_active_ue_ul_nongbr_cell: + description: "It indicates the number of active UEs with uplink non-GBR traffic, as defined in ETSI TS\_136\_314\_[i.11]." + x-etsi-mec-origin-type: Integer + x-etsi-mec-cardinality: 0..1 + type: integer + dl_gbr_pdr_cell: + description: It indicates the packet discard rate in percentage of the downlink GBR traffic in a cell, as defined in ETSI TS 136 314 [i.11]. + x-etsi-mec-origin-type: Integer + x-etsi-mec-cardinality: 0..1 + type: integer + ul_gbr_pdr_cell: + description: It indicates the packet discard rate in percentage of the uplink GBR traffic in a cell, as defined in ETSI TS 136 314 [i.11]. + x-etsi-mec-origin-type: Integer + x-etsi-mec-cardinality: 0..1 + type: integer + dl_nongbr_pdr_cell: + description: It indicates the packet discard rate in percentage of the downlink nonGBR traffic in a cell, as defined in ETSI TS 136 314 [i.11]. + x-etsi-mec-origin-type: Integer + x-etsi-mec-cardinality: 0..1 + type: integer + ul_nongbr_pdr_cell: + description: It indicates the packet discard rate in percentage of the uplink nonGBR traffic in a cell, as defined in ETSI TS 136 314 [i.11]. + x-etsi-mec-origin-type: Integer + x-etsi-mec-cardinality: 0..1 + type: integer + required: + - ecgi + CellUEInfo: + description: The per cell per UE layer 2 measurements information as defined below. + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: 0..N + type: object + minItems: 0 + properties: + ecgi: + # description': E-UTRAN Cell Global Identifier. + $ref: '#/components/schemas/Ecgi' + # x-etsi-mec-origin-type': Ecgi + # x-etsi-mec-cardinality': '1' + associateId: + # description': Identifier to associate the information for a specific UE or flow. + $ref: '#/components/schemas/AssociateId' + # x-etsi-mec-origin-type': AssociateId + # x-etsi-mec-cardinality': '1' + dl_gbr_delay_ue: + description: It indicates the packet delay of the downlink GBR traffic of a UE, as defined in ETSI TS 136 314 [i.11]. + x-etsi-mec-origin-type: Integer + x-etsi-mec-cardinality: 0..1 + type: integer + ul_gbr_delay_ue: + description: It indicates the packet delay of the uplink GBR traffic of a UE, as defined in ETSI TS 136 314 [i.11]. + x-etsi-mec-origin-type: Integer + x-etsi-mec-cardinality: 0..1 + type: integer + dl_nongbr_delay_ue: + description: "It indicates the packet delay of the downlink non-GBR traffic of a UE, as defined in ETSI TS\_136\_314\_[i.11]." + x-etsi-mec-origin-type: Integer + x-etsi-mec-cardinality: 0..1 + type: integer + ul_nongbr_delay_ue: + description: It indicates the packet delay of the uplink non-GBR traffic of a UE, as defined in ETSI TS 136 314 [i.11]. + x-etsi-mec-origin-type: Integer + x-etsi-mec-cardinality: 0..1 + type: integer + dl_gbr_pdr_ue: + description: It indicates the packet discard rate in percentage of the downlink GBR traffic of a UE, as defined in ETSI TS 136 314 [i.11]. + x-etsi-mec-origin-type: Integer + x-etsi-mec-cardinality: 0..1 + type: integer + ul_gbr_pdr_ue: + description: It indicates the packet discard rate in percentage of the uplink GBR traffic of a UE, as defined in ETSI TS 136 314 [i.11]. + x-etsi-mec-origin-type: Integer + x-etsi-mec-cardinality: 0..1 + type: integer + dl_nongbr_pdr_ue: + description: It indicates the packet discard rate in percentage of the downlink nonGBR traffic of a UE, as defined in ETSI TS 136 314 [i.11]. + x-etsi-mec-origin-type: Integer + x-etsi-mec-cardinality: 0..1 + type: integer + ul_nongbr_pdr_ue: + description: It indicates the packet discard rate in percentage of the uplink nonGBR traffic of a UE, as defined in ETSI TS 136 314 [i.11]. + x-etsi-mec-origin-type: Integer + x-etsi-mec-cardinality: 0..1 + type: integer + dl_gbr_throughput_ue: + description: It indicates the scheduled throughput of the downlink GBR traffic of a UE, as defined in ETSI TS 136 314 [i.11]. + x-etsi-mec-origin-type: Integer + x-etsi-mec-cardinality: 0..1 + type: integer + ul_gbr_throughput_ue: + description: It indicates the scheduled throughput of the uplink GBR traffic of a UE, as defined in ETSI TS 136 314 [i.11]. + x-etsi-mec-origin-type: Integer + x-etsi-mec-cardinality: 0..1 + type: integer + dl_nongbr_throughput_ue: + description: It indicates the scheduled throughput of the downlink nonGBR traffic of a UE, as defined in ETSI TS 136 314 [i.11]. + x-etsi-mec-origin-type: Integer + x-etsi-mec-cardinality: 0..1 + type: integer + ul_nongbr_throughput_ue: + description: It indicates the scheduled throughput of the uplink non-GBR traffic of a UE, as defined in ETSI TS 136 314 [i.11]. + x-etsi-mec-origin-type: Integer + x-etsi-mec-cardinality: 0..1 + type: integer + dl_gbr_data_volume_ue: + description: It indicates the data volume of the downlink GBR traffic of a UE, as defined in ETSI TS 136 314 [i.11]. + x-etsi-mec-origin-type: Integer + x-etsi-mec-cardinality: 0..1 + type: integer + ul_gbr_data_volume_ue: + description: It indicates the data volume of the uplink GBR traffic of a UE, as defined in ETSI TS 136 314 [i.11]. + x-etsi-mec-origin-type: Integer + x-etsi-mec-cardinality: 0..1 + type: integer + dl_nongbr_data_volume_ue: + description: "It indicates the data volume of the downlink non-GBR traffic of a UE, as defined in ETSI TS\_136\_314\_[i.11]." + x-etsi-mec-origin-type: Integer + x-etsi-mec-cardinality: 0..1 + type: integer + ul_nongbr_data_volume_ue: + description: It indicates the data volume of the uplink non-GBR traffic of a UE, as defined in ETSI TS 136 314 [i.11]. + x-etsi-mec-origin-type: Integer + x-etsi-mec-cardinality: 0..1 + type: integer + required: + - ecgi + - associateId + _links: + description: Hyperlink related to the resource. This shall be only included in the HTTP responses and in HTTP PUT requests. + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: 0..1 + type: object + properties: + self: + # description': Self-referring URI. The URI shall be unique within the RNI API as it acts as an ID for the subscription. + $ref: '#/components/schemas/LinkType' + # x-etsi-mec-origin-type': LinkType + # x-etsi-mec-cardinality': '1' + required: + - self + FilterCriteriaAssocHo: + description: List of filtering criteria for the subscription. Any filtering criteria from below, which is included in the request, shall also be included in the response. + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: '1' + type: object + properties: + appInstanceId: + description: Unique identifier for the MEC application instance. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + associateId: + description: 0 to N identifiers to associate the information for a specific UE or flow. + x-etsi-mec-origin-type: AssociateId + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + $ref: '#/components/schemas/AssociateId' + ecgi: + description: E-UTRAN Cell Global Identifier. + x-etsi-mec-origin-type: Ecgi + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + $ref: '#/components/schemas/Ecgi' + hoStatus: + description: 'In case hoStatus is not included in the subscription request, the default value 3 = COMPLETED shall be used and included in the response: + + 1 = IN_PREPARATION. + + 2 = IN_EXECUTION. + + 3 = COMPLETED. + + 4 = REJECTED. + + 5 = CANCELLED.' + x-etsi-mec-origin-type: Enum + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + type: integer + FilterCriteriaQci: + description: List of filtering criteria for the subscription. Any filtering criteria from below, which is included in the request, shall also be included in the response. + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: '1' + type: object + properties: + appInstanceId: + description: Unique identifier for the MEC application instance. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + ecgi: + description: E-UTRAN Cell Global Identifier. + x-etsi-mec-origin-type: Ecgi + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + $ref: '#/components/schemas/Ecgi' + qci: + description: QoS Class Identifier as defined in ETSI TS 123 401 [i.4]. + x-etsi-mec-origin-type: Integer + x-etsi-mec-cardinality: '1' + type: integer + required: + - qci + FilterCriteriaQci1: + description: List of filtering criteria for the subscription. Any filtering criteria from below, which is included in the request, shall also be included in the response. + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: '1' + type: object + properties: + appInstanceId: + description: Unique identifier for the MEC application instance. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + erabId: + description: The attribute that uniquely identifies a Radio Access bearer for specific UE as defined in ETSI TS 136 413 [i.3]. + x-etsi-mec-origin-type: Integer + x-etsi-mec-cardinality: '1' + type: integer + ecgi: + description: E-UTRAN Cell Global Identifier. + x-etsi-mec-origin-type: Ecgi + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + $ref: '#/components/schemas/Ecgi' + qci: + description: QoS Class Identifier as defined in ETSI TS 123 401 [i.4]. + x-etsi-mec-origin-type: Integer + x-etsi-mec-cardinality: '1' + type: integer + required: + - erabId + - qci + FilterCriteriaAssocTri: + description: List of filtering criteria for the subscription. Any filtering criteria from below, which is included in the request, shall also be included in the response. + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: '1' + type: object + properties: + appInstanceId: + description: Unique identifier for the MEC application instance. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + associateId: + description: 0 to N identifiers to associate the information for a specific UE or flow. + x-etsi-mec-origin-type: AssociateId + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + $ref: '#/components/schemas/AssociateId' + ecgi: + description: E-UTRAN Cell Global Identifier. + x-etsi-mec-origin-type: Ecgi + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + $ref: '#/components/schemas/Ecgi' + trigger: + description: Corresponds to a specific E-UTRAN UE Measurement Report trigger. + x-etsi-mec-origin-type: Trigger + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + $ref: '#/components/schemas/Trigger' + FilterCriteriaAssoc: + description: List of filtering criteria for the subscription. Any filtering criteria from below, which is included in the request, shall also be included in the response. + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: '1' + type: object + properties: + appInstanceId: + description: Unique identifier for the MEC application instance. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + associateId: + description: 0 to N identifiers to associate the information for a specific UE or flow. + x-etsi-mec-origin-type: AssociateId + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + $ref: '#/components/schemas/AssociateId' + ecgi: + description: E-UTRAN Cell Global Identifier. + x-etsi-mec-origin-type: Ecgi + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + $ref: '#/components/schemas/Ecgi' + S1BearerSubscriptionCriteria: + description: As defined below. + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: '1' + type: object + properties: + associateId: + description: 0 to N identifiers to associate the events for a specific UE or a flow. + x-etsi-mec-origin-type: AssociateId + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + $ref: '#/components/schemas/AssociateId' + ecgi: + description: E-UTRAN Cell Global Identifier. + x-etsi-mec-origin-type: Ecgi + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + $ref: '#/components/schemas/Ecgi' + erabId: + description: The attribute that uniquely identifies a S1 bearer for a specific UE, as defined in ETSI TS 136 413 [i.3]. + x-etsi-mec-origin-type: Integer + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + type: integer + Subscription: + description: A link to a subscription. + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: 0..N + type: object + minItems: 0 + properties: + href: + description: The URI referring to the subscription. + x-etsi-mec-origin-type: Uri + x-etsi-mec-cardinality: '1' + type: string + format: uri + subscriptionType: + description: "Type of the subscription. The string shall be set according to the \"subscriptionType\" attribute of the associated subscription data type event defined in clause\_6.3." + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + required: + - href + - subscriptionType + _links1: + description: List of hyperlinks related to the resource. + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: '1' + type: object + properties: + self: + # description': '' + $ref: '#/components/schemas/LinkType' + # x-etsi-mec-origin-type': LinkType + # x-etsi-mec-cardinality': '1' + subscription: + type: array + items: + $ref: '#/components/schemas/Subscription' + required: + - self + FilterCriteriaNrMrs: + description: List of filtering criteria for the subscription. Any filtering criteria from below, which is included in the request, shall also be included in the response. + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: '1' + type: object + properties: + appInstanceId: + description: Unique identifier for the MEC application instance. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + associateId: + description: 0 to N identifiers to associate the information for a specific UE or flow. + x-etsi-mec-origin-type: AssociateId + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + $ref: '#/components/schemas/AssociateId' + nrcgi: + description: NR Cell Global Identifier. + x-etsi-mec-origin-type: NRcgi + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + $ref: '#/components/schemas/NRcgi' + triggerNr: + description: Corresponds to a specific 5G UE Measurement Report trigger. + x-etsi-mec-origin-type: TriggerNr + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + $ref: '#/components/schemas/TriggerNr' + QosInformation1: + description: The QoS information for the E-RAB. + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: 0..1 + type: object + properties: + erabMbrDl: + description: This attribute indicates the maximum downlink E-RAB Bit Rate as defined in ETSI TS 123 401 [i.4] for this bearer. + x-etsi-mec-origin-type: Integer + x-etsi-mec-cardinality: '1' + type: integer + erabMbrUl: + description: This attribute indicates the maximum uplink E-RAB Bit Rate as defined in ETSI TS 123 401 [i.4] for this bearer. + x-etsi-mec-origin-type: Integer + x-etsi-mec-cardinality: '1' + type: integer + erabGbrDl: + description: This attribute indicates the guaranteed downlink E-RAB Bit Rate as defined in ETSI TS 123 401 [i.4] for this bearer. + x-etsi-mec-origin-type: Integer + x-etsi-mec-cardinality: '1' + type: integer + erabGbrUl: + description: This attribute indicates the guaranteed uplink E-RAB Bit Rate as defined in ETSI TS 123 401 [i.4] for this bearer. + x-etsi-mec-origin-type: Integer + x-etsi-mec-cardinality: '1' + type: integer + required: + - erabMbrDl + - erabMbrUl + - erabGbrDl + - erabGbrUl + ErabQosParameters1: + description: QoS parameters for the E-RAB as defined below. + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: 0..1 + type: object + properties: + qci: + description: QoS Class Identifier as defined in ETSI TS 123 401 [i.4]. + x-etsi-mec-origin-type: Integer + x-etsi-mec-cardinality: '1' + type: integer + qosInformation: + $ref: '#/components/schemas/QosInformation1' + required: + - qci + TempUeId1: + description: 'The temporary identifier allocated for the specific UE as defined below. ' + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: 0..1 + type: object + properties: + mmec: + description: MMEC as defined in ETSI TS 136 413 [i.3]. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + mtmsi: + description: M-TMSI as defined in ETSI TS 136 413 [i.3]. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + required: + - mmec + - mtmsi + QosInformation2: + description: The QoS Information for the E-RAB as defined below. + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: 0..1 + type: object + properties: + erabMbrDl: + description: This attribute indicates the maximum downlink E-RAB Bit Rate as defined in ETSI TS 123 401 [i.4] for this bearer. + x-etsi-mec-origin-type: Integer + x-etsi-mec-cardinality: '1' + type: integer + erabMbrUl: + description: This attribute indicates the maximum uplink E-RAB Bit Rate as defined in ETSI TS 123 401 [i.4] for this bearer. + x-etsi-mec-origin-type: Integer + x-etsi-mec-cardinality: '1' + type: integer + erabGbrDl: + description: This attribute indicates the guaranteed downlink E-RAB Bit Rate as defined in ETSI TS 123 401 [i.4] for this bearer. + x-etsi-mec-origin-type: Integer + x-etsi-mec-cardinality: '1' + type: integer + erabGbrUl: + description: This attribute indicates the guaranteed uplink E-RAB Bit Rate as defined in ETSI TS 123 401 [i.4] for this bearer. + x-etsi-mec-origin-type: Integer + x-etsi-mec-cardinality: '1' + type: integer + required: + - erabMbrDl + - erabMbrUl + - erabGbrDl + - erabGbrUl + ErabQosParameters2: + description: The QoS parameters for the E-RAB as defined below. + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: 0..1 + type: object + properties: + qci: + description: QoS Class Identifier as defined in ETSI TS 123 401 [i.4]. + x-etsi-mec-origin-type: Integer + x-etsi-mec-cardinality: '1' + type: integer + qosInformation: + $ref: '#/components/schemas/QosInformation2' + required: + - qci + ErabReleaseInfo: + description: The release information for the E-RAB as defined below. + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: '1' + type: object + properties: + erabId: + description: The attribute that uniquely identifies a Radio Access bearer for specific UE as defined in ETSI TS 136 413 [i.3]. + x-etsi-mec-origin-type: Integer + x-etsi-mec-cardinality: '1' + type: integer + required: + - erabId + EutranNeighbourCellMeasInfo: + description: This parameter can be repeated to contain information of all the neighbouring cells up to N. + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: 0..N + type: object + minItems: 0 + properties: + ecgi: + # description': E-UTRAN Cell Global Identifier. + $ref: '#/components/schemas/Ecgi' + # x-etsi-mec-origin-type': Ecgi + # x-etsi-mec-cardinality': '1' + rsrp: + description: "Reference Signal Received Power as defined in ETSI TS\_136 214 [i.5]." + x-etsi-mec-origin-type: Uint8 + x-etsi-mec-cardinality: 0..1 + type: integer + format: uint8 + rsrpEx: + description: Extended Reference Signal Received Power, with value mapping defined in ETSI TS 136 133 [i.16]. + x-etsi-mec-origin-type: Uint8 + x-etsi-mec-cardinality: 0..1 + type: integer + format: uint8 + rsrq: + description: "Reference Signal Received Quality as defined in ETSI TS\_136 214 [i.5]." + x-etsi-mec-origin-type: Uint8 + x-etsi-mec-cardinality: 0..1 + type: integer + format: uint8 + rsrqEx: + description: Extended Reference Signal Received Quality, with value mapping defined in ETSI TS 136 133 [i.16]. + x-etsi-mec-origin-type: Uint8 + x-etsi-mec-cardinality: 0..1 + type: integer + format: uint8 + sinr: + description: "Reference Signal \"Signal to Interference plus Noise Ratio\", with value mapping defined in ETSI TS\_136\_133\_[i.16]." + x-etsi-mec-origin-type: Uint8 + x-etsi-mec-cardinality: 0..1 + type: integer + format: uint8 + required: + - ecgi + CarrierAggregationMeasInfo: + description: This parameter can be repeated to contain information of all the carriers assign for Carrier Aggregation up to N. + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: 0..N + type: object + minItems: 0 + properties: + cellIdSrv: + # description': E-UTRAN Cell Identity of a Secondary serving Cell (SCell), as defined in ETSI TS 136 331 [i.7]. + $ref: '#/components/schemas/CellId' + # x-etsi-mec-origin-type': CellId + # x-etsi-mec-cardinality': '1' + rsrpSrv: + description: "Reference Signal Received Power as defined in ETSI TS\_136 214 [i.5]." + x-etsi-mec-origin-type: Uint8 + x-etsi-mec-cardinality: 0..1 + type: integer + format: uint8 + rsrpSrvEx: + description: Extended Reference Signal Received Power, with value mapping defined in ETSI TS 136 133 [i.16]. + x-etsi-mec-origin-type: Uint8 + x-etsi-mec-cardinality: 0..1 + type: integer + format: uint8 + rsrqSrv: + description: "Reference Signal Received Quality as defined in ETSI TS\_136 214 [i.5]." + x-etsi-mec-origin-type: Uint8 + x-etsi-mec-cardinality: 0..1 + type: integer + format: uint8 + rsrqSrvEx: + description: Extended Reference Signal Received Quality, with value mapping defined in ETSI TS 136 133 [i.16]. + x-etsi-mec-origin-type: Uint8 + x-etsi-mec-cardinality: 0..1 + type: integer + format: uint8 + sinrSrv: + description: "Reference Signal \"Signal to Interference plus Noise Ratio\", with value mapping defined in ETSI TS\_136\_133\_[i.16]." + x-etsi-mec-origin-type: Uint8 + x-etsi-mec-cardinality: 0..1 + type: integer + format: uint8 + cellIdNei: + # description': E-UTRAN Cell Identity of the best neighbouring cell (NCell) associated with the SCell, as defined in ETSI TS 136 331 [i.7]. + $ref: '#/components/schemas/CellId' + # x-etsi-mec-origin-type': CellId + # x-etsi-mec-cardinality': 0..1 + rsrpNei: + description: "Reference Signal Received Power as defined in ETSI TS\_136 214 [i.5]." + x-etsi-mec-origin-type: Uint8 + x-etsi-mec-cardinality: 0..1 + type: integer + format: uint8 + rsrpNeiEx: + description: Extended Reference Signal Received Power, with value mapping defined in ETSI TS 136 133 [i.16]. + x-etsi-mec-origin-type: Uint8 + x-etsi-mec-cardinality: 0..1 + type: integer + format: uint8 + rsrqNei: + description: "Reference Signal Received Quality as defined in ETSI TS\_136 214 [i.5]." + x-etsi-mec-origin-type: Uint8 + x-etsi-mec-cardinality: 0..1 + type: integer + format: uint8 + rsrqNeiEx: + description: Extended Reference Signal Received Quality, with value mapping defined in ETSI TS 136 133 [i.16]. + x-etsi-mec-origin-type: Uint8 + x-etsi-mec-cardinality: 0..1 + type: integer + format: uint8 + sinrNei: + description: "Reference Signal \"Signal to Interference plus Noise Ratio\", with value mapping defined in ETSI TS\_136\_133\_[i.16]." + x-etsi-mec-origin-type: Uint8 + x-etsi-mec-cardinality: 0..1 + type: integer + format: uint8 + required: + - cellIdSrv + NrSCellInfo: + description: Secondary serving cell(s) info. + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: 1..N + type: object + minItems: 1 + properties: + nrSCellPlmn: + description: Public land mobile network identities. + x-etsi-mec-origin-type: Plmn + x-etsi-mec-cardinality: 1..N + type: array + minItems: 1 + items: + $ref: '#/components/schemas/Plmn' + nrSCellGId: + # description': Cell Global Identifier, as defined in ETSI TS 138 331 [i.13]. + $ref: '#/components/schemas/NrCellId' + # x-etsi-mec-origin-type': NrCellId + # x-etsi-mec-cardinality': '1' + required: + - nrSCellPlmn + - nrSCellGId + NrSCs: + description: Measurement quantities concerning the secondary serving cells. + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: '1' + type: object + properties: + nrSCellInfo: + type: array + items: + $ref: '#/components/schemas/NrSCellInfo' + nrSCellRsrp: + description: Reference Signal Received Power measurement according to mapping table in ETSI TS 138 133 [i.14]. + x-etsi-mec-origin-type: Uint8 + x-etsi-mec-cardinality: 0..1 + type: integer + format: uint8 + nrSCellRsrq: + description: Reference Signal Received Quality measurement according to mapping table in ETSI TS 138 133 [i.14]. + x-etsi-mec-origin-type: Uint8 + x-etsi-mec-cardinality: 0..1 + type: integer + format: uint8 + nrSCellRssi: + description: Reference signal SINR measurement according to mapping table in ETSI TS 138 133 [i.14]. + x-etsi-mec-origin-type: Uint8 + x-etsi-mec-cardinality: 0..1 + type: integer + format: uint8 + required: + - nrSCellInfo + NrBNCellInfo: + description: Best neighbours of the secondary serving cell(s) info. + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: 1..N + type: object + minItems: 1 + properties: + nrBNCellPlmn: + description: Public land mobile network identities. + x-etsi-mec-origin-type: Plmn + x-etsi-mec-cardinality: 1..N + type: array + minItems: 1 + items: + $ref: '#/components/schemas/Plmn' + nrBNCellGId: + # description': Cell Global Identifier, as defined in ETSI TS 138 331 [i.13]. + $ref: '#/components/schemas/NrCellId' + # x-etsi-mec-origin-type': NrCellId + # x-etsi-mec-cardinality': '1' + required: + - nrBNCellPlmn + - nrBNCellGId + NrBNCs: + description: Measurement quantities concerning the best neighbours of the secondary serving cells. + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: 0..1 + type: object + properties: + nrBNCellInfo: + type: array + items: + $ref: '#/components/schemas/NrBNCellInfo' + nrBNCellRsrp: + description: Reference Signal Received Power measurement according to mapping table in ETSI TS 138 133 [i.14]. + x-etsi-mec-origin-type: Uint8 + x-etsi-mec-cardinality: 0..1 + type: integer + format: uint8 + nrBNCellRsrq: + description: Reference Signal Received Quality measurement according to mapping table in ETSI TS 138 133 [i.14]. + x-etsi-mec-origin-type: Uint8 + x-etsi-mec-cardinality: 0..1 + type: integer + format: uint8 + nrBNCellRssi: + description: Reference signal SINR measurement according to mapping table in ETSI TS 138 133 [i.14]. + x-etsi-mec-origin-type: Uint8 + x-etsi-mec-cardinality: 0..1 + type: integer + format: uint8 + required: + - nrBNCellInfo + NewRadioMeasInfo: + description: 5G New Radio secondary serving cells measurement information. + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: 0..N + type: object + minItems: 0 + properties: + nrCarrierFreq: + description: "ARFCN applicable for a downlink, uplink or bi-directional (TDD) NR carrier frequency, as defined in ETSI TS\_138\_101 [i.15]." + x-etsi-mec-origin-type: Uint32 + x-etsi-mec-cardinality: '1' + type: integer + format: uint32 + nrSCs: + $ref: '#/components/schemas/NrSCs' + nrBNCs: + $ref: '#/components/schemas/NrBNCs' + required: + - nrCarrierFreq + - nrSCs + NrNCellInfo: + description: 5G NR neighbour cell info. + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: 1..N + type: object + minItems: 1 + properties: + nrNCellPlmn: + description: Public land mobile network identities. + x-etsi-mec-origin-type: Plmn + x-etsi-mec-cardinality: 1..N + type: array + minItems: 1 + items: + $ref: '#/components/schemas/Plmn' + nrNCellGId: + # description': Cell Global Identifier, as defined in ETSI TS 138 331 [i.13]. + $ref: '#/components/schemas/NrCellId' + # x-etsi-mec-origin-type': NrCellId + # x-etsi-mec-cardinality': '1' + required: + - nrNCellPlmn + - nrNCellGId + NewRadioMeasNeiInfo: + description: Measurement quantities concerning the 5G NR neighbours. + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: 0..N + type: object + minItems: 0 + properties: + nrNCellInfo: + type: array + items: + $ref: '#/components/schemas/NrNCellInfo' + nrNCellRsrp: + description: Reference Signal Received Power measurement according to mapping table in ETSI TS 138 133 [i.14]. + x-etsi-mec-origin-type: Uint8 + x-etsi-mec-cardinality: 0..1 + type: integer + format: uint8 + nrNCellRsrq: + description: Reference Signal Received Quality measurement according to mapping table in ETSI TS 138 133 [i.14]. + x-etsi-mec-origin-type: Uint8 + x-etsi-mec-cardinality: 0..1 + type: integer + format: uint8 + nrNCellRssi: + description: Reference signal SINR measurement according to mapping table in ETSI TS 138 133 [i.14]. + x-etsi-mec-origin-type: Uint8 + x-etsi-mec-cardinality: 0..1 + type: integer + format: uint8 + rsIndexResults: + # description': Beam level measurements results of a NR cell. + $ref: '#/components/schemas/RsIndexResults' + # x-etsi-mec-origin-type': RsIndexResults + # x-etsi-mec-cardinality': 0..1 + required: + - nrNCellInfo + SecondaryCellAdd: + description: '' + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: 0..N + type: object + minItems: 0 + properties: + ecgi: + # description': E-UTRAN Cell Global Identifier. + $ref: '#/components/schemas/Ecgi' + # x-etsi-mec-origin-type': Ecgi + # x-etsi-mec-cardinality': '1' + required: + - ecgi + SecondaryCellRemove: + description: '' + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: 0..N + type: object + minItems: 0 + properties: + ecgi: + # description': E-UTRAN Cell Global Identifier. + $ref: '#/components/schemas/Ecgi' + # x-etsi-mec-origin-type': Ecgi + # x-etsi-mec-cardinality': '1' + required: + - ecgi + CarrierAggregationMeasInfo1: + description: This parameter can be repeated to contain information of all the carriers assign for Carrier Aggregation up to N. + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: 0..N + type: object + minItems: 0 + properties: + cellIdSrv: + # description': E-UTRAN Cell Identity of a Carrier Aggregation serving cell. + $ref: '#/components/schemas/CellId' + # x-etsi-mec-origin-type': CellId + # x-etsi-mec-cardinality': '1' + rsrpSrv: + description: "Reference Signal Received Power as defined in ETSI TS\_136 214 [i.5]." + x-etsi-mec-origin-type: Uint32 + x-etsi-mec-cardinality: 0..1 + type: integer + format: uint32 + rsrqSrv: + description: Reference Signal Received Quality as defined in ETSI TS 136 214 [i.5]. + x-etsi-mec-origin-type: Uint32 + x-etsi-mec-cardinality: 0..1 + type: integer + format: uint32 + cellIdNei: + # description': E-UTRAN Cell Identity of the best neighbouring cell associated with the Carrier Aggregation serving cell. + $ref: '#/components/schemas/CellId' + # x-etsi-mec-origin-type': CellId + # x-etsi-mec-cardinality': '1' + rsrpNei: + description: "Reference Signal Received Power as defined in ETSI TS\_136 214 [i.5]." + x-etsi-mec-origin-type: Uint32 + x-etsi-mec-cardinality: 0..1 + type: integer + format: uint32 + rsrqNei: + description: Reference Signal Received Quality as defined in ETSI TS 136 214 [i.5]. + x-etsi-mec-origin-type: Uint32 + x-etsi-mec-cardinality: 0..1 + type: integer + format: uint32 + required: + - cellIdSrv + - cellIdNei + _links2: + description: List of hyperlinks related to the resource. + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: '1' + type: object + properties: + subscription: + # description': URI identifying the subscription which has expired. + $ref: '#/components/schemas/LinkType' + # x-etsi-mec-origin-type': LinkType + # x-etsi-mec-cardinality': '1' + required: + - subscription + S1UeInfo1: + description: Information on specific UE that matches the criteria in S1BearerSubscription as defined below. + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: '1' + type: object + properties: + tempUeId: + $ref: '#/components/schemas/TempUeId' + associateId: + description: 0 to N identifiers to associate the information for a specific UE or flow. + x-etsi-mec-origin-type: AssociateId + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + $ref: '#/components/schemas/AssociateId' + ecgi: + description: E-UTRAN Cell Global Identifier. + x-etsi-mec-origin-type: Ecgi + x-etsi-mec-cardinality: 1..N + type: array + minItems: 1 + items: + $ref: '#/components/schemas/Ecgi' + s1BearerInfo: + type: array + items: + $ref: '#/components/schemas/S1BearerInfo' + required: + - ecgi + - s1BearerInfo + SCell: + description: Measurement information relating to this serving cell. + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: '1' + type: object + properties: + measQuantityResultsSsbCell: + # description': Measurement quantity results relating to the Synchronization Signal Block. + $ref: '#/components/schemas/MeasQuantityResultsNr' + # x-etsi-mec-origin-type': MeasQuantityResultsNr + # x-etsi-mec-cardinality': 0..1 + measQuantityResultsCsiRsCell: + # description': Measurement quantity results relating to the Channel State Information Reference Signal. + $ref: '#/components/schemas/MeasQuantityResultsNr' + # x-etsi-mec-origin-type': MeasQuantityResultsNr + # x-etsi-mec-cardinality': 0..1 + rsIndexResults: + # description': Beam level measurement information + $ref: '#/components/schemas/RsIndexResults' + # x-etsi-mec-origin-type': RsIndexResults + # x-etsi-mec-cardinality': 0..1 + NCell: + description: Measurement information relating to the best neighbour of this serving cell. + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: 0..1 + type: object + properties: + measQuantityResultsSsbCell: + # description': Measurement quantity results relating to the Synchronization Signal Block. + $ref: '#/components/schemas/MeasQuantityResultsNr' + # x-etsi-mec-origin-type': MeasQuantityResultsNr + # x-etsi-mec-cardinality': 0..1 + measQuantityResultsCsiRsCell: + # description': Measurement quantity results relating to the Channel State Information Reference Signal. + $ref: '#/components/schemas/MeasQuantityResultsNr' + # x-etsi-mec-origin-type': MeasQuantityResultsNr + # x-etsi-mec-cardinality': 0..1 + rsIndexResults: + # description': Beam level measurement information + $ref: '#/components/schemas/RsIndexResults' + # x-etsi-mec-origin-type': RsIndexResults + # x-etsi-mec-cardinality': 0..1 + ServCellMeasInfo: + description: This parameter can be repeated to contain information of all the serving cells up to N. + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: 0..N + type: object + minItems: 0 + properties: + nrcgi: + # description': NR Cell Global Identifier. + $ref: '#/components/schemas/Nrcgi' + # x-etsi-mec-origin-type': Nrcgi + # x-etsi-mec-cardinality': '1' + sCell: + $ref: '#/components/schemas/SCell' + nCell: + $ref: '#/components/schemas/NCell' + required: + - nrcgi + - sCell + NrNeighCellMeasInfo: + description: This parameter can be repeated to contain measurement information of all the neighbouring cells up to N. It shall not be included if eutraNeighCellMeasInfo is included. + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: 0..N + type: object + minItems: 0 + properties: + nrcgi: + # description': NR Cell Global Identifier. + $ref: '#/components/schemas/Nrcgi' + # x-etsi-mec-origin-type': Nrcgi + # x-etsi-mec-cardinality': '1' + measQuantityResultsSsbCell: + # description': Measurement quantity results relating to the Synchronization Signal Block of the neighbouring cells. + $ref: '#/components/schemas/MeasQuantityResultsNr' + # x-etsi-mec-origin-type': MeasQuantityResultsNr + # x-etsi-mec-cardinality': 0..1 + measQuantityResultsCsiRsCell: + # description': Measurement quantity results relating to the Channel State Information Reference Signal of the neighbouring cells. + $ref: '#/components/schemas/MeasQuantityResultsNr' + # x-etsi-mec-origin-type': MeasQuantityResultsNr + # x-etsi-mec-cardinality': 0..1 + rsIndexResults: + # description': Beam level measurement information. + $ref: '#/components/schemas/RsIndexResults' + # x-etsi-mec-origin-type': RsIndexResults + # x-etsi-mec-cardinality': 0..1 + required: + - nrcgi + EutraNeighCellMeasInfo: + description: This parameter can be repeated to contain measurement information of all the neighbouring cells up to N. It shall not be included if nrNeighCellMeasInfo is included. + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: 0..N + type: object + minItems: 0 + properties: + ecgi: + # description': E-UTRAN Cell Global Identifier. + $ref: '#/components/schemas/Ecgi' + # x-etsi-mec-origin-type': Ecgi + # x-etsi-mec-cardinality': '1' + rsrp: + description: "Reference Signal Received Power as defined in ETSI TS\_138 331 [i.13]." + x-etsi-mec-origin-type: Uint8 + x-etsi-mec-cardinality: 0..1 + type: integer + format: uint8 + rsrq: + description: Reference Signal Received Quality as defined in ETSI TS 138 331 [i.13]. + x-etsi-mec-origin-type: Uint8 + x-etsi-mec-cardinality: 0..1 + type: integer + format: uint8 + sinr: + description: "Reference Signal plus Interference Noise Ratio as defined in ETSI TS\_138\_331\_[i.13]." + x-etsi-mec-origin-type: Uint8 + x-etsi-mec-cardinality: 0..1 + type: integer + format: uint8 + required: + - ecgi + _links3: + description: 'Hyperlink related to the resource. ' + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: '1' + type: object + properties: + subscription: + # description': URI identifying the subscription for the test notification. + $ref: '#/components/schemas/LinkType' + # x-etsi-mec-origin-type': LinkType + # x-etsi-mec-cardinality': '1' + required: + - subscription + ResultsPerSsbIndex: + description: '' + x-etsi-mec-origin-type: Structure (inline) + x-etsi-mec-cardinality: 0..N + type: object + minItems: 0 + properties: + ssbIndex: + description: '' + x-etsi-mec-origin-type: Uint8 + x-etsi-mec-cardinality: '1' + type: integer + format: uint8 + ssbResults: + # description': '' + $ref: '#/components/schemas/MeasQuantityResultsNr' + # x-etsi-mec-origin-type': MeasQuantityResultsNr + # x-etsi-mec-cardinality': 0..1 + required: + - ssbIndex + ResultsPerCsiRsIndex: + description: '' + x-etsi-mec-origin-type: Structure (inline) + x-etsi-mec-cardinality: 0..N + type: object + minItems: 0 + properties: + csiRsIndex: + description: '' + x-etsi-mec-origin-type: Uint8 + x-etsi-mec-cardinality: '1' + type: integer + format: uint8 + csiRsResults: + # description': '' + $ref: '#/components/schemas/MeasQuantityResultsNr' + # x-etsi-mec-origin-type': MeasQuantityResultsNr + # x-etsi-mec-cardinality': 0..1 + required: + - csiRsIndex + responses: + '200': + description: OK + '204': + description: No Content + '400': + description: 'Bad Request: used to indicate that incorrect parameters were passed to the request.' + content: + application/problem+json: + schema: + $ref: '#/components/schemas/ProblemDetails' + '401': + description: 'Unauthorized: used when the client did not submit credentials.' + content: + application/problem+json: + schema: + $ref: '#/components/schemas/ProblemDetails' + '403': + description: 'Forbidden: operation is not allowed given the current status of the resource.' + content: + application/problem+json: + schema: + $ref: '#/components/schemas/ProblemDetails' + '404': + description: 'Not Found: used when a client provided a URI that cannot be mapped to a valid resource URI.' + content: + application/problem+json: + schema: + $ref: '#/components/schemas/ProblemDetails' + '406': + description: 'Not Acceptable: used to indicate that the server cannot provide the any of the content formats supported by the client.' + content: + application/problem+json: + schema: + $ref: '#/components/schemas/ProblemDetails' + '412': + description: 'Precondition failed: used when a condition has failed during conditional requests, e.g. when using ETags to avoid write conflicts when using PUT' + content: + application/problem+json: + schema: + $ref: '#/components/schemas/ProblemDetails' + '414': + description: 'URI Too Long: used to indicate that the server is refusing to process the request because the request URI is longer than the server is willing or able to process.' + content: + application/problem+json: + schema: + $ref: '#/components/schemas/ProblemDetails' + '415': + description: 'Unsupported Media Type: used to indicate that the server or the client does not support the content type of the entity body.' + content: + application/problem+json: + schema: + $ref: '#/components/schemas/ProblemDetails' + '422': + description: 'Unprocessable Entity: used to indicate that the server understands the content type of the request entity and that the syntax of the request entity is correct but that the server is unable to process the contained instructions. This error condition can occur if an JSON request body is syntactically correct but semantically incorrect, for example if the target area for the request is considered too large. This error condition can also occur if the capabilities required by the request are not supported.' + content: + application/problem+json: + schema: + $ref: '#/components/schemas/ProblemDetails' + '429': + description: 'Too Many Requests: used when a rate limiter has triggered.' + content: + application/problem+json: + schema: + $ref: '#/components/schemas/ProblemDetails' + parameters: + Query.App_ins_id: + description: Comma separated list of application instance identifiers. + name: app_ins_id + cardinality: 0..1 + in: query + required: false + x-exportParamName: Query.App_ins_id + schema: + type: string + Query.Cell_id: + description: Comma separated list of E-UTRAN Cell Identities. + name: cell_id + cardinality: 0..N + in: query + required: false + x-exportParamName: Query.Cell_id + schema: + $ref: '#/components/schemas/CellId' + Query.Ue_ipv4_address: + description: Comma separated list of IE IPv4 addresses as defined for the type for AssociateId in clause 6.5.4. + name: ue_ipv4_address + cardinality: 0..N + in: query + required: false + x-exportParamName: Query.Ue_ipv4_address + schema: + type: array + items: + type: string + Query.Ue_ipv6_address: + description: Comma separated list of IE IPv6 addresses as defined for the type for AssociateId in clause 6.5.4. + name: ue_ipv6_address + cardinality: 0..N + in: query + required: false + x-exportParamName: Query.Ue_ipv6_address + schema: + type: array + items: + type: string + Query.Nated_ip_address: + description: Comma separated list of NATed IP addresses as defined for the type for AssociateId in clause 6.5.4. + name: nated_ip_address + cardinality: 0..N + in: query + required: false + x-exportParamName: Query.Nated_ip_address + schema: + type: array + items: + type: string + Query.Gtp_teid: + description: Comma separated list of GTP TEID addresses as defined for the type for AssociateId in clause 6.5.4. + name: gtp_teid + cardinality: 0..N + in: query + required: false + x-exportParamName: Query.Gtp_teid + schema: + type: array + items: + type: string + Query.Erab_id: + description: E-RAB identifier. + name: erab_id + cardinality: 0..1 + in: query + required: false + x-exportParamName: Query.Erab_id + schema: + type: integer + Query.Qci: + description: QoS Class Identifier as defined in ETSI TS 123 401 [i.4]. + name: qci + cardinality: 0..1 + in: query + required: false + x-exportParamName: Query.Qci + schema: + type: integer + Query.Erab_mbr_dl: + description: "Maximum downlink E-RAB Bit Rate as defined in ETSI TS\_123\_401 [i.4]." + name: erab_mbr_dl + cardinality: 0..1 + in: query + required: false + x-exportParamName: Query.Erab_mbr_dl + schema: + type: integer + Query.Erab_mbr_ul: + description: "Maximum uplink E-RAB Bit Rate as defined in ETSI TS\_123\_401\_[i.4]." + name: erab_mbr_ul + cardinality: 0..1 + in: query + required: false + x-exportParamName: Query.Erab_mbr_ul + schema: + type: integer + Query.Erab_gbr_dl: + description: "Guaranteed downlink E-RAB Bit Rate as defined in ETSI TS\_123\_401 [i.4]." + name: erab_gbr_dl + cardinality: 0..1 + in: query + required: false + x-exportParamName: Query.Erab_gbr_dl + schema: + type: integer + Query.Erab_gbr_ul: + description: "Guaranteed uplink E-RAB Bit Rate as defined in ETSI TS\_123\_401 [i.4]." + name: erab_gbr_ul + cardinality: 0..1 + in: query + required: false + x-exportParamName: Query.Erab_gbr_ul + schema: + type: integer + Query.App_ins_id1: + description: Comma separated list of application instance identifiers. + name: app_ins_id + cardinality: 1..N + in: query + required: true + x-exportParamName: Query.App_ins_id1 + schema: + type: array + items: + type: string + Query.Temp_ue_id: + description: Comma separated list of temporary identifiers allocated for the specific UEs as defined in ETSI TS 136 413 [i.3]. + name: temp_ue_id + cardinality: 0..N + in: query + required: false + x-exportParamName: Query.Temp_ue_id + schema: + type: array + items: + type: string + Query.Erab_id1: + description: Comma separated list of E-RAB identifiers. + name: erab_id + cardinality: 0..N + in: query + required: false + x-exportParamName: Query.Erab_id1 + schema: + type: array + items: + type: integer + Query.Cell_id1: + description: "Comma separated list of E-UTRAN Cell Identities each defined as a bit string (size (28)), as defined in ETSI TS\_136\_413 [i.3]." + name: cell_id + cardinality: 0..N + in: query + required: false + x-exportParamName: Query.Cell_id1 + schema: + type: array + items: + type: string + Query.Dl_gbr_prb_usage_cell: + description: "It indicates the PRB usage for downlink GBR traffic, as defined in ETSI TS 136 314 [i.11] and ETSI TS\_136\_423\_[i.12]." + name: dl_gbr_prb_usage_cell + cardinality: 0..1 + in: query + required: false + x-exportParamName: Query.Dl_gbr_prb_usage_cell + schema: + type: integer (0..100) + Query.Ul_gbr_prb_usage_cell: + description: "It indicates (in percentage) the PRB usage for uplink GBR traffic, as defined in ETSI TS 136 314 [i.11] and ETSI TS\_136\_423\_[i.12]." + name: ul_gbr_prb_usage_cell + cardinality: 0..1 + in: query + required: false + x-exportParamName: Query.Ul_gbr_prb_usage_cell + schema: + type: integer (0..100) + Query.Dl_nongbr_prb_usage_cell: + description: It indicates (in percentage) the PRB usage for downlink nonGBR traffic, as defined in ETSI TS 136 314 [i.11] and ETSI TS 136 423 [i.12]. + name: dl_nongbr_prb_usage_cell + cardinality: 0..1 + in: query + required: false + x-exportParamName: Query.Dl_nongbr_prb_usage_cell + schema: + type: integer (0..100) + Query.Ul_nongbr_prb_usage_cell: + description: "It indicates (in percentage) the PRB usage for uplink nonGBR traffic, as defined in ETSI TS 136 314 [i.11] and ETSI TS\_136\_423 [i.12]." + name: ul_nongbr_prb_usage_cell + cardinality: 0..1 + in: query + required: false + x-exportParamName: Query.Ul_nongbr_prb_usage_cell + schema: + type: integer (0..100) + Query.Dl_total_prb_usage_cell: + description: "It indicates (in percentage) the PRB usage for total downlink traffic, as defined in ETSI TS 136 314 [i.11] and ETSI TS\_136\_423 [i.12]." + name: dl_total_prb_usage_cell + cardinality: 0..1 + in: query + required: false + x-exportParamName: Query.Dl_total_prb_usage_cell + schema: + type: integer (0..100) + Query.Ul_total_prb_usage_cell: + description: "It indicates (in percentage) the PRB usage for total uplink traffic, as defined in ETSI TS 136 314 [i.11] and \nETSI\_TS\_136\_423 [i.12]." + name: ul_total_prb_usage_cell + cardinality: 0..1 + in: query + required: false + x-exportParamName: Query.Ul_total_prb_usage_cell + schema: + type: integer (0..100) + Query.Received_dedicated_preambles_cell: + description: It indicates (in percentage) the received dedicated preamples, as defined in ETSI TS 136 314 [i.11]. + name: received_dedicated_preambles_cell + cardinality: 0..1 + in: query + required: false + x-exportParamName: Query.Received_dedicated_preambles_cell + schema: + type: integer (0..100) + Query.Received_randomly_selecte_preambles_low_range_cell: + description: "It indicates (in percentage) the received randomly selected preambles in the low range, as defined in ETSI TS\_136\_314\_[i.11]." + name: received_randomly_selecte_preambles_low_range_cell + cardinality: 0..1 + in: query + required: false + x-exportParamName: Query.Received_randomly_selecte_preambles_low_range_cell + schema: + type: integer (0..100) + Query.Received_randomly_selected_preambles_high_range_cell: + description: "It indicates (in percentage) the received randomly selected preambles in the high range, as defined in ETSI TS\_136\_314\_[i.11]." + name: received_randomly_selected_preambles_high_range_cell + cardinality: 0..1 + in: query + required: false + x-exportParamName: Query.Received_randomly_selected_preambles_high_range_cell + schema: + type: integer (0..100) + Query.Number_of_active_ue_dl_gbr_cell: + description: It indicates the number of active UEs with downlink GBR traffic, as defined in ETSI TS 136 314 [i.11]. + name: number_of_active_ue_dl_gbr_cell + cardinality: 0..1 + in: query + required: false + x-exportParamName: Query.Number_of_active_ue_dl_gbr_cell + schema: + type: integer + Query.Number_of_active_ue_ul_gbr_cell: + description: It indicates the number of active UEs with uplink GBR traffic, as defined in ETSI TS 136 314 [i.11]. + name: number_of_active_ue_ul_gbr_cell + cardinality: 0..1 + in: query + required: false + x-exportParamName: Query.Number_of_active_ue_ul_gbr_cell + schema: + type: integer + Query.Number_of_active_ue_dl_nongbr_cell: + description: It indicates the number of active UEs with downlink non-GBR traffic, as defined in ETSI TS 136 314 [i.11]. + name: number_of_active_ue_dl_nongbr_cell + cardinality: 0..1 + in: query + required: false + x-exportParamName: Query.Number_of_active_ue_dl_nongbr_cell + schema: + type: integer + Query.Number_of_active_ue_ul_nongbr_cell: + description: It indicates the number of active UEs with uplink non-GBR traffic, as defined in ETSI TS 136 314 [i.11]. + name: number_of_active_ue_ul_nongbr_cell + cardinality: 0..1 + in: query + required: false + x-exportParamName: Query.Number_of_active_ue_ul_nongbr_cell + schema: + type: integer + Query.Dl_gbr_pdr_cell: + description: "It indicates the packet discard rate in percentage of the downlink GBR traffic in a cell, as defined in ETSI TS\_136\_314\_[i.11]." + name: dl_gbr_pdr_cell + cardinality: 0..1 + in: query + required: false + x-exportParamName: Query.Dl_gbr_pdr_cell + schema: + type: integer (0..100) + Query.Ul_gbr_pdr_cell: + description: It indicates the packet discard rate in percentage of the uplink GBR traffic in a cell, as defined in ETSI TS 136 314 [i.11]. + name: ul_gbr_pdr_cell + cardinality: 0..1 + in: query + required: false + x-exportParamName: Query.Ul_gbr_pdr_cell + schema: + type: integer (0..100) + Query.Dl_nongbr_pdr_cell: + description: "It indicates the packet discard rate in percentage of the downlink non-GBR traffic in a cell, as defined in ETSI TS\_136\_314 [i.11]." + name: dl_nongbr_pdr_cell + cardinality: 0..1 + in: query + required: false + x-exportParamName: Query.Dl_nongbr_pdr_cell + schema: + type: integer (0..100) + Query.Ul_nongbr_pdr_cell: + description: It indicates the packet discard rate in percentage of the uplink non-GBR traffic in a cell, as defined in ETSI TS 136 314 [i.11]. + name: ul_nongbr_pdr_cell + cardinality: 0..1 + in: query + required: false + x-exportParamName: Query.Ul_nongbr_pdr_cell + schema: + type: integer (0..100) + Query.Dl_gbr_delay_ue: + description: It indicates the packet delay of the downlink GBR traffic of a UE, as defined in ETSI TS 136 314 [i.11]. + name: dl_gbr_delay_ue + cardinality: 0..1 + in: query + required: false + x-exportParamName: Query.Dl_gbr_delay_ue + schema: + type: integer + Query.Ul_gbr_delay_ue: + description: It indicates the packet delay of the uplink GBR traffic of a UE, as defined in ETSI TS 136 314 [i.11]. + name: ul_gbr_delay_ue + cardinality: 0..1 + in: query + required: false + x-exportParamName: Query.Ul_gbr_delay_ue + schema: + type: integer + Query.Dl_nongbr_delay_ue: + description: It indicates the packet delay of the downlink non-GBR traffic of a UE, as defined in ETSI TS 136 314 [i.11]. + name: dl_nongbr_delay_ue + cardinality: 0..1 + in: query + required: false + x-exportParamName: Query.Dl_nongbr_delay_ue + schema: + type: integer + Query.Ul_nongbr_delay_ue: + description: It indicates the packet delay of the uplink non-GBR traffic of a UE, as defined in ETSI TS 136 314 [i.11]. + name: ul_nongbr_delay_ue + cardinality: 0..1 + in: query + required: false + x-exportParamName: Query.Ul_nongbr_delay_ue + schema: + type: integer + Query.Dl_gbr_pdr_ue: + description: "It indicates the packet discard rate in percentage of the downlink GBR traffic of a UE, as defined in ETSI TS\_136\_314\_[i.11]." + name: dl_gbr_pdr_ue + cardinality: 0..1 + in: query + required: false + x-exportParamName: Query.Dl_gbr_pdr_ue + schema: + type: integer (0..100) + Query.Ul_gbr_pdr_ue: + description: It indicates the packet discard rate in percentage of the uplink GBR traffic of a UE, as defined in ETSI TS 136 314 [i.11]. + name: ul_gbr_pdr_ue + cardinality: 0..1 + in: query + required: false + x-exportParamName: Query.Ul_gbr_pdr_ue + schema: + type: integer (0..100) + Query.Dl_nongbr_pdr_ue: + description: "It indicates the packet discard rate in percentage of the downlink non-GBR traffic of a UE, as defined in ETSI TS\_136\_314 [i.11]." + name: dl_nongbr_pdr_ue + cardinality: 0..1 + in: query + required: false + x-exportParamName: Query.Dl_nongbr_pdr_ue + schema: + type: integer (0..100) + Query.Ul_nongbr_pdr_ue: + description: It indicates the packet discard rate in percentage of the uplink non-GBR traffic of a UE, as defined in ETSI TS 136 314 [i.11]. + name: ul_nongbr_pdr_ue + cardinality: 0..1 + in: query + required: false + x-exportParamName: Query.Ul_nongbr_pdr_ue + schema: + type: integer (0..100) + Query.Dl_gbr_throughput_ue: + description: It indicates the scheduled throughput of the downlink GBR traffic of a UE, as defined in ETSI TS 136 314 [i.11]. + name: dl_gbr_throughput_ue + cardinality: 0..1 + in: query + required: false + x-exportParamName: Query.Dl_gbr_throughput_ue + schema: + type: integer + Query.Ul_gbr_throughput_ue: + description: It indicates the scheduled throughput of the uplink GBR traffic of a UE, as defined in ETSI TS 136 314 [i.11]. + name: ul_gbr_throughput_ue + cardinality: 0..1 + in: query + required: false + x-exportParamName: Query.Ul_gbr_throughput_ue + schema: + type: integer + Query.Dl_nongbr_throughput_ue: + description: It indicates the scheduled throughput of the downlink non-GBR traffic of a UE, as defined in ETSI TS 136 314 [i.11]. + name: dl_nongbr_throughput_ue + cardinality: 0..1 + in: query + required: false + x-exportParamName: Query.Dl_nongbr_throughput_ue + schema: + type: integer + Query.Ul_nongbr_throughput_ue: + description: It indicates the scheduled throughput of the uplink non-GBR traffic of a UE, as defined in ETSI TS 136 314 [i.11]. + name: ul_nongbr_throughput_ue + cardinality: 0..1 + in: query + required: false + x-exportParamName: Query.Ul_nongbr_throughput_ue + schema: + type: integer + Query.Dl_gbr_data_volume_ue: + description: It indicates the data volume of the downlink GBR traffic of a UE, as defined in ETSI TS 136 314 [i.11]. + name: dl_gbr_data_volume_ue + cardinality: 0..1 + in: query + required: false + x-exportParamName: Query.Dl_gbr_data_volume_ue + schema: + type: integer + Query.Ul_gbr_data_volume_ue: + description: It indicates the data volume of the uplink GBR traffic of a UE, as defined in ETSI TS 136 314 [i.11]. + name: ul_gbr_data_volume_ue + cardinality: 0..1 + in: query + required: false + x-exportParamName: Query.Ul_gbr_data_volume_ue + schema: + type: integer + Query.Dl_nongbr_data_volume_ue: + description: It indicates the data volume of the downlink non-GBR traffic of a UE, as defined in ETSI TS 136 314 [i.11]. + name: dl_nongbr_data_volume_ue + cardinality: 0..1 + in: query + required: false + x-exportParamName: Query.Dl_nongbr_data_volume_ue + schema: + type: integer + Query.Ul_nongbr_data_volume_ue: + description: It indicates the data volume of the uplink non-GBR traffic of a UE, as defined in ETSI TS 136 314 [i.11]. + name: ul_nongbr_data_volume_ue + cardinality: 0..1 + in: query + required: false + x-exportParamName: Query.Ul_nongbr_data_volume_ue + schema: + type: integer + Query.Subscription_type: + description: "Query parameter to filter on a specific subscription type. Permitted values:\ncell_change\tCell Change \nrab_est\tRAB Establishment\nrab_mod\tRAB Modification\nrab_rel\tRAB Release\nmeas_rep_ue\tUE Measurement Report\nnr_meas_rep_ue\t5G UE Measurement Report\ntiming_advance_ue\tUE Timing Advance\nca_reconf\tCarrier Aggregation Reconfig\ns1_bearer\tS1 Bearer Notification ." + name: subscription_type + cardinality: 0..1 + in: query + required: false + x-exportParamName: Query.Subscription_type + schema: + type: string + diff --git a/Auto_Generated_OAS_Output_Files/Auto_Generated_OAS_Output_Files/gs_mec013v030101p.yaml b/Auto_Generated_OAS_Output_Files/Auto_Generated_OAS_Output_Files/gs_mec013v030101p.yaml new file mode 100644 index 0000000..0b55150 --- /dev/null +++ b/Auto_Generated_OAS_Output_Files/Auto_Generated_OAS_Output_Files/gs_mec013v030101p.yaml @@ -0,0 +1,3174 @@ +openapi: 3.1.0 +jsonSchemaDialect: https://json-schema.org/draft/2020-12/schema +info: + contact: + url: https://forge.etsi.org/rep/mec/gs013-location-api + title: ETSI GS MEC 013 Location API + version: 3.1.1 + description: The ETSI MEC ISG Location API described using OpenAPI. + license: + name: BSD-3-Clause + url: https://forge.etsi.org/legal-matters +paths: + /queries/users: + get: + description: The GET method is used to query location information about a specific UE or a group of UEs. + operationId: usersGET + tags: + - queries + parameters: + - $ref: '#/components/parameters/Query.Zoneid' + - $ref: '#/components/parameters/Query.Accesspointid' + - $ref: '#/components/parameters/Query.Address' + responses: + '200': + description: Upon success, a response body containing the list of user location information is returned. + content: + application/json: + schema: + type: object + properties: + UserList: + $ref: '#/components/schemas/UserList' + '400': + $ref: '#/components/responses/400' + '401': + $ref: '#/components/responses/401' + '403': + $ref: '#/components/responses/403' + '404': + $ref: '#/components/responses/404' + '406': + $ref: '#/components/responses/406' + '429': + $ref: '#/components/responses/429' + /subscriptions/users: + get: + description: The GET method is used to request information about the subscriptions for this requestor. Upon success, the response contains entity body with the list of links to the subscriptions that are present for the requestor. + operationId: usersGET + tags: + - subscriptions + parameters: + - $ref: '#/components/parameters/Query.Subscription_type' + - $ref: '#/components/parameters/Query.Address1' + responses: + '200': + description: Upon success, a response body containing the list of links to requestor's subscriptions is returned. + content: + application/json: + schema: + type: object + properties: + NotificationSubscriptionList: + $ref: '#/components/schemas/NotificationSubscriptionList' + '400': + $ref: '#/components/responses/400' + '401': + $ref: '#/components/responses/401' + '403': + $ref: '#/components/responses/403' + '404': + $ref: '#/components/responses/404' + '406': + $ref: '#/components/responses/406' + '429': + $ref: '#/components/responses/429' + post: + description: The POST method is used to create a new subscription to UE location notifications. Upon success, the response contains entity body describing the created subscription. + operationId: usersPOST + tags: + - subscriptions + requestBody: + description: 'The entity body in the request contains data type of the specific UE location event subscription that is to be created, where the data type options are listed below and defined in clauses 6.3.4 and 6.3.5: + + UserLocationEventSubscription. + + UserLocationPeriodicSubscription.' + content: + application/json: + schema: + type: object + properties: + UserLocationEventSubscription: + $ref: '#/components/schemas/UserLocationEventSubscription' + responses: + '201': + description: 'Indicates successful resource creation, where the resource URI shall be returned in the HTTP Location header field. + + + In the returned NotificationSubscription structure, the created subscription is described using the appropriate data type from the list below and as defined in clauses 6.3.4, and 6.3.5: + + UserLocationEventSubscription. + + UserLocationPeriodicSubscription.' + content: + application/json: + schema: + type: object + properties: + UserLocationEventSubscription: + $ref: '#/components/schemas/UserLocationEventSubscription' + '400': + $ref: '#/components/responses/400' + '401': + $ref: '#/components/responses/401' + '403': + $ref: '#/components/responses/403' + '404': + $ref: '#/components/responses/404' + '406': + $ref: '#/components/responses/406' + '415': + $ref: '#/components/responses/415' + '422': + $ref: '#/components/responses/422' + '429': + $ref: '#/components/responses/429' + callbacks: + notification: + post: + summary: Callback POST used to send a notification + description: Subscription notification + operationId: notificationPOST + requestBody: + description: Subscription notification + required: true + content: + application/json: + schema: + type: object + properties: + subscriptionNotification: + oneOf: + - $ref: '#/components/schemas/UserLocationEventSubscription' + - $ref: '#/components/schemas/UserLocationPeriodicSubscription' + /subscriptions/users/{subscriptionId}: + get: + description: The GET method is used to query the information about a specific access point under a zone. + operationId: usersByIdGET + tags: + - subscriptions + responses: + '200': + description: Upon success, a response body containing the access point information is returned. + content: + application/json: + schema: + type: object + properties: + AccessPointInfo: + $ref: '#/components/schemas/AccessPointInfo' + '400': + $ref: '#/components/responses/400' + '401': + $ref: '#/components/responses/401' + '403': + $ref: '#/components/responses/403' + '404': + $ref: '#/components/responses/404' + '406': + $ref: '#/components/responses/406' + '429': + $ref: '#/components/responses/429' + put: + description: The PUT method is used to update the existing subscription. PUT method in this case has "replace" semantics. Upon successful operation, the target resource is updated with new Data Type received within the message body of the PUT request. + operationId: usersByIdPUT + tags: + - subscriptions + requestBody: + description: 'New NotificationSubscription is included as entity body of the request. The allowed data types for subscriptions are defined in clauses 6.3.4 and 6.3.5: + + UserLocationEventSubscription. + + UserLocationPeriodicSubscription.' + content: + application/json: + schema: + type: object + properties: + UserLocationEventSubscription: + $ref: '#/components/schemas/UserLocationEventSubscription' + responses: + '200': + description: 'Upon success, a response body containing data type describing the updated subscription is returned. The allowed data types for subscriptions are defined in clauses 6.3.4 and 6.3.5: + + UserLocationEventSubscription. + + UserLocationPeriodicSubscription.' + content: + application/json: + schema: + type: object + properties: + UserLocationEventSubscription: + $ref: '#/components/schemas/UserLocationEventSubscription' + '400': + $ref: '#/components/responses/400' + '401': + $ref: '#/components/responses/401' + '403': + $ref: '#/components/responses/403' + '404': + $ref: '#/components/responses/404' + '406': + $ref: '#/components/responses/406' + '412': + $ref: '#/components/responses/412' + '422': + $ref: '#/components/responses/422' + '429': + $ref: '#/components/responses/429' + delete: + description: The DELETE method is used to cancel the existing subscription. Cancellation can be made by deleting the resource that represents existing subscription. + operationId: usersByIdDELETE + tags: + - subscriptions + responses: + '204': + $ref: '#/components/responses/204' + '401': + $ref: '#/components/responses/401' + '403': + $ref: '#/components/responses/403' + '404': + $ref: '#/components/responses/404' + '429': + $ref: '#/components/responses/429' + /subscriptions/zones: + get: + description: The GET method is used to request information about the subscriptions for this requestor. Upon success, the response contains entity body with the list of links to the subscriptions that are present for the requestor. + operationId: zonesGET + tags: + - subscriptions + parameters: + - $ref: '#/components/parameters/Query.Subscription_type1' + - $ref: '#/components/parameters/Query.Zoneid1' + responses: + '200': + description: Upon success, a response body containing the list of links to requestor's subscriptions is returned. + content: + application/json: + schema: + type: object + properties: + NotificationSubscriptionList: + $ref: '#/components/schemas/NotificationSubscriptionList' + '400': + $ref: '#/components/responses/400' + '401': + $ref: '#/components/responses/401' + '403': + $ref: '#/components/responses/403' + '404': + $ref: '#/components/responses/404' + '406': + $ref: '#/components/responses/406' + '429': + $ref: '#/components/responses/429' + post: + description: The POST method is used to create a new subscription to zone notifications. Upon success, the response contains entity body describing the created subscription. + operationId: zonesPOST + tags: + - subscriptions + requestBody: + description: 'The entity body in the request contains data type of the specific UE location event subscription that is to be created, where the data type options are listed below and defined in clauses 6.3.6 and 6.3.7: + + ZoneLocationEventSubscription. + + ZoneStatusSubscription.' + content: + application/json: + schema: + type: object + properties: + ZoneLocationEventSubscription: + $ref: '#/components/schemas/ZoneLocationEventSubscription' + responses: + '201': + description: 'Indicates successful resource creation, where the resource URI shall be returned in the HTTP Location header field. + + + In the returned NotificationSubscription structure, the created subscription is described using the appropriate data type from the list below and as defined in clauses 6.3.6 and 6.3.7: + + ZoneLocationEventSubscription. + + ZoneStatusSubscription.' + content: + application/json: + schema: + type: object + properties: + ZoneLocationEventSubscription: + $ref: '#/components/schemas/ZoneLocationEventSubscription' + '400': + $ref: '#/components/responses/400' + '401': + $ref: '#/components/responses/401' + '403': + $ref: '#/components/responses/403' + '404': + $ref: '#/components/responses/404' + '406': + $ref: '#/components/responses/406' + '415': + $ref: '#/components/responses/415' + '422': + $ref: '#/components/responses/422' + '429': + $ref: '#/components/responses/429' + callbacks: + notification: + post: + summary: Callback POST used to send a notification + description: Subscription notification + operationId: notificationPOST + requestBody: + description: Subscription notification + required: true + content: + application/json: + schema: + type: object + properties: + subscriptionNotification: + oneOf: + - $ref: '#/components/schemas/ZoneLocationEventSubscription' + - $ref: '#/components/schemas/ZoneStatusSubscription' + /subscriptions/zones/{subscriptionId}: + get: + description: The GET method is used to retrieve information about this subscription. Upon success, the response contains entity body with the data type describing the subscription. + operationId: zonesByIdGET + tags: + - subscriptions + responses: + '200': + description: 'Upon success, a response body containing data type describing the specific zone subscription is returned. The allowed data types for subscriptions are defined in clauses 6.3.6 and 6.3.7: + + ZoneLocationEventSubscription. + + ZoneStatusSubscription.' + content: + application/json: + schema: + type: object + properties: + ZoneLocationEventSubscription: + $ref: '#/components/schemas/ZoneLocationEventSubscription' + '400': + $ref: '#/components/responses/400' + '401': + $ref: '#/components/responses/401' + '403': + $ref: '#/components/responses/403' + '404': + $ref: '#/components/responses/404' + '406': + $ref: '#/components/responses/406' + '429': + $ref: '#/components/responses/429' + put: + description: The PUT method is used to update the existing subscription. PUT method in this case has "replace" semantics. Upon successful operation, the target resource is updated with new Data Type received within the message body of the PUT request. + operationId: zonesByIdPUT + tags: + - subscriptions + requestBody: + description: 'New NotificationSubscription is included as entity body of the request. The allowed data types for subscriptions are defined in clauses 6.3.6 and 6.3.7: + + ZoneLocationEventSubscription. + + ZoneStatusSubscription.' + content: + application/json: + schema: + type: object + properties: + ZoneLocationEventSubscription: + $ref: '#/components/schemas/ZoneLocationEventSubscription' + responses: + '200': + description: 'Upon success, a response body containing data type describing the updated subscription is returned. The allowed data types for subscriptions are defined in clauses 6.3.6 and 6.3.7: + + ZoneLocationEventSubscription. + + ZoneStatusSubscription.' + content: + application/json: + schema: + type: object + properties: + ZoneLocationEventSubscription: + $ref: '#/components/schemas/ZoneLocationEventSubscription' + '400': + $ref: '#/components/responses/400' + '401': + $ref: '#/components/responses/401' + '403': + $ref: '#/components/responses/403' + '404': + $ref: '#/components/responses/404' + '406': + $ref: '#/components/responses/406' + '412': + $ref: '#/components/responses/412' + '422': + $ref: '#/components/responses/422' + '429': + $ref: '#/components/responses/429' + delete: + description: The DELETE method is used to cancel the existing subscription. Cancellation can be made by deleting the resource that represents existing subscription. + operationId: zonesByIdDELETE + tags: + - subscriptions + responses: + '204': + $ref: '#/components/responses/204' + '401': + $ref: '#/components/responses/401' + '403': + $ref: '#/components/responses/403' + '404': + $ref: '#/components/responses/404' + '429': + $ref: '#/components/responses/429' + /queries/distance: + get: + description: The GET method is used to query information about distance from a user to a location or between two users. + operationId: distanceGET + tags: + - queries + parameters: + - $ref: '#/components/parameters/Query.Address2' + - $ref: '#/components/parameters/Query.Location' + responses: + '200': + description: Upon success, a response body containing the list of distance information is returned. + content: + application/json: + schema: + type: object + properties: + TerminalDistance: + $ref: '#/components/schemas/TerminalDistance' + '400': + $ref: '#/components/responses/400' + '401': + $ref: '#/components/responses/401' + '403': + $ref: '#/components/responses/403' + '404': + $ref: '#/components/responses/404' + '406': + $ref: '#/components/responses/406' + '429': + $ref: '#/components/responses/429' + /subscriptions/distance: + get: + description: The GET method is used to request information about the subscriptions for this requestor. Upon success, the response contains entity body with the list of links to the subscriptions that are present for the requestor. + operationId: distanceGET + tags: + - subscriptions + responses: + '200': + description: Upon success, a response body containing the list of links to requestor's subscriptions is returned. + content: + application/json: + schema: + type: object + properties: + NotificationSubscriptionList: + $ref: '#/components/schemas/NotificationSubscriptionList' + '400': + $ref: '#/components/responses/400' + '401': + $ref: '#/components/responses/401' + '403': + $ref: '#/components/responses/403' + '404': + $ref: '#/components/responses/404' + '406': + $ref: '#/components/responses/406' + '429': + $ref: '#/components/responses/429' + post: + description: The POST method is used to create a new subscription to user distance notifications. Upon success, the response contains entity body describing the created subscription. + operationId: distancePOST + tags: + - subscriptions + requestBody: + description: 'The entity body in the request contains data type of the user distance subscription that is to be created, where the data type options are listed below and defined in clauses 6.3.9: + + UserDistanceSubscription.' + content: + application/json: + schema: + type: object + properties: + UserDistanceSubscription: + $ref: '#/components/schemas/UserDistanceSubscription' + responses: + '201': + description: 'Indicates successful resource creation, where the resource URI shall be returned in the HTTP Location header field. + + + In the returned NotificationSubscription structure, the created subscription is described using the appropriate data type from the list below and as defined in clauses 6.3.9: + + UserDistanceSubscription.' + content: + application/json: + schema: + type: object + properties: + UserDistanceSubscription: + $ref: '#/components/schemas/UserDistanceSubscription' + '400': + $ref: '#/components/responses/400' + '401': + $ref: '#/components/responses/401' + '403': + $ref: '#/components/responses/403' + '404': + $ref: '#/components/responses/404' + '406': + $ref: '#/components/responses/406' + '415': + $ref: '#/components/responses/415' + '422': + $ref: '#/components/responses/422' + '429': + $ref: '#/components/responses/429' + callbacks: + notification: + post: + summary: Callback POST used to send a notification + description: Subscription notification + operationId: notificationPOST + requestBody: + description: Subscription notification + required: true + content: + application/json: + schema: + type: object + properties: + subscriptionNotification: + $ref: '#/components/schemas/UserDistanceSubscription' + /subscriptions/distance/{subscriptionId}: + get: + description: The GET method is used to retrieve information about this subscription. Upon success, the response contains entity body with the data type describing the subscription. + operationId: distanceByIdGET + tags: + - subscriptions + responses: + '200': + description: 'Upon success, a response body containing data type describing the specific distance event subscription is returned. The allowed data types for subscriptions are defined in clause 6.3.9: + + UserDistanceSubscription.' + content: + application/json: + schema: + type: object + properties: + UserDistanceSubscription: + $ref: '#/components/schemas/UserDistanceSubscription' + '400': + $ref: '#/components/responses/400' + '401': + $ref: '#/components/responses/401' + '403': + $ref: '#/components/responses/403' + '404': + $ref: '#/components/responses/404' + '406': + $ref: '#/components/responses/406' + '429': + $ref: '#/components/responses/429' + put: + description: The PUT method is used to update the existing subscription. PUT method in this case has "replace" semantics. Upon successful operation, the target resource is updated with new Data Type received within the message body of the PUT request. + operationId: distanceByIdPUT + tags: + - subscriptions + requestBody: + description: 'New NotificationSubscription is included as entity body of the request. The allowed data types for subscriptions are defined in clause 6.3.9: + + UserDistanceSubscription.' + content: + application/json: + schema: + type: object + properties: + UserDistanceSubscription: + $ref: '#/components/schemas/UserDistanceSubscription' + responses: + '200': + description: 'Upon success, a response body containing data type describing the updated subscription is returned. The allowed data types for subscriptions are defined in clause 6.3.9: + + UserDistanceSubscription.' + content: + application/json: + schema: + type: object + properties: + UserDistanceSubscription: + $ref: '#/components/schemas/UserDistanceSubscription' + '400': + $ref: '#/components/responses/400' + '401': + $ref: '#/components/responses/401' + '403': + $ref: '#/components/responses/403' + '404': + $ref: '#/components/responses/404' + '406': + $ref: '#/components/responses/406' + '412': + $ref: '#/components/responses/412' + '422': + $ref: '#/components/responses/422' + '429': + $ref: '#/components/responses/429' + delete: + description: The DELETE method is used to cancel the existing subscription. Cancellation can be made by deleting the resource that represents existing subscription. + operationId: distanceByIdDELETE + tags: + - subscriptions + responses: + '204': + $ref: '#/components/responses/204' + '401': + $ref: '#/components/responses/401' + '403': + $ref: '#/components/responses/403' + '404': + $ref: '#/components/responses/404' + '429': + $ref: '#/components/responses/429' + /subscriptions/area: + get: + description: The GET method is used to request information about the subscriptions for this requestor. Upon success, the response contains entity body with the list of links to the subscriptions that are present for the requestor. + operationId: areaGET + tags: + - subscriptions + parameters: + - $ref: '#/components/parameters/Query.Subscription_type2' + responses: + '200': + description: Upon success, a response body containing the list of links to requestor's subscriptions is returned. + content: + application/json: + schema: + type: object + properties: + NotificationSubscriptionList: + $ref: '#/components/schemas/NotificationSubscriptionList' + '400': + $ref: '#/components/responses/400' + '401': + $ref: '#/components/responses/401' + '403': + $ref: '#/components/responses/403' + '404': + $ref: '#/components/responses/404' + '406': + $ref: '#/components/responses/406' + '429': + $ref: '#/components/responses/429' + post: + description: The POST method is used to create a new subscription to area notifications. Upon success, the response contains entity body describing the created subscription. + operationId: areaPOST + tags: + - subscriptions + requestBody: + description: 'The entity body in the request contains data type of the specific UE location event subscription that is to be created, where the data type options are listed below and defined in clause 6.3.8: + + UserAreaNotification.' + content: + application/json: + schema: + type: object + properties: + UserAreaNotification: + $ref: '#/components/schemas/UserAreaNotification' + responses: + '201': + description: 'Indicates successful resource creation, where the resource URI shall be returned in the HTTP Location header field. + + + In the returned NotificationSubscription structure, the created subscription is described using the appropriate data type from the list below and as defined in clause 6.3.8: + + UserAreaNotification.' + content: + application/json: + schema: + type: object + properties: + UserAreaNotification: + $ref: '#/components/schemas/UserAreaNotification' + '400': + $ref: '#/components/responses/400' + '401': + $ref: '#/components/responses/401' + '403': + $ref: '#/components/responses/403' + '404': + $ref: '#/components/responses/404' + '406': + $ref: '#/components/responses/406' + '415': + $ref: '#/components/responses/415' + '422': + $ref: '#/components/responses/422' + '429': + $ref: '#/components/responses/429' + callbacks: + notification: + post: + summary: Callback POST used to send a notification + description: Subscription notification + operationId: notificationPOST + requestBody: + description: Subscription notification + required: true + content: + application/json: + schema: + type: object + properties: + subscriptionNotification: + $ref: '#/components/schemas/UserAreaNotification' + /subscriptions/area/{subscriptionId}: + get: + description: The GET method is used to retrieve information about this subscription. Upon success, the response contains entity body with the data type describing the subscription. + operationId: areaByIdGET + tags: + - subscriptions + responses: + '200': + description: "Upon success, a response body containing data type describing the specific zone subscription is returned. The allowed data types for subscriptions are defined in clause\_6.3.8:\nUserAreaNotification." + content: + application/json: + schema: + type: object + properties: + UserAreaNotification: + $ref: '#/components/schemas/UserAreaNotification' + '400': + $ref: '#/components/responses/400' + '401': + $ref: '#/components/responses/401' + '403': + $ref: '#/components/responses/403' + '404': + $ref: '#/components/responses/404' + '406': + $ref: '#/components/responses/406' + '429': + $ref: '#/components/responses/429' + put: + description: The PUT method is used to update the existing subscription. PUT method in this case has "replace" semantics. Upon successful operation, the target resource is updated with new Data Type received within the message body of the PUT request. + operationId: areaByIdPUT + tags: + - subscriptions + requestBody: + description: 'New NotificationSubscription is included as entity body of the request. The allowed data types for subscriptions are defined in clauses 6.3.8: + + UserAreaNotification.' + content: + application/json: + schema: + type: object + properties: + UserAreaNotification: + $ref: '#/components/schemas/UserAreaNotification' + responses: + '200': + description: 'Upon success, a response body containing data type describing the updated subscription is returned. The allowed data types for subscriptions are defined in clause 6.3.8: + + UserAreaNotification.' + content: + application/json: + schema: + type: object + properties: + UserAreaNotification: + $ref: '#/components/schemas/UserAreaNotification' + '400': + $ref: '#/components/responses/400' + '401': + $ref: '#/components/responses/401' + '403': + $ref: '#/components/responses/403' + '404': + $ref: '#/components/responses/404' + '406': + $ref: '#/components/responses/406' + '412': + $ref: '#/components/responses/412' + '422': + $ref: '#/components/responses/422' + '429': + $ref: '#/components/responses/429' + delete: + description: The DELETE method is used to cancel the existing subscription. Cancellation can be made by deleting the resource that represents existing subscription. + operationId: areaByIdDELETE + tags: + - subscriptions + responses: + '204': + $ref: '#/components/responses/204' + '401': + $ref: '#/components/responses/401' + '403': + $ref: '#/components/responses/403' + '404': + $ref: '#/components/responses/404' + '429': + $ref: '#/components/responses/429' +components: + schemas: + ProblemDetails: + type: object + properties: + type: + type: string + format: uri + description: A URI reference according to IETF RFC 3986 that identifies the problem type + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: URI + title: + type: string + description: A short, human-readable summary of the problem type + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: String + status: + type: integer + format: uint32 + description: The HTTP status code for this occurrence of the problem + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: Uint32 + detail: + type: string + description: A human-readable explanation specific to this occurrence of the problem + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: String + instance: + type: string + format: uri + description: A URI reference that identifies the specific occurrence of the problem + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: URI + LocationInfo1_: + properties: + accuracy: + type: integer + description: Horizontal accuracy / (semi-major) uncertainty of location provided in meters, as defined in [14]. Present only if "shape" equals 4, 5 or 6 + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: UnsignedInt + accuracyAltitude: + type: integer + description: Altitude accuracy / uncertainty of location provided in meters, as defined in [14]. Present only if "shape" equals 3 or 4 + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: UnsignedInt + accuracySemiMinor: + type: integer + description: Horizontal accuracy / (semi-major) uncertainty of location provided in meters, as defined in [14]. Present only if "shape" equals 4, 5 or 6 + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: UnsignedInt + altitude: + description: Location altitude relative to the WGS84 ellipsoid surface. + type: number + format: float + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: Float + confidence: + type: integer + description: Confidence by which the position of a target entity is known to be within the shape description, expressed as a percentage and defined in [14]. Present only if "shape" equals 1, 4 or 6 + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: UnsignedInt + includedAngle: + type: integer + description: Present only if "shape" equals 6 + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: UnsignedInt + innerRadius: + type: integer + description: Present only if "shape" equals 6 + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: UnsignedInt + latitude: + description: "Location latitude, expressed in the range -90\xB0 to +90\xB0. Cardinality greater than one only if \"shape\" equals 7." + type: array + items: + type: number + format: float + minItems: 1 + x-etsi-mec-cardinality: 1..N + x-etsi-mec-origin-type: Float + longitude: + description: "Location longitude, expressed in the range -180\xB0 to +180\xB0. Cardinality greater than one only if \"shape\" equals 7." + type: array + items: + type: number + format: float + minItems: 1 + x-etsi-mec-cardinality: 1..N + x-etsi-mec-origin-type: Float + offsetAngle: + type: integer + description: Present only if "shape" equals 6 + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: UnsignedInt + orientationMajorAxis: + type: integer + description: "Angle of orientation of the major axis, expressed in the range 0\xB0 to 180\xB0, as defined in [14]. Present only if \"shape\" equals 4 or 6" + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: UnsignedInt + shape: + description: 'Shape information, as detailed in [14], associated with the reported location coordinate:

1 = ELLIPSOID_ARC

2 = ELLIPSOID_POINT

3 = ELLIPSOID_POINT_ALTITUDE

4 = ELLIPSOID_POINT_ALTITUDE_UNCERT_ELLIPSOID

5 = ELLIPSOID_POINT_UNCERT_CIRCLE

6 = ELLIPSOID_POINT_UNCERT_ELLIPSE

7 = POLYGON' + type: integer + x-etsi-mec-cardinality: '1' + x-etsi-mec-origin-type: Enum_inlined + uncertaintyRadius: + type: integer + description: Present only if "shape" equals 6 + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: UnsignedInt + velocity: + description: "Structure with attributes relating to the target entity\u2019s velocity, as defined in [14]." + properties: + bearing: + type: integer + description: "Bearing, expressed in the range 0\xB0 to 360\xB0, as defined in [14]." + x-etsi-mec-cardinality: '1' + x-etsi-mec-origin-type: UnsignedInt + horizontalSpeed: + type: integer + description: Horizontal speed, expressed in km/h and defined in [14]. + x-etsi-mec-cardinality: '1' + x-etsi-mec-origin-type: UnsignedInt + uncertainty: + type: integer + description: Horizontal uncertainty, as defined in [14]. Present only if "velocityType" equals 3 or 4 + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: UnsignedInt + velocityType: + description: 'Velocity information, as detailed in [14], associated with the reported location coordinate:

1 = HORIZONTAL

2 = HORIZONTAL_VERTICAL

3 = HORIZONTAL_UNCERT

4 = HORIZONTAL_VERTICAL_UNCERT' + type: integer + x-etsi-mec-cardinality: '1' + x-etsi-mec-origin-type: Enum_inlined + verticalSpeed: + description: Vertical speed, expressed in km/h and defined in [14]. Present only if "velocityType" equals 2 or 4 + type: integer + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: Int + verticalUncertainty: + type: integer + description: Vertical uncertainty, as defined in [14]. Present only if "velocityType" equals 4 + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: UnsignedInt + required: + - velocityType + - bearing + - horizontalSpeed + type: object + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: Structure (inlined) + timestamp: + $ref: '#/components/schemas/TimeStamp' + required: + - latitude + - longitude + - shape + type: object + x-etsi-ref: 6.5.3 + UserInfo1_: + properties: + accessPointId: + description: The identity of the access point the user is currently on, see note 1. + type: string + x-etsi-mec-cardinality: '1' + x-etsi-mec-origin-type: String + address: + description: Address of user (e.g. 'sip' URI, 'tel' URI, 'acr' URI) currently on the access point, see note 1. + format: uri + type: string + x-etsi-mec-cardinality: '1' + x-etsi-mec-origin-type: AnyURI + ancillaryInfo: + description: Reserved for future use. + type: string + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: String + contextLocationInfo: + description: Contextual information of a user location (e.g. aisle, floor, room number, etc.). + type: string + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: String + locationInfo: + $ref: '#/components/schemas/LocationInfo' + resourceURL: + description: Self-referring URL, see note 1. + type: string + x-etsi-mec-cardinality: '1' + x-etsi-mec-origin-type: String + timestamp: + $ref: '#/components/schemas/TimeStamp' + zoneId: + description: The identity of the zone the user is currently within, see note 1. + type: string + x-etsi-mec-cardinality: '1' + x-etsi-mec-origin-type: String + required: + - address + - accessPointId + - zoneId + - resourceURL + - timestamp + type: object + x-etsi-notes: "NOTE 1:\tAs specified in [5], clause 5.2.2.7.\nNOTE 2: \tAs specified in [5], clause 5.2.2.5." + x-etsi-ref: 6.2.2 + CallbackReference: + type: object + required: + - notifyURL + properties: + notifyURL: + description: Notify Callback URL + type: string + x-etsi-mec-cardinality: '1' + x-etsi-mec-origin-type: anyURI + callbackData: + description: Data the application can register with the server when subscribing to notifications, and that are passed back unchanged in each of the related notifications. These data can be used by the application in the processing of the notification, e.g. for correlation purposes. + type: string + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: string + notificationFormat: + $ref: '#/components/schemas/NotificationFormat' + UserTrackingSubscription: + description: A type containing user tracking subscription. + type: object + required: + - callbackReference + - address + properties: + clientCorrelator: + type: string + description: A correlator that the client can use to tag this particular resource representation during a request to create a resource on the server. + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: string + callbackReference: + $ref: '#/components/schemas/CallbackReference' + address: + type: string + description: Address of user (e.g. "sip" URI, "tel" URI, "acr" URI) to monitor + x-etsi-mec-cardinality: 1 + x-etsi-mec-origin-type: anyURI + userEventCriteria: + type: array + items: + $ref: '#/components/schemas/UserEventType' + description: List of user event values to generate notifications for (these apply to address specified). If this element is missing, a notification is requested to be generated for any change in user event. + x-etsi-mec-cardinality: 0..N + x-etsi-mec-origin-type: UserEventType + resourceURL: + description: Self referring URL + type: string + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: anyURI + ZonalPresenceNotification: + description: A type containing zonal presence notification + type: object + required: + - zoneId + - address + - userEventType + - currentAccessPointId + - timestamp + properties: + callbackData: + description: CallBackData if passed by the application during the associated ZonalTrafficSubscription and UserTrackingSubscription operation. See [REST_NetAPI_Common]. + type: string + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: string + zoneId: + description: Identifier of zone + type: string + x-etsi-mec-cardinality: 1 + x-etsi-mec-origin-type: string + address: + description: Address of user (e.g. "sip" URI, "tel" URI, "acr" URI) to monitor + type: string + x-etsi-mec-cardinality: 1 + x-etsi-mec-origin-type: anyURI + interestRealm: + description: Interest realm of access point (e.g. geographical area, a type of industry etc.). + type: string + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: string + userEventType: + $ref: '#/components/schemas/UserEventType' + currentAccessPointId: + description: Identifier of access point. + type: string + x-etsi-mec-cardinality: 1 + x-etsi-mec-origin-type: string + previousAccessPointId: + description: Identifier of access point. + type: string + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: string + timestamp: + $ref: '#/components/schemas/TimeStamp' + link: + description: Link to other resources that are in relationship with this notification. The server SHOULD include a link to the related subscription. No other links are required or suggested by this specification + type: array + items: + $ref: '#/components/schemas/Link' + x-etsi-mec-cardinality: 0..N + x-etsi-mec-origin-type: Link + UserEventType: + type: string + enum: + - Entering + - Leaving + - Transferring + Link: + description: Link to other resources + type: object + required: + - rel + - href + properties: + rel: + description: Describes the relationship between the URI and the resource. + type: string + href: + description: URI + type: string + format: anyURI + ZonalTrafficSubscription: + description: A type containing zonal traffic subscription + type: object + required: + - callbackReference + - zoneId + properties: + clientCorrelator: + description: A correlator that the client can use to tag this particular resource representation during a request to create a resource on the server. + type: string + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: string + callbackReference: + $ref: '#/components/schemas/CallbackReference' + zoneId: + description: Identifier of zone + type: string + x-etsi-mec-cardinality: 1 + x-etsi-mec-origin-type: string + interestRealm: + description: Interest realm of access point (e.g. geographical area, a type of industry etc.). + type: array + items: + type: string + x-etsi-mec-cardinality: 0..N + x-etsi-mec-origin-type: string + userEventCriteria: + $ref: '#/components/schemas/UserEventType' + duration: + description: Period (in seconds) of time notifications are provided for. If set to "0" (zero), a default duration time, which is specified by the service policy, will be used. If the parameter is omitted, the notifications will continue until the maximum duration time, which is specified by the service policy, unless the notifications are stopped by deletion of subscription for notifications. This element MAY be given by the client during resource creation in order to signal the desired lifetime of the subscription. The server MUST return in this element the period of time for which the subscription will still be valid. + type: integer + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: unsignedInt + resourceURL: + type: string + description: Self referring URL + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: anyURI + OperationStatus: + type: string + enum: + - Serviceable + - Unserviceable + - Unknown + ZoneStatusSubscription: + x-etsi-ref: 6.3.7 + type: object + properties: + subscriptionType: + description: Shall be set to "ZoneStatusSubscription". + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + clientCorrelator: + description: A correlator that the client can use to tag this particular resource representation during a request to create a resource on the server. See note 2. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + callbackReference: + description: URI exposed by the client on which to receive notifications via HTTP. See note 1. + x-etsi-mec-origin-type: Uri + x-etsi-mec-cardinality: 0..1 + type: string + format: uri + requestTestNotification: + description: "Set to TRUE by the service consumer to request a test notification via HTTP on the callbackReference URI, as specified in ETSI GS\_MEC 009 [4], clause 6.12a." + x-etsi-mec-origin-type: Boolean + x-etsi-mec-cardinality: 0..1 + type: boolean + websockNotifConfig: + # description': Provides details to negotiate and signal the use of a Websocket connection between the location server and the service consumer for notifications. See note 1. + $ref: '#/components/schemas/WebsockNotifConfig' + # x-etsi-mec-origin-type': WebsockNotifConfig + # x-etsi-mec-cardinality': 0..1 + _links: + $ref: '#/components/schemas/_links' + zoneId: + description: Identifier of zone (e.g. zone001) to monitor. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + upperNumberOfUsersZoneThreshold: + description: Threshold number of users in a zone which if crossed upward shall cause a notification. + x-etsi-mec-origin-type: UnsignedInt + x-etsi-mec-cardinality: 0..1 + type: integer + lowerNumberOfUsersZoneThreshold: + description: Threshold number of users in a zone which if crossed downward shall cause a notification. + x-etsi-mec-origin-type: UnsignedInt + x-etsi-mec-cardinality: 0..1 + type: integer + upperNumberOfUsersAPThreshold: + description: Threshold number of users in an access point which if crossed upward shall cause a notification. + x-etsi-mec-origin-type: UnsignedInt + x-etsi-mec-cardinality: 0..1 + type: integer + lowerNumberOfUsersAPThreshold: + description: Threshold number of users in an access point which if crossed downward shall cause a notification. + x-etsi-mec-origin-type: UnsignedInt + x-etsi-mec-cardinality: 0..1 + type: integer + operationStatus: + description: List of operation status values to generate notifications for (these apply to all access points within a zone). See note 3. + x-etsi-mec-origin-type: OperationStatus + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + $ref: '#/components/schemas/OperationStatus' + reportingCtrl: + # description': Provides parameters that ctrl the reporting. + $ref: '#/components/schemas/ReportingCtrl' + # x-etsi-mec-origin-type': ReportingCtrl + # x-etsi-mec-cardinality': 0..1 + expiryDeadline: + # description': The expiration time of the subscription determined by the Zone Status Service. + $ref: '#/components/schemas/TimeStamp' + # x-etsi-mec-origin-type': TimeStamp + # x-etsi-mec-cardinality': 0..1 + required: + - subscriptionType + - zoneId + x-etsi-notes: "NOTE 1:\tAt least one of callbackReference and websockNotifConfig shall be provided by the service consumer. If both are provided, it is up to location server to select an alternative and return only that alternative in the response, as specified in ETSI GS MEC 009 [4], clause 6.12a.\nNOTE 2:\tThis allows the client to recover from communication failures during resource creation and therefore avoids duplicate subscription creation in such situations. In case the element is present, the server shall not alter its value, and shall provide it as part of the representation of this resource. In case the element is not present, the server shall not generate it.\nNOTE 3:\tAs specified in [5], clause 5.2.3.2." + PeriodicEventInfo: + x-etsi-notes: "NOTE 3:\tAs specified in [17], clause 6.1.6.2.24." + LocationEventType: + x-etsi-ref: 8.1.6.3 + type: string + enum: + - ENTERING_AREA_EVENT + - LEAVING_AREA_EVENT + x-etsi-mec-extensible: true + x-etsi-mec-enumeration-table: + - value: ENTERING_AREA_EVENT + description: Entering area reporting event. + - value: LEAVING_AREA_EVENT + description: Leaving area reporting event. + Uri: + type: string + format: uri + description: Uniform Resource Identifier (URI) + CivicAddress: + x-etsi-notes: "NOTE 3:\tAs specified in [17], clause 6.1.6.2.14." + NotificationResult: + x-etsi-notes: "NOTE 3:\tIf the result is SUCCESS, at least one of locationInfo, civicInfo and relativeLocationInfo shall be present. " + OccurrenceInfo: + x-etsi-notes: "NOTE 3:\tAs specified in [17], clause 6.1.6.3.16." + ZoneStatusNotification: + x-etsi-ref: 6.4.7 + type: object + properties: + notificationType: + description: Shall be set to "ZoneStatusNotification". + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + timeStamp: + # description': Time stamp. + $ref: '#/components/schemas/TimeStamp' + # x-etsi-mec-origin-type': TimeStamp + # x-etsi-mec-cardinality': 0..1 + userNumEvent: + type: integer + description: 'Shall be present when ZoneStatusSubscription includes upperNumberOfUsersZoneThreshold, lowerNumberOfUsersZoneThreshold, upperNumberOfUsersAPThreshold or lowerNumberOfUsersAPThreshold, and the number of users in a zone or an access point crosses the threshold defined in the subscription: + + 1 = OVER_ZONE_UPPER_THD. + + 2 = UNDER_ZONE_LOWER_THD. + + 3 = OVER_AP_UPPER_THD. + + 4 = UNDER_AP_LOWER_THD.' + enum: + - SEE_DESCRIPTION + x-etsi-mec-origin-type: Enum(inlined) + x-etsi-mec-cardinality: 0..1 + operationStatus: + # description': Shall be present when ZoneStatusSubscription includes operationStatus and the operation status value of an access point meets Serviceable or Unserviceable or Unknown defined in the subscription. See note 1. + $ref: '#/components/schemas/OperationStatus' + # x-etsi-mec-origin-type': OperationStatus + # x-etsi-mec-cardinality': 0..1 + zoneId: + description: 'The identity of the zone. ' + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + accessPointId: + description: Identifier of an access point (e.g. ap01). Shall be included when userNumEvent related with access point or operationStatus is included. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + _links: + $ref: '#/components/schemas/_links3' + required: + - notificationType + - zoneId + - _links + x-etsi-notes: "NOTE:\tAs specified in [5], clause 5.2.3.2." + UserList: + x-etsi-ref: 6.2.5 + type: object + properties: + user: + description: 'Collection of the user location information list. ' + x-etsi-mec-origin-type: UserInfo + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + $ref: '#/components/schemas/UserInfo' + resourceURL: + description: Self referring URL. This shall be only included in the procedure of UE Location Lookup. + x-etsi-mec-origin-type: Uri + x-etsi-mec-cardinality: 0..1 + type: string + format: uri + AccessPointList: + description: A type containing list of access points. + type: object + required: + - zoneId + - resourceURL + properties: + zoneId: + description: Identifier of zone + type: string + x-etsi-mec-cardinality: 1 + x-etsi-mec-origin-type: string + accessPoint: + description: Collection of the access point information list. + type: array + items: + $ref: '#/components/schemas/AccessPointInfo' + x-etsi-mec-cardinality: 0..N + x-etsi-mec-origin-type: AccessPointInfo + resourceURL: + description: Self referring URL + type: string + x-etsi-mec-cardinality: 1 + x-etsi-mec-origin-type: anyURI + ConnectionType: + description: The connection type for the access point + type: string + enum: + - Femto + - LTE-femto + - Smallcell + - LTE-smallcell + - Wifi + - Pico + - Micro + - Macro + - Wimax + - Unknown + AccessPointInfo: + description: A type containing access point information. + type: object + required: + - accessPointId + - connectionType + - operationStatus + - numberOfUsers + - resourceURL + properties: + accessPointId: + description: Identifier of access point. + type: string + x-etsi-mec-cardinality: 1 + x-etsi-mec-origin-type: string + locationInfo: + $ref: '#/components/schemas/LocationInfo' + connectionType: + $ref: '#/components/schemas/ConnectionType' + operationStatus: + $ref: '#/components/schemas/OperationStatus' + numberOfUsers: + description: Number of users currently on the access point. + type: integer + x-etsi-mec-cardinality: 1 + x-etsi-mec-origin-type: integer + timezone: + description: Time zone of access point. + type: string + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: dateTimeStamp + interestRealm: + description: Interest realm of access point. + type: string + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: string + resourceURL: + description: Self referring URL + type: string + x-etsi-mec-cardinality: 1 + x-etsi-mec-origin-type: anyURI + ZoneInfo: + description: A type containing zone information. + type: object + required: + - zoneId + - numberOfAccessPoints + - numberOfUnserviceableAccessPoints + - numberOfUsers + - resourceURL + properties: + zoneId: + description: Identifier of zone + type: string + x-etsi-mec-cardinality: 1 + x-etsi-mec-origin-type: string + numberOfAccessPoints: + description: The number of access points within the zone + type: integer + x-etsi-mec-cardinality: 1 + x-etsi-mec-origin-type: unsignedInt + numberOfUnserviceableAccessPoints: + description: Number of inoperable access points within the zone. + type: integer + x-etsi-mec-cardinality: 1 + x-etsi-mec-origin-type: unsignedInt + numberOfUsers: + description: The number of users currently on the access point. + type: integer + x-etsi-mec-cardinality: 1 + x-etsi-mec-origin-type: unsignedInt + resourceURL: + description: Self referring URL + type: string + x-etsi-mec-cardinality: 1 + x-etsi-mec-origin-type: anyURI + ZoneList: + description: A type containing a list of zones. + type: object + required: + - resourceURL + properties: + zone: + description: Collection of the zone information list. + type: array + items: + $ref: '#/components/schemas/ZoneInfo' + resourceURL: + description: Self referring URL + type: string + x-etsi-mec-cardinality: 1 + x-etsi-mec-origin-type: anyURI + TerminalDistance: + description: A type containing information about the distance from a terminal to a location or between two terminals, in addition the accuracy and a timestamp of the information are provided. + type: object + required: + - distance + properties: + accuracy: + description: Accuracy of the provided distance in meters + type: integer + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: integer + distance: + description: Distance from terminal to a location or between two terminals specified in meters + type: integer + x-etsi-mec-cardinality: 1 + x-etsi-mec-origin-type: integer + timestamp: + $ref: '#/components/schemas/TimeStamp' + CircleNotificationSubscription: + description: A type containing data for notifications, when the area is defined as a circle. + type: object + required: + - callbackReference + - address + - latitude + - longitude + - radius + - trackingAccuracy + - enteringLeavingCriteria + - checkImmediate + - frequency + properties: + clientCorrelator: + description: A correlator that the client can use to tag this particular resource representation during a request to create a resource on the server. + type: string + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: string + resourceURL: + description: Self referring URL + type: string + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: anyURI + link: + description: Link to other resources that are in relationship with the resource. + type: array + items: + $ref: '#/components/schemas/Link' + x-etsi-mec-cardinality: 0..N + x-etsi-mec-origin-type: Link + callbackReference: + $ref: '#/components/schemas/CallbackReference' + requester: + description: Identifies the entity that is requesting the information (e.g. "sip" URI, "tel" URI, "acr" URI) + type: string + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: anyURI + address: + description: Address of terminals to monitor (e.g. "sip" URI, "tel" URI, "acr" URI) + type: array + items: + type: string + x-etsi-mec-cardinality: 1..N + x-etsi-mec-origin-type: anyURI + latitude: + description: Latitude of center point. + type: number + format: float + x-etsi-mec-cardinality: 1 + x-etsi-mec-origin-type: float + longitude: + description: Longitude of center point. + type: number + format: float + x-etsi-mec-cardinality: 1 + x-etsi-mec-origin-type: float + radius: + description: Radius circle around center point in meters. + type: number + format: float + x-etsi-mec-cardinality: 1 + x-etsi-mec-origin-type: float + trackingAccuracy: + description: Number of meters of acceptable error in tracking distance. + type: number + format: float + x-etsi-mec-cardinality: 1 + x-etsi-mec-origin-type: float + enteringLeavingCriteria: + $ref: '#/components/schemas/EnteringLeavingCriteria' + checkImmediate: + description: Check location immediately after establishing notification. + type: boolean + x-etsi-mec-cardinality: 1 + x-etsi-mec-origin-type: boolean + frequency: + description: Maximum frequency (in seconds) of notifications per subscription (can also be considered minimum time between notifications). + type: integer + x-etsi-mec-cardinality: 1 + x-etsi-mec-origin-type: int + duration: + description: "Period of time (in seconds) notifications are provided for. If set to \u201C0\u201D (zero), a default duration time, which is specified by the service policy, will be used. If the parameter is omitted, the notifications will continue until the maximum duration time, which is specified by the service policy, unless the notifications are stopped by deletion of subscription for notifications." + type: integer + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: int + count: + description: Maximum number of notifications per individual address. For no maximum, either do not include this element or specify a value of zero. Default value is 0. + type: integer + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: int + PeriodicNotificationSubscription: + description: A type containing data for periodic subscription. + type: object + required: + - callbackReference + - address + - requestedAccuracy + - frequency + properties: + clientCorrelator: + description: A correlator that the client can use to tag this particular resource representation during a request to create a resource on the server. + type: string + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: string + resourceURL: + description: Self referring URL + type: string + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: anyURI + link: + description: Link to other resources that are in relationship with the resource. + type: array + items: + $ref: '#/components/schemas/Link' + x-etsi-mec-cardinality: 0..N + x-etsi-mec-origin-type: Link + callbackReference: + $ref: '#/components/schemas/CallbackReference' + requester: + description: Identifies the entity that is requesting the information (e.g. "sip" URI, "tel" URI, "acr" URI) + type: string + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: anyURI + address: + description: Address of terminals to monitor (e.g. "sip" URI, "tel" URI, "acr" URI) + type: array + items: + type: string + x-etsi-mec-cardinality: 1..N + x-etsi-mec-origin-type: anyURI + requestedAccuracy: + description: Accuracy of the provided distance in meters. + type: integer + x-etsi-mec-cardinality: 1 + x-etsi-mec-origin-type: int + frequency: + description: Maximum frequency (in seconds) of notifications (can also be considered minimum time between notifications) per subscription. + type: integer + x-etsi-mec-cardinality: 1 + x-etsi-mec-origin-type: int + duration: + description: "Period of time (in seconds) notifications are provided for. If set to \u201C0\u201D (zero), a default duration time, which is specified by the service policy, will be used. If the parameter is omitted, the notifications will continue until the maximum duration time, which is specified by the service policy, unless the notifications are stopped by deletion of subscription for notifications." + type: integer + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: int + DistanceNotificationSubscription: + description: A type containing data for distance subscription, with reference to other devices. + type: object + required: + - callbackReference + - monitoredAddress + - distance + - trackingAccuracy + - criteria + - checkImmediate + - frequency + properties: + clientCorrelator: + description: A correlator that the client can use to tag this particular resource representation during a request to create a resource on the server. + type: string + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: string + resourceURL: + description: Self referring URL + type: string + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: anyURI + link: + description: Link to other resources that are in relationship with the resource. + type: array + items: + $ref: '#/components/schemas/Link' + x-etsi-mec-cardinality: 0..N + x-etsi-mec-origin-type: Link + callbackReference: + $ref: '#/components/schemas/CallbackReference' + requester: + description: Identifies the entity that is requesting the information (e.g. "sip" URI, "tel" URI, "acr" URI) + type: string + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: anyURI + referenceAddress: + description: Indicates address of each device that will be used as reference devices from which the distances towards monitored devices indicated in the Addresses will be monitored (e.g., 'sip' URI, 'tel' URI, 'acr' URI) + type: array + items: + type: string + x-etsi-mec-cardinality: 0..N + x-etsi-mec-origin-type: anyURI + monitoredAddress: + description: Contains addresses of devices to monitor (e.g., 'sip' URI, 'tel' URI, 'acr' URI) + type: array + items: + type: string + x-etsi-mec-cardinality: 1..N + x-etsi-mec-origin-type: anyURI + distance: + description: Distance between devices that shall be monitored. + type: number + format: float + x-etsi-mec-cardinality: 1 + x-etsi-mec-origin-type: float + trackingAccuracy: + description: Number of meters of acceptable error in tracking distance. + type: number + format: float + x-etsi-mec-cardinality: 1 + x-etsi-mec-origin-type: float + criteria: + $ref: '#/components/schemas/DistanceCriteria' + checkImmediate: + description: Check location immediately after establishing notification. + type: boolean + x-etsi-mec-cardinality: 1 + x-etsi-mec-origin-type: boolean + frequency: + description: Maximum frequency (in seconds) of notifications per subscription (can also be considered minimum time between notifications). + type: integer + x-etsi-mec-cardinality: 1 + x-etsi-mec-origin-type: int + duration: + description: "Period of time (in seconds) notifications are provided for. If set to \u201C0\u201D (zero), a default duration time, which is specified by the service policy, will be used. If the parameter is omitted, the notifications will continue until the maximum duration time, which is specified by the service policy, unless the notifications are stopped by deletion of subscription for notifications." + type: integer + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: int + count: + description: Maximum number of notifications per individual address. For no maximum, either do not include this element or specify a value of zero. Default value is 0. + type: integer + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: int + EnteringLeavingCriteria: + type: string + enum: + - Entering = 'Terminal is entering an area' + - Leaving = 'Terminal is leaving an area' + DistanceCriteria: + type: string + enum: + - AllWithinDistance = 'All monitored devices are within the specified distance' + - AnyWithinDistance = 'Any of monitored devices gets within the specified distance' + - AllBeyondDistance = 'All monitored devices are beyond the specified distance' + - AnyBeyondDistance = 'Any of monitored devices gets beyond the specified distance' + NotificationFormat: + type: string + enum: + - XML + - JSON + SubscriptionNotification: + description: A type containing the notification subscription. + type: object + required: + - terminalLocation + properties: + callbackData: + description: CallbackData if passed by the application in the receiptRequest element during the associated subscription operation + type: string + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: string + terminalLocation: + description: Collection of the terminal locations. + type: array + items: + $ref: '#/components/schemas/TerminalLocation' + x-etsi-mec-cardinality: 1..N + x-etsi-mec-origin-type: TerminalLocation + enteringLeavingCriteria: + $ref: '#/components/schemas/EnteringLeavingCriteria' + distanceCriteria: + $ref: '#/components/schemas/DistanceCriteria' + isFinalNotification: + description: Set to true if it is a final notification about location change. + type: boolean + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: boolean + link: + description: Link to other resources that are in relationship with the resource. + type: array + items: + $ref: '#/components/schemas/Link' + x-etsi-mec-cardinality: 0..N + x-etsi-mec-origin-type: Link + SubscriptionCancellationNotification: + description: A type containing the subscription cancellation notification. + type: object + required: + - terminalLocation + properties: + callbackData: + description: CallbackData if passed by the application in the receiptRequest element during the associated subscription operation + type: string + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: string + address: + description: Address of terminal if the error applies to an individual terminal. + type: string + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: anyURI + reason: + $ref: '#/components/schemas/ServiceError' + link: + description: Link to other resources that are in relationship with the resource. + type: array + items: + $ref: '#/components/schemas/Link' + x-etsi-mec-cardinality: 0..N + x-etsi-mec-origin-type: Link + TerminalLocation: + description: A type containing device address, retrieval status and location information. + type: object + required: + - address + - locationRetrievalStatus + properties: + address: + description: Address of the terminal to which the location information applies (e.g., 'sip' URI, 'tel' URI, 'acr' URI). + type: string + x-etsi-mec-cardinality: 1 + x-etsi-mec-origin-type: anyURI + locationRetrievalStatus: + $ref: '#/components/schemas/RetrievalStatus' + currentLocation: + $ref: '#/components/schemas/LocationInfo' + errorInformation: + $ref: '#/components/schemas/ServiceError' + TerminalLocationList: + description: Collection of the terminal locations. + type: array + items: + $ref: '#/components/schemas/TerminalLocation' + x-etsi-mec-cardinality: 1..N + x-etsi-mec-origin-type: TerminalLocation + RetrievalStatus: + type: string + enum: + - Retrieved + - NotRetrieved + - Error + ServiceError: + description: used to indicate a notification termination or cancellation. + type: object + required: + - messageId + - text + properties: + messageId: + description: Message identifier, either with prefix SVC or with prefix POL + type: string + x-etsi-mec-cardinality: 1 + x-etsi-mec-origin-type: string + text: + description: Message text, with replacement variables marked with %n, where n is an index into the list of elements, starting at 1 + type: string + x-etsi-mec-cardinality: 1 + x-etsi-mec-origin-type: string + variables: + description: Variables to substitute into text string + type: array + items: + type: string + x-etsi-mec-cardinality: 0..N + x-etsi-mec-origin-type: string + UserInfo: + x-etsi-ref: 6.2.2 + type: object + properties: + address: + description: Address of user (e.g. 'sip' URI, 'tel' URI, 'acr' URI) currently on the access point, see note 1. + x-etsi-mec-origin-type: AnyURI + x-etsi-mec-cardinality: '1' + type: string + format: uri + AccessPointId: + description: The identity of the access point the user is currently on, see note 1. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + zoneId: + description: The identity of the zone the user is currently within, see note 1. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + resourceURL: + description: Self-referring URL, see note 1. This shall be only included in the procedure of UE Location Lookup. + x-etsi-mec-origin-type: AnyURI + x-etsi-mec-cardinality: 0..1 + type: string + format: uri + timeStamp: + # description': Date and time that location was collected. + $ref: '#/components/schemas/TimeStamp' + # x-etsi-mec-origin-type': TimeStamp + # x-etsi-mec-cardinality': '1' + locationInfo: + # description': The geographical coordinates where the user is. + $ref: '#/components/schemas/LocationInfo' + # x-etsi-mec-origin-type': LocationInfo + # x-etsi-mec-cardinality': 0..1 + civicInfo: + # description': Contextual information of a user location (e.g. aisle, floor, room number, etc.). See note 3. + $ref: '#/components/schemas/CivicAddress' + # x-etsi-mec-origin-type': CivicAddress + # x-etsi-mec-cardinality': 0..1 + ancillaryInfo: + description: Reserved for future use. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + relativeLocationInfo: + # description': The relative location in a reference system. + $ref: '#/components/schemas/RelativeLocationInfo' + # x-etsi-mec-origin-type': RelativeLocationInfo + # x-etsi-mec-cardinality': 0..1 + required: + - address + - AccessPointId + - zoneId + - timeStamp + x-etsi-notes: "NOTE 1:\tAs specified in [5], clause 5.2.2.7.\nNOTE 2:\tVoid.\nNOTE 3:\tAs specified in [17], clause 6.1.6.2.14." + RelativeLocationInfo: + x-etsi-ref: 6.2.3 + type: object + properties: + mapInfo: + # description': Indicates a map corresponding to a location area. + $ref: '#/components/schemas/MapInfo' + # x-etsi-mec-origin-type': MapInfo + # x-etsi-mec-cardinality': '1' + X: + description: 'Indicates the value (in the unit of meters) on x-axis of the relative location in the Cartesian system. + + + Positive value represents easting from origin.' + x-etsi-mec-origin-type: Float + x-etsi-mec-cardinality: '1' + type: number + format: float + Y: + description: 'Indicates the value (in the unit of meters) on y-axis of the relative location in the Cartesian system. + + + Positive value represents northing from origin.' + x-etsi-mec-origin-type: Float + x-etsi-mec-cardinality: '1' + type: number + format: float + Z: + description: 'Indicates the value (in the unit of meters) on z-axis of the relative location in the Cartesian system for a 3DPoint. + + + Positive value represents height above origin.' + x-etsi-mec-origin-type: Float + x-etsi-mec-cardinality: 0..1 + type: number + format: float + required: + - mapInfo + - X + - Y + MapInfo: + x-etsi-ref: 6.2.4 + type: object + properties: + mapId: + description: 'Indicates the ID of the map. ' + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + origin: + $ref: '#/components/schemas/Origin' + ancillaryMapInfo: + description: Ancillary map information may be used to convert coordinates between different coordinate systems. + x-etsi-mec-origin-type: Not_specified + x-etsi-mec-cardinality: 0..1 + type: object + required: + - mapId + NotificationSubscriptionList: + x-etsi-ref: 6.3.3 + type: object + properties: + subscription: + type: array + items: + $ref: '#/components/schemas/Subscription' + resourceURL: + # description': Self-referring URL. + $ref: '#/components/schemas/LinkType' + # x-etsi-mec-origin-type': LinkType + # x-etsi-mec-cardinality': '1' + required: + - resourceURL + x-etsi-notes: "NOTE 1:\tVoid.\nNOTE 2:\tVoid." + UserLocationEventSubscription: + x-etsi-ref: 6.3.4 + type: object + properties: + subscriptionType: + description: Shall be set to "UserLocationEventSubscription". + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + clientCorrelator: + description: A correlator that the client can use to tag this particular resource representation during a request to create a resource on the server. See note 2. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + callbackReference: + description: URI exposed by the client on which to receive notifications via HTTP. See note 1. + x-etsi-mec-origin-type: Uri + x-etsi-mec-cardinality: 0..1 + type: string + format: uri + requestTestNotification: + description: "Set to TRUE by the service consumer to request a test notification via HTTP on the callbackReference URI, as specified in ETSI GS\_MEC 009 [4], clause 6.12a." + x-etsi-mec-origin-type: Boolean + x-etsi-mec-cardinality: 0..1 + type: boolean + websockNotifConfig: + # description': Provides details to negotiate and signal the use of a Websocket connection between the location server and the service consumer for notifications. See note 1. + $ref: '#/components/schemas/WebsockNotifConfig' + # x-etsi-mec-origin-type': WebsockNotifConfig + # x-etsi-mec-cardinality': 0..1 + _links: + $ref: '#/components/schemas/_links' + address: + description: Address of user (e.g. 'sip' URI, 'tel' URI, 'acr' URI) to monitor. + x-etsi-mec-origin-type: Uri + x-etsi-mec-cardinality: '1' + type: string + format: uri + userEventPara: + # description': Requirements for user event reporting. + $ref: '#/components/schemas/UserEventPara' + # x-etsi-mec-origin-type': UserEventPara + # x-etsi-mec-cardinality': 0..1 + locationEventCriteria: + description: 'List of user event values to generate notifications for (these apply to address specified). ' + x-etsi-mec-origin-type: LocationEventType + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + $ref: '#/components/schemas/LocationEventType' + expiryDeadline: + # description': The expiration time of the subscription determined by the UE Location Subscribe Service. + $ref: '#/components/schemas/TimeStamp' + # x-etsi-mec-origin-type': TimeStamp + # x-etsi-mec-cardinality': 0..1 + required: + - subscriptionType + - address + x-etsi-notes: "NOTE 1:\tAt least one of callbackReference and websockNotifConfig shall be provided by the service consumer. If both are provided, it is up to location server to select an alternative and return only that alternative in the response, as specified in ETSI GS MEC 009 [4], clause 6.12a.\nNOTE 2:\tThis allows the client to recover from communication failures during resource creation and therefore avoids duplicate subscription creation in such situations. In case the element is present, the server shall not alter its value, and shall provide it as part of the representation of this resource. In case the element is not present, the server shall not generate it." + UserLocationPeriodicSubscription: + x-etsi-ref: 6.3.5 + type: object + properties: + subscriptionType: + description: Shall be set to "UserLocationPeriodicSubscription". + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + clientCorrelator: + description: A correlator that the client can use to tag this particular resource representation during a request to create a resource on the server. See note 2. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + callbackReference: + description: "URI exposed by the client on which to receive notifications via HTTP. See note\_1." + x-etsi-mec-origin-type: Uri + x-etsi-mec-cardinality: 0..1 + type: string + format: uri + requestTestNotification: + description: Set to TRUE by the service consumer to request a test notification via HTTP on the callbackReference URI, as specified in ETSI GS MEC 009 [4], clause 6.12a. + x-etsi-mec-origin-type: Boolean + x-etsi-mec-cardinality: 0..1 + type: boolean + websockNotifConfig: + # description': Provides details to negotiate and signal the use of a Websocket connection between the location server and the service consumer for notifications. See note 1. + $ref: '#/components/schemas/WebsockNotifConfig' + # x-etsi-mec-origin-type': WebsockNotifConfig + # x-etsi-mec-cardinality': 0..1 + _links: + $ref: '#/components/schemas/_links' + address: + description: Address of user (e.g. 'sip' URI, 'tel' URI, 'acr' URI) to monitor. + x-etsi-mec-origin-type: Uri + x-etsi-mec-cardinality: '1' + type: string + format: uri + periodicEventInfo: + # description': Information for periodic event reporting. See note 3. + $ref: '#/components/schemas/PeriodicEventInfo' + # x-etsi-mec-origin-type': PeriodicEventInfo + # x-etsi-mec-cardinality': '1' + expiryDeadline: + # description': The expiration time of the subscription determined by the UE Location Subscribe Service. + $ref: '#/components/schemas/TimeStamp' + # x-etsi-mec-origin-type': TimeStamp + # x-etsi-mec-cardinality': 0..1 + required: + - subscriptionType + - address + - periodicEventInfo + x-etsi-notes: "NOTE 1:\tAt least one of callbackReference and websockNotifConfig shall be provided by the service consumer. If both are provided, it is up to location server to select an alternative and return only that alternative in the response, as specified in ETSI GS MEC 009 [4], clause 6.12a.\nNOTE 2:\tThis allows the client to recover from communication failures during resource creation and therefore avoids duplicate subscription creation in such situations. In case the element is present, the server shall not alter its value, and shall provide it as part of the representation of this resource. In case the element is not present, the server shall not generate it.\nNOTE 3:\tAs specified in [17], clause 6.1.6.2.24." + ZoneLocationEventSubscription: + x-etsi-ref: 6.3.6 + type: object + properties: + subscriptionType: + description: Shall be set to "ZoneLocationEventSubscription". + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + clientCorrelator: + description: A correlator that the client can use to tag this particular resource representation during a request to create a resource on the server. See note 2. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + callbackReference: + description: URI exposed by the client on which to receive notifications via HTTP. See note 1. + x-etsi-mec-origin-type: Uri + x-etsi-mec-cardinality: 0..1 + type: string + format: uri + requestTestNotification: + description: "Set to TRUE by the service consumer to request a test notification via HTTP on the callbackReference URI, as specified in ETSI GS\_MEC 009 [4], clause 6.12a." + x-etsi-mec-origin-type: Boolean + x-etsi-mec-cardinality: 0..1 + type: boolean + websockNotifConfig: + # description': Provides details to negotiate and signal the use of a Websocket connection between the location server and the service consumer for notifications. See note 1. + $ref: '#/components/schemas/WebsockNotifConfig' + # x-etsi-mec-origin-type': WebsockNotifConfig + # x-etsi-mec-cardinality': 0..1 + _links: + $ref: '#/components/schemas/_links' + zoneId: + description: Identifier of zone (e.g. zone001) to monitor. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + addressList: + description: List of the users to be monitored. If not present, all the users need to be monitored. + x-etsi-mec-origin-type: Uri + x-etsi-mec-cardinality: 0..N + type: array + format: uri + minItems: 0 + items: + $ref: '#/components/schemas/Uri' + locationEventCriteria: + description: 'List of user event values to generate notifications for. ' + x-etsi-mec-origin-type: LocationEventType + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + $ref: '#/components/schemas/LocationEventType' + reportingCtrl: + # description': Provides parameters that ctrl the reporting. + $ref: '#/components/schemas/ReportingCtrl' + # x-etsi-mec-origin-type': ReportingCtrl + # x-etsi-mec-cardinality': 0..1 + expiryDeadline: + # description': The expiration time of the subscription determined by the Zone Location Event Service. + $ref: '#/components/schemas/TimeStamp' + # x-etsi-mec-origin-type': TimeStamp + # x-etsi-mec-cardinality': 0..1 + required: + - subscriptionType + - zoneId + x-etsi-notes: "NOTE 1:\tAt least one of callbackReference and websockNotifConfig shall be provided by the service consumer. If both are provided, it is up to location server to select an alternative and return only that alternative in the response, as specified in ETSI GS MEC 009 [4], clause 6.12a.\nNOTE 2:\tThis allows the client to recover from communication failures during resource creation and therefore avoids duplicate subscription creation in such situations. In case the element is present, the server shall not alter its value, and shall provide it as part of the representation of this resource. In case the element is not present, the server shall not generate it." + UserAreaSubscription: + x-etsi-ref: 6.3.8 + type: object + properties: + subscriptionType: + description: Shall be set to "UserAreaSubscription". + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + clientCorrelator: + description: A correlator that the client can use to tag this particular resource representation during a request to create a resource on the server. See note 2. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + callbackReference: + description: URI exposed by the client on which to receive notifications via HTTP. See note 1. + x-etsi-mec-origin-type: Uri + x-etsi-mec-cardinality: 0..1 + type: string + format: uri + requestTestNotification: + description: "Set to TRUE by the service consumer to request a test notification via HTTP on the callbackReference URI, as specified in ETSI GS\_MEC 009 [4], clause 6.12a." + x-etsi-mec-origin-type: Boolean + x-etsi-mec-cardinality: 0..1 + type: boolean + websockNotifConfig: + # description': Provides details to negotiate and signal the use of a Websocket connection between the location server and the service consumer for notifications. See note 1. + $ref: '#/components/schemas/WebsockNotifConfig' + # x-etsi-mec-origin-type': WebsockNotifConfig + # x-etsi-mec-cardinality': 0..1 + _links: + $ref: '#/components/schemas/_links' + areaDefine: + # description': The parameters describing the area to subscribe. + $ref: '#/components/schemas/AreaInfo' + # x-etsi-mec-origin-type': AreaInfo + # x-etsi-mec-cardinality': '1' + addressList: + description: 'List of the users to be monitored. ' + x-etsi-mec-origin-type: Uri + x-etsi-mec-cardinality: 1..N + type: array + format: uri + minItems: 1 + items: + $ref: '#/components/schemas/Uri' + trackingAccuracy: + description: Number of meters of acceptable error. + x-etsi-mec-origin-type: Float + x-etsi-mec-cardinality: '1' + type: number + format: float + locationEventCriteria: + description: 'List of user event values to generate notifications for (these apply to address specified). ' + x-etsi-mec-origin-type: LocationEventType + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + $ref: '#/components/schemas/LocationEventType' + reportingCtrl: + # description': Provides parameters that ctrl the reporting. + $ref: '#/components/schemas/ReportingCtrl' + # x-etsi-mec-origin-type': ReportingCtrl + # x-etsi-mec-cardinality': 0..1 + reportingLocationReq: + description: This IE shall be set to true if a location estimate is required for each event report. + x-etsi-mec-origin-type: boolean + x-etsi-mec-cardinality: 0..1 + type: boolean + expiryDeadline: + # description': The expiration time of the subscription determined by the UE Area Subscribe Service. + $ref: '#/components/schemas/TimeStamp' + # x-etsi-mec-origin-type': TimeStamp + # x-etsi-mec-cardinality': 0..1 + required: + - subscriptionType + - areaDefine + - addressList + - trackingAccuracy + x-etsi-notes: "NOTE 1:\tAt least one of callbackReference and websockNotifConfig shall be provided by the service consumer. If both are provided, it is up to location server to select an alternative and return only that alternative in the response, as specified in ETSI GS MEC 009 [4], clause 6.12a.\nNOTE 2:\tThis allows the client to recover from communication failures during resource creation and therefore avoids duplicate subscription creation in such situations. In case the element is present, the server shall not alter its value, and shall provide it as part of the representation of this resource. In case the element is not present, the server shall not generate it." + UserDistanceSubscription: + x-etsi-ref: 6.3.9 + type: object + properties: + subscriptionType: + description: Shall be set to "UserDistanceSubscription". + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + clientCorrelator: + description: A correlator that the client can use to tag this particular resource representation during a request to create a resource on the server. See note 2. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + callbackReference: + description: URI exposed by the client on which to receive notifications via HTTP. See note 1. + x-etsi-mec-origin-type: Uri + x-etsi-mec-cardinality: 0..1 + type: string + format: uri + requestTestNotification: + description: Set to TRUE by the service consumer to request a test notification via HTTP on the callbackReference URI, as specified in ETSI GS MEC 009 [4], clause 6.12a. + x-etsi-mec-origin-type: Boolean + x-etsi-mec-cardinality: 0..1 + type: boolean + websockNotifConfig: + # description': Provides details to negotiate and signal the use of a Websocket connection between the location server and the service consumer for notifications. See note 1. + $ref: '#/components/schemas/WebsockNotifConfig' + # x-etsi-mec-origin-type': WebsockNotifConfig + # x-etsi-mec-cardinality': 0..1 + _links: + $ref: '#/components/schemas/_links1' + referenceAddress: + description: If specified, indicates address of each user that will be used as reference users from which the distances towards monitored users indicated in the Addresses will be monitored (e.g., 'sip' URI, 'tel' URI, 'acr' URI). Reference to a group could be provided here if supported by implementation. + x-etsi-mec-origin-type: Uri + x-etsi-mec-cardinality: 0..N + type: array + format: uri + minItems: 0 + items: + $ref: '#/components/schemas/Uri' + monitoredAddress: + description: 'Contains addresses of users to monitor (e.g. ''sip'' URI, ''tel'' URI, ''acr'' URI). Reference to a group could be provided here if supported by implementation. + + If the ReferenceAddress is specified, then the distance between each monitored user and reference user(s) will be monitored. + + If the ReferenceAddress is not present, then the distance between each pair of the monitored users will be monitored. Note that in that case there shall be at least two addresses specified here.' + x-etsi-mec-origin-type: Uri + x-etsi-mec-cardinality: 1..N + type: array + format: uri + minItems: 1 + items: + $ref: '#/components/schemas/Uri' + distance: + description: Distance between users that shall be monitored. The unit is meter. + x-etsi-mec-origin-type: Float + x-etsi-mec-cardinality: '1' + type: number + format: float + trackingAccuracy: + description: Number of meters of acceptable error in tracking distance. + x-etsi-mec-origin-type: Float + x-etsi-mec-cardinality: '1' + type: number + format: float + criteria: + # description': Indicates whether the notification should occur when the geographical relationship between monitored and referenced users' changes. See note 3. + $ref: '#/components/schemas/DistanceCriteria' + # x-etsi-mec-origin-type': DistanceCriteria + # x-etsi-mec-cardinality': '1' + checkImmediate: + # description': Check location immediately after establishing notification. + type: boolean + # x-etsi-mec-origin-type': Bool + # x-etsi-mec-cardinality': '1' + reportingCtrl: + # description': Provides parameters that ctrl the reporting. + $ref: '#/components/schemas/ReportingCtrl' + # x-etsi-mec-origin-type': ReportingCtrl + # x-etsi-mec-cardinality': 0..1 + expiryDeadline: + # description': The expiration time of the subscription determined by the UE Distance Subscribe Service. + $ref: '#/components/schemas/TimeStamp' + # x-etsi-mec-origin-type': TimeStamp + # x-etsi-mec-cardinality': 0..1 + required: + - subscriptionType + - monitoredAddress + - distance + - trackingAccuracy + - criteria + - checkImmediate + x-etsi-notes: "NOTE 1:\tAt least one of callbackReference and websockNotifConfig shall be provided by the service consumer. If both are provided, it is up to location server to select an alternative and return only that alternative in the response, as specified in ETSI GS MEC 009 [4], clause 6.12a.\nNOTE 2:\tThis allows the client to recover from communication failures during resource creation and therefore avoids duplicate subscription creation in such situations. In case the element is present, the server shall not alter its value, and shall provide it as part of the representation of this resource. In case the element is not present, the server shall not generate it.\nNOTE 3:\tAs specified in [6], clause 5.2.3.2." + TestNotification: + x-etsi-ref: 6.4.3 + type: object + properties: + notificationType: + description: Shall be set to "TestNotification". + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + _links: + $ref: '#/components/schemas/_links2' + required: + - notificationType + - _links + UserLocationEventNotification: + x-etsi-ref: 6.4.4 + type: object + properties: + notificationType: + description: Shall be set to "UserLocationEventNotification". + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + timeStamp: + # description': Time stamp. + $ref: '#/components/schemas/TimeStamp' + # x-etsi-mec-origin-type': TimeStamp + # x-etsi-mec-cardinality': 0..1 + address: + description: Address of user (e.g. 'sip' URI, 'tel' URI, 'acr' URI). + x-etsi-mec-origin-type: Uri + x-etsi-mec-cardinality: 0..1 + type: string + format: uri + userLocationEvent: + # description': The specific event triggering this notification, e.g. "ENTERING_AREA_EVENT", "LEAVING_AREA_EVENT". + $ref: '#/components/schemas/LocationEventType' + # x-etsi-mec-origin-type': LocationEventType + # x-etsi-mec-cardinality': '1' + locationInfo: + # description': The geographical coordinates where the user is. See note 3. + $ref: '#/components/schemas/LocationInfo' + # x-etsi-mec-origin-type': LocationInfo + # x-etsi-mec-cardinality': 0..1 + civicInfo: + # description': Contextual information of a user location (e.g. aisle, floor, room number, etc.). See note 1 and note 3. + $ref: '#/components/schemas/CivicAddress' + # x-etsi-mec-origin-type': CivicAddress + # x-etsi-mec-cardinality': 0..1 + relativeLocationInfo: + # description': The relative location in a reference system. See note 3. + $ref: '#/components/schemas/RelativeLocationInfo' + # x-etsi-mec-origin-type': RelativeLocationInfo + # x-etsi-mec-cardinality': 0..1 + zoneId: + description: "The identity of the zone. \nFor the events of \"ENTERING_AREA_EVENT\", it is the zone that the user is currently within. \nFor the event of \"LEAVING_AREA_EVENT\", it is the zone that the user used to be within.\nSee note 2." + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + accessPointId: + description: "The identity of the access point.\nFor the events of \"ENTERING_AREA_EVENT\", it indicates the access point that the user is currently within. \nFor the event of \"LEAVING_AREA_EVENT\", it indicates the access point that the user used to be within.\nSee note 2." + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + _links: + $ref: '#/components/schemas/_links3' + required: + - notificationType + - userLocationEvent + - _links + x-etsi-notes: "NOTE 1:\tAs specified in [17], clause 6.1.6.2.14.\nNOTE 2:\tAs specified in [5], clause 5.2.2.7.\nNOTE 3:\tAt least one of these attributes shall be present only when reportingLocationReq is set to TRUE in the UserLocationEventSubscription." + UserLocationPeriodicNotification: + x-etsi-ref: 6.4.5 + type: object + properties: + notificationType: + description: Shall be set to "UserLocationPeriodicNotification". + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + timeStamp: + # description': Time stamp. + $ref: '#/components/schemas/TimeStamp' + # x-etsi-mec-origin-type': TimeStamp + # x-etsi-mec-cardinality': 0..1 + address: + description: Address of user (e.g. 'sip' URI, 'tel' URI, 'acr' URI). + x-etsi-mec-origin-type: Uri + x-etsi-mec-cardinality: 0..1 + type: string + format: uri + result: + # description': The result of Localization. See note 3. + $ref: '#/components/schemas/NotificationResult' + # x-etsi-mec-origin-type': NotificationResult + # x-etsi-mec-cardinality': '1' + locationInfo: + # description': The geographical coordinates where the user is. + $ref: '#/components/schemas/LocationInfo' + # x-etsi-mec-origin-type': LocationInfo + # x-etsi-mec-cardinality': 0..1 + civicInfo: + # description': Contextual information of a user location (e.g. aisle, floor, room number, etc.). See note 1. + $ref: '#/components/schemas/CivicAddress' + # x-etsi-mec-origin-type': CivicAddress + # x-etsi-mec-cardinality': 0..1 + relativeLocationInfo: + # description': The relative location in a reference system. + $ref: '#/components/schemas/RelativeLocationInfo' + # x-etsi-mec-origin-type': RelativeLocationInfo + # x-etsi-mec-cardinality': 0..1 + zoneId: + description: "The identity of the zone that the user is currently within. \nSee note 2." + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + accessPointId: + description: "The identity of the access point that the user is currently within. \nSee note 2." + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + isFinalNotification: + description: Shall be set to true if it is a final notification. + x-etsi-mec-origin-type: Boolean + x-etsi-mec-cardinality: 0..1 + type: boolean + _links: + $ref: '#/components/schemas/_links3' + required: + - notificationType + - result + - _links + x-etsi-notes: "NOTE 1:\tAs specified in [17], clause 6.1.6.2.14.\nNOTE 2:\tAs specified in [5], clause 5.2.2.7.\nNOTE 3:\tIf the result is SUCCESS, at least one of locationInfo, civicInfo and relativeLocationInfo shall be present." + ZoneLocationEventNotification: + x-etsi-ref: 6.4.6 + type: object + properties: + notificationType: + description: Shall be set to "ZoneLocationEventNotification". + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + timeStamp: + # description': Time stamp. + $ref: '#/components/schemas/TimeStamp' + # x-etsi-mec-origin-type': TimeStamp + # x-etsi-mec-cardinality': 0..1 + address: + description: Address of user (e.g. 'sip' URI, 'tel' URI, 'acr' URI). + x-etsi-mec-origin-type: Uri + x-etsi-mec-cardinality: '1' + type: string + format: uri + userLocationEvent: + # description': The specific event triggering this notification, e.g. "ENTERING_AREA_EVENT","LEAVING_AREA_EVENT". + $ref: '#/components/schemas/LocationEventType' + # x-etsi-mec-origin-type': LocationEventType + # x-etsi-mec-cardinality': '1' + zoneId: + description: 'The identity of the zone. ' + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + _links: + $ref: '#/components/schemas/_links3' + required: + - notificationType + - address + - userLocationEvent + - zoneId + - _links + UserAreaNotification: + x-etsi-ref: 6.4.8 + type: object + properties: + notificationType: + description: Shall be set to "UserAreaNotification". + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + timeStamp: + # description': Time stamp. + $ref: '#/components/schemas/TimeStamp' + # x-etsi-mec-origin-type': TimeStamp + # x-etsi-mec-cardinality': 0..1 + address: + description: Address of user (e.g. 'sip' URI, 'tel' URI, 'acr' URI). + x-etsi-mec-origin-type: Uri + x-etsi-mec-cardinality: '1' + type: string + format: uri + locationInfo: + # description': The geographical coordinates where the user is. See note 2. + $ref: '#/components/schemas/LocationInfo' + # x-etsi-mec-origin-type': LocationInfo + # x-etsi-mec-cardinality': 0..1 + civicInfo: + # description': Contextual information of a user location (e.g. aisle, floor, room number, etc.). See note 1 and note 2. + $ref: '#/components/schemas/CivicAddress' + # x-etsi-mec-origin-type': CivicAddress + # x-etsi-mec-cardinality': 0..1 + relativeLocationInfo: + # description': The relative location in a reference system. See note 2. + $ref: '#/components/schemas/RelativeLocationInfo' + # x-etsi-mec-origin-type': RelativeLocationInfo + # x-etsi-mec-cardinality': 0..1 + userLocationEvent: + # description': The specific event triggering this notification, e.g. "ENTERING_AREA_EVENT", "LEAVING_AREA_EVENT". + $ref: '#/components/schemas/LocationEventType' + # x-etsi-mec-origin-type': LocationEventType + # x-etsi-mec-cardinality': '1' + _links: + $ref: '#/components/schemas/_links3' + required: + - notificationType + - address + - userLocationEvent + - _links + x-etsi-notes: "NOTE 1:\tAs specified in [17], clause 6.1.6.2.14.\nNOTE 2:\tAt least one of these attributes shall be present only when reportingLocationReq is set to TRUE in the UserAreaSubscription." + UserDistanceNotification: + x-etsi-ref: 6.4.9 + type: object + properties: + notificationType: + description: Shall be set to "UserDistanceNotification". + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + timeStamp: + # description': Time stamp. + $ref: '#/components/schemas/TimeStamp' + # x-etsi-mec-origin-type': TimeStamp + # x-etsi-mec-cardinality': 0..1 + monitoredUsers: + # description': Indicates the location information related to monitored users. + $ref: '#/components/schemas/UserList' + # x-etsi-mec-origin-type': UserList + # x-etsi-mec-cardinality': '1' + distanceEvent: + # description': Indicates the distance event triggering the notification. See note. + $ref: '#/components/schemas/DistanceCriteria' + # x-etsi-mec-origin-type': DistanceCriteria + # x-etsi-mec-cardinality': '1' + _links: + $ref: '#/components/schemas/_links3' + required: + - notificationType + - monitoredUsers + - distanceEvent + - _links + x-etsi-notes: "NOTE:\tAs specified in [6], clause 5.2.3.2." + TimeStamp: + x-etsi-ref: 6.5.2 + type: object + properties: + seconds: + description: 'The seconds part of the time. Time is defined as + + Unix-time since January 1, 1970, 00:00:00 UTC.' + x-etsi-mec-origin-type: Uint32 + x-etsi-mec-cardinality: '1' + type: integer + format: uint32 + nanoSeconds: + description: 'The nanoseconds part of the time. Time is defined as + + Unix-time since January 1, 1970, 00:00:00 UTC.' + x-etsi-mec-origin-type: Uint32 + x-etsi-mec-cardinality: '1' + type: integer + format: uint32 + required: + - seconds + - nanoSeconds + LocationInfo: + x-etsi-ref: 6.5.3 + type: object + properties: + latitude: + description: "Location latitude, expressed in the range -90\xB0 to +90\xB0. Cardinality greater than one only if \"shape\" equals 7." + x-etsi-mec-origin-type: Float + x-etsi-mec-cardinality: 1..N + type: array + format: float + minItems: 1 + items: + type: float + longitude: + description: "Location longitude, expressed in the range -180\xB0 to +180\xB0. Cardinality greater than one only if \"shape\" equals 7." + x-etsi-mec-origin-type: Float + x-etsi-mec-cardinality: 1..N + type: array + format: float + minItems: 1 + items: + type: float + altitude: + description: Location altitude relative to the WGS84 ellipsoid surface. + x-etsi-mec-origin-type: Float + x-etsi-mec-cardinality: 0..1 + type: number + format: float + accuracy: + description: Horizontal accuracy/(semi-major) uncertainty of location provided in meters, as defined in [14]. Present only if "shape" equals 4, 5 or 6. + x-etsi-mec-origin-type: UnsignedInt + x-etsi-mec-cardinality: 0..1 + type: integer + accuracySemiMinor: + description: Horizontal accuracy/(semi-major) uncertainty of location provided in meters, as defined in [14]. Present only if "shape" equals 4, 5 or 6. + x-etsi-mec-origin-type: UnsignedInt + x-etsi-mec-cardinality: 0..1 + type: integer + accuracyAltitude: + description: Altitude accuracy/uncertainty of location provided in meters, as defined in [14]. Present only if "shape" equals 3 or 4. + x-etsi-mec-origin-type: UnsignedInt + x-etsi-mec-cardinality: 0..1 + type: integer + orientationMajorAxis: + description: "Angle of orientation of the major axis, expressed in the range 0\xB0 to 180\xB0, as defined in [14]. Present only if \"shape\" equals 4 or 6." + x-etsi-mec-origin-type: UnsignedInt + x-etsi-mec-cardinality: 0..1 + type: integer + confidence: + description: Confidence by which the position of a target entity is known to be within the shape description, expressed as a percentage and defined in [14]. Present only if "shape" equals 1, 4 or 6. + x-etsi-mec-origin-type: UnsignedInt + x-etsi-mec-cardinality: 0..1 + type: integer + innerRadius: + description: Present only if "shape" equals 6. + x-etsi-mec-origin-type: UnsignedInt + x-etsi-mec-cardinality: 0..1 + type: integer + uncertaintyRadius: + description: Present only if "shape" equals 6. + x-etsi-mec-origin-type: UnsignedInt + x-etsi-mec-cardinality: 0..1 + type: integer + offsetAngle: + description: Present only if "shape" equals 6. + x-etsi-mec-origin-type: UnsignedInt + x-etsi-mec-cardinality: 0..1 + type: integer + includedAngle: + description: Present only if "shape" equals 6. + x-etsi-mec-origin-type: UnsignedInt + x-etsi-mec-cardinality: 0..1 + type: integer + shape: + type: integer + description: 'Shape information, as detailed in [14], associated with the reported location coordinate: + + 1 = Ellipsoid_Arc + + 2 = ellipsoid_Point + + 3 = ellipsoid_Point_Altitude + + 4 = ellipsoid_Point_Altitude_Uncert_Ellipsoid + + 5 = ellipsoid_Point_Uncert_Circle + + 6 = ellipsoid_Point_Uncert_Ellipse + + 7 = polygon' + enum: + - SEE_DESCRIPTION + x-etsi-mec-origin-type: Enum_inlined + x-etsi-mec-cardinality: '1' + velocity: + $ref: '#/components/schemas/Velocity' + required: + - latitude + - longitude + - shape + WebsockNotifConfig: + x-etsi-ref: 6.5.4 + type: object + properties: + websocketUri: + description: Set by location server to indicate to the service consumer the Websocket URI to be used for delivering notifications. + x-etsi-mec-origin-type: Uri + x-etsi-mec-cardinality: 0..1 + type: string + format: uri + requestWebsocketUri: + description: Set to true by the service consumer to indicate that Websocket delivery is requested. + x-etsi-mec-origin-type: Boolean + x-etsi-mec-cardinality: 0..1 + type: boolean + UserEventPara: + x-etsi-ref: 6.5.5 + type: object + properties: + reportingLocationReq: + description: This IE shall be set to true if a location estimate is required for each event report. + x-etsi-mec-origin-type: boolean + x-etsi-mec-cardinality: 0..1 + type: boolean + accessPointList: + description: One or more access points forming a monitoring area that could be any shape. See note 1. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + type: string + zoneId: + description: "Identifier of zone (e.g. zone001) to monitor. See note\_1." + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + occurrenceInfo: + # description': One time only report indication. See note 2. + $ref: '#/components/schemas/OccurrenceInfo' + # x-etsi-mec-origin-type': OccurrenceInfo + # x-etsi-mec-cardinality': 0..1 + x-etsi-notes: "NOTE 1:\tOnly one of accessPointList and zoneId may be present.\nNOTE 2:\tAs specified in [17], clause 6.1.6.3.16." + ReportingCtrl: + x-etsi-ref: 6.5.6 + type: object + properties: + minimumInterval: + description: Minimum interval between reports in case frequently reporting. Unit is second. + x-etsi-mec-origin-type: UnsignedInt + x-etsi-mec-cardinality: 0..1 + type: integer + maximumFrequency: + description: Maximum frequency (in seconds) of notifications per subscription. + x-etsi-mec-origin-type: UnsignedInt + x-etsi-mec-cardinality: 0..1 + type: integer + maximumCount: + description: Maximum number of notifications. For no maximum, either do not include this element or specify a value of zero. Default value is 0. + x-etsi-mec-origin-type: UnsignedInt + x-etsi-mec-cardinality: 0..1 + type: integer + AreaInfo: + x-etsi-ref: 6.5.7 + type: object + properties: + shape: + type: integer + description: 'The shape of the area monitored: + + 1 = CIRCLE. + + 2 = POLYGON.' + enum: + - SEE_DESCRIPTION + x-etsi-mec-origin-type: Enum(inlined) + x-etsi-mec-cardinality: '1' + points: + description: Shall include one point if the shape is CIRCLE. Shall include 3-15 points if the shape is POLYGON. + x-etsi-mec-origin-type: Point + x-etsi-mec-cardinality: 1..N + type: array + minItems: 1 + items: + $ref: '#/components/schemas/Point' + radius: + description: Shall be present if the shape is CIRCLE. + x-etsi-mec-origin-type: UnsignedInt + x-etsi-mec-cardinality: 0..1 + type: integer + required: + - shape + - points + Point: + x-etsi-ref: 6.5.8 + type: object + properties: + latitude: + description: "Location latitude, expressed in the range -90\xB0 to +90\xB0." + x-etsi-mec-origin-type: Float + x-etsi-mec-cardinality: '1' + type: number + format: float + longitude: + description: "Location longitude, expressed in the range -180\xB0 to +180\xB0." + x-etsi-mec-origin-type: Float + x-etsi-mec-cardinality: '1' + type: number + format: float + required: + - latitude + - longitude + LinkType: + x-etsi-ref: 6.7.2 + type: object + properties: + href: + description: URI referring to a resource. + x-etsi-mec-origin-type: Uri + x-etsi-mec-cardinality: '1' + type: string + format: uri + required: + - href + Origin: + description: Indicates the location of the map origin in the local Cartesian coordinate system. + x-etsi-mec-origin-type: Structure(inlined) + x-etsi-mec-cardinality: 0..1 + type: object + properties: + latitude: + description: "Location latitude, expressed in the range -90\xB0 to +90\xB0." + x-etsi-mec-origin-type: Float + x-etsi-mec-cardinality: '1' + type: number + format: float + longitude: + description: "Location longitude, expressed in the range -180\xB0 to +180\xB0." + x-etsi-mec-origin-type: Float + x-etsi-mec-cardinality: '1' + type: number + format: float + altitude: + description: Location altitude relative to the WGS84 ellipsoid surface. + x-etsi-mec-origin-type: Float + x-etsi-mec-cardinality: 0..1 + type: number + format: float + required: + - latitude + - longitude + Subscription: + description: '' + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: 0..N + type: object + minItems: 0 + properties: + href: + description: The URI referring to the subscription. + x-etsi-mec-origin-type: Uri + x-etsi-mec-cardinality: '1' + type: string + format: uri + subscriptionType: + description: "Type of the subscription. The string shall be set according to the \"subscriptionType\" attribute of the associated subscription data type defined in clauses\_6.3.4, 6.3.5, 6.3.6, 6.3.7 6.3.8 and 6.3.9:\n\"UserLocationEventSubscription\"\n\"UserLocationPeriodicSubscription\"\n\"ZoneLocationEventSubscription\"\n\"ZoneStatusSubscription\"\n\"UserAreaSubscription\"\n\"UserDistanceSubscription\"" + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + required: + - href + - subscriptionType + _links: + description: Hyperlink related to the resource. This shall be only included in the HTTP responses and in HTTP PUT requests. + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: 0..1 + type: object + properties: + self: + # description': Self-referring URI. The URI shall be unique within the UE Location Subscribe as it acts as an ID for the subscription. + $ref: '#/components/schemas/LinkType' + # x-etsi-mec-origin-type': LinkType + # x-etsi-mec-cardinality': '1' + required: + - self + _links1: + description: Hyperlink related to the resource. This shall be only included in the HTTP responses and in HTTP PUT requests. + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: 0..1 + type: object + properties: + self: + # description': Self-referring URI. The URI shall be unique within the User Distance Subscribe as it acts as an ID for the subscription. + $ref: '#/components/schemas/LinkType' + # x-etsi-mec-origin-type': LinkType + # x-etsi-mec-cardinality': '1' + required: + - self + _links2: + description: 'Hyperlink related to the resource. ' + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: '1' + type: object + properties: + subscription: + # description': URI identifying the subscription for the test notification. + $ref: '#/components/schemas/LinkType' + # x-etsi-mec-origin-type': LinkType + # x-etsi-mec-cardinality': '1' + required: + - subscription + _links3: + description: Object containing hyperlinks related to the resource. + x-etsi-mec-origin-type: Structure(inlined) + x-etsi-mec-cardinality: '1' + type: object + properties: + subscription: + # description': A link to the related subscription. + $ref: '#/components/schemas/LinkType' + # x-etsi-mec-origin-type': LinkType + # x-etsi-mec-cardinality': '1' + required: + - subscription + Velocity: + description: Structure with attributes relating to the target entity's velocity, as defined in [14]. + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: 0..1 + type: object + properties: + velocityType: + type: integer + description: 'Velocity information, as detailed in [14], associated with the reported location coordinate: + + 1 = Horizontal + + 2 = Horizontal_Vertical + + 3 = Horizontal_Uncert + + 4 = Horizontal_Vertical_Uncert' + enum: + - SEE_DESCRIPTION + x-etsi-mec-origin-type: Enum_inlined + x-etsi-mec-cardinality: '1' + bearing: + description: "Bearing, expressed in the range 0\xB0 to 360\xB0, as defined in [14]." + x-etsi-mec-origin-type: UnsignedInt + x-etsi-mec-cardinality: '1' + type: integer + horizontalSpeed: + description: Horizontal speed, expressed in km/h and defined in [14]. + x-etsi-mec-origin-type: UnsignedInt + x-etsi-mec-cardinality: '1' + type: integer + uncertainty: + description: Horizontal uncertainty, as defined in [14]. Present only if "velocityType" equals 3 or 4. + x-etsi-mec-origin-type: UnsignedInt + x-etsi-mec-cardinality: 0..1 + type: integer + verticalSpeed: + description: Vertical speed, expressed in km/h and defined in [14]. Present only if "velocityType" equals 2 or 4. + x-etsi-mec-origin-type: Int + x-etsi-mec-cardinality: 0..1 + type: integer + verticalUncertainty: + description: Vertical uncertainty, as defined in [14]. Present only if "velocityType" equals 4. + x-etsi-mec-origin-type: UnsignedInt + x-etsi-mec-cardinality: 0..1 + type: integer + required: + - velocityType + - bearing + - horizontalSpeed + responses: + '200': + description: OK + '204': + description: No Content + '400': + description: 'Bad Request: used to indicate that incorrect parameters were passed to the request.' + content: + application/problem+json: + schema: + $ref: '#/components/schemas/ProblemDetails' + '401': + description: 'Unauthorized: used when the client did not submit credentials.' + content: + application/problem+json: + schema: + $ref: '#/components/schemas/ProblemDetails' + '403': + description: 'Forbidden: operation is not allowed given the current status of the resource.' + content: + application/problem+json: + schema: + $ref: '#/components/schemas/ProblemDetails' + '404': + description: 'Not Found: used when a client provided a URI that cannot be mapped to a valid resource URI.' + content: + application/problem+json: + schema: + $ref: '#/components/schemas/ProblemDetails' + '406': + description: 'Not Acceptable: used to indicate that the server cannot provide the any of the content formats supported by the client.' + content: + application/problem+json: + schema: + $ref: '#/components/schemas/ProblemDetails' + '412': + description: 'Precondition failed: used when a condition has failed during conditional requests, e.g. when using ETags to avoid write conflicts when using PUT' + content: + application/problem+json: + schema: + $ref: '#/components/schemas/ProblemDetails' + '415': + description: 'Unsupported Media Type: used to indicate that the server or the client does not support the content type of the entity body.' + content: + application/problem+json: + schema: + $ref: '#/components/schemas/ProblemDetails' + '422': + description: 'Unprocessable Entity: used to indicate that the server understands the content type of the request entity and that the syntax of the request entity is correct but that the server is unable to process the contained instructions. This error condition can occur if an JSON request body is syntactically correct but semantically incorrect, for example if the target area for the request is considered too large. This error condition can also occur if the capabilities required by the request are not supported.' + content: + application/problem+json: + schema: + $ref: '#/components/schemas/ProblemDetails' + '429': + description: 'Too Many Requests: used when a rate limiter has triggered.' + content: + application/problem+json: + schema: + $ref: '#/components/schemas/ProblemDetails' + parameters: + Query.Zoneid: + description: Identifier of zone (e.g. zone001). + name: zoneid + cardinality: 0..N + in: query + required: false + x-exportParamName: Query.Zoneid + schema: + type: array + items: + type: string + Query.Accesspointid: + description: Identifier of access point (e.g. 001010000000000000000000000000001). + name: accesspointid + cardinality: 0..N + in: query + required: false + x-exportParamName: Query.Accesspointid + schema: + type: array + items: + type: string + Query.Address: + description: Address of users (e.g. 'sip' URI, 'tel' URI, 'acr' URI). See note. + name: address + cardinality: 0..N + in: query + required: false + x-exportParamName: Query.Address + schema: + type: array + items: + type: anyuri + Query.Subscription_type: + description: 'Query parameter to filter on a specific subscription type. Permitted values: + + event + + periodic.' + name: subscription_type + cardinality: 0..1 + in: query + required: false + x-exportParamName: Query.Subscription_type + schema: + type: string + Query.Address1: + description: Address of user (e.g. 'sip' URI, 'tel' URI, 'acr' URI). + name: address + cardinality: 0..1 + in: query + required: false + x-exportParamName: Query.Address1 + schema: + type: uri + Query.Subscription_type1: + description: 'Query parameter to filter on a specific subscription type. Permitted values: + + event + + status.' + name: subscription_type + cardinality: 0..1 + in: query + required: false + x-exportParamName: Query.Subscription_type1 + schema: + type: string + Query.Zoneid1: + description: The identity of the zone. . + name: zoneid + cardinality: 0..1 + in: query + required: false + x-exportParamName: Query.Zoneid1 + schema: + type: string + Query.Address2: + description: "One or two addresses of user to check.\nThe second \"address\" parameter shall not be included when the distance between a user and a location is requested. \nThe second \"address\" parameter shall be included when a location is not provided." + name: address + cardinality: 1..2 + in: query + required: true + x-exportParamName: Query.Address2 + schema: + type: array (uri) + Query.Location: + description: Shall not be included when the distance between two terminals is requested. + name: location + cardinality: 0..1 + in: query + required: false + x-exportParamName: Query.Location + schema: + $ref: '#/components/schemas/Point' + Query.Subscription_type2: + description: 'Query parameter to filter on a specific subscription type. Permitted values: + + event.' + name: subscription_type + cardinality: 0..1 + in: query + required: false + x-exportParamName: Query.Subscription_type2 + schema: + type: string + diff --git a/Auto_Generated_OAS_Output_Files/Auto_Generated_OAS_Output_Files/gs_mec014v020101p.yaml b/Auto_Generated_OAS_Output_Files/Auto_Generated_OAS_Output_Files/gs_mec014v020101p.yaml new file mode 100644 index 0000000..733af14 --- /dev/null +++ b/Auto_Generated_OAS_Output_Files/Auto_Generated_OAS_Output_Files/gs_mec014v020101p.yaml @@ -0,0 +1,180 @@ +openapi: 3.1.0 +jsonSchemaDialect: https://json-schema.org/draft/2020-12/schema +info: + contact: + url: https://forge.etsi.org/rep/mec/gs014-ue-identity-api + title: ETSI GS MEC 014 UE Identity API + description: "The present document focuses on the UE Identity functionality. It describes the related application policy information (including authorization, access control and traffic rule pattern format), information flows, required information and service aggregation patterns. The present document specifies the necessary API, data model and data format, considering existing API(s) if applicable. \n" + license: + name: BSD-3-Clause + url: https://forge.etsi.org/legal-matters + version: 2.1.1 +paths: + /{appInstanceId}/ue_identity_tag_info: + get: + summary: Retrieve information about specific UeIdentityTagInfo. + description: This method retrieves information about a UeIdentityTagInfo resource. + operationId: ueidentitytaginfoGET + tags: + - uEIdentity + parameters: + - $ref: '#/components/parameters/Query.Ueidentitytag' + responses: + '200': + description: It is used to indicate nonspecific success. The response body contains a representation of the UeIdentityTagInfo resource. + content: + application/json: + schema: + type: object + properties: + UeIdentityTagInfo: + $ref: '#/components/schemas/UeIdentityTagInfo' + '400': + $ref: '#/components/responses/400' + '404': + $ref: '#/components/responses/404' + '403': + $ref: '#/components/responses/403' + put: + summary: Register/De-register the information about specific UeIdentityTagInfo. + description: This method registers/deregisters one or more UE Identity tags. It has "replace" semantics. + operationId: ueidentitytaginfoPUT + tags: + - uEIdentity + requestBody: + description: The updated "state" for each included UE Identity tag is included in the entity body of the request. + required: true + content: + application/json: + schema: + type: object + properties: + UeIdentityTagInfo: + $ref: '#/components/schemas/UeIdentityTagInfo' + responses: + '200': + description: It is used to indicate success. The response body contains a representation of the UeIdentityTagInfo resource. + content: + application/json: + schema: + type: object + properties: + UeIdentityTagInfo: + $ref: '#/components/schemas/UeIdentityTagInfo' + '400': + $ref: '#/components/responses/400' + '404': + $ref: '#/components/responses/404' + '403': + $ref: '#/components/responses/403' + '412': + $ref: '#/components/responses/412' +components: + schemas: + ProblemDetails: + type: object + properties: + type: + type: string + format: uri + description: A URI reference according to IETF RFC 3986 that identifies the problem type + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: URI + title: + type: string + description: A short, human-readable summary of the problem type + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: String + status: + type: integer + format: uint32 + description: The HTTP status code for this occurrence of the problem + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: Uint32 + detail: + type: string + description: A human-readable explanation specific to this occurrence of the problem + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: String + instance: + type: string + format: uri + description: A URI reference that identifies the specific occurrence of the problem + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: URI + UeIdentityTagInfo: + x-etsi-ref: 6.2.2 + type: object + properties: + ueIdentityTags: + type: array + items: + $ref: '#/components/schemas/UeIdentityTags' + required: + - ueIdentityTags + UeIdentityTags: + description: 1 to N tags presented by a MEC Application instance to a MEC Platform + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: 1..N + type: object + minItems: 1 + properties: + ueIdentityTag: + description: Specific tag presented by a MEC Application instance to a MEC Platform + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + state: + type: integer + description: 'The following numeric values are defined: + + 0 = UNREGISTERED + + 1 = REGISTERED' + enum: + - SEE_DESCRIPTION + x-etsi-mec-origin-type: Enum_inlined + x-etsi-mec-cardinality: '1' + required: + - ueIdentityTag + - state + responses: + '200': + description: OK + '400': + description: 'Bad Request: used to indicate that incorrect parameters were passed to the request.' + content: + application/problem+json: + schema: + $ref: '#/components/schemas/ProblemDetails' + '403': + description: 'Forbidden: operation is not allowed given the current status of the resource.' + content: + application/problem+json: + schema: + $ref: '#/components/schemas/ProblemDetails' + '404': + description: 'Not Found: used when a client provided a URI that cannot be mapped to a valid resource URI.' + content: + application/problem+json: + schema: + $ref: '#/components/schemas/ProblemDetails' + '412': + description: 'Precondition failed: used when a condition has failed during conditional requests, e.g. when using ETags to avoid write conflicts when using PUT' + content: + application/problem+json: + schema: + $ref: '#/components/schemas/ProblemDetails' + parameters: + Query.Ueidentitytag: + description: Represents one or more UEs. + name: ueidentitytag + cardinality: 1..N + in: query + required: true + x-exportParamName: Query.Ueidentitytag + schema: + type: array + items: + type: string + diff --git a/Auto_Generated_OAS_Output_Files/Auto_Generated_OAS_Output_Files/gs_mec014v030101p.yaml b/Auto_Generated_OAS_Output_Files/Auto_Generated_OAS_Output_Files/gs_mec014v030101p.yaml new file mode 100644 index 0000000..d06549d --- /dev/null +++ b/Auto_Generated_OAS_Output_Files/Auto_Generated_OAS_Output_Files/gs_mec014v030101p.yaml @@ -0,0 +1,180 @@ +openapi: 3.1.0 +jsonSchemaDialect: https://json-schema.org/draft/2020-12/schema +info: + contact: + url: https://forge.etsi.org/rep/mec/gs014-ue-identity-api + title: ETSI GS MEC 014 UE Identity API + description: "The present document focuses on the UE Identity functionality. It describes the related application policy information (including authorization, access control and traffic rule pattern format), information flows, required information and service aggregation patterns. The present document specifies the necessary API, data model and data format, considering existing API(s) if applicable. \n" + license: + name: BSD-3-Clause + url: https://forge.etsi.org/legal-matters + version: 3.1.1 +paths: + /{appInstanceId}/ue_identity_tag_info: + get: + summary: Retrieve information about specific UeIdentityTagInfo. + description: This method retrieves information about a UeIdentityTagInfo resource. + operationId: ueidentitytaginfoGET + tags: + - uEIdentity + parameters: + - $ref: '#/components/parameters/Query.Ueidentitytag' + responses: + '200': + description: It is used to indicate nonspecific success. The response body contains a representation of the UeIdentityTagInfo resource. + content: + application/json: + schema: + type: object + properties: + UeIdentityTagInfo: + $ref: '#/components/schemas/UeIdentityTagInfo' + '400': + $ref: '#/components/responses/400' + '404': + $ref: '#/components/responses/404' + '403': + $ref: '#/components/responses/403' + put: + summary: Register/De-register the information about specific UeIdentityTagInfo. + description: This method registers/deregisters one or more UE Identity tags. It has "replace" semantics. + operationId: ueidentitytaginfoPUT + tags: + - uEIdentity + requestBody: + description: The updated "state" for each included UE Identity tag is included in the entity body of the request. + required: true + content: + application/json: + schema: + type: object + properties: + UeIdentityTagInfo: + $ref: '#/components/schemas/UeIdentityTagInfo' + responses: + '200': + description: It is used to indicate success. The response body contains a representation of the UeIdentityTagInfo resource. + content: + application/json: + schema: + type: object + properties: + UeIdentityTagInfo: + $ref: '#/components/schemas/UeIdentityTagInfo' + '400': + $ref: '#/components/responses/400' + '404': + $ref: '#/components/responses/404' + '403': + $ref: '#/components/responses/403' + '412': + $ref: '#/components/responses/412' +components: + schemas: + ProblemDetails: + type: object + properties: + type: + type: string + format: uri + description: A URI reference according to IETF RFC 3986 that identifies the problem type + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: URI + title: + type: string + description: A short, human-readable summary of the problem type + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: String + status: + type: integer + format: uint32 + description: The HTTP status code for this occurrence of the problem + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: Uint32 + detail: + type: string + description: A human-readable explanation specific to this occurrence of the problem + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: String + instance: + type: string + format: uri + description: A URI reference that identifies the specific occurrence of the problem + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: URI + UeIdentityTagInfo: + x-etsi-ref: 6.2.2 + type: object + properties: + ueIdentityTags: + type: array + items: + $ref: '#/components/schemas/UeIdentityTags' + required: + - ueIdentityTags + UeIdentityTags: + description: 1 to N tags presented by a MEC Application instance to a MEC Platform + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: 1..N + type: object + minItems: 1 + properties: + ueIdentityTag: + description: Specific tag presented by a MEC Application instance to a MEC Platform + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + state: + type: integer + description: 'The following numeric values are defined: + + 0 = UNREGISTERED + + 1 = REGISTERED' + enum: + - SEE_DESCRIPTION + x-etsi-mec-origin-type: Enum_inlined + x-etsi-mec-cardinality: '1' + required: + - ueIdentityTag + - state + responses: + '200': + description: OK + '400': + description: 'Bad Request: used to indicate that incorrect parameters were passed to the request.' + content: + application/problem+json: + schema: + $ref: '#/components/schemas/ProblemDetails' + '403': + description: 'Forbidden: operation is not allowed given the current status of the resource.' + content: + application/problem+json: + schema: + $ref: '#/components/schemas/ProblemDetails' + '404': + description: 'Not Found: used when a client provided a URI that cannot be mapped to a valid resource URI.' + content: + application/problem+json: + schema: + $ref: '#/components/schemas/ProblemDetails' + '412': + description: 'Precondition failed: used when a condition has failed during conditional requests, e.g. when using ETags to avoid write conflicts when using PUT' + content: + application/problem+json: + schema: + $ref: '#/components/schemas/ProblemDetails' + parameters: + Query.Ueidentitytag: + description: Represents one or more UEs. + name: ueidentitytag + cardinality: 1..N + in: query + required: true + x-exportParamName: Query.Ueidentitytag + schema: + type: array + items: + type: string + diff --git a/Auto_Generated_OAS_Output_Files/Auto_Generated_OAS_Output_Files/gs_mec015v020201p_BWM_API.yaml b/Auto_Generated_OAS_Output_Files/Auto_Generated_OAS_Output_Files/gs_mec015v020201p_BWM_API.yaml new file mode 100644 index 0000000..6f06384 --- /dev/null +++ b/Auto_Generated_OAS_Output_Files/Auto_Generated_OAS_Output_Files/gs_mec015v020201p_BWM_API.yaml @@ -0,0 +1,485 @@ +openapi: 3.1.0 +jsonSchemaDialect: https://json-schema.org/draft/2020-12/schema +info: + contact: + url: https://forge.etsi.org/rep/mec/gs015-bandwith-mgmt-api + title: ETSI GS MEC 015 Multi-access Traffic Steering APIs + description: The present document focuses on the Multi-access Traffic Steering multi-access edge service. It describes the related application policy information including authorization and access control, information flows, required information and service aggregation patterns. The present document specifies the necessary API with the data model and data format. + license: + name: BSD-3-Clause + url: https://forge.etsi.org/legal-matters + version: 2.2.1 +paths: + /bw_allocations/{allocationId}: + get: + summary: Retrieve information about a specific bandwidthAllocation. + description: "This method retrieves information about a bandwidthAllocation resource. This method is typically used in \"Get configured bandwidth allocation from Bandwidth Management Service\" procedure as described in clause\_6.2.5." + operationId: bwallocationsByIdGET + tags: + - bwm + responses: + '200': + description: It is used to indicate nonspecific success. The response body contains a representation of the resource. + content: + application/json: + schema: + type: object + properties: + BwInfo: + $ref: '#/components/schemas/BwInfo' + '400': + $ref: '#/components/responses/400' + '404': + $ref: '#/components/responses/404' + '403': + $ref: '#/components/responses/403' + put: + summary: Update the information about a specific bandwidthAllocation. + description: "This method updates the information about a bandwidthAllocation resource. As specified in ETSI GS\_MEC\_009\_[6], the PUT HTTP method has \"replace\" semantics." + operationId: bwallocationsByIdPUT + tags: + - bwm + requestBody: + description: BwInfo with updated information is included as entity body of the request. + required: true + content: + application/json: + schema: + type: object + properties: + BwInfo: + $ref: '#/components/schemas/BwInfo' + responses: + '200': + description: Upon success, a response body containing data type describing the updated BwInfo is returned. + content: + application/json: + schema: + type: object + properties: + BwInfo: + $ref: '#/components/schemas/BwInfo' + '400': + $ref: '#/components/responses/400' + '404': + $ref: '#/components/responses/404' + '403': + $ref: '#/components/responses/403' + '412': + $ref: '#/components/responses/412' + patch: + summary: Modify the information about a specific existing bandwidthAllocation by sending updates on the data structure. + description: 'This method updates the information about a bandwidthAllocation resource. As specified in ETSI GS MEC 009 [6], the PATCH HTTP method updates a resource on top of the existing resource state by just including the changes ("deltas") in the request body. ' + operationId: bwallocationsByIdPATCH + tags: + - bwm + requestBody: + description: Description of the changes to instruct the server how to modify the resource representation. . + required: true + content: + application/json: + schema: + type: object + properties: + BwInfoDeltas: + $ref: '#/components/schemas/BwInfoDeltas' + responses: + '200': + description: Upon success, a response body containing data type describing the updated BwInfo is returned. + content: + application/json: + schema: + type: object + properties: + BwInfo: + $ref: '#/components/schemas/BwInfo' + '400': + $ref: '#/components/responses/400' + '404': + $ref: '#/components/responses/404' + '403': + $ref: '#/components/responses/403' + '412': + $ref: '#/components/responses/412' + delete: + summary: Remove a specific bandwidthAllocation. + description: DELETE method is typically used in "Unregister from Bandwidth Management Service" procedure as described in clause 6.2.3. + operationId: bwallocationsByIdDELETE + tags: + - bwm + responses: + '204': + $ref: '#/components/responses/204' + '404': + $ref: '#/components/responses/404' + '403': + $ref: '#/components/responses/403' + /bw_allocations: + get: + summary: Retrieve information about a list of bandwidthAllocation resources. + description: This method retrieves information about a list of bandwidthAllocation resources. This method is typically used in "Get configured bandwidth allocation from Bandwidth Management Service" procedure as described in clause 6.2.5. + operationId: bwallocationsGET + tags: + - bwm + parameters: + - $ref: '#/components/parameters/Query.App_instance_id' + - $ref: '#/components/parameters/Query.App_name' + - $ref: '#/components/parameters/Query.Session_id' + responses: + '200': + description: Upon success, a response body containing an array of the bandwidthAllocations is returned. + content: + application/json: + schema: + type: object + properties: + BwInfo: + type: array + items: + $ref: '#/components/schemas/BwInfo' + '400': + $ref: '#/components/responses/400' + '404': + $ref: '#/components/responses/404' + '403': + $ref: '#/components/responses/403' + post: + summary: Create a bandwidthAllocation resource. + description: This method is used to create a bandwidthAllocation resource. This method is typically used in "Register to Bandwidth Management Service" procedure as described in clause 6.2.1. + operationId: bwallocationsPOST + tags: + - bwm + requestBody: + description: Entity body in the request contains BwInfo to be created. + required: true + content: + application/json: + schema: + type: object + properties: + BwInfo: + $ref: '#/components/schemas/BwInfo' + responses: + '201': + description: Upon success, the HTTP response shall include a "Location" HTTP header that contains the resource URI of the created resource. + content: + application/json: + schema: + type: object + properties: + BwInfo: + $ref: '#/components/schemas/BwInfo' + '400': + $ref: '#/components/responses/400' + '404': + $ref: '#/components/responses/404' + '403': + $ref: '#/components/responses/403' +components: + schemas: + ProblemDetails: + type: object + properties: + type: + type: string + format: uri + description: A URI reference according to IETF RFC 3986 that identifies the problem type + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: URI + title: + type: string + description: A short, human-readable summary of the problem type + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: String + status: + type: integer + format: uint32 + description: The HTTP status code for this occurrence of the problem + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: Uint32 + detail: + type: string + description: A human-readable explanation specific to this occurrence of the problem + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: String + instance: + type: string + format: uri + description: A URI reference that identifies the specific occurrence of the problem + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: URI + BwInfo: + x-etsi-ref: 7.2.2 + type: object + properties: + allocationId: + description: Bandwidth allocation instance identifier + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + timeStamp: + $ref: '#/components/schemas/TimeStamp' + appInsId: + description: Application instance identifier + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + appName: + description: Name of the application + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + requestType: + type: integer + description: 'Numeric value (0 - 255) corresponding to specific type of consumer as following: + + 0 = APPLICATION_SPECIFIC_BW_ALLOCATION + + 1 = SESSION_SPECIFIC_BW_ALLOCATION' + enum: + - SEE_DESCRIPTION + x-etsi-mec-origin-type: Enum_inlined + x-etsi-mec-cardinality: '1' + sessionFilter: + type: array + items: + $ref: '#/components/schemas/SessionFilter' + fixedBWPriority: + type: string + description: Indicates the allocation priority when dealing with several applications or sessions in parallel. Values are not defined in the present document + enum: + - SEE_DESCRIPTION + x-etsi-mec-origin-type: Enum + x-etsi-mec-cardinality: 0..1 + fixedAllocation: + description: Size of requested fixed BW allocation in [bps] + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + allocationDirection: + description: 'The direction of the requested BW allocation: + + 00 = Downlink (towards the UE) + + 01 = Uplink (towards the application/session) + + 10 = Symmetrical' + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + required: + - appInsId + - requestType + - fixedAllocation + - allocationDirection + BwInfoDeltas: + x-etsi-ref: 7.2.3 + type: object + properties: + allocationId: + description: Bandwidth allocation instance identifier + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + appInsId: + description: Application instance identifier + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + requestType: + type: integer + description: 'Numeric value (0 - 255) corresponding to specific type of consumer as following: + + 0 = APPLICATION_SPECIFIC_BW_ALLOCATION + + 1 = SESSION_SPECIFIC_BW_ALLOCATION' + enum: + - SEE_DESCRIPTION + x-etsi-mec-origin-type: Enum_inlined + x-etsi-mec-cardinality: '1' + sessionFilter: + type: array + items: + $ref: '#/components/schemas/SessionFilter1' + fixedBWPriority: + type: string + description: Indicates the allocation priority when dealing with several applications or sessions in parallel. Values are not defined in the present document + enum: + - SEE_DESCRIPTION + x-etsi-mec-origin-type: Enum_inlined + x-etsi-mec-cardinality: 0..1 + fixedAllocation: + description: Size of requested fixed BW allocation in [bps] + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + allocationDirection: + description: 'The direction of the requested BW allocation: + + 00 = Downlink (towards the UE) + + 01 = Uplink (towards the application/session) + + 10 = Symmetrical' + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + required: + - allocationId + - appInsId + - requestType + TimeStamp: + description: Time stamp to indicate when the corresponding information elements are sent + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: 0..1 + type: object + properties: + seconds: + description: The seconds part of the Time. Time is defined as Unixtime since January 1, 1970, 00:00:00 UTC + x-etsi-mec-origin-type: Uint32 + x-etsi-mec-cardinality: '1' + type: integer + format: uint32 + nanoSeconds: + description: The nanoseconds part of the Time. Time is defined as Unix-time since January 1, 1970, 00:00:00 UTC + x-etsi-mec-origin-type: Uint32 + x-etsi-mec-cardinality: '1' + type: integer + format: uint32 + required: + - seconds + - nanoSeconds + SessionFilter: + description: Session filtering criteria, applicable when requestType is set as SESSION_SPECIFIC_BW_ALLOCATION. Any filtering criteria shall define a single session only. In case multiple sessions match sessionFilter, the request shall be rejected + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: 0..N + type: object + minItems: 0 + properties: + sourceIp: + description: "Source address identity of session. The string for an IPv4 address shall be formatted in the \"dotted decimal\" notation as defined in IETF RFC\_1166\_[10]. The string for an IPv6 address shall be formatted according to clause 4 of IETF RFC\_5952\_[11], with in CIDR notation [12] used to provide the routing prefix" + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + sourcePort: + description: Source port identity of session + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + dstAddress: + description: "Destination address identity of session. The string for an IPv4 address shall be formatted in the \"dotted decimal\" notation as defined in IETF RFC\_1166\_[10]. The string for an IPv6 address shall be formatted according to clause 4 of IETF RFC\_5952\_[11], with in CIDR notation [12] used to provide the routing prefix" + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + dstPort: + description: Destination port identity of session + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + protocol: + description: Protocol number + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + SessionFilter1: + description: Session filtering criteria, applicable when requestType is set as SESSION_SPECIFIC_BW_ALLOCATION. Any filtering criteria shall define a single session only. In case multiple sessions match sessionFilter, the request shall be rejected + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: 0..N + type: object + minItems: 0 + properties: + sourceIp: + description: "Source address identity of session. The string for an IPv4 address shall be formatted in the \"dotted decimal\" notation as defined in IETF RFC\_1166\_[10]. The string for an IPv6 address shall be formatted according to clause 4 of IETF\_RFC\_5952\_[11], with in CIDR notation [12] used to provide the routing prefix" + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + sourcePort: + description: 'Source port identity of session ' + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + dstAddress: + description: "Destination address identity of session. The string for an IPv4 address shall be formatted in the \"dotted decimal\" notation as defined in IETF RFC\_1166\_[10]. The string for an IPv6 address shall be formatted according to clause 4 of IETF\_RFC\_5952\_[11], with in CIDR notation [12] used to provide the routing prefix" + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + dstPort: + description: Destination port identity of session + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + protocol: + description: Protocol number + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + responses: + '200': + description: OK + '204': + description: No Content + '400': + description: 'Bad Request: used to indicate that incorrect parameters were passed to the request.' + content: + application/problem+json: + schema: + $ref: '#/components/schemas/ProblemDetails' + '403': + description: 'Forbidden: operation is not allowed given the current status of the resource.' + content: + application/problem+json: + schema: + $ref: '#/components/schemas/ProblemDetails' + '404': + description: 'Not Found: used when a client provided a URI that cannot be mapped to a valid resource URI.' + content: + application/problem+json: + schema: + $ref: '#/components/schemas/ProblemDetails' + '412': + description: 'Precondition failed: used when a condition has failed during conditional requests, e.g. when using ETags to avoid write conflicts when using PUT' + content: + application/problem+json: + schema: + $ref: '#/components/schemas/ProblemDetails' + parameters: + Query.App_instance_id: + description: 'A MEC application instance may use multiple app_instance_ids as an input parameter to query the bandwidth allocation of a list of MEC application instances. app_instance_id corresponds to appInsId defined in table 7.2.2-1. + + See note.' + name: app_instance_id + cardinality: 0..N + in: query + required: false + x-exportParamName: Query.App_instance_id + schema: + type: array + items: + type: string + Query.App_name: + description: 'A MEC application instance may use multiple app_names as an input parameter to query the bandwidth allocation of a list of MEC application instances. app_name corresponds to appName defined in table 7.2.2-1. + + See note.' + name: app_name + cardinality: 0..N + in: query + required: false + x-exportParamName: Query.App_name + schema: + type: array + items: + type: string + Query.Session_id: + description: 'A MEC application instance may use session_id as an input parameter to query the bandwidth allocation of a list of sessions. session_id corresponds to allocationId defined in table 7.2.2-1. + + See note.' + name: session_id + cardinality: 0..N + in: query + required: false + x-exportParamName: Query.Session_id + schema: + type: array + items: + type: string + diff --git a/Auto_Generated_OAS_Output_Files/Auto_Generated_OAS_Output_Files/gs_mec015v020201p_MTS_API.yaml b/Auto_Generated_OAS_Output_Files/Auto_Generated_OAS_Output_Files/gs_mec015v020201p_MTS_API.yaml new file mode 100644 index 0000000..d23acb6 --- /dev/null +++ b/Auto_Generated_OAS_Output_Files/Auto_Generated_OAS_Output_Files/gs_mec015v020201p_MTS_API.yaml @@ -0,0 +1,557 @@ +openapi: 3.1.0 +jsonSchemaDialect: https://json-schema.org/draft/2020-12/schema +info: + contact: + url: https://forge.etsi.org/rep/mec/gs015-bandwith-mgmt-api + title: ETSI GS MEC 015 Multi-access Traffic Steering APIs + description: The present document focuses on the Multi-access Traffic Steering multi-access edge service. It describes the related application policy information including authorization and access control, information flows, required information and service aggregation patterns. The present document specifies the necessary API with the data model and data format. + license: + name: BSD-3-Clause + url: https://forge.etsi.org/legal-matters + version: 2.2.1 +paths: + /mts_capability_info: + get: + summary: Retrieve the MTS capability information. + description: The GET method is used to query information about the MTS information. This method is typically used in the "Get MTS service Info from the MTS Service" procedure as described in clause 6.2.6. + operationId: mtscapabilityinfoGET + tags: + - mts + responses: + '200': + description: Upon success, a response body containing the MTS capability information is returned. + content: + application/json: + schema: + type: object + properties: + MtsCapabilityInfo: + $ref: '#/components/schemas/MtsCapabilityInfo' + '400': + $ref: '#/components/responses/400' + '403': + $ref: '#/components/responses/403' + '404': + $ref: '#/components/responses/404' + /mts_sessions/{sessionId}: + get: + summary: Retrieve information about specific MTS session. + description: This method retrieves information about an individual MTS session. This method is typically used in the "Get configured MTS Session Info from the MTS Service" procedure as described in clause 6.2.10. + operationId: mtssessionsByIdGET + tags: + - mts + responses: + '200': + description: It is used to indicate nonspecific success. The response body contains a representation of the resource. + content: + application/json: + schema: + type: object + properties: + MtsSessionInfo: + $ref: '#/components/schemas/MtsSessionInfo' + '400': + $ref: '#/components/responses/400' + '404': + $ref: '#/components/responses/404' + '403': + $ref: '#/components/responses/403' + put: + summary: Update the information about specific MTS session. + description: 'This method updates the information about an individual MTS session. As specified in ETSI GS MEC 009 [6], the PUT HTTP method has "replace" semantics. ' + operationId: mtssessionsByIdPUT + tags: + - mts + requestBody: + description: MtsSessionInfo with updated information is included as entity body of the request. + required: true + content: + application/json: + schema: + type: object + properties: + MtsSessionInfo: + $ref: '#/components/schemas/MtsSessionInfo' + responses: + '200': + description: Upon success, a response body containing data type describing the updated MtsSessionInfo is returned. + content: + application/json: + schema: + type: object + properties: + MtsSessionInfo: + $ref: '#/components/schemas/MtsSessionInfo' + '400': + $ref: '#/components/responses/400' + '404': + $ref: '#/components/responses/404' + '403': + $ref: '#/components/responses/403' + '412': + $ref: '#/components/responses/412' + delete: + summary: Remove specific MTS session. + description: DELETE method is typically used in "Unregister from the MTS Service" procedure as described in clause 6.2.8. + operationId: mtssessionsByIdDELETE + tags: + - mts + responses: + '204': + $ref: '#/components/responses/204' + '404': + $ref: '#/components/responses/404' + '403': + $ref: '#/components/responses/403' + /mts_sessions: + get: + summary: Retrieve information about a list of MTS sessions. + description: This method retrieves information about a list of MTS sessions. This method is typically used in the "Get configured MTS Session Info from the MTS Service" procedure as described in clause 6.2.10. + operationId: mtssessionsGET + tags: + - mts + parameters: + - $ref: '#/components/parameters/Query.App_instance_id' + - $ref: '#/components/parameters/Query.App_name' + - $ref: '#/components/parameters/Query.Session_id' + responses: + '200': + description: Upon success, a response body containing an array of the MTS sessions is returned. + content: + application/json: + schema: + type: object + properties: + MtsSessionInfo: + type: array + items: + $ref: '#/components/schemas/MtsSessionInfo' + '400': + $ref: '#/components/responses/400' + '404': + $ref: '#/components/responses/404' + '403': + $ref: '#/components/responses/403' + post: + summary: Create a MTS session. + description: This method is used to create a MTS session. This method is typically used in "Register application to the MTS Service" procedure as described in clause 6.2.7. + operationId: mtssessionsPOST + tags: + - mts + requestBody: + description: Entity body in the request contains MtsSessionInfo to be created. + required: true + content: + application/json: + schema: + type: object + properties: + MtsSessionInfo: + $ref: '#/components/schemas/MtsSessionInfo' + responses: + '201': + description: Upon success, the HTTP response shall include a "Location" HTTP header that contains the resource URI of the created resource. + content: + application/json: + schema: + type: object + properties: + MtsSessionInfo: + $ref: '#/components/schemas/MtsSessionInfo' + '400': + $ref: '#/components/responses/400' + '404': + $ref: '#/components/responses/404' + '403': + $ref: '#/components/responses/403' +components: + schemas: + ProblemDetails: + type: object + properties: + type: + type: string + format: uri + description: A URI reference according to IETF RFC 3986 that identifies the problem type + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: URI + title: + type: string + description: A short, human-readable summary of the problem type + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: String + status: + type: integer + format: uint32 + description: The HTTP status code for this occurrence of the problem + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: Uint32 + detail: + type: string + description: A human-readable explanation specific to this occurrence of the problem + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: String + instance: + type: string + format: uri + description: A URI reference that identifies the specific occurrence of the problem + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: URI + Uint32: + type: integer + format: uint32 + MtsCapabilityInfo: + x-etsi-ref: 7.2.4 + type: object + properties: + timeStamp: + $ref: '#/components/schemas/TimeStamp' + mtsAccessInfo: + type: array + items: + $ref: '#/components/schemas/MtsAccessInfo' + mtsMode: + description: 'Numeric value corresponding to a specific MTS operation supported by the TMS + + 0 = low cost, i.e. using the unmetered access network connection whenever it is available + + 1 = low latency, i.e. using the access network connection with lower latency + + 2 = high throughput, i.e. using the access network connection with higher throughput, or/and multiple access network connection simultaneously if supported + + 3 = redundancy, i.e. sending duplicated (redundancy) packets over multiple access network connections for highreliability and low-latency applications + + 4 = QoS, i.e. performing MTS based on the specific QoS requirements from the app' + x-etsi-mec-origin-type: Uint32 + x-etsi-mec-cardinality: 1..N + type: array + format: uint32 + minItems: 1 + items: + $ref: '#/components/schemas/Uint32' + required: + - mtsAccessInfo + - mtsMode + x-etsi-notes: "NOTE:\tA metered connection is a network connection that has a maximum data usage in a specific period, e.g.\_per hour/day/week/month. The user may get billed extra charges if they go over the allotted amount." + MtsSessionInfo: + x-etsi-ref: 7.2.5 + type: object + properties: + sessionId: + description: MTS session instance identifier + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + timeStamp: + $ref: '#/components/schemas/TimeStamp1' + appInsId: + description: Application instance identifier + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + appName: + description: Name of the application + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + requestType: + type: integer + description: 'Numeric value (0 - 255) corresponding to specific type of consumer as following: + + 0 = APPLICATION_SPECIFIC_MTS_SESSION + + 1 = FLOW_SPECIFIC_MTS_SESSION' + enum: + - SEE_DESCRIPTION + x-etsi-mec-origin-type: Enum_inlined + x-etsi-mec-cardinality: '1' + flowFilter: + type: array + items: + $ref: '#/components/schemas/FlowFilter' + qosD: + $ref: '#/components/schemas/QosD' + mtsMode: + description: 'Numeric value (0 - 255) corresponding to a specific MTS mode of the MTS session: + + 0 = low cost, i.e. using the unmetered access network connection whenever it is available + + 1 = low latency, i.e. using the access network connection with lower latency + + 2 = high throughput, i.e. using the access network connection with higher throughput, or multiple access network connection simultaneously + + 3 = redundancy, i.e. sending duplicated (redundancy) packets over multiple access network connections for high-reliability and low-latency applications + + 4 = QoS, i.e. performing MTS based on the QoS requirement (qosD)' + x-etsi-mec-origin-type: Uint32 + x-etsi-mec-cardinality: '1' + type: integer + format: uint32 + trafficDirection: + description: 'The direction of the requested MTS session: + + 00 = Downlink (towards the UE) + + 01 = Uplink (towards the application/session) + + 10 = Symmetrical (see note)' + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + required: + - appInsId + - requestType + - flowFilter + - qosD + - mtsMode + - trafficDirection + x-etsi-notes: "NOTE:\tFor the downlink direction of a symmetrical flow, \"sourceIp\" and \"sourcePort\" in the \"flowFilter\" structure are used for source address and port, respectively; \"dstIp\" and \"dstPort\" are used for destination address and port, respectively. For the uplink direction of a symmetrical flow, \"sourceIp\" and \"sourcePort\" are used for destination address and port, respectively; \"dstIp\" and \"dstPort\" are used for source address and port, respectively." + TimeStamp: + description: Time stamp to indicate when the corresponding information elements are sent + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: 0..1 + type: object + properties: + seconds: + description: Time in seconds in Unix-time since January 1, 1970, 00:00:00 UTC + x-etsi-mec-origin-type: Uint32 + x-etsi-mec-cardinality: '1' + type: integer + format: uint32 + nanoSeconds: + description: Time in nanoseconds in Unix-time since January 1, 1970, 00:00:00 UTC + x-etsi-mec-origin-type: Uint32 + x-etsi-mec-cardinality: '1' + type: integer + format: uint32 + required: + - seconds + - nanoSeconds + MtsAccessInfo: + description: The information on access network connection as defined below + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: 1..N + type: object + minItems: 1 + properties: + accessId: + description: Unique identifier for the access network connection + x-etsi-mec-origin-type: Uint32 + x-etsi-mec-cardinality: '1' + type: integer + format: uint32 + accessType: + description: 'Numeric value (0-255) corresponding to specific type of access network as following: + + 0 = Unknown + + 1 = Any IEEE802.11-based WLAN technology + + 2 = Any 3GPP-based Cellular technology + + 3 = Any Fixed Access + + 11 = IEEE802.11 a/b/g WLAN + + 12 = IEEE 802.11 a/b/g/n WLAN + + 13 = IEEE 802.11 a/b/g/n/ac WLAN + + 14 = IEEE 802.11 a/b/g/n/ac/ax WLAN (Wi-Fi 6) + + 15 = IEEE 802.11 b/g/n WLAN + + 31 = 3GPP GERAN/UTRA (2G/3G) + + 32 = 3GPP E-UTRA (4G/LTE) + + 33 = 3GPP NR (5G) ' + x-etsi-mec-origin-type: Uint32 + x-etsi-mec-cardinality: '1' + type: integer + format: uint32 + metered: + description: 'Numeric value (0-255) corresponding to the following: + + 0: the connection is not metered (see note) + + 1: the connection is metered + + 2: unknown ' + x-etsi-mec-origin-type: Uint32 + x-etsi-mec-cardinality: '1' + type: integer + format: uint32 + required: + - accessId + - accessType + - metered + TimeStamp1: + description: 'Time stamp to indicate when the corresponding information elements are sent ' + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: 0..1 + type: object + properties: + seconds: + description: The seconds part of the Time. Time is defined as Unixtime since January 1, 1970, 00:00:00 UTC + x-etsi-mec-origin-type: Uint32 + x-etsi-mec-cardinality: '1' + type: integer + format: uint32 + nanoSeconds: + description: The nanoseconds part of the Time. Time is defined as Unix-time since January 1, 1970, 00:00:00 UTC + x-etsi-mec-origin-type: Uint32 + x-etsi-mec-cardinality: '1' + type: integer + format: uint32 + required: + - seconds + - nanoSeconds + FlowFilter: + description: Traffic flow filtering criteria, applicable only if when requestType is set as FLOW_SPECIFIC_MTS_SESSION. Any filtering criteria shall define a single session only. In case multiple sessions match flowFilter, the request shall be rejected. If the flowFilter field is included, at least one of its subfields shall be included. Any flowFilter subfield that is not included shall be ignored in traffic flow filtering + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: 1..N + type: object + minItems: 1 + properties: + sourceIp: + description: "Source address identity of session. The string for an IPv4 address shall be formatted in the \"dotted decimal\" notation as defined in IETF RFC\_1166\_[10]. The string for an IPv6 address shall be formatted according to clause 4 of IETF RFC\_5952\_[11], with in CIDR notation [12] used to provide the routing prefix" + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + sourcePort: + description: 'Source port identity of session ' + x-etsi-mec-origin-type: Uint32 + x-etsi-mec-cardinality: 0..1 + type: integer + format: uint32 + dstIp: + description: "Destination address identity of session. The string for an IPv4 address shall be formatted in the \"dotted decimal\" notation as defined in IETF RFC\_1166\_[10]. The string for an IPv6 address shall be formatted according to clause 4 of IETF RFC\_5952\_[11], with in CIDR notation [12] used to provide the routing prefix" + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + dstPort: + description: Destination port identity of session + x-etsi-mec-origin-type: Uint32 + x-etsi-mec-cardinality: 0..1 + type: integer + format: uint32 + protocol: + description: Protocol number + x-etsi-mec-origin-type: Uint32 + x-etsi-mec-cardinality: 0..1 + type: integer + format: uint32 + dscp: + description: DSCP in the IPv4 header or Traffic Class in the IPv6 header + x-etsi-mec-origin-type: Uint32 + x-etsi-mec-cardinality: 0..1 + type: integer + format: uint32 + flowlabel: + description: Flow Label in the IPv6 header, applicable only if the flow is IPv6 + x-etsi-mec-origin-type: Uint32 + x-etsi-mec-cardinality: 0..1 + type: integer + format: uint32 + QosD: + description: QoS requirement description of the MTS session, applicable only if mtsMode = 4 (QoS). If the qosD field is included, at least one of its subfields shall be included. Any qosD subfield that is not included shall be ignored in Multi-access Traffic Steering (MTS) + x-etsi-mec-origin-type: Structure + x-etsi-mec-cardinality: '1' + type: object + properties: + minTpt: + # description': minimal throughput in [kbps] + $ref: '#/components/schemas/Unit32' + # x-etsi-mec-origin-type': Unit32 + # x-etsi-mec-cardinality': 0..1 + maxLatency: + # description': tolerable (one-way) delay in [10 nanoseconds] + $ref: '#/components/schemas/Unit32' + # x-etsi-mec-origin-type': Unit32 + # x-etsi-mec-cardinality': 0..1 + maxLoss: + # description': tolerable packet loss rate in [1/10^x] + $ref: '#/components/schemas/Unit32' + # x-etsi-mec-origin-type': Unit32 + # x-etsi-mec-cardinality': 0..1 + maxJitter: + # description': tolerable jitter in [10 nanoseconds] + $ref: '#/components/schemas/Unit32' + # x-etsi-mec-origin-type': Unit32 + # x-etsi-mec-cardinality': 0..1 + priority: + # description': 'numeric value (0 - 255) corresponding to the traffic priority: 0: low; 1: medium; 2: high; 3: critical' + $ref: '#/components/schemas/Unit32' + # x-etsi-mec-origin-type': Unit32 + # x-etsi-mec-cardinality': 0..1 + responses: + '200': + description: OK + '204': + description: No Content + '400': + description: 'Bad Request: used to indicate that incorrect parameters were passed to the request.' + content: + application/problem+json: + schema: + $ref: '#/components/schemas/ProblemDetails' + '403': + description: 'Forbidden: operation is not allowed given the current status of the resource.' + content: + application/problem+json: + schema: + $ref: '#/components/schemas/ProblemDetails' + '404': + description: 'Not Found: used when a client provided a URI that cannot be mapped to a valid resource URI.' + content: + application/problem+json: + schema: + $ref: '#/components/schemas/ProblemDetails' + '412': + description: 'Precondition failed: used when a condition has failed during conditional requests, e.g. when using ETags to avoid write conflicts when using PUT' + content: + application/problem+json: + schema: + $ref: '#/components/schemas/ProblemDetails' + parameters: + Query.App_instance_id: + description: 'A MEC application instance may use multiple app_instance_ids as an input parameter to query the MTS session of a list of MEC application instances. app_instance_id corresponds to appInsId defined in table 7.2.5-1. + + See note.' + name: app_instance_id + cardinality: 0..N + in: query + required: false + x-exportParamName: Query.App_instance_id + schema: + type: array + items: + type: string + Query.App_name: + description: 'A MEC application instance may use multiple app_names as an input parameter to query the MTS session of a list of MEC application instances. app_name corresponds to appName defined in table 7.2.5-1. + + See note.' + name: app_name + cardinality: 0..N + in: query + required: false + x-exportParamName: Query.App_name + schema: + type: array + items: + type: string + Query.Session_id: + description: 'A MEC application instance may use session_id as an input parameter to query the information of a list of MTS sessions. session_id corresponds to sessionId defined in table 7.2.5-1. + + See note.' + name: session_id + cardinality: 0..N + in: query + required: false + x-exportParamName: Query.Session_id + schema: + type: array + items: + type: string + diff --git a/Auto_Generated_OAS_Output_Files/Auto_Generated_OAS_Output_Files/gs_mec021v020201p.yaml b/Auto_Generated_OAS_Output_Files/Auto_Generated_OAS_Output_Files/gs_mec021v020201p.yaml new file mode 100644 index 0000000..da70498 --- /dev/null +++ b/Auto_Generated_OAS_Output_Files/Auto_Generated_OAS_Output_Files/gs_mec021v020201p.yaml @@ -0,0 +1,1253 @@ +openapi: 3.1.0 +jsonSchemaDialect: https://json-schema.org/draft/2020-12/schema +info: + contact: + url: https://forge.etsi.org/rep/mec/gs021-amsi-api + title: ETSI GS MEC 021 Application Mobility Service API + description: The ETSI MEC ISG Mobility Service API described using OpenAPI. + license: + name: BSD-3-Clause + url: https://forge.etsi.org/legal-matters + version: 2.2.1 +paths: + /app_mobility_services: + get: + summary: Query multiple Application Mobility Service resources. + description: The GET method is to retrieve information about the registered Application Mobility Service. Upon success, the response contains entity body with the list of application mobility services that are present for the requestor. + operationId: appmobilityservicesGET + tags: + - app_mobility_services + 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' + responses: + '200': + description: 'Information about zero or more application mobility services was queried successfully. + + + The response body shall contain in an array the representations of zero or more application mobility services.' + content: + application/json: + schema: + type: object + properties: + RegistrationInfo: + type: array + items: + $ref: '#/components/schemas/RegistrationInfo' + '400': + $ref: '#/components/responses/400' + '401': + $ref: '#/components/responses/401' + '403': + $ref: '#/components/responses/403' + '404': + $ref: '#/components/responses/404' + '406': + $ref: '#/components/responses/406' + '429': + $ref: '#/components/responses/429' + post: + summary: Create an Application Mobility Service resource. + description: The POST method is used to create a new application mobility service for the service requester. Upon success, the response contains entity body of created application mobility service with the service ID. + operationId: appmobilityservicesPOST + tags: + - app_mobility_services + requestBody: + description: The POST method is to create an application mobility service resource. + required: true + content: + application/json: + schema: + type: object + properties: + RegistrationInfo: + $ref: '#/components/schemas/RegistrationInfo' + responses: + '201': + description: 'An application mobility service with a service identifier was created successfully. + + + The HTTP response shall include a "Location" HTTP header that contains the resource URI of the created application instance.' + content: + application/json: + schema: + type: object + properties: + RegistrationInfo: + $ref: '#/components/schemas/RegistrationInfo' + '400': + $ref: '#/components/responses/400' + '401': + $ref: '#/components/responses/401' + '403': + $ref: '#/components/responses/403' + '404': + $ref: '#/components/responses/404' + '406': + $ref: '#/components/responses/406' + '429': + $ref: '#/components/responses/429' + /app_mobility_services/{appMobilityServiceId}: + get: + summary: Read an Application Mobility Service resource. + description: The GET method is used to retrieve information about this individual application mobility service. Upon success, the response contains entity body with the data type describing the registered Application Mobility Service. + operationId: appmobilityservicesByIdGET + tags: + - app_mobility_services + responses: + '200': + description: Information about application mobility service was queried successfully. + content: + application/json: + schema: + type: object + properties: + RegistrationInfo: + $ref: '#/components/schemas/RegistrationInfo' + '400': + $ref: '#/components/responses/400' + '401': + $ref: '#/components/responses/401' + '403': + $ref: '#/components/responses/403' + '404': + $ref: '#/components/responses/404' + '406': + $ref: '#/components/responses/406' + '429': + $ref: '#/components/responses/429' + put: + summary: Update an individual Application Mobility Service resource. + description: The PUT method is used to update the existing individual application mobility service. PUT method in this case has "replace" semantics. Upon successful operation, the target resource is updated with new Data Type received within the message body of the PUT request. + operationId: appmobilityservicesByIdPUT + tags: + - app_mobility_services + requestBody: + description: The updated information for the registered application mobility service resource. + required: true + content: + application/json: + schema: + type: object + properties: + RegistrationInfo: + $ref: '#/components/schemas/RegistrationInfo' + responses: + '200': + description: Upon success, a response body containing data type describing the updated application mobility service. + content: + application/json: + schema: + type: object + properties: + RegistrationInfo: + $ref: '#/components/schemas/RegistrationInfo' + '400': + $ref: '#/components/responses/400' + '401': + $ref: '#/components/responses/401' + '403': + $ref: '#/components/responses/403' + '404': + $ref: '#/components/responses/404' + '406': + $ref: '#/components/responses/406' + '412': + $ref: '#/components/responses/412' + '422': + $ref: '#/components/responses/422' + '429': + $ref: '#/components/responses/429' + delete: + summary: Delete an individual Application Mobility Service resource. + description: The DELETE method is used to deregister the individual application mobility service, and delete the resource that represents the individual application mobility service. + operationId: appmobilityservicesByIdDELETE + tags: + - app_mobility_services + responses: + '204': + $ref: '#/components/responses/204' + '401': + $ref: '#/components/responses/401' + '403': + $ref: '#/components/responses/403' + '404': + $ref: '#/components/responses/404' + '429': + $ref: '#/components/responses/429' + /app_mobility_services/{appMobilityServiceId}/deregister_task: + post: + summary: Timer based individual deregistration of an Application Mobility Service resource. + description: 'The POST method is to trigger deregistration of the application mobility service on expiry of the timer associated with the service. ' + operationId: deregistertaskPOST + tags: + - app_mobility_services + responses: + '204': + description: 'The request is acknowledged. + + + The response body shall be empty.' + content: + application/json: + schema: + type: object + properties: {} + '401': + $ref: '#/components/responses/401' + '403': + $ref: '#/components/responses/403' + '404': + $ref: '#/components/responses/404' + '406': + $ref: '#/components/responses/406' + '429': + $ref: '#/components/responses/429' + /subscriptions: + get: + summary: Retrieve information of multiple subscriptions to notifications of Application Mobility Service event. + description: The GET method is used to retrieve information about the subscriptions for this requestor. Upon success, the response contains entity body with the list of links to the subscriptions that are present for the requestor. + operationId: subscriptionsGET + tags: + - subscriptions + parameters: + - $ref: '#/components/parameters/Query.Subscriptiontype' + responses: + '200': + description: Upon success, a response body containing the list of links to requestor's subscriptions is returned. + content: + application/json: + schema: + type: object + properties: + SubscriptionLinkList: + $ref: '#/components/schemas/SubscriptionLinkList' + '400': + $ref: '#/components/responses/400' + '401': + $ref: '#/components/responses/401' + '403': + $ref: '#/components/responses/403' + '404': + $ref: '#/components/responses/404' + '406': + $ref: '#/components/responses/406' + '429': + $ref: '#/components/responses/429' + post: + summary: Subscribe to notifications of Application Mobility Service event. + description: The POST method is used to create a new subscription to Application Mobility Service notifications. Upon success, the response contains entity body describing the created subscription. + operationId: subscriptionsPOST + tags: + - subscriptions + requestBody: + description: 'The entity body in the request contains data type of the specific AMS event subscription that is to be created, where the data type options are listed below and defined in clauses 7.3.2 through 7.3.4: + + MobilityProcedureSubscription. + + AdjacentAppInfoSubscription.' + content: + application/json: + schema: + type: object + properties: + MobilityProcedureSubscription: + $ref: '#/components/schemas/MobilityProcedureSubscription' + responses: + '201': + description: "Indicates successful resource creation, where the resource URI shall be returned in the HTTP Location header field.\n\nIn the returned NotificationSubscription structure, the created subscription is described using the appropriate data type from the list below and as defined in clauses\_7.3.2 through 7.3.4:\nMobilityProcedureSubscription.\nAdjacentAppInfoSubscription." + content: + application/json: + schema: + type: object + properties: + MobilityProcedureSubscription: + $ref: '#/components/schemas/MobilityProcedureSubscription' + '400': + $ref: '#/components/responses/400' + '401': + $ref: '#/components/responses/401' + '403': + $ref: '#/components/responses/403' + '404': + $ref: '#/components/responses/404' + '406': + $ref: '#/components/responses/406' + '415': + $ref: '#/components/responses/415' + '422': + $ref: '#/components/responses/422' + '429': + $ref: '#/components/responses/429' + callbacks: + notification: + post: + summary: Callback POST used to send a notification + description: Subscription notification + operationId: notificationPOST + requestBody: + description: Subscription notification + required: true + content: + application/json: + schema: + type: object + properties: + subscriptionNotification: + oneOf: + - $ref: '#/components/schemas/MobilityProcedureSubscription' + - $ref: '#/components/schemas/AdjacentAppInfoSubscription' + /subscriptions/{subscriptionId}: + get: + summary: Read information of subscription of Application Mobility Service. + description: The GET method is used to retrieve information about this subscription. Upon success, the response contains entity body with the data type describing the subscription. + operationId: subscriptionsByIdGET + tags: + - subscriptions + responses: + '200': + description: 'Upon success, a response body containing data type describing the specific AMS event subscription is returned. The allowed data types for subscriptions are defined in clauses 7.3.2 and 7.3.3 as follows: + + MobilityProcedureSubscription. + + AdjacentAppInfoSubscription.' + content: + application/json: + schema: + type: object + properties: + MobilityProcedureSubscription: + $ref: '#/components/schemas/MobilityProcedureSubscription' + '400': + $ref: '#/components/responses/400' + '401': + $ref: '#/components/responses/401' + '403': + $ref: '#/components/responses/403' + '404': + $ref: '#/components/responses/404' + '406': + $ref: '#/components/responses/406' + '429': + $ref: '#/components/responses/429' + put: + summary: Update an individual subscription to notification of Application Mobility Service event. + description: The PUT method is used to update the existing individual subscription. PUT method in this case has "replace" semantics. Upon successful operation, the target resource is updated with new subscription parameters received within the message body of the PUT request. + operationId: subscriptionsByIdPUT + tags: + - subscriptions + requestBody: + description: 'Updated NotificationSubscription is included as entity body of the request. The allowed data types for subscriptions are defined in clauses 7.3.2 and 7.3.3 as follows: + + MobilityProcedureSubscription. + + AdjacentAppInfoSubscription.' + content: + application/json: + schema: + type: object + properties: + MobilityProcedureSubscription: + $ref: '#/components/schemas/MobilityProcedureSubscription' + responses: + '200': + description: 'Upon success, a response body containing data type describing the updated subscription is returned. The allowed data types for subscriptions are defined in clauses 7.3.2 and 7.3.3 as follows: + + MobilityProcedureSubscription. + + AdjacentAppInfoSubscription.' + content: + application/json: + schema: + type: object + properties: + MobilityProcedureSubscription: + $ref: '#/components/schemas/MobilityProcedureSubscription' + '400': + $ref: '#/components/responses/400' + '401': + $ref: '#/components/responses/401' + '403': + $ref: '#/components/responses/403' + '404': + $ref: '#/components/responses/404' + '406': + $ref: '#/components/responses/406' + '412': + $ref: '#/components/responses/412' + '422': + $ref: '#/components/responses/422' + '429': + $ref: '#/components/responses/429' + delete: + summary: Terminate an individual subscription to notification of Application Mobility Service event. + description: The DELETE method is used to cancel the existing individual subscription. Cancellation can be made by deleting the resource that represents existing individual subscription. + operationId: subscriptionsByIdDELETE + tags: + - subscriptions + responses: + '204': + $ref: '#/components/responses/204' + '401': + $ref: '#/components/responses/401' + '403': + $ref: '#/components/responses/403' + '404': + $ref: '#/components/responses/404' + '429': + $ref: '#/components/responses/429' + /queries/adjacent_app_instances: + get: + summary: Read information of adjacent application instance(s). + description: The GET method is to retrieve the information of adjacent application instances. Upon success, the response contains entity body with the list of available application instance information. + operationId: adjacentappinstancesGET + tags: + - adjacent_app_instances + parameters: + - $ref: '#/components/parameters/Query.Filter1' + - $ref: '#/components/parameters/Query.All_fields' + - $ref: '#/components/parameters/Query.Fields' + - $ref: '#/components/parameters/Query.Exclude_fields1' + - $ref: '#/components/parameters/Query.Exclude_default1' + responses: + '200': + description: 'Information about zero or more adjacent application instances was queried successfully. + + + The response body shall contain in an array the representations of zero or more adjacent application instance information.' + content: + application/json: + schema: + type: object + properties: + AdjacentAppInstanceInfo: + type: array + items: + $ref: '#/components/schemas/AdjacentAppInstanceInfo' + '400': + $ref: '#/components/responses/400' + '401': + $ref: '#/components/responses/401' + '403': + $ref: '#/components/responses/403' + '404': + $ref: '#/components/responses/404' + '406': + $ref: '#/components/responses/406' + '429': + $ref: '#/components/responses/429' + /user_defined_notification: + post: + description: The POST method delivers a notification from the AMS resource to the subscriber. + operationId: userdefinednotificationPOST + tags: + - notifications + requestBody: + description: 'A notification of an event related to the specific AMS event, where the data type options are listed below and defined in clauses 7.4.2 through 7.4.4: + + MobilityProcedureNotification. + + AdjacentAppInfoNotification. + + ExpiryNotification.' + content: + application/json: + schema: + type: object + properties: + MobilityProcedureNotification: + $ref: '#/components/schemas/MobilityProcedureNotification' + responses: + '204': + description: The notification was delivered successfully. The response body shall be empty. + content: + application/json: + schema: + type: object + properties: {} + '401': + $ref: '#/components/responses/401' + '403': + $ref: '#/components/responses/403' + '404': + $ref: '#/components/responses/404' + '429': + $ref: '#/components/responses/429' +components: + schemas: + MobilityStatus1_: + description: Indicate the status of the UE mobility + type: integer + enum: + - 1 = INTERHOST_MOVEOUT_TRIGGERED + - 2 = INTERHOST_MOVEOUT_COMPLETED + - 3 = INTERHOST_MOVEOUT_FAILED + AssociateId: + description: The data type of AssociateId is defined in ETSI GS MEC 012 [6]. + type: string + AppMobilityServiceLevel1_: + description: This attribute provides an option for the application instance (server) to communicate with the application client before relocating this application instance to another MEC host. + type: integer + enum: + - 1 = APP_MOBILITY_NOT_ALLOWED + - 2 = APP_MOBILITY_WITH_CONFIRMATION + - 3 = APP_MOBILITY_WITHOUT_CONFIRMATION + x-etsi-notes: "'APP_MOBILITY_NOT_ALLOWED: the current serving application instance continues to deliver the service to the device. The AMS will inform the MEP to perform the traffic steering to the device when the UE moves cross MEC hosts. \u2212 APP_MOBILITY_WITH_CONFIRMATION: the serving application instance is allowed to change with the confirmation by the application once the device mobility happens. The AMS then will inform the MEP to update the traffic routing to the target application instance and clean up the previous resource allocated to the application instance serving to the device after the serving application instance has been changed. \u2212 APP_MOBILITY_WITHOUT_CONFIRMATION: the serving application instance is allowed to change without confirmation from the application instance when the device mobility happens. The AMS will notify to the MEP to update the traffic routing to the target application instance and clean up the previous resource allocated to the application instance serving to the device after the serving application instance has been changed. .'\n" + contextTransferState1_: + description: If present, it represents the state of transferring the user context to another application instance. + type: string + enum: + - 0 = NOT_TRANSFERRED + - 1 = USER_CONTEXT_TRANSFER_COMPLETED + subscriptionType1_: + description: Numeric value (0 - 255) corresponding to specified type of subscription as following + type: integer + enum: + - 0 = RESERVED. + - 1 = MOBILITY_PROCEDURE. + - 2 = ADJACENT_APPINFO. + ProblemDetails: + type: object + properties: + type: + type: string + format: uri + description: A URI reference according to IETF RFC 3986 that identifies the problem type + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: URI + title: + type: string + description: A short, human-readable summary of the problem type + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: String + status: + type: integer + format: uint32 + description: The HTTP status code for this occurrence of the problem + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: Uint32 + detail: + type: string + description: A human-readable explanation specific to this occurrence of the problem + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: String + instance: + type: string + format: uri + description: A URI reference that identifies the specific occurrence of the problem + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: URI + LinkType: + title: LinkType + required: + - href + type: object + properties: + href: + type: string + description: URI referring to a resource + RegistrationInfo: + x-etsi-ref: 7.2.2 + type: object + properties: + appMobilityServiceId: + description: 'The identifier of registered Application Mobility Service. + + Shall be absent in POST requests, and present otherwise.' + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + serviceConsumerId: + $ref: '#/components/schemas/ServiceConsumerId' + deviceInformation: + type: array + items: + $ref: '#/components/schemas/DeviceInformation' + expiryTime: + description: 'If present, it indicates the time of Application Mobility Service expiration from the time of registration accepted. + + The value "0" means infinite time, i.e. no expiration. + + The unit of expiry time is one second.' + x-etsi-mec-origin-type: Uint32 + x-etsi-mec-cardinality: 0..1 + type: integer + format: uint32 + required: + - serviceConsumerId + x-etsi-notes: "NOTE:\tThe data type of AssociateId is defined in ETSI GS MEC 012 [6]." + AdjacentAppInstanceInfo: + x-etsi-ref: 7.2.3 + type: object + properties: + appInstanceId: + description: Identifier of the application instance. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + appDId: + description: Identifier of the application descriptor. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + appInstanceCommLink: + description: It specifies the communication interface of application instance. + x-etsi-mec-origin-type: CommunicationInterface + x-etsi-mec-cardinality: 1..N + type: array + minItems: 1 + items: + $ref: '#/components/schemas/CommunicationInterface' + mecHostInformation: + # description': The MEC host where the application instance is running on. + $ref: '#/components/schemas/MECHostInformation' + # x-etsi-mec-origin-type': MECHostInformation + # x-etsi-mec-cardinality': 0..1 + registeredInstanceId: + description: Identifier of the application instance that registers to the AMS, which is instantiated from the application descriptor identified by the attribute "appDId". + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + required: + - appInstanceId + - appDId + - appInstanceCommLink + MobilityProcedureSubscription: + x-etsi-ref: 7.3.2 + type: object + properties: + subscriptionType: + description: Shall be set to "MobilityProcedureSubscription". + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + callbackReference: + description: URI selected by the service consumer to receive notifications on the subscribed Application Mobility Service. See note. + x-etsi-mec-origin-type: Uri + x-etsi-mec-cardinality: 0..1 + type: string + format: uri + requestTestNotification: + description: "Shall be set to TRUE by the service consumer to request a test notification via HTTP on the callbackReference URI, specified in ETSI GS MEC 009 [4], as described in clause\_6.12a. " + x-etsi-mec-origin-type: Boolean + x-etsi-mec-cardinality: 0..1 + type: boolean + websockNotifConfig: + # description': Provides details to negotiate and signal the use of a Websocket connection between AMS and the service consumer for notifications. See note. + $ref: '#/components/schemas/WebsockNotifConfig' + # x-etsi-mec-origin-type': WebsockNotifConfig + # x-etsi-mec-cardinality': 0..1 + _links: + $ref: '#/components/schemas/_links' + filterCriteria: + $ref: '#/components/schemas/FilterCriteria' + expiryDeadline: + # description': Identifies a boundary after which the subscription will expire. + $ref: '#/components/schemas/TimeStamp' + # x-etsi-mec-origin-type': TimeStamp + # x-etsi-mec-cardinality': 0..1 + required: + - subscriptionType + - filterCriteria + x-etsi-notes: "NOTE:\tAt least one of callbackReference and websockNotifConfig shall be provided by the service consumer. If both are provided, it is up to AMS to choose an alternative and return only that alternative in the response, specified in ETSI GS MEC 009 [4], as described in clause 6.12a." + AdjacentAppInfoSubscription: + x-etsi-ref: 7.3.3 + type: object + properties: + subscriptionType: + description: Shall be set to "AdjacentAppInfoSubscription". + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + callbackReference: + description: URI selected by the service consumer to receive notifications on the subscribed Application Mobility Service. See note. + x-etsi-mec-origin-type: Uri + x-etsi-mec-cardinality: 0..1 + type: string + format: uri + requestTestNotification: + description: "Shall be set to TRUE by the service consumer to request a test notification via HTTP on the callbackReference URI, specified in ETSI GS MEC 009 [4], as described in clause\_6.12a. " + x-etsi-mec-origin-type: Boolean + x-etsi-mec-cardinality: 0..1 + type: boolean + websockNotifConfig: + # description': Provides details to negotiate and signal the use of a Websocket connection between AMS and the service consumer for notifications. See note. + $ref: '#/components/schemas/WebsockNotifConfig' + # x-etsi-mec-origin-type': WebsockNotifConfig + # x-etsi-mec-cardinality': 0..1 + _links: + $ref: '#/components/schemas/_links' + filterCriteria: + $ref: '#/components/schemas/FilterCriteria1' + expiryDeadline: + # description': Identifies a boundary after which the subscription will expire. + $ref: '#/components/schemas/TimeStamp' + # x-etsi-mec-origin-type': TimeStamp + # x-etsi-mec-cardinality': 0..1 + required: + - subscriptionType + - filterCriteria + x-etsi-notes: "NOTE:\tAt least one of callbackReference and websockNotifConfig shall be provided by the service consumer. If both are provided, it is up to AMS to choose an alternative and return only that alternative in the response, specified in ETSI GS MEC 009 [4], as described in clause 6.12a." + SubscriptionLinkList: + x-etsi-ref: 7.3.4 + type: object + properties: + _links: + $ref: '#/components/schemas/_links1' + required: + - _links + MobilityProcedureNotification: + x-etsi-ref: 7.4.2 + type: object + properties: + notificationType: + description: Shall be set to "MobilityProcedureNotification". + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + timeStamp: + # description': Date and time of the generation of the notification. + $ref: '#/components/schemas/TimeStamp' + # x-etsi-mec-origin-type': TimeStamp + # x-etsi-mec-cardinality': 0..1 + associateId: + description: 1 to N identifiers to associate the information for specific UE(s) and flow(s). + x-etsi-mec-origin-type: AssociateId + x-etsi-mec-cardinality: 1..N + type: array + minItems: 1 + items: + $ref: '#/components/schemas/AssociateId' + mobilityStatus: + type: integer + description: 'Indicate the status of the UE mobility. Values are defined as following: + + 1 = INTERHOST_MOVEOUT_TRIGGERED. + + 2 = INTERHOST_MOVEOUT_COMPLETED. + + 3 = INTERHOST_MOVEOUT_FAILED. + + Other values are reserved.' + enum: + - SEE_DESCRIPTION + x-etsi-mec-origin-type: Enum_inlined + x-etsi-mec-cardinality: '1' + targetAppInfo: + $ref: '#/components/schemas/TargetAppInfo' + _links: + $ref: '#/components/schemas/_links2' + required: + - notificationType + - associateId + - mobilityStatus + - _links + ExpiryNotification: + x-etsi-ref: 7.4.4 + type: object + properties: + notificationType: + description: Shall be set to "ExpiryNotification". + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + timeStamp: + # description': Date and time of the generation of the notification. + $ref: '#/components/schemas/TimeStamp' + # x-etsi-mec-origin-type': TimeStamp + # x-etsi-mec-cardinality': 0..1 + _links: + $ref: '#/components/schemas/_links3' + expiryDeadline: + # description': The boundary value setting in the subscription request. + $ref: '#/components/schemas/TimeStamp' + # x-etsi-mec-origin-type': TimeStamp + # x-etsi-mec-cardinality': '1' + required: + - notificationType + - _links + - expiryDeadline + AppMobilityServiceLevel: + x-etsi-ref: 7.4.5 + type: object + properties: + appMobilityServiceLevel: + type: integer + description: 'This attribute provides an option for the application instance (server) to communicate with the application client before relocating this application instance to another MEC host. The applicable values of this attribute are: + + 1 = APP_MOBILITY_NOT_ALLOWED + + 2 = APP_MOBILITY_WITH_CONFIRMATION + + 3 = APP_MOBILITY_WITHOUT_CONFIRMATION. + + Other values are reserved. + + See note.' + enum: + - SEE_DESCRIPTION + x-etsi-mec-origin-type: Enum_inlined + x-etsi-mec-cardinality: '1' + required: + - appMobilityServiceLevel + x-etsi-notes: 'NOTE: + + APP_MOBILITY_NOT_ALLOWED: the current serving application instance continues to deliver the service to the device. The AMS will inform the MEP to perform the traffic steering to the device when the UE moves cross MEC hosts. + + APP_MOBILITY_WITH_CONFIRMATION: the serving application instance is allowed to change with the confirmation by the application once the device mobility happens. The AMS then will inform the MEP to update the traffic routing to the target application instance and clean up the previous resource allocated to the application instance serving to the device after the serving application instance has been changed. + + APP_MOBILITY_WITHOUT_CONFIRMATION: the serving application instance is allowed to change without confirmation from the application instance when the device mobility happens. The AMS will notify to the MEP to update the traffic routing to the target application instance and clean up the previous resource allocated to the application instance serving to the device after the serving application instance has been changed.' + TestNotification: + x-etsi-ref: 7.4.6 + type: object + properties: + notificationType: + description: Shall be set to "TestNotification". + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + _links: + $ref: '#/components/schemas/_links4' + required: + - notificationType + - _links + CommunicationInterface: + x-etsi-ref: 7.5.2 + type: object + properties: + ipAddresses: + type: array + items: + $ref: '#/components/schemas/IpAddresses' + TimeStamp: + x-etsi-ref: 7.5.3 + type: object + properties: + seconds: + description: "The seconds part of the Time. Time is defined as Unix-time since January\_1, 1970, 00:00:00 UTC." + x-etsi-mec-origin-type: Uint32 + x-etsi-mec-cardinality: '1' + type: integer + format: uint32 + nanoSeconds: + description: The nanoseconds part of the Time. Time is defined as Unix-time since January 1, 1970, 00:00:00 UTC. + x-etsi-mec-origin-type: Uint32 + x-etsi-mec-cardinality: '1' + type: integer + format: uint32 + required: + - seconds + - nanoSeconds + LinkType: + x-etsi-ref: 7.5.4 + type: object + properties: + href: + description: URI referring to a resource + x-etsi-mec-origin-type: Uri + x-etsi-mec-cardinality: '1' + type: string + format: uri + required: + - href + MECHostInformation: + x-etsi-ref: 7.5.5 + type: object + properties: + hostName: + description: Human-readable name of MEC host. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + hostId: + $ref: '#/components/schemas/KeyValuePairs' + required: + - hostId + x-etsi-notes: "NOTE: \tThis information can be structured to cater for host identification schemes that are more complex than a simple identifier, e.g. when referring to the structure of an NFVI." + WebsockNotifConfig: + x-etsi-ref: 7.5.7 + type: object + properties: + websocketUri: + description: Set by AMS to indicate to the service consumer the Websocket URI to be used for delivering notifications. + x-etsi-mec-origin-type: Uri + x-etsi-mec-cardinality: 0..1 + type: string + format: uri + requestWebsocketUri: + description: Set to true by the service consumer to indicate that Websocket delivery is requested. + x-etsi-mec-origin-type: Boolean + x-etsi-mec-cardinality: 0..1 + type: boolean + ServiceConsumerId: + description: The identifier of service consumer requesting the Application Mobility Service, i.e. either the application instance ID or the MEC platform ID. + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: '1' + type: object + properties: + appInstanceId: + description: If present, it represents the identifier of the application instance registering the Application Mobility Service. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + mepId: + description: If present, it represents the identifier of the MEC platform registering the Application Mobility Service. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + DeviceInformation: + description: 'If present, it specifies the device served by the application instance which is registering the Application Mobility Service. ' + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: 0..N + type: object + minItems: 0 + properties: + associateId: + # description': Represents the identifier of the device. See note. + $ref: '#/components/schemas/AssociateId' + # x-etsi-mec-origin-type': AssociateId + # x-etsi-mec-cardinality': '1' + appMobilityServiceLevel: + # description': If the application is stateful, this attribute shall be included. + $ref: '#/components/schemas/AppMobilityServiceLevel' + # x-etsi-mec-origin-type': AppMobilityServiceLevel + # x-etsi-mec-cardinality': 0..1 + contextTransferState: + type: integer + description: 'If present, it represents the state of transferring the user context to another application instance. The applicable values of this attribute are: + + 0 = NOT_TRANSFERRED (default value) + + 1 = USER_CONTEXT_TRANSFER_COMPLETED + + In the initial application mobility registration, this attribute shall be set to the default value.' + enum: + - SEE_DESCRIPTION + x-etsi-mec-origin-type: Enum_inlined + x-etsi-mec-cardinality: 0..1 + required: + - associateId + _links: + description: Hyperlink related to the resource. This shall be only included in the HTTP responses and in HTTP PUT requests. + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: 0..1 + type: object + properties: + self: + # description': Self-referring URI. The URI shall be unique within the AMS API as it acts as an ID for the subscription. + $ref: '#/components/schemas/LinkType' + # x-etsi-mec-origin-type': LinkType + # x-etsi-mec-cardinality': '1' + required: + - self + FilterCriteria: + description: List of filtering criteria for the subscription. Any filtering criteria from below, which is included in the request, shall also be included in the response. + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: '1' + type: object + properties: + appInstanceId: + description: Identifier of the application instance that registers the Application Mobility Service. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + associateId: + description: 0 to N identifiers to associate the information for specific UE(s) and flow(s). + x-etsi-mec-origin-type: AssociateId + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + $ref: '#/components/schemas/AssociateId' + mobilityStatus: + description: 'In case mobilityStatus is not included in the subscription request, the default value 1 = INTER_HOST_MOBILITY_TRIGGERED shall be used and included in the response. + + 1 = INTERHOST_MOVEOUT_TRIGGERED. + + 2 = INTERHOST_MOVEOUT_COMPLETED. + + 3 = INTERHOST_MOVEOUT_FAILED.' + x-etsi-mec-origin-type: Enum_inlined + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + type: integer + FilterCriteria1: + description: List of filtering criteria for the subscription. Any filtering criteria from below, which is included in the request, shall also be included in the response. + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: '1' + type: object + properties: + appInstanceId: + description: Identifier of the application instance that registers to the Application Mobility Service. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + Subscription: + description: The service consumer's subscriptions. + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: 0..N + type: object + minItems: 0 + properties: + href: + description: The URI referring to the subscription. + x-etsi-mec-origin-type: Uri + x-etsi-mec-cardinality: '1' + type: string + format: uri + subscriptionType: + description: "Type of the subscription. The string shall be set according to the \"subscriptionType\" attribute of the associated subscription data type defined in clauses\_7.3.2 and 7.3.3:\n\"MobilityProcedureSubscription\"\n\"AdjacentAppInfoSubscription\"" + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + required: + - href + - subscriptionType + _links1: + description: Hyperlinks related to the resource. + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: '1' + type: object + properties: + self: + # description': URI of this resource. + $ref: '#/components/schemas/LinkType' + # x-etsi-mec-origin-type': LinkType + # x-etsi-mec-cardinality': '1' + subscription: + type: array + items: + $ref: '#/components/schemas/Subscription' + required: + - self + TargetAppInfo: + description: Identifiers to associate the information of target application instance. + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: 0..1 + type: object + properties: + appInstanceId: + description: Identifiers of the target application instance. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + commInterface: + # description': If present, it specifies the communication interface of the application instance. + $ref: '#/components/schemas/CommunicationInterface' + # x-etsi-mec-origin-type': CommunicationInterface + # x-etsi-mec-cardinality': 0..1 + required: + - appInstanceId + _links2: + description: Object containing hyperlinks related to the resource. + x-etsi-mec-origin-type: Structure(inlined) + x-etsi-mec-cardinality: '1' + type: object + properties: + subscription: + # description': Link to the related subscription. + $ref: '#/components/schemas/LinkType' + # x-etsi-mec-origin-type': LinkType + # x-etsi-mec-cardinality': '1' + required: + - subscription + _links3: + description: Object containing hyperlinks related to the resource. + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: '1' + type: object + properties: + subscription: + # description': Link to the expired subscription. + $ref: '#/components/schemas/LinkType' + # x-etsi-mec-origin-type': LinkType + # x-etsi-mec-cardinality': '1' + required: + - subscription + _links4: + description: 'Hyperlink related to the resource. ' + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: '1' + type: object + properties: + subscription: + # description': URI identifying the subscription for the test notification. + $ref: '#/components/schemas/LinkType' + # x-etsi-mec-origin-type': LinkType + # x-etsi-mec-cardinality': '1' + required: + - subscription + IpAddresses: + description: Entry point information of the service as one or more pairs of IP address and port. + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: 0..N + type: object + minItems: 0 + properties: + host: + description: Host portion of the address. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + port: + description: Port portion of the address. + x-etsi-mec-origin-type: Int + x-etsi-mec-cardinality: '1' + type: integer + required: + - host + - port + responses: + '200': + description: OK + '204': + description: No Content + '400': + description: 'Bad Request: used to indicate that incorrect parameters were passed to the request.' + content: + application/problem+json: + schema: + $ref: '#/components/schemas/ProblemDetails' + '401': + description: 'Unauthorized: used when the client did not submit credentials.' + content: + application/problem+json: + schema: + $ref: '#/components/schemas/ProblemDetails' + '403': + description: 'Forbidden: operation is not allowed given the current status of the resource.' + content: + application/problem+json: + schema: + $ref: '#/components/schemas/ProblemDetails' + '404': + description: 'Not Found: used when a client provided a URI that cannot be mapped to a valid resource URI.' + content: + application/problem+json: + schema: + $ref: '#/components/schemas/ProblemDetails' + '406': + description: 'Not Acceptable: used to indicate that the server cannot provide the any of the content formats supported by the client.' + content: + application/problem+json: + schema: + $ref: '#/components/schemas/ProblemDetails' + '412': + description: 'Precondition failed: used when a condition has failed during conditional requests, e.g. when using ETags to avoid write conflicts when using PUT' + content: + application/problem+json: + schema: + $ref: '#/components/schemas/ProblemDetails' + '415': + description: 'Unsupported Media Type: used to indicate that the server or the client does not support the content type of the entity body.' + content: + application/problem+json: + schema: + $ref: '#/components/schemas/ProblemDetails' + '422': + description: 'Unprocessable Entity: used to indicate that the server understands the content type of the request entity and that the syntax of the request entity is correct but that the server is unable to process the contained instructions. This error condition can occur if an JSON request body is syntactically correct but semantically incorrect, for example if the target area for the request is considered too large. This error condition can also occur if the capabilities required by the request are not supported.' + content: + application/problem+json: + schema: + $ref: '#/components/schemas/ProblemDetails' + '429': + description: 'Too Many Requests: used when a rate limiter has triggered.' + content: + application/problem+json: + schema: + $ref: '#/components/schemas/ProblemDetails' + parameters: + 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. + + All attribute names that appear in the RegistrationInfo 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 + cardinality: 0..1 + in: query + required: false + x-exportParamName: Query.Filter + 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 + cardinality: 0..1 + in: query + required: false + x-exportParamName: Query.All_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 + cardinality: 0..1 + in: query + required: false + x-exportParamName: Query.Fields + Query.Exclude_fields: + description: "Complex attributes 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 + cardinality: 0..1 + in: query + required: false + x-exportParamName: Query.Exclude_fields + 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. + + The following attributes shall be excluded from the RegistrationInfo structure in the response body if this parameter is provided, or none of the parameters "all_fields", "fields", "exclude_fields", "exclude_default" are provided: + + n/a.' + name: exclude_default + cardinality: 0..1 + in: query + required: false + x-exportParamName: Query.Exclude_default + Query.Subscriptiontype: + description: "Query parameter to filter on a specific subscription type. Permitted values:\nmobility_proc\tMobility Procedure\nadj_app_info\tAdjacent Application Info." + name: subscriptiontype + cardinality: 0..1 + in: query + required: false + x-exportParamName: Query.Subscriptiontype + 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 AdjacentAppInstanceInfo 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 + cardinality: 0..1 + in: query + required: false + x-exportParamName: Query.Filter1 + Query.Exclude_fields1: + description: Complex attributes 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 + cardinality: 0..1 + in: query + required: false + x-exportParamName: Query.Exclude_fields1 + Query.Exclude_default1: + 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. + + The following attributes shall be excluded from the AdjacentAppInstanceInfo structure in the response body if this parameter is provided, or none of the parameters "all_fields", "fields", "exclude_fields", "exclude_default" are provided: + + n/a.' + name: exclude_default + cardinality: 0..1 + in: query + required: false + x-exportParamName: Query.Exclude_default1 + diff --git a/Auto_Generated_OAS_Output_Files/Auto_Generated_OAS_Output_Files/gs_mec028v020301p.yaml b/Auto_Generated_OAS_Output_Files/Auto_Generated_OAS_Output_Files/gs_mec028v020301p.yaml new file mode 100644 index 0000000..3474f70 --- /dev/null +++ b/Auto_Generated_OAS_Output_Files/Auto_Generated_OAS_Output_Files/gs_mec028v020301p.yaml @@ -0,0 +1,2995 @@ +openapi: 3.1.0 +jsonSchemaDialect: https://json-schema.org/draft/2020-12/schema +info: + contact: + url: https://forge.etsi.org/rep/mec/gs028-wai-api + title: ETSI GS MEC 028 MEC WLAN Information API + description: The ETSI MEC ISG MEC WLAN Information API described using OpenAPI. + license: + name: BSD-3-Clause + url: https://forge.etsi.org/legal-matters + version: 2.3.1 +paths: + /queries/ap/ap_information: + get: + summary: Retrieve current status of Access Point information. + description: The GET method is used to query information about the WLAN Access Points. + operationId: apinformationGET + tags: + - queries + 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' + responses: + '200': + description: 'Shall be returned when information about zero or more Access Points has been queried successfully. + + + The response body shall contain in an array the representations of zero or more Access Points, as defined in clause 6.2.2. + + + If the "filter" URI parameter or one of the "all_fields", "fields" (if supported), "exclude_fields" (if supported) or "exclude_default" URI parameters was supplied in the request, the data in the response body shall have been transformed according to the rules specified in clauses 6.19 and 6.18 of ETSI GS MEC 009 [10], respectively.' + content: + application/json: + schema: + type: object + properties: + ApInfo: + type: array + items: + $ref: '#/components/schemas/ApInfo' + '400': + $ref: '#/components/responses/400' + '401': + $ref: '#/components/responses/401' + '403': + $ref: '#/components/responses/403' + '404': + $ref: '#/components/responses/404' + '406': + $ref: '#/components/responses/406' + '416': + $ref: '#/components/responses/416' + '429': + $ref: '#/components/responses/429' + /queries/sta/sta_information: + get: + summary: Retrieve current status of Station information. + description: The GET method is used to query information about the WLAN stations. + operationId: stainformationGET + tags: + - queries + parameters: + - $ref: '#/components/parameters/Query.Filter1' + - $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: 'Shall be returned when information about zero or more WLAN stations has been queried successfully. + + + The response body shall contain in an array the representations of zero or more WLAN stations, as defined in clause 6.2.2. + + + If the "filter" URI parameter or one of the "all_fields", "fields" (if supported), "exclude_fields" (if supported) or "exclude_default" URI parameters was supplied in the request, the data in the response body shall have been transformed according to the rules specified in clauses 6.19 and 6.18 of ETSI GS MEC 009 [10], respectively.' + content: + application/json: + schema: + type: object + properties: + StaInfo: + type: array + items: + $ref: '#/components/schemas/StaInfo' + '400': + $ref: '#/components/responses/400' + '401': + $ref: '#/components/responses/401' + '403': + $ref: '#/components/responses/403' + '404': + $ref: '#/components/responses/404' + '406': + $ref: '#/components/responses/406' + '416': + $ref: '#/components/responses/416' + '429': + $ref: '#/components/responses/429' + /subscriptions: + get: + summary: Retrieve a list of active subscriptions for this subscriber. + description: The GET method is used to request information about the subscriptions for this requestor. Upon success, the response contains entity body with the list of links to the subscriptions that are present for the requestor. + operationId: subscriptionsGET + tags: + - subscriptions + parameters: + - $ref: '#/components/parameters/Query.Subscription_type' + responses: + '200': + description: Upon success, a response body containing the list of links to requestor's subscriptions is returned. + content: + application/json: + schema: + type: object + properties: + SubscriptionLinkList: + $ref: '#/components/schemas/SubscriptionLinkList' + '400': + $ref: '#/components/responses/400' + '401': + $ref: '#/components/responses/401' + '403': + $ref: '#/components/responses/403' + '404': + $ref: '#/components/responses/404' + '406': + $ref: '#/components/responses/406' + '429': + $ref: '#/components/responses/429' + post: + summary: Create a new subscription. + description: The POST method is used to create a new subscription to WLAN notifications. Upon success, the response contains entity body describing the created subscription. + operationId: subscriptionsPOST + tags: + - subscriptions + requestBody: + description: 'The entity body in the request contains data type of the specific WLAN event subscription that is to be created, where the data type options are listed below and defined in clauses 6.3.2, 6.3.3 and 6.3.5: + + AssocStaSubscription. + + StaDataRateSubscription. + + MeasurementReportSubscription.' + content: + application/json: + schema: + type: object + properties: + AssocStaSubscription: + $ref: '#/components/schemas/AssocStaSubscription' + responses: + '201': + description: 'Indicates successful resource creation, where the resource URI shall be returned in the HTTP Location header field. + + + In the returned NotificationSubscription structure, the created subscription is described using the appropriate data type from the list below and as defined in clauses 6.3.2, 6.3.3 and 6.3.5: + + AssocStaSubscription. + + StaDataRateSubscription. + + MeasurementReportSubscription. + + + The created resource is identified by its subscriptionId included in the "self" attribute (selfreferring URI).' + content: + application/json: + schema: + type: object + properties: + AssocStaSubscription: + $ref: '#/components/schemas/AssocStaSubscription' + '400': + $ref: '#/components/responses/400' + '401': + $ref: '#/components/responses/401' + '403': + $ref: '#/components/responses/403' + '404': + $ref: '#/components/responses/404' + '406': + $ref: '#/components/responses/406' + '415': + $ref: '#/components/responses/415' + callbacks: + notification: + post: + summary: Callback POST used to send a notification + description: Subscription notification + operationId: notificationPOST + requestBody: + description: Subscription notification + required: true + content: + application/json: + schema: + type: object + properties: + subscriptionNotification: + oneOf: + - $ref: '#/components/schemas/AssocStaSubscription' + - $ref: '#/components/schemas/StaDataRateSubscription' + - $ref: '#/components/schemas/MeasurementReportSubscription' + /subscriptions/{subscriptionId}: + get: + summary: Retrieve information on current specific subscription. + description: The GET method is used to retrieve information about this subscription. Upon success, the response contains entity body with the data type describing the subscription. + operationId: subscriptionsByIdGET + tags: + - subscriptions + responses: + '200': + description: "Upon success, a response body containing data type describing the specific WLAN event subscription is returned. The allowed data types for subscriptions are defined in clauses\_6.3.2, 6.3.3 and 6.3.5:\nAssocStaSubscription.\nStaDataRateSubscription.\nMeasurementReportSubscription." + content: + application/json: + schema: + type: object + properties: + AssocStaSubscription: + $ref: '#/components/schemas/AssocStaSubscription' + '400': + $ref: '#/components/responses/400' + '401': + $ref: '#/components/responses/401' + '403': + $ref: '#/components/responses/403' + '404': + $ref: '#/components/responses/404' + '406': + $ref: '#/components/responses/406' + '429': + $ref: '#/components/responses/429' + put: + summary: Modify existing subscription by sending a new data structure. + description: The PUT method is used to update the existing subscription. PUT method in this case has "replace" semantics. Upon successful operation, the target resource is updated with new Data Type received within the message body of the PUT request. + operationId: subscriptionsByIdPUT + tags: + - subscriptions + requestBody: + description: 'New NotificationSubscription is included as entity body of the request. The allowed data types for subscriptions are defined in clauses 6.3.2, 6.3.3 and 6.3.5: + + AssocStaSubscription. + + StaDataRateSubscription. + + MeasurementReportSubscription.' + content: + application/json: + schema: + type: object + properties: + AssocStaSubscription: + $ref: '#/components/schemas/AssocStaSubscription' + responses: + '200': + description: 'Upon success, a response body containing data type describing the updated subscription is returned. The allowed data types for subscriptions are defined in clauses 6.3.2, 6.3.3 and 6.3.5: + + AssocStaSubscription. + + StaDataRateSubscription. + + MeasurementReportSubscription.' + content: + application/json: + schema: + type: object + properties: + AssocStaSubscription: + $ref: '#/components/schemas/AssocStaSubscription' + '400': + $ref: '#/components/responses/400' + '401': + $ref: '#/components/responses/401' + '403': + $ref: '#/components/responses/403' + '404': + $ref: '#/components/responses/404' + '406': + $ref: '#/components/responses/406' + '412': + $ref: '#/components/responses/412' + delete: + summary: Cancel an existing subscription. + description: The DELETE method is used to cancel the existing subscription. Cancellation can be made by deleting the resource that represents existing subscription. + operationId: subscriptionsByIdDELETE + tags: + - subscriptions + responses: + '204': + $ref: '#/components/responses/204' + '401': + $ref: '#/components/responses/401' + '403': + $ref: '#/components/responses/403' + '404': + $ref: '#/components/responses/404' + '429': + $ref: '#/components/responses/429' + /measurements: + get: + summary: Retrieve a list of configured measurements for this subscriber. + description: The GET method is used to request information about the measurement configurations for this requestor. Upon success, the response contains an entity body with the list of links to the measurement configurations that are present for the requestor. + operationId: measurementsGET + tags: + - measurements + responses: + '200': + description: Upon success, a response body containing the list of links to requestor's measurement configurations is returned. + content: + application/json: + schema: + type: object + properties: + MeasurementConfigLinkList: + $ref: '#/components/schemas/MeasurementConfigLinkList' + '400': + $ref: '#/components/responses/400' + '401': + $ref: '#/components/responses/401' + '403': + $ref: '#/components/responses/403' + '404': + $ref: '#/components/responses/404' + '406': + $ref: '#/components/responses/406' + '429': + $ref: '#/components/responses/429' + post: + summary: Create a new measurement configuration. + description: The POST method is used to create a new WLAN measurement configuration. Upon success, the response contains an entity body describing the created measurement configuration. + operationId: measurementsPOST + tags: + - measurements + requestBody: + description: Entity body in the request contains the measurement configuration as defined in clause 6.2.4. + required: true + content: + application/json: + schema: + type: object + properties: + MeasurementConfig: + $ref: '#/components/schemas/MeasurementConfig' + responses: + '201': + description: "Indicates successful resource creation, where the resource URI shall be returned in the HTTP Location header field.\n\nThe returned MeasurementConfig structure describes the created configuration resource. \n\nThe created resource is identified by its measurementConfigId included in the \"self\" attribute (self-referring URI)." + content: + application/json: + schema: + type: object + properties: + MeasurementConfig: + $ref: '#/components/schemas/MeasurementConfig' + '400': + $ref: '#/components/responses/400' + '401': + $ref: '#/components/responses/401' + '403': + $ref: '#/components/responses/403' + '404': + $ref: '#/components/responses/404' + '406': + $ref: '#/components/responses/406' + '415': + $ref: '#/components/responses/415' + '422': + $ref: '#/components/responses/422' + '429': + $ref: '#/components/responses/429' + /measurements/{measurementConfigId}: + get: + summary: Retrieve information on an existing measurement configuration. + description: The GET method is used to retrieve information about this measurement configuration. Upon success, the response contains entity body with the data type describing the measurement configuration. + operationId: measurementsByIdGET + tags: + - measurements + responses: + '200': + description: Upon success, the response body contains the measurement configuration for the queried measurementConfigId. + content: + application/json: + schema: + type: object + properties: + MeasurementConfig: + $ref: '#/components/schemas/MeasurementConfig' + '400': + $ref: '#/components/responses/400' + '401': + $ref: '#/components/responses/401' + '403': + $ref: '#/components/responses/403' + '404': + $ref: '#/components/responses/404' + '406': + $ref: '#/components/responses/406' + '429': + $ref: '#/components/responses/429' + put: + summary: Modify an existing measurement configuration by sending a new data structure. + description: The PUT method is used to update the existing WAI measurement configuration. PUT method in this case has "replace" semantics. Upon successful operation, the target resource is updated with new Data Type received within the message body of the PUT request. + operationId: measurementsByIdPUT + tags: + - measurements + requestBody: + description: Entity body in the request contains the measurement configuration as defined in clause 6.2.4. + required: true + content: + application/json: + schema: + type: object + properties: + MeasurementConfig: + $ref: '#/components/schemas/MeasurementConfig' + responses: + '200': + description: Indicates successful resource update. The returned MeasurementConfig structure describes the updated measurement configuration resource. + content: + application/json: + schema: + type: object + properties: + MeasurementConfig: + $ref: '#/components/schemas/MeasurementConfig' + '400': + $ref: '#/components/responses/400' + '401': + $ref: '#/components/responses/401' + '403': + $ref: '#/components/responses/403' + '404': + $ref: '#/components/responses/404' + '406': + $ref: '#/components/responses/406' + '412': + $ref: '#/components/responses/412' + '422': + $ref: '#/components/responses/422' + delete: + summary: Cancel an existing measurement configuration. + description: The DELETE method is used to remove an existing measurement configuration. After the measurement configuration is removed, the configuration's associated measurementId will no longer be available in the ap_information and sta_information queries. + operationId: measurementsByIdDELETE + tags: + - measurements + responses: + '204': + $ref: '#/components/responses/204' + '401': + $ref: '#/components/responses/401' + '403': + $ref: '#/components/responses/403' + '404': + $ref: '#/components/responses/404' + '429': + $ref: '#/components/responses/429' +components: + schemas: + ProblemDetails: + type: object + properties: + type: + type: string + format: uri + description: A URI reference according to IETF RFC 3986 that identifies the problem type + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: URI + title: + type: string + description: A short, human-readable summary of the problem type + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: String + status: + type: integer + format: uint32 + description: The HTTP status code for this occurrence of the problem + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: Uint32 + detail: + type: string + description: A human-readable explanation specific to this occurrence of the problem + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: String + instance: + type: string + format: uri + description: A URI reference that identifies the specific occurrence of the problem + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: URI + MeasurementConfigLinkList1_: + properties: + _links: + description: Hyperlink related to the resource. + properties: + self: + $ref: '#/components/schemas/LinkType' + required: + - self + type: object + x-etsi-mec-cardinality: '1' + x-etsi-mec-origin-type: Structure (inlined) + measurementConfig: + description: '' + items: + type: object + properties: + href: + description: The URI referring to a measurement configuration. + format: uri + type: string + x-etsi-mec-cardinality: '1' + x-etsi-mec-origin-type: URI + measurementId: + description: Unique identifier allocated by the service consumer to identify measurement reports associated with this measurement configuration. + type: string + x-etsi-mec-cardinality: '1' + x-etsi-mec-origin-type: String + required: + - href + - measurementId + type: array + x-etsi-mec-cardinality: 0..N + x-etsi-mec-origin-type: Structure (inlined) + required: + - _links + type: object + x-etsi-ref: 6.2.5 + SubscriptionLinkList1_: + properties: + _links: + description: List of hyperlinks related to the resource. + properties: + self: + $ref: '#/components/schemas/LinkType' + required: + - self + type: object + x-etsi-mec-cardinality: '1' + x-etsi-mec-origin-type: Structure (inlined) + subscription: + description: '' + items: + type: object + properties: + href: + description: The URI referring to the subscription. + format: uri + type: string + x-etsi-mec-cardinality: '1' + x-etsi-mec-origin-type: URI + subscriptionType: + description: "Type of the subscription. The string shall be set according to the \"subscriptionType\" attribute of the associated subscription data type defined in 6.3.2, 6.3.3. and 6.3.5:\n\u201CAssocStaSubscription\u201D\n\u201CStaDataRateSubscription\u201D\n\u201CMeasurementReportSubscription\u201D" + type: string + x-etsi-mec-cardinality: '1' + x-etsi-mec-origin-type: String + minItems: 0 + required: + - href + - subscriptionType + type: array + x-etsi-mec-cardinality: 0..N + x-etsi-mec-origin-type: Structure (inlined) + required: + - _links + type: object + x-etsi-ref: 6.3.4 + InlineNotification: + oneOf: + - $ref: '#/components/schemas/AssocStaNotification' + - $ref: '#/components/schemas/StaDataRateNotification' + - $ref: '#/components/schemas/MeasurementReportNotification' + discriminator: + propertyName: notificationType + InlineSubscription: + oneOf: + - $ref: '#/components/schemas/AssocStaSubscription' + - $ref: '#/components/schemas/StaDataRateSubscription' + - $ref: '#/components/schemas/MeasurementReportSubscription' + discriminator: + propertyName: subscriptionType + ApInfo: + x-etsi-ref: 6.2.2 + type: object + properties: + timeStamp: + # description': Time stamp. + $ref: '#/components/schemas/TimeStamp' + # x-etsi-mec-origin-type': TimeStamp + # x-etsi-mec-cardinality': 0..1 + apId: + # description': Identifier(s) to uniquely specify the Access Point whose information is exposed within this data type. + $ref: '#/components/schemas/ApIdentity' + # x-etsi-mec-origin-type': ApIdentity + # x-etsi-mec-cardinality': '1' + channel: + description: Channel configured for the Access Point. + x-etsi-mec-origin-type: Uint32 + x-etsi-mec-cardinality: 0..1 + type: integer + format: uint32 + wlanCap: + # description': WLAN capabilities of Access Point. + $ref: '#/components/schemas/WlanCapabilities' + # x-etsi-mec-origin-type': WlanCapabilities + # x-etsi-mec-cardinality': 0..1 + wanMetrics: + # description': WAN Metrics element provides information about the WAN link connecting an IEEE 802.11 Access Node and the Internet. Transmission characteristics such as the speed of the WAN connection to the Internet are included in Hotspot 2.0 Technical Specification v1.0.0 [i.3]. + $ref: '#/components/schemas/WanMetrics' + # x-etsi-mec-origin-type': WanMetrics + # x-etsi-mec-cardinality': 0..1 + bssLoad: + # description': BSS Load attribute contains information on the current STA population and traffic levels in the BSS as defined in IEEE 802.11-2016 [8]. + $ref: '#/components/schemas/BssLoad' + # x-etsi-mec-origin-type': BssLoad + # x-etsi-mec-cardinality': 0..1 + extBssLoad: + # description': Extended BSS Load attribute contains more detailed information on the current STA population and traffic levels in the BSS as per ETSI GS MEC 002 [i.4]. + $ref: '#/components/schemas/ExtBssLoad' + # x-etsi-mec-origin-type': ExtBssLoad + # x-etsi-mec-cardinality': 0..1 + oBssLoad: + # description': Overlapping BSS Load attribute contains information related to the contribution of channel usage by Access Points in proximity to the reporting Access Point and operating on the same channel. + $ref: '#/components/schemas/OBssLoad' + # x-etsi-mec-origin-type': OBssLoad + # x-etsi-mec-cardinality': 0..1 + apLocation: + # description': The location on the Access Point. + $ref: '#/components/schemas/ApLocation' + # x-etsi-mec-origin-type': ApLocation + # x-etsi-mec-cardinality': 0..1 + required: + - apId + StaInfo: + x-etsi-ref: 6.2.3 + type: object + properties: + timeStamp: + # description': Time stamp. + $ref: '#/components/schemas/TimeStamp' + # x-etsi-mec-origin-type': TimeStamp + # x-etsi-mec-cardinality': 0..1 + staId: + # description': Identifier(s) uniquely specify the station whose information is exposed within this data type. + $ref: '#/components/schemas/StaIdentity' + # x-etsi-mec-origin-type': StaIdentity + # x-etsi-mec-cardinality': '1' + channel: + description: Channel currently used by the station to connect with its associated Access Point. + x-etsi-mec-origin-type: Uint32 + x-etsi-mec-cardinality: 0..1 + type: integer + format: uint32 + apAssociated: + # description': Information about the station's associated Access Point. + $ref: '#/components/schemas/ApAssociated' + # x-etsi-mec-origin-type': ApAssociated + # x-etsi-mec-cardinality': 0..1 + rssi: + # description': Receive Signal Strength Indicator. + $ref: '#/components/schemas/Rssi' + # x-etsi-mec-origin-type': Rssi + # x-etsi-mec-cardinality': 0..1 + staDataRate: + # description': Station Data Rate as defined in IEEE 802.11-2016 [8]. + $ref: '#/components/schemas/StaDataRate' + # x-etsi-mec-origin-type': StaDataRate + # x-etsi-mec-cardinality': 0..1 + staStatistics: + description: Statistics as defined in IEEE 802.11-2016 [8] for the client station collected over measurement duration. + x-etsi-mec-origin-type: StaStatistics + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + $ref: '#/components/schemas/StaStatistics' + beaconReport: + description: 'Beacon Report as defined in IEEE 802.11-2016 [8]. ' + x-etsi-mec-origin-type: BeaconReport + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + $ref: '#/components/schemas/BeaconReport' + neighborReport: + description: Information about neighbor Access Points seen by the station as defined IEEE 802.11-2016 [8]. + x-etsi-mec-origin-type: NeighborReport + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + $ref: '#/components/schemas/NeighborReport' + channelLoad: + description: "Channel Load reports as seen by the station as defined IEEE\_802.11-2016 [8]. Channel Load reports may be configured for any channel, including the station's current channel for association." + x-etsi-mec-origin-type: ChannelLoad + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + $ref: '#/components/schemas/ChannelLoad' + required: + - staId + MeasurementConfig: + description: '' + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: 0..N + type: object + minItems: 0 + properties: + href: + description: The URI referring to a measurement configuration. + x-etsi-mec-origin-type: Uri + x-etsi-mec-cardinality: '1' + type: string + format: uri + measurementId: + description: Unique identifier allocated by the service consumer to identify measurement reports associated with this measurement configuration. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + required: + - href + - measurementId + MeasurementConfigLinkList: + x-etsi-ref: 6.2.5 + type: object + properties: + _links: + $ref: '#/components/schemas/_links1' + measurementConfig: + type: array + items: + $ref: '#/components/schemas/MeasurementConfig' + required: + - _links + AssocStaSubscription: + x-etsi-ref: 6.3.2 + type: object + properties: + subscriptionType: + description: Shall be set to "AssocStaSubscription". + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + callbackReference: + description: URI exposed by the client on which to receive notifications via HTTP. See note 1. + x-etsi-mec-origin-type: Uri + x-etsi-mec-cardinality: 0..1 + type: string + format: uri + requestTestNotification: + description: Set to TRUE by the service consumer to request a test notification via HTTP on the callbackReference URI, as specified in ETSI GS MEC 009 [10], clause 6.12a. + x-etsi-mec-origin-type: Boolean + x-etsi-mec-cardinality: 0..1 + type: boolean + websockNotifConfig: + # description': Provides details to negotiate and signal the use of a Websocket connection between the WAIS and the service consumer for notifications. See note 1. + $ref: '#/components/schemas/WebsockNotifConfig' + # x-etsi-mec-origin-type': WebsockNotifConfig + # x-etsi-mec-cardinality': 0..1 + _links: + $ref: '#/components/schemas/_links2' + apId: + # description': Identifier(s) to uniquely specify the target Access Point for the subscription. + $ref: '#/components/schemas/ApIdentity' + # x-etsi-mec-origin-type': ApIdentity + # x-etsi-mec-cardinality': '1' + notificationPeriod: + description: 'Set for periodic notification reporting. + + Value indicates the notification period in seconds.' + x-etsi-mec-origin-type: Uint8 + x-etsi-mec-cardinality: 0..1 + type: integer + format: uint8 + notificationEvent: + $ref: '#/components/schemas/NotificationEvent' + expiryDeadline: + # description': The expiration time of the subscription determined by the WLAN Access Information Service. + $ref: '#/components/schemas/TimeStamp' + # x-etsi-mec-origin-type': TimeStamp + # x-etsi-mec-cardinality': 0..1 + required: + - subscriptionType + - apId + x-etsi-notes: "NOTE 1:\tAt least one of callbackReference and websockNotifConfig shall be provided by the service consumer. If both are provided, it is up to WAIS to select an alternative and return only that alternative in the response, as specified in ETSI GS MEC 009 [10], clause 6.12a.\nNOTE 2:\tAssocStaSubscription shall include either notificationPeriod or notificationEvent.\nNOTE 3:\tIf both notificationPeriod and notificationEvent attributes are set, notifications are issued periodically when the trigger threshold is satisfied." + StaDataRateSubscription: + x-etsi-ref: 6.3.3 + type: object + properties: + subscriptionType: + description: Shall be set to "StaDataRateSubscription". + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + callbackReference: + description: URI exposed by the client on which to receive notifications via HTTP. See note 1. + x-etsi-mec-origin-type: Uri + x-etsi-mec-cardinality: 0..1 + type: string + format: uri + requestTestNotification: + description: Set to TRUE by the service consumer to request a test notification via HTTP on the callbackReference URI, as specified in ETSI GS MEC 009 [10], clause 6.12a. + x-etsi-mec-origin-type: Boolean + x-etsi-mec-cardinality: 0..1 + type: boolean + websockNotifConfig: + # description': Provides details to negotiate and signal the use of a Websocket connection between the WAIS and the service consumer for notifications. See note 1. + $ref: '#/components/schemas/WebsockNotifConfig' + # x-etsi-mec-origin-type': WebsockNotifConfig + # x-etsi-mec-cardinality': 0..1 + _links: + $ref: '#/components/schemas/_links2' + staId: + description: Identifier(s) to uniquely specify the target client station(s) for the subscription. + x-etsi-mec-origin-type: StaIdentity + x-etsi-mec-cardinality: 1..N + type: array + minItems: 1 + items: + $ref: '#/components/schemas/StaIdentity' + notificationPeriod: + description: 'Set for periodic notification reporting. + + Value indicates the notification period in seconds.' + x-etsi-mec-origin-type: Uint8 + x-etsi-mec-cardinality: 0..1 + type: integer + format: uint8 + notificationEvent: + $ref: '#/components/schemas/NotificationEvent1' + expiryDeadline: + # description': The expiration time of the subscription determined by the WLAN Access Information Service. + $ref: '#/components/schemas/TimeStamp' + # x-etsi-mec-origin-type': TimeStamp + # x-etsi-mec-cardinality': 0..1 + required: + - subscriptionType + - staId + x-etsi-notes: "NOTE 1:\tAt least one of callbackReference and websockNotifConfig shall be provided by the service consumer. If both are provided, it is up to WAIS to select an alternative and return only that alternative in the response, as specified in ETSI GS MEC 009 [10], clause 6.12a.\nNOTE 2:\tStaDataRateSubscription shall include either notificationPeriod or notificationEvent.\nNOTE 3:\tIf both notificationPeriod and notificationEvent attributes are set, notifications are issued periodically when the trigger threshold is satisfied." + SubscriptionLinkList: + x-etsi-ref: 6.3.4 + type: object + properties: + _links: + $ref: '#/components/schemas/_links3' + subscription: + type: array + items: + $ref: '#/components/schemas/Subscription' + required: + - _links + MeasurementReportSubscription: + x-etsi-ref: 6.3.5 + type: object + properties: + subscriptionType: + description: Shall be set to "MeasurementReportSubscription". + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + callbackReference: + description: URI exposed by the client on which to receive notifications via HTTP. See note. + x-etsi-mec-origin-type: Uri + x-etsi-mec-cardinality: 0..1 + type: string + format: uri + requestTestNotification: + description: Set to TRUE by the service consumer to request a test notification via HTTP on the callbackReference URI, as specified in ETSI GS MEC 009 [10], clause 6.12a. + x-etsi-mec-origin-type: Boolean + x-etsi-mec-cardinality: 0..1 + type: boolean + websockNotifConfig: + # description': Provides details to negotiate and signal the use of a Websocket connection between the WAIS and the service consumer for notifications. See note. + $ref: '#/components/schemas/WebsockNotifConfig' + # x-etsi-mec-origin-type': WebsockNotifConfig + # x-etsi-mec-cardinality': 0..1 + _links: + $ref: '#/components/schemas/_links2' + staId: + description: Identifier(s) to uniquely specify the target client station(s) for the subscription. + x-etsi-mec-origin-type: StaIdentity + x-etsi-mec-cardinality: 1..N + type: array + minItems: 1 + items: + $ref: '#/components/schemas/StaIdentity' + measurementId: + description: Unique identifier allocated by the service consumer to identify measurement reports associated with this measurement subscription. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + measurementInfo: + # description': Information used to configure this measurement. + $ref: '#/components/schemas/MeasurementInfo' + # x-etsi-mec-origin-type': MeasurementInfo + # x-etsi-mec-cardinality': '1' + expiryDeadline: + # description': The expiration time of the subscription determined by the WLAN Access Information Service. + $ref: '#/components/schemas/TimeStamp' + # x-etsi-mec-origin-type': TimeStamp + # x-etsi-mec-cardinality': 0..1 + required: + - subscriptionType + - staId + - measurementId + - measurementInfo + x-etsi-notes: "NOTE:\tAt least one of callbackReference and websockNotifConfig shall be provided by the service consumer. If both are provided, it is up to WAIS to select an alternative and return only that alternative in the response, as specified in ETSI GS MEC 009 [10], clause 6.12a." + AssocStaNotification: + x-etsi-ref: 6.4.2 + type: object + properties: + notificationType: + description: Shall be set to "AssocStaNotification". + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + timeStamp: + # description': Time stamp. + $ref: '#/components/schemas/TimeStamp' + # x-etsi-mec-origin-type': TimeStamp + # x-etsi-mec-cardinality': 0..1 + apId: + # description': Identifier(s) to uniquely specify the Access Point to which the client stations are associated. + $ref: '#/components/schemas/ApIdentity' + # x-etsi-mec-origin-type': ApIdentity + # x-etsi-mec-cardinality': '1' + staId: + description: Identifier(s) to uniquely specify the client station(s) associated. + x-etsi-mec-origin-type: StaIdentity + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + $ref: '#/components/schemas/StaIdentity' + required: + - notificationType + - apId + StaDataRateNotification: + x-etsi-ref: 6.4.3 + type: object + properties: + notificationType: + description: Shall be set to "StaDataRateNotification". + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + timeStamp: + # description': Time stamp. + $ref: '#/components/schemas/TimeStamp' + # x-etsi-mec-origin-type': TimeStamp + # x-etsi-mec-cardinality': 0..1 + staDataRate: + description: Data rates of a client station. + x-etsi-mec-origin-type: StaDataRate + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + $ref: '#/components/schemas/StaDataRate' + required: + - notificationType + ExpiryNotification: + x-etsi-ref: 6.4.4 + type: object + properties: + notificationType: + description: Shall be set to "ExpiryNotification". + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + _links: + $ref: '#/components/schemas/_links4' + expiryDeadline: + # description': Time stamp. + $ref: '#/components/schemas/TimeStamp' + # x-etsi-mec-origin-type': TimeStamp + # x-etsi-mec-cardinality': '1' + required: + - notificationType + - _links + - expiryDeadline + MeasurementReportNotification: + x-etsi-ref: 6.4.5 + type: object + properties: + notificationType: + description: Shall be set to "MeasurementReportNotification". + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + timeStamp: + # description': Time stamp of the notification. + $ref: '#/components/schemas/TimeStamp' + # x-etsi-mec-origin-type': TimeStamp + # x-etsi-mec-cardinality': 0..1 + staStatistics: + description: STA Statistics Report as defined in IEEE 802.11-2016 [8]. + x-etsi-mec-origin-type: StaStatistics + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + $ref: '#/components/schemas/StaStatistics' + beaconReport: + description: Beacon Report as defined in IEEE 802.11-2016 [8]. + x-etsi-mec-origin-type: BeaconReport + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + $ref: '#/components/schemas/BeaconReport' + neighborReport: + description: "Neighbor Report providing information about neighbor Access Points seen by the station as defined in IEEE\_802.112016 [8]." + x-etsi-mec-origin-type: NeighborReport + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + $ref: '#/components/schemas/NeighborReport' + channelLoad: + description: Channel Load reports as seen by the station as defined in IEEE 802.11-2016 [8]. + x-etsi-mec-origin-type: ChannelLoad + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + $ref: '#/components/schemas/ChannelLoad' + required: + - notificationType + x-etsi-notes: "NOTE 1:\tEach MeasurementReportNotification shall include a single measurement report type (channelLoad, beaconRequest, etc.), based on the MeasurementReportSubscription.\nNOTE 2:\tA single MeasurementReportNotification may include multiple measurement reports (of the same type), if the MeasurementReportSubscription configured the measurement report for several client stations and multiple reports are available to WAIS." + TestNotification: + x-etsi-ref: 6.4.6 + type: object + properties: + notificationType: + description: Shall be set to "TestNotification". + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + _links: + $ref: '#/components/schemas/_links5' + required: + - notificationType + - _links + TimeStamp: + x-etsi-ref: 6.5.2 + type: object + properties: + seconds: + description: The seconds part of the time. Time is defined as Unixtime since January 1, 1970, 00:00:00 UTC. + x-etsi-mec-origin-type: Uint32 + x-etsi-mec-cardinality: '1' + type: integer + format: uint32 + nanoSeconds: + description: The nanoseconds part of the time. Time is defined as Unix-time since January 1, 1970, 00:00:00 UTC. + x-etsi-mec-origin-type: Uint32 + x-etsi-mec-cardinality: '1' + type: integer + format: uint32 + required: + - seconds + - nanoSeconds + ApIdentity: + x-etsi-ref: 6.5.3 + type: object + properties: + bssid: + description: Basic Service Set Identifier (BSSID) is a unique Identifier assigned to an Access Point (as network interface controller) for communications at the data link layer of a network segment. BSSID is typically set to an access point's MAC address. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + ssid: + description: Service Set Identifier (SSID) to identify logical WLAN networks available via the Access Point. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + type: string + ipAddress: + description: IPv4 or IPv6 address allocated for the Access Point. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + type: string + required: + - bssid + WlanCapabilities: + x-etsi-ref: 6.5.4 + type: object + properties: + ht: + # description': Information about Access Point HT capabilities as defined in IEEE 802.11-2016 [8]. + $ref: '#/components/schemas/HtCapabilities' + # x-etsi-mec-origin-type': HtCapabilities + # x-etsi-mec-cardinality': 0..1 + vht: + # description': Information about Access Point VHT capabilities as defined in IEEE 802.11-2016 [8]. + $ref: '#/components/schemas/VhtCapabilities' + # x-etsi-mec-origin-type': VhtCapabilities + # x-etsi-mec-cardinality': 0..1 + he: + # description': Information about Access Point HE capabilities as defined in IEEE P802.11ax [i.10], clause 9.2.2.248. + $ref: '#/components/schemas/HeCapabilities' + # x-etsi-mec-origin-type': HeCapabilities + # x-etsi-mec-cardinality': 0..1 + dmg: + # description': Information about Access Point DMG capabilities as defined in IEEE 802.11-2016 [8]. + $ref: '#/components/schemas/DmgCapabilities' + # x-etsi-mec-origin-type': DmgCapabilities + # x-etsi-mec-cardinality': 0..1 + edmg: + # description': Information about Access Point EDMG capabilities as defined in draft IEEE P802.11ay [i.11]. + $ref: '#/components/schemas/EdmgCapabilities' + # x-etsi-mec-origin-type': EdmgCapabilities + # x-etsi-mec-cardinality': 0..1 + WanMetrics: + x-etsi-ref: 6.5.6 + type: object + properties: + wanInfo: + description: Info about WAN link status, link symmetricity and capacity currently used. + x-etsi-mec-origin-type: Uint8 + x-etsi-mec-cardinality: '1' + type: integer + format: uint8 + downlinkSpeed: + description: 4-octet positive integer whose value is an estimate of the WAN Backhaul link current downlink speed in kilobits per second. + x-etsi-mec-origin-type: Uint32 + x-etsi-mec-cardinality: '1' + type: integer + format: uint32 + uplinkSpeed: + description: 4-octet positive integer whose value is an estimate of the WAN Backhaul link's current uplink speed in kilobits per second. + x-etsi-mec-origin-type: UInt32 + x-etsi-mec-cardinality: '1' + type: integer + format: uint32 + downlinkLoad: + description: "1-octet positive integer representing the current percentage loading of the downlink WAN connection, scaled linearly with 255 representing 100\_%, as measured over an interval the duration of which is reported in Load Measurement Duration. In cases where the downlink load is unknown to the AP, the value is set to zero." + x-etsi-mec-origin-type: UInt8 + x-etsi-mec-cardinality: '1' + type: integer + format: uint8 + uplinkLoad: + description: "1-octet positive integer representing the current percentage loading of the uplink WAN connection, scaled linearly with 255 representing 100\_%, as measured over an interval, the duration of which is reported in Load Measurement Duration. In cases where the uplink load is unknown to the AP, the value is set to zero." + x-etsi-mec-origin-type: Uint8 + x-etsi-mec-cardinality: '1' + type: integer + format: uint8 + lmd: + description: The LMD (Load Measurement Duration) field is a 2-octet positive integer representing the duration over which the Downlink Load and Uplink Load have been measured, in tenths of a second. When the actual load measurement duration is greater than the maximum value, the maximum value will be reported. The value of the LMD field is set to 0 when neither the uplink nor downlink load can be computed. When the uplink and downlink loads are computed over different intervals, the maximum interval is reported. + x-etsi-mec-origin-type: Uint16 + x-etsi-mec-cardinality: '1' + type: integer + format: uint16 + required: + - wanInfo + - downlinkSpeed + - uplinkSpeed + - downlinkLoad + - uplinkLoad + - lmd + BssLoad: + x-etsi-ref: 6.5.7 + type: object + properties: + staCount: + description: An unsigned integer that indicates the total number of STAs currently associated with this BSS. + x-etsi-mec-origin-type: UInt16 + x-etsi-mec-cardinality: '1' + type: integer + format: uint16 + channelUtilization: + description: "The percentage of time, linearly scaled with 255 representing 100\_%, that the AP sensed the medium was busy, as indicated by either the physical or virtual Carrier Sense (CS) mechanism." + x-etsi-mec-origin-type: UInt8 + x-etsi-mec-cardinality: '1' + type: integer + format: uint8 + availAdmCap: + description: Available Admission Capacity that specifies the remaining amount of medium time available via explicit admission control, in units of 32 s/s. + x-etsi-mec-origin-type: Uint16 + x-etsi-mec-cardinality: '1' + type: integer + format: uint16 + required: + - staCount + - channelUtilization + - availAdmCap + ExtBssLoad: + x-etsi-ref: 6.5.8 + type: object + properties: + muMimoStaCount: + description: Indicates the total number of STAs currently associated with this BSS that have a 1 in the MU Beamformee Capable field of their VHT Capabilities element. + x-etsi-mec-origin-type: UInt16 + x-etsi-mec-cardinality: '1' + type: integer + format: uint16 + spatStreamUnderUtil: + description: "The percentage of time, linearly scaled with 255 representing 100\_%, that the AP has underutilized spatial domain resources for given busy time of the medium." + x-etsi-mec-origin-type: UInt8 + x-etsi-mec-cardinality: '1' + type: integer + format: uint8 + obsSec20MhzUtil: + description: Observable loading on each of the secondary 20 MHz channel. + x-etsi-mec-origin-type: Uint8 + x-etsi-mec-cardinality: '1' + type: integer + format: uint8 + obsSec40MhzUtil: + description: Observable loading on each of the secondary 40 MHz channel. + x-etsi-mec-origin-type: Uint8 + x-etsi-mec-cardinality: '1' + type: integer + format: uint8 + obsSec80MhzUtil: + description: Observable loading on each of the secondary 80 MHz channel. + x-etsi-mec-origin-type: Uint8 + x-etsi-mec-cardinality: '1' + type: integer + format: uint8 + required: + - muMimoStaCount + - spatStreamUnderUtil + - obsSec20MhzUtil + - obsSec40MhzUtil + - obsSec80MhzUtil + ApLocation: + x-etsi-ref: 6.5.9 + type: object + properties: + geolocation: + # description': Geospatial Location of the AP as defined in IEEE 802.11-2016 [8]. + $ref: '#/components/schemas/GeoLocation' + # x-etsi-mec-origin-type': GeoLocation + # x-etsi-mec-cardinality': 0..1 + civicLocation: + # description': Civic Location of the AP as described in IETF RFC 4776 [7]. + $ref: '#/components/schemas/CivicLocation' + # x-etsi-mec-origin-type': CivicLocation + # x-etsi-mec-cardinality': 0..1 + NeighborReport: + x-etsi-ref: 6.5.10 + type: object + properties: + staId: + # description': Identifier to uniquely specify the station whose information is exposed within this Neighbor Report. If NeighborReport is contained within a data type that provides the station's identifier, this field may be omitted. + $ref: '#/components/schemas/StaIdentity' + # x-etsi-mec-origin-type': StaIdentity + # x-etsi-mec-cardinality': 0..1 + measurementId: + description: Measurement ID of the Measurement configuration applied to this Neighbor Report. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + bssid: + description: BSSID (MAC address) of the Access Point that is being reported. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + bssidInfo: + # description': Additional information related to Access Point that is being reported such as AP reachability, security, key scope, Mobility Domain, HT/VHT capability and Fine Time Measurements, as defined in Figure 9-296, BSSID information field, within IEEE 802.11-2016 [8]. + $ref: '#/components/schemas/BssidInfo' + # x-etsi-mec-origin-type': BssidInfo + # x-etsi-mec-cardinality': '1' + operatingClass: + description: Operating Class field indicates an operating class value as defined in Annex E within IEEE 802.11-2016 [8]. + x-etsi-mec-origin-type: Uint8 + x-etsi-mec-cardinality: '1' + type: integer + format: uint8 + channel: + description: Channel field indicates a channel number, which is interpreted in the context of the indicated operating class. Channel numbers are defined in Annex E within IEEE 802.11-2016 [8]. + x-etsi-mec-origin-type: Uint8 + x-etsi-mec-cardinality: '1' + type: integer + format: uint8 + phyType: + description: "PHY type of the AP indicated by this BSSID. It is an integer value coded according to the value of the dot11PHYType, Annex\_C within IEEE 802.11-2016 [8]:\n2 = dsss\n4 = ofdm\n5 = hrdsss\n6 = erp\n7 = ht\n8 = dmg\n9 = vht\n10 = tvht" + x-etsi-mec-origin-type: Uint8 + x-etsi-mec-cardinality: '1' + type: integer + format: uint8 + bssTransitionCandidatePreference: + description: "Relative value indicating the preferred ordering for this BSS as a transition candidate for roaming. 255 indicating the most preferred candidate and 1 indicating the least preferred candidate, as defined in Table 9-152 within IEEE\_802.112016\_[8]." + x-etsi-mec-origin-type: Uint8 + x-etsi-mec-cardinality: 0..1 + type: integer + format: uint8 + required: + - measurementId + - bssid + - bssidInfo + - operatingClass + - channel + - phyType + StaIdentity: + x-etsi-ref: 6.5.11 + type: object + properties: + macId: + description: Unique identifier assigned to station (as network interface controller) for communications at the data link layer of a network segment. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + ssid: + description: Service Set Identifier(s) to identify logical networks. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + type: string + aid: + description: Number which identifies a particular association between a station and an Access Point. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + ipAddress: + description: IPv4 or IPv6 address(es) allocated for the station. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + type: string + required: + - macId + ApAssociated: + x-etsi-ref: 6.5.12 + type: object + properties: + bssid: + description: Basic Service Set Identifier (BSSID) is a unique identifier assigned to the Access Point (as network interface controller) for communications at the data link layer of a network segment. BSSID is typically set to an access point's MAC address. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + ssid: + description: Service Set Identifier to identify logical networks. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + type: string + assocId: + description: Unique number which identifies a particular association between the station and Access Point. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + ipAddress: + description: IPv4 or IPv6 address allocated for the Access Point. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + type: string + required: + - bssid + StaStatistics: + x-etsi-ref: 6.5.13 + type: object + properties: + staId: + # description': Identifier to uniquely specify the station whose information is exposed within this STA Statistics Report. If StaStatistics is contained within a data type that provides the station's identifier, this field may be omitted. + $ref: '#/components/schemas/StaIdentity' + # x-etsi-mec-origin-type': StaIdentity + # x-etsi-mec-cardinality': 0..1 + measurementId: + description: Measurement ID of the Measurement configuration applied to this STA Statistics Report. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + measurementDuration: + description: "Duration over which the Statistics Group Data was measured in time units of 1 024 \xB5s. Duration equal to zero indicates a report of current values." + x-etsi-mec-origin-type: UInt16 + x-etsi-mec-cardinality: '1' + type: integer + format: uint16 + groupIdentity: + description: "Indicates the requested statistics group describing the Statistics Group Data according to Table 9-114 of IEEE\_802.11-2016 [8].\nDepending on group identity, one and only one of the STA Statistics Group Data will be present." + x-etsi-mec-origin-type: UInt8 + x-etsi-mec-cardinality: '1' + type: integer + format: uint8 + groupZeroData: + # description': STA Statistics Data for Group Identity = 0. + $ref: '#/components/schemas/StaStatisticsGroupZeroData' + # x-etsi-mec-origin-type': StaStatisticsGroupZeroData + # x-etsi-mec-cardinality': 0..1 + groupOneData: + # description': STA Statistics Data for Group Identity = 1. + $ref: '#/components/schemas/StaStatisticsGroupOneData' + # x-etsi-mec-origin-type': StaStatisticsGroupOneData + # x-etsi-mec-cardinality': 0..1 + group2to9Data: + # description': STA Statistics Data for Group Identity = 2 through 9. + $ref: '#/components/schemas/StaStatisticsGroup2to9Data' + # x-etsi-mec-origin-type': StaStatisticsGroup2to9Data + # x-etsi-mec-cardinality': 0..1 + required: + - measurementId + - measurementDuration + - groupIdentity + HtCapabilities: + x-etsi-ref: 6.5.14 + type: object + properties: + htCapabilityInfo: + description: HT Capability Information as defined in IEEE 802.11-2016 [8]. + x-etsi-mec-origin-type: UInt16 + x-etsi-mec-cardinality: '1' + type: integer + format: uint16 + ampduParameters: + description: A-MPDU parameters as defined in IEEE 802.11-2016 [8]. + x-etsi-mec-origin-type: UInt8 + x-etsi-mec-cardinality: '1' + type: integer + format: uint8 + supportedMcsSet: + description: Supported MCS set as defined in IEEE 802.11-2016 [8]. + x-etsi-mec-origin-type: Uint128 + x-etsi-mec-cardinality: '1' + type: integer + format: uint128 + htExtendedCap: + description: Extended HT Capabilities as defined in IEEE 802.11-2016 [8]. + x-etsi-mec-origin-type: UInt16 + x-etsi-mec-cardinality: '1' + type: integer + format: uint16 + txBeamFormCap: + description: Transmit Beamforming Capabilities as defined in IEEE 802.11-2016 [8]. + x-etsi-mec-origin-type: UInt32 + x-etsi-mec-cardinality: '1' + type: integer + format: uint32 + aselCap: + description: ASEL capabilities as defined in IEEE 802.11-2016 [8]. + x-etsi-mec-origin-type: UInt8 + x-etsi-mec-cardinality: '1' + type: integer + format: uint8 + required: + - htCapabilityInfo + - ampduParameters + - supportedMcsSet + - htExtendedCap + - txBeamFormCap + - aselCap + VhtCapabilities: + x-etsi-ref: 6.5.15 + type: object + properties: + vhtCapInfo: + description: VHT capabilities Info as defined in IEEE 802.11-2016 [8]. + x-etsi-mec-origin-type: UInt32 + x-etsi-mec-cardinality: '1' + type: integer + format: uint32 + vhtMcsNss: + description: "Supported VHT-MCS and NSS Set as defined in IEEE\_802.112016 [8]." + x-etsi-mec-origin-type: UInt64 + x-etsi-mec-cardinality: '1' + type: integer + format: uint64 + required: + - vhtCapInfo + - vhtMcsNss + HeCapabilities: + x-etsi-ref: 6.5.16 + type: object + properties: + heMacCapInfo: + description: MAC capabilities of an Access Point. + x-etsi-mec-origin-type: Uint8 + x-etsi-mec-cardinality: '1' + type: integer + format: uint8 + hePhyCapinfo: + description: PHY capabilities of an Access Point. + x-etsi-mec-origin-type: Uint8 + x-etsi-mec-cardinality: '1' + type: integer + format: uint8 + supportedHeMcsNssSet: + description: Supported MCS and NSS Set. + x-etsi-mec-origin-type: Uint8 + x-etsi-mec-cardinality: '1' + type: integer + format: uint8 + required: + - heMacCapInfo + - hePhyCapinfo + - supportedHeMcsNssSet + DmgCapabilities: + x-etsi-ref: 6.5.17 + type: object + properties: + dmgStaCapInfo: + description: "DMG station capabilities information as defined in IEEE\_802.11-2016 [8]. " + x-etsi-mec-origin-type: Uint64 + x-etsi-mec-cardinality: '1' + type: integer + format: uint64 + dmgApOrPcpCapInfo: + description: 'DMG AP or PCP capabilities information as defined in IEEE 802.11-2016 [8]. ' + x-etsi-mec-origin-type: Uint16 + x-etsi-mec-cardinality: '1' + type: integer + format: uint16 + dmgStaBeamTrackTimeLimit: + description: "DMG station beam tracking time limit as defined in IEEE\_802.11-2016 [8]. " + x-etsi-mec-origin-type: Uint16 + x-etsi-mec-cardinality: '1' + type: integer + format: uint16 + ExtScMcsCap: + description: "Extended SC MCS capabilities as defined in IEEE\_802.11-2016 [8]." + x-etsi-mec-origin-type: Uint8 + x-etsi-mec-cardinality: '1' + type: integer + format: uint8 + maxNrBasicAmsduSubframes: + description: Number of basic A-MSDU subframes in A-MSDU as defined in IEEE 802.11-2016 [8]. + x-etsi-mec-origin-type: Uint8 + x-etsi-mec-cardinality: '1' + type: integer + format: uint8 + maxNrShortAmsduSubframes: + description: Number of short A-MSDU subframes in A-MSDU as defined in IEEE 802.11-2016 [8]. + x-etsi-mec-origin-type: Uint8 + x-etsi-mec-cardinality: '1' + type: integer + format: uint8 + required: + - dmgStaCapInfo + - dmgApOrPcpCapInfo + - dmgStaBeamTrackTimeLimit + - ExtScMcsCap + - maxNrBasicAmsduSubframes + - maxNrShortAmsduSubframes + EdmgCapabilities: + x-etsi-ref: 6.5.18 + type: object + properties: + ampduParameters: + description: A-MPDU parameters as defined in draft IEEE P802.11ay [i.11] + x-etsi-mec-origin-type: Uint8 + x-etsi-mec-cardinality: '1' + type: integer + format: uint8 + trnParameters: + description: Training parameters as defined in draft IEEE P802.11ay [i.11] + x-etsi-mec-origin-type: Uint16 + x-etsi-mec-cardinality: '1' + type: integer + format: uint16 + supportedMcs: + description: Supported MCS as defined in draft IEEE P802.11ay [i.11] + x-etsi-mec-origin-type: Uint32 + x-etsi-mec-cardinality: '1' + type: integer + format: uint32 + required: + - ampduParameters + - trnParameters + - supportedMcs + GeoLocation: + x-etsi-ref: 6.5.19 + type: object + properties: + latUncertainty: + description: The uncertainty for Latitude information as defined in IETF RFC 6225 [6] + x-etsi-mec-origin-type: Uint8 + x-etsi-mec-cardinality: '1' + type: integer + format: uint8 + lat: + description: "The latitude value of location as defined in IETF RFC\_6225 [6]" + x-etsi-mec-origin-type: Uint64 + x-etsi-mec-cardinality: '1' + type: integer + format: uint64 + longUncertainty: + description: The uncertainty for Longitude information as defined in IETF RFC 6225 [6] + x-etsi-mec-origin-type: Uint8 + x-etsi-mec-cardinality: '1' + type: integer + format: uint8 + long: + description: "The longitude value of location as defined in IETF RFC\_6225 [6]" + x-etsi-mec-origin-type: Uint64 + x-etsi-mec-cardinality: '1' + type: integer + format: uint64 + altitudeType: + description: The type description for altitude information e.g. floors or meters as defined in IETF RFC 6225 [6] + x-etsi-mec-origin-type: Uint8 + x-etsi-mec-cardinality: 0..1 + type: integer + format: uint8 + altitudeUncertainty: + description: The uncertainty for altitude information as defined in IETF RFC 6225 [6] + x-etsi-mec-origin-type: Uint8 + x-etsi-mec-cardinality: 0..1 + type: integer + format: uint8 + altitude: + description: "The altitude value of location as defined in IETF RFC\_6225 [6]" + x-etsi-mec-origin-type: Uint32 + x-etsi-mec-cardinality: 0..1 + type: integer + format: uint32 + datum: + description: The datum value to express how coordinates are organized and related to real world as defined in IETF RFC 6225 [6] + x-etsi-mec-origin-type: Uint8 + x-etsi-mec-cardinality: '1' + type: integer + format: uint8 + required: + - latUncertainty + - lat + - longUncertainty + - long + - datum + CivicLocation: + x-etsi-ref: 6.5.20 + type: object + properties: + country: + description: The two-letter ISO 3166 [i.9] country code in capital ASCII letters, e.g. DE or US, as per ISO 3166 [i.9] + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + ca0: + description: Language + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + ca1: + description: 'National subdivisions (state, canton, region, province, prefecture) ' + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + ca2: + description: County, parish, gun (JP), district (IN) + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + ca3: + description: City, township, shi (JP) + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + ca4: + description: City division, borough, city district, ward, chou (JP) + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + ca5: + description: Neighborhood, block + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + ca6: + description: 'Group of streets below the neighborhood level ' + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + ca16: + description: Leading street direction + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + ca17: + description: Trailing street suffix + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + ca18: + description: Street suffix or type + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + ca19: + description: House number + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + ca20: + description: House number suffix + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + ca21: + description: Landmark of vanity address + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + ca22: + description: Additional location information + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + ca23: + description: Name (residence and office occupant) + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + ca24: + description: Postal/zip code + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + ca25: + description: Building (structure) + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + ca26: + description: Unit (apartment/suite) + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + ca27: + description: Floor + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + ca28: + description: Room + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + ca29: + description: Type of place + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + ca30: + description: Postal community name + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + ca31: + description: Post office box + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + ca32: + description: Additional code + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + ca33: + description: Seat (desk, cubicle, workstation, etc.) + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + ca34: + description: Primary road name + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + ca35: + description: Road section + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + ca36: + description: Branch road name + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + ca37: + description: Sub-branch road name + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + ca38: + description: Street name pre-modifier + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + ca39: + description: Street name post-modifier + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + ca128: + description: Script + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + required: + - country + Rssi: + x-etsi-ref: 6.5.21 + type: object + properties: + rssi: + description: The Received Signal Strength Indicator from a station + x-etsi-mec-origin-type: Uint8 + x-etsi-mec-cardinality: '1' + type: integer + format: uint8 + required: + - rssi + StaDataRate: + x-etsi-ref: 6.5.22 + type: object + properties: + staId: + # description': Identifier to uniquely specify the station whose information is exposed within StaDataRate. If StaDataRate is contained within a data type that provides the station's identifier, this field may be omitted. + $ref: '#/components/schemas/StaIdentity' + # x-etsi-mec-origin-type': StaIdentity + # x-etsi-mec-cardinality': 0..1 + staLastDataDownlinkRate: + description: The data transmit rate in kbps that was most recently used for transmission of data PPDUs from the access point to the station. + x-etsi-mec-origin-type: Uint32 + x-etsi-mec-cardinality: 0..1 + type: integer + format: uint32 + staLastDataUplinkRate: + description: The data transmit rate in Kbps that was most recently used for transmission of data PPDUs from the associated station to the access point. + x-etsi-mec-origin-type: Uint32 + x-etsi-mec-cardinality: 0..1 + type: integer + format: uint32 + x-etsi-notes: "NOTE:\tStaDataRate shall include at least one instance of either downlink rate or uplink rate and may include both." + LinkType: + x-etsi-ref: 6.5.23 + type: object + properties: + href: + description: URI referring to a resource + x-etsi-mec-origin-type: Uri + x-etsi-mec-cardinality: '1' + type: string + format: uri + required: + - href + ChannelLoadConfig: + x-etsi-ref: 6.5.24 + type: object + properties: + operatingClass: + description: Operating Class field indicates an operating class value as defined in Annex E within IEEE 802.11-2016 [8]. + x-etsi-mec-origin-type: Uint8 + x-etsi-mec-cardinality: '1' + type: integer + format: uint8 + channel: + description: Channel for which the channel load report is requested. + x-etsi-mec-origin-type: Integer + x-etsi-mec-cardinality: '1' + type: integer + reportingCondition: + description: 'Reporting condition for the Beacon Report as per Table 9-153 of IEEE 802.11-2016 [8]: + + 0 = Report to be issued after each measurement. + + 1 = Report to be issued when Channel Load is greater than or equal to the threshold. + + 2 = Report to be issued when Channel Load is less than or equal to the threshold. + + + If this optional field is not provided, channel load report should be issued after each measurement (reportingCondition = 0).' + x-etsi-mec-origin-type: Uint8 + x-etsi-mec-cardinality: 0..1 + type: integer + format: uint8 + threshold: + description: Channel Load reference value for threshold reporting. This field shall be provided for reportingCondition values 1 and 2. + x-etsi-mec-origin-type: Uint8 + x-etsi-mec-cardinality: 0..1 + type: integer + format: uint8 + required: + - operatingClass + - channel + BeaconRequestConfig: + x-etsi-ref: 6.5.25 + type: object + properties: + operatingClass: + description: "Operating Class field indicates an operating class value as defined in Annex E within IEEE\_802.112016\_[8]." + x-etsi-mec-origin-type: Uint8 + x-etsi-mec-cardinality: '1' + type: integer + format: uint8 + channelId: + description: "Channel number to scan. A Channel Number of 0 indicates a request to make iterative measurements for all supported channels in the Operating Class where the measurement is permitted on the channel and the channel is valid for the current regulatory domain. A\_Channel Number of 255 indicates a request to make iterative measurements for all supported channels in the current Operating Class listed in the latest AP Channel Report received from the serving AP." + x-etsi-mec-origin-type: Uint8 + x-etsi-mec-cardinality: '1' + type: integer + format: uint8 + measurementMode: + description: '0 for passive. + + 1 for active. + + 2 for beacon table.' + x-etsi-mec-origin-type: Uint8 + x-etsi-mec-cardinality: '1' + type: integer + format: uint8 + bssid: + description: The BSSID field indicates the BSS for which a beacon report is requested. If absent, the requested beacon reports should include all BSSs on the channel. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + ssid: + description: The SSID subelement indicates the ESS or IBSS for which a beacon report is requested. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + beaconReportingConf: + # description': Beacon reporting configuration data field format as in Figure 9-157 in IEEE 802.11-2016 [8]. + $ref: '#/components/schemas/BeaconReportingConfig' + # x-etsi-mec-origin-type': BeaconReportingConfig + # x-etsi-mec-cardinality': '1' + required: + - operatingClass + - channelId + - measurementMode + - beaconReportingConf + StaStatisticsConfig: + x-etsi-ref: 6.5.26 + type: object + properties: + groupIdentity: + description: As per Table 9-92 of IEEE 802.11-2016 [8]. + x-etsi-mec-origin-type: Uint8 + x-etsi-mec-cardinality: '1' + type: integer + format: uint8 + triggeredReport: + description: True = triggered reporting, otherwise duration. + x-etsi-mec-origin-type: Boolean + x-etsi-mec-cardinality: '1' + type: boolean + measurementCount: + description: 'Valid if triggeredReport = true. + + Specifies the number of MAC service data units or protocol data units to determine if the trigger conditions are met.' + x-etsi-mec-origin-type: Uint32 + x-etsi-mec-cardinality: 0..1 + type: integer + format: uint32 + triggerTimeout: + description: "Valid if triggeredReport = true.\nThe Trigger Timeout field contains a value in units of 100 time-units of 1 024 \xB5s during which a measuring STA does not generate further triggered STA Statistics Reports after a trigger condition has been met." + x-etsi-mec-origin-type: Uint16 + x-etsi-mec-cardinality: 0..1 + type: integer + format: uint16 + triggerCondition: + # description': Valid if triggeredReport = true. As per Figure 9-161 of IEEE 802.11-2016 [8]. Defines what are the metrics returned by the STA Statistics Report. + $ref: '#/components/schemas/STACounterTriggerCondition' + # x-etsi-mec-origin-type': STACounterTriggerCondition + # x-etsi-mec-cardinality': 0..1 + required: + - groupIdentity + - triggeredReport + BeaconReport: + x-etsi-ref: 6.5.27 + type: object + properties: + staId: + # description': Identifier to uniquely specify the station whose information is exposed within this Beacon Report. If BeaconReport is contained within a data type that provides the station's identifier, this field may be omitted. + $ref: '#/components/schemas/StaIdentity' + # x-etsi-mec-origin-type': StaIdentity + # x-etsi-mec-cardinality': 0..1 + measurementId: + description: Measurement ID of the Measurement configuration applied to this Beacon Report. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + operatingClass: + description: Operating Class field indicates an operating class value as defined in Annex E within IEEE 802.11-2016 [8]. + x-etsi-mec-origin-type: Uint8 + x-etsi-mec-cardinality: '1' + type: integer + format: uint8 + channel: + description: Channel number where the beacon was received. + x-etsi-mec-origin-type: Uint8 + x-etsi-mec-cardinality: '1' + type: integer + format: uint8 + reportedFrameInfo: + # description': Information about the reported beacon frame. + $ref: '#/components/schemas/ReportedBeaconFrameInfo' + # x-etsi-mec-origin-type': ReportedBeaconFrameInfo + # x-etsi-mec-cardinality': '1' + bssid: + description: Indicates the BSSID of the BSS for which a beacon report has been received. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + ssid: + description: The SSID subelement indicates the ESS or IBSS for which a beacon report is received. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + rcpi: + description: "RCPI indicates the received channel power of the Beacon, Measurement Pilot, or Probe Response frame, which is a logarithmic function of the received signal power, as defined in clause\_9.4.2.38 of IEEE 802.11-2016 [8]." + x-etsi-mec-origin-type: Uint8 + x-etsi-mec-cardinality: 0..1 + type: integer + format: uint8 + rsni: + description: "RSNI indicates the received signal-to-noise indication for the Beacon, Measurement Pilot, or Probe Response frame, as described in clause\_9.4.2.41 of IEEE 802.11-2016 [8]." + x-etsi-mec-origin-type: Uint8 + x-etsi-mec-cardinality: 0..1 + type: integer + format: uint8 + antennaId: + description: "The Antenna ID field contains the identifying number for the antenna(s) used for this measurement. Antenna ID is defined in clause\_9.4.2.40 of IEEE 802.11-2016 [8]." + x-etsi-mec-origin-type: Uint8 + x-etsi-mec-cardinality: 0..1 + type: integer + format: uint8 + parentTsf: + description: The Parent TSF field contains the lower 4 octets of the measuring STA's TSF timer value at the start of reception of the first octet of the timestamp field of the reported Beacon, Measurement Pilot, or Probe Response frame at the time the Beacon, Measurement Pilot, or Probe Response frame being reported was received. + x-etsi-mec-origin-type: Uint32 + x-etsi-mec-cardinality: 0..1 + type: integer + format: uint32 + required: + - measurementId + - operatingClass + - channel + - reportedFrameInfo + - bssid + BeaconReportingConfig: + x-etsi-ref: 6.5.28 + type: object + properties: + reportingCondition: + description: 'Reporting condition for the Beacon Report as per Table 9-89 of IEEE 802.11-2016 [8]: + + 0 = Report to be issued after each measurement. + + 1 = measured RCPI level is greater than the threshold. + + 2 = measured RCPI level is less than the threshold. + + 3 = measured RSNI level is greater than the threshold. + + 4 = measured RSNI level is less than the threshold. + + 5 = measured RCPI level is greater than a threshold defined by an offset from the serving AP''s reference RCPI. + + 6 = measured RCPI level is less than a threshold defined by an offset from the serving AP''s reference RCPI. + + 7 = measured RSNI level is greater than a threshold defined by an offset from the serving AP''s reference RSNI. + + 8 = measured RSNI level is less than a threshold defined by an offset from the serving AP''s reference RSNI. + + 9 = measured RCPI level is in a range bound by the serving AP''s reference RCPI and an offset from the serving AP''s reference RCPI. + + 10 = measured RSNI level is in a range bound by the serving AP''s reference RSNI and an offset from the serving AP''s reference RSNI.' + x-etsi-mec-origin-type: Uint8 + x-etsi-mec-cardinality: '1' + type: integer + format: uint8 + threshold: + description: "The threshold subfield contains either the threshold value or the offset value to be used for conditional reporting.\n\nFor reportingCondition subfield with values 1 and 2, the threshold value is a logarithmic function of the received signal power, as defined in clause\_9.4.2.38 of IEEE 802.11-2016 [8].\n\nFor reportingCondition subfield values 3 and 4, the threshold value is a logarithmic function of the signal-to-noise ratio, as described in clause\_9.4.2.41 of IEEE 802.11-2016 [8].\n\nFor reportingCondition subfield values 5 to 10, the offset value is an 8-bit 2s complement integer in units of 0,5 dBm. The indicated reporting condition applies individually to each measured Beacon, Measurement Pilot, or Probe Response frame." + x-etsi-mec-origin-type: Uint8 + x-etsi-mec-cardinality: '1' + type: integer + format: uint8 + required: + - reportingCondition + - threshold + ReportedBeaconFrameInfo: + x-etsi-ref: 6.5.29 + type: object + properties: + phyType: + description: Value between 0 and 127 coded according to dot11PHYType. + x-etsi-mec-origin-type: Uint8 + x-etsi-mec-cardinality: '1' + type: integer + format: uint8 + frameType: + description: 'A value of 0 indicates a Beacon or Probe Response. + + A value of 1 indicates a Measurement Pilot frame.' + x-etsi-mec-origin-type: Uint8 + x-etsi-mec-cardinality: '1' + type: integer + format: uint8 + required: + - phyType + - frameType + BssidInfo: + x-etsi-ref: 6.5.30 + type: object + properties: + apReachability: + description: 'The apReachability field indicates whether the AP identified by this BSSID is reachable by the STA that requested the neighbor report. Valid values: + + 0 = reserved + + 1 = not reachable + + 2 = unknown + + 3 = reachable.' + x-etsi-mec-origin-type: Uint8 + x-etsi-mec-cardinality: '1' + type: integer + format: uint8 + security: + description: 'True indicates the AP identified by this BSSID supports the same security provisioning as used by the STA in its current association. + + + False indicates either that the AP does not support the same security provisioning or that the security information is not available at this time.' + x-etsi-mec-origin-type: Boolean + x-etsi-mec-cardinality: '1' + type: boolean + capabilities: + # description': Capability information for the AP indicated by this BSSID. + $ref: '#/components/schemas/BssCapabilities' + # x-etsi-mec-origin-type': BssCapabilities + # x-etsi-mec-cardinality': '1' + mobilityDomain: + description: True indicates the AP represented by this BSSID is including an MDE in its Beacon frames and that the contents of that MDE are identical to the MDE advertised by the AP sending the report. + x-etsi-mec-origin-type: Boolean + x-etsi-mec-cardinality: '1' + type: boolean + highThroughput: + description: True indicates that the AP represented by this BSSID is an HT AP including the HT Capabilities element in its Beacons, and that the contents of that HT Capabilities element are identical to the HT Capabilities element advertised by the AP sending the report. + x-etsi-mec-origin-type: Boolean + x-etsi-mec-cardinality: '1' + type: boolean + veryHighThroughput: + description: True indicates that the AP represented by this BSSID is a VHT AP and that the VHT Capabilities element, if included as a subelement in the report, is identical in content to the VHT Capabilities element included in the AP's Beacon. + x-etsi-mec-origin-type: Boolean + x-etsi-mec-cardinality: '1' + type: boolean + ftm: + description: 'True indicates the AP represented by this BSSID is an AP that has set the Fine Timing Measurement Responder field of the Extended Capabilities element to 1. + + + False indicates either that the reporting AP has dot11FineTimingMsmtRespActivated equal to false, or the reported AP has not set the Fine Timing Measurement Responder field of the Extended Capabilities element to 1 or that the Fine Timing Measurement Responder field of the reported AP is not available to the reporting AP at this time.' + x-etsi-mec-origin-type: Boolean + x-etsi-mec-cardinality: '1' + type: boolean + required: + - apReachability + - security + - capabilities + - mobilityDomain + - highThroughput + - veryHighThroughput + - ftm + BssCapabilities: + x-etsi-ref: 6.5.31 + type: object + properties: + spectrumManagement: + description: Spectrum Management required + x-etsi-mec-origin-type: Boolean + x-etsi-mec-cardinality: '1' + type: boolean + qos: + description: QoS Option implemented + x-etsi-mec-origin-type: Boolean + x-etsi-mec-cardinality: '1' + type: boolean + apsd: + description: APSD Option implemented + x-etsi-mec-origin-type: Boolean + x-etsi-mec-cardinality: '1' + type: boolean + radioMeasurements: + description: Radio Measurement Activated + x-etsi-mec-origin-type: Boolean + x-etsi-mec-cardinality: '1' + type: boolean + delayedBACK: + description: Delayed Block Ack Option implemented + x-etsi-mec-origin-type: Boolean + x-etsi-mec-cardinality: '1' + type: boolean + immediateBACK: + description: Immediate Block Ack Option implemented + x-etsi-mec-origin-type: Boolean + x-etsi-mec-cardinality: '1' + type: boolean + required: + - spectrumManagement + - qos + - apsd + - radioMeasurements + - delayedBACK + - immediateBACK + NeighborReportConfig: + x-etsi-ref: 6.5.32 + type: object + properties: + ssid: + description: The SSID field is optionally present. If present, it contains an SSID element. The presence of an SSID element in a Neighbor Report indicates a request for a neighbor list for the specified SSID in the SSID Element. The absence of an SSID element indicates neighbor report for the current ESS. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + bssid: + description: BSSID of the neighbor AP which information is intended to obtain. If no specific BSSID is given, the information will be provided for all APs matching the ssid criteria. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + x-etsi-notes: "NOTE:\tBoth SSID and BSSID are optional configuration parameters. BSSID is valid when a SSID setting is provided, otherwise ignored. If SSID is not included, the neighbor report will be generated for the SSID (i.e.\_current ESS) that the station is associated." + STACounterTriggerCondition: + x-etsi-ref: 6.5.33 + type: object + properties: + failedCountThreshold: + description: Configure and set threshold for dot11FailedCount trigger + x-etsi-mec-origin-type: Uint32 + x-etsi-mec-cardinality: 0..1 + type: integer + format: uint32 + fcsErrorCountThreshold: + description: Configure and set threshold for dot11FCSErrorCount trigger + x-etsi-mec-origin-type: Uint32 + x-etsi-mec-cardinality: 0..1 + type: integer + format: uint32 + multipleRetryCountThreshold: + description: Configure and set threshold for dot11MultipleRetryCount trigger + x-etsi-mec-origin-type: Uint32 + x-etsi-mec-cardinality: 0..1 + type: integer + format: uint32 + frameDuplicateCountThreshold: + description: Configure and set threshold for dot11FrameDuplicateCount trigger + x-etsi-mec-origin-type: Uint32 + x-etsi-mec-cardinality: 0..1 + type: integer + format: uint32 + rtsFailureCountThreshold: + description: Configure and set threshold for dot11RTSFailureCount trigger + x-etsi-mec-origin-type: Uint32 + x-etsi-mec-cardinality: 0..1 + type: integer + format: uint32 + ackFailureCountThreshold: + description: Configure and set threshold for dot11AckFailureCount trigger + x-etsi-mec-origin-type: Uint32 + x-etsi-mec-cardinality: 0..1 + type: integer + format: uint32 + retryCountThreshold: + description: Configure and set threshold for dot11RetryCount trigger + x-etsi-mec-origin-type: Uint32 + x-etsi-mec-cardinality: 0..1 + type: integer + format: uint32 + StaStatisticsGroupZeroData: + x-etsi-ref: 6.5.34 + type: object + properties: + transmittedFragmentCount: + description: dot11TransmittedFragmentCount counter + x-etsi-mec-origin-type: Uint32 + x-etsi-mec-cardinality: '1' + type: integer + format: uint32 + groupTransmittedFrameCount: + description: dot11GroupTransmittedFrameCount counter + x-etsi-mec-origin-type: Uint32 + x-etsi-mec-cardinality: '1' + type: integer + format: uint32 + failedCount: + description: dot11FailedCount counter + x-etsi-mec-origin-type: Uint32 + x-etsi-mec-cardinality: '1' + type: integer + format: uint32 + receivedFragmentCount: + description: dot11ReceivedFragmentCount counter + x-etsi-mec-origin-type: Uint32 + x-etsi-mec-cardinality: '1' + type: integer + format: uint32 + groupReceivedFrameCount: + description: dot11GroupReceivedFrameCount counter + x-etsi-mec-origin-type: Uint32 + x-etsi-mec-cardinality: '1' + type: integer + format: uint32 + fcsErrorCount: + description: dot11FCSErrorCount counter + x-etsi-mec-origin-type: Uint32 + x-etsi-mec-cardinality: '1' + type: integer + format: uint32 + transmittedFrameCount: + description: dot11TransmittedFrameCount counter + x-etsi-mec-origin-type: Uint32 + x-etsi-mec-cardinality: '1' + type: integer + format: uint32 + reportingReasonStaCounters: + # description': Optionally reported reason for STA Statistics Group 0 + $ref: '#/components/schemas/ReportingReasonStaCounters' + # x-etsi-mec-origin-type': ReportingReasonStaCounters + # x-etsi-mec-cardinality': 0..1 + required: + - transmittedFragmentCount + - groupTransmittedFrameCount + - failedCount + - receivedFragmentCount + - groupReceivedFrameCount + - fcsErrorCount + - transmittedFrameCount + StaStatisticsGroupOneData: + x-etsi-ref: 6.5.35 + type: object + properties: + retryCount: + description: dot11RetryCount counter + x-etsi-mec-origin-type: Uint32 + x-etsi-mec-cardinality: '1' + type: integer + format: uint32 + multipleRetryCount: + description: dot11MultipleRetryCount counter + x-etsi-mec-origin-type: Uint32 + x-etsi-mec-cardinality: '1' + type: integer + format: uint32 + frameDuplicateCount: + description: dot11FrameDuplicateCount counter + x-etsi-mec-origin-type: Uint32 + x-etsi-mec-cardinality: '1' + type: integer + format: uint32 + rtsSuccessCount: + description: dot11RTSSuccessCount counter + x-etsi-mec-origin-type: Uint32 + x-etsi-mec-cardinality: '1' + type: integer + format: uint32 + rtsFailureCount: + description: dot11RTSFailureCount counter + x-etsi-mec-origin-type: Uint32 + x-etsi-mec-cardinality: '1' + type: integer + format: uint32 + ackFailureCount: + description: dot11AckFailureCount counter + x-etsi-mec-origin-type: Uint32 + x-etsi-mec-cardinality: '1' + type: integer + format: uint32 + reportingReasonStaCounters: + # description': Optionally reported reason for STA Statistics Group 1 + $ref: '#/components/schemas/ReportingReasonStaCounters' + # x-etsi-mec-origin-type': ReportingReasonStaCounters + # x-etsi-mec-cardinality': 0..1 + required: + - retryCount + - multipleRetryCount + - frameDuplicateCount + - rtsSuccessCount + - rtsFailureCount + - ackFailureCount + StaStatisticsGroup2to9Data: + x-etsi-ref: 6.5.36 + type: object + properties: + qosTransmittedFragmentCount: + description: dot11QosTransmittedFragmentCount counter + x-etsi-mec-origin-type: Uint32 + x-etsi-mec-cardinality: '1' + type: integer + format: uint32 + qosFailedCount: + description: dot11QosFailedCount counter + x-etsi-mec-origin-type: Uint32 + x-etsi-mec-cardinality: '1' + type: integer + format: uint32 + qosRetryCount: + description: dot11QosRetryCount counter + x-etsi-mec-origin-type: Uint32 + x-etsi-mec-cardinality: '1' + type: integer + format: uint32 + qosMultipleRetryCount: + description: dot11QosMultipleRetryCount counter + x-etsi-mec-origin-type: Uint32 + x-etsi-mec-cardinality: '1' + type: integer + format: uint32 + qosFrameDuplicateCount: + description: dot11QosFrameDuplicateCount counter + x-etsi-mec-origin-type: Uint32 + x-etsi-mec-cardinality: '1' + type: integer + format: uint32 + qosRTSSuccessCount: + description: dot11QosRTSSuccessCount counter + x-etsi-mec-origin-type: Uint32 + x-etsi-mec-cardinality: '1' + type: integer + format: uint32 + qosRTSFailureCount: + description: dot11QosRTSFailureCount counter + x-etsi-mec-origin-type: Uint32 + x-etsi-mec-cardinality: '1' + type: integer + format: uint32 + qosAckFailureCount: + description: dot11QosAckFailureCount counter + x-etsi-mec-origin-type: Uint32 + x-etsi-mec-cardinality: '1' + type: integer + format: uint32 + qosReceivedFragmentCount: + description: dot11QosReceivedFragmentCount counter + x-etsi-mec-origin-type: Uint32 + x-etsi-mec-cardinality: '1' + type: integer + format: uint32 + qosTransmittedFrameCount: + description: dot11QosTransmittedFrameCount counter + x-etsi-mec-origin-type: Uint32 + x-etsi-mec-cardinality: '1' + type: integer + format: uint32 + qosDiscardedFrameCount: + description: dot11QosDiscardedFrameCount counter + x-etsi-mec-origin-type: Uint32 + x-etsi-mec-cardinality: '1' + type: integer + format: uint32 + qosMPDUsReceivedCount: + description: dot11QosMPDUsReceivedCount counter + x-etsi-mec-origin-type: Uint32 + x-etsi-mec-cardinality: '1' + type: integer + format: uint32 + qosRetriesReceivedCount: + description: dot11QosRetriesReceivedCount counter + x-etsi-mec-origin-type: Uint32 + x-etsi-mec-cardinality: '1' + type: integer + format: uint32 + reportingReasonQoSCounters: + # description': Optionally reported reason for STA Statistics Groups 2 to 9 + $ref: '#/components/schemas/ReportingReasonQoSCounters' + # x-etsi-mec-origin-type': ReportingReasonQoSCounters + # x-etsi-mec-cardinality': 0..1 + required: + - qosTransmittedFragmentCount + - qosFailedCount + - qosRetryCount + - qosMultipleRetryCount + - qosFrameDuplicateCount + - qosRTSSuccessCount + - qosRTSFailureCount + - qosAckFailureCount + - qosReceivedFragmentCount + - qosTransmittedFrameCount + - qosDiscardedFrameCount + - qosMPDUsReceivedCount + - qosRetriesReceivedCount + ReportingReasonStaCounters: + x-etsi-ref: 6.5.37 + type: object + properties: + failed: + description: dot11Failed + x-etsi-mec-origin-type: Boolean + x-etsi-mec-cardinality: '1' + type: boolean + fcsError: + description: 'dot11FCSError ' + x-etsi-mec-origin-type: Boolean + x-etsi-mec-cardinality: '1' + type: boolean + multipleRetry: + description: dot11MultipleRetry + x-etsi-mec-origin-type: Boolean + x-etsi-mec-cardinality: '1' + type: boolean + frameDuplicate: + description: 'dot11FrameDuplicate ' + x-etsi-mec-origin-type: Boolean + x-etsi-mec-cardinality: '1' + type: boolean + rtsFailure: + description: dot11RTSFailure + x-etsi-mec-origin-type: Boolean + x-etsi-mec-cardinality: '1' + type: boolean + ackFailure: + description: dot11AckFailure + x-etsi-mec-origin-type: Boolean + x-etsi-mec-cardinality: '1' + type: boolean + retry: + description: dot11Retry + x-etsi-mec-origin-type: Boolean + x-etsi-mec-cardinality: '1' + type: boolean + required: + - failed + - fcsError + - multipleRetry + - frameDuplicate + - rtsFailure + - ackFailure + - retry + ReportingReasonQoSCounters: + x-etsi-ref: 6.5.38 + type: object + properties: + qosFailed: + description: 'dot11QoSFailed ' + x-etsi-mec-origin-type: Boolean + x-etsi-mec-cardinality: '1' + type: boolean + qosRetry: + description: dot11QoSRetry + x-etsi-mec-origin-type: Boolean + x-etsi-mec-cardinality: '1' + type: boolean + qosMultipleRetry: + description: dot11QoSMultipleRetry + x-etsi-mec-origin-type: Boolean + x-etsi-mec-cardinality: '1' + type: boolean + qosFrameDuplicate: + description: dot11QoSFrameDuplicate + x-etsi-mec-origin-type: Boolean + x-etsi-mec-cardinality: '1' + type: boolean + qosRtsFailure: + description: dot11QoSRTSFailure + x-etsi-mec-origin-type: Boolean + x-etsi-mec-cardinality: '1' + type: boolean + qosAckFailure: + description: dot11QoSAckFailure + x-etsi-mec-origin-type: Boolean + x-etsi-mec-cardinality: '1' + type: boolean + qosDiscarded: + description: dot11QoSDiscarded + x-etsi-mec-origin-type: Boolean + x-etsi-mec-cardinality: '1' + type: boolean + required: + - qosFailed + - qosRetry + - qosMultipleRetry + - qosFrameDuplicate + - qosRtsFailure + - qosAckFailure + - qosDiscarded + ChannelLoad: + x-etsi-ref: 6.5.39 + type: object + properties: + staId: + # description': Identifier to uniquely specify the station whose information is exposed within Channel Load. If ChannelLoad is contained within a data type that provides the station's identifier, this field may be omitted. + $ref: '#/components/schemas/StaIdentity' + # x-etsi-mec-origin-type': StaIdentity + # x-etsi-mec-cardinality': 0..1 + measurementId: + description: Measurement ID of the Measurement configuration applied to this Channel Load Report. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + operatingClass: + description: Operating Class field indicates an operating class value as defined in Annex E within IEEE 802.11-2016 [8]. + x-etsi-mec-origin-type: Uint8 + x-etsi-mec-cardinality: '1' + type: integer + format: uint8 + channel: + description: Channel number indicates the channel number for which the measurement report applies. + x-etsi-mec-origin-type: Uint8 + x-etsi-mec-cardinality: '1' + type: integer + format: uint8 + measurementDuration: + description: "Duration over which the Channel Load report was measured, in units of TUs of 1 024 \xB5s." + x-etsi-mec-origin-type: Uint8 + x-etsi-mec-cardinality: '1' + type: integer + format: uint8 + channelLoad: + description: "Proportion of measurement duration for which the measuring STA determined the channel to be busy, as a percentage of time, linearly scaled with 255 representing 100\_%." + x-etsi-mec-origin-type: Uint8 + x-etsi-mec-cardinality: '1' + type: integer + format: uint8 + required: + - measurementId + - operatingClass + - channel + - measurementDuration + - channelLoad + OBssLoad: + x-etsi-ref: 6.5.40 + type: object + properties: + allocatedTrafficSelfMean: + description: "Mean of allocated traffic from this AP (BSS) in units of 32\_\xB5s per second." + x-etsi-mec-origin-type: Uint16 + x-etsi-mec-cardinality: '1' + type: integer + format: uint16 + allocatedTrafficSelfStdDev: + description: "Standard deviation from the mean of allocation traffic from this BSS in units of 32 \xB5s per second." + x-etsi-mec-origin-type: Uint16 + x-etsi-mec-cardinality: 0..1 + type: integer + format: uint16 + allocatedTrafficShareMean: + description: "Mean of the sum of allocated traffic from other APs on the overlapping channel in unit of 32 \xB5s per second." + x-etsi-mec-origin-type: Uint16 + x-etsi-mec-cardinality: '1' + type: integer + format: uint16 + allocatedTrafficShareStdDev: + description: "Standard deviation from the mean of the sum of allocated traffic from other APs on the overlapping channel in unit of 32 \xB5s per second." + x-etsi-mec-origin-type: Uint16 + x-etsi-mec-cardinality: 0..1 + type: integer + format: uint16 + overlap: + description: Indicates the number of other APs that are sharing the same channel as the reporting AP. + x-etsi-mec-origin-type: Uint8 + x-etsi-mec-cardinality: 0..1 + type: integer + format: uint8 + required: + - allocatedTrafficSelfMean + - allocatedTrafficShareMean + MeasurementInfo: + x-etsi-ref: 6.5.41 + type: object + properties: + measurementDuration: + description: "Duration of the measurement in Time Units (TUs) of 1\_024 \xB5s, as defined in clause 11.11.4 of IEEE\_802.11-2016 [8]. If not provided, the underlying system may utilize a default configuration that will be indicated in resulting measurement reports." + x-etsi-mec-origin-type: Uint16 + x-etsi-mec-cardinality: 0..1 + type: integer + format: uint16 + randomInterval: + description: "Random interval to be used for starting the measurement in TUs of 1\_024 \xB5s, as specified in clause\_11.11.3 of IEEE 802.11-2016 [8]. If not provided, the underlying system may utilize a default configuration that will be indicated in resulting measurement reports." + x-etsi-mec-origin-type: Uint16 + x-etsi-mec-cardinality: 0..1 + type: integer + format: uint16 + channelLoadConf: + # description': Configuration related to the Channel Load. + $ref: '#/components/schemas/ChannelLoadConfig' + # x-etsi-mec-origin-type': ChannelLoadConfig + # x-etsi-mec-cardinality': 0..1 + beaconRequestConf: + # description': Configuration related to Beacon Request. + $ref: '#/components/schemas/BeaconRequestConfig' + # x-etsi-mec-origin-type': BeaconRequestConfig + # x-etsi-mec-cardinality': 0..1 + staStatisticsConf: + # description': Configuration related to the statistics provided by STAs. + $ref: '#/components/schemas/StaStatisticsConfig' + # x-etsi-mec-origin-type': StaStatisticsConfig + # x-etsi-mec-cardinality': 0..1 + neighborReportConf: + # description': Configuration related to Neighbor Reports. + $ref: '#/components/schemas/NeighborReportConfig' + # x-etsi-mec-origin-type': NeighborReportConfig + # x-etsi-mec-cardinality': 0..1 + x-etsi-notes: "NOTE 1:\tOnly one of channelLoadConf, beaconRequestConf, staStatisticsConf or neighborReportConf is allowed in a MeasurementInfo instance.\nNOTE 2:\tAs per IEEE 802.11-2016 [8], measurementDuration and randomInterval apply to channelLoad, beaconRequest, staStatistics, and neighborReport configurations." + WebsockNotifConfig: + x-etsi-ref: 6.5.42 + type: object + properties: + websocketUri: + description: Set by WAIS to indicate to the service consumer the Websocket URI to be used for delivering notifications. + x-etsi-mec-origin-type: Uri + x-etsi-mec-cardinality: 0..1 + type: string + format: uri + requestWebsocketUri: + description: Set to true by the service consumer to indicate that Websocket delivery is requested. + x-etsi-mec-origin-type: Boolean + x-etsi-mec-cardinality: 0..1 + type: boolean + _links: + description: Hyperlink related to the resource. + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: 0..1 + type: object + properties: + self: + # description': Self-referring URI. The URI shall be unique within the WLAN Access Information API as it acts as an Id for the measurement configuration (MeasurementConfigId). + $ref: '#/components/schemas/LinkType' + # x-etsi-mec-origin-type': LinkType + # x-etsi-mec-cardinality': '1' + required: + - self + _links1: + description: Hyperlink related to the resource. + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: '1' + type: object + properties: + self: + # description': Self-referring URI. + $ref: '#/components/schemas/LinkType' + # x-etsi-mec-origin-type': LinkType + # x-etsi-mec-cardinality': '1' + required: + - self + _links2: + description: Hyperlink related to the resource. This shall be only included in the HTTP responses and in HTTP PUT requests. + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: 0..1 + type: object + properties: + self: + # description': Self-referring URI. The URI shall be unique within the WLAN Access Information API as it acts as an ID for the subscription (SubscriptionId). + $ref: '#/components/schemas/LinkType' + # x-etsi-mec-origin-type': LinkType + # x-etsi-mec-cardinality': '1' + required: + - self + NotificationEvent: + description: 'Set for trigger-based event notification reporting. ' + x-etsi-mec-origin-type: Structure (inline) + x-etsi-mec-cardinality: 0..1 + type: object + properties: + trigger: + type: integer + description: 'Trigger for the notification: + + 1 = Notification issued when the number of connected stations is greater than or equal to the threshold. + + 2 = Notification issued when the number of connected stations is less than or equal to the threshold.' + enum: + - SEE_DESCRIPTION + x-etsi-mec-origin-type: Enum_inline + x-etsi-mec-cardinality: '1' + threshold: + description: Number of connected stations threshold for trigger-based event reporting. + x-etsi-mec-origin-type: Uint8 + x-etsi-mec-cardinality: '1' + type: integer + format: uint8 + required: + - trigger + - threshold + NotificationEvent1: + description: Set for trigger-based event notification reporting. + x-etsi-mec-origin-type: Structure (inline) + x-etsi-mec-cardinality: 0..1 + type: object + properties: + trigger: + type: integer + description: 'Trigger event for the notification: + + 1 = Notification issued when the STA''s downlink data rate is greater than or equal to the downlink threshold. + + 2 = Notification issued when the STA''s downlink data rate is less than or equal to the downlink threshold. + + 3 = Notification issued when the STA''s uplink data rate is greater than or equal to the uplink threshold. + + 4 = Notification issued when the STA''s uplink data rate is less than or equal to the uplink threshold. + + 5 = Notification issued when the STA''s downlink and uplink data rate is greater than or equal to their thresholds. + + 6 = Notification issued when the STA''s downlink and uplink data rate is less than or equal to their thresholds. + + 7 = Notification issued when the STA''s downlink or uplink data rate is greater than or equal to their thresholds. + + 8 = Notification issued when the STA''s downlink or uplink data rate is less than or equal to their thresholds.' + enum: + - SEE_DESCRIPTION + x-etsi-mec-origin-type: Enum_inline + x-etsi-mec-cardinality: '1' + downlinkRateThreshold: + description: Downlink data rate threshold for StaDataRate reporting. + x-etsi-mec-origin-type: Uint32 + x-etsi-mec-cardinality: 0..1 + type: integer + format: uint32 + uplinkRateThreshold: + description: Uplink data rate threshold for StaDataRate reporting. + x-etsi-mec-origin-type: Uint32 + x-etsi-mec-cardinality: 0..1 + type: integer + format: uint32 + required: + - trigger + _links3: + description: List of hyperlinks related to the resource. + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: '1' + type: object + properties: + self: + # description': Self-referring URI. + $ref: '#/components/schemas/LinkType' + # x-etsi-mec-origin-type': LinkType + # x-etsi-mec-cardinality': '1' + required: + - self + Subscription: + description: '' + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: 0..N + type: object + minItems: 0 + properties: + href: + description: The URI referring to the subscription. + x-etsi-mec-origin-type: Uri + x-etsi-mec-cardinality: '1' + type: string + format: uri + subscriptionType: + description: "Type of the subscription. The string shall be set according to the \"subscriptionType\" attribute of the associated subscription data type defined in clauses\_6.3.2, 6.3.3 and 6.3.5:\n\"AssocStaSubscription\"\n\"StaDataRateSubscription\"\n\"MeasurementReportSubscription\"." + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + required: + - href + - subscriptionType + _links4: + description: Hyperlink related to the resource. + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: '1' + type: object + properties: + subscription: + # description': URI identifying the subscription which has expired. + $ref: '#/components/schemas/LinkType' + # x-etsi-mec-origin-type': LinkType + # x-etsi-mec-cardinality': '1' + required: + - subscription + _links5: + description: 'Hyperlink related to the resource. ' + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: '1' + type: object + properties: + subscription: + # description': URI identifying the subscription for the test notification. + $ref: '#/components/schemas/LinkType' + # x-etsi-mec-origin-type': LinkType + # x-etsi-mec-cardinality': '1' + required: + - subscription + responses: + '200': + description: OK + '204': + description: No Content + '400': + description: 'Bad Request: used to indicate that incorrect parameters were passed to the request.' + content: + application/problem+json: + schema: + $ref: '#/components/schemas/ProblemDetails' + '401': + description: 'Unauthorized: used when the client did not submit credentials.' + content: + application/problem+json: + schema: + $ref: '#/components/schemas/ProblemDetails' + '403': + description: 'Forbidden: operation is not allowed given the current status of the resource.' + content: + application/problem+json: + schema: + $ref: '#/components/schemas/ProblemDetails' + '404': + description: 'Not Found: used when a client provided a URI that cannot be mapped to a valid resource URI.' + content: + application/problem+json: + schema: + $ref: '#/components/schemas/ProblemDetails' + '406': + description: 'Not Acceptable: used to indicate that the server cannot provide the any of the content formats supported by the client.' + content: + application/problem+json: + schema: + $ref: '#/components/schemas/ProblemDetails' + '412': + description: 'Precondition failed: used when a condition has failed during conditional requests, e.g. when using ETags to avoid write conflicts when using PUT' + content: + application/problem+json: + schema: + $ref: '#/components/schemas/ProblemDetails' + '415': + description: 'Unsupported Media Type: used to indicate that the server or the client does not support the content type of the entity body.' + content: + application/problem+json: + schema: + $ref: '#/components/schemas/ProblemDetails' + '422': + description: 'Unprocessable Entity: used to indicate that the server understands the content type of the request entity and that the syntax of the request entity is correct but that the server is unable to process the contained instructions. This error condition can occur if an JSON request body is syntactically correct but semantically incorrect, for example if the target area for the request is considered too large. This error condition can also occur if the capabilities required by the request are not supported.' + content: + application/problem+json: + schema: + $ref: '#/components/schemas/ProblemDetails' + '429': + description: 'Too Many Requests: used when a rate limiter has triggered.' + content: + application/problem+json: + schema: + $ref: '#/components/schemas/ProblemDetails' + parameters: + Query.Filter: + description: "Attribute-based filtering expression according to clause 6.19 of ETSI GS\_MEC 009 [10].\nThe WLAN Access Information API shall support receiving this parameter as part of the URI query string.\nAll attribute names that appear in the ap_information and in data types referenced from it shall be supported by the WLAN Access Information API in the filter expression." + name: filter + cardinality: 0..1 + in: query + required: false + x-exportParamName: Query.Filter + Query.All_fields: + description: Include all complex attributes in the response. See clause 6.18 of ETSI GS MEC 009 [10] for details. The WLAN Access Information API shall support this parameter. + name: all_fields + cardinality: 0..1 + in: query + required: false + x-exportParamName: Query.All_fields + Query.Fields: + description: Complex attributes to be included into the response. See clause 6.18 of ETSI GS MEC 009 [10] for details. The WLAN Access Information API shall support this parameter. + name: fields + cardinality: 0..1 + in: query + required: false + x-exportParamName: Query.Fields + Query.Exclude_fields: + description: Complex attributes to be excluded from the response. See clause 6.18 of ETSI GS MEC 009 [10] for details. The WLAN Access Information API shall support this parameter. + name: exclude_fields + cardinality: 0..1 + in: query + required: false + x-exportParamName: Query.Exclude_fields + Query.Exclude_default: + description: 'Indicates to exclude the following complex attributes from the response. See clause 6.18 of ETSI GS MEC 009 [10] for details. The WLAN Access Information API shall support this parameter. + + The following attributes shall be excluded from the ap_information structure in the response body if this parameter is provided, or none of the parameters "all_fields", "fields", "exclude_fields", "exclude_default" are provided: + + Not applicable.' + name: exclude_default + cardinality: 0..1 + in: query + required: false + x-exportParamName: Query.Exclude_default + Query.Filter1: + description: "Attribute-based filtering expression according to clause 6.19 of ETSI GS\_MEC 009 [10].\nThe WLAN Access Information API shall support receiving this parameter as part of the URI query string.\n\nAll attribute names that appear in the ap_information and in data types referenced from it shall be supported by the WLAN Access Information API in the filter expression." + name: filter + cardinality: 0..1 + in: query + required: false + x-exportParamName: Query.Filter1 + Query.Subscription_type: + description: "Query parameter to filter on a specific subscription type. Permitted values:\nassoc_sta\tAssociated Stations\nsta_data_rate\tStation Data Rate\nmeasure_report \tMeasurement Report." + name: subscription_type + cardinality: 0..1 + in: query + required: false + x-exportParamName: Query.Subscription_type + schema: + type: string + diff --git a/Auto_Generated_OAS_Output_Files/Auto_Generated_OAS_Output_Files/gs_mec029v020201p.yaml b/Auto_Generated_OAS_Output_Files/Auto_Generated_OAS_Output_Files/gs_mec029v020201p.yaml new file mode 100644 index 0000000..db91007 --- /dev/null +++ b/Auto_Generated_OAS_Output_Files/Auto_Generated_OAS_Output_Files/gs_mec029v020201p.yaml @@ -0,0 +1,2004 @@ +openapi: 3.1.0 +jsonSchemaDialect: https://json-schema.org/draft/2020-12/schema +info: + contact: + url: https://forge.etsi.org/rep/mec/gs029-fai-api + title: ETSI GS MEC 029 Fixed Access Information API + description: The ETSI MEC ISG Fixed Access Information API described using OpenAPI. + license: + name: BSD-3-Clause + url: https://forge.etsi.org/legal-matters + version: 2.2.1 +paths: + /queries/fa_info: + get: + summary: Retrieve current status of the FAI. + description: The GET method is used to query information about the available fixed access networks. + operationId: fainfoGET + tags: + - queries + parameters: + - $ref: '#/components/parameters/Query.Customerpremisesinfo' + - $ref: '#/components/parameters/Query.Lastmiletech' + - $ref: '#/components/parameters/Query.Interfacetype' + - $ref: '#/components/parameters/Query.Dsbw' + - $ref: '#/components/parameters/Query.Usbw' + - $ref: '#/components/parameters/Query.Latency' + responses: + '200': + description: Upon success, a response body containing the information of zero or more fix access networks is returned. + content: + application/json: + schema: + type: object + properties: + FaInfo: + type: array + items: + $ref: '#/components/schemas/FaInfo' + '400': + $ref: '#/components/responses/400' + '401': + $ref: '#/components/responses/401' + '403': + $ref: '#/components/responses/403' + '404': + $ref: '#/components/responses/404' + '406': + $ref: '#/components/responses/406' + '429': + $ref: '#/components/responses/429' + /queries/device_info: + get: + summary: Retrieve current status of the device information. + description: The GET method is used to query information about the devices that are connected to a fixed access network. + operationId: deviceinfoGET + tags: + - queries + parameters: + - $ref: '#/components/parameters/Query.Gwid' + - $ref: '#/components/parameters/Query.Deviceid' + - $ref: '#/components/parameters/Query.Devicestatus' + responses: + '200': + description: Upon success, a response body containing the information of zero or more devices is returned. + content: + application/json: + schema: + type: object + properties: + DeviceInfo: + type: array + items: + $ref: '#/components/schemas/DeviceInfo' + '400': + $ref: '#/components/responses/400' + '401': + $ref: '#/components/responses/401' + '403': + $ref: '#/components/responses/403' + '404': + $ref: '#/components/responses/404' + '406': + $ref: '#/components/responses/406' + '429': + $ref: '#/components/responses/429' + /queries/cable_line_info: + get: + summary: Retrieve current status of the cable line information. + description: The GET method is used to query information about the cable line of a fixed access network. + operationId: cablelineinfoGET + tags: + - queries + - cable_line_info + parameters: + - $ref: '#/components/parameters/Query.Customerpremisesinfo1' + - $ref: '#/components/parameters/Query.Cmid' + responses: + '200': + description: Upon success, a response body containing the information of zero or more cable lines is returned. + content: + application/json: + schema: + type: object + properties: + CableLineInfo: + type: array + items: + $ref: '#/components/schemas/CableLineInfo' + '400': + $ref: '#/components/responses/400' + '401': + $ref: '#/components/responses/401' + '403': + $ref: '#/components/responses/403' + '404': + $ref: '#/components/responses/404' + '406': + $ref: '#/components/responses/406' + '429': + $ref: '#/components/responses/429' + /queries/optical_network_info: + get: + summary: Retrieve current status of the optical network information. + description: The GET method is used to query information about the optical network. + operationId: opticalnetworkinfoGET + tags: + - queries + - optical_network_info + parameters: + - $ref: '#/components/parameters/Query.Customerpremisesinfo2' + - $ref: '#/components/parameters/Query.Ponys_id' + - $ref: '#/components/parameters/Query.Onuid' + responses: + '200': + description: Upon success, a response body containing the information of zero or more optical networks is returned. + content: + application/json: + schema: + type: object + properties: + PonInfo: + type: array + items: + $ref: '#/components/schemas/PonInfo' + '400': + $ref: '#/components/responses/400' + '401': + $ref: '#/components/responses/401' + '403': + $ref: '#/components/responses/403' + '404': + $ref: '#/components/responses/404' + '406': + $ref: '#/components/responses/406' + '429': + $ref: '#/components/responses/429' + /subscriptions: + get: + summary: Retrieve a list of active subscriptions for this subscriber. + description: The GET method is used to request information about the subscriptions for this requestor. Upon success, the response contains entity body with the list of links to the subscriptions that are present for the requestor. + operationId: subscriptionsGET + tags: + - subscriptions + parameters: + - $ref: '#/components/parameters/Query.Subscription_type' + responses: + '200': + description: Upon success, a response body containing the list of links to requestor's subscriptions is returned. The list shall only contain subscriptions of the subscription type specified by the URI query parameters. + content: + application/json: + schema: + type: object + properties: + SubscriptionLinkList: + $ref: '#/components/schemas/SubscriptionLinkList' + '400': + $ref: '#/components/responses/400' + '401': + $ref: '#/components/responses/401' + '403': + $ref: '#/components/responses/403' + '404': + $ref: '#/components/responses/404' + '406': + $ref: '#/components/responses/406' + '429': + $ref: '#/components/responses/429' + post: + summary: Create a new subscription. + description: The POST method is used to create a new subscription to FAI notifications. Upon success, the response contains entity body describing the created subscription. + operationId: subscriptionsPOST + tags: + - subscriptions + requestBody: + description: 'The entity body in the request contains data type of the specific FAI event subscription that is to be created, where the data type options are listed below: + + OnuAlarmSubscription. + + DevInfoSubscription. + + CmConnSubscription. + + AniAlarmSubscription.' + content: + application/json: + schema: + type: object + properties: + OnuAlarmSubscription: + $ref: '#/components/schemas/OnuAlarmSubscription' + responses: + '201': + description: 'Indicates successful resource creation, where the resource URI shall be returned in the HTTP Location header field. + + + In the returned NotificationSubscription structure, the created subscription is described using the appropriate data type from the list below: + + OnuAlarmSubscription. + + DevInfoSubscription. + + CmConnSubscription. + + AniAlarmSubscription.' + content: + application/json: + schema: + type: object + properties: + OnuAlarmSubscription: + $ref: '#/components/schemas/OnuAlarmSubscription' + '400': + $ref: '#/components/responses/400' + '401': + $ref: '#/components/responses/401' + '403': + $ref: '#/components/responses/403' + '404': + $ref: '#/components/responses/404' + '406': + $ref: '#/components/responses/406' + '415': + $ref: '#/components/responses/415' + '422': + $ref: '#/components/responses/422' + '429': + $ref: '#/components/responses/429' + callbacks: + notification: + post: + summary: Callback POST used to send a notification + description: Subscription notification + operationId: notificationPOST + requestBody: + description: Subscription notification + required: true + content: + application/json: + schema: + type: object + properties: + subscriptionNotification: + oneOf: + - $ref: '#/components/schemas/OnuAlarmSubscription' + - $ref: '#/components/schemas/DevInfoSubscription' + - $ref: '#/components/schemas/CmConnSubscription' + - $ref: '#/components/schemas/AniAlarmSubscription' + /subscriptions/{subscriptionId}: + get: + summary: Retrieve information on current specific subscription. + description: The GET method is used to retrieve information about this subscription. Upon success, the response contains entity body with the data type describing the subscription. + operationId: subscriptionsByIdGET + tags: + - subscriptions + responses: + '200': + description: 'Upon success, a response body containing data type describing the specific FAI event subscription is returned. The allowed data types for subscriptions are as follows: + + OnuAlarmSubscription. + + DevInfoSubscription. + + CmConnSubscription. + + AniAlarmSubscription.' + content: + application/json: + schema: + type: object + properties: + OnuAlarmSubscription: + $ref: '#/components/schemas/OnuAlarmSubscription' + '400': + $ref: '#/components/responses/400' + '401': + $ref: '#/components/responses/401' + '403': + $ref: '#/components/responses/403' + '404': + $ref: '#/components/responses/404' + '406': + $ref: '#/components/responses/406' + '429': + $ref: '#/components/responses/429' + put: + summary: Modify existing subscription by sending a new data structure. + description: The PUT method is used to update the existing subscription. PUT method in this case has "replace" semantics. Upon successful operation, the target resource is updated with new Data Type received within the message body of the PUT request. + operationId: subscriptionsByIdPUT + tags: + - subscriptions + delete: + summary: Cancel the existing subscription. + description: The DELETE method is used to cancel the existing subscription. Cancellation can be made by deleting the resource that represents existing subscription. + operationId: subscriptionsByIdDELETE + tags: + - subscriptions + responses: + '204': + $ref: '#/components/responses/204' + '401': + $ref: '#/components/responses/401' + '403': + $ref: '#/components/responses/403' + '404': + $ref: '#/components/responses/404' + '429': + $ref: '#/components/responses/429' +components: + schemas: + LinkType: + x-etsi-ref: 6.5.8 + type: object + properties: + href: + description: URI referring to a resource + x-etsi-mec-origin-type: Uri + x-etsi-mec-cardinality: '1' + type: string + format: uri + required: + - href + Href: + description: The URI referring to the subscription. + type: string + format: uri + ProblemDetails: + type: object + properties: + type: + type: string + format: uri + description: A URI reference according to IETF RFC 3986 that identifies the problem type + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: URI + title: + type: string + description: A short, human-readable summary of the problem type + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: String + status: + type: integer + format: uint32 + description: The HTTP status code for this occurrence of the problem + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: Uint32 + detail: + type: string + description: A human-readable explanation specific to this occurrence of the problem + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: String + instance: + type: string + format: uri + description: A URI reference that identifies the specific occurrence of the problem + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: URI + FaInfo: + x-etsi-ref: 6.2.2 + type: object + properties: + timeStamp: + # description': Time stamp. + $ref: '#/components/schemas/TimeStamp' + # x-etsi-mec-origin-type': TimeStamp + # x-etsi-mec-cardinality': 0..1 + customerPremisesInfo: + # description': The physical location of a customer site. + $ref: '#/components/schemas/CpInfo' + # x-etsi-mec-origin-type': CpInfo + # x-etsi-mec-cardinality': '1' + lastMileTech: + type: integer + description: 'An informative field identifying the last mile access technology used. + + The valid values are: + + 1 = ADSL. + + 2 = VDSL. + + 3 = GPON. + + 4 = XGPON. + + 5 = NGPON2. + + 6 = XGSPON. + + 7 = GFAST. + + 8 = P2PEthernet.' + enum: + - SEE_DESCRIPTION + x-etsi-mec-origin-type: Enum + x-etsi-mec-cardinality: '1' + interfaceType: + type: integer + description: 'The physical interface used for the end customer site: + + 1 = 100BASE-TX. + + 2 = 1000BASE-TX. + + 3 = 1000BASE-LX. + + 4 = 1000BASELX10. + + 5 = 1000BASEBX10. + + 6 = 1000BASE-LH. + + 7 = 1000Base-ZX. + + 8 = ADSL-RJ11. + + 9 = VDSL-RJ11. + + 10 = GPON.' + enum: + - SEE_DESCRIPTION + x-etsi-mec-origin-type: Enum + x-etsi-mec-cardinality: '1' + dsbw: + description: The bandwidth (in Mbps) from the network towards the customer site. + x-etsi-mec-origin-type: Integer + x-etsi-mec-cardinality: 0..1 + type: integer + usbw: + description: The bandwidth (in Mbps) from the customer site towards the network. + x-etsi-mec-origin-type: Integer + x-etsi-mec-cardinality: 0..1 + type: integer + latency: + description: Maximum baseline latency (in ms) between customer site and service edge node. + x-etsi-mec-origin-type: Integer + x-etsi-mec-cardinality: 0..1 + type: integer + required: + - customerPremisesInfo + - lastMileTech + - interfaceType + DeviceInfo: + x-etsi-ref: 6.2.3 + type: object + properties: + timeStamp: + # description': Time stamp. + $ref: '#/components/schemas/TimeStamp' + # x-etsi-mec-origin-type': TimeStamp + # x-etsi-mec-cardinality': 0..1 + gwId: + description: 'Information (typically the serial number) to identify an Internet Gateway Device through which the customer premises device is connected. + + + This value shall remain fixed over the lifetime of the device, including across firmware updates.' + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + deviceId: + description: 'Typically, the serial number of the device. + + + This value shall remain fixed over the lifetime of the device, including across firmware updates.' + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + deviceStatus: + type: integer + description: 'Current operational status of the device. Enumeration of: + + 1 = Up. + + 2 = Initializing. + + 3 = Error. + + 4 = Disabled.' + enum: + - SEE_DESCRIPTION + x-etsi-mec-origin-type: Enum + x-etsi-mec-cardinality: '1' + upTime: + description: Time in seconds since the device was last restarted. + x-etsi-mec-origin-type: Integer + x-etsi-mec-cardinality: '1' + type: integer + iPConnectionUpTime: + description: The time in seconds that the IP interface has been connected. + x-etsi-mec-origin-type: Integer + x-etsi-mec-cardinality: '1' + type: integer + totalBytesSent: + description: Total number of IP payload bytes sent since the device was last restarted. + x-etsi-mec-origin-type: Integer + x-etsi-mec-cardinality: '1' + type: integer + totalBytesReceived: + description: Total number of IP payload bytes received since the device was last restarted. + x-etsi-mec-origin-type: Integer + x-etsi-mec-cardinality: '1' + type: integer + totalPacketsSent: + description: Total number of packets sent since the device was last restarted. + x-etsi-mec-origin-type: Integer + x-etsi-mec-cardinality: '1' + type: integer + totalPacketsReceived: + description: Total number of packets received since the device was last restarted. + x-etsi-mec-origin-type: Integer + x-etsi-mec-cardinality: '1' + type: integer + iPPingDiagnostics: + # description': The result of an IP-layer ping test. + $ref: '#/components/schemas/IPPingDiagnostics' + # x-etsi-mec-origin-type': IPPingDiagnostics + # x-etsi-mec-cardinality': 0..1 + traceRouteDiagnostics: + # description': The result of an IP-layer trace-route test. + $ref: '#/components/schemas/TraceRouteDiagnostics' + # x-etsi-mec-origin-type': TraceRouteDiagnostics + # x-etsi-mec-cardinality': 0..1 + downloadDiagnostics: + # description': The result of a HTTP and FTP DownloadDiagnostics Test. + $ref: '#/components/schemas/DownloadDiagnostics' + # x-etsi-mec-origin-type': DownloadDiagnostics + # x-etsi-mec-cardinality': 0..1 + uploadDiagnostics: + # description': The result of a HTTP and FTP UploadDiagnostics Test. + $ref: '#/components/schemas/UploadDiagnostics' + # x-etsi-mec-origin-type': UploadDiagnostics + # x-etsi-mec-cardinality': 0..1 + required: + - gwId + - deviceId + - deviceStatus + - upTime + - iPConnectionUpTime + - totalBytesSent + - totalBytesReceived + - totalPacketsSent + - totalPacketsReceived + CableLineInfo: + x-etsi-ref: 6.2.4 + type: object + properties: + timeStamp: + # description': Time stamp. + $ref: '#/components/schemas/TimeStamp' + # x-etsi-mec-origin-type': TimeStamp + # x-etsi-mec-cardinality': 0..1 + customerPremisesInfo: + # description': The physical location of a customer site. + $ref: '#/components/schemas/CpInfo' + # x-etsi-mec-origin-type': CpInfo + # x-etsi-mec-cardinality': '1' + cmId: + description: 'Information (typically the serial number) to identify a Cable Modem at subscriber locations intended for use in conveying data communications on a cable data system. + + + This value SHALL remain fixed over the lifetime of the device, including across firmware updates.' + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + cmStatus: + $ref: '#/components/schemas/CmStatus' + cmDpvStats: + $ref: '#/components/schemas/CmDpvStats' + serviceFlowStats: + $ref: '#/components/schemas/ServiceFlowStats' + required: + - customerPremisesInfo + - cmId + PonInfo: + x-etsi-ref: 6.2.5 + type: object + properties: + timeStamp: + # description': Time stamp. + $ref: '#/components/schemas/TimeStamp' + # x-etsi-mec-origin-type': TimeStamp + # x-etsi-mec-cardinality': 0..1 + customerPremisesInfo: + # description': The physical location of a customer site. + $ref: '#/components/schemas/CpInfo' + # x-etsi-mec-origin-type': CpInfo + # x-etsi-mec-cardinality': '1' + ponSYS_ID: + description: 'The 20-bit identity of the optical system within a certain domain. + + This is a reference value set by the OSS.' + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + onuId: + description: Information to identify an Optical Network Unit. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + ponTech: + type: integer + description: 'An informative field identifying the optical technology used. + + + The valid values are: + + 1 = GPON. + + 2 = XGPON. + + 3 = NGPON2. + + 4 = XGSPON.' + enum: + - SEE_DESCRIPTION + x-etsi-mec-origin-type: Enum + x-etsi-mec-cardinality: '1' + operationalState: + type: integer + description: 'It reports whether the ONU is currently capable of performing its function. Valid values are: + + 0 = enabled + + 1 = disabled' + enum: + - SEE_DESCRIPTION + x-etsi-mec-origin-type: Enum + x-etsi-mec-cardinality: '1' + dsRate: + type: integer + description: "Downstream line rate, valid values are:\n1 =\t2,48832 Gbit/s: G-PON [i.9]; or\nNG-PON2 option 2 [i.8].\n2 =\t9,95328 Gbit/s: XG-PON [i.10]; or\nXGS-PON [i.11]; or\nNG-PON2 option 1 [i.8]." + enum: + - SEE_DESCRIPTION + x-etsi-mec-origin-type: Enum + x-etsi-mec-cardinality: '1' + usRate: + type: integer + description: "Upstream line rate, valid values are:\n1 =\t1,24416 Gbit/s: G-PON option 1 [i.9].\n2 =\t2,48832 Gbit/s: G-PON option 2 [i.9]; or\nXG-PON [i.10]; or\nNG-PON2 option 2 [i.8].\n3 =\t9,95328 Gbit/s: XGS-PON [i.11]; or\nNG-PON2 option 1 [i.8]." + enum: + - SEE_DESCRIPTION + x-etsi-mec-origin-type: Enum + x-etsi-mec-cardinality: '1' + required: + - customerPremisesInfo + - ponSYS_ID + - onuId + - ponTech + - operationalState + - dsRate + - usRate + OnuAlarmSubscription: + x-etsi-ref: 6.3.2 + type: object + properties: + subscriptionType: + description: Shall be set to "OnuAlarmSubscription". + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + callbackReference: + description: URI exposed by the client on which to receive notifications via HTTP. See note. + x-etsi-mec-origin-type: Uri + x-etsi-mec-cardinality: 0..1 + type: string + format: uri + requestTestNotification: + description: "Shall be set to TRUE by the service consumer to request a test notification via HTTP on the callbackReference URI, as described in ETSI GS MEC 009 [i.1], clause\_6.12a.\nDefault: FALSE. " + x-etsi-mec-origin-type: Boolean + x-etsi-mec-cardinality: 0..1 + type: boolean + websockNotifConfig: + # description': Provides details to negotiate and signal the use of a Websocket connection between FAIS and the service consumer for notifications. See note. + $ref: '#/components/schemas/WebsockNotifConfig' + # x-etsi-mec-origin-type': WebsockNotifConfig + # x-etsi-mec-cardinality': 0..1 + _links: + $ref: '#/components/schemas/_links' + filterCriteriaOnuAlarm: + $ref: '#/components/schemas/FilterCriteriaOnuAlarm' + expiryDeadline: + # description': Time stamp. + $ref: '#/components/schemas/TimeStamp' + # x-etsi-mec-origin-type': TimeStamp + # x-etsi-mec-cardinality': 0..1 + required: + - subscriptionType + - filterCriteriaOnuAlarm + x-etsi-notes: "NOTE:\tAt least one of callbackReference and websockNotifConfig shall be provided by the service consumer. If both are provided, it is up to FAIS to choose an alternative and return only that alternative in the response, as described in ETSI GS MEC 009 [i.1], clause 6.12a." + DevInfoSubscription: + x-etsi-ref: 6.3.3 + type: object + properties: + subscriptionType: + description: Shall be set to "DevInfoSubscription". + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + callbackReference: + description: URI exposed by the client on which to receive notifications via HTTP. See note. + x-etsi-mec-origin-type: Uri + x-etsi-mec-cardinality: 0..1 + type: string + format: uri + requestTestNotification: + description: "Shall be set to TRUE by the service consumer to request a test notification via HTTP on the callbackReference URI, as described in ETSI GS MEC 009 [i.1], clause\_6.12a.\nDefault: FALSE. " + x-etsi-mec-origin-type: Boolean + x-etsi-mec-cardinality: 0..1 + type: boolean + websockNotifConfig: + # description': Provides details to negotiate and signal the use of a Websocket connection between FAIS and the service consumer for notifications. See note. + $ref: '#/components/schemas/WebsockNotifConfig' + # x-etsi-mec-origin-type': WebsockNotifConfig + # x-etsi-mec-cardinality': 0..1 + _links: + $ref: '#/components/schemas/_links' + filterCriteriaDevInfo: + $ref: '#/components/schemas/FilterCriteriaDevInfo' + expiryDeadline: + # description': Time stamp. + $ref: '#/components/schemas/TimeStamp' + # x-etsi-mec-origin-type': TimeStamp + # x-etsi-mec-cardinality': 0..1 + required: + - subscriptionType + - filterCriteriaDevInfo + x-etsi-notes: "NOTE:\tAt least one of callbackReference and websockNotifConfig shall be provided by the service consumer. If both are provided, it is up to FAIS to choose an alternative and return only that alternative in the response, as described in ETSI GS MEC 009 [i.1], clause 6.12a." + CmConnSubscription: + x-etsi-ref: 6.3.4 + type: object + properties: + subscriptionType: + description: Shall be set to "CmConnSubscription". + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + callbackReference: + description: URI exposed by the client on which to receive notifications via HTTP. See note 1. + x-etsi-mec-origin-type: Uri + x-etsi-mec-cardinality: 0..1 + type: string + format: uri + requestTestNotification: + description: "Shall be set to TRUE by the service consumer to request a test notification via HTTP on the callbackReference URI, as described in ETSI GS MEC 009 [i.1], clause\_6.12a.\nDefault: FALSE. " + x-etsi-mec-origin-type: Boolean + x-etsi-mec-cardinality: 0..1 + type: boolean + websockNotifConfig: + # description': Provides details to negotiate and signal the use of a Websocket connection between FAIS and the service consumer for notifications. See note 1. + $ref: '#/components/schemas/WebsockNotifConfig' + # x-etsi-mec-origin-type': WebsockNotifConfig + # x-etsi-mec-cardinality': 0..1 + _links: + $ref: '#/components/schemas/_links' + filterCriteriaCmConn: + $ref: '#/components/schemas/FilterCriteriaCmConn' + expiryDeadline: + # description': Time stamp. + $ref: '#/components/schemas/TimeStamp' + # x-etsi-mec-origin-type': TimeStamp + # x-etsi-mec-cardinality': 0..1 + required: + - subscriptionType + - filterCriteriaCmConn + x-etsi-notes: "NOTE 1:\tAt least one of callbackReference and websockNotifConfig shall be provided by the service consumer. If both are provided, it is up to FAIS to choose an alternative and return only that alternative in the response, as described in ETSI GS MEC 009 [i.1], clause 6.12a.\nNOTE 2:\t'notReady' indicates that the CM has not started the registration process yet.\n\t'notSynchronized' indicates that the CM has not initiated or completed the synchronization of the downstream physical layer.\n\t'phySynchronized' indicates that the CM has completed the synchronization of the downstream physical layer.\n\t'dsTopologyResolutionInProgress' indicates that the CM is attempting to determine its MD-DS-SG.\n\t'usParametersAcquired' indicates that the CM has completed the upstream parameters acquisition or have completed the downstream and upstream service groups resolution.\n\t'rangingInProgress' indicates that the CM has initiated the initial ranging process.\n\t'rangingComplete' indicates that the CM has completed initial ranging and received a Ranging Status of success from the CMTS in the RNG-RSP message.\n\t'eaeInProgress' indicates that the CM has sent an Auth Info message for EAE.\n\t'dhcpv4InProgress' indicates that the CM has sent a DHCPv4 DISCOVER to gain IP connectivity.\n\t'dhcpv6InProgress' indicates that the CM has sent a DHCPv6 Solicit message.\n\t'dhcpv4Complete' indicates that the CM has received a DHCPv4 ACK message from the CMTS.\n\t'dhcpv6Complete' indicates that the CM has received a DHCPv6 Reply message from the CMTS.\n\t'todEstablished' indicates that the CM has successfully acquired time of day.\n\t'securityEstablished' indicates that the CM has successfully completed the BPI initialization process.\n\t'configFileDownloadComplete' indicates that the CM has completed the config file download process.\n\t'registrationInProgress' indicates that the CM has sent a Registration Request.\n\t'registrationComplete' indicates that the CM has successfully completed the Registration process with the CMTS.\n\t'accessDenied' indicates that the CM has received a registration aborted notification from the CMTS.\n\t'operational' indicates that the CM has completed all necessary initialization steps and is operational.\n\t'bpiInit' indicates that the CM has started the BPI initialization process as indicated in the CM config file.\n\t'forwardingDisabled' indicates that the registration process was completed, but the network access option in the received configuration file prohibits forwarding." + SubscriptionLinkList: + x-etsi-ref: 6.3.5 + type: object + properties: + _links: + $ref: '#/components/schemas/_links1' + required: + - _links + AniAlarmSubscription: + x-etsi-ref: 6.3.6 + type: object + properties: + subscriptionType: + description: Shall be set to "AniAlarmSubscription". + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + callbackReference: + description: URI exposed by the client on which to receive notifications via HTTP. See note. + x-etsi-mec-origin-type: Uri + x-etsi-mec-cardinality: 0..1 + type: string + format: uri + requestTestNotification: + description: "Shall be set to TRUE by the service consumer to request a test notification via HTTP on the callbackReference URI, as described in ETSI GS MEC 009 [i.1], clause\_6.12a.\nDefault: FALSE. " + x-etsi-mec-origin-type: Boolean + x-etsi-mec-cardinality: 0..1 + type: boolean + websockNotifConfig: + # description': Provides details to negotiate and signal the use of a Websocket connection between FAIS and the service consumer for notifications. See note. + $ref: '#/components/schemas/WebsockNotifConfig' + # x-etsi-mec-origin-type': WebsockNotifConfig + # x-etsi-mec-cardinality': 0..1 + _links: + $ref: '#/components/schemas/_links' + filterCriteriaAniAlarm: + $ref: '#/components/schemas/FilterCriteriaAniAlarm' + onuId: + description: The unique identifiers for the optical network unit, + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + aniIndex: + description: The index of an access network interface supported by the optical network unit. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + alarms: + description: "In case alarms is not included in the subscription request, the default value -1 = All shall be used and included in the response:\n0 =\tLowReceivedOpticalPower.\n(Received downstream optical power below threshold.)\n1 =\tHighReceivedOpticalPower.\n\t(Received downstream optical power above threshold.)\n2 =\tSignalFalure.\n(Bit error-based signal fail.)\n3 =\tSignalDegrade.\n(Bit error-based signal degrade.)\n4 =\tLowTransmitOpticalPower.\n(Transmit optical power below lower threshold.)\n5 =\tHighTransmitOpticalPower.\n(Transmit optical power above upper threshold.)\n6 =\tLaserBiasCurrent.\n(Laser bias current above threshold determined by vendor.)\n-1 =\tAll." + x-etsi-mec-origin-type: Enum + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + type: integer + expiryDeadline: + # description': Time stamp. + $ref: '#/components/schemas/TimeStamp' + # x-etsi-mec-origin-type': TimeStamp + # x-etsi-mec-cardinality': 0..1 + required: + - subscriptionType + - filterCriteriaAniAlarm + - onuId + - aniIndex + x-etsi-notes: "NOTE:\tAt least one of callbackReference and websockNotifConfig shall be provided by the service consumer. If both are provided, it is up to FAIS to choose an alternative and return only that alternative in the response, as described in ETSI GS MEC 009 [i.1], clause 6.12a." + OnuAlarmNotification: + x-etsi-ref: 6.4.2 + type: object + properties: + notificationType: + description: Shall be set to "OnuAlarmNotification". + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + timeStamp: + # description': Time stamp. + $ref: '#/components/schemas/TimeStamp' + # x-etsi-mec-origin-type': TimeStamp + # x-etsi-mec-cardinality': 0..1 + customerPremisesInfo: + description: The physical location of the related customer sites. + x-etsi-mec-origin-type: CpInfo + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + $ref: '#/components/schemas/CpInfo' + onuId: + description: The unique identifier for an optical network unit. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + alarm: + type: string + description: "Indicates the alarm of the ONU:\n0 \t= \tEquipmentAlarm.\n1 \t= \tPoweringAlarm.\n2 \t= \tBatteryMissing.\n3 \t= \tBatteryFailure.\n4 \t= \tBatteryLow.\n5 \t= \tPhysicalIntrusion.\n6 \t= \tOnuSelfTestFailure.\n7 \t= \tDyingGasp.\n8 \t= \tTemperatureYellow.\n9 \t= \tTemperatureRed.\n10 \t= \tVoltageYellow.\n11 \t= \tVoltageRed.\n12 \t= \tOnuManualPowerOff.\n13 \t= \tInvImage.\n14 \t= \tPseOverloadYellow.\n15 \t= \tPseOverloadRed." + enum: + - SEE_DESCRIPTION + x-etsi-mec-origin-type: Enum + x-etsi-mec-cardinality: '1' + required: + - notificationType + - onuId + - alarm + DevInfoNotification: + x-etsi-ref: 6.4.3 + type: object + properties: + notificationType: + description: Shall be set to "DevInfoNotification". + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + timeStamp: + # description': Time stamp. + $ref: '#/components/schemas/TimeStamp' + # x-etsi-mec-origin-type': TimeStamp + # x-etsi-mec-cardinality': 0..1 + deviceId: + description: The identifier for a device. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + deviceErrStatus: + type: integer + description: 'Indicates the abnormal operational status of the device. Enumeration of: + + 1 = Error. + + 2 = Disabled.' + enum: + - SEE_DESCRIPTION + x-etsi-mec-origin-type: Enum + x-etsi-mec-cardinality: '1' + required: + - notificationType + - deviceId + - deviceErrStatus + CmConnNotification: + x-etsi-ref: 6.4.4 + type: object + properties: + notificationType: + description: Shall be set to "CmconnNotification". + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + timeStamp: + # description': Time stamp. + $ref: '#/components/schemas/TimeStamp' + # x-etsi-mec-origin-type': TimeStamp + # x-etsi-mec-cardinality': 0..1 + customerPremisesInfo: + # description': The physical location of a customer site. + $ref: '#/components/schemas/CpInfo' + # x-etsi-mec-origin-type': CpInfo + # x-etsi-mec-cardinality': 0..1 + cmIf: + type: array + items: + $ref: '#/components/schemas/CmIf1' + required: + - notificationType + - cmIf + ExpiryNotification: + x-etsi-ref: 6.4.5 + type: object + properties: + timeStamp: + # description': Time stamp. + $ref: '#/components/schemas/TimeStamp' + # x-etsi-mec-origin-type': TimeStamp + # x-etsi-mec-cardinality': 0..1 + _links: + $ref: '#/components/schemas/_links2' + expiryDeadline: + # description': Time stamp. + $ref: '#/components/schemas/TimeStamp' + # x-etsi-mec-origin-type': TimeStamp + # x-etsi-mec-cardinality': '1' + required: + - _links + - expiryDeadline + AniAlarmNotification: + x-etsi-ref: 6.4.6 + type: object + properties: + notificationType: + description: Shall be set to "AniAlarmNotification". + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + timeStamp: + # description': Time stamp. + $ref: '#/components/schemas/TimeStamp' + # x-etsi-mec-origin-type': TimeStamp + # x-etsi-mec-cardinality': 0..1 + customerPremisesInfo: + description: The physical location of the related customer sites. + x-etsi-mec-origin-type: CpInfo + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + $ref: '#/components/schemas/CpInfo' + onuId: + description: The unique identifiers for the optical network unit. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + aniId: + $ref: '#/components/schemas/AniId1' + aniIndex: + description: The index of an access network interface supported by the optical network unit. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + alarm: + type: integer + description: 'Indicates the alarm of the ANI: + + 0 = LowReceivedOpticalPower. + + 1 = HighReceivedOpticalPower. + + 2 = SignalFailure. + + 3 = SignalDegrade. + + 4 = LowTransmitOpticalPower. + + 5 = HighTransmitOpticalPower. + + 6 = LaserBiasCurrent.' + enum: + - SEE_DESCRIPTION + x-etsi-mec-origin-type: Enum + x-etsi-mec-cardinality: '1' + required: + - notificationType + - onuId + - aniIndex + - alarm + TestNotification: + x-etsi-ref: 6.4.7 + type: object + properties: + notificationType: + description: Shall be set to "TestNotification". + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + _links: + $ref: '#/components/schemas/_links3' + required: + - notificationType + - _links + TimeStamp: + x-etsi-ref: 6.5.2 + type: object + properties: + seconds: + description: The seconds part of the time. Time is defined as Unixtime since January 1, 1970, 00:00:00 UTC. + x-etsi-mec-origin-type: Uint32 + x-etsi-mec-cardinality: '1' + type: integer + format: uint32 + nanoSeconds: + description: The nanoseconds part of the time. Time is defined as Unix-time since January 1, 1970, 00:00:00 UTC. + x-etsi-mec-origin-type: Uint32 + x-etsi-mec-cardinality: '1' + type: integer + format: uint32 + required: + - seconds + - nanoSeconds + CpInfo: + x-etsi-ref: 6.5.3 + type: object + properties: + latitude: + description: 'Latitude (DATUM=WGS84) + + -90 to 90 in decimal degree format DDD.ddd' + x-etsi-mec-origin-type: Float + x-etsi-mec-cardinality: 0..1 + type: number + format: float + longitude: + description: 'Longitude (DATUM=WGS84) + + -180 to 180 in decimal degree format DDD.ddd' + x-etsi-mec-origin-type: Float + x-etsi-mec-cardinality: 0..1 + type: number + format: float + postalCode: + description: Postal code for the location + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + IPPingDiagnostics: + x-etsi-ref: 6.5.4 + type: object + properties: + diagnosticsState: + type: integer + description: 'The state of the IP ping test. Enumeration of: + + 1 = None. + + 2 = Requested. + + 3 = Complete. + + 4 = Error_CannotResolveHostName. + + 5 = Error_Internal. + + 6 = Error_Other.' + enum: + - SEE_DESCRIPTION + x-etsi-mec-origin-type: Enum + x-etsi-mec-cardinality: '1' + host: + description: Host name or address of the host to ping. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + numberOfRepetitions: + description: Number of repetitions of the ping test to perform before reporting the results. + x-etsi-mec-origin-type: Integer + x-etsi-mec-cardinality: 0..1 + type: integer + timeout: + description: Timeout in milliseconds for the ping test. + x-etsi-mec-origin-type: Integer + x-etsi-mec-cardinality: 0..1 + type: integer + dataBlockSize: + description: Size of the data block in bytes to be sent for each ping. + x-etsi-mec-origin-type: Integer + x-etsi-mec-cardinality: 0..1 + type: integer + successCount: + description: 'Result parameter indicating the number of successful + + pings (those in which a successful response was received prior to the timeout) in the most recent ping test.' + x-etsi-mec-origin-type: Integer + x-etsi-mec-cardinality: 0..1 + type: integer + failureCount: + description: Result parameter indicating the number of failed pings in the most recent ping test. + x-etsi-mec-origin-type: Integer + x-etsi-mec-cardinality: 0..1 + type: integer + averageResponseTime: + description: 'Result parameter indicating the average response time in milliseconds over all repetitions with successful responses of the most recent ping test. + + + If there were no successful responses, this value shall be zero.' + x-etsi-mec-origin-type: Integer + x-etsi-mec-cardinality: 0..1 + type: integer + minimumResponseTime: + description: 'Result parameter indicating the minimum response time in milliseconds over all repetitions with successful responses of the most recent ping test. + + + If there were no successful responses, this value shall be zero.' + x-etsi-mec-origin-type: Integer + x-etsi-mec-cardinality: 0..1 + type: integer + maximumResponseTime: + description: 'Result parameter indicating the maximum response time in milliseconds over all repetitions with successful responses of the most recent ping test. + + + If there were no successful responses, this value shall be zero.' + x-etsi-mec-origin-type: Integer + x-etsi-mec-cardinality: 0..1 + type: integer + required: + - diagnosticsState + TraceRouteDiagnostics: + x-etsi-ref: 6.5.5 + type: object + properties: + diagnosticsState: + type: integer + description: 'The state of the IP trace-route test. Enumeration of: + + 1 = None. + + 2 = Requested. + + 3 = Complete. + + 4 = Error_CannotResolveHostName. + + 5 = Error_MaxHopCountExceeded. + + 6 = Error_Internal. + + 7 = Error_Other.' + enum: + - SEE_DESCRIPTION + x-etsi-mec-origin-type: Enum + x-etsi-mec-cardinality: '1' + host: + description: Host name or address of the host to find a route to. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + timeout: + description: Timeout in milliseconds for the trace route test. + x-etsi-mec-origin-type: Integer + x-etsi-mec-cardinality: 0..1 + type: integer + dataBlockSize: + description: Size of the data block in bytes to be sent for each trace route. + x-etsi-mec-origin-type: Integer + x-etsi-mec-cardinality: 0..1 + type: integer + maxHopCount: + description: The maximum number of hop used in outgoing probe packets. The default is 30 hops. + x-etsi-mec-origin-type: Integer + x-etsi-mec-cardinality: 0..1 + type: integer + responseTime: + description: 'Result parameter indicating the response time in milliseconds the most recent trace route test. + + + If a route could not be determined, this value shall be zero.' + x-etsi-mec-origin-type: Integer + x-etsi-mec-cardinality: 0..1 + type: integer + numberOfRouteHops: + description: 'Result parameter indicating the number of hops within the discovered route. + + + If a route could not be determined, this value shall be zero.' + x-etsi-mec-origin-type: Integer + x-etsi-mec-cardinality: 0..1 + type: integer + required: + - diagnosticsState + DownloadDiagnostics: + x-etsi-ref: 6.5.6 + type: object + properties: + diagnosticsState: + type: string + description: "The state of the HTTP and FTP download test. Enumeration of:\n1 \t= \tNone.\n2 \t= \tRequested.\n3 \t= \tCompleted.\n4 \t= \tError_InitConnectionFailed.\n5 \t= \tError_NoResponse.\n6 \t= \tError_TransferFailed.\n7 \t= \tError_PasswordRequestFailed.\n8 \t= \tError_LoginFailed.\n9 \t= \tError_NoTransferMode.\n10 \t= \tError_NoPASV.\n11 \t= \tError_IncorrectSize.\n12 \t= \tError_Timeout." + enum: + - SEE_DESCRIPTION + x-etsi-mec-origin-type: Enum + x-etsi-mec-cardinality: '1' + downloadURI: + description: The URI for the device to perform the download on. + x-etsi-mec-origin-type: Uri + x-etsi-mec-cardinality: 0..1 + type: string + format: uri + rOMTime: + # description': Request time in UTC, which shall be specified to microsecond precision. + $ref: '#/components/schemas/TimeStamp' + # x-etsi-mec-origin-type': TimeStamp + # x-etsi-mec-cardinality': 0..1 + bOMTime: + # description': Begin of transmission time in UTC, which shall be specified to microsecond precision. + $ref: '#/components/schemas/TimeStamp' + # x-etsi-mec-origin-type': TimeStamp + # x-etsi-mec-cardinality': 0..1 + eOMTime: + # description': End of transmission in UTC, which shall be specified to microsecond precision. + $ref: '#/components/schemas/TimeStamp' + # x-etsi-mec-origin-type': TimeStamp + # x-etsi-mec-cardinality': 0..1 + testBytesReceived: + description: The test traffic received in bytes during the FTP/HTTP transaction including FTP/HTTP headers, between bOMTime and eOMTime. + x-etsi-mec-origin-type: Integer + x-etsi-mec-cardinality: 0..1 + type: integer + totalBytesReceived: + description: The total number of bytes received on the Interface between bOMTime and eOMTime. + x-etsi-mec-origin-type: Integer + x-etsi-mec-cardinality: 0..1 + type: integer + tCPOpenRequestTime: + # description': Request time in UTC, which shall be specified to microsecond precision. + $ref: '#/components/schemas/TimeStamp' + # x-etsi-mec-origin-type': TimeStamp + # x-etsi-mec-cardinality': 0..1 + tCPOpenReponseTime: + # description': Response time in UTC, which shall be specified to microsecond precision. + $ref: '#/components/schemas/TimeStamp' + # x-etsi-mec-origin-type': TimeStamp + # x-etsi-mec-cardinality': 0..1 + required: + - diagnosticsState + UploadDiagnostics: + x-etsi-ref: 6.5.7 + type: object + properties: + diagnosticsState: + type: string + description: "The state of the HTTP and FTP download test. Enumeration of:\n1 \t= \tNone.\n2 \t= \tRequested.\n3 \t= \tCompleted.\n4 \t= \tError_InitConnectionFailed.\n5 \t= \tError_NoResponse.\n6 \t= \tError_PasswordRequestFailed.\n7 \t= \tError_LoginFailed.\n8 \t= \tError_NoTransferMode.\n9 \t= \tError_NoPASV.\n10 \t= \tError_NoCWD.\n11 \t= \tError_NoSTOR.\n12 \t= \tError_NoTransferComplete." + enum: + - SEE_DESCRIPTION + x-etsi-mec-origin-type: Enum + x-etsi-mec-cardinality: '1' + uploadURI: + description: The URI for the device to perform the upload to. + x-etsi-mec-origin-type: Uri + x-etsi-mec-cardinality: 0..1 + type: string + format: uri + testFileLength: + description: The size of the file (in bytes) to be uploaded to the server. + x-etsi-mec-origin-type: Integer + x-etsi-mec-cardinality: 0..1 + type: integer + rOMTime: + # description': Request time in UTC, which shall be specified to microsecond precision. + $ref: '#/components/schemas/TimeStamp' + # x-etsi-mec-origin-type': TimeStamp + # x-etsi-mec-cardinality': 0..1 + bOMTime: + # description': Begin of transmission time in UTC, which shall be specified to microsecond precision. + $ref: '#/components/schemas/TimeStamp' + # x-etsi-mec-origin-type': TimeStamp + # x-etsi-mec-cardinality': 0..1 + eOMTime: + # description': End of transmission in UTC, which shall be specified to microsecond precision. + $ref: '#/components/schemas/TimeStamp' + # x-etsi-mec-origin-type': TimeStamp + # x-etsi-mec-cardinality': 0..1 + testBytesSent: + description: The test traffic sent in bytes during the FTP/HTTP transaction including FTP/HTTP headers, between bOMTime and eOMTime. + x-etsi-mec-origin-type: Integer + x-etsi-mec-cardinality: 0..1 + type: integer + tCPOpenRequestTime: + # description': Request time in UTC, which shall be specified to microsecond precision. + $ref: '#/components/schemas/TimeStamp' + # x-etsi-mec-origin-type': TimeStamp + # x-etsi-mec-cardinality': 0..1 + tCPOpenReponseTime: + # description': Response time in UTC, which shall be specified to microsecond precision. + $ref: '#/components/schemas/TimeStamp' + # x-etsi-mec-origin-type': TimeStamp + # x-etsi-mec-cardinality': 0..1 + required: + - diagnosticsState + WebsockNotifConfig: + x-etsi-ref: 6.5.9 + type: object + properties: + websocketUri: + description: Set by FAIS to indicate to the service consumer the Websocket URI to be used for delivering notifications. + x-etsi-mec-origin-type: Uri + x-etsi-mec-cardinality: 0..1 + type: string + format: uri + requestWebsocketUri: + description: Set to true by the service consumer to indicate that Websocket delivery is requested. + x-etsi-mec-origin-type: Boolean + x-etsi-mec-cardinality: 0..1 + type: boolean + CmStatus: + description: It provides CM connectivity status information of the CM. + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: 0..1 + type: object + properties: + ifIndex: + description: It denotes the MAC Domain interface index of the CM. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + cmRegState: + type: string + description: "It defines the CM connectivity state. Enumeration of:\n1 \t= \tother.\n2 \t= \tnotReady.\n3 \t= \tnotSynchronized.\n4 \t= \tphySynchronized.\n5 \t= \tusParametersAcquired.\n6 \t= \trangingComplete.\n7 \t= \tdhcpV4Complete.\n8 \t= \ttodEstablished.\n9 \t= \tsecurityEstablished.\n10 \t= \tconfigFileDownloadComplete.\n11 \t= \tregistrationComplete.\n12 \t= \toperational.\n13 \t= \taccessDenied.\n14 \t= \teaeInProgress.\n15 \t= \tdhcpv4InProgress.\n16 \t= \tdhcpv6InProgress.\n17 \t= \tdhcpV6Complete.\n18 \t= \tregistrationInProgress.\n19 \t= \tbpiInit.\n20 \t= \tforwardingDisabled.\n21 \t= \tdsTopologyResolutionInProgress.\n22 \t= \trangingInProgress.\n23 \t= \trfMuteAll." + enum: + - SEE_DESCRIPTION + x-etsi-mec-origin-type: Enum + x-etsi-mec-cardinality: '1' + resets: + description: It denotes the number of times the CM reset or initialized this interface. + x-etsi-mec-origin-type: Integer + x-etsi-mec-cardinality: '1' + type: integer + lostSyncs: + description: It denotes the number of times the CM lost synchronization with the downstream channel. + x-etsi-mec-origin-type: Integer + x-etsi-mec-cardinality: '1' + type: integer + invalidRegRsps: + description: It denotes the number of times the CM received invalid registration response messages. + x-etsi-mec-origin-type: Integer + x-etsi-mec-cardinality: '1' + type: integer + energyMgt1x1OperStatus: + description: It indicates whether the CM is currently operating in Energy Management 1x1 Mode. + x-etsi-mec-origin-type: Boolean + x-etsi-mec-cardinality: '1' + type: boolean + emDlsOperStatus: + description: It indicates whether the CM is currently operating in Energy Management DLS Mode. + x-etsi-mec-origin-type: Boolean + x-etsi-mec-cardinality: '1' + type: boolean + required: + - ifIndex + - cmRegState + - resets + - lostSyncs + - invalidRegRsps + - energyMgt1x1OperStatus + - emDlsOperStatus + CmDpvStats: + description: It represents the DOCSIS Path Verify Statistics collected in the cable modem device. + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: 0..1 + type: object + properties: + ifIndex: + description: It represents the interface Index of the Downstream Interface where the measurements are taken. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + lastMeasLatency: + description: The last latency measurement. + x-etsi-mec-origin-type: Integer + x-etsi-mec-cardinality: '1' + type: integer + lastMeasTime: + # description': The last measurement time of the last latency measurement. + $ref: '#/components/schemas/TimeStamp' + # x-etsi-mec-origin-type': TimeStamp + # x-etsi-mec-cardinality': '1' + minLatency: + description: The minimum latency measurement. + x-etsi-mec-origin-type: Integer + x-etsi-mec-cardinality: '1' + type: integer + maxLatency: + description: The maximum latency measurement. + x-etsi-mec-origin-type: Integer + x-etsi-mec-cardinality: '1' + type: integer + avgLatency: + description: The average latency measurement. + x-etsi-mec-origin-type: Integer + x-etsi-mec-cardinality: '1' + type: integer + numMeas: + description: The number of latency measurements made. + x-etsi-mec-origin-type: Integer + x-etsi-mec-cardinality: '1' + type: integer + required: + - ifIndex + - lastMeasLatency + - lastMeasTime + - minLatency + - maxLatency + - avgLatency + - numMeas + ServiceFlowInfo: + description: It represents the information of a Service Flow. + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: 1..N + type: object + minItems: 1 + properties: + serviceFlowId: + description: It represents an identifier assigned to a Service Flow by CMTS within a MAC Domain. + x-etsi-mec-origin-type: Integer + x-etsi-mec-cardinality: '1' + type: integer + pkts: + description: For outgoing Service Flows, this attribute counts the number of Packet Data PDUs forwarded to this Service Flow. For incoming upstream CMTS service flows, this attribute counts the number of Packet Data PDUs actually received on the Service Flow identified by the SID for which the packet was scheduled. + x-etsi-mec-origin-type: Integer + x-etsi-mec-cardinality: '1' + type: integer + timeCreated: + # description': It indicates the time when the service flow was created. + $ref: '#/components/schemas/TimeStamp' + # x-etsi-mec-origin-type': TimeStamp + # x-etsi-mec-cardinality': '1' + timeActive: + description: It indicates the number of seconds that the service flow has been active. + x-etsi-mec-origin-type: Integer + x-etsi-mec-cardinality: '1' + type: integer + policedDropPkts: + description: "For upstream service flows, this attribute counts the number of Packet Data PDUs classified to this service flow dropped due to:\n1)\texceeding the selected Buffer Size for the service flow; or\n2)\tUGS packets dropped due to exceeding the Unsolicited Grant Size with a Request/Transmission policy that requires such packets to be dropped." + x-etsi-mec-origin-type: Integer + x-etsi-mec-cardinality: '1' + type: integer + policedDelayPkts: + description: It counts only outgoing packets delayed in order to maintain the Maximum Sustained Traffic Rate. + x-etsi-mec-origin-type: Integer + x-etsi-mec-cardinality: '1' + type: integer + aqmDroppedPkts: + description: For upstream service flows on which AQM is enabled, this attribute counts the number of Packet Data PDUs classified to this service flow dropped due to Active Queue Management drop decisions. + x-etsi-mec-origin-type: Integer + x-etsi-mec-cardinality: '1' + type: integer + required: + - serviceFlowId + - pkts + - timeCreated + - timeActive + - policedDropPkts + - policedDelayPkts + - aqmDroppedPkts + ServiceFlowStats: + description: It describes statistics associated with the Service Flows in a managed device. + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: 0..1 + type: object + properties: + ifIndex: + description: It represents the interface index of the MAC Domain of the Service Flow. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + serviceFlowInfo: + type: array + items: + $ref: '#/components/schemas/ServiceFlowInfo' + required: + - ifIndex + - serviceFlowInfo + _links: + description: Hyperlink related to the resource. This shall be only included in the HTTP responses and in HTTP PUT requests. + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: 0..1 + type: object + properties: + self: + # description': Self-referring URI. The URI shall be unique within the FAI API as it acts as an ID for the subscription. + $ref: '#/components/schemas/LinkType' + # x-etsi-mec-origin-type': LinkType + # x-etsi-mec-cardinality': '1' + required: + - self + FilterCriteriaOnuAlarm: + description: List of filtering criteria for the subscription. Any filtering criteria from below, which is included in the request, shall also be included in the response. + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: '1' + type: object + properties: + customerPremisesInfo: + description: 0 to N physical locations of the customer sites. + x-etsi-mec-origin-type: CpInfo + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + $ref: '#/components/schemas/CpInfo' + onuId: + description: '1 to N unique identifiers for the optical network units. + + Typical it is the unique serial number for each ONU, which contains the vendor ID and version number. The first four bytes are an ASCII-encoded four-letter vendor ID. The second four bytes are a binary encoded serial number, under the control of the ONU vendor.' + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 1..N + type: array + minItems: 1 + items: + type: string + alarms: + description: "In case alarms is not included in the subscription request, the default value -1 = All shall be used and included in the response:\n0 =\tEquipmentAlarm.\n\t(Functional failure on an internal interface.)\n1 =\tPoweringAlarm.\n\t(Loss of external power to battery backup unit. This alarm is typically derived through an external interface to a battery backup unit, and indicates that AC is no longer available to maintain battery charge.)\n2 =\tBatteryMissing.\n\t(Battery is provisioned but missing.)\n3 =\tBatteryFailure.\n\t(Battery is provisioned and present but cannot recharge.)\n4 =\tBatteryLow.\n\t(Battery is provisioned and present but its voltage is too low.)\n5 =\tPhysicalIntrusion.\n\t(Applies if the ONU supports detection such as door or box open.)\n6 =\tOnuSelfTestFailure.\n\t(ONU has failed autonomous self-test.)\n7 =\tDyingGasp.\n\t(ONU is powering off imminently due to loss of power to the ONU itself.)\n8 =\tTemperatureYellow.\n\t(No service shutdown at present, but the circuit pack is operating beyond its recommended range.)\n9 =\tTemperatureRed.\n\t(Some services have been shut down to avoid equipment damage.)\n10 =\tVoltageYellow.\n\t(No service shutdown at present, but the line power voltage is below its recommended minimum.)\n11 =\tVoltageRed.\n\t(Some services have been shut down to avoid power collapse.)\n12 =\tOnuManualPowerOff.\n\t(The ONU is shutting down because the subscriber has turned off its power switch.)\n13 =\tInvImage.\n\t(Software image is invalid.)\n14 =\tPseOverloadYellow.\n\t(Indicates that the ONU is nearing its maximum ability to supply the known PoE demand of the attached PDs. The thresholds for declaring and clearing this alarm are vendor-specific.)\n15 =\tPseOverloadRed.\n\t(Indicates that the ONU is unable to supply all of the PoE demand of the attached PDs and has removed or reduced power to at least one PD.)\n-1 =\tAll." + x-etsi-mec-origin-type: Enum + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + type: integer + required: + - onuId + FilterCriteriaDevInfo: + description: List of filtering criteria for the subscription. Any filtering criteria from below, which is included in the request, shall also be included in the response. + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: '1' + type: object + properties: + gwId: + description: The identifier of an Internet Gateway Device through which the customer premises device is connected. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + type: string + deviceId: + description: The device identifier. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + type: string + deviceErrStatus: + description: 'The abnormal operational status of the device. Enumeration of: + + 1 = Error. + + 2 = Disabled.' + x-etsi-mec-origin-type: Enum + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + type: integer + CmIf: + description: '' + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: 0..N + type: object + minItems: 0 + properties: + cmId: + description: The identifier of a Cable Modem at subscriber locations intended for use in conveying data communications on a cable data system. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + ifIndex: + description: The MAC Domain interface index of the CM. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 1..N + type: array + minItems: 1 + items: + type: string + cmRegState: + description: "It indicates the CM connectivity state. See note 2 for detail. Enumeration of:\n1 \t= \tnotReady.\n2 \t= \tnotSynchronized.\n3 \t= \tphySynchronized.\n4 \t= \tdsTopologyResolutionInProgress.\n5 \t= \tusParametersAcquired.\n6 \t= \trangingInProgress.\n7 \t= \trangingComplete.\n8 \t= \teaeInProgress.\n9 \t= \tdhcpv4InProgress.\n10 \t= \tdhcpv6InProgress.\n11 \t= \tdhcpV4Complete.\n12 \t= \tdhcpV6Complete.\n13 \t= \ttodEstablished.\n14 \t= \tsecurityEstablished.\n15 \t= \tconfigFileDownloadComplete.\n16 \t= \tregistrationInProgress.\n17 \t= \tregistrationComplete.\n18 \t= \taccessDenied.\n19 \t=\toperational.\n20 \t= \tbpiInit.\n21 \t= \tforwardingDisabled." + x-etsi-mec-origin-type: Enum + x-etsi-mec-cardinality: 1..N + type: array + minItems: 1 + items: + type: string + required: + - cmId + - ifIndex + - cmRegState + FilterCriteriaCmConn: + description: List of filtering criteria for the subscription. Any filtering criteria from below, which is included in the request, shall also be included in the response. + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: '1' + type: object + properties: + customerPremisesInfo: + # description': The physical location of a customer site. + $ref: '#/components/schemas/CpInfo' + # x-etsi-mec-origin-type': CpInfo + # x-etsi-mec-cardinality': 0..1 + cmIf: + type: array + items: + $ref: '#/components/schemas/CmIf' + Subscriptions: + description: The service consumer's subscriptions. + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: 0..N + type: object + minItems: 0 + properties: + href: + description: The URI referring to the subscription. + x-etsi-mec-origin-type: Uri + x-etsi-mec-cardinality: '1' + type: string + format: uri + subscriptionType: + description: "Type of the subscription. The string shall be set according to the \"subscriptionType\" attribute of the associated subscription data type defined in clauses\_6.3.2, 6.3.3, 6.3.4 and 6.3.6:\n\"OnuAlarmSubscription\"\n\"DevInfoSubscription\"\n\"CmConnSubscription\"\n\"AniAlarmSubscription\"" + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + required: + - href + - subscriptionType + _links1: + description: Hyperlinks related to the resource. + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: '1' + type: object + properties: + self: + # description': URI of this resource. + $ref: '#/components/schemas/LinkType' + # x-etsi-mec-origin-type': LinkType + # x-etsi-mec-cardinality': '1' + subscriptions: + type: array + items: + $ref: '#/components/schemas/Subscriptions' + required: + - self + AniId: + description: '' + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: 1..N + type: object + minItems: 1 + FilterCriteriaAniAlarm: + description: List of filtering criteria for the subscription. Any filtering criteria from below, which is included in the request, shall also be included in the response. + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: '1' + type: object + properties: + customerPremisesInfo: + description: 0 to N physical locations of the customer sites. + x-etsi-mec-origin-type: CpInfo + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + $ref: '#/components/schemas/CpInfo' + onuId: + description: '1 to N unique identifiers for the optical network units. + + Typical it is the unique serial number for each ONU, which contains the vendor ID and version number. The first four bytes are an ASCII-encoded four-letter vendor ID. The second four bytes are a binary encoded serial number, under the control of the ONU vendor.' + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 1..N + type: array + minItems: 1 + items: + type: string + aniId: + type: array + items: + $ref: '#/components/schemas/AniId' + required: + - onuId + - aniId + CmIf1: + description: '' + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: 1..N + type: object + minItems: 1 + properties: + cmId: + description: The Cable Modem identifier. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + ifIndex: + description: The MAC Domain interface index of the CM. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 1..N + type: array + minItems: 1 + items: + type: string + cmRegState: + description: "It indicates the CM connectivity state. Enumeration of:\n1 \t= \tnotReady.\n2 \t= \tnotSynchronized.\n3 \t= \tphySynchronized.\n4 \t= \tdsTopologyResolutionInProgress.\n5 \t= \tusParametersAcquired.\n6 \t= \trangingInProgress.\n7 \t= \trangingComplete.\n8 \t= \teaeInProgress.\n9 \t= \tdhcpv4InProgress.\n10 \t= \tdhcpv6InProgress.\n11 \t= \tdhcpV4Complete.\n12 \t= \tdhcpV6Complete.\n13 \t= \ttodEstablished.\n14 \t= \tsecurityEstablished.\n15 \t= \tconfigFileDownloadComplete.\n16 \t= \tregistrationInProgress.\n17 \t= \tregistrationComplete.\n18 \t= \taccessDenied.\n19 \t= \toperational.\n20 \t= \tbpiInit.\n21 \t= \tforwardingDisabled." + x-etsi-mec-origin-type: Enum + x-etsi-mec-cardinality: 1..N + type: array + minItems: 1 + items: + type: string + required: + - cmId + - ifIndex + - cmRegState + _links2: + description: List of hyperlinks related to the resource. + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: '1' + type: object + properties: + self: + description: Self-referring URI. This shall be included in the response from the FAIS. The URI shall be unique within the FAI API as it acts as an ID for the subscription. + x-etsi-mec-origin-type: Uri + x-etsi-mec-cardinality: '1' + type: string + format: uri + required: + - self + AniId1: + description: '' + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: 0..1 + type: object + _links3: + description: 'Hyperlink related to the resource. ' + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: '1' + type: object + properties: + subscription: + # description': URI identifying the subscription for the test notification. + $ref: '#/components/schemas/LinkType' + # x-etsi-mec-origin-type': LinkType + # x-etsi-mec-cardinality': '1' + required: + - subscription + responses: + '200': + description: OK + '204': + description: No Content + '400': + description: 'Bad Request: used to indicate that incorrect parameters were passed to the request.' + content: + application/problem+json: + schema: + $ref: '#/components/schemas/ProblemDetails' + '401': + description: 'Unauthorized: used when the client did not submit credentials.' + content: + application/problem+json: + schema: + $ref: '#/components/schemas/ProblemDetails' + '403': + description: 'Forbidden: operation is not allowed given the current status of the resource.' + content: + application/problem+json: + schema: + $ref: '#/components/schemas/ProblemDetails' + '404': + description: 'Not Found: used when a client provided a URI that cannot be mapped to a valid resource URI.' + content: + application/problem+json: + schema: + $ref: '#/components/schemas/ProblemDetails' + '406': + description: 'Not Acceptable: used to indicate that the server cannot provide the any of the content formats supported by the client.' + content: + application/problem+json: + schema: + $ref: '#/components/schemas/ProblemDetails' + '412': + description: 'Precondition failed: used when a condition has failed during conditional requests, e.g. when using ETags to avoid write conflicts when using PUT' + content: + application/problem+json: + schema: + $ref: '#/components/schemas/ProblemDetails' + '415': + description: 'Unsupported Media Type: used to indicate that the server or the client does not support the content type of the entity body.' + content: + application/problem+json: + schema: + $ref: '#/components/schemas/ProblemDetails' + '422': + description: 'Unprocessable Entity: used to indicate that the server understands the content type of the request entity and that the syntax of the request entity is correct but that the server is unable to process the contained instructions. This error condition can occur if an JSON request body is syntactically correct but semantically incorrect, for example if the target area for the request is considered too large. This error condition can also occur if the capabilities required by the request are not supported.' + content: + application/problem+json: + schema: + $ref: '#/components/schemas/ProblemDetails' + '429': + description: 'Too Many Requests: used when a rate limiter has triggered.' + content: + application/problem+json: + schema: + $ref: '#/components/schemas/ProblemDetails' + parameters: + Query.Customerpremisesinfo: + description: Comma separated list of customer premises information defined in clause 6.2.2. + name: customerpremisesinfo + cardinality: 0..N + in: query + required: false + x-exportParamName: Query.Customerpremisesinfo + schema: + $ref: '#/components/schemas/CpInfo' + Query.Lastmiletech: + description: "Comma separated list of last mile technologies defined in clause\_6.2.2." + name: lastmiletech + cardinality: 0..N + in: query + required: false + x-exportParamName: Query.Lastmiletech + schema: + type: array + items: + type: integer + Query.Interfacetype: + description: Comma separated list of interface types defined in clause 6.2.2. + name: interfacetype + cardinality: 0..N + in: query + required: false + x-exportParamName: Query.Interfacetype + schema: + type: array + items: + type: integer + Query.Dsbw: + description: Comma separated list of the bandwidth (in Mbps) from the network towards the customer site defined in clause 6.2.2. + name: dsbw + cardinality: 0..N + in: query + required: false + x-exportParamName: Query.Dsbw + schema: + type: array + items: + type: integer + Query.Usbw: + description: Comma separated list of the bandwidth (in Mbps) from the customer site towards the network defined in clause 6.2.2. + name: usbw + cardinality: 0..N + in: query + required: false + x-exportParamName: Query.Usbw + schema: + type: array + items: + type: integer + Query.Latency: + description: "Comma separated list of the maximum baseline latency (in ms) between customer site and service edge node defined in clause\_6.2.2." + name: latency + cardinality: 0..N + in: query + required: false + x-exportParamName: Query.Latency + schema: + type: array + items: + type: integer + Query.Gwid: + description: Comma separated list of gateway identifier defined in clause 6.2.3. + name: gwid + cardinality: 0..N + in: query + required: false + x-exportParamName: Query.Gwid + schema: + type: array + items: + type: string + Query.Deviceid: + description: Comma separated list of device identifier defined in clause 6.2.3. + name: deviceid + cardinality: 0..N + in: query + required: false + x-exportParamName: Query.Deviceid + schema: + type: array + items: + type: string + Query.Devicestatus: + description: Comma separated list of device status defined in clause 6.2.3. + name: devicestatus + cardinality: 0..N + in: query + required: false + x-exportParamName: Query.Devicestatus + schema: + type: array + items: + type: integer + Query.Customerpremisesinfo1: + description: Comma separated list of customer premises information defined in clause 6.2.4. + name: customerpremisesinfo + cardinality: 0..N + in: query + required: false + x-exportParamName: Query.Customerpremisesinfo1 + schema: + $ref: '#/components/schemas/CpInfo' + Query.Cmid: + description: Comma separated list of Cable Modem identifiers defined in clause 6.2.4. + name: cmid + cardinality: 0..N + in: query + required: false + x-exportParamName: Query.Cmid + schema: + type: array + items: + type: string + Query.Customerpremisesinfo2: + description: Comma separated list of customer premises information defined in clause 6.2.5. + name: customerpremisesinfo + cardinality: 0..N + in: query + required: false + x-exportParamName: Query.Customerpremisesinfo2 + schema: + $ref: '#/components/schemas/CpInfo' + Query.Ponys_id: + description: Comma separated list of optical system identifiers defined in clause 6.2.5. + name: ponys_id + cardinality: 0..N + in: query + required: false + x-exportParamName: Query.Ponys_id + schema: + type: array + items: + type: string + Query.Onuid: + description: Comma separated list of optical network unit identifiers defined in clause 6.2.5. + name: onuid + cardinality: 0..N + in: query + required: false + x-exportParamName: Query.Onuid + schema: + type: array + items: + type: string + Query.Subscription_type: + description: "Query parameter to filter on a specific subscription type. Permitted values:\nonu_alarm\tOptical Network Unit alarm\ndevice_abnormal_alert\tDevice abnormal alert\ncm_connectivity_state\tCable Modem connectivity state \nani_alarm\tAccess Node Interface alarm." + name: subscription_type + cardinality: 0..1 + in: query + required: false + x-exportParamName: Query.Subscription_type + schema: + type: string + diff --git a/Auto_Generated_OAS_Output_Files/Auto_Generated_OAS_Output_Files/gs_mec030v030101p.yaml b/Auto_Generated_OAS_Output_Files/Auto_Generated_OAS_Output_Files/gs_mec030v030101p.yaml new file mode 100644 index 0000000..763ea0d --- /dev/null +++ b/Auto_Generated_OAS_Output_Files/Auto_Generated_OAS_Output_Files/gs_mec030v030101p.yaml @@ -0,0 +1,1937 @@ +openapi: 3.1.0 +jsonSchemaDialect: https://json-schema.org/draft/2020-12/schema +info: + contact: + url: https://forge.etsi.org/rep/mec/gs030-vis-api + title: ETSI GS MEC 030 V2X Information Service API + description: The ETSI MEC ISG V2X Information Service API described using OpenAPI. + license: + name: BSD-3-Clause + url: https://forge.etsi.org/legal-matters + version: 3.1.1 +paths: + /queries/uu_unicast_provisioning_info: + get: + summary: Retrieve provisioning information required for V2X communication over Uu unicast. + description: The GET method is used to query provisioning information for V2X communication over Uu unicast. + operationId: uuunicastprovisioninginfoGET + tags: + - queries + parameters: + - $ref: '#/components/parameters/Query.Location_info' + responses: + '200': + description: Upon success, a response body containing the Uu unicast provisioning information is returned. + content: + application/json: + schema: + type: object + properties: + UuUnicastProvisioningInfo: + $ref: '#/components/schemas/UuUnicastProvisioningInfo' + '400': + $ref: '#/components/responses/400' + '401': + $ref: '#/components/responses/401' + '403': + $ref: '#/components/responses/403' + '404': + $ref: '#/components/responses/404' + '406': + $ref: '#/components/responses/406' + '429': + $ref: '#/components/responses/429' + /queries/uu_mbms_provisioning_info: + get: + summary: Retrieve provisioning information required for V2X communication over Uu MBMS. + description: The GET method is used to query provisioning information for V2X communication over Uu MBMS. + operationId: uumbmsprovisioninginfoGET + tags: + - queries + parameters: + - $ref: '#/components/parameters/Query.Location_info1' + responses: + '200': + description: Upon success, a response body containing the Uu MBMS provisioning information is returned. + content: + application/json: + schema: + type: object + properties: + UuMbmsProvisioningInfo: + $ref: '#/components/schemas/UuMbmsProvisioningInfo' + '400': + $ref: '#/components/responses/400' + '401': + $ref: '#/components/responses/401' + '403': + $ref: '#/components/responses/403' + '404': + $ref: '#/components/responses/404' + '406': + $ref: '#/components/responses/406' + '429': + $ref: '#/components/responses/429' + /queries/pc5_provisioning_info: + get: + summary: Retrieve provisioning information required for V2X communication over PC5. + description: The GET method is used to query provisioning information for V2X communication over PC5. + operationId: pc5provisioninginfoGET + tags: + - queries + parameters: + - $ref: '#/components/parameters/Query.Location_info2' + responses: + '200': + description: Upon success, a response body containing the PC5 provisioning information is returned. + content: + application/json: + schema: + type: object + properties: + Pc5ProvisioningInfo: + $ref: '#/components/schemas/Pc5ProvisioningInfo' + '400': + $ref: '#/components/responses/400' + '401': + $ref: '#/components/responses/401' + '403': + $ref: '#/components/responses/403' + '404': + $ref: '#/components/responses/404' + '406': + $ref: '#/components/responses/406' + '429': + $ref: '#/components/responses/429' + /provide_v2x_msg_distribution_server_info: + post: + summary: Provide V2X Message Distribution Servers information required for direct connection with a service consumer. + description: The POST method is used to request the information about available V2X Message Distribution Servers that can be supported by the service consumer (e.g. a MEC application). + operationId: providev2xmsgdistributionserverinfoPOST + tags: + - queries + requestBody: + description: Entity body in the request contains the information of the V2X Message Distribution Servers supported by the service consumer for direct communication. + required: true + content: + application/json: + schema: + type: object + properties: + V2xMsgDistributionServerInfo: + $ref: '#/components/schemas/V2xMsgDistributionServerInfo' + responses: + '200': + description: The response body shall contain the connection information of the V2X Message Distribution Servers that the service consumer can use for direct connection. + content: + application/json: + schema: + type: object + properties: + V2xMsgDistributionServerInfo: + $ref: '#/components/schemas/V2xMsgDistributionServerInfo' + '400': + $ref: '#/components/responses/400' + '401': + $ref: '#/components/responses/401' + '403': + $ref: '#/components/responses/403' + '404': + $ref: '#/components/responses/404' + /provide_predicted_qos: + post: + summary: Provide predicted QoS based on route information. + description: The POST method is used to request the predicted QoS correspondent to potential routes of a vehicular UE. + operationId: providepredictedqosPOST + tags: + - qos + requestBody: + description: Entity body in the request contains the predicted QoS as requested by the VIS service consumer. + required: true + content: + application/json: + schema: + type: object + properties: + PredictedQos: + $ref: '#/components/schemas/PredictedQos' + responses: + '200': + description: The response body shall contain the predicted QoS corresponding to potential routes of a vehicular UE. + content: + application/json: + schema: + type: object + properties: + PredictedQos: + $ref: '#/components/schemas/PredictedQos' + '400': + $ref: '#/components/responses/400' + '401': + $ref: '#/components/responses/401' + '403': + $ref: '#/components/responses/403' + '404': + $ref: '#/components/responses/404' + /publish_v2x_message: + post: + summary: Publish a V2X message to VIS. + description: The POST method is used to publish a V2X message. + operationId: publishv2xmessagePOST + tags: + - v2x_message + requestBody: + description: Entity body in the request contains the V2X message to be published. + required: true + content: + application/json: + schema: + type: object + properties: + V2xMsgPublication: + $ref: '#/components/schemas/V2xMsgPublication' + responses: + '204': + description: Upon success, a response 204 No Content without any response body is returned. + content: + application/json: + schema: + type: object + properties: {} + '400': + $ref: '#/components/responses/400' + '401': + $ref: '#/components/responses/401' + '403': + $ref: '#/components/responses/403' + '404': + $ref: '#/components/responses/404' + '406': + $ref: '#/components/responses/406' + '429': + $ref: '#/components/responses/429' + /subscriptions: + get: + summary: Retrieve a list of active subscriptions for this subscriber. + description: The GET method is used to request information about the subscriptions for this requestor. Upon success, the response contains an entity body with the list of links to the subscriptions that are present for the requestor. + operationId: subscriptionsGET + tags: + - subscriptions + parameters: + - $ref: '#/components/parameters/Query.Subscription_type' + responses: + '200': + description: Upon success, a response body containing the list of links to requestor's subscriptions is returned. + content: + application/json: + schema: + type: object + properties: + SubscriptionLinkList: + $ref: '#/components/schemas/SubscriptionLinkList' + '400': + $ref: '#/components/responses/400' + '401': + $ref: '#/components/responses/401' + '403': + $ref: '#/components/responses/403' + '404': + $ref: '#/components/responses/404' + '406': + $ref: '#/components/responses/406' + '429': + $ref: '#/components/responses/429' + post: + summary: Create a new subscription. + description: The POST method is used to create a new subscription to VIS notifications. Upon success, the response contains an entity body describing the created subscription. + operationId: subscriptionsPOST + tags: + - subscriptions + requestBody: + description: "The entity body in the request contains the data type of the specific VIS event subscription that is to be created, where the data type options are listed below and defined in clause 6.3:\nProvChgUuUniSubscription\nProvChgUuMbmsSubscription\nProvChgPc5Subscription\nV2xMsgSubscription \nPredQosSubscription." + content: + application/json: + schema: + type: object + properties: + ProvChgUuUniSubscription: + $ref: '#/components/schemas/ProvChgUuUniSubscription' + responses: + '201': + description: 'Indicates successful resource creation, where the resource URI shall be returned in the HTTP Location header field. + + + In the returned NotificationSubscription structure, the created subscription is described using the appropriate data type from the list below and as defined in clause 6.3: + + ProvChgUuUniSubscription + + ProvChgUuMbmsSubscription + + ProvChgPc5Subscription + + V2xMsgSubscription + + PredQosSubscription.' + content: + application/json: + schema: + type: object + properties: + ProvChgUuUniSubscription: + $ref: '#/components/schemas/ProvChgUuUniSubscription' + '400': + $ref: '#/components/responses/400' + '401': + $ref: '#/components/responses/401' + '403': + $ref: '#/components/responses/403' + '404': + $ref: '#/components/responses/404' + '406': + $ref: '#/components/responses/406' + '415': + $ref: '#/components/responses/415' + '422': + $ref: '#/components/responses/422' + '429': + $ref: '#/components/responses/429' + callbacks: + notification: + post: + summary: Callback POST used to send a notification + description: Subscription notification + operationId: notificationPOST + requestBody: + description: Subscription notification + required: true + content: + application/json: + schema: + type: object + properties: + subscriptionNotification: + oneOf: + - $ref: '#/components/schemas/ProvChgUuUniSubscription' + - $ref: '#/components/schemas/ProvChgUuMbmsSubscription' + - $ref: '#/components/schemas/ProvChgPc5Subscription' + - $ref: '#/components/schemas/V2xMsgSubscription' + - $ref: '#/components/schemas/PredQosSubscription' + /subscriptions/{subscriptionId}: + get: + summary: Retrieve information on current specific subscription. + description: The GET method is used to retrieve information about this subscription. Upon success, the response contains an entity body with the data type describing the subscription. + operationId: subscriptionsByIdGET + tags: + - subscriptions + responses: + '200': + description: "Upon success, a response body containing the data type describing the specific RNI event subscription is returned. The allowed data types for subscriptions are defined in clause\_6.3 and are as follows:\nProvChgUuUniSubscription\nProvChgUuMbmsSubscription\nProvChgPc5Subscription\nV2xMsgSubscription\nPredQosSubscription." + content: + application/json: + schema: + type: object + properties: + ProvChgUuUniSubscription: + $ref: '#/components/schemas/ProvChgUuUniSubscription' + '400': + $ref: '#/components/responses/400' + '401': + $ref: '#/components/responses/401' + '403': + $ref: '#/components/responses/403' + '404': + $ref: '#/components/responses/404' + '406': + $ref: '#/components/responses/406' + '429': + $ref: '#/components/responses/429' + put: + summary: Modify existing subscription by sending a new data structure. + description: The PUT method is used to update the existing subscription. PUT method in this case has "replace" semantics. Upon successful operation, the target resource is updated with a new data type received within the message body of the PUT request. + operationId: subscriptionsByIdPUT + tags: + - subscriptions + requestBody: + description: 'New NotificationSubscription is included as entity body of the request. The allowed data types for subscriptions are defined in clause 6.3 and are as follows: + + ProvChgUuUniSubscription + + ProvChgUuMbmsSubscription + + ProvChgPc5Subscription + + V2xMsgSubscription + + PredQosSubscription.' + content: + application/json: + schema: + type: object + properties: + ProvChgUuUniSubscription: + $ref: '#/components/schemas/ProvChgUuUniSubscription' + responses: + '200': + description: "Upon success, a response body containing the data type describing the updated subscription is returned. The allowed data types for subscriptions are defined in clause\_6.3 and are as follows:\nProvChgUuUniSubscription\nProvChgUuMbmsSubscription\nProvChgPc5Subscription\nV2xMsgSubscription\nPredQosSubscription." + content: + application/json: + schema: + type: object + properties: + ProvChgUuUniSubscription: + $ref: '#/components/schemas/ProvChgUuUniSubscription' + '400': + $ref: '#/components/responses/400' + '401': + $ref: '#/components/responses/401' + '403': + $ref: '#/components/responses/403' + '404': + $ref: '#/components/responses/404' + '406': + $ref: '#/components/responses/406' + '412': + $ref: '#/components/responses/412' + '422': + $ref: '#/components/responses/422' + '429': + $ref: '#/components/responses/429' + delete: + summary: Cancel the existing subscription. + description: The DELETE method is used to cancel the existing subscription. Cancellation can be made by deleting the resource that represents the existing subscription. + operationId: subscriptionsByIdDELETE + tags: + - subscriptions + responses: + '204': + $ref: '#/components/responses/204' + '401': + $ref: '#/components/responses/401' + '403': + $ref: '#/components/responses/403' + '404': + $ref: '#/components/responses/404' + '429': + $ref: '#/components/responses/429' +components: + schemas: + ProblemDetails: + type: object + properties: + type: + type: string + format: uri + description: A URI reference according to IETF RFC 3986 that identifies the problem type + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: URI + title: + type: string + description: A short, human-readable summary of the problem type + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: String + status: + type: integer + format: uint32 + description: The HTTP status code for this occurrence of the problem + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: Uint32 + detail: + type: string + description: A human-readable explanation specific to this occurrence of the problem + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: String + instance: + type: string + format: uri + description: A URI reference that identifies the specific occurrence of the problem + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: URI + Integer: + NOTE 3: The message protocol version of ETSI shall be used as specified in ETSI TS 102 894-2 [6], clause A.114. + UuUnicastProvisioningInfo: + x-etsi-ref: 6.2.2 + type: object + properties: + timeStamp: + # description': Time stamp. + $ref: '#/components/schemas/TimeStamp' + # x-etsi-mec-origin-type': TimeStamp + # x-etsi-mec-cardinality': 0..1 + proInfoUuUnicast: + type: array + items: + $ref: '#/components/schemas/ProInfoUuUnicast' + required: + - proInfoUuUnicast + UuMbmsProvisioningInfo: + x-etsi-ref: 6.2.3 + type: object + properties: + timeStamp: + # description': Time stamp. + $ref: '#/components/schemas/TimeStamp' + # x-etsi-mec-origin-type': TimeStamp + # x-etsi-mec-cardinality': 0..1 + proInfoUuMbms: + type: array + items: + $ref: '#/components/schemas/ProInfoUuMbms' + required: + - proInfoUuMbms + Pc5ProvisioningInfo: + x-etsi-ref: 6.2.4 + type: object + properties: + timeStamp: + # description': Time stamp. + $ref: '#/components/schemas/TimeStamp' + # x-etsi-mec-origin-type': TimeStamp + # x-etsi-mec-cardinality': 0..1 + proInfoPc5: + type: array + items: + $ref: '#/components/schemas/ProInfoPc5' + required: + - proInfoPc5 + V2xMsgDistributionServerInfo: + x-etsi-ref: 6.2.5 + type: object + properties: + v2xMsgDistributionServer: + description: Describes the information of the V2X Message Distribution Servers supported by the service consumer for direct communication. + x-etsi-mec-origin-type: V2xMsgDistributionServer + x-etsi-mec-cardinality: 1..N + type: array + minItems: 1 + items: + $ref: '#/components/schemas/V2xMsgDistributionServer' + locationInfo: + description: Location information to identify a particular geographical area of interest to the service consumer for receiving V2X messages. + x-etsi-mec-origin-type: LocationInfo + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + $ref: '#/components/schemas/LocationInfo' + required: + - v2xMsgDistributionServer + PredictedQos: + x-etsi-ref: 6.2.6 + type: object + properties: + predictionTarget: + type: string + description: "Indicates target of QoS prediction. Valid values:\n1.\tSINGLE_UE_PREDICTION: \nThe predicted QoS is to be intended as journey-specific for a requesting vehicular UE.\n2.\tE2E_APPLICATION_INSTANCE_PREDICTION:\nThe E2E user plane link between two V2X application instances, where one instance relates to a single vehicular UE and the other instance to an application instance within another network, i.e. either another vehicular UE as in the V2N2V case, or an infrastructure element as in the V2N2I case.\nShall only be included in the request." + enum: + - SEE_DESCRIPTION + x-etsi-mec-origin-type: Enum_inlined + x-etsi-mec-cardinality: '1' + timeGranularity: + # description': Time granularity of visiting a location. + $ref: '#/components/schemas/TimeStamp' + # x-etsi-mec-origin-type': TimeStamp + # x-etsi-mec-cardinality': 0..1 + locationGranularity: + description: Granularity of visited location. Measured in meters. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + noticePeriod: + # description': Information on when the predicted QoS is needed at the service consumer interface. The value of the notice period depends on the application reaction that has to be triggered by the service consumer. The value of the notice period shall be equal or a multiple of the timeGranularity, if it is present. If present, it shall only be included in the request. + $ref: '#/components/schemas/TimeStamp' + # x-etsi-mec-origin-type': TimeStamp + # x-etsi-mec-cardinality': 0..1 + predictionArea: + $ref: '#/components/schemas/PredictionArea' + routes: + type: array + items: + $ref: '#/components/schemas/Routes' + qos: + $ref: '#/components/schemas/Qos' + required: + - predictionTarget + - locationGranularity + - qos + x-etsi-notes: "NOTE:\tThe data type of locationGranularity is a string which indicates the granularity of a visited location by means of latitudinal and longitudinal margins." + V2xMsgPublication: + x-etsi-ref: 6.2.7 + type: object + properties: + msgPropertiesValues: + # description': List of message properties that is associated to the V2X message publication that can be used for filtering messages at the reception of the V2X message. + $ref: '#/components/schemas/V2xMsgPropertiesValues' + # x-etsi-mec-origin-type': V2xMsgPropertiesValues + # x-etsi-mec-cardinality': '1' + msgRepresentationFormat: + description: The representation format of the binary V2X message, for example base64 or hexadecimal representation. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + msgContent: + description: Published V2X message content. Its format is defined by the standardization organization indicated by the attribute stdOrganization of the msgPropertiesValues attribute. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + required: + - msgPropertiesValues + - msgRepresentationFormat + - msgContent + ProvChgUuUniSubscription: + x-etsi-ref: 6.3.2 + type: object + properties: + subscriptionType: + description: Shall be set to "ProvChgUuUniSubscription". + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + callbackReference: + description: URI exposed by the client on which to receive notifications via HTTP. See note. + x-etsi-mec-origin-type: Uri + x-etsi-mec-cardinality: 0..1 + type: string + format: uri + requestTestNotification: + description: "Shall be set to TRUE by the service consumer to request a test notification via HTTP on the callbackReference URI, as described in ETSI GS\_MEC\_009 [9], clause 6.12a.\nDefault: FALSE." + x-etsi-mec-origin-type: Boolean + x-etsi-mec-cardinality: 0..1 + type: boolean + websockNotifConfig: + # description': Provides details to negotiate and signal the use of a Websocket connection between VIS and the service consumer for notifications. See note. + $ref: '#/components/schemas/WebsockNotifConfig' + # x-etsi-mec-origin-type': WebsockNotifConfig + # x-etsi-mec-cardinality': 0..1 + _links: + $ref: '#/components/schemas/_links' + filterCriteria: + $ref: '#/components/schemas/FilterCriteria' + expiryDeadline: + # description': Time stamp. + $ref: '#/components/schemas/TimeStamp' + # x-etsi-mec-origin-type': TimeStamp + # x-etsi-mec-cardinality': 0..1 + required: + - subscriptionType + - filterCriteria + x-etsi-notes: "NOTE:\tAt least one of callbackReference and websockNotifConfig shall be provided by the service consumer. If both are provided, it is up to VIS to choose an alternative and return only that alternative in the response, as described in ETSI GS MEC 009 [9], clause 6.12a." + ProvChgUuMbmsSubscription: + x-etsi-ref: 6.3.3 + type: object + properties: + subscriptionType: + description: Shall be set to "ProvChgUuMbmsSubscription". + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + callbackReference: + description: URI exposed by the client on which to receive notifications via HTTP. See note. + x-etsi-mec-origin-type: Uri + x-etsi-mec-cardinality: 0..1 + type: string + format: uri + requestTestNotification: + description: "Shall be set to TRUE by the service consumer to request a test notification via HTTP on the callbackReference URI, as described in ETSI GS\_MEC 009 [9], clause 6.12a.\nDefault: FALSE." + x-etsi-mec-origin-type: Boolean + x-etsi-mec-cardinality: 0..1 + type: boolean + websockNotifConfig: + # description': Provides details to negotiate and signal the use of a Websocket connection between VIS and the service consumer for notifications. See note. + $ref: '#/components/schemas/WebsockNotifConfig' + # x-etsi-mec-origin-type': WebsockNotifConfig + # x-etsi-mec-cardinality': 0..1 + _links: + $ref: '#/components/schemas/_links' + filterCriteria: + $ref: '#/components/schemas/FilterCriteria1' + expiryDeadline: + # description': Time stamp. + $ref: '#/components/schemas/TimeStamp' + # x-etsi-mec-origin-type': TimeStamp + # x-etsi-mec-cardinality': 0..1 + required: + - subscriptionType + - filterCriteria + x-etsi-notes: "NOTE:\tAt least one of callbackReference and websockNotifConfig shall be provided by the service consumer. If both are provided, it is up to VIS to choose an alternative and return only that alternative in the response, as described in ETSI GS MEC 009 [9], clause 6.12a." + ProvChgPc5Subscription: + x-etsi-ref: 6.3.4 + type: object + properties: + subscriptionType: + description: Shall be set to "ProvChgPc5Subscription". + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + callbackReference: + description: URI exposed by the client on which to receive notifications via HTTP. See note. + x-etsi-mec-origin-type: Uri + x-etsi-mec-cardinality: 0..1 + type: string + format: uri + requestTestNotification: + description: "Shall be set to TRUE by the service consumer to request a test notification via HTTP on the callbackReference URI, as described in ETSI GS MEC 009 [9], clause\_6.12a.\nDefault: FALSE." + x-etsi-mec-origin-type: Boolean + x-etsi-mec-cardinality: 0..1 + type: boolean + websockNotifConfig: + # description': Provides details to negotiate and signal the use of a Websocket connection between VIS and the service consumer for notifications. See note. + $ref: '#/components/schemas/WebsockNotifConfig' + # x-etsi-mec-origin-type': WebsockNotifConfig + # x-etsi-mec-cardinality': 0..1 + _links: + $ref: '#/components/schemas/_links' + filterCriteria: + $ref: '#/components/schemas/FilterCriteria2' + expiryDeadline: + # description': Time stamp. + $ref: '#/components/schemas/TimeStamp' + # x-etsi-mec-origin-type': TimeStamp + # x-etsi-mec-cardinality': 0..1 + required: + - subscriptionType + - filterCriteria + x-etsi-notes: "NOTE:\tAt least one of callbackReference and websockNotifConfig shall be provided by the service consumer. If both are provided, it is up to VIS to choose an alternative and return only that alternative in the response, as described in ETSI GS MEC 009 [9], clause 6.12a." + V2xMsgSubscription: + x-etsi-ref: 6.3.5 + type: object + properties: + subscriptionType: + description: Shall be set to "V2xMsgSubscription". + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + callbackReference: + description: URI exposed by the client on which to receive notifications via HTTP. See note. + x-etsi-mec-origin-type: Uri + x-etsi-mec-cardinality: 0..1 + type: string + format: uri + requestTestNotification: + description: "Shall be set to TRUE by the service consumer to request a test notification via HTTP on the callbackReference URI, as described in ETSI GS MEC 009 [9], clause 6.12a. \nDefault: FALSE." + x-etsi-mec-origin-type: Boolean + x-etsi-mec-cardinality: 0..1 + type: boolean + websockNotifConfig: + # description': Provides details to negotiate and signal the use of a Websocket connection between VIS and the service consumer for notifications. See note. + $ref: '#/components/schemas/WebsockNotifConfig' + # x-etsi-mec-origin-type': WebsockNotifConfig + # x-etsi-mec-cardinality': 0..1 + _links: + $ref: '#/components/schemas/_links' + filterCriteria: + # description': List of filtering criteria aimed to filter V2X messages at the reception. Any filtering criteria which is included in the request, shall also be included in the response. + $ref: '#/components/schemas/V2xMsgFilterCriteria' + # x-etsi-mec-origin-type': V2xMsgFilterCriteria + # x-etsi-mec-cardinality': '1' + expiryDeadline: + # description': Time stamp. + $ref: '#/components/schemas/TimeStamp' + # x-etsi-mec-origin-type': TimeStamp + # x-etsi-mec-cardinality': 0..1 + required: + - subscriptionType + - filterCriteria + x-etsi-notes: "NOTE:\tAt least one of callbackReference and websockNotifConfig shall be provided by the service consumer. If both are provided, it is up to VIS to choose an alternative and return only that alternative in the response, as described in ETSI GS MEC 009 [9], clause 6.12a." + PredQosSubscription: + x-etsi-ref: 6.3.6 + type: object + properties: + subscriptionType: + description: Shall be set to "PredQosSubscription". + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + callbackReference: + description: URI exposed by the client on which to receive notifications via HTTP. See note. + x-etsi-mec-origin-type: Uri + x-etsi-mec-cardinality: 0..1 + type: string + format: uri + requestTestNotification: + description: 'Shall be set to TRUE by the service consumer to request a test notification via HTTP on the callbackReference URI, as described in ETSI GS MEC 009 [9], clause 6.12a. + + Default: FALSE.' + x-etsi-mec-origin-type: Boolean + x-etsi-mec-cardinality: 0..1 + type: boolean + websockNotifConfig: + # description': Provides details to negotiate and signal the use of a Websocket connection between VIS and the service consumer for notifications. See note. + $ref: '#/components/schemas/WebsockNotifConfig' + # x-etsi-mec-origin-type': WebsockNotifConfig + # x-etsi-mec-cardinality': 0..1 + _links: + $ref: '#/components/schemas/_links' + filterCriteria: + # description': List of filtering criteria aimed to filter QoS predictions at the reception. Any filtering criteria included in the request, shall also be included in the response. + $ref: '#/components/schemas/QosPredFilterCriteria' + # x-etsi-mec-origin-type': QosPredFilterCriteria + # x-etsi-mec-cardinality': '1' + expiryDeadline: + # description': Time stamp. + $ref: '#/components/schemas/TimeStamp' + # x-etsi-mec-origin-type': TimeStamp + # x-etsi-mec-cardinality': 0..1 + required: + - subscriptionType + - filterCriteria + x-etsi-notes: "NOTE:\tAt least one of callbackReference and websockNotifConfig shall be provided by the service consumer. If both are provided, it is up to VIS to choose an alternative and return only that alternative in the response, as described in ETSI GS MEC 009 [9], clause 6.12a." + SubscriptionLinkList: + x-etsi-ref: 6.3.7 + type: object + properties: + _links: + $ref: '#/components/schemas/_links1' + required: + - _links + ProvChgUuUniNotification: + x-etsi-ref: 6.4.2 + type: object + properties: + notificationType: + description: Shall be set to "ProvChgUuUniNotification". + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + timeStamp: + # description': Time stamp. + $ref: '#/components/schemas/TimeStamp' + # x-etsi-mec-origin-type': TimeStamp + # x-etsi-mec-cardinality': 0..1 + locationInfo: + # description': Location information to identify a cell of a base station or a particular geographical area. + $ref: '#/components/schemas/LocationInfo' + # x-etsi-mec-origin-type': LocationInfo + # x-etsi-mec-cardinality': '1' + v2xApplicationServer: + # description': V2X Application Server address (consisting of IP address and UDP port) for unicast. + $ref: '#/components/schemas/V2xApplicationServer' + # x-etsi-mec-origin-type': V2xApplicationServer + # x-etsi-mec-cardinality': 0..1 + neighbourCellInfo: + description: The information of the neighbour cells in a visiting PLMN that support V2X communication over Uu unicast. + x-etsi-mec-origin-type: UuUniNeighbourCellInfo + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + $ref: '#/components/schemas/UuUniNeighbourCellInfo' + required: + - notificationType + - locationInfo + ProvChgUuMbmsNotification: + x-etsi-ref: 6.4.3 + type: object + properties: + notificationType: + description: Shall be set to "ProvChgUuMbmsNotification". + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + timeStamp: + # description': Time stamp. + $ref: '#/components/schemas/TimeStamp' + # x-etsi-mec-origin-type': TimeStamp + # x-etsi-mec-cardinality': 0..1 + locationInfo: + # description': Location information to identify a cell of a base station or a particular geographical area. + $ref: '#/components/schemas/LocationInfo' + # x-etsi-mec-origin-type': LocationInfo + # x-etsi-mec-cardinality': '1' + v2xServerUsd: + # description': User Service Description for V2X Application Server is used to configure the UE for receiving local V2X Application Server information when it is provided over MBMS. + $ref: '#/components/schemas/V2xServerUsd' + # x-etsi-mec-origin-type': V2xServerUsd + # x-etsi-mec-cardinality': 0..1 + neighbourCellInfo: + description: The information of the neighbour cells in a visiting PLMN that support V2X communication over Uu MBMS. + x-etsi-mec-origin-type: UuMbmsNeighbourCellInfo + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + $ref: '#/components/schemas/UuMbmsNeighbourCellInfo' + required: + - notificationType + - locationInfo + ProvChgPc5Notification: + x-etsi-ref: 6.4.4 + type: object + properties: + notificationType: + description: Shall be set to "ProvChgPc5Notification". + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + timeStamp: + # description': Time stamp. + $ref: '#/components/schemas/TimeStamp' + # x-etsi-mec-origin-type': TimeStamp + # x-etsi-mec-cardinality': 0..1 + locationInfo: + # description': Location information to identify a cell of a base station or a particular geographical area. + $ref: '#/components/schemas/LocationInfo' + # x-etsi-mec-origin-type': LocationInfo + # x-etsi-mec-cardinality': '1' + dstLayer2Id: + description: For sidelink communication, the Destination Layer-2 ID is set to the ProSe Layer-2 Group ID or Prose UE ID, see ETSI TS 136 321 [15]. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + neighbourCellInfo: + description: The information of the neighbour cells in a visiting PLMN that support V2X communication over PC5. + x-etsi-mec-origin-type: Pc5NeighbourCellInfo + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + $ref: '#/components/schemas/Pc5NeighbourCellInfo' + required: + - notificationType + - locationInfo + V2xMsgNotification: + x-etsi-ref: 6.4.5 + type: object + properties: + notificationType: + description: Shall be set to "V2xMsgNotification". + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + timeStamp: + # description': Date and time of the notification generation. + $ref: '#/components/schemas/TimeStamp' + # x-etsi-mec-origin-type': TimeStamp + # x-etsi-mec-cardinality': '1' + msgPropertiesValues: + # description': List of message properties that is associated to the V2X message. + $ref: '#/components/schemas/V2xMsgPropertiesValues' + # x-etsi-mec-origin-type': V2xMsgPropertiesValues + # x-etsi-mec-cardinality': '1' + msgRepresentationFormat: + description: The representation format of the binary V2X message, for example base64 or hexadecimal representation. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + msgContent: + description: Published V2X message content. The format of the string is defined by the standardization organization indicated by the attribute stdOrganization of the msgPropertiesValues attribute. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + _links: + $ref: '#/components/schemas/_links2' + required: + - notificationType + - timeStamp + - msgPropertiesValues + - msgRepresentationFormat + - msgContent + - _links + TestNotification: + x-etsi-ref: 6.4.6 + type: object + properties: + notificationType: + description: Shall be set to "TestNotification". + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + _links: + $ref: '#/components/schemas/_links3' + required: + - notificationType + - _links + TimeStamp: + x-etsi-ref: 6.5.2 + type: object + properties: + seconds: + description: The seconds part of the time. Time is defined as Unixtime since January 1, 1970, 00:00:00 UTC. + x-etsi-mec-origin-type: Uint32 + x-etsi-mec-cardinality: '1' + type: integer + format: uint32 + nanoSeconds: + description: The nanoseconds part of the time. Time is defined as Unix-time since January 1, 1970, 00:00:00 UTC. + x-etsi-mec-origin-type: Uint32 + x-etsi-mec-cardinality: '1' + type: integer + format: uint32 + required: + - seconds + - nanoSeconds + LocationInfo: + x-etsi-ref: 6.5.3 + type: object + properties: + ecgi: + # description': E-UTRAN CelI Global Identifier of the serving cell + $ref: '#/components/schemas/Ecgi' + # x-etsi-mec-origin-type': Ecgi + # x-etsi-mec-cardinality': 0..1 + geoArea: + $ref: '#/components/schemas/GeoArea' + x-etsi-notes: "NOTE:\tEither ecgi or geoArea shall be present, but not both." + Plmn: + x-etsi-ref: 6.5.4 + type: object + properties: + mcc: + description: The Mobile Country Code part of PLMN Identity. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + mnc: + description: The Mobile Network Code part of PLMN Identity. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + required: + - mcc + - mnc + Ecgi: + x-etsi-ref: 6.5.5 + type: object + properties: + plmn: + # description': Public Land Mobile Network Identity. + $ref: '#/components/schemas/Plmn' + # x-etsi-mec-origin-type': Plmn + # x-etsi-mec-cardinality': '1' + cellId: + # description': The E-UTRAN Cell Identity. + $ref: '#/components/schemas/CellId' + # x-etsi-mec-origin-type': CellId + # x-etsi-mec-cardinality': '1' + required: + - plmn + - cellId + FddInfo: + x-etsi-ref: 6.5.6 + type: object + properties: + ulEarfcn: + # description': '' + $ref: '#/components/schemas/Earfcn' + # x-etsi-mec-origin-type': Earfcn + # x-etsi-mec-cardinality': '1' + dlEarfcn: + # description': '' + $ref: '#/components/schemas/Earfcn' + # x-etsi-mec-origin-type': Earfcn + # x-etsi-mec-cardinality': '1' + ulTransmissionBandwidth: + # description': '' + $ref: '#/components/schemas/TransmissionBandwidth' + # x-etsi-mec-origin-type': TransmissionBandwidth + # x-etsi-mec-cardinality': '1' + dlTransmissionBandwidth: + # description': '' + $ref: '#/components/schemas/TransmissionBandwidth' + # x-etsi-mec-origin-type': TransmissionBandwidth + # x-etsi-mec-cardinality': '1' + required: + - ulEarfcn + - dlEarfcn + - ulTransmissionBandwidth + - dlTransmissionBandwidth + TddInfo: + x-etsi-ref: 6.5.7 + type: object + properties: + earfcn: + # description': '' + $ref: '#/components/schemas/Earfcn' + # x-etsi-mec-origin-type': Earfcn + # x-etsi-mec-cardinality': '1' + transmissionBandwidth: + # description': '' + $ref: '#/components/schemas/TransmissionBandwidth' + # x-etsi-mec-origin-type': TransmissionBandwidth + # x-etsi-mec-cardinality': '1' + subframeAssignment: + description: Uplink-downlink subframe configuration information. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + required: + - earfcn + - transmissionBandwidth + - subframeAssignment + V2xApplicationServer: + x-etsi-ref: 6.5.8 + type: object + properties: + ipAddress: + description: '' + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + udpPort: + description: '' + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + required: + - ipAddress + - udpPort + UuUniNeighbourCellInfo: + x-etsi-ref: 6.5.9 + type: object + properties: + plmn: + # description': Public Land Mobile Network Identity. + $ref: '#/components/schemas/Plmn' + # x-etsi-mec-origin-type': Plmn + # x-etsi-mec-cardinality': '1' + ecgi: + # description': E-UTRAN CelI Global Identifier. + $ref: '#/components/schemas/Ecgi' + # x-etsi-mec-origin-type': Ecgi + # x-etsi-mec-cardinality': '1' + pci: + description: Physical Cell Identifier. + x-etsi-mec-origin-type: Integer + x-etsi-mec-cardinality: '1' + type: integer + fddInfo: + # description': Information for FDD operation. + $ref: '#/components/schemas/FddInfo' + # x-etsi-mec-origin-type': FddInfo + # x-etsi-mec-cardinality': '1' + tddInfo: + # description': Information for TDD operation. + $ref: '#/components/schemas/TddInfo' + # x-etsi-mec-origin-type': TddInfo + # x-etsi-mec-cardinality': '1' + required: + - plmn + - ecgi + - pci + - fddInfo + - tddInfo + V2xServerUsd: + x-etsi-ref: 6.5.10 + type: object + properties: + tmgi: + $ref: '#/components/schemas/Tmgi' + serviceAreaIdentifier: + description: A list of service area identifier for the applicable MBMS broadcast area. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 1..N + type: array + minItems: 1 + items: + type: string + sdpInfo: + $ref: '#/components/schemas/SdpInfo' + required: + - tmgi + - serviceAreaIdentifier + - sdpInfo + UuMbmsNeighbourCellInfo: + x-etsi-ref: 6.5.11 + type: object + properties: + plmn: + # description': Public Land Mobile Network Identity. + $ref: '#/components/schemas/Plmn' + # x-etsi-mec-origin-type': Plmn + # x-etsi-mec-cardinality': '1' + ecgi: + # description': E-UTRAN CelI Global Identifier. + $ref: '#/components/schemas/Ecgi' + # x-etsi-mec-origin-type': Ecgi + # x-etsi-mec-cardinality': '1' + pci: + description: Physical Cell Identifier. + x-etsi-mec-origin-type: Integer + x-etsi-mec-cardinality: '1' + type: integer + fddInfo: + # description': Information for FDD operation. + $ref: '#/components/schemas/FddInfo' + # x-etsi-mec-origin-type': FddInfo + # x-etsi-mec-cardinality': '1' + tddInfo: + # description': Information for TDD operation. + $ref: '#/components/schemas/TddInfo' + # x-etsi-mec-origin-type': TddInfo + # x-etsi-mec-cardinality': '1' + mbmsServiceAreaIdentity: + description: Supported MBMS Service Area Identities in the cell. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 1..N + type: array + minItems: 1 + items: + type: string + required: + - plmn + - ecgi + - pci + - fddInfo + - tddInfo + - mbmsServiceAreaIdentity + Pc5NeighbourCellInfo: + x-etsi-ref: 6.5.12 + type: object + properties: + plmn: + # description': Public Land Mobile Network Identity. + $ref: '#/components/schemas/Plmn' + # x-etsi-mec-origin-type': Plmn + # x-etsi-mec-cardinality': '1' + ecgi: + # description': E-UTRAN CelI Global Identifier. + $ref: '#/components/schemas/Ecgi' + # x-etsi-mec-origin-type': Ecgi + # x-etsi-mec-cardinality': '1' + siV2xConfig: + # description': V2X sidelink communication configuration, as defined in ETSI TS 136 331 [14]. + $ref: '#/components/schemas/SystemInformationBlockType21' + # x-etsi-mec-origin-type': SystemInformationBlockType21 + # x-etsi-mec-cardinality': '1' + required: + - plmn + - ecgi + - siV2xConfig + LinkType: + x-etsi-ref: 6.5.13 + type: object + properties: + href: + description: URI referring to a resource + x-etsi-mec-origin-type: Uri + x-etsi-mec-cardinality: '1' + type: string + format: uri + required: + - href + V2xMsgPropertiesValues: + x-etsi-ref: 6.5.14 + type: object + properties: + stdOrganization: + type: string + description: 'Standardization organization which defines the published V2X message type: + + ETSI: European Telecommunications Standards Institute. + + See note 1.' + enum: + - SEE_DESCRIPTION + x-etsi-mec-origin-type: Enum + x-etsi-mec-cardinality: '1' + msgType: + type: string + description: Published V2X message type. Its value is defined by the standardization organization indicated by the attribute stdOrganization. See note 2. + enum: + - SEE_DESCRIPTION + x-etsi-mec-origin-type: Enum + x-etsi-mec-cardinality: '1' + msgProtocolVersion: + description: Protocol version of the V2X message (0..255). See note 3. + x-etsi-mec-origin-type: Integer + x-etsi-mec-cardinality: '1' + type: integer + locationInfo: + # description': Location information to identify a cell of a base station or a particular geographical area to which the V2X message can be associated. + $ref: '#/components/schemas/LocationInfo' + # x-etsi-mec-origin-type': LocationInfo + # x-etsi-mec-cardinality': '1' + required: + - stdOrganization + - msgType + - msgProtocolVersion + - locationInfo + x-etsi-notes: "NOTE 1:\tOther standardization organizations could be added as needed.\nNOTE 2:\tThe V2X message types of ETSI shall be used as specified in ETSI TS 102 894-2 [6], clause A.114.\nNOTE 3:\tThe message protocol version of ETSI shall be used as specified in ETSI TS 102 894-2 [6], clause A.114." + V2xMsgFilterCriteria: + x-etsi-ref: 6.5.15 + type: object + properties: + stdOrganization: + type: string + description: "Standardization organization which defines the published V2X message type: \nETSI: European Telecommunications Standards Institute.\nSee note 1." + enum: + - SEE_DESCRIPTION + x-etsi-mec-origin-type: Enum + x-etsi-mec-cardinality: '1' + msgType: + description: Published V2X message type. Its value is defined by the standardization organization indicated by the attribute stdOrganization. See note 2. + x-etsi-mec-origin-type: Enum + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + type: string + msgProtocolVersion: + description: Protocol version of the V2X message (0..255). See note 3. + x-etsi-mec-origin-type: Integer + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + type: integer + locationInfo: + description: Location information to identify a cell of a base station or a particular geographical area to which the V2X message can be associated. + x-etsi-mec-origin-type: LocationInfo + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + $ref: '#/components/schemas/LocationInfo' + required: + - stdOrganization + x-etsi-notes: "NOTE 1:\tOther standardization organizations could be added as needed.\nNOTE 2:\tThe V2X message types of ETSI shall be used as specified in ETSI TS 102 894-2 [6], clause A.114.\nNOTE 3:\tThe message protocol version of ETSI shall be used as specified in ETSI TS 102 894-2 [6], clause A.114." + V2xMsgDistributionServer: + x-etsi-ref: 6.5.16 + type: object + properties: + infoProtocol: + $ref: '#/components/schemas/InfoProtocol' + infoConnection: + $ref: '#/components/schemas/InfoConnection' + required: + - infoProtocol + x-etsi-notes: "NOTE:\tOther application layer protocols (and versions thereof) may be added as needed." + QosPredFilterCriteria: + x-etsi-ref: 6.5.17 + type: object + properties: + streamId: + description: The predicted QoS at the related time and vehicular UE location is provided for a specific data stream. In case of 3GPP network, this is mapped to a QoS flow. Stream needs to also contain the stream ID which, in case of the 3GPP network, can be mapped on to the 5QI or QCI. See note. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + x-etsi-notes: "NOTE:\tOther identifiers could be added as needed." + WebsockNotifConfig: + x-etsi-ref: 6.5.18 + type: object + properties: + websocketUri: + description: Set by VIS to indicate to the service consumer the Websocket URI to be used for delivering notifications. + x-etsi-mec-origin-type: Uri + x-etsi-mec-cardinality: 0..1 + type: string + format: uri + requestWebsocketUri: + description: Set to TRUE by the service consumer to indicate that Websocket delivery is requested. + x-etsi-mec-origin-type: Boolean + x-etsi-mec-cardinality: 0..1 + type: boolean + CellId: + x-etsi-ref: 6.6.2 + type: object + properties: + cellId: + description: E-UTRAN Cell Identity as a bit string (size (28)). + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + required: + - cellId + Earfcn: + x-etsi-ref: 6.6.3 + type: object + properties: + earfcn: + description: E-UTRA Absolute Radio Frequency Channel Number, range (0... 65535) + x-etsi-mec-origin-type: Integer + x-etsi-mec-cardinality: '1' + type: integer + required: + - earfcn + TransmissionBandwidth: + x-etsi-ref: 6.6.4 + type: object + properties: + transmissionBandwidth: + type: integer + description: 'Numeric value corresponding to the transmission bandwidth expressed in units of resource blocks as follows: + + 1 = bw6 (6 resource blocks) + + 2 = bw15 (15 resource blocks) + + 3 = bw25 (25 resource blocks) + + 4 = bw50 (50 resource blocks) + + 5 = bw75 (75 resource blocks) + + 6 = bw100 (100 resource blocks)' + enum: + - SEE_DESCRIPTION + x-etsi-mec-origin-type: Enum + x-etsi-mec-cardinality: '1' + required: + - transmissionBandwidth + ProInfoUuUnicast: + description: The provisioning information per location as defined below. + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: 1..N + type: object + minItems: 1 + properties: + locationInfo: + # description': Location information to identify a cell of a base station or a particular geographical area. + $ref: '#/components/schemas/LocationInfo' + # x-etsi-mec-origin-type': LocationInfo + # x-etsi-mec-cardinality': '1' + v2xApplicationServer: + # description': V2X Application Server address (consisting of IP address and UDP port) for unicast. + $ref: '#/components/schemas/V2xApplicationServer' + # x-etsi-mec-origin-type': V2xApplicationServer + # x-etsi-mec-cardinality': '1' + neighbourCellInfo: + description: The information of the neighbour cells in a visiting PLMN that support V2X communication over Uu unicast. + x-etsi-mec-origin-type: UuUniNeighbourCellInfo + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + $ref: '#/components/schemas/UuUniNeighbourCellInfo' + required: + - locationInfo + - v2xApplicationServer + ProInfoUuMbms: + description: The provisioning information per location as defined below. + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: 1..N + type: object + minItems: 1 + properties: + locationInfo: + # description': Location information to identify a cell of a base station or a particular geographical area. + $ref: '#/components/schemas/LocationInfo' + # x-etsi-mec-origin-type': LocationInfo + # x-etsi-mec-cardinality': '1' + v2xServerUsd: + # description': User Service Description for V2X Application Server is used to configure the UE for receiving local V2X Application Server information when it is provided over MBMS. + $ref: '#/components/schemas/V2xServerUsd' + # x-etsi-mec-origin-type': V2xServerUsd + # x-etsi-mec-cardinality': '1' + neighbourCellInfo: + description: The information of the neighbour cells in a visiting PLMN that support V2X communication over Uu MBMS. + x-etsi-mec-origin-type: UuMbmsNeighbourCellInfo + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + $ref: '#/components/schemas/UuMbmsNeighbourCellInfo' + required: + - locationInfo + - v2xServerUsd + ProInfoPc5: + description: The provisioning information per location as defined below. + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: 1..N + type: object + minItems: 1 + properties: + locationInfo: + # description': Location information to identify a cell of a base station or a particular geographical area. + $ref: '#/components/schemas/LocationInfo' + # x-etsi-mec-origin-type': LocationInfo + # x-etsi-mec-cardinality': '1' + dstLayer2Id: + description: "For sidelink communication, the Destination Layer-2 ID is set to the ProSe Layer-2 Group ID or Prose UE ID, see ETSI TS\_136\_321 [15].\nPLMN operators coordinate to make sure Destination Layer-2 ID(s) for different V2X services are configured in a consistent manner." + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + neighbourCellInfo: + description: The information of the neighbour cells in a visiting PLMN that support V2X communication over PC5. + x-etsi-mec-origin-type: Pc5NeighbourCellInfo + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + $ref: '#/components/schemas/Pc5NeighbourCellInfo' + required: + - locationInfo + - dstLayer2Id + PredictionArea: + description: 'Geographical area including the two ends of the user plane link between two V2X application instances. + + It shall only be present when "predictionTarget" = "E2E_APPLICATION_INSTANCE_PREDICTION".' + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: 0..1 + type: object + properties: + center: + # description': Center of geographical area including the two ends of the user plane link between two V2X application instances. + $ref: '#/components/schemas/LocationInfo' + # x-etsi-mec-origin-type': LocationInfo + # x-etsi-mec-cardinality': '1' + radius: + description: Radius of geographical area including the two ends of the user plane link between two V2X application instances. Measured in meters. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + required: + - center + - radius + RouteInfo: + description: 'Information relating to a specific route. + + The first structure shall relate to the route origin and the last to the route destination. Intermediate waypoint locations may also be provided.' + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: 1..N + type: object + minItems: 1 + properties: + location: + # description': Vehicular UE location. + $ref: '#/components/schemas/LocationInfo' + # x-etsi-mec-origin-type': LocationInfo + # x-etsi-mec-cardinality': '1' + time: + # description': Estimated time at the location. + $ref: '#/components/schemas/TimeStamp' + # x-etsi-mec-origin-type': TimeStamp + # x-etsi-mec-cardinality': 0..1 + required: + - location + Routes: + description: Information relating to the potential routes of a vehicular UE. Shall only be present when "predictionTarget" = "SINGLE_UE_PREDICTION". + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: 0..N + type: object + minItems: 0 + properties: + routeInfo: + type: array + items: + $ref: '#/components/schemas/RouteInfo' + required: + - routeInfo + QosKpi: + description: This structure contains the prediction for a specific QoS KPI related to a given data stream. + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: 1..N + type: object + minItems: 1 + properties: + kpiName: + description: 'The name of the KPI (e.g. latency, UL bitrate, etc.). + + It can be included in the request and in the response.' + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + kpiValue: + description: 'Information on the predicted value for the specific QoS KPI. It can be in different forms, such as upper bound and lower bound, CDF, actual value, etc. + + Shall only be included in the response.' + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + confidence: + description: Confidence of the prediction, as returned by the relevant domain PF. The value and the measurement of the confidence depends on the SLA. Shall only be included in the response. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + required: + - kpiName + - kpiValue + Stream: + description: Predicted QoS at the related time and vehicular UE location for the specific data stream. In case of 3GPP network, this is mapped to a QoS flow. Stream needs to also contain the stream ID that, in case of the 3GPP network, can be mapped on to the 5QI or QCI. + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: 1..N + type: object + minItems: 1 + properties: + qosKpi: + type: array + items: + $ref: '#/components/schemas/QosKpi' + required: + - qosKpi + Qos: + description: Predicted QoS at the related time and vehicular UE location. Shall only be included in the response. + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: '1' + type: object + properties: + stream: + type: array + items: + $ref: '#/components/schemas/Stream' + required: + - stream + _links: + description: Hyperlink related to the resource. This shall be only included in the HTTP responses and in HTTP PUT requests. + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: 0..1 + type: object + properties: + self: + # description': Self-referring URI. The URI shall be unique within the VIS API as it acts as an ID for the subscription. + $ref: '#/components/schemas/LinkType' + # x-etsi-mec-origin-type': LinkType + # x-etsi-mec-cardinality': '1' + required: + - self + FilterCriteria: + description: List of filtering criteria for the subscription. Any filtering criteria from below, which is included in the request, shall also be included in the response. + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: '1' + type: object + properties: + locationInfo: + # description': Location information to identify a cell of a base station or a particular geographical area. + $ref: '#/components/schemas/LocationInfo' + # x-etsi-mec-origin-type': LocationInfo + # x-etsi-mec-cardinality': '1' + v2xApplicationServer: + # description': V2X Application Server address (consisting of IP address and UDP port) for unicast. + $ref: '#/components/schemas/V2xApplicationServer' + # x-etsi-mec-origin-type': V2xApplicationServer + # x-etsi-mec-cardinality': '1' + neighbourCellInfo: + description: The information of the neighbour cells in a visiting PLMN that support V2X communication over Uu unicast. + x-etsi-mec-origin-type: UuUniNeighbourCellInfo + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + $ref: '#/components/schemas/UuUniNeighbourCellInfo' + required: + - locationInfo + - v2xApplicationServer + FilterCriteria1: + description: List of filtering criteria for the subscription. Any filtering criteria from below, which is included in the request, shall also be included in the response. + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: '1' + type: object + properties: + locationInfo: + # description': Location information to identify a cell of a base station or a particular geographical area. + $ref: '#/components/schemas/LocationInfo' + # x-etsi-mec-origin-type': LocationInfo + # x-etsi-mec-cardinality': '1' + v2xServerUsd: + # description': User Service Description for V2X Application Server is used to configure the UE for receiving local V2X Application Server information when it is provided over MBMS. + $ref: '#/components/schemas/V2xServerUsd' + # x-etsi-mec-origin-type': V2xServerUsd + # x-etsi-mec-cardinality': '1' + neighbourCellInfo: + description: The information of the neighbour cells in a visiting PLMN that support V2X communication over Uu MBMS. + x-etsi-mec-origin-type: UuMbmsNeighbourCellInfo + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + $ref: '#/components/schemas/UuMbmsNeighbourCellInfo' + required: + - locationInfo + - v2xServerUsd + FilterCriteria2: + description: List of filtering criteria for the subscription. Any filtering criteria from below, which is included in the request, shall also be included in the response. + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: '1' + type: object + properties: + locationInfo: + # description': Location information to identify a cell of a base station or a particular geographical area. + $ref: '#/components/schemas/LocationInfo' + # x-etsi-mec-origin-type': LocationInfo + # x-etsi-mec-cardinality': '1' + dstLayer2Id: + description: For sidelink communication, the Destination Layer-2 ID is set to the ProSe Layer-2 Group ID or Prose UE ID, see ETSI TS 136 321 [15]. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + neighbourCellInfo: + description: The information of the neighbour cells in a visiting PLMN that support V2X communication over PC5. + x-etsi-mec-origin-type: Pc5NeighbourCellInfo + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + $ref: '#/components/schemas/Pc5NeighbourCellInfo' + required: + - locationInfo + - dstLayer2Id + Subscriptions: + description: The service consumer's subscriptions. + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: 0..N + type: object + minItems: 0 + properties: + href: + description: The URI referring to the subscription. + x-etsi-mec-origin-type: Uri + x-etsi-mec-cardinality: '1' + type: string + format: uri + subscriptionType: + description: Type of the subscription. The values are as defined in the "subscriptionType" attribute for each different V2X information event subscription data type. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + required: + - href + - subscriptionType + _links1: + description: List of hyperlinks related to the resource. + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: '1' + type: object + properties: + self: + # description': URI of this resource. + $ref: '#/components/schemas/LinkType' + # x-etsi-mec-origin-type': LinkType + # x-etsi-mec-cardinality': '1' + subscriptions: + type: array + items: + $ref: '#/components/schemas/Subscriptions' + required: + - self + _links2: + description: Links to resources related to this notification. + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: '1' + type: object + properties: + subscription: + # description': A link to the related subscription. + $ref: '#/components/schemas/LinkType' + # x-etsi-mec-origin-type': LinkType + # x-etsi-mec-cardinality': '1' + required: + - subscription + _links3: + description: Hyperlink related to the resource. + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: '1' + type: object + properties: + subscription: + # description': URI identifying the subscription for the test notification. + $ref: '#/components/schemas/LinkType' + # x-etsi-mec-origin-type': LinkType + # x-etsi-mec-cardinality': '1' + required: + - subscription + GeoArea: + description: Information of a geographical area + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: 0..1 + type: object + properties: + latitude: + description: 'Latitude (DATUM = WGS84) + + -90 to 90 in decimal degree format DDD.ddd' + x-etsi-mec-origin-type: Float + x-etsi-mec-cardinality: '1' + type: number + format: float + longitude: + description: 'Longitude (DATUM = WGS84) + + -180 to 180 in decimal degree format DDD.ddd' + x-etsi-mec-origin-type: Float + x-etsi-mec-cardinality: '1' + type: number + format: float + required: + - latitude + - longitude + Tmgi: + description: Temporary Mobile Group Identity (TMGI), which is used within MBMS to uniquely identify Multicast and Broadcast bearer services. + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: '' + type: object + properties: + mbmsServiceId: + description: MBMS Service ID consisting of three octets. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + mcc: + description: The Mobile Country Code part of PLMN Identity. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + mnc: + description: The Mobile Network Code part of PLMN Identity. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + required: + - mbmsServiceId + - mcc + - mnc + SdpInfo: + description: SDP with IP multicast address and port number used for V2X communication via MBMS. + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: '1' + type: object + properties: + ipMulticastAddress: + description: '' + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + portNumber: + description: '' + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + required: + - ipMulticastAddress + - portNumber + InfoProtocol: + description: Specifics of the application layer protocol of V2X Message Distribution Server. + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: '1' + type: object + properties: + msgProtocol: + description: 'Numerical value corresponding to the application layer protocol supported by the service consumer. For the msgProtocol, the following values are currently defined (see note): + + 0 = MQTT v3.1.0 + + 1 = MQTT v3.1.1 + + 2 = MQTT v5 + + 3 = MQTT-SN + + 4 = AMQP 1.0' + x-etsi-mec-origin-type: Enum + x-etsi-mec-cardinality: 1..N + type: array + minItems: 1 + items: + type: integer + protImplementation: + description: "Implementation specifics of application layer protocol, e.g.\_programming language." + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + required: + - msgProtocol + - protImplementation + InfoConnection: + description: Connection information of the V2X Message Distribution Server the service consumer can use for direct connection. Shall only be included in the response. + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: 0..1 + type: object + properties: + ipAddress: + description: IP address of the V2X Message Distribution Server. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + port_number: + description: Port number of the V2X Message Distribution Server. + x-etsi-mec-origin-type: Integer + x-etsi-mec-cardinality: '1' + type: integer + required: + - ipAddress + - port_number + responses: + '200': + description: OK + '204': + description: No Content + '400': + description: 'Bad Request: used to indicate that incorrect parameters were passed to the request.' + content: + application/problem+json: + schema: + $ref: '#/components/schemas/ProblemDetails' + '401': + description: 'Unauthorized: used when the client did not submit credentials.' + content: + application/problem+json: + schema: + $ref: '#/components/schemas/ProblemDetails' + '403': + description: 'Forbidden: operation is not allowed given the current status of the resource.' + content: + application/problem+json: + schema: + $ref: '#/components/schemas/ProblemDetails' + '404': + description: 'Not Found: used when a client provided a URI that cannot be mapped to a valid resource URI.' + content: + application/problem+json: + schema: + $ref: '#/components/schemas/ProblemDetails' + '406': + description: 'Not Acceptable: used to indicate that the server cannot provide the any of the content formats supported by the client.' + content: + application/problem+json: + schema: + $ref: '#/components/schemas/ProblemDetails' + '412': + description: 'Precondition failed: used when a condition has failed during conditional requests, e.g. when using ETags to avoid write conflicts when using PUT' + content: + application/problem+json: + schema: + $ref: '#/components/schemas/ProblemDetails' + '415': + description: 'Unsupported Media Type: used to indicate that the server or the client does not support the content type of the entity body.' + content: + application/problem+json: + schema: + $ref: '#/components/schemas/ProblemDetails' + '422': + description: 'Unprocessable Entity: used to indicate that the server understands the content type of the request entity and that the syntax of the request entity is correct but that the server is unable to process the contained instructions. This error condition can occur if an JSON request body is syntactically correct but semantically incorrect, for example if the target area for the request is considered too large. This error condition can also occur if the capabilities required by the request are not supported.' + content: + application/problem+json: + schema: + $ref: '#/components/schemas/ProblemDetails' + '429': + description: 'Too Many Requests: used when a rate limiter has triggered.' + content: + application/problem+json: + schema: + $ref: '#/components/schemas/ProblemDetails' + parameters: + Query.Location_info: + description: "Comma separated list of locations to identify a cell of a base station or a particular geographical area, formatted as follows for the two cases:\n\n\u2026/uu_unicast_provisioning_info?location_info=ecgi,{String}\n\nWhere the String is made up of 1 to N comma separated ecgi values (reference clause 6.5.5).\n\n\u2026/uu_unicast_provisioning_info?location_info=latitude,{String},longitude,{String}\n\nWhere the two strings are made up of 1 to N comma separated latitude and longitude values respectively (reference clause\_6.5.3), such that the number of latitude and longitude values shall be equal.\n\nExamples of query formats when N=2 locations are provided below:\n\n\u2026/uu_unicast_provisioning_info?location_info=ecgi,1357924680,1357924681\n\n\u2026/uu_unicast_provisioning_info?location_info=latitude,000.000,001.000,longitude,000.000,001.000." + name: location_info + cardinality: '1' + in: query + required: true + x-exportParamName: Query.Location_info + schema: + type: string + Query.Location_info1: + description: "Comma separated list of locations to identify a cell of a base station or a particular geographical area, formatted as follows for the two cases:\n\n\u2026/uu_mbms_provisioning_info?location_info=ecgi,{String}\n\nWhere the String is made up of 1 to N comma separated ecgi values (reference clause 6.5.5).\n\n\u2026/uu_mbms_provisioning_info?location_info=latitude,{String},longitude,{String}\n\nWhere the two strings are made up of 1 to N comma separated latitude and longitude values respectively (reference clause\_6.5.3), such that the number of latitude and longitude values shall be equal.\n\nExamples of query formats when N=2 locations are provided below:\n\n\u2026/uu_mbms_provisioning_info?location_info=ecgi,1357924680,1357924681\n\u2026/uu_mbms_provisioning_info?location_info=latitude,000.000,001.000,longitude,000.000,001.000." + name: location_info + cardinality: '1' + in: query + required: true + x-exportParamName: Query.Location_info1 + schema: + type: string + Query.Location_info2: + description: "Comma separated list of locations to identify a cell of a base station or a particular geographical area, formatted as follows for the two cases:\n\n\u2026/pc5_provisioning_info?location_info=ecgi,{String}\n\nWhere the String is made up of 1 to N comma separated ecgi values (reference clause 6.5.5).\n\n\u2026/pc5_provisioning_info?location_info=latitude,{String},longitude,{String}\n\nWhere the two strings are made up of 1 to N comma separated latitude and longitude values respectively (reference clause\_6.5.3), such that the number of latitude and longitude values shall be equal.\n\nExamples of query formats when N=2 locations are provided below:\n\n\u2026/pc5_provisioning_info?location_info=ecgi,1357924680,1357924681\n\n\u2026/pc5_provisioning_info?location_info=latitude,000.000,001.000,longitude,000.000,001.000." + name: location_info + cardinality: '1' + in: query + required: true + x-exportParamName: Query.Location_info2 + schema: + type: string + Query.Subscription_type: + description: "Query parameter to filter on a specific subscription type. Permitted values:\n\nprov_chg_uu_uni: provisioning information change for V2X communication over Uu unicast \n\nprov_chg_uu_mbms: provisioning information change for V2X communication over Uu MBMS\n\nprov_chg_pc5: provisioning information change for V2X communication over PC5\n\nv2x_msg: V2X interoperability message \n\npred_qos: information on the predicted QoS." + name: subscription_type + cardinality: 0..1 + in: query + required: false + x-exportParamName: Query.Subscription_type + schema: + type: string + diff --git a/Auto_Generated_OAS_Output_Files/Auto_Generated_OAS_Output_Files/gs_mec033v030101p.yaml b/Auto_Generated_OAS_Output_Files/Auto_Generated_OAS_Output_Files/gs_mec033v030101p.yaml new file mode 100644 index 0000000..9dbba45 --- /dev/null +++ b/Auto_Generated_OAS_Output_Files/Auto_Generated_OAS_Output_Files/gs_mec033v030101p.yaml @@ -0,0 +1,757 @@ +openapi: 3.1.0 +jsonSchemaDialect: https://json-schema.org/draft/2020-12/schema +info: + contact: + url: https://forge.etsi.org/rep/mec/gs014-ue-identity-api + title: ETSI GS MEC 014 UE Identity API + description: "The present document focuses on the UE Identity functionality. It describes the related application policy information (including authorization, access control and traffic rule pattern format), information flows, required information and service aggregation patterns. The present document specifies the necessary API, data model and data format, considering existing API(s) if applicable. \n" + license: + name: BSD-3-Clause + url: https://forge.etsi.org/legal-matters + version: 3.1.1 +paths: + /registered_devices: + get: + summary: Retrieve information about all devices with a valid traffic rule association - see clause 5.2.2. + description: The GET method may be used by a service consumer to retrieve information about all devices with a valid traffic rule association. This method is typically used in the "registered devices query" procedure as described in clause 5.2.2. + operationId: registereddevicesGET + tags: + - serviceManagement + parameters: + - $ref: '#/components/parameters/Query.Filter' + - $ref: '#/components/parameters/Query.Fields' + responses: + '200': + description: Upon success, a response body containing the list of registered devices is returned. The response body shall contain a list of resources that match the attribute filter. + content: + application/json: + schema: + type: object + properties: + array(DeviceInfo): + type: array + items: + $ref: '#/components/schemas/array(DeviceInfo)' + '400': + $ref: '#/components/responses/400' + '404': + $ref: '#/components/responses/404' + '403': + $ref: '#/components/responses/403' + post: + summary: "Register a new device - see clause\_5.2.3." + description: The POST method may be used by a service consumer to register a new device. This method is typically used in the "device registration" procedure as described in clause 5.2.3. + operationId: registereddevicesPOST + tags: + - serviceManagement + requestBody: + description: Payload body in the request contains the information associated to the IoT device to be registered. + required: true + content: + application/json: + schema: + type: object + properties: + DeviceInfo: + $ref: '#/components/schemas/DeviceInfo' + responses: + '201': + description: Upon success, the HTTP response shall include a "Location" HTTP header that contains the resource URI of the registered device. + content: + application/json: + schema: + type: object + properties: + DeviceInfo: + $ref: '#/components/schemas/DeviceInfo' + '400': + $ref: '#/components/responses/400' + '404': + $ref: '#/components/responses/404' + '403': + $ref: '#/components/responses/403' + /registered_devices/{registeredDeviceId}: + get: + summary: Retrieve information about a device - see clause 5.2.4. + description: The GET method may be used by a service consumer to retrieve information about a device. This method is typically used in the "device registration query" procedure as described in clause 5.2.4. + operationId: registereddevicesByIdGET + tags: + - serviceManagement + responses: + '200': + description: Upon success, a response body containing information about the registered device is returned. + content: + application/json: + schema: + type: object + properties: + DeviceInfo: + $ref: '#/components/schemas/DeviceInfo' + '400': + $ref: '#/components/responses/400' + '404': + $ref: '#/components/responses/404' + '403': + $ref: '#/components/responses/403' + put: + summary: Update information about a device including its association to a valid traffic rule - see clauses 5.2.5 and 5.4.3. + description: The PUT method may be used by a service consumer to update a device registration including its association to a valid traffic rule. This method is typically used in the "device registration update" procedure as described in clause 5.2.5 and in the "user transport assignment" procedure as described in clause 5.4.3. + operationId: registereddevicesByIdPUT + tags: + - serviceManagement + requestBody: + description: One or more updated attributes that are allowed to be changed are included in the DeviceInfo data structure in the payload body of the request. . + required: true + content: + application/json: + schema: + type: object + properties: + DeviceInfo: + $ref: '#/components/schemas/DeviceInfo' + responses: + '200': + description: Upon success, a response body containing data type describing the updated DeviceInfo is returned. + content: + application/json: + schema: + type: object + properties: + DeviceInfo: + $ref: '#/components/schemas/DeviceInfo' + '400': + $ref: '#/components/responses/400' + '404': + $ref: '#/components/responses/404' + '403': + $ref: '#/components/responses/403' + '412': + $ref: '#/components/responses/412' + delete: + summary: "Deregister a device - see clause\_5.2.6." + description: The DELETE method may be used by a service consumer to deregister a device. This method is typically used in the "device deregistration" procedure as described in clause 5.2.6. + operationId: registereddevicesByIdDELETE + tags: + - serviceManagement + responses: + '204': + $ref: '#/components/responses/204' + '404': + $ref: '#/components/responses/404' + '403': + $ref: '#/components/responses/403' + /registered_iot_platforms: + get: + summary: Retrieve information about all IoT platforms - see clause 5.3.2. + description: "The GET method may be used by an authorized service consumer to retrieve the information of all currently registered IoT platforms. This method is typically used in the \"registered IoT platforms query\" procedure as described in clause\_5.3.2." + operationId: registerediotplatformsGET + tags: + - serviceManagement + parameters: + - $ref: '#/components/parameters/Query.Fields1' + responses: + '200': + description: Upon success, a response body containing the list of registered IoT platforms is returned. + content: + application/json: + schema: + type: object + properties: + array(IotPlatformInfo): + type: array + items: + $ref: '#/components/schemas/array(IotPlatformInfo)' + '400': + $ref: '#/components/responses/400' + '404': + $ref: '#/components/responses/404' + '403': + $ref: '#/components/responses/403' + post: + summary: "Register a IoT platform - see clause\_5.3.4." + description: The POST method may be used by a service consumer to register a new IoT platform. This method is typically used in the "IoT platform registration" procedure as described in clause 5.3.4. + operationId: registerediotplatformsPOST + tags: + - serviceManagement + requestBody: + description: Payload body in the request contains the information associated to the IoT platform to be registered. + required: true + content: + application/json: + schema: + type: object + properties: + IoTPlatformInfo: + $ref: '#/components/schemas/IoTPlatformInfo' + responses: + '201': + description: Upon success, the HTTP response shall include a "Location" HTTP header that contains the resource URI of the registered IoT platform. + content: + application/json: + schema: + type: object + properties: + IoTPlatformInfo: + $ref: '#/components/schemas/IoTPlatformInfo' + '400': + $ref: '#/components/responses/400' + '404': + $ref: '#/components/responses/404' + '403': + $ref: '#/components/responses/403' + /registered_iot_platforms/{registeredIotPlatformId}: + get: + summary: Discover native services and obtain information about user transports provided by a IoT platform - see clauses 5.3.3 and 5.4.2. + description: 'The GET method may be used by a service consumer to obtain information about a IoT platform. This method is typically used in the "IoT platform information request" procedure as described in clause 5.3.3 and in the "user transport query" procedure as described in clause 5.4.2. ' + operationId: registerediotplatformsByIdGET + tags: + - serviceManagement + parameters: + - $ref: '#/components/parameters/Query.Fields2' + responses: + '200': + description: Upon success, a response body containing information about the registered IoT platform is returned. + content: + application/json: + schema: + type: object + properties: + IotPlatformInfo: + $ref: '#/components/schemas/IotPlatformInfo' + '400': + $ref: '#/components/responses/400' + '404': + $ref: '#/components/responses/404' + '403': + $ref: '#/components/responses/403' + put: + summary: Update information about a IoT platform - see clause 5.3.5. + description: The PUT method may be used by a service consumer to update a IoT platform registration. This method is typically used in the "IoT platform update" procedure as described in clause 5.3.5. + operationId: registerediotplatformsByIdPUT + tags: + - serviceManagement + requestBody: + description: One or more updated attributes that are allowed to be changed are included in the IotPlatformInfo data structure in the payload body of the request. . + required: true + content: + application/json: + schema: + type: object + properties: + IotPlatformInfo: + $ref: '#/components/schemas/IotPlatformInfo' + responses: + '200': + description: Upon success, a response body containing data type describing the updated IotPlatformInfo is returned. + content: + application/json: + schema: + type: object + properties: + IotPlatformInfo: + $ref: '#/components/schemas/IotPlatformInfo' + '400': + $ref: '#/components/responses/400' + '404': + $ref: '#/components/responses/404' + '403': + $ref: '#/components/responses/403' + '412': + $ref: '#/components/responses/412' + delete: + summary: Deregister a IoT platform - see clause 5.3.6. + description: The DELETE method may be used by a service consumer to deregister a IoT platform. This method is typically used in the "IoT platform deregistration" procedure as described in clause 5.3.6. + operationId: registerediotplatformsByIdDELETE + tags: + - serviceManagement + responses: + '204': + $ref: '#/components/responses/204' + '404': + $ref: '#/components/responses/404' + '403': + $ref: '#/components/responses/403' +components: + schemas: + ProblemDetails: + type: object + properties: + type: + type: string + format: uri + description: A URI reference according to IETF RFC 3986 that identifies the problem type + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: URI + title: + type: string + description: A short, human-readable summary of the problem type + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: String + status: + type: integer + format: uint32 + description: The HTTP status code for this occurrence of the problem + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: Uint32 + detail: + type: string + description: A human-readable explanation specific to this occurrence of the problem + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: String + instance: + type: string + format: uri + description: A URI reference that identifies the specific occurrence of the problem + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: URI + DeviceInfo: + x-etsi-ref: 6.2.2 + type: object + properties: + deviceAuthenticationInfo: + description: Information needed for secondary authentication of the IoT device to the data network - see ETSI TS 129 561 [i.4] and ETSI TS 129 061 [i.5] for 5G and LTE procedures, respectively. This attribute is implementation dependent and should be logically linked to the identifiers of the IoT device listed hereafter. + x-etsi-mec-origin-type: Not_specified + x-etsi-mec-cardinality: '1' + type: object + deviceMetadata: + description: 'Additional information about the IoT device. This attribute is implementation dependent and may be expressed as an array of keyvalue pairs. ' + x-etsi-mec-origin-type: Not_specified + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + $ref: '#/components/schemas/Not_specified' + gpsi: + description: GPSI of the IoT device if 5G-enabled (see note 1). + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + pei: + description: PEI of the IoT device if 5G-enabled (see note 1). + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + supi: + description: SUPI of the IoT device if 5G-enabled (see note 1). + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + msisdn: + description: MSISDN of the IoT device if LTE-enabled (see note 1). + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + imei: + description: IMEI of the IoT device if LTE-enabled (see note 1). + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + imsi: + description: IMSI of the IoT device if LTE-enabled (see note 1). + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + iccid: + description: ICCID of the IoT device (see note 1). + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + deviceId: + description: Human-readable identifier of the IoT device. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + requestedMecTrafficRule: + description: "MEC traffic rules the IoT device is requested to be associated to (see note 2). The data type definition is as per ETSI GS\_MEC 010-2 [i.6]." + x-etsi-mec-origin-type: TrafficRuleDescriptor + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + $ref: '#/components/schemas/TrafficRuleDescriptor' + requestedIotPlatformId: + description: IoT platform to which the IoT device is requested to be associated to (see note 2). + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + requestedUserTransportId: + description: User transport to which the IoT device is requested to be associated to (see note 2). + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + deviceSpecificMessageFormats: + $ref: '#/components/schemas/DeviceSpecificMessageFormats' + downlinkInfo: + $ref: '#/components/schemas/DownlinkInfo' + clientCertificate: + description: Client-side SSL/TLS certificate to be used by the MEC IoTS to interact with the user transport provided by the associated IoT platform in case the MEC IoTS acts on behalf of the IoT device. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + enabled: + description: Indication whether the IoT device has a valid associated traffic rule (TRUE) or not (FALSE). See note 3. + x-etsi-mec-origin-type: Boolean + x-etsi-mec-cardinality: '1' + type: boolean + required: + - deviceAuthenticationInfo + - deviceId + - enabled + x-etsi-notes: "NOTE 1:\tAt least one attribute among gpsi, pei, supi, msisdn, imei, imsi, and iccid should be provided. Sufficient security measures shall be put in place when any attribute among PEI, SUPI, IMEI, and IMSI is disclosed over the API.\nNOTE 2:\tUntil a valid traffic rule is not provided, the device will not be able to use the IoTS. A valid traffic rule is provided by one of the following options:\nthe requestedMecTrafficRule attribute;\nthe requestedIotPlatformId attribute when the IoT platform offers only one user transport;\nthe combination of requestedIotPlatformId and requestedUserTransportId.\nNOTE 3:\tEnabled is a pseudo-attribute which needs to be maintained by the IoTS based on the presence or not of a valid traffic rule associated to the device. It cannot be set directly by the service consumer." + IotPlatformInfo: + x-etsi-ref: 6.2.3 + type: object + properties: + iotPlatformId: + description: Identifier of the IoT platform. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + userTransportInfo: + description: Information about the user transport(s) provided by the IoT platform. + x-etsi-mec-origin-type: MBTransportInfo + x-etsi-mec-cardinality: 1..N + type: array + minItems: 1 + items: + $ref: '#/components/schemas/MBTransportInfo' + customServicesTransportInfo: + description: Transport enabling access to vendor-specific services provided by the IoT platform. The data type definition is as per ETSI GS MEC 011 [i.2]. + x-etsi-mec-origin-type: TransportInfo + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + $ref: '#/components/schemas/TransportInfo' + enabled: + description: Indication whether the IoT platform is capable of providing user transports and vendor-specific services (TRUE) or not (FALSE). + x-etsi-mec-origin-type: Boolean + x-etsi-mec-cardinality: '1' + type: boolean + required: + - iotPlatformId + - userTransportInfo + - enabled + MBTransportInfo: + x-etsi-ref: 6.3.2 + type: object + properties: + id: + description: "The identifier of this transport as per ETSI GS\_MEC\_011 [i.2]." + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + name: + description: "The name of this transport as per ETSI GS\_MEC\_011\_[i.2]." + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + description: + description: "Human-readable description of this transport as per ETSI GS\_MEC 011 [i.2]." + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + type: + # description': Type of the transport. The attribute shall be set to "MB_TOPIC_BASED." + $ref: '#/components/schemas/TransportType' + # x-etsi-mec-origin-type': TransportType + # x-etsi-mec-cardinality': '1' + protocol: + description: The name of the protocol used. Being the transport of MB_TOPIC_BASED type, this attribute should be typically set to "MQTT" or "AMQP." + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + version: + description: "The version of the protocol used as per ETSI GS\_MEC\_011\_[i.2]." + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + endpoint: + # description': Information about the endpoint to access the transport as per ETSI GS MEC 011 [i.2]. + $ref: '#/components/schemas/EndPointInfo' + # x-etsi-mec-origin-type': EndPointInfo + # x-etsi-mec-cardinality': '1' + security: + # description': Information about the security used by the transport as per ETSI GS MEC 011 [i.2]. + $ref: '#/components/schemas/SecurityInfo' + # x-etsi-mec-origin-type': SecurityInfo + # x-etsi-mec-cardinality': '1' + implSpecificInfo: + $ref: '#/components/schemas/ImplSpecificInfo' + required: + - id + - name + - type + - protocol + - version + - endpoint + - security + - implSpecificInfo + EventMsg: + x-etsi-ref: 6.3.3 + type: object + properties: + eventTopic: + description: 'Topic where the message containing application-specific information should be published. ' + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + selectedSerializer: + # description': Type of serializer to be used for the topic as per ETSI GS MEC 011 [i.2]. + $ref: '#/components/schemas/SerializerType' + # x-etsi-mec-origin-type': SerializerType + # x-etsi-mec-cardinality': '1' + includeDeviceAddr: + description: Indication whether to include the IP address of the IoT device (TRUE) or not (FALSE). + x-etsi-mec-origin-type: Boolean + x-etsi-mec-cardinality: 0..1 + type: boolean + includeDeviceMetadata: + description: Indication whether to include the metadata about the IoT device (TRUE) or not (FALSE). + x-etsi-mec-origin-type: Boolean + x-etsi-mec-cardinality: 0..1 + type: boolean + includePei: + description: Indication whether to include the PEI of the IoT device (TRUE) or not (FALSE). + x-etsi-mec-origin-type: Boolean + x-etsi-mec-cardinality: 0..1 + type: boolean + includeSupi: + description: Indication whether to include the SUPI of the IoT device (TRUE) or not (FALSE). + x-etsi-mec-origin-type: Boolean + x-etsi-mec-cardinality: 0..1 + type: boolean + includeImei: + description: Indication whether to include the IMEI of the IoT device (TRUE) or not (FALSE). + x-etsi-mec-origin-type: Boolean + x-etsi-mec-cardinality: 0..1 + type: boolean + includeImsi: + description: Indication whether to include the IMSI of the IoT device (TRUE) or not (FALSE). + x-etsi-mec-origin-type: Boolean + x-etsi-mec-cardinality: 0..1 + type: boolean + includeIccid: + description: Indication whether to include the ICCID of the IoT device (TRUE) or not (FALSE). + x-etsi-mec-origin-type: Boolean + x-etsi-mec-cardinality: 0..1 + type: boolean + includeDeviceId: + description: Indication whether to include the human-readable identified of the IoT device (TRUE) or not (FALSE). + x-etsi-mec-origin-type: Boolean + x-etsi-mec-cardinality: 0..1 + type: boolean + required: + - eventTopic + - selectedSerializer + UplinkMsg: + x-etsi-ref: 6.3.4 + type: object + properties: + uplinkTopic: + description: Topic where the message containing the data generated by the IoT device(s) should be published, in order to be consumed by the end IoT application(s). + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + selectedSerializer: + # description': Type of serializer to be used for the topic as per ETSI GS MEC 011 [i.2]. + $ref: '#/components/schemas/SerializerType' + # x-etsi-mec-origin-type': SerializerType + # x-etsi-mec-cardinality': '1' + includeDevicePort: + description: Indication whether to include the UDP port of the remote IoT device (TRUE) or not (FALSE). + x-etsi-mec-origin-type: Boolean + x-etsi-mec-cardinality: 0..1 + type: boolean + includeDeviceAddr: + description: Indication whether to include the IP address of the IoT device (TRUE) or not (FALSE). + x-etsi-mec-origin-type: Boolean + x-etsi-mec-cardinality: 0..1 + type: boolean + includeDeviceMetadata: + description: Indication whether to include the metadata about the IoT device (TRUE) or not (FALSE). + x-etsi-mec-origin-type: Boolean + x-etsi-mec-cardinality: 0..1 + type: boolean + includePei: + description: Indication whether to include the PEI of the IoT device (TRUE) or not (FALSE). + x-etsi-mec-origin-type: Boolean + x-etsi-mec-cardinality: 0..1 + type: boolean + includeSupi: + description: Indication whether to include the SUPI of the IoT device (TRUE) or not (FALSE). + x-etsi-mec-origin-type: Boolean + x-etsi-mec-cardinality: 0..1 + type: boolean + includeImei: + description: Indication whether to include the IMEI of the IoT device (TRUE) or not (FALSE). + x-etsi-mec-origin-type: Boolean + x-etsi-mec-cardinality: 0..1 + type: boolean + includeImsi: + description: Indication whether to include the IMSI of the IoT device (TRUE) or not (FALSE). + x-etsi-mec-origin-type: Boolean + x-etsi-mec-cardinality: 0..1 + type: boolean + includeIccid: + description: Indication whether to include the ICCID of the IoT device (TRUE) or not (FALSE). + x-etsi-mec-origin-type: Boolean + x-etsi-mec-cardinality: 0..1 + type: boolean + includeDeviceId: + description: Indication whether to include the human-readable identified of the IoT device (TRUE) or not (FALSE). + x-etsi-mec-origin-type: Boolean + x-etsi-mec-cardinality: 0..1 + type: boolean + required: + - uplinkTopic + - selectedSerializer + DeviceSpecificMessageFormats: + description: Format of the messages to be published by the MEC IoTS on the user transport provided by the associated IoT platform in case the MEC IoTS acts on behalf of the IoT device. + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: 0..1 + type: object + properties: + eventMsgFormat: + # description': Event message format configuration. + $ref: '#/components/schemas/EventMsg' + # x-etsi-mec-origin-type': EventMsg + # x-etsi-mec-cardinality': 0..1 + uplinkMsgFormat: + # description': Uplink message format configuration. + $ref: '#/components/schemas/UplinkMsg' + # x-etsi-mec-origin-type': UplinkMsg + # x-etsi-mec-cardinality': 0..1 + DownlinkInfo: + description: Downlink communication configuration of the user transport provided by the associated IoT platform in case the MEC IoTS acts on behalf of the IoT device. + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: 0..1 + type: object + properties: + downlinkTopic: + description: Topic associated to the IoT device. This topic should be used by an end IoT application to send downlink data to the IoT device. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + devicePort: + description: UDP port to be used by the MEC IoTS for the outgoing downlink packets towards the IoT device. In case a default value is used, this attribute is optional. + x-etsi-mec-origin-type: Int + x-etsi-mec-cardinality: 0..1 + type: integer + ImplSpecificInfo: + description: Additional implementation specific details of the transport. + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: '1' + type: object + properties: + eventTopics: + description: Topics used to publish events related to the established session between the IoT device(s) and the end IoT application(s) on the user transport. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + type: string + uplinkTopics: + description: Topics used to publish data generated by the IoT device(s) on the user transport, in order to be consumed by the end IoT application(s). + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + type: string + downlinkTopics: + description: Topics used to publish data generated by the IoT applications(s) on the user transport, in order to be consumed by the end IoT device(s). + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + type: string + responses: + '200': + description: OK + '400': + description: 'Bad Request: used to indicate that incorrect parameters were passed to the request.' + content: + application/problem+json: + schema: + $ref: '#/components/schemas/ProblemDetails' + '403': + description: 'Forbidden: operation is not allowed given the current status of the resource.' + content: + application/problem+json: + schema: + $ref: '#/components/schemas/ProblemDetails' + '404': + description: 'Not Found: used when a client provided a URI that cannot be mapped to a valid resource URI.' + content: + application/problem+json: + schema: + $ref: '#/components/schemas/ProblemDetails' + '412': + description: 'Precondition failed: used when a condition has failed during conditional requests, e.g. when using ETags to avoid write conflicts when using PUT' + content: + application/problem+json: + schema: + $ref: '#/components/schemas/ProblemDetails' + parameters: + Query.Filter: + description: 'Attribute-based filtering parameters according to ETSI GS MEC 009 [i.1]. The API producer shall support receiving the following filtering parameters as part of the URI query string: "(eq,enabled,TRUE)".' + name: filter + cardinality: 0..1 + in: query + required: false + x-exportParamName: Query.Filter + schema: + type: string + Query.Fields: + description: 'The list may contain one or more of the following attributes from the DeviceInfo data type: + + deviceMetadata; + + gpsi; + + msisdn; + + deviceId; + + requestedMecTrafficRule; + + requestedIotPlatformId; + + requestedUserTransportId.' + name: fields + cardinality: 0..N + in: query + required: false + x-exportParamName: Query.Fields + schema: + $ref: '#/components/schemas/array(String)' + Query.Fields1: + description: 'The list shall contain the following attributes from the IotPlatformInfo data type: + + iotPlatformId + + enabled.' + name: fields + cardinality: 0..N + in: query + required: false + x-exportParamName: Query.Fields1 + schema: + $ref: '#/components/schemas/array(String)' + Query.Fields2: + description: 'The list may contain one or more of the following attributes from the IotPlatformInfo data type: + + userTransportInfo; + + customServiceTransportInfo.' + name: fields + cardinality: 0..N + in: query + required: false + x-exportParamName: Query.Fields2 + schema: + $ref: '#/components/schemas/array(String)' + diff --git a/Auto_Generated_OAS_Output_Files/Auto_Generated_OAS_Output_Files/gs_mec040v030101p.yaml b/Auto_Generated_OAS_Output_Files/Auto_Generated_OAS_Output_Files/gs_mec040v030101p.yaml new file mode 100644 index 0000000..bfcff2b --- /dev/null +++ b/Auto_Generated_OAS_Output_Files/Auto_Generated_OAS_Output_Files/gs_mec040v030101p.yaml @@ -0,0 +1,354 @@ +openapi: 3.1.0 +jsonSchemaDialect: https://json-schema.org/draft/2020-12/schema +info: + contact: + url: https://forge.etsi.org/rep/mec/gs014-ue-identity-api + title: ETSI GS MEC 014 UE Identity API + description: "The present document focuses on the UE Identity functionality. It describes the related application policy information (including authorization, access control and traffic rule pattern format), information flows, required information and service aggregation patterns. The present document specifies the necessary API, data model and data format, considering existing API(s) if applicable. \n" + license: + name: BSD-3-Clause + url: https://forge.etsi.org/legal-matters + version: 3.1.1 +paths: + /fed_resources/system_info: + get: + summary: Retrieve a list of system_info resources (see clause 6 for data model) of federation members. + description: The GET method retrieves the information of a list of system_info resources of federation members. This method is typically used in the sequence of "MEC system discovery" as described in clause 5.2.2.2. The method shall comply with the URI query parameters, request and response data structures, and response codes, as specified in Tables 7.3.3.1-1 and 7.3.3.1-2. + operationId: systeminfoGET + tags: + - serviceManagement + responses: + '200': + description: It is used to indicate that the query for retrieving system_info resource(s) is successful. Response body containing one or multiple system_info resources shall be returned. + content: + application/json: + schema: + type: object + properties: + SystemInfo: + $ref: '#/components/schemas/SystemInfo' + '400': + $ref: '#/components/responses/400' + '401': + $ref: '#/components/responses/401' + '403': + $ref: '#/components/responses/403' + '404': + $ref: '#/components/responses/404' + post: + summary: Create new system_info resource for a given MEC system. + description: "The POST method creates the information of system_info resources to the MEC federator. This method is typically used in the sequence of \"Registration of MEC system to the federation\" as described in clause 5.2.2.1. The method shall comply with the URI query parameters, request and response data structures, and response codes, as specified in Tables\_7.3.3.4-1 and 7.3.3.4-2." + operationId: systeminfoPOST + tags: + - serviceManagement + requestBody: + description: Entity body in the request contains SystemInfo to be created. The attribute "systemId" shall be absent. + required: true + content: + application/json: + schema: + type: object + properties: + SystemInfo: + $ref: '#/components/schemas/SystemInfo' + responses: + '201': + description: 'It is used to indicate that the system_info resource is successfully created. + + + The HTTP response includes a "Location" HTTP header that contains the URI of the created resource.' + content: + application/json: + schema: + type: object + properties: + SystemInfo: + $ref: '#/components/schemas/SystemInfo' + '400': + $ref: '#/components/responses/400' + '401': + $ref: '#/components/responses/401' + '403': + $ref: '#/components/responses/403' + '404': + $ref: '#/components/responses/404' + /fed_resources/system_info/{systemId}: + get: + summary: Retrieve the system_info resource of the federation member with systemId as its system identifier. + description: The GET method retrieves the system_info resource information. This method is typically used in the sequence of "MEC system discovery" as described in clause 5.2.2.2. The method shall comply with the URI query parameters, request and response data structures, and response codes, as specified in Tables 7.4.3.1-1 and 7.4.3.1-2. + operationId: systeminfoByIdGET + tags: + - serviceManagement + responses: + '200': + description: It is used to indicate that the query for retrieving system_info resource is successful. Response body containing one system_info resource shall be returned. + content: + application/json: + schema: + type: object + properties: + SystemInfo: + $ref: '#/components/schemas/SystemInfo' + '400': + $ref: '#/components/responses/400' + '401': + $ref: '#/components/responses/401' + '403': + $ref: '#/components/responses/403' + '404': + $ref: '#/components/responses/404' + patch: + summary: Update the system_info resource for a given MEC system. + description: The PATCH method updates the information of system_info resources stored in the MEC federator through previous registration. This method is typically used in the sequence of "Update of MEC system to the federation" as described in clause 5.2.2.2. The method shall comply with the URI query parameters, request and response data structures, and response codes, as specified in Tables 7.4.3.3-1 and 7.4.3.3-2. + operationId: systeminfoByIdPATCH + tags: + - serviceManagement + requestBody: + description: It contains attributes to be update. + required: true + content: + application/json: + schema: + type: object + properties: + SystemInfoUpdate: + $ref: '#/components/schemas/SystemInfoUpdate' + responses: + '200': + description: It is used to indicate that the system_info resource is successfully updated. + content: + application/json: + schema: + type: object + properties: + SystemInfo: + $ref: '#/components/schemas/SystemInfo' + '400': + $ref: '#/components/responses/400' + '401': + $ref: '#/components/responses/401' + '403': + $ref: '#/components/responses/403' + '404': + $ref: '#/components/responses/404' + delete: + summary: Delete the system_info resource for a given MEC system. + description: The DELETE method deletes the information of system_info resources stored in the MEF. This method is typically used in the sequence of "Deregistration of MEC system to the federation" as described in clause 5.2.2.1.1. The method shall comply with the URI query parameters, request and response data structures, and response codes, as specified in Tables 7.4.3.5-1 and 7.4.3.5-2. + operationId: systeminfoByIdDELETE + tags: + - serviceManagement + responses: + '204': + $ref: '#/components/responses/204' + '400': + $ref: '#/components/responses/400' + '401': + $ref: '#/components/responses/401' + '403': + $ref: '#/components/responses/403' + '404': + $ref: '#/components/responses/404' +components: + schemas: + ProblemDetails: + type: object + properties: + type: + type: string + format: uri + description: A URI reference according to IETF RFC 3986 that identifies the problem type + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: URI + title: + type: string + description: A short, human-readable summary of the problem type + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: String + status: + type: integer + format: uint32 + description: The HTTP status code for this occurrence of the problem + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: Uint32 + detail: + type: string + description: A human-readable explanation specific to this occurrence of the problem + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: String + instance: + type: string + format: uri + description: A URI reference that identifies the specific occurrence of the problem + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: URI + SystemInfo: + x-etsi-ref: 6.2.2 + type: object + properties: + systemId: + description: 'Identifier of the MEC system. For the uniqueness of the identifier across the federated MEC systems, UUID format [i.9] is recommended. + + + Shall be absent in POST request, and present otherwise.' + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + systemName: + description: The name of the MEC system. This is how the MEC system identifies other MEC systems + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + systemProvider: + description: Provider of the MEC system. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + required: + - systemId + - systemName + - systemProvider + SystemInfoUpdate: + x-etsi-ref: 6.2.3 + type: object + properties: + systemName: + description: The name of the MEC system. This is how the MEC system identifies other MEC systems. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + endpoint: + # description': Endpoint information (e.g. URI, FQDN, IP address) of MEC federator. + $ref: '#/components/schemas/EndPointInfo' + # x-etsi-mec-origin-type': EndPointInfo + # x-etsi-mec-cardinality': 0..1 + x-etsi-notes: "NOTE:\tAt least one attribute shall exist." + SystemUpdateNotificationSubscription: + x-etsi-ref: 6.3.2 + type: object + properties: + subscriptionType: + description: Shall be set to "SystemUpdateNotificationSubscription". + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + callbackReference: + description: URI selected by the MEC orchestrator to receive notifications on the subscribed MEC system information updates in the MEC federation. This shall be included in both the request and the response. + x-etsi-mec-origin-type: Uri + x-etsi-mec-cardinality: '1' + type: string + format: uri + _links: + $ref: '#/components/schemas/_links' + systemId: + description: Identifier(s) to uniquely specify the target MEC system(s) for the subscription. If absent, the subscription should include all MEC systems in the MEC federation. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + type: string + expiryDeadline: + # description': The expiration time of the subscription determined by the MEC Federation Enablement Service. + $ref: '#/components/schemas/TimeStamp' + # x-etsi-mec-origin-type': TimeStamp + # x-etsi-mec-cardinality': 0..1 + required: + - subscriptionType + - callbackReference + SystemUpdateNotification: + x-etsi-ref: 6.4.2 + type: object + properties: + notificationType: + description: Shall be set to "SystemUpdateNotification". + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + updatedSystemInfo: + description: Updated information of the MEC system(s) in the MEC federation. + x-etsi-mec-origin-type: SystemInfo + x-etsi-mec-cardinality: 1..N + type: array + minItems: 1 + items: + $ref: '#/components/schemas/SystemInfo' + _links: + $ref: '#/components/schemas/_links1' + required: + - notificationType + - updatedSystemInfo + - _links + TimeStamp: + x-etsi-ref: 6.5.2 + type: object + properties: + seconds: + description: The seconds part of the time. Time is defined as Unixtime since January 1, 1970, 00:00:00 UTC. + x-etsi-mec-origin-type: Uint32 + x-etsi-mec-cardinality: '1' + type: integer + format: uint32 + nanoSeconds: + description: The nanoseconds part of the time. Time is defined as Unix-time since January 1, 1970, 00:00:00 UTC. + x-etsi-mec-origin-type: Uint32 + x-etsi-mec-cardinality: '1' + type: integer + format: uint32 + required: + - seconds + - nanoSeconds + _links: + description: Object containing hyperlinks related to the resource. This shall only be included in the HTTP responses. + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: 0..1 + type: object + properties: + self: + # description': Self-referring URI. The URI shall be unique within the MEC Federation Enablement API as it acts as an ID for the subscription (SubscriptionId). + $ref: '#/components/schemas/LinkType' + # x-etsi-mec-origin-type': LinkType + # x-etsi-mec-cardinality': '1' + required: + - self + _links1: + description: Object containing hyperlinks related to the resource. + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: '1' + type: object + properties: + subscription: + # description': A link to the related subscription. + $ref: '#/components/schemas/LinkType' + # x-etsi-mec-origin-type': LinkType + # x-etsi-mec-cardinality': '1' + required: + - subscription + responses: + '200': + description: OK + '400': + description: 'Bad Request: used to indicate that incorrect parameters were passed to the request.' + content: + application/problem+json: + schema: + $ref: '#/components/schemas/ProblemDetails' + '403': + description: 'Forbidden: operation is not allowed given the current status of the resource.' + content: + application/problem+json: + schema: + $ref: '#/components/schemas/ProblemDetails' + '404': + description: 'Not Found: used when a client provided a URI that cannot be mapped to a valid resource URI.' + content: + application/problem+json: + schema: + $ref: '#/components/schemas/ProblemDetails' + '412': + description: 'Precondition failed: used when a condition has failed during conditional requests, e.g. when using ETags to avoid write conflicts when using PUT' + content: + application/problem+json: + schema: + $ref: '#/components/schemas/ProblemDetails' + parameters: {} + diff --git a/Auto_Generated_OAS_Output_Files/README..md b/Auto_Generated_OAS_Output_Files/README..md new file mode 100644 index 0000000..b9daa77 --- /dev/null +++ b/Auto_Generated_OAS_Output_Files/README..md @@ -0,0 +1,10 @@ +# Auto-Generated OpenAPI Specification Outputs +This folder contains the generated OpenAPI specifications (OAS) created by the `doc2oas` automation script. These specifications are generated from the latest MEC specification documents. +## Usage +You can use the generated OpenAPI specifications for various purposes, including: +- Building API documentation. +- Integrating MEC specifications into your applications. +- Validating MEC-related API requests and responses. +## [](#note-about-generated-openapis)Note About Generated OpenAPIs + +Note that while the `doc2oas_automation_script.py` tool aims to provide OpenAPI specifications, the generated OpenAPIs may not always be 100% correct. The reason for this is that the configuration files, which are used to generate the specifications, need to be updated manually. In many cases, the configuration file remains the same for the latest version, but there are instances where modifications in the configuration files are required for the latest versions. diff --git a/Auto_Generated_OAS_Output_Files/README.md b/Auto_Generated_OAS_Output_Files/README.md new file mode 100644 index 0000000..6eb700a --- /dev/null +++ b/Auto_Generated_OAS_Output_Files/README.md @@ -0,0 +1,92 @@ +# Auto Generated OAS + + + +## Getting started + +To make it easy for you to get started with GitLab, here's a list of recommended next steps. + +Already a pro? Just edit this README.md and make it your own. Want to make it easy? [Use the template at the bottom](#editing-this-readme)! + +## Add your files + +- [ ] [Create](https://docs.gitlab.com/ee/user/project/repository/web_editor.html#create-a-file) or [upload](https://docs.gitlab.com/ee/user/project/repository/web_editor.html#upload-a-file) files +- [ ] [Add files using the command line](https://docs.gitlab.com/ee/gitlab-basics/add-file.html#add-a-file-using-the-command-line) or push an existing Git repository with the following command: + +``` +cd existing_repo +git remote add origin https://forge.etsi.org/rep/mec/auto-generated-oas.git +git branch -M main +git push -uf origin main +``` + +## Integrate with your tools + +- [ ] [Set up project integrations](https://forge.etsi.org/rep/mec/auto-generated-oas/-/settings/integrations) + +## Collaborate with your team + +- [ ] [Invite team members and collaborators](https://docs.gitlab.com/ee/user/project/members/) +- [ ] [Create a new merge request](https://docs.gitlab.com/ee/user/project/merge_requests/creating_merge_requests.html) +- [ ] [Automatically close issues from merge requests](https://docs.gitlab.com/ee/user/project/issues/managing_issues.html#closing-issues-automatically) +- [ ] [Enable merge request approvals](https://docs.gitlab.com/ee/user/project/merge_requests/approvals/) +- [ ] [Automatically merge when pipeline succeeds](https://docs.gitlab.com/ee/user/project/merge_requests/merge_when_pipeline_succeeds.html) + +## Test and Deploy + +Use the built-in continuous integration in GitLab. + +- [ ] [Get started with GitLab CI/CD](https://docs.gitlab.com/ee/ci/quick_start/index.html) +- [ ] [Analyze your code for known vulnerabilities with Static Application Security Testing(SAST)](https://docs.gitlab.com/ee/user/application_security/sast/) +- [ ] [Deploy to Kubernetes, Amazon EC2, or Amazon ECS using Auto Deploy](https://docs.gitlab.com/ee/topics/autodevops/requirements.html) +- [ ] [Use pull-based deployments for improved Kubernetes management](https://docs.gitlab.com/ee/user/clusters/agent/) +- [ ] [Set up protected environments](https://docs.gitlab.com/ee/ci/environments/protected_environments.html) + +*** + +# Editing this README + +When you're ready to make this README your own, just edit this file and use the handy template below (or feel free to structure it however you want - this is just a starting point!). Thank you to [makeareadme.com](https://www.makeareadme.com/) for this template. + +## Suggestions for a good README +Every project is different, so consider which of these sections apply to yours. The sections used in the template are suggestions for most open source projects. Also keep in mind that while a README can be too long and detailed, too long is better than too short. If you think your README is too long, consider utilizing another form of documentation rather than cutting out information. + +## Name +Choose a self-explaining name for your project. + +## Description +Let people know what your project can do specifically. Provide context and add a link to any reference visitors might be unfamiliar with. A list of Features or a Background subsection can also be added here. If there are alternatives to your project, this is a good place to list differentiating factors. + +## Badges +On some READMEs, you may see small images that convey metadata, such as whether or not all the tests are passing for the project. You can use Shields to add some to your README. Many services also have instructions for adding a badge. + +## Visuals +Depending on what you are making, it can be a good idea to include screenshots or even a video (you'll frequently see GIFs rather than actual videos). Tools like ttygif can help, but check out Asciinema for a more sophisticated method. + +## Installation +Within a particular ecosystem, there may be a common way of installing things, such as using Yarn, NuGet, or Homebrew. However, consider the possibility that whoever is reading your README is a novice and would like more guidance. Listing specific steps helps remove ambiguity and gets people to using your project as quickly as possible. If it only runs in a specific context like a particular programming language version or operating system or has dependencies that have to be installed manually, also add a Requirements subsection. + +## Usage +Use examples liberally, and show the expected output if you can. It's helpful to have inline the smallest example of usage that you can demonstrate, while providing links to more sophisticated examples if they are too long to reasonably include in the README. + +## Support +Tell people where they can go to for help. It can be any combination of an issue tracker, a chat room, an email address, etc. + +## Roadmap +If you have ideas for releases in the future, it is a good idea to list them in the README. + +## Contributing +State if you are open to contributions and what your requirements are for accepting them. + +For people who want to make changes to your project, it's helpful to have some documentation on how to get started. Perhaps there is a script that they should run or some environment variables that they need to set. Make these steps explicit. These instructions could also be useful to your future self. + +You can also document commands to lint the code or run tests. These steps help to ensure high code quality and reduce the likelihood that the changes inadvertently break something. Having instructions for running tests is especially helpful if it requires external setup, such as starting a Selenium server for testing in a browser. + +## Authors and acknowledgment +Show your appreciation to those who have contributed to the project. + +## License +For open source projects, say how it is licensed. + +## Project status +If you have run out of energy or time for your project, put a note at the top of the README saying that development has slowed down or stopped completely. Someone may choose to fork your project or volunteer to step in as a maintainer or owner, allowing your project to keep going. You can also make an explicit request for maintainers. diff --git a/Auto_Generated_OAS_Output_Files/gs_mec01002v030101p_AppGrant.yaml b/Auto_Generated_OAS_Output_Files/gs_mec01002v030101p_AppGrant.yaml new file mode 100644 index 0000000..9636d8e --- /dev/null +++ b/Auto_Generated_OAS_Output_Files/gs_mec01002v030101p_AppGrant.yaml @@ -0,0 +1,920 @@ +openapi: 3.1.0 +jsonSchemaDialect: https://json-schema.org/draft/2020-12/schema +info: + title: 'ETSI GS MEC 010-2 - Part 2: Application lifecycle, rules and requirements management' + description: 'ETSI GS MEC 010-2 - Part 2: Application lifecycle, rules and requirements management described using OpenAPI.' + license: + name: BSD-3-Clause + url: https://forge.etsi.org/legal-matters + contact: + 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 +paths: + /grants: + post: + summary: Request a grant for a particular application LCM operation. + description: The POST method requests a grant for a particular application lifecycle operation. + operationId: grantsPOST + tags: + - granting + requestBody: + description: The POST method is to request a grand for an application lifecycle operation. + required: true + content: + application/json: + schema: + type: object + properties: + GrantRequest: + $ref: '#/components/schemas/GrantRequest' + responses: + '201': + description: 'Shall be returned when the grant was created successfully (synchronous mode). + + + A representation of the created "Individual grant" resource shall be returned in the response message content. + + + The HTTP response shall include a "Location" HTTP header that indicates the URI of the "Individual grant" resource just created.' + content: + application/json: + schema: + type: object + properties: + Grant: + $ref: '#/components/schemas/Grant' + '202': + description: 'Shall be returned when the request was accepted for processing, and it is expected to take some time to create the grant (asynchronous mode). + + + The HTTP response shall include a "Location" HTTP header that indicates the URI of the "Individual grant" resource just created.' + content: + application/json: + schema: + type: object + properties: {} + '400': + $ref: '#/components/responses/400' + '401': + $ref: '#/components/responses/401' + '403': + $ref: '#/components/responses/403' + '404': + $ref: '#/components/responses/404' + '406': + $ref: '#/components/responses/406' + '429': + $ref: '#/components/responses/429' + /grants/{grantId}: + get: + summary: Read the status of grant for the application LCM operation. + description: The GET method reads a grant. + operationId: grantsByIdGET + tags: + - granting + responses: + '200': + description: 'Shall be returned when the grant was read successfully. + + + A representation of the "individual grant" resource shall be returned in the response message content.' + content: + application/json: + schema: + type: object + properties: + Grant: + $ref: '#/components/schemas/Grant' + '202': + description: 'Shall be returned when the process of creating the grant is ongoing, no grant is available yet. + + + The response message content shall be empty. + + + The HTTP response shall include a "Location" HTTP header that contains the URI of the newly-created resource.' + content: + application/json: + schema: + type: object + properties: {} + '400': + $ref: '#/components/responses/400' + '401': + $ref: '#/components/responses/401' + '403': + $ref: '#/components/responses/403' + '404': + $ref: '#/components/responses/404' + '406': + $ref: '#/components/responses/406' + '429': + $ref: '#/components/responses/429' +components: + schemas: + ProblemDetails: + type: object + properties: + type: + type: string + format: uri + description: A URI reference according to IETF RFC 3986 that identifies the problem type + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: URI + title: + type: string + description: A short, human-readable summary of the problem type + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: String + status: + type: integer + format: uint32 + description: The HTTP status code for this occurrence of the problem + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: Uint32 + detail: + type: string + description: A human-readable explanation specific to this occurrence of the problem + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: String + instance: + type: string + format: uri + description: A URI reference that identifies the specific occurrence of the problem + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: URI + LinkType: + title: LinkType + required: + - href + type: object + properties: + href: + type: string + description: URI referring to a resource + KeyValuePairs: + description: 'This data type represents a list of key-value pairs. The order of the pairs in the list is not + + significant. In JSON, a set of key-value pairs is represented as an object. It shall comply with + + the provisions defined in clause 4 of IETF RFC 8259. + + ' + type: object + properties: + key: + type: string + value: + type: string + KeyValuePair: + description: 'This data type represents a list of key-value pairs. The order of the pairs in the list is not + + significant. In JSON, a set of key-value pairs is represented as an object. It shall comply with + + the provisions defined in clause 4 of IETF RFC 8259. + + ' + type: object + properties: + key: + type: string + value: + type: string + GrantRequest: + x-etsi-ref: 6.2.4.2 + type: object + properties: + appInstanceId: + description: Identifier of the application instance which this grant request is related to. Shall also be provided for application instances that not yet exist but are planned to exist in the future, i.e. if the grant is requested for Instantiate. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + appLcmOpOccId: + description: The identifier of the application lifecycle management operation occurrence associated to the GrantRequest. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + appDId: + description: Identifier of the AppD that defines the application for which the LCM operation is to be granted. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + operation: + type: string + description: 'The lifecycle management operation for which granting is requested: + + INSTANTIATE. + + OPERATE. + + TERMINATE. + + + See notes 1 and 2.' + enum: + - SEE_DESCRIPTION + x-etsi-mec-origin-type: Enum_inlined + x-etsi-mec-cardinality: '1' + addResources: + description: List of resource definitions in the AppD for resources to be added by the LCM operation which is related to this grant request, with one entry per resource. + x-etsi-mec-origin-type: ResourceDefinition + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + $ref: '#/components/schemas/ResourceDefinition' + tempResources: + description: List of resource definitions in the AppD for resources to be temporarily instantiated during the runtime of the LCM operation which is related to this grant request. See note 3. + x-etsi-mec-origin-type: ResourceDefinition + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + $ref: '#/components/schemas/ResourceDefinition' + removeResources: + description: Removed by the LCM operation which is related to this grant request, with one entry per resource. + x-etsi-mec-origin-type: ResourceDefinition + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + $ref: '#/components/schemas/ResourceDefinition' + updateResources: + description: Provides the definitions of resources to be modified by the LCM operation which is related to this grant request, with one entry per resource. + x-etsi-mec-origin-type: ResourceDefinition + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + $ref: '#/components/schemas/ResourceDefinition' + additionalParams: + $ref: '#/components/schemas/KeyValuePairs' + _links: + $ref: '#/components/schemas/_links' + required: + - appInstanceId + - appLcmOpOccId + - appDId + - operation + - _links + x-etsi-notes: "NOTE 1:\tOther application LCM operations can be executed by the MEPM without requesting granting.\nNOTE 2:\tIf the granting request is for Instantiate, addResources shall be present.\nNOTE 3:\tThe MEO will assume that the MEPM will be responsible to both allocate and release the temporary resource during the runtime of the LCM operation. This means, the resource can be allocated and consumed after the \"start\" notification for the LCM operation is sent by the MEPM, and the resource will be released before the \"result\" notification of the application LCM operation is sent by the MEPM." + ResourceDefinition: + x-etsi-ref: 6.2.4.3 + type: object + properties: + id: + description: Identifier of this "ResourceDefinition" structure, unique at least within the scope of the "GrantRequest" structure. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + type: + type: string + description: 'Type of the resource definition referenced. + + Permitted values: + + COMPUTE. + + STORAGE. + + LINKPORT + + OSCONTAINER, see note.' + enum: + - SEE_DESCRIPTION + x-etsi-mec-origin-type: Enum_inlined + x-etsi-mec-cardinality: '1' + vduId: + description: 'Reference to the related VDU in the AppD applicable to this resource. + + Shall only be present if a VDU is applicable to this resource.' + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + resourceTemplateId: + description: 'Reference to a resource template in the AppD as follows: + + If type="COMPUTE": VirtualComputeDescriptor, + + If type="LINKPORT": AppExtCpd, + + If type="STORAGE": VirtualStorageDescriptor, + + If type="OSCONTAINER": osContainerDescriptor. + + Cardinality may be greater than "1" when + + Type ="OSCONTAINER" and multiple references to + + OsContainerDescriptor are present in the AppD. Cardinality shall be "1" otherwise.' + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 1..N + type: array + minItems: 1 + items: + type: string + resource: + $ref: '#/components/schemas/Resource' + required: + - id + - type + - resourceTemplateId + - resource + x-etsi-notes: "NOTE:\tThis permitted value reflects the ETSI NFV interpretation of the cloud native workloads." + Grant: + x-etsi-ref: 6.2.4.4 + type: object + properties: + id: + description: 'Identifier of the Grant. ' + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + appInstanceId: + description: Identifier of the application instance which this Grant is related to. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + appLcmOpOccId: + description: The identifier of the application lifecycle management operation occurrence associated to the Grant. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + vimConnections: + description: 'Provides information regarding VIM connections that are approved to be used by the MEPM to allocate resources, and provides parameters of these VIM connections. + + See note 1.' + x-etsi-mec-origin-type: VimConnectionInfoMap + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + $ref: '#/components/schemas/VimConnectionInfoMap' + zones: + description: Identifies resource zones where the resources are approved to be allocated by the MEPM. + x-etsi-mec-origin-type: ZoneInfo + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + $ref: '#/components/schemas/ZoneInfo' + zoneGroups: + description: Information about groups of resource zones that are related and that the MEO has chosen to fulfil a zoneGroup constraint in the Grant request. + x-etsi-mec-origin-type: ZoneGroupInfo + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + $ref: '#/components/schemas/ZoneGroupInfo' + addResources: + description: List of resources that are approved to be added, with one entry per resource. + x-etsi-mec-origin-type: GrantInfo + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + $ref: '#/components/schemas/GrantInfo' + tempResources: + description: List of resources that are approved to be temporarily instantiated during the runtime of the lifecycle operation, with one entry per resource. + x-etsi-mec-origin-type: GrantInfo + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + $ref: '#/components/schemas/GrantInfo' + removeResources: + description: List of resources that are approved to be removed, with one entry per resource. + x-etsi-mec-origin-type: GrantInfo + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + $ref: '#/components/schemas/GrantInfo' + updateResources: + description: List of resources that are approved to be modified, with one entry per resource. + x-etsi-mec-origin-type: GrantInfo + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + $ref: '#/components/schemas/GrantInfo' + vimAssets: + $ref: '#/components/schemas/VimAssets' + extVirtualLinks: + description: Information about external VLs to connect the application instance to. See note 3. + x-etsi-mec-origin-type: ExtVirtualLinkData + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + $ref: '#/components/schemas/ExtVirtualLinkData' + additionalParams: + $ref: '#/components/schemas/KeyValuePairs' + _links: + $ref: '#/components/schemas/_links' + required: + - id + - appInstanceId + - appLcmOpOccId + - _links + x-etsi-notes: "NOTE 1: \tThis interface allows to signal the use of multiple VIMs per application. However, due to the partial support of this feature in the present release, it is recommended in the present document that the number of entries in the \"vims\" attribute in the Grant is not greater than 1.\nNOTE 2:\tThe further condition will be defined by ETSI GS NFV-SOL 003 [7].\nNOTE 3:\tExternal VLs can be passed in the application lifecycle management operation requests such as Instantiate, and/or in the grant response. The MEO may choose to override in the grant response external VL instances that have been passed previously in the associated application lifecycle management request, if the lifecycle management request has originated from the MEO itself." + GrantInfo: + x-etsi-ref: 6.2.4.5 + type: object + properties: + resourceDefinitionId: + description: Identifier of the related "ResourceDefinition" structure from the related "GrantRequest" structure. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + vimConnectionId: + description: Identifier of the VIM connection to be used to manage this resource. Shall be present for new resources, and shall be absent for resources that have already been allocated. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + zoneId: + description: Reference to the identifier of the "ZoneInfo" structure in the "Grant" structure defining the resource zone into which this resource is to be placed. Shall be present for new resources if the zones concept is applicable to them (typically, Compute resources), and shall be absent for resources that have already been allocated. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + resourceGroupId: + description: 'Identifier of the "infrastructure resource group", logical grouping of virtual resources assigned to a tenant within an Infrastructure Domain, to be provided when allocating the resource. + + If the VIM connection referenced by "vimConnectionId" applies to multiple infrastructure resource groups, this attribute shall be present for new resources. + + If the VIM connection referenced by "vimConnectionId" applies to a single infrastructure resource group, this attribute may be present for new resources. + + This attribute shall be absent for resources that have already been allocated.' + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + containerNamespace: + description: 'The value of the namespace in which the MCIOs of an application with containerized components shall be deployed. + + This attribute shall be present if the granted resources are managed by a CISM. The attribute shall be absent if the granted resources are not managed by a CISM. See note.' + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + mcioConstraints: + description: 'The constraint values to be assigned to MCIOs of an application with containerized components. + + The key in the key-value pair indicates the parameter name of the MCIO constraint in the MCIO declarative descriptor and shall be one of the possible enumeration values of the "mcioConstraintsParams" attribute as specified in clause 7.1.6.2.2 of ETSI GS NFV-IFA 011 [1]. The value in the key-value pair indicates the value to be assigned to the MCIO constraint. + + This attribute shall be present if the granted resources are managed by a CISM. The attribute shall be absent if the granted resources are not managed by a CISM. See note.' + x-etsi-mec-origin-type: KeyValuePair + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + $ref: '#/components/schemas/KeyValuePair' + required: + - resourceDefinitionId + x-etsi-notes: "NOTE:\tThis attribute reflects the ETSI NFV interpretation of the cloud native workloads." + ZoneInfo: + x-etsi-ref: 6.2.4.6 + type: object + properties: + id: + description: The identifier of this ZoneInfo instance, for the purpose of referencing it from other structures in the "Grant" structure. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + zoneId: + description: The identifier of the resource zone, as managed by the resource management layer (typically, the VIM). + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + vimConnectionId: + description: 'Identifier of the connection to the VIM that manages the resource zone. + + + The applicable "VimConnectionInfo" structure, which is referenced by vimConnectionId, can be obtained from the " vimConnectionInfo" attribute of the "AppInstanceInfo" structure.' + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + required: + - id + - zoneId + ZoneGroupInfo: + x-etsi-ref: 6.2.4.7 + type: object + properties: + zoneId: + description: References of identifiers of "ZoneInfo" structures, each of which provides information about a resource zone that belongs to this group. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 1..N + type: array + minItems: 1 + items: + type: string + required: + - zoneId + ExtVirtualLinkData: + x-etsi-ref: 6.2.4.8 + type: object + properties: + id: + description: The identifier of the external VL instance. The identifier is assigned by the MEC entity that manages this VL instance. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + vimConnectionId: + description: Identifier of the VIM connection to manage this resource. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + resourceId: + description: The identifier of the resource in the scope of the VIM. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + extCps: + description: External CPs of the application instance to be connected to this external VL. + x-etsi-mec-origin-type: AppExtCpData + x-etsi-mec-cardinality: 1..N + type: array + minItems: 1 + items: + $ref: '#/components/schemas/AppExtCpData' + extLinkPorts: + description: Externally provided link ports to be used to connect external connection points to this external VL. If this attribute is not present, the MEPM shall create the link ports on the external VL. + x-etsi-mec-origin-type: ExtLinkPortData + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + $ref: '#/components/schemas/ExtLinkPortData' + required: + - id + - resourceId + - extCps + ExtLinkPortData: + x-etsi-ref: 6.2.4.9 + type: object + properties: + id: + description: Identifier of this link port as provided by the entity that has created the link port. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + resourceHandle: + # description': Reference to the virtualised resource realizing this link port. + $ref: '#/components/schemas/ResourceHandle' + # x-etsi-mec-origin-type': ResourceHandle + # x-etsi-mec-cardinality': '1' + required: + - id + - resourceHandle + ResourceHandle: + x-etsi-ref: 6.2.4.10 + type: object + properties: + vimConnectionId: + description: 'Identifier of the VIM connection to manage the resource. + + The applicable "VimConnectionInfo" structure, which is referenced by vimConnectionId, can be obtained from the "vimConnectionInfo" attribute of the "AppInstance" structure.' + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + resourceId: + description: Identifier of the resource in the scope of the VIM or the CISM or the resource provider. See note 2. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + vimLevelResourceType: + description: Type of the resource in the scope of the VIM. See note 1. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + required: + - resourceId + x-etsi-notes: "NOTE 1:\tThe value set of the \"vimLevelResourceType\" attribute is within the scope of the VIM and can be used as information that complements the ResourceHandle. This value set is different from the value set of the \"type\" attribute in the ResourceDefinition.\nNOTE 2:\tWhen the container infrastructure service is a Kubernetes\xAE instance the resourceId shall be populated in the following way:\nFor a compute MCIO, it is the instance identifier that Kubernetes\xAE assigns, which is unique cluster wide per resource type.\nFor a storage MCIO modelled as a persistent volume claim, it is the name of the persistent volume claim, i.e. the value of the 'claimName' field in the Kubernetes\xAE manifest, or a compound name built by Kubernetes\xAE if the persistent volume claim is defined inline in another template instead of in its own manifest.\nFor a network MCIO representing a NetworkAttachmentDefinition, a Service or an Ingress, it is the value of the 'metadata.name' field in Kubernetes\xAE manifest." + VimSoftwareImage: + x-etsi-ref: 6.2.4.11 + type: object + properties: + vimConnectionId: + description: Identifier of the VIM connection to access the software image referenced in this structure. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + appDSoftwareImageId: + description: Identifier which references the software image descriptor in the AppD. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + vimSoftwareImageId: + description: Identifier of the software image in the resource management layer (i.e. VIM). See note. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + required: + - appDSoftwareImageId + - vimSoftwareImageId + x-etsi-notes: "NOTE:\tFor an OS container image, the value of this attribute is a string concatenating the name and tag of the image in the CIR separated by a colon ':' with no spaces, e.g. \"dbImage:001\"." + AppExtCpData: + x-etsi-ref: 6.2.4.12 + type: object + properties: + cpdId: + description: The identifier of the CPD in the AppD. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + cpConfig: + description: List of instance data that need to be configured on the CP instances created from the respective CPD. + x-etsi-mec-origin-type: AppExtCpConfigMap + x-etsi-mec-cardinality: 1..N + type: array + minItems: 1 + items: + $ref: '#/components/schemas/AppExtCpConfigMap' + required: + - cpdId + - cpConfig + AppExtCpConfig: + x-etsi-ref: 6.2.4.13 + type: object + properties: + cpInstanceId: + description: 'Identifier of the external CP instance to which this set of configuration parameters is requested to be applied. + + + Shall be present if this instance has already been created.' + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + linkPortId: + description: Identifier of a pre-configured link port to which the external CP will be associated. See note. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + cpProtocolData: + description: Parameters for configuring the network protocols on the link port that connects the CP to a VL. See note. + x-etsi-mec-origin-type: CpProtocolData + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + $ref: '#/components/schemas/CpProtocolData' + x-etsi-notes: "NOTE:\tThe following conditions apply to the attributes \"linkPortId\" and \" cpProtocolData\":\nThe \"linkPortId\" and \"cpProtocolData\" attributes shall both be absent for the deletion of an existing external CP instance addressed by cpInstanceId.\nAt least one of these attributes shall be present for a to-be-created external CP instance or an existing external CP instance.\nIf the \"linkPortId\" attribute is absent, the MEPM shall create a link port.\nIf the \"cpProtocolData\" attribute is absent, the \"linkPortId\" attribute shall be provided referencing a pre-created link port, and the MEPM can use means outside the scope of the present document to obtain the pre-configured address information for the connection point from the resource representing the link port.\nIf both \"cpProtocolData\" and \"linkportId\" are provided, the API consumer shall ensure that the cpProtocolData can be used with the pre-created link port referenced by \"linkPortId\"." + CpProtocolData: + x-etsi-ref: 6.2.4.14 + type: object + properties: + layerProtocol: + type: string + description: 'Identifier of layer(s) and protocol(s). + + + Permitted values: IP_OVER_ETHERNET. + + + See note.' + enum: + - SEE_DESCRIPTION + x-etsi-mec-origin-type: Enum_inlined + x-etsi-mec-cardinality: '1' + ipOverEthernet: + # description': Network address data for IP over Ethernet to assign to the extCP instance. Shall be present if layerProtocol is equal to "IP_OVER_ETHERNET", and shall be absent otherwise. + $ref: '#/components/schemas/IpOverEthernetAddressData' + # x-etsi-mec-origin-type': IpOverEthernetAddressData + # x-etsi-mec-cardinality': 0..1 + required: + - layerProtocol + x-etsi-notes: "NOTE:\tThis attribute allows to signal the addition of further types of layer and protocol in future versions of the present document in a backwards-compatible way. In the current version of the present document, only IP over Ethernet is supported." + IpOverEthernetAddressData: + x-etsi-ref: 6.2.4.15 + type: object + properties: + macAddress: + description: MAC address. If this attribute is not present, it shall be chosen by the VIM. See note 1. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + ipAddresses: + type: array + items: + $ref: '#/components/schemas/IpAddresses' + x-etsi-notes: "NOTE 1:\tAt least one of \"macAddress\" or \"ipAddresses\" shall be present.\nNOTE 2:\tExactly one of \"fixedAddresses\", \"numDynamicAddresses\" or \"ipAddressRange\" shall be present." + VimConnectionInfo: + x-etsi-ref: 6.2.2.18 + type: object + properties: + id: + description: The identifier of the VIM Connection. This identifier is managed by the MEO. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + vimId: + description: 'The identifier of the VIM instance. This identifier is managed by the MEO. + + + Shall be present to address additional information about the VIM if such information has been configured into the MEPM by means outside the scope of the present document, and should be absent otherwise.' + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + vimType: + description: 'Discriminator for the different types of the VIM information. + + + The value of this attribute determines the structure of the "interfaceInfo" and "accessInfo" attributes, based on the type of the VIM. + + + The set of permitted values is expected to change over time as new types or versions of VIMs become available.' + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + interfaceInfo: + $ref: '#/components/schemas/KeyValuePairs' + accessInfo: + $ref: '#/components/schemas/KeyValuePairs' + extra: + $ref: '#/components/schemas/KeyValuePairs' + required: + - id + - vimType + _links: + description: Links to resources related to this request. + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: '1' + type: object + properties: + appLcmOpOcc: + # description': Related lifecycle management operation occurrence. + $ref: '#/components/schemas/LinkType' + # x-etsi-mec-origin-type': LinkType + # x-etsi-mec-cardinality': '1' + appInstance: + # description': Related application instance. + $ref: '#/components/schemas/LinkType' + # x-etsi-mec-origin-type': LinkType + # x-etsi-mec-cardinality': '1' + required: + - appLcmOpOcc + - appInstance + Resource: + description: 'Resource information for an existing resource. + + Shall be present for resources that are planned to be deleted or modified. + + Shall be absent otherwise.' + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: '1' + type: object + properties: + vimConnectionInfo: + # description': Specifies the connection information of VIM for the resources of the application instance. + $ref: '#/components/schemas/VimConnectionInfo' + # x-etsi-mec-origin-type': VimConnectionInfo + # x-etsi-mec-cardinality': '1' + resourceId: + description: Identifier of the resource in the scope of the VIM. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + required: + - vimConnectionInfo + - resourceId + VimAssets: + description: 'Information about assets for the application that are managed by the MEO in the VIM, such as software images. + + See note 2.' + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: '0..1 ' + type: object + properties: + softwareImages: + description: Mappings between software images defined in the AppD and software images managed in the VIM. + x-etsi-mec-origin-type: VimSoftwareImage + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + $ref: '#/components/schemas/VimSoftwareImage' + AddressRange: + description: 'An IP address range to be used, e.g. in case of egress connections. + + + In case this attribute is present, IP addresses from the range will be used. See note 2.' + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: 0..1 + type: object + properties: + minAddress: + description: Lowest IP address belonging to the range. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + maxAddress: + description: Highest IP address belonging to the range. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + required: + - minAddress + - maxAddress + IpAddresses: + description: 'List of IP addresses to assign to the CP instance. Each entry represents IP address data for fixed or dynamic IP address assignment per subnet. + + + If this attribute is not present, no IP address shall be assigned. See note 1.' + x-etsi-mec-origin-type: Structure (inlined + x-etsi-mec-cardinality: 0..N + type: object + minItems: 0 + properties: + type: + type: string + description: 'The type of the IP addresses. + + + Permitted values: IPV4, IPV6.' + enum: + - SEE_DESCRIPTION + x-etsi-mec-origin-type: Enum_inlined + x-etsi-mec-cardinality: '1' + fixedAddresses: + description: Fixed addresses to assign (from the subnet defined by "subnetId" if provided). See note 2. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + type: string + numDynamicAddresses: + description: Number of dynamic addresses to assign (from the subnet defined by "subnetId" if provided). See note 2. + x-etsi-mec-origin-type: Integer + x-etsi-mec-cardinality: 0..1 + type: integer + addressRange: + $ref: '#/components/schemas/AddressRange' + subnetId: + description: 'Subnet defined by the identifier of the subnet resource in the VIM. + + + In case this attribute is present, IP addresses from that subnet will be assigned; otherwise, IP addresses not bound to a subnet will be assigned.' + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + required: + - type + VimConnectionInfoMap: + type: object + additionalProperties: + $ref: '#/components/schemas/VimConnectionInfo' + AppExtCpConfigMap: + type: object + additionalProperties: + $ref: '#/components/schemas/AppExtCpConfig' + responses: + '200': + description: OK + '204': + description: No Content + '400': + description: 'Bad Request: used to indicate that incorrect parameters were passed to the request.' + content: + application/problem+json: + schema: + $ref: '#/components/schemas/ProblemDetails' + '401': + description: 'Unauthorized: used when the client did not submit credentials.' + content: + application/problem+json: + schema: + $ref: '#/components/schemas/ProblemDetails' + '403': + description: 'Forbidden: operation is not allowed given the current status of the resource.' + content: + application/problem+json: + schema: + $ref: '#/components/schemas/ProblemDetails' + '404': + description: 'Not Found: used when a client provided a URI that cannot be mapped to a valid resource URI.' + content: + application/problem+json: + schema: + $ref: '#/components/schemas/ProblemDetails' + '406': + description: 'Not Acceptable: used to indicate that the server cannot provide the any of the content formats supported by the client.' + content: + application/problem+json: + schema: + $ref: '#/components/schemas/ProblemDetails' + '409': + description: 'Conflict: The operation cannot be executed currently, due to a conflict with the state of the resource. .' + content: + application/problem+json: + schema: + $ref: '#/components/schemas/ProblemDetails' + '429': + description: 'Too Many Requests: used when a rate limiter has triggered.' + content: + application/problem+json: + schema: + $ref: '#/components/schemas/ProblemDetails' + parameters: {} + diff --git a/Auto_Generated_OAS_Output_Files/gs_mec01002v030101p_AppLcm.yaml b/Auto_Generated_OAS_Output_Files/gs_mec01002v030101p_AppLcm.yaml new file mode 100644 index 0000000..58fd311 --- /dev/null +++ b/Auto_Generated_OAS_Output_Files/gs_mec01002v030101p_AppLcm.yaml @@ -0,0 +1,3693 @@ +openapi: 3.1.0 +jsonSchemaDialect: https://json-schema.org/draft/2020-12/schema +info: + title: 'ETSI GS MEC 010-2 - Part 2: Application lifecycle, rules and requirements management' + description: 'ETSI GS MEC 010-2 - Part 2: Application lifecycle, rules and requirements management described using OpenAPI.' + license: + name: BSD-3-Clause + url: https://forge.etsi.org/legal-matters + contact: + 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 +paths: + /app_instances: + post: + summary: Create an application instance resource. + description: The POST method is used to create an application instance resource, which refers to the procedure of "creating application instance resource operation" described in clause 6.3. + operationId: appinstancesPOST + tags: + - app-lcm + requestBody: + description: The POST method is used to create an application instance resource. + required: true + content: + application/json: + schema: + type: object + properties: + CreateAppInstanceRequest: + $ref: '#/components/schemas/CreateAppInstanceRequest' + responses: + '201': + description: 'An application instance identifier and the related resource has been created successfully. + + + The response message content shall contain a representation of the created resource. + + + The HTTP response shall include a "Location" HTTP header that contains the resource URI of the created application instance.' + content: + application/json: + schema: + type: object + properties: + AppInstanceInfo: + $ref: '#/components/schemas/AppInstanceInfo' + '400': + $ref: '#/components/responses/400' + '401': + $ref: '#/components/responses/401' + '403': + $ref: '#/components/responses/403' + '404': + $ref: '#/components/responses/404' + '406': + $ref: '#/components/responses/406' + '429': + $ref: '#/components/responses/429' + get: + summary: Query multiple application instance resources. + description: The GET method retrieves information about the application instances resources. This refers to the procedure of "query application instance information operation" as described in clause 6.3.1.5. + operationId: appinstancesGET + 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' + responses: + '200': + description: 'Information about zero or more application instances was queried successfully. + + + The response message content shall contain in an array the representations of zero or more application instances.' + content: + application/json: + schema: + type: object + properties: + AppInstanceInfo: + type: array + items: + $ref: '#/components/schemas/AppInstanceInfo' + '400': + $ref: '#/components/responses/400' + '401': + $ref: '#/components/responses/401' + '403': + $ref: '#/components/responses/403' + '404': + $ref: '#/components/responses/404' + '406': + $ref: '#/components/responses/406' + '429': + $ref: '#/components/responses/429' + /app_instances/{appInstanceId}: + get: + summary: Read an application instance resource. + description: "The GET method retrieves the information of an individual application instance via reading an individual application instance resource, which is used by the procedure of \"query application instance information operation\" as described in clause\_6.3.1.5." + operationId: appinstancesByIdGET + tags: + - app-lcm + responses: + '200': + description: 'Information about an individual application instance was read successfully. + + + The response message content shall contain a representation of the read resource.' + content: + application/json: + schema: + type: object + properties: + AppInstanceInfo: + $ref: '#/components/schemas/AppInstanceInfo' + '400': + $ref: '#/components/responses/400' + '401': + $ref: '#/components/responses/401' + '403': + $ref: '#/components/responses/403' + '404': + $ref: '#/components/responses/404' + '406': + $ref: '#/components/responses/406' + '429': + $ref: '#/components/responses/429' + delete: + summary: Delete individual application instance resource. + description: The DELETE method deletes an individual application instance resource, which refers to the procedure of "delete application instance identifier operation" as described in clause 6.3.1.8. + operationId: appinstancesByIdDELETE + tags: + - app-lcm + responses: + '204': + $ref: '#/components/responses/204' + '400': + $ref: '#/components/responses/400' + '401': + $ref: '#/components/responses/401' + '403': + $ref: '#/components/responses/403' + '404': + $ref: '#/components/responses/404' + '406': + $ref: '#/components/responses/406' + '429': + $ref: '#/components/responses/429' + /subscriptions: + post: + summary: Subscribe to notifications related to application instances' lifecycle change. + description: The POST method is to subscribe to the notification of application instance related change, which is mapped to the procedure of "subscription operation". + operationId: subscriptionsPOST + tags: + - subscriptions + requestBody: + description: 'The subscription request message content contains the data type of the specific subscription to application instance state change event that is to be created: + + AppInstSubscriptionRequest + + AppLcmOpOccSubscriptionRequest + + AppInstIdCreationSubscriptionRequest + + AppInstIdDeletionSubscriptionRequest.' + content: + application/json: + schema: + type: object + properties: + AppInstSubscriptionRequest: + $ref: '#/components/schemas/AppInstSubscriptionRequest' + responses: + '201': + description: 'Upon success, a response message content representing the created subscription is returned. + + + The response message content shall contain a representation of the created SubscriptionInfo with the appropriate data type: + + AppInstSubscriptionInfo + + AppLcmOpOccSubscriptionInfo + + AppInstIdCreationSubscriptionInfo + + AppInstIdDeletionSubscriptionInfo + + + The HTTP response shall include a "Location" HTTP header that contains the resource URI of the created subscription resource.' + content: + application/json: + schema: + type: object + properties: + AppLcmOpOccSubscriptionRequest: + $ref: '#/components/schemas/AppLcmOpOccSubscriptionRequest' + '400': + $ref: '#/components/responses/400' + '401': + $ref: '#/components/responses/401' + '403': + $ref: '#/components/responses/403' + '404': + $ref: '#/components/responses/404' + '406': + $ref: '#/components/responses/406' + '429': + $ref: '#/components/responses/429' + callbacks: + notification: + post: + summary: Callback POST used to send a notification + description: Subscription notification + operationId: notificationPOST + requestBody: + description: Subscription notification + required: true + content: + application/json: + schema: + type: object + properties: + subscriptionNotification: + oneOf: + - $ref: '#/components/schemas/AppInstSubscriptionRequest' + - $ref: '#/components/schemas/AppLcmOpOccSubscriptionRequest' + - $ref: '#/components/schemas/AppInstIdCreationSubscriptionRequest' + - $ref: '#/components/schemas/AppInstIdDeletionSubscriptionRequest' + get: + summary: Query multiple subscriptions. + description: The GET method retrieves the information of multiple subscriptions to notifications related to an application instance. + operationId: subscriptionsGET + tags: + - subscriptions + parameters: + - $ref: '#/components/parameters/Query.Subscriptiontype' + responses: + '200': + description: Upon success, a response message content containing a list of all subscriptions is returned. + content: + application/json: + schema: + type: object + properties: + AppInstanceSubscriptionLinkList: + $ref: '#/components/schemas/AppInstanceSubscriptionLinkList' + '400': + $ref: '#/components/responses/400' + '401': + $ref: '#/components/responses/401' + '403': + $ref: '#/components/responses/403' + '404': + $ref: '#/components/responses/404' + '406': + $ref: '#/components/responses/406' + '429': + $ref: '#/components/responses/429' + /subscriptions/{subscriptionId}: + get: + summary: Read an individual subscription resource. + description: The GET method retrieves the individual subscription information by reading an individual subscription resource. This method shall comply with the URI query parameters, request and response data structures, and response codes, as specified in tables 7.4.4.3.2-1 and 7.4.4.3.2-2. + operationId: subscriptionsByIdGET + tags: + - subscriptions + responses: + '200': + description: 'Upon success, a response message content containing a representation of the individual subscription resource shall be returned. + + + The allowed data types for the SubscriptionInfo are: + + AppInstSubscriptionInfo + + AppLcmOpOccSubscriptionInfo + + AppInstIdCreationSubscriptionInfo + + AppInstIdDeletionSubscriptionInfo.' + content: + application/json: + schema: + type: object + properties: + AppLcmOpOccSubscriptionRequest: + $ref: '#/components/schemas/AppLcmOpOccSubscriptionRequest' + '400': + $ref: '#/components/responses/400' + '401': + $ref: '#/components/responses/401' + '403': + $ref: '#/components/responses/403' + '404': + $ref: '#/components/responses/404' + '406': + $ref: '#/components/responses/406' + '429': + $ref: '#/components/responses/429' + delete: + summary: Terminate an individual subscription. + description: The DELETE method is used to delete an individual subscription to notifications related to application instances. + operationId: subscriptionsByIdDELETE + tags: + - subscriptions + responses: + '204': + $ref: '#/components/responses/204' + '401': + $ref: '#/components/responses/401' + '403': + $ref: '#/components/responses/403' + '404': + $ref: '#/components/responses/404' + '429': + $ref: '#/components/responses/429' + /user_defined_notification: + post: + description: The POST method delivers a notification from the application lifecycle management resource to the subscriber. + operationId: userdefinednotificationPOST + tags: + - notification + requestBody: + description: 'A notification of an event related to an application instance. + + The allowed data types of application state change notification are: + + AppInstNotification + + AppLcmOpOccNotification + + AppInstanceIdentifierCreationNotification + + AppInstanceIdentifierDeletionNotification.' + content: + application/json: + schema: + type: object + properties: + AppInstNotification: + $ref: '#/components/schemas/AppInstNotification' + responses: + '204': + description: The notification was delivered successfully. The response message content shall be empty. + content: + application/json: + schema: + type: object + properties: {} + '401': + $ref: '#/components/responses/401' + '403': + $ref: '#/components/responses/403' + '404': + $ref: '#/components/responses/404' + '429': + $ref: '#/components/responses/429' + /app_instances/{appInstanceId}/instantiate: + post: + summary: Instantiate the application instance. + description: The POST method is to instantiate the application instance. + operationId: instantiatePOST + tags: + - app-lcm + requestBody: + description: The request message content contains the information necessary to instantiate an application instance. + required: true + content: + application/json: + schema: + type: object + properties: + InstantiateAppRequest: + $ref: '#/components/schemas/InstantiateAppRequest' + responses: + '202': + description: 'The request was accepted for processing, but the processing has not yet been completed. + + + The response message content shall be empty. + + + The HTTP response shall include a "Location" HTTP header that contains the URI of the newly-created "application LCM operation occurrence" resource that corresponds to this application instance instantiation operation.' + content: + application/json: + schema: + type: object + properties: {} + '400': + $ref: '#/components/responses/400' + '401': + $ref: '#/components/responses/401' + '403': + $ref: '#/components/responses/403' + '404': + $ref: '#/components/responses/404' + '406': + $ref: '#/components/responses/406' + '429': + $ref: '#/components/responses/429' + /app_instances/{appInstanceId}/terminate: + post: + summary: Terminate the application instance. + description: The POST method is used to terminate an application instance. + operationId: terminatePOST + tags: + - app-lcm + requestBody: + description: Parameters for the termination, as defined in clause 6.2.2.9. + required: true + content: + application/json: + schema: + type: object + properties: + TerminateAppRequest: + $ref: '#/components/schemas/TerminateAppRequest' + responses: + '202': + description: 'The request was accepted for processing, but the processing has not yet been completed. + + + The response message content shall be empty. + + + The HTTP response shall include a "Location" HTTP header that contains the URI of the newlycreated "application LCM operation occurrence" resource that corresponds to this operation.' + content: + application/json: + schema: + type: object + properties: {} + '400': + $ref: '#/components/responses/400' + '401': + $ref: '#/components/responses/401' + '403': + $ref: '#/components/responses/403' + '404': + $ref: '#/components/responses/404' + '406': + $ref: '#/components/responses/406' + '429': + $ref: '#/components/responses/429' + /app_instances/{appInstanceId}/operate: + post: + summary: Start or stop the application instance. + description: The POST method is used to change the operational state, i.e. start or stop, of the application instance. + operationId: operatePOST + tags: + - app-lcm + requestBody: + description: The request message content contains the information necessary to change the operational state of application instance, as described in clause 6.2.2.8. + required: true + content: + application/json: + schema: + type: object + properties: + OperateAppRequest: + $ref: '#/components/schemas/OperateAppRequest' + responses: + '202': + description: 'The request was accepted for processing, but it is possible that the processing is not yet completed. + + + The response message content shall be empty. + + + The HTTP response shall include a "Location" HTTP header that contains the URI of the newlycreated "application LCM operation occurrence" resource that corresponds to this application instance instantiation operation.' + content: + application/json: + schema: + type: object + properties: {} + '400': + $ref: '#/components/responses/400' + '401': + $ref: '#/components/responses/401' + '403': + $ref: '#/components/responses/403' + '404': + $ref: '#/components/responses/404' + '406': + $ref: '#/components/responses/406' + '429': + $ref: '#/components/responses/429' + /app_lcm_op_occs: + get: + summary: Query multiple application lifecycle operation occurrences. + description: The GET method retrieves information of operation status about multiple application instance lifecycle management operation occurrences. + operationId: applcmopoccsGET + 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' + responses: + '200': + description: 'Status information for zero or more application instance lifecycle management operation occurrences was queried successfully. + + + The response message content shall contain in an array the status information about zero or more application lifecycle operation occurrences.' + content: + application/json: + schema: + type: object + properties: + AppLcmOpOcc: + type: array + items: + $ref: '#/components/schemas/AppLcmOpOcc' + '400': + $ref: '#/components/responses/400' + '401': + $ref: '#/components/responses/401' + '403': + $ref: '#/components/responses/403' + '404': + $ref: '#/components/responses/404' + '406': + $ref: '#/components/responses/406' + '429': + $ref: '#/components/responses/429' + /app_lcm_op_occs/{appLcmOpOccId}: + get: + summary: Read the operation state of the individual application lifecycle operation occurrence. + description: The GET method reads the status information of an individual application LCM operation occurrence, which is used by the procedure of "query application lifecycle operation status" as described in clause 6.3.1.6. + operationId: applcmopoccsByIdGET + tags: + - app-lcm + responses: + '200': + description: 'Information about an application LCM operation occurrence was read successfully. + + + The response message content shall contain status information about an application lifecycle management operation occurrence.' + content: + application/json: + schema: + type: object + properties: + AppLcmOpOcc: + $ref: '#/components/schemas/AppLcmOpOcc' + '400': + $ref: '#/components/responses/400' + '401': + $ref: '#/components/responses/401' + '403': + $ref: '#/components/responses/403' + '404': + $ref: '#/components/responses/404' + '406': + $ref: '#/components/responses/406' + '429': + $ref: '#/components/responses/429' + /app_lcm_op_occs/{appLcmOpOccId}/cancel: + post: + summary: Cancel an ongoing individual application LCM operation. + description: "The POST method is used to cancel an ongoing application lifecycle operation whose related \"Individual application LCM operation occurrence\" resource is in \"PROCESSING\" state. This method shall comply with the URI request and response data structures, and response codes, as specified in tables\_7.4.11.3.1-1 and 7.4.11.3.1-2." + operationId: cancelPOST + tags: + - app-lcm + requestBody: + description: The request message content contains the information on the cancellation mode to apply to the ongoing application LCM operation, as described in clause 5.4.5. + required: true + content: + application/json: + schema: + type: object + properties: + CancelMode: + $ref: '#/components/schemas/CancelMode' + responses: + '202': + description: 'The request was accepted for processing, but it is possible that the processing is not yet completed. + + + The response message content shall be empty.' + content: + application/json: + schema: + type: object + properties: {} + '400': + $ref: '#/components/responses/400' + '401': + $ref: '#/components/responses/401' + '403': + $ref: '#/components/responses/403' + '404': + $ref: '#/components/responses/404' + '406': + $ref: '#/components/responses/406' + '429': + $ref: '#/components/responses/429' + /app_lcm_op_occs/{appLcmOpOccId}/fail: + post: + summary: Finally fail an ongoing individual application LCM operation. + description: "The POST method marks an application lifecycle management operation occurrence as \"finally failed\" if that operation occurrence is in \"FAILED_TEMP\" state. This method shall comply with the URI request and response data structures, and response codes, as specified in tables\_7.4.12.3.1-1 and 7.4.12.3.1-2." + operationId: failPOST + tags: + - app-lcm + requestBody: + description: The POST request message content to this resource shall be empty. + content: + application/json: {} + required: false + responses: + '200': + description: 'Shall be returned when the state of the application lifecycle management operation occurrence has been changed successfully. + + + The response shall include a representation of the "Individual application lifecycle management operation occurrence" resource.' + content: + application/json: + schema: + type: object + properties: + AppLcmOpOcc: + $ref: '#/components/schemas/AppLcmOpOcc' + '400': + $ref: '#/components/responses/400' + '401': + $ref: '#/components/responses/401' + '403': + $ref: '#/components/responses/403' + '404': + $ref: '#/components/responses/404' + '406': + $ref: '#/components/responses/406' + '429': + $ref: '#/components/responses/429' + /app_lcm_op_occs/{appLcmOpOccId}/retry: + post: + summary: Retry an ongoing individual application LCM operation. + description: "The POST method is used to initiate retrying an application lifecycle operation that has experience a temporary failure, i.e. the related \"application LCM operation occurrence\" is in \"FAILED_TEMP\" state. This method shall comply with the URI request and response data structures, and response codes, as specified in tables\_7.4.13.3.1-1 and 7.4.13.3.1-2." + operationId: retryPOST + tags: + - app-lcm + requestBody: + description: The POST request message content to this resource shall be empty. . + content: + application/json: {} + required: false + responses: + '202': + description: 'The request was accepted for processing, but it is possible that the processing is not yet completed. + + + The response message content shall be empty.' + content: + application/json: + schema: + type: object + properties: {} + '400': + $ref: '#/components/responses/400' + '401': + $ref: '#/components/responses/401' + '403': + $ref: '#/components/responses/403' + '404': + $ref: '#/components/responses/404' + '406': + $ref: '#/components/responses/406' + '429': + $ref: '#/components/responses/429' + /app_instances/{appInstanceId}/configure_platform_for_app: + post: + description: The POST method is to provide configuration information in AppD to the MEPM-V, intended to configure the MEP to run the application instance. + operationId: configureplatformforappPOST + tags: + - app-lcm + requestBody: + description: "The request message content contains the information necessary to provide configuration information in AppD as described in clause\_6.2.2.21." + required: true + content: + application/json: + schema: + type: object + properties: + ConfigPlatformForAppRequest: + $ref: '#/components/schemas/ConfigPlatformForAppRequest' + responses: + '202': + description: 'The request has been accepted for processing, but the processing has not yet been completed. + + + The response message content shall be empty. + + + The HTTP response shall include a "Location" HTTP header that contains the URI of the newly-created "application LCM operation occurrence" resource that corresponds to this application instance configure operation.' + content: + application/json: + schema: + type: object + properties: {} + '400': + $ref: '#/components/responses/400' + '401': + $ref: '#/components/responses/401' + '403': + $ref: '#/components/responses/403' + '429': + $ref: '#/components/responses/429' +components: + schemas: + ProblemDetails: + type: object + properties: + type: + type: string + format: uri + description: A URI reference according to IETF RFC 3986 that identifies the problem type + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: URI + title: + type: string + description: A short, human-readable summary of the problem type + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: String + status: + type: integer + format: uint32 + description: The HTTP status code for this occurrence of the problem + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: Uint32 + detail: + type: string + description: A human-readable explanation specific to this occurrence of the problem + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: String + instance: + type: string + format: uri + description: A URI reference that identifies the specific occurrence of the problem + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: URI + VirtualMemoryData: + type: object + required: + - virtualMemSize + properties: + virtualMemSize: + type: number + description: Amount of virtual memory in MB. + virtualMemOversubscriptionPolicy: + type: string + description: 'The memory core oversubscription policy in terms of virtual memory to physical memory + + on the platform. The cardinality can be 0 during the allocation request, if no particular + + value is requested. + + ' + vduMemRequirements: + type: array + items: + $ref: '#/components/schemas/KeyValuePairs' + description: Array of key-value pair requirements on the memory for the VDU. + numaEnabled: + type: boolean + description: Specifies the memory allocation to be cognisant of the relevant process/core allocation. + hugePagesRequirements: + type: string + description: Specifies requirements on the huge pages resources for the virtual memory. + BlockStorageData: + type: object + required: + - sizeOfStorage + properties: + sizeOfStorage: + type: number + description: Size of virtualised storage resource in GB. + vduStorageRequirements: + type: array + items: + $ref: '#/components/schemas/KeyValuePairs' + description: An array of key-value pairs that articulate the storage deployment requirements. + rdmaEnabled: + type: boolean + description: Indicate if the storage support RDMA. + swImageDesc: + type: object + $ref: '#/components/schemas/SwImageDesc' + description: 'References the software image to be loaded on the VirtualStorage resource created + + based on this VirtualStorageDesc. Shall be absent when used for virtual disks. See note + + ' + VirtualCpuData: + type: object + required: + - numVirtualCpu + properties: + cpuArchitecture: + type: string + description: CPU architecture type. Examples are x86, ARM. + numVirtualCpu: + type: integer + description: Number of virtual CPUs. + virtualCpuClock: + type: number + description: Minimum virtual CPU clock rate (e.g. in MHz). + virtualCpuOversubscriptionPolicy: + type: string + description: The CPU core oversubscription policy, e.g. the relation of virtual CPU cores to physical CPU cores/threads. + vduCpuRequirements: + type: array + items: + $ref: '#/components/schemas/KeyValuePairs' + description: Array of key-value pair requirements on the Compute (CPU) for the VDU. + virtualCpuPinning: + $ref: '#/components/schemas/VirtualCpuPinningData' + RequestedAdditionalCapabilityData: + type: object + required: + - requestedAdditionalCapabilityName + - supportMandatory + - targetPerformanceParameters + properties: + requestedAdditionalCapabilityName: + type: string + description: Specifies a requested additional capability for the VDU + supportMandatory: + type: boolean + description: Indicates whether the requested additional capability is mandatory for successful operation + minRequestedAdditionalCapabilityVersion: + type: string + description: Specifies the minimum version of the requested additional capability + preferredRequestedAdditionalCapabilityVersion: + type: string + description: Specifies the preferred version of the requested additional capability + targetPerformanceParameters: + type: array + description: Specifies specific attributes, dependent on the requested additional capability type. + items: + $ref: '#/components/schemas/KeyValuePairs' + VirtualStorageDescriptor: + type: object + required: + - id + - typeOfStorage + properties: + id: + type: string + description: Unique identifier of this VirtualStorageDesc in the VNFD. + typeOfStorage: + type: string + description: Type of virtualised storage resource. + enum: + - BLOCK + - OBJECT + - FILE + blockStorageData: + type: object + $ref: '#/components/schemas/BlockStorageData' + description: Details of block storage. + objectStorageData: + type: object + $ref: '#/components/schemas/ObjectStorageData' + description: Details of object storage. + fileStorageData: + type: object + $ref: '#/components/schemas/FileStorageData' + description: Details of file storage. + nfviMaintenanceInfo: + type: object + $ref: '#/components/schemas/NfviMaintenanceInfo' + description: Information on the rules to be observed during NFVI operation and maintenance. + perVnfcInstance: + type: boolean + description: Indicates whether the virtual storage resource shall be instantiated per VNFC instance. + FileStorageData: + type: object + required: + - sizeOfStorage + - fileSystemProtocol + - intVirtualLinkDesc + properties: + sizeOfStorage: + type: number + description: Size of virtualised storage resource in GB. + fileSystemProtocol: + type: string + description: The shared file system protocol (e.g. NFS, CIFS). + intVirtualLinkDesc: + type: object + $ref: '#/components/schemas/VnfVirtualLinkDesc' + description: Reference of the internal VLD which this file storage connects to. + VnfVirtualLinkDesc: + type: object + required: + - virtualLinkDescId + - virtualLinkDescFlavour + - connectivityType + properties: + virtualLinkDescId: + type: string + description: Unique identifier of this internal VLD in VNFD. + virtualLinkDescFlavour: + type: array + description: Describes a specific flavour of the VL with specific bitrate requirements. + items: + $ref: '#/components/schemas/VirtualLinkDescFlavour' + connectivityType: + type: object + description: See clause 7.1.7.3. + $ref: '#/components/schemas/ConnectivityType' + testAccess: + type: array + description: Specifies test access facilities expected on the VL. + items: + type: string + example: passive monitoring + description: + type: string + description: Provides human-readable information on the purpose of the VL. + example: control plane traffic + monitoringParameter: + type: array + description: Specifies the virtualised resource related performance metrics on VLD level to be tracked by the VNFM. + items: + $ref: '#/components/schemas/MonitoringParameter' + nfviMaintenanceInfo: + type: object + description: When present, provides information on the rules to be observed when an instance based on this VnfVirtualLinkDesc is impacted during NFVI operation and maintenance (e.g. NFVI resource upgrades). NfviMaintenanceInfo is defined in clause 7.1.8.17. + $ref: '#/components/schemas/NfviMaintenanceInfo' + externallyManaged: + type: string + description: Specifies the intent of the VNF designer with respect to the internal VL instances created from this descriptor being externally managed. + enum: + - REQUIRED + - ALLOWED + default: ALLOWED + ConnectivityType: + type: object + required: + - layerProtocol + properties: + layerProtocol: + type: array + description: 'Specifies the protocols that the VL uses See note 1 and note 2. + + ' + items: + type: string + enum: + - Ethernet + - MPLS + - ODU2 + - IPV4 + - IPV6 + - Pseudo-Wire + - Etc + minItems: 1 + flowPattern: + type: string + description: Specifies the flow pattern of the connectivity (Line, Tree, Mesh, etc.). + description: "NOTE 1 The top layer protocol of the VL protocol stack shall always be provided. The lower layer protocols may be included when there are specific requirements on these layers. \nNOTE 2 If more than 1 values are present, the first value represents the highest layer protocol data, and the last value represents the lowest layer protocol data. \n" + QoS: + type: object + required: + - latency + - packetDelayVariation + properties: + latency: + type: number + description: Latency of the VL in milliseconds. + packetDelayVariation: + type: number + description: Packet delay variation of the VL in milliseconds. + packetLossRatio: + type: number + description: Packet loss ratio of the VL in percentage. + VirtualLinkDescFlavour: + type: object + required: + - flavourId + properties: + flavourId: + type: string + description: Identifies a flavour within a VnfVirtualLinkDesc. + qos: + type: object + $ref: '#/components/schemas/QoS' + description: QoS of the VL. + Version: + type: object + required: + - srcVnfdId + - dstVnfdId + - srcFlavourId + properties: + srcVnfdId: + type: string + description: Identifier of the source VNFD and the source VNF package. See note 1. + dstVnfdId: + type: string + description: Identifier of the destination VNFD and the destination VNF package. See note 1. + srcFlavourId: + type: string + description: Identifier of the deployment flavour in the source VNF package for which this modification applies. See note 2. + description: "NOTE 1: Either the srcVnfdId or the dstVnfdId shall be equal to the vnfdId of the VNFD containing this version selector. \nNOTE 2: It is up to protocol design stage to decide whether there is further optimization potential to apply one modification for multiple srcFlavourIds.\n" + AppInstanceSubscriptionType: + type: string + enum: + - AppInstanceStateChangeSubscription + - AppLcmOpOccStateChangeSubscription + - AppIdentifierCreationSubscription + - AppIdentifierDeletionSubscription + description: String representing the type of a subscription. + McioInfo: + type: object + required: + - mcioId + - mcioName + - mcioNamespace + - vduId + - cismId + - mcioType + - desiredInstances + - availableInstances + properties: + mcioId: + type: string + description: Identifier of this MCIO, created by the CISM. + mcioName: + type: string + description: Human readable name of this MCIO. + mcioNamespace: + type: string + description: Namespace of this MCIO + vduId: + type: string + description: Reference to the applicable Vdu information element in the VNFD. + cismId: + type: string + description: Identifier of the CISM managing this MCIO. + mcioType: + type: string + description: The type of MCIO. See note 1. + desiredInstances: + type: integer + description: Number of desired MCIO instances. + availableInstances: + type: integer + description: Number of available MCIO instances + additionalInfo: + type: string + description: Additional information which is specific to the MCIO, its type, and which is available from the CISM. See note 2 + description: "NOTE 1: The type of MCIO as specified in the declarative descriptor of the MCIO, and that can be read from the CISM.\nEXAMPLE: In case of MCIOs managed by Kubernetes\xAE, the type of MCIO corresponds to the \"kind\" property of the declarative descriptor.\nNOTE 2: If the attribute additionalInfo is present, it may contain runtime information on the actual and desired state of the MCIO(s)\n" + CommunicationInterface: + type: object + properties: + ipAddresses: + type: array + description: Entry point information of the service as one or more pairs of IP address and port. + items: + $ref: '#/components/schemas/ipAddresses' + OsContainerDescriptor: + title: OsContainerDescriptor + type: object + required: + - osContainerDescId + - name + - description + - swImageDesc + properties: + osContainerDescId: + type: string + description: Unique identifier of this OsContainerDesc in the VNFD. + name: + type: string + description: Human readable name of this OS container. + description: + type: string + description: Human readable description of this OS container. + requestedCpuResources: + type: integer + description: Number of CPU resources requested for the container (e.g. in milli-CPU-s). + requestedMemoryResources: + type: number + description: Amount of memory resources requested for the container (e.g. in MB). + requestedEphemeralStorageResources: + type: number + description: Size of ephemeral storage resources requested for the container (e.g. in GB). + extendedResourceRequests: + type: array + items: + $ref: '#/components/schemas/KeyValuePairs' + description: An array of key-value pairs of extended resources required by the container see note. + cpuResourceLimit: + type: integer + description: Number of CPU resources the container can maximally use (e.g. in milli-CPU). + memoryResourceLimit: + type: number + description: Amount of memory resources the container can maximally use (e.g. in MB). + ephemeralStorageResourceLimit: + type: number + description: Size of ephemeral storage resources the container can maximally use (e.g. in GB). + hugePageResources: + type: object + description: Specifies HugePages resources requested for the container, which the container can maximally use. + additionalProperties: + type: string + cpuPinningRequirements: + type: object + $ref: '#/components/schemas/VirtualCpuPinningData' + description: Requirements for CPU pinning configuration for this OS container. + swImageDesc: + type: object + $ref: '#/components/schemas/SwImageDesc' + description: Describes the software image realizing this OS container. + bootData: + type: string + description: Contains a string or a URL to a file contained in the VNF package used to customize a container resource at boot time. The bootData may contain variable parts that are replaced by deployment specific values before being sent. + monitoringParameters: + type: array + items: + $ref: '#/components/schemas/MonitoringParameter' + description: Specifies the virtualized resource related performance metrics on the OsContainerDesc level to be tracked by the VNFM. + KeyValuePairs: + type: object + additionalProperties: + type: object + ObjectStorageData: + type: object + properties: + maxSizeOfStorage: + type: number + description: Maximum size of virtualized storage resource in GB. + VirtualCpuPinningData: + type: object + properties: + virtualCpuPinningPolicy: + type: string + description: Indicates the policy for CPU pinning. + enum: + - STATIC + - DYNAMIC + virtualCpuPinningRule: + type: array + items: + type: string + description: List of rules that should be considered during the allocation of the virtual CPUs to logical CPUs in case of "STATIC" virtualCpuPinningPolicy. + SwImageDesc: + type: object + required: + - id + - name + - version + - containerFormat + - swImage + properties: + id: + type: string + description: The identifier of this software image. + name: + type: string + description: The name of this software image. + version: + type: string + description: The version of this software image. + checksum: + $ref: '#/components/schemas/ChecksumData' + description: The checksum of the software image file. See note 3. + containerFormat: + type: string + description: The container format describes the container file format in which software image is provided. + diskFormat: + type: string + description: The disk format of a software image is the format of the underlying disk image. See note 1. + minDisk: + type: number + description: The minimal disk size requirement for this software image. The value of the "size of storage" attribute of the VirtualStorageDesc referencing this SwImageDesc shall not be smaller than the value of minDisk. See note 1. + minRam: + type: number + description: The minimal RAM requirement for this software image. The value of the "size" attribute of VirtualMemoryData of the Vdu referencing this SwImageDesc shall not be smaller than the value of minRam. See note 2. + size: + type: number + description: The size of this software image file. See note 3. + swImage: + type: object + $ref: '#/components/schemas/SwImageDesc' + description: This is a reference to the actual software image. The reference can be relative to the root of the VNF Package or can be a URL. + operatingSystem: + type: string + description: Specifies the operating system used in the software image. This attribute may also identify if a 32 bit or 64 bit software image is used. + supportedVirtualisationEnvironment: + type: array + items: + type: string + description: Specifies the virtualisation environments (e.g. hypervisor) compatible with this software image. + description: "NOTE 1: The attribute shall be present for VM-based software images referenced from a Vdu or from a VirtualStorageDesc, and shall be absent otherwise.\nNOTE 2: The attribute may be present for VM-based software images referenced from a Vdu or from a VirtualStorageDesc, and shall be absent otherwise.\nNOTE 3: The attribute shall be present for VM-based software images referenced from a Vdu or from a VirtualStorageDesc, and may be present otherwise. \n" + MonitoringParameter: + type: object + required: + - monitoringParameterId + - performanceMetric + properties: + monitoringParameterId: + type: string + description: Unique identifier of the monitoring parameter. + name: + type: string + description: Human readable name of the monitoring parameter. + performanceMetric: + type: string + description: Specifies the virtualised resource performance metric. + collectionPeriod: + type: string + description: An attribute that describes the periodicity at which to collect the performance information. + VirtualComputeDescriptor: + title: VirtualComputeDescriptor + type: object + required: + - virtualComputeDescId + - virtualMemory + - virtualCpu + properties: + virtualComputeDescId: + type: string + description: Unique identifier of this VirtualComputeDesc in the VNFD. + logicalNode: + type: array + description: The logical node requirements. + items: + $ref: '#/components/schemas/LogicalNodeRequirements' + requestAdditionalCapabilities: + type: array + description: Specifies requirements for additional capabilities. These may be for a range of purposes. One example is acceleration related capabilities. See clause 7.1.9.5. + items: + $ref: '#/components/schemas/RequestedAdditionalCapabilityData' + computeRequirements: + description: Specifies compute requirements. + type: array + items: + type: string + format: not-specified + virtualMemory: + type: object + description: The virtual memory of the virtualised compute. See clause 7.1.9.3.2. + $ref: '#/components/schemas/VirtualMemoryData' + virtualCpu: + type: object + description: The virtual CPU(s) of the virtualised compute. See clause 7.1.9.2.3. + $ref: '#/components/schemas/VirtualCpuData' + virtualDisk: + type: array + description: The local or ephemeral disk(s) of the virtualised compute. See clause 7.1.9.4.3. + items: + $ref: '#/components/schemas/BlockStorageData' + LogicalNodeRequirements: + type: object + required: + - id + - logicalNodeRequirementDetail + properties: + id: + type: string + format: uuid + description: Identifies this set of logical node requirements + logicalNodeRequirementDetail: + description: 'The logical node-level compute, memory and I/O requirements. An array of key-value pairs that articulate the deployment requirements. This could include the number of CPU cores on this logical node, a memory configuration specific to a logical node (e.g. such as available in the Linux kernel via the libnuma library) or a requirement related to the association of an I/O device with the logical node. + + ' + type: array + items: + type: string + format: not-specified + ChecksumData: + type: object + required: + - algorithm + - hash + properties: + algorithm: + type: string + description: Specifies the algorithm used to obtain the checksum value. See note. + hash: + type: string + description: 'Contains the result of applying the algorithm indicated by the algorithm attribute to the data to which this ChecksumData refers. + + ' + description: 'NOTE: The algorithm attribute value shall be one of the Hash Function Textual Names present in [2]. + + ' + ipAddresses: + type: object + required: + - host + - port + properties: + host: + type: string + description: Host portion of the address. + port: + type: integer + description: Port portion of the address. + Polygon: + type: string + description: 'To specify a constraint specific to Polygons, it is useful to introduce the concept of a linear ring: + + + - A linear ring is a closed LineString with four or more positions. + + - The first and last positions are equivalent, and they MUST contain identical values; their representation SHOULD also be identical. + + - A linear ring is the boundary of a surface or the boundary of a hole in a surface. + + - A linear ring MUST follow the right-hand rule with respect to the area it bounds, i.e., exterior rings are counterclockwise, and holes are clockwise. + + + Note: The [GJ2008] specification did not discuss linear ring winding order. For backward compatibility, parsers SHOULD NOT reject Polygons that do not follow the right-hand rule. + + + Though a linear ring is not explicitly represented as a GeoJSON geometry type, it leads to a canonical formulation of the Polygon geometry type definition as follows: + + + - For type "Polygon", the "coordinates" member MUST be an array of linear ring coordinate arrays. + + - For Polygons with more than one of these rings, the first MUST be the exterior ring, and any others MUST be interior rings. The exterior ring bounds the surface, and the interior rings (if present) bound holes within the surface. + + ' + TransportTypes: + x-etsi-ref: 8.1.6.4 + type: string + enum: + - REST_HTTP + - MB_TOPIC_BASED + - MB_ROUTING + - MB_PUBSUB + - RPC + - RPC_STREAMING + - WEBSOCKET + description: The enumeration TransportType represents types of transports. + x-etsi-mec-extensible: true + x-etsi-mec-enumeration-table: + - value: REST_HTTP + description: RESTful API using HTTP (as defined in IETF RFC 9110 [11]). + - value: MB_TOPIC_BASED + description: Topic-based message bus which routes messages to receivers based on subscriptions, if a pattern passed on subscription matches the topic of the message. EXAMPLE MQTT (see [i.4]). + - value: MB_ROUTING + description: Routing-based message bus which routes messages to receivers based on subscriptions, if a key passed on subscription is equal to the key of the message. + - value: MB_PUBSUB + description: Publish-subscribe based message bus which distributes messages to all subscribers. + - value: RPC + description: Remote procedure call. EXAMPLE GRPC (see [i.5]). + - value: RPC_STREAMING + description: Remote procedure call supporting streams of requests and responses. EXAMPLE GRPC (see [i.5]). + - value: WEBSOCKET + description: Websockets as defined in IETF RFC 6455 [12]. + SerializerType: + x-etsi-ref: 8.1.6.3 + type: string + enum: + - JSON + - XML + - PROTOBUF3 + x-etsi-mec-extensible: true + x-etsi-mec-enumeration-table: + - value: JSON + description: Javascript object notation [9] + - value: XML + description: eXtensible Mark-up Language version 1.1 [10] + - value: PROTOBUF3 + description: Protocol buffers version 3 [i.3] + SecurityInfo: + x-etsi-ref: 8.1.5.4 + type: object + properties: + oAuth2Info: + $ref: '#/components/schemas/OAuth2Info' + (extensions): + description: Extensions for alternative transport mechanisms. These extensions depend on the actual transport, and are out of scope of the present document. For instance, such extensions may be used to signal the necessary parameters for the client to use TLS-based authorization defined for alternative transports (see ETSI GS MEC 009 [5] for more information). + OAuth2Info: + description: Parameters related to use of OAuth 2.0. Shall be present in case OAuth 2.0 (see IETF RFC 6749 [13]) is supported to secure the provision of the service over the transport. + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: 0..1 + type: object + properties: + grantTypes: + description: "List of supported OAuth 2.0 grant types. Each entry shall be one of the following permitted values: \u2022 OAUTH2_AUTHORIZATION_CODE (Authorization code grant type) \u2022 OAUTH2_IMPLICIT_GRANT (Implicit grant type) \u2022 OAUTH2_RESOURCE_OWNER (Resource owner password credentials grant type) \u2022 OAUTH2_CLIENT_CREDENTIALS (Client credentials grant type) Only the value \"OAUTH2_CLIENT_CREDENTIALS\" is supported in the present document." + x-etsi-mec-origin-type: Enum_inlined + x-etsi-mec-cardinality: 1..4 + type: array + minItems: 0 + items: + type: string + enum: + - SEE_DESCRIPTION + tokenEndpoint: + description: The token endpoint. Shall be present unless the grant type is OAUTH2_IMPLICIT_GRANT. + x-etsi-mec-origin-type: Uri + x-etsi-mec-cardinality: 0..1 + type: string + format: uri + required: + - grantTypes + NfviMaintenanceInfo: + type: object + required: + - impactNotificationLeadTime + properties: + impactNotificationLeadTime: + type: number + description: The minimum notification lead time requested for upcoming impact of the virtualised resource or their group. + isImpactMitigationRequested: + type: boolean + description: When set to True, it is requested that at the time of the notification of an upcoming change that is expected to have an impact on the VNF, virtualised resource(s) of the same characteristics as the impacted ones is/are provided to compensate for the impact. + supportedMigrationType: + type: array + description: Applicable to VirtualComputeDesc and VirtualStorageDesc. When present, specifies the allowed migration types in the order of preference in case of an impact starting with the most preferred type. For LIVE_MIGRATION, see note 1. + items: + type: string + enum: + - NO_MIGRATION + - OFFLINE_MIGRATION + - LIVE_MIGRATION + maxUndetectableInterruptionTime: + type: number + description: Applicable to VirtualComputeDesc and VirtualStorageDesc. When present, it specifies the maximum interruption time that can go undetected at the VNF level and therefore which will not trigger VNF-internal recovery during live migration. (see note 1) + minRecoveryTimeBetweenImpacts: + type: number + description: When present, it specifies the time required by the group to recover from an impact, thus, the minimum time requested between consecutive impacts of the group. (see note 2.) + maxNumberOfImpactedInstances: + type: object + $ref: '#/components/schemas/MaxNumberOfImpactedInstances' + description: When present, specifies for different group sizes the maximum number of instances that can be impacted simultaneously within the group of virtualised resources without losing functionality. Zero cardinality indicates no constraint (see note 2). MaxNumberOfImpactedInstances is defined in clause 7.1.8.18. See note 3. + minNumberOfPreservedInstances: + type: object + $ref: '#/components/schemas/MinNumberOfPreservedInstances' + description: When present, specifies for different group sizes the minimum number of instances which need to be preserved simultaneously within the group of virtualised resources. Zero cardinality indicates no constraint (see note 2). MinNumberOfPreservedInstances is defined in clause 7.1.8.22.See note 3. + description: 'NOTE 1: When the maximum undetectable interruption time is specified it constrains the live migration. If it cannot be + + guaranteed on an NFVI that the interruption caused by the live migration will be less than the indicated + + maximum undetectable interruption time, then life migration should be downgraded according to the order of preference. + + NOTE 2: Impacts to instances of the group happening within the minimum recovery time are considered simultaneous + + impacts. + + NOTE 3: Either "maxNumberOfImpactedInstances" or "minNumberOfPreservedInstances" may be provided, but not both + + ' + MaxNumberOfImpactedInstances: + type: object + required: + - maxNumberOfImpactedInstances + properties: + groupSize: + type: integer + description: Determines the size of the group for which the maxNumberOfImpactedInstances is specified. + maxNumberOfImpactedInstances: + type: integer + description: The maximum number of instances that can be impacted simultaneously within the group of the specified size. + description: "NOTE 1: Each groupSize value specified for a group of virtual resources shall be unique, and it shall be possible to form an ascending ordered list of groupSizes. \nNOTE 2: The number of instances in the group for which the maxNumberOfImpactedInstances is specified may be equal to groupSize or less. When the number of instances is less than \n the groupSize, it shall be at least 1 if this is the first groupSize in the ordered list of groupSizes, or it shall be greater by at least 1 than the previous groupSize in the ordered list of groupSizes.\n" + MinNumberOfPreservedInstances: + type: object + required: + - minNumberOfPreservedInstances + properties: + groupSize: + type: integer + description: When present, determines the size of the group for which the minNumberOfPreservedInstances is specified. Otherwise, the size is not limited. + minNumberOfPreservedInstances: + type: integer + description: The minimum number of instances which need to be preserved simultaneously within the group of the specified size. + description: "NOTE 1: Each groupSize value specified for a group of virtual resources shall be unique, and it shall be possible to form \n an ascending ordered list of groupSizes. \nNOTE 2: The number of instances in the group for which the minNumberOfPreservedInstances is specified may be equal \n to groupSize or less.\n" + CategoryRef: + x-etsi-ref: 8.1.5.2 + type: object + properties: + href: + description: Reference of the catalogue. + x-etsi-mec-origin-type: Uri + x-etsi-mec-cardinality: '1' + type: string + id: + description: Unique identifier of the category. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + name: + description: Name of the category. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + version: + description: Name of the category. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + required: + - href + - id + - name + - version + ServiceDescriptor: + x-etsi-ref: 6.2.1.7 + type: object + properties: + serName: + description: The name of the service, for example, RNIS, LocationService, etc. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + serCategory: + # description': A Category reference of the service, defined in ETSI GS MEC 011 [17]. + $ref: '#/components/schemas/CategoryRef' + # x-etsi-mec-origin-type': CategoryRef + # x-etsi-mec-cardinality': 0..1 + version: + description: The version of the service. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + transportsSupported: + type: array + items: + $ref: '#/components/schemas/TransportsSupported' + required: + - serName + - version + FeatureDependency: + x-etsi-ref: 6.2.1.8 + type: object + properties: + featureName: + description: The name of the feature, for example, UserApps, UEIdentity, etc. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + version: + description: The version of the feature. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + required: + - featureName + - version + TrafficRuleDescriptor: + x-etsi-ref: 6.2.1.9 + type: object + properties: + trafficRuleId: + description: Identifies the traffic rule. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + filterType: + type: string + 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.' + enum: + - SEE_DESCRIPTION + x-etsi-mec-origin-type: Enum_inlined + x-etsi-mec-cardinality: '1' + 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." + x-etsi-mec-origin-type: Integer + x-etsi-mec-cardinality: '1' + type: integer + trafficFilter: + description: The filter used to identify specific flow/packets that need to be handled by the MEC host. + x-etsi-mec-origin-type: TrafficFilter + x-etsi-mec-cardinality: 1..N + type: array + minItems: 1 + items: + $ref: '#/components/schemas/TrafficFilter' + action: + type: string + description: 'Identifies the action of the MEC host data plane, when a packet matches the trafficFilter, the example actions include: + + DROP, + + FORWARD_DECAPSULATED, + + FORWARD_ENCAPSULATED, + + PASSTHROUGH, + + DUPLICATE_DECAPSULATED, + + DUPLICATE_ENCAPSULATED ' + enum: + - SEE_DESCRIPTION + x-etsi-mec-origin-type: Enum_inlined + x-etsi-mec-cardinality: '1' + dstInterface: + # description': Describes the destination interface information. If the action is FORWARD_DECAPSULATED, FORWARD_ENCAPSULATED or PASSTHROUGH, one value shall be provided. If the action is DUPLICATE_DECAPSULATED or DUPLICATE_ENCAPSULATED, two values shall be provided. See note 2. If the action is DROP, no value shall be provided. + $ref: '#/components/schemas/InterfaceDescriptor' + # x-etsi-mec-origin-type': InterfaceDescriptor + # x-etsi-mec-cardinality': 0..2 + required: + - trafficRuleId + - filterType + - priority + - trafficFilter + - action + x-etsi-notes: "NOTE 1:\tValue indicates the priority in descending order, i.e. with 0 as the highest priority and 255 as the lowest priority.\nNOTE 2:\tSome applications (like inline/tap) require two interfaces. The first interface in the case of inline/tap is on the client (e.g. UE) side and the second on the core network (e.g. EPC) side." + TrafficFilter: + x-etsi-ref: 6.2.1.10 + type: object + properties: + srcAddress: + description: 'An IP address or a range of IP addresses. + + For IPv4, the IP address could be an IP address plus mask, or an individual IP address, or a range of IP addresses. + + For IPv6, the IP address could be an IP prefix, or a range of IP prefixes.' + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + type: string + dstAddress: + description: 'An IP address or a range of IP addresses. + + For IPv4, the IP address could be an IP address plus mask, or an individual IP address, or a range of IP addresses. + + For IPv6, the IP address could be an IP prefix, or a range of IP prefixes.' + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + type: string + srcPort: + description: A port or a range of ports. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + type: string + dstPort: + description: A port or a range of ports. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + type: string + protocol: + description: Specify the protocol of the traffic filter. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + type: string + tag: + description: Used for tag based traffic rule. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + type: string + uri: + description: An URI label, in application layer, i.e. in HTTP message, is used to filter the traffic. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + type: string + packetLabel: + description: A customized packet label in network layer, as defined by the owner of the MEC platform, is used to filter the traffic. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + type: string + srcTunnelAddress: + description: Used for GTP tunnel based traffic rule. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + type: string + tgtTunnelAddress: + description: Used for GTP tunnel based traffic rule. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + type: string + srcTunnelPort: + description: Used for GTP tunnel based traffic rule. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + type: string + dstTunnelPort: + description: Used for GTP tunnel based traffic rule. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + type: string + qCI: + description: Used to match all packets that have the same QCI. + x-etsi-mec-origin-type: Integer + x-etsi-mec-cardinality: 0..1 + type: integer + dSCP: + description: Used to match all IPv4 packets that have the same DSCP. + x-etsi-mec-origin-type: Integer + x-etsi-mec-cardinality: 0..1 + type: integer + tC: + description: Used to match all IPv6 packets that have the same TC. + x-etsi-mec-origin-type: Integer + x-etsi-mec-cardinality: 0..1 + type: integer + InterfaceDescriptor: + x-etsi-ref: 6.2.1.11 + type: object + properties: + interfaceType: + type: string + description: 'Type of interface: TUNNEL, MAC, IP, etc.' + enum: + - SEE_DESCRIPTION + x-etsi-mec-origin-type: Enum_inlined + x-etsi-mec-cardinality: '1' + tunnelInfo: + # description': Included only if the destination address type is tunnel. + $ref: '#/components/schemas/TunnelInfo' + # x-etsi-mec-origin-type': TunnelInfo + # x-etsi-mec-cardinality': 0..1 + srcMACAddress: + description: If the interface type is MAC, the source address identifies the MAC address of the interface. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + dstMACAddress: + description: If the interface type is MAC, the destination address identifies the MAC address of the destination. Only used for dstInterface. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + dstIPAddress: + description: If the interface type is IP, the destination address identifies the IP address of the destination. Only used for dstInterface. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + required: + - interfaceType + TunnelInfo: + x-etsi-ref: 6.2.1.12 + type: object + properties: + tunnelType: + type: string + description: 'Type of tunnel: GTP-U, GRE, etc.' + enum: + - SEE_DESCRIPTION + x-etsi-mec-origin-type: Enum_inlined + x-etsi-mec-cardinality: '1' + tunnelDstAddress: + description: Destination address of the tunnel. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + tunnelSrcAddress: + description: Source address of the tunnel. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + tunnelSpecificData: + description: Parameters specific to the tunnel. + x-etsi-mec-origin-type: Not_specified + x-etsi-mec-cardinality: 0..1 + type: object + required: + - tunnelType + - tunnelDstAddress + - tunnelSrcAddress + DNSRuleDescriptor: + x-etsi-ref: 6.2.1.13 + type: object + properties: + dnsRuleId: + description: Identifies the DNS Rule + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + domainName: + description: FQDN of the DNS rule + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + ipAddressType: + type: string + description: 'Specifies the IP address type, value: IP_V6, IP_V4' + enum: + - SEE_DESCRIPTION + x-etsi-mec-origin-type: Enum_inlined + x-etsi-mec-cardinality: '1' + ipAddress: + description: IP address given by the DNS rule + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + ttl: + description: Time-to-live value + x-etsi-mec-origin-type: Integer + x-etsi-mec-cardinality: 0..1 + type: integer + required: + - dnsRuleId + - domainName + - ipAddressType + - ipAddress + LatencyDescriptor: + x-etsi-ref: 6.2.1.14 + type: object + properties: + maxLatency: + description: The value of the maximum latency in nano seconds tolerated by the MEC application. See note. + x-etsi-mec-origin-type: Uint32 + x-etsi-mec-cardinality: '1' + type: integer + format: uint32 + required: + - maxLatency + x-etsi-notes: "NOTE:\tThe latency is considered to be the one way end-to-end latency between the client application (e.g. in a device) and the service (i.e. the MEC application instance)." + ServiceDependency: + x-etsi-ref: 6.2.1.17 + type: object + properties: + serName: + description: The name of the service, for example, RNIS, LocationService, AMS, etc. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + serCategory: + # description': A Category reference of the service. + $ref: '#/components/schemas/CategoryRef' + # x-etsi-mec-origin-type': CategoryRef + # x-etsi-mec-cardinality': 0..1 + version: + description: The version of the service. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + serTransportDependencies: + description: Indicates transport and serialization format dependencies of consuming the service. Defaults to REST + JSON if absent. See note. + x-etsi-mec-origin-type: TransportDependency + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + $ref: '#/components/schemas/TransportDependency' + requestedPermissions: + description: 'Requested permissions regarding the access of the application to the service. See clause 7.2 of ETSI GS MEC 009 [4]. + + The format of this attribute is left for the data model design stage.' + x-etsi-mec-origin-type: Not_specified + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + $ref: '#/components/schemas/Not_specified' + required: + - serName + - version + x-etsi-notes: "NOTE:\tThis attribute indicates groups of transport bindings that a service-consuming MEC application supports for the consumption of the MEC service defined by this ServiceDependency structure. If at least one of the indicated groups is supported by the service it may be consumed by the application." + TransportDependency: + x-etsi-ref: 6.2.1.18 + type: object + properties: + transport: + # description': Information about the transport in this transport binding. + $ref: '#/components/schemas/TransportDescriptor' + # x-etsi-mec-origin-type': TransportDescriptor + # x-etsi-mec-cardinality': '1' + serializers: + description: Information about the serializers in this transport binding, as defined in the SerializerType type in ETSI GS MEC 011 [17]. Support for at least one of the entries is required in conjunction with the transport. + x-etsi-mec-origin-type: SerializerType + x-etsi-mec-cardinality: 1..N + type: array + minItems: 1 + items: + $ref: '#/components/schemas/SerializerType' + labels: + description: Set of labels that allow to define groups of transport bindings. The mechanism of the grouping is defined below this table. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 1..N + type: array + minItems: 1 + items: + type: string + required: + - transport + - serializers + - labels + TransportDescriptor: + x-etsi-ref: 6.2.1.19 + type: object + properties: + name: + description: The name of this transport. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + description: + description: Human-readable description of this transport. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + type: + # description': Type of the transport, as defined in the TransportTypes type in ETSI GS MEC 011 [17]. + $ref: '#/components/schemas/TransportTypes' + # x-etsi-mec-origin-type': TransportTypes + # x-etsi-mec-cardinality': '1' + protocol: + description: The name of the protocol used. Shall be set to "HTTP" for a REST API. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + version: + description: The version of the protocol used. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + security: + # description': Information about the security used by the transport in ETSI GS MEC 011 [17]. + $ref: '#/components/schemas/SecurityInfo' + # x-etsi-mec-origin-type': SecurityInfo + # x-etsi-mec-cardinality': '1' + implSpecificInfo: + description: Additional implementation specific details of the transport. + x-etsi-mec-origin-type: Not_specified + x-etsi-mec-cardinality: 0..1 + type: object + required: + - name + - type + - protocol + - version + - security + UserContextTransferCapability: + x-etsi-ref: 6.2.1.20 + type: object + properties: + statefulApplication: + description: 'If the application is stateful, this attribute shall be set to true. + + Otherwise, this attribute shall be set to false. ' + x-etsi-mec-origin-type: Boolean + x-etsi-mec-cardinality: '1' + type: boolean + userContextTransferSupport: + description: 'This attribute shall be present if the application is stateful and shall be absent otherwise. + + + If the application supports the user context transfer, this attribute shall be set to true. + + Otherwise this attribute shall be set to false.' + x-etsi-mec-origin-type: Boolean + x-etsi-mec-cardinality: 0..1 + type: boolean + required: + - statefulApplication + AppNetworkPolicy: + x-etsi-ref: 6.2.1.21 + type: object + properties: + steeredNetwork: + $ref: '#/components/schemas/SteeredNetwork' + required: + - steeredNetwork + x-etsi-notes: "NOTE:\tThe network types may depend on the availability of deployed access networks of MEC system." + LocationConstraints: + x-etsi-ref: 6.2.2.2 + type: object + properties: + countryCode: + description: The two-letter ISO 3166 [3] country code in capital letters. Shall be present in the case that "area" attribute is absent. May be present if the "area" attribute is present. See note. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + civicAddressElement: + type: array + items: + $ref: '#/components/schemas/CivicAddressElement' + area: + # description': Geographic area. Shall be absent if the "civicAddressElement" attribute is present. The content of this attribute shall follow the provisions for the "Polygon" geometry object as defined in IETF RFC 7946 [8], for which the "type" member shall be set to the value "Polygon". See note. + $ref: '#/components/schemas/Polygon' + # x-etsi-mec-origin-type': "Polygon (see IETF RFC\_7946\_[8])" + # x-etsi-mec-cardinality': 0..1 + x-etsi-notes: "NOTE:\tIf both \"countryCode\" and \"area\" are present, no conflicts should exist between the values of these two attributes. In case of conflicts, the API producer (e.g. MEO, MEAO) shall disregard parts of the geographic area signalled by \"area\" that are outside the boundaries of the country signalled by \"countryCode\". If \"countryCode\" is absent, it is solely the \"area\" attribute that defines the location constraint." + CreateAppInstanceRequest: + x-etsi-ref: 6.2.2.3 + type: object + properties: + appDId: + description: The application descriptor identifier. It is managed by the application provider to identify the application descriptor in a globally unique way. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + appInstanceName: + description: Human-readable name of the application instance to be created. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + appInstanceDescription: + description: Human-readable description of the application instance to be created. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + appPlacementInfo: + # description': Describes the information of selected MEC platform for the application instance to associate. See note. + $ref: '#/components/schemas/MepInformation' + # x-etsi-mec-origin-type': MepInformation + # x-etsi-mec-cardinality': 0..1 + required: + - appDId + x-etsi-notes: "NOTE:\tThis field applies to Mm3* reference point only." + AppInstanceInfo: + x-etsi-ref: 6.2.2.4 + type: object + properties: + id: + description: Identifier of the application instance represented by this data type. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + appInstanceName: + description: Name of the application instance. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + appInstanceDescription: + description: Human-readable description of the application instance to be created. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + appDId: + description: 'The application descriptor identifier is managed by the application provider to identify the application descriptor in a globally unique way. + + It is copied from the AppD of the onboarded application package.' + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + appProvider: + description: The onboarded application package provider name. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + appName: + description: The onboarded application name. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + appSoftVersion: + description: The application software version. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + appDVersion: + description: Version of the application descriptor. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + appPkgId: + description: Identifier of the onboarded application package. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + vimConnectionInfo: + description: "Information about VIM connections to be used for managing the resources for the application instance.\nThe keys of the map, each of which identifies information about a particular VIM connection, are managed by the MEO and referenced from other data structures via the \"vimConnectionId\" attribute. \nSee notes 1 and 3." + x-etsi-mec-origin-type: VimConnectionInfoMap + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + $ref: '#/components/schemas/VimConnectionInfoMap' + nsInstanceId: + description: Identifier of the NS instance created by NFVO in which the MEC application has been instantiated as a VNF instance. See note 2. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + vnfInstanceId: + description: "Identifier of the VNF instance created by VNFM that the MEC application has been instantiated as. See\_note 2." + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + instantiationState: + type: string + description: "Instantiation state of the application instance: \nNOT_INSTANTIATED: the application instance is not instantiated.\nINSTANTIATED: the application instance has been instantiated." + enum: + - SEE_DESCRIPTION + x-etsi-mec-origin-type: Enum_inlined + x-etsi-mec-cardinality: '1' + instantiatedAppState: + $ref: '#/components/schemas/InstantiatedAppState' + communicationInterface: + # description': Interface for communication with other application instances. See clause 7.5.2 of ETSI GS MEC 021 [13] for the data type definition. + $ref: '#/components/schemas/CommunicationInterface' + # x-etsi-mec-origin-type': CommunicationInterface + # x-etsi-mec-cardinality': 0..1 + _links: + $ref: '#/components/schemas/_links' + required: + - id + - appDId + - appProvider + - appName + - appSoftVersion + - appDVersion + - appPkgId + - instantiationState + - _links + x-etsi-notes: "NOTE 1:\tThis field does not apply if the data structure is used by MEAO.\nNOTE 2:\tThis field applies if the data structure is used by MEAO.\nNOTE 3:\tThis field does not apply if the data structure is used on Mm3*.\nNOTE 4:\tThis field applies if the data structure is used on Mm3*.\nNOTE 5:\tThis field applies if the data structure is used on Mm1 or Mm3*.\nNOTE 6:\tIt is not specified in the present document how location information is obtained in the case of MEC in NFV.\nNOTE 7:\tThis attribute reflects the ETSI NFV interpretation of the cloud native workloads." + AppInstanceSubscriptionFilter: + x-etsi-ref: 6.2.2.5 + type: object + properties: + appInstSelectorType: + type: integer + description: '0 = void + + 1 = APP_IDENTITY + + 2 = APP_NAME + + 3 = APP_D_ID + + 4 = APP_FROM_PROVIDER' + enum: + - SEE_DESCRIPTION + x-etsi-mec-origin-type: Enum (Inlined) + x-etsi-mec-cardinality: '1' + appInstances: + description: 'If appInstIdSelector = APP_IDENTITY match existing application instances with an "application instance identifier" listed in this attribute. + + + If appInstIdSelector = APP_NAME match existing application instances with an "application instance name" listed in this attribute. + + + If appInstIdSelector = APP_D_ID match existing application instances, or those created in the future whilst the subscription is active, based on the application descriptors identified by one of the "application descriptor identities" listed in this attribute. + + + If appInstIdSelector = APP_FROM_PROVIDER this attribute shall not be included.' + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + type: string + appsFromProviders: + type: array + items: + $ref: '#/components/schemas/AppsFromProviders' + required: + - appInstSelectorType + AppLcmOpOccSubscriptionFilter: + x-etsi-ref: 6.2.2.6 + type: object + properties: + appInstanceSubscriptionFilter: + # description': If present, this attribute contains filter criteria that selects one or more application instances on which to receive "LCM operation occurrence" notifications. + $ref: '#/components/schemas/AppInstanceSubscriptionFilter' + # x-etsi-mec-origin-type': AppInstanceSubscriptionFilter + # x-etsi-mec-cardinality': 0..1 + notificationTypes: + description: 'Match particular notification types. + + + Permitted values: + + AppLcmOpOccNotification.' + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + operationTypes: + type: string + description: 'Type of the LCM operation represented by this application instance LCM operation occurrence. + + + Permitted values: + + INSTANTIATE. + + OPERATE. + + TERMINATE. + + + Match particular application lifecycle operation types for the notification of AppLcmOpOccNotification. + + + May be present if the "notificationTypes" attribute contains the value "AppLcmOpOccNotification", and shall be absent otherwise.' + enum: + - SEE_DESCRIPTION + x-etsi-mec-origin-type: array(Enum (inlined)) + x-etsi-mec-cardinality: 0..N + operationStates: + type: string + description: 'Type of the LCM operation state represented by this application instance LCM operation occurrence. + + + Permitted values: + + STARTING. + + PROCESSING. + + COMPLETED. + + FAILED. + + FAILED_TEMP + + + Match particular LCM operation state values as reported in notifications of AppLcmOpOccNotification. + + + May be present if the "notificationTypes" attribute contains the value "AppLcmOpOccNotification", and shall be absent otherwise.' + enum: + - SEE_DESCRIPTION + x-etsi-mec-origin-type: array(Enum (inlined)) + x-etsi-mec-cardinality: 0..N + InstantiateAppRequest: + x-etsi-ref: 6.2.2.7 + type: object + properties: + virtualComputeDescriptor: + # description': Describes CPU and memory requirements, as well as optional additional requirements, such as disk and acceleration related capabilities, of the single VM to realize the application instance to be created. See notes 1 and 4. + $ref: '#/components/schemas/VirtualComputeDescriptor' + # x-etsi-mec-origin-type': VirtualComputeDescriptor + # x-etsi-mec-cardinality': 0..1 + osContainerDescriptor: + description: 'Describes CPU, memory requirements and limits, and software images of the OS Containers realizing this MEC application corresponding to OS Containers sharing the same host and same network namespace. + + See notes 1, 4 and 5.' + x-etsi-mec-origin-type: OsContainerDescriptor + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + $ref: '#/components/schemas/OsContainerDescriptor' + virtualStorageDescriptor: + description: Defines descriptors of virtual storage resources to be used by the application instance to be created. See note 1. + x-etsi-mec-origin-type: VirtualStorageDescriptor + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + $ref: '#/components/schemas/VirtualStorageDescriptor' + selectedMECHostInfo: + description: Describes the information of selected host for the application instance. See note 2. + x-etsi-mec-origin-type: MECHostInformation + x-etsi-mec-cardinality: 1..N + type: array + minItems: 1 + items: + $ref: '#/components/schemas/MECHostInformation' + locationConstraints: + # description': Defines the location constraints for the application instance to be created. See note 3. + $ref: '#/components/schemas/LocationConstraints' + # x-etsi-mec-origin-type': LocationConstraints + # x-etsi-mec-cardinality': 0..1 + vimConnectionInfo: + description: "Information about VIM connections to be used for managing the resources for the application instance, or refer to external/externally-managed virtual links.\nThis attribute shall only be supported and may be present if application-related resource management in direct mode is applicable. See\_note 2." + x-etsi-mec-origin-type: VimConnectionInfoMap + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + $ref: '#/components/schemas/VimConnectionInfoMap' + appTermCandsForCoord: + # description': Provides sets of applications as termination candidate alternatives that the MEO/MEAO shall select from when utilizing the coordinate LCM operation exchange in pre-emption situations (see step 3 in clause 5.3.1). If this attribute is omitted, the MEO/MEAO shall make its own selection for the coordinate LCM operation exchange. See note 3. + $ref: '#/components/schemas/AppTermCandsForCoord' + # x-etsi-mec-origin-type': AppTermCandsForCoord + # x-etsi-mec-cardinality': 0..1 + required: + - selectedMECHostInfo + x-etsi-notes: "NOTE 1:\tThis attribute may be provided in the InstantiateAppRequest structure to override the same attribute in the AppD.\nNOTE 2:\tThis field applies to Mm3 reference point only.\nNOTE 3:\tThis field applies to Mm1 reference point only.\nNOTE 4:\tOnly one of virtualComputeDescriptor or osContainerDescriptor shall be present.\nNOTE 5:\tThis attribute reflects the ETSI NFV interpretation of the cloud native workloads." + OperateAppRequest: + x-etsi-ref: 6.2.2.8 + type: object + properties: + changeStateTo: + type: string + description: 'The desired operational state: + + STARTED: the application instance is up and running. + + STOPPED: the application instance stops operation.' + enum: + - SEE_DESCRIPTION + x-etsi-mec-origin-type: Enum_inlined + x-etsi-mec-cardinality: '1' + stopType: + type: string + description: 'The stop type: + + FORCEFUL: it will stop the application immediately after accepting the request. + + GRACEFUL: it will first arrange to take the application instance out of service after accepting the request. Once that operation is successful or once the timer value specified in the "gracefulStopTimeout" attribute expires, it will stop the application. + + See notes 1 and 3.' + enum: + - SEE_DESCRIPTION + x-etsi-mec-origin-type: Enum_inlined + x-etsi-mec-cardinality: 0..1 + gracefulStopTimeout: + description: The time interval (in seconds) to wait for the application instance to be taken out of service during graceful stop, before stopping the application. See note 1 and note 2. + x-etsi-mec-origin-type: Integer + x-etsi-mec-cardinality: 0..1 + type: integer + required: + - changeStateTo + x-etsi-notes: "NOTE 1:\tThe \"stopType\" and \"gracefulStopTimeout\" attributes shall be absent, when the \"changeStateTo\" attribute is equal to \"STARTED\".\nNOTE 2:\tThe \"gracefulStopTimeout\" attribute shall be present, when the \"changeStateTo\" is equal to \"STOPPED\" and the \"stopType\" attribute is equal to \"GRACEFUL\". The \"gracefulStopTimeout\" attribute shall be absent, when the \"changeStateTo\" attribute is equal to \"STOPPED\" and the \"stopType\" attribute is equal to \"FORCEFUL\".\nNOTE 3:\tThe request shall be treated as if the \"stopType\" attribute was set to \"FORCEFUL\", when the \"changeStateTo\" attribute is equal to \"STOPPED\" and the \"stopType\" attribute is absent." + TerminateAppRequest: + x-etsi-ref: 6.2.2.9 + type: object + properties: + terminationType: + type: string + description: "Indicates whether forceful or graceful termination is requested. \nFORCEFUL: it will shut down the application instance and release the resources immediately after accepting the request. See note.\nGRACEFUL: it will first arrange to take the application instance out of service after accepting the request. Once the operation of taking the application instance out of service finishes or once the timer value specified in the \"gracefulTerminationTimeout\" attribute expires, it will shut down the application instance and release the resources." + enum: + - SEE_DESCRIPTION + x-etsi-mec-origin-type: Enum_inlined + x-etsi-mec-cardinality: '1' + gracefulTerminationTimeout: + description: 'This attribute is only applicable in case of graceful termination. It defines the time to wait for the application instance to be taken out of service before shutting down the application and releasing the resources. + + The unit is seconds. + + If not given and the "terminationType" attribute is set to "GRACEFUL", it is expected to wait for the successful taking out of service of the application, no matter how long it takes, before shutting down the application and releasing the resources.' + x-etsi-mec-origin-type: Integer + x-etsi-mec-cardinality: 0..1 + type: integer + required: + - terminationType + x-etsi-notes: "NOTE:\tIf the application instance is still in service, requesting forceful termination can adversely impact service." + AppInstSubscriptionInfo: + x-etsi-ref: 6.2.2.10 + type: object + properties: + id: + description: Identifier of the subscription to application instance operational state change notification. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + subscriptionType: + description: Shall be set to "AppInstanceStateChangeSubscription". + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + appInstanceState: + type: string + description: 'Application instance state subscribed to: + + NOT_INSTANTIATED: the application instance is not instantiated. + + STARTED: the application instance is up and running. + + STOPPED: the application instance stops operation.' + enum: + - SEE_DESCRIPTION + x-etsi-mec-origin-type: Enum_inlined + x-etsi-mec-cardinality: 0..1 + appInstanceSubscriptionFilter: + # description': Criteria used to select application instances on which to send notifications related to this subscription. + $ref: '#/components/schemas/AppInstanceSubscriptionFilter' + # x-etsi-mec-origin-type': AppInstanceSubscriptionFilter + # x-etsi-mec-cardinality': 0..1 + callbackUri: + description: The URI of the endpoint for the subscription related notification to be sent to. + x-etsi-mec-origin-type: Uri + x-etsi-mec-cardinality: '1' + type: string + format: uri + _links: + $ref: '#/components/schemas/_links1' + required: + - id + - subscriptionType + - callbackUri + - _links + AppInstNotification: + x-etsi-ref: 6.2.2.11 + 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. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + notificationType: + description: Discriminator for the different notification types. Shall be set to "AppInstanceStateChangeSubscription" for this notification type. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + appInstanceState: + type: string + description: 'Application instance state: + + NOT_INSTANTIATED: the application instance is not instantiated. + + STARTED: the application instance is up and running. + + STOPPED: the application instance stops operation.' + enum: + - SEE_DESCRIPTION + x-etsi-mec-origin-type: Enum_inlined + x-etsi-mec-cardinality: '1' + subscriptionId: + description: Identifier of the subscription related to this notification. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + timeStamp: + # description': Date and time of the notification generation. + $ref: '#/components/schemas/TimeStamp' + # x-etsi-mec-origin-type': TimeStamp + # x-etsi-mec-cardinality': '1' + appInstanceId: + description: Identifier of application instance. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + appPkgId: + description: Identifier of the onboarded application package. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + appDId: + description: The application descriptor identifier identifies the application package and the application descriptor in a globally unique way. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + appInstLocation: + # description': Location of the MEC application instance. Shall be present if the application instance is instantiated and shall be absent otherwise. + $ref: '#/components/schemas/LocationInformation' + # x-etsi-mec-origin-type': LocationInformation + # x-etsi-mec-cardinality': 0..1 + _links: + $ref: '#/components/schemas/_links2' + required: + - id + - notificationType + - appInstanceState + - subscriptionId + - timeStamp + - appInstanceId + - appPkgId + - appDId + - _links + AppInstSubscriptionRequest: + x-etsi-ref: 6.2.2.12 + type: object + properties: + subscriptionType: + description: Shall be set to "AppInstanceStateChangeSubscription". + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + callbackUri: + description: The URI of the endpoint for the subscription related notification to be sent to. + x-etsi-mec-origin-type: Uri + x-etsi-mec-cardinality: '1' + type: string + format: uri + appInstanceState: + type: string + description: 'Only send notifications for application instances that are in one of the states listed in this attribute. If this attribute is absent, match all states. + + + Application states: + + NOT_INSTANTIATED: the application instance is not instantiated. + + STARTED: the application instance is up and running. + + STOPPED: the application instance stops operation.' + enum: + - SEE_DESCRIPTION + x-etsi-mec-origin-type: Enum_inlined + x-etsi-mec-cardinality: 0..1 + appInstanceSubscriptionFilter: + # description': Criteria used to filter application instances for which to send notifications related to this subscription. + $ref: '#/components/schemas/AppInstanceSubscriptionFilter' + # x-etsi-mec-origin-type': AppInstanceSubscriptionFilter + # x-etsi-mec-cardinality': 0..1 + required: + - subscriptionType + - callbackUri + AppLcmOpOcc: + x-etsi-ref: 6.2.2.13 + type: object + properties: + id: + description: Identifier of the subscription to application LCM operation occurrence notification. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + operationState: + type: string + description: 'Operation state: + + STARTING: the LCM operation starting. + + PROCESSING: the LCM operation is currently in execution. + + COMPLETED: the LCM operation has been completed. + + FAILED: The LCM operation has failed and it cannot be retried, as it is determined that such action will not succeed. + + FAILED_TEMP: The LCM operation has failed and execution has stopped, but the execution of the operation is not considered to be closed.' + enum: + - SEE_DESCRIPTION + x-etsi-mec-origin-type: Enum_inlined + x-etsi-mec-cardinality: '1' + stateEnteredTime: + # description': Date and time when the current state was entered. + $ref: '#/components/schemas/TimeStamp' + # x-etsi-mec-origin-type': TimeStamp + # x-etsi-mec-cardinality': '1' + startTime: + # description': Date and time of the start of the operation. + $ref: '#/components/schemas/TimeStamp' + # x-etsi-mec-origin-type': TimeStamp + # x-etsi-mec-cardinality': '1' + lcmOperation: + type: string + description: 'Type of the actual LCM operation represented by this application instance LCM operation occurrence: + + INSTANTIATE. + + OPERATE. + + TERMINATE. + + This attribute is associated to the operationParams.' + enum: + - SEE_DESCRIPTION + x-etsi-mec-origin-type: Enum_inlined + x-etsi-mec-cardinality: '1' + operationParams: + # description': 'Input parameters of the LCM operation. This attribute shall be formatted according to the request data type of the related LCM operation. The following mapping between LCM operation and the data type of this attribute shall apply: INSTANTIATE: InstantiateAppRequest. OPERATE: OperateAppRequest. TERMINATE: TerminateAppRequest. This attribute shall be present if this data type is returned in a response to reading an individual resource. See note 2.' + $ref: '#/components/schemas/InstantiateAppRequest' + # x-etsi-mec-origin-type': InstantiateAppRequest + # x-etsi-mec-cardinality': 0..1 + isCancelPending: + description: If the application LCM operation occurrence operationState is in "PROCESSING" state and the operation is being cancelled, this attribute shall be set to true. Otherwise, it shall be set to false. + x-etsi-mec-origin-type: Boolean + x-etsi-mec-cardinality: 0..1 + type: boolean + cancelMode: + # description': 'The mode of a cancellation: GRACEFUL: Indicates ongoing resource management operations in the underlying system are being allowed to complete execution or timing out. FORCEFUL: Indicates ongoing resource management operations in the underlying system are being forcefully cancelled. Shall be present when isCancelPending equals true and shall be absent otherwise.' + $ref: '#/components/schemas/CancelMode' + # x-etsi-mec-origin-type': CancelMode + # x-etsi-mec-cardinality': 0..1 + _links: + $ref: '#/components/schemas/_links3' + required: + - id + - operationState + - stateEnteredTime + - startTime + - lcmOperation + - _links + x-etsi-notes: "Note 1:\tVoid.\nNote 2:\tThis object contains structured data, and shall comply with the provisions of clause 4 of IETF RFC 8259 [5]." + AppLcmOpOccSubscriptionRequest: + x-etsi-ref: 6.2.2.14 + type: object + properties: + subscriptionType: + description: Shall be set to "AppLcmOpOccStateChangeSubscription". + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + callbackUri: + description: The URI of the endpoint for the subscription related notification to be sent to. + x-etsi-mec-origin-type: Uri + x-etsi-mec-cardinality: '1' + type: string + format: uri + appLcmOpOccSubscriptionFilter: + # description': Subscription filter criteria to match specific application LCM operation occurrences. + $ref: '#/components/schemas/AppLcmOpOccSubscriptionFilter' + # x-etsi-mec-origin-type': AppLcmOpOccSubscriptionFilter + # x-etsi-mec-cardinality': 0..1 + required: + - subscriptionType + - callbackUri + AppLcmOpOccSubscriptionInfo: + x-etsi-ref: 6.2.2.15 + type: object + properties: + id: + description: Identifier of this subscription resource. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + subscriptionType: + description: Shall be set to "AppLcmOpOccStateChangeSubscription". + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + callbackUri: + description: The URI of the endpoint for the subscription related notification to be sent to. + x-etsi-mec-origin-type: Uri + x-etsi-mec-cardinality: '1' + type: string + format: uri + appLcmOpOccSubscriptionFilter: + # description': Criteria used to select application LCM operation occurrences on which to send notifications related to this subscription. + $ref: '#/components/schemas/AppLcmOpOccSubscriptionFilter' + # x-etsi-mec-origin-type': AppLcmOpOccSubscriptionFilter + # x-etsi-mec-cardinality': 0..1 + _links: + $ref: '#/components/schemas/_links1' + required: + - id + - subscriptionType + - callbackUri + - _links + AppLcmOpOccNotification: + x-etsi-ref: 6.2.2.16 + 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. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + notificationType: + description: Discriminator for the different notification types. Shall be set to "AppLcmOpOccStateChangeSubscription" for this notification type. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + operationType: + type: string + description: 'Type of the LCM operation represented by this application instance LCM operation occurrence. + + + Permitted values: + + INSTANTIATE. + + OPERATE. + + TERMINATE.' + enum: + - SEE_DESCRIPTION + x-etsi-mec-origin-type: Enum_inlined + x-etsi-mec-cardinality: '1' + operationState: + type: string + description: 'Operation state: + + + STARTING: the LCM operation starting. + + PROCESSING: the LCM operation is currently in execution. + + COMPLETED: the LCM operation has been completed. + + FAILED: The LCM operation has failed and it cannot be retried, as it is determined that such action will not succeed. + + FAILED_TEMP: The LCM operation has failed and execution has stopped, but the execution of the operation is not considered to be closed.' + enum: + - SEE_DESCRIPTION + x-etsi-mec-origin-type: Enum_inlined + x-etsi-mec-cardinality: '1' + subscriptionId: + description: Identifier of the subscription to this notification. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + timeStamp: + # description': Date and time of the notification generation. + $ref: '#/components/schemas/TimeStamp' + # x-etsi-mec-origin-type': TimeStamp + # x-etsi-mec-cardinality': '1' + appLcmOpOccId: + description: Identifier of application lifecycle management operation occurrence. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + appInstanceId: + description: Identifier of application instance. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + _links: + $ref: '#/components/schemas/_links4' + required: + - id + - notificationType + - operationType + - operationState + - subscriptionId + - timeStamp + - appLcmOpOccId + - appInstanceId + - _links + MECHostInformation: + x-etsi-ref: 6.2.2.17 + type: object + properties: + hostName: + description: Human-readable name of MEC host. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + hostId: + $ref: '#/components/schemas/KeyValuePairs' + required: + - hostId + x-etsi-notes: "NOTE:\tThis information can be structured to cater for host identification schemes that are more complex than a simple identifier, e.g. when referring to the structure of an NFVI." + VimConnectionInfo: + x-etsi-ref: 6.2.2.18 + type: object + properties: + id: + description: The identifier of the VIM Connection. This identifier is managed by the MEO. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + vimId: + description: 'The identifier of the VIM instance. This identifier is managed by the MEO. + + + Shall be present to address additional information about the VIM if such information has been configured into the MEPM by means outside the scope of the present document, and should be absent otherwise.' + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + vimType: + description: 'Discriminator for the different types of the VIM information. + + + The value of this attribute determines the structure of the "interfaceInfo" and "accessInfo" attributes, based on the type of the VIM. + + + The set of permitted values is expected to change over time as new types or versions of VIMs become available.' + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + interfaceInfo: + $ref: '#/components/schemas/KeyValuePairs' + accessInfo: + $ref: '#/components/schemas/KeyValuePairs' + extra: + $ref: '#/components/schemas/KeyValuePairs' + required: + - id + - vimType + AppInstanceSubscriptionLinkList: + x-etsi-ref: 6.2.2.19 + type: object + properties: + _links: + $ref: '#/components/schemas/_links5' + required: + - _links + ConfigPlatformForAppRequest: + x-etsi-ref: 6.2.2.21 + type: object + properties: + appServiceRequired: + description: Describes services a MEC application requires to run. + x-etsi-mec-origin-type: ServiceDependency + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + $ref: '#/components/schemas/ServiceDependency' + appServiceOptional: + description: Describes services a MEC application may use if available. + x-etsi-mec-origin-type: ServiceDependency + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + $ref: '#/components/schemas/ServiceDependency' + appServiceProduced: + description: Describes services a MEC application is able to produce to the platform or other MEC applications. Only relevant for service-producing apps. + x-etsi-mec-origin-type: ServiceDescriptor + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + $ref: '#/components/schemas/ServiceDescriptor' + appFeatureRequired: + description: Describes features a MEC application requires to run. + x-etsi-mec-origin-type: FeatureDependency + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + $ref: '#/components/schemas/FeatureDependency' + appFeatureOptional: + description: Describes features a MEC application may use if available. + x-etsi-mec-origin-type: FeatureDependency + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + $ref: '#/components/schemas/FeatureDependency' + transportDependencies: + description: Transports, if any, that this application requires to be provided by the platform. These transports will be used by the application to deliver services provided by this application. Only relevant for service-producing apps. + x-etsi-mec-origin-type: TransportDependency + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + $ref: '#/components/schemas/TransportDependency' + appTrafficRule: + description: Describes traffic rules the MEC application requires. + x-etsi-mec-origin-type: TrafficRuleDescriptor + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + $ref: '#/components/schemas/TrafficRuleDescriptor' + appDNSRule: + description: Describes DNS rules the MEC application requires. + x-etsi-mec-origin-type: DNSRuleDescriptor + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + $ref: '#/components/schemas/DNSRuleDescriptor' + appLatency: + # description': Describes the maximum latency tolerated by the MEC application. + $ref: '#/components/schemas/LatencyDescriptor' + # x-etsi-mec-origin-type': LatencyDescriptor + # x-etsi-mec-cardinality': 0..1 + userContextTransferCapability: + # description': If the application supports the user context transfer capability, this attribute shall be included. + $ref: '#/components/schemas/UserContextTransferCapability' + # x-etsi-mec-origin-type': UserContextTransferCapability + # x-etsi-mec-cardinality': 0..1 + appNetworkPolicy: + # description': If present, it represents the application network policy of carrying the application traffic. + $ref: '#/components/schemas/AppNetworkPolicy' + # x-etsi-mec-origin-type': AppNetworkPolicy + # x-etsi-mec-cardinality': 0..1 + MepInformation: + x-etsi-ref: 6.2.2.22 + type: object + properties: + mepName: + description: Human-readable name of MEC platform. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + mepId: + description: Deployment-specific identifier of MEC platform. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + required: + - mepId + AppTermCandsForCoord: + x-etsi-ref: 6.2.2.23 + type: object + properties: + terminationOptions: + type: array + items: + $ref: '#/components/schemas/TerminationOptions' + required: + - terminationOptions + AppInstIdCreationSubscriptionRequest: + x-etsi-ref: 6.2.2.25 + type: object + properties: + subscriptionType: + description: Shall be set to "AppIdentifierCreationSubscription". + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + callbackUri: + description: The URI of the endpoint for the subscription related notification to be sent to. + x-etsi-mec-origin-type: Uri + x-etsi-mec-cardinality: '1' + type: string + format: uri + appInstanceSubscriptionFilter: + # description': Criteria used to filter application instances for which to send notifications related to this subscription. See note. + $ref: '#/components/schemas/AppInstanceSubscriptionFilter' + # x-etsi-mec-origin-type': AppInstanceSubscriptionFilter + # x-etsi-mec-cardinality': 0..1 + required: + - subscriptionType + - callbackUri + x-etsi-notes: "NOTE:\tIf present, the value of attribute \"appInstSelectorType\" in appInstanceSubscriptionFilter can only be set as \"APP_D_ID\" or \"APP_FROM_PROVIDER\"." + AppInstIdCreationSubscriptionInfo: + x-etsi-ref: 6.2.2.26 + type: object + properties: + id: + description: Identifier of the subscription to application instance operational state change notification. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + subscriptionType: + description: Shall be set to "AppIdentifierCreationSubscription". + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + callbackUri: + description: The URI of the endpoint for the subscription related notification to be sent to. + x-etsi-mec-origin-type: Uri + x-etsi-mec-cardinality: '1' + type: string + format: uri + appInstanceSubscriptionFilter: + # description': Criteria used to select application instances on which to send notifications related to this subscription. + $ref: '#/components/schemas/AppInstanceSubscriptionFilter' + # x-etsi-mec-origin-type': AppInstanceSubscriptionFilter + # x-etsi-mec-cardinality': 0..1 + _links: + $ref: '#/components/schemas/_links1' + required: + - id + - subscriptionType + - callbackUri + - _links + AppInstanceIdentifierCreationNotification: + x-etsi-ref: 6.2.2.27 + 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. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + notificationType: + description: Discriminator for the different notification types. Shall be set to "AppIdentifierCreationSubscription" for this notification type. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + subscriptionId: + description: Identifier of the subscription related to this notification. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + timeStamp: + # description': Date and time of the notification generation. + $ref: '#/components/schemas/TimeStamp' + # x-etsi-mec-origin-type': TimeStamp + # x-etsi-mec-cardinality': '1' + appInstanceId: + description: The created application instance Identifier. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + _links: + $ref: '#/components/schemas/_links6' + required: + - id + - notificationType + - subscriptionId + - timeStamp + - appInstanceId + - _links + AppInstIdDeletionSubscriptionRequest: + x-etsi-ref: 6.2.2.28 + type: object + properties: + subscriptionType: + description: Shall be set to "AppIdentifierDeletionSubscription". + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + callbackUri: + description: The URI of the endpoint for the subscription related notification to be sent to. + x-etsi-mec-origin-type: Uri + x-etsi-mec-cardinality: '1' + type: string + format: uri + appInstanceSubscriptionFilter: + # description': Criteria used to filter application instances for which to send notifications related to this subscription. + $ref: '#/components/schemas/AppInstanceSubscriptionFilter' + # x-etsi-mec-origin-type': AppInstanceSubscriptionFilter + # x-etsi-mec-cardinality': 0..1 + required: + - subscriptionType + - callbackUri + AppInstIdDeletionSubscriptionInfo: + x-etsi-ref: 6.2.2.29 + type: object + properties: + id: + description: Identifier of the subscription to application instance operational state change notification. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + subscriptionType: + description: Shall be set to "AppIdentifierDeletionSubscription". + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + callbackUri: + description: The URI of the endpoint for the subscription related notification to be sent to. + x-etsi-mec-origin-type: Uri + x-etsi-mec-cardinality: '1' + type: string + format: uri + appInstanceSubscriptionFilter: + # description': Criteria used to select application instances on which to send notifications related to this subscription. + $ref: '#/components/schemas/AppInstanceSubscriptionFilter' + # x-etsi-mec-origin-type': AppInstanceSubscriptionFilter + # x-etsi-mec-cardinality': 0..1 + _links: + $ref: '#/components/schemas/_links1' + required: + - id + - subscriptionType + - callbackUri + - _links + AppInstanceIdentifierDeletionNotification: + x-etsi-ref: 6.2.2.30 + 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. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + notificationType: + description: Discriminator for the different notification types. Shall be set to "AppIdentifierDeletionSubscription" for this notification type. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + subscriptionId: + description: Identifier of the subscription related to this notification. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + timeStamp: + # description': Date and time of the notification generation. + $ref: '#/components/schemas/TimeStamp' + # x-etsi-mec-origin-type': TimeStamp + # x-etsi-mec-cardinality': '1' + appInstanceId: + description: The deleted application instance Identifier. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + _links: + $ref: '#/components/schemas/_links7' + required: + - id + - notificationType + - subscriptionId + - timeStamp + - appInstanceId + - _links + LocationInformation: + x-etsi-ref: 6.2.2.31 + type: object + properties: + countryCode: + description: The two-letter ISO 3166 [3] country code in capital letters where an instance is deployed. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + civicAddress: + $ref: '#/components/schemas/CivicAddress' + geographicalPosition: + description: Geographical position (i.e. latitude and longitude) where an instance is deployed. The content of this attribute shall follow the provisions for the "Point" geometry object as defined in IETF RFC 7946 [8]. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + required: + - countryCode + x-etsi-notes: "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 + properties: + CancelMode: + type: string + description: 'Indicates the intervention action to be taken. + + GRACEFUL: Indicates ongoing resource management operations in the underlying system are allowed to complete execution or time out. + + FORCED: Indicates ongoing resource management operations in the underlying system are to be cancelled without allowing them to complete execution or time out.' + enum: + - SEE_DESCRIPTION + x-etsi-mec-origin-type: Enum_inlined + x-etsi-mec-cardinality: '1' + required: + - CancelMode + LinkType: + x-etsi-ref: 6.2.5.2 + type: object + properties: + href: + description: URI referring to a resource. + x-etsi-mec-origin-type: Uri + x-etsi-mec-cardinality: '1' + type: string + format: uri + required: + - href + TimeStamp: + x-etsi-ref: 6.2.5.4 + type: object + properties: + seconds: + description: "The seconds part of the Time. Time is defined as Unix-time since January\_1, 1970, 00:00:00 UTC." + x-etsi-mec-origin-type: Uint32 + x-etsi-mec-cardinality: '1' + type: integer + format: uint32 + nanoSeconds: + description: The nanoseconds part of the Time. Time is defined as Unix-time since January 1, 1970, 00:00:00 UTC. + x-etsi-mec-origin-type: Uint32 + x-etsi-mec-cardinality: '1' + type: integer + format: uint32 + required: + - seconds + - nanoSeconds + Checksum: + x-etsi-ref: 6.2.5.6 + type: object + properties: + algorithm: + description: Name of the algorithm used to generate the checksum, as defined in ETSI GS NFV-SOL 004 [18]. For example, SHA-256, SHA-512. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + hash: + description: The hexadecimal value of the checksum. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + required: + - algorithm + - hash + TransportsSupported: + description: Indicates transports and serialization formats supported made available to the service-consuming application. Defaults to REST + JSON if absent. + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: 0..N + type: object + minItems: 0 + properties: + transport: + # description': Information about the transport in this binding. + $ref: '#/components/schemas/TransportDescriptor' + # x-etsi-mec-origin-type': TransportDescriptor + # x-etsi-mec-cardinality': '1' + serializers: + description: "Information about the serializers in this binding, as defined in the SerializerType type in ETSI GS\_MEC\_011\_[17]." + x-etsi-mec-origin-type: SerializerType + x-etsi-mec-cardinality: 1..N + type: array + minItems: 1 + items: + $ref: '#/components/schemas/SerializerType' + required: + - transport + - serializers + SteeredNetwork: + description: 'This attribute provides an option for the application to specify a type of network to carry the application traffic. + + See note.' + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: '1' + type: object + properties: + cellularNetwork: + 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. + x-etsi-mec-origin-type: Boolean + x-etsi-mec-cardinality: 0..1 + 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." + x-etsi-mec-origin-type: Boolean + x-etsi-mec-cardinality: 0..1 + 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. + x-etsi-mec-origin-type: Boolean + x-etsi-mec-cardinality: 0..1 + type: boolean + CivicAddressElement: + description: Zero or more elements comprising the civic address. Shall be absent if the "area" attribute is present. + x-etsi-mec-origin-type: Structure(inlined + x-etsi-mec-cardinality: 0..N + type: object + minItems: 0 + properties: + caType: + description: Describe the content type of caValue. The value of caType shall comply with section 3.4 of IETF RFC 4776 [2]. + x-etsi-mec-origin-type: Integer + x-etsi-mec-cardinality: '1' + type: integer + caValue: + description: Content of civic address element corresponding to the caType. The format caValue shall comply with section 3.4 of IETF RFC 4776 [2]. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + required: + - caType + - caValue + InstantiatedAppState: + description: Information specific to an instantiated application. This attribute shall be present if the instantiationState attribute value is INSTANTIATED. + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: 0..1 + type: object + properties: + operationalState: + type: string + description: 'Operational state is applicable in the instantiation state INSTANTIATED: + + STARTED: the application instance is up and running. + + STOPPED: the application instance stops operation.' + enum: + - SEE_DESCRIPTION + x-etsi-mec-origin-type: Enum_inlined + x-etsi-mec-cardinality: '1' + appInstLocation: + # description': Location of the MEC application instance. See note 5 and note 6. + $ref: '#/components/schemas/LocationInformation' + # x-etsi-mec-origin-type': LocationInformation + # x-etsi-mec-cardinality': 0..1 + mcioInfo: + description: Information on the MCIO(s) representing application instance realized by one or a set of OS containers. See note 7. + x-etsi-mec-origin-type: McioInfo + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + $ref: '#/components/schemas/McioInfo' + required: + - operationalState + _links: + description: Links to resources related to this resource. + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: '1' + type: object + properties: + self: + # description': Self referring URI. + $ref: '#/components/schemas/LinkType' + # x-etsi-mec-origin-type': LinkType + # x-etsi-mec-cardinality': '1' + instantiate: + # description': Link to the "instantiate" task resource, if the related operation is possible based on the current status of this application instance resource (i.e. application instance in NOT_INSTANTIATED state). See note 3. + $ref: '#/components/schemas/LinkType' + # x-etsi-mec-origin-type': LinkType + # x-etsi-mec-cardinality': 0..1 + terminate: + # description': Link to the "terminate" task resource, if the related operation is possible based on the current status of this application instance resource (i.e. application instance is in INSTANTIATED state). + $ref: '#/components/schemas/LinkType' + # x-etsi-mec-origin-type': LinkType + # x-etsi-mec-cardinality': 0..1 + operate: + # description': Link to the "operate" task resource, if the related operation is supported for this application instance, and is possible based on the current status of this application instance resource (i.e. application instance is in INSTANTIATED state). + $ref: '#/components/schemas/LinkType' + # x-etsi-mec-origin-type': LinkType + # x-etsi-mec-cardinality': 0..1 + configure_platform_for_app: + # description': Link to the "configure_platform_for_app" task resource, if the related operation is supported for this application instance, and is possible based on the current status of this application instance resource (i.e. application instance is in INSTANTIATED state). See note 4. + $ref: '#/components/schemas/LinkType' + # x-etsi-mec-origin-type': LinkType + # x-etsi-mec-cardinality': 0..1 + required: + - self + Versions: + description: If present, match application instances that belong to application products with certain versions and a certain product name, from one particular provider. + x-etsi-mec-origin-type: Structure (inlined + x-etsi-mec-cardinality: 0..N + type: object + minItems: 0 + properties: + appSoftVersion: + description: Application software version to match. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + appDVersion: + description: If present, match application instances that belong to application products with certain appD versions, a certain software version and a certain product name, from one particular provider. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + type: string + required: + - appSoftVersion + AppProducts: + description: If present, match application instances that belong to application products with certain product names, from one particular provider. + x-etsi-mec-origin-type: Structure (inlined + x-etsi-mec-cardinality: 0..N + type: object + minItems: 0 + properties: + appName: + description: Name of the application product to match. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + versions: + type: array + items: + $ref: '#/components/schemas/Versions' + required: + - appName + AppsFromProviders: + description: Present only if appInstIdSelector = APP_FROM_PROVIDER. Match existing application instances, or those created in the future whilst the subscription is active, that belong to applications from certain providers. + x-etsi-mec-origin-type: Structure (inlined + x-etsi-mec-cardinality: 0..N + type: object + minItems: 0 + properties: + appProvider: + description: Name of the application provider to match. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + appProducts: + type: array + items: + $ref: '#/components/schemas/AppProducts' + required: + - appProvider + _links1: + description: Links to resources related to this resource. + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: '1' + type: object + properties: + self: + # description': URI of this resource. + $ref: '#/components/schemas/LinkType' + # x-etsi-mec-origin-type': LinkType + # x-etsi-mec-cardinality': '1' + required: + - self + _links2: + description: Links to resources related to this notification. + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: '1' + type: object + properties: + subscription: + # description': A link to the related subscription. + $ref: '#/components/schemas/LinkType' + # x-etsi-mec-origin-type': LinkType + # x-etsi-mec-cardinality': '1' + required: + - subscription + _links3: + description: Links to resources related to this resource. + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: '1' + type: object + properties: + self: + # description': URI of this resource. + $ref: '#/components/schemas/LinkType' + # x-etsi-mec-origin-type': LinkType + # x-etsi-mec-cardinality': '1' + appInstance: + # description': Link to the application instance that the operation applies to. + $ref: '#/components/schemas/LinkType' + # x-etsi-mec-origin-type': LinkType + # x-etsi-mec-cardinality': '1' + required: + - self + - appInstance + _links4: + description: Links to resources related to this notification. + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: '1' + type: object + properties: + appInstance: + # description': Link to the resource representing the application instance to which the notified change applies. + $ref: '#/components/schemas/LinkType' + # x-etsi-mec-origin-type': LinkType + # x-etsi-mec-cardinality': '1' + subscription: + # description': Link to the related subscription. + $ref: '#/components/schemas/LinkType' + # x-etsi-mec-origin-type': LinkType + # x-etsi-mec-cardinality': '1' + appLcmOpOcc: + # description': Link to the application lifecycle management operation occurrence that this notification is related to. + $ref: '#/components/schemas/LinkType' + # x-etsi-mec-origin-type': LinkType + # x-etsi-mec-cardinality': '1' + required: + - appInstance + - subscription + - appLcmOpOcc + Subscriptions: + description: A link list to the subscriptions. + x-etsi-mec-origin-type: array (Structure (inlined)) + x-etsi-mec-cardinality: 0..N + type: object + minItems: 0 + properties: + href: + description: The URI referring to the subscription. + x-etsi-mec-origin-type: Uri + x-etsi-mec-cardinality: '1' + type: string + format: uri + subscriptionType: + # description': Type of the subscription. + $ref: '#/components/schemas/AppInstanceSubscriptionType' + # x-etsi-mec-origin-type': AppInstanceSubscriptionType + # x-etsi-mec-cardinality': '1' + required: + - href + - subscriptionType + _links5: + description: List of hyperlinks related to the resource. + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: '1' + type: object + properties: + self: + # description': URI of this resource. + $ref: '#/components/schemas/LinkType' + # x-etsi-mec-origin-type': LinkType + # x-etsi-mec-cardinality': '1' + subscriptions: + type: array + items: + $ref: '#/components/schemas/Subscriptions' + required: + - self + TerminationOptions: + description: Sets of application options for the MEO/MEAO to select from as candidates for termination. The MEO/MEAO shall select one or more of these alternate options to pass to the OSS when utilizing the LCM coordination exchange in pre-emption situations. For each option, the MEO/MEAO may select all, or a subset, of the candidate set's members. + x-etsi-mec-origin-type: Structure(inline + x-etsi-mec-cardinality: 1..N + type: object + minItems: 1 + properties: + appInstIdTerminationCands: + description: 'List of application instance identifiers, constituting a candidate set for termination. ' + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 1..N + type: array + minItems: 1 + items: + type: string + required: + - appInstIdTerminationCands + _links6: + description: Links to resources related to this notification. + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: '1' + type: object + properties: + subscription: + # description': A link to the related subscription. + $ref: '#/components/schemas/LinkType' + # x-etsi-mec-origin-type': LinkType + # x-etsi-mec-cardinality': '1' + appInstance: + # description': Link to the resource representing the created application instance. + $ref: '#/components/schemas/LinkType' + # x-etsi-mec-origin-type': LinkType + # x-etsi-mec-cardinality': '1' + required: + - subscription + - appInstance + _links7: + description: Links to resources related to this notification. + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: '1' + type: object + properties: + subscription: + # description': A link to the related subscription. + $ref: '#/components/schemas/LinkType' + # x-etsi-mec-origin-type': LinkType + # x-etsi-mec-cardinality': '1' + appInstance: + # description': Link to the resource representing the deleted application instance. + $ref: '#/components/schemas/LinkType' + # x-etsi-mec-origin-type': LinkType + # x-etsi-mec-cardinality': '1' + required: + - subscription + - appInstance + CivicAddressElement1: + description: Provides elements comprising a single civic address as described in section 3.4, with accompanying example in section 5 of IETF RFC 4776 [2]. + x-etsi-mec-origin-type: Structure (inlined + x-etsi-mec-cardinality: 1..N + type: object + minItems: 1 + properties: + caType: + description: "Describe the content type of caValue. The value of caType shall comply with section 3.4 of IETF RFC\_4776 [2]. " + x-etsi-mec-origin-type: Integer + x-etsi-mec-cardinality: '1' + type: integer + caValue: + description: "Content of civic address element corresponding to the caType. The format caValue shall comply with section\_3.4 of IETF RFC 4776 [2]." + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + required: + - caType + - caValue + CivicAddress: + description: Provides the civic address of the site hosting the MEC application instance. + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: 0..1 + type: object + properties: + civicAddressElement: + type: array + items: + $ref: '#/components/schemas/CivicAddressElement1' + required: + - civicAddressElement + VimConnectionInfoMap: + type: object + additionalProperties: + $ref: '#/components/schemas/VimConnectionInfo' + responses: + '200': + description: OK + '204': + description: No Content + '400': + description: 'Bad Request: used to indicate that incorrect parameters were passed to the request.' + content: + application/problem+json: + schema: + $ref: '#/components/schemas/ProblemDetails' + '401': + description: 'Unauthorized: used when the client did not submit credentials.' + content: + application/problem+json: + schema: + $ref: '#/components/schemas/ProblemDetails' + '403': + description: 'Forbidden: operation is not allowed given the current status of the resource.' + content: + application/problem+json: + schema: + $ref: '#/components/schemas/ProblemDetails' + '404': + description: 'Not Found: used when a client provided a URI that cannot be mapped to a valid resource URI.' + content: + application/problem+json: + schema: + $ref: '#/components/schemas/ProblemDetails' + '406': + description: 'Not Acceptable: used to indicate that the server cannot provide the any of the content formats supported by the client.' + content: + application/problem+json: + schema: + $ref: '#/components/schemas/ProblemDetails' + '409': + description: 'Conflict: The operation cannot be executed currently, due to a conflict with the state of the resource. .' + content: + application/problem+json: + schema: + $ref: '#/components/schemas/ProblemDetails' + '429': + description: 'Too Many Requests: used when a rate limiter has triggered.' + content: + application/problem+json: + schema: + $ref: '#/components/schemas/ProblemDetails' + parameters: + 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. + + All attribute names that appear in the AppInstanceInfo 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 + cardinality: 0..1 + in: query + required: false + x-exportParamName: Query.Filter + 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 + cardinality: 0..1 + in: query + required: false + x-exportParamName: Query.All_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 + cardinality: 0..1 + in: query + required: false + x-exportParamName: Query.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 + cardinality: 0..1 + in: query + required: false + x-exportParamName: Query.Exclude_fields + 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 + cardinality: 0..1 + in: query + required: false + x-exportParamName: Query.Exclude_default + Query.Subscriptiontype: + description: Query parameter to filter on a specific subscription type. + name: subscriptiontype + cardinality: 0..1 + in: query + required: false + x-exportParamName: Query.Subscriptiontype + schema: + $ref: '#/components/schemas/AppInstanceSubscriptionType' + 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 AppLcmOpOcc 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 + cardinality: 0..1 + in: query + required: false + x-exportParamName: Query.Filter1 + Query.Fields1: + description: 'Complex attributes of AppLcmOpOcc 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 + cardinality: 0..1 + in: query + required: false + x-exportParamName: Query.Fields1 + Query.Exclude_fields1: + description: 'Complex attributes of AppLcmOpOcc 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 + cardinality: 0..1 + in: query + required: false + x-exportParamName: Query.Exclude_fields1 + Query.Exclude_default1: + description: 'Indicates to exclude the following complex attributes of AppLcmOpOcc from the response. + + + The following attributes shall be excluded from the AppLcmOpOcc 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: + + operationParams; + + _links.' + name: exclude_default + cardinality: 0..1 + in: query + required: false + x-exportParamName: Query.Exclude_default1 + diff --git a/Auto_Generated_OAS_Output_Files/gs_mec01002v030101p_AppPkgMgmt.yaml b/Auto_Generated_OAS_Output_Files/gs_mec01002v030101p_AppPkgMgmt.yaml new file mode 100644 index 0000000..12440ea --- /dev/null +++ b/Auto_Generated_OAS_Output_Files/gs_mec01002v030101p_AppPkgMgmt.yaml @@ -0,0 +1,2955 @@ +openapi: 3.1.0 +jsonSchemaDialect: https://json-schema.org/draft/2020-12/schema +info: + title: 'ETSI GS MEC 010-2 - Part 2: Application lifecycle, rules and requirements management' + description: 'ETSI GS MEC 010-2 - Part 2: Application lifecycle, rules and requirements management described using OpenAPI.' + license: + name: BSD-3-Clause + url: https://forge.etsi.org/legal-matters + contact: + 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 +paths: + /app_packages: + post: + summary: Create a new resource for onboarded application package. + 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: + - app-pkgm + requestBody: + description: The POST method is used to create a new resource for onboarding an application package onto a MEO/MEAO. + required: true + content: + application/json: + schema: + type: object + properties: + CreateAppPkg: + $ref: '#/components/schemas/CreateAppPkg' + responses: + '201': + description: "Indicates a successful request. The response message content shall contain a representation of the application package resource defined in clause\_6.2.\n\nThe HTTP response includes a \"Location\" HTTP header that contains the URI of the created resource." + content: + application/json: + schema: + type: object + properties: + AppPkgInfo: + $ref: '#/components/schemas/AppPkgInfo' + '400': + $ref: '#/components/responses/400' + '401': + $ref: '#/components/responses/401' + '403': + $ref: '#/components/responses/403' + '404': + $ref: '#/components/responses/404' + '406': + $ref: '#/components/responses/406' + '429': + $ref: '#/components/responses/429' + get: + summary: Query on-boarded application package information. + 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' + 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. + content: + application/json: + schema: + type: object + properties: + AppPkgInfo: + type: array + items: + $ref: '#/components/schemas/AppPkgInfo' + '400': + $ref: '#/components/responses/400' + '401': + $ref: '#/components/responses/401' + '403': + $ref: '#/components/responses/403' + '404': + $ref: '#/components/responses/404' + '406': + $ref: '#/components/responses/406' + '429': + $ref: '#/components/responses/429' + /onboarded_app_packages: + post: + summary: Create a new resource for onboarded application package. + 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: + - app-pkgm + requestBody: + description: The POST method is used to create a new resource for onboarding an application package onto a MEO/MEAO. + required: true + content: + application/json: + schema: + type: object + properties: + CreateAppPkg: + $ref: '#/components/schemas/CreateAppPkg' + responses: + '201': + description: "Indicates a successful request. The response message content shall contain a representation of the application package resource defined in clause\_6.2.\n\nThe HTTP response includes a \"Location\" HTTP header that contains the URI of the created resource." + content: + application/json: + schema: + type: object + properties: + AppPkgInfo: + $ref: '#/components/schemas/AppPkgInfo' + '400': + $ref: '#/components/responses/400' + '401': + $ref: '#/components/responses/401' + '403': + $ref: '#/components/responses/403' + '404': + $ref: '#/components/responses/404' + '406': + $ref: '#/components/responses/406' + '429': + $ref: '#/components/responses/429' + get: + summary: Query on-boarded application package information. + 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' + 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. + content: + application/json: + schema: + type: object + properties: + AppPkgInfo: + type: array + items: + $ref: '#/components/schemas/AppPkgInfo' + '400': + $ref: '#/components/responses/400' + '401': + $ref: '#/components/responses/401' + '403': + $ref: '#/components/responses/403' + '404': + $ref: '#/components/responses/404' + '406': + $ref: '#/components/responses/406' + '429': + $ref: '#/components/responses/429' + /app_packages/{appPkgId}: + post: + description: The POST method delivers a notification from the application package management resource in MEO or MEAO to the subscriber. + operationId: userdefinednotificationPOST + tags: + - notification + requestBody: + description: A notification of an application package for on-boarding or operational state change. + required: true + content: + application/json: + schema: + type: object + properties: + AppPkgNotification: + $ref: '#/components/schemas/AppPkgNotification' + responses: + '204': + description: 'The notification was delivered successfully. + + The response message content shall be empty.' + content: + application/json: + schema: + type: object + properties: {} + '401': + $ref: '#/components/responses/401' + '403': + $ref: '#/components/responses/403' + '404': + $ref: '#/components/responses/404' + '429': + $ref: '#/components/responses/429' + /onboarded_app_packages/{appDId}: + get: + summary: Read information of an individual on-boarded application package. + description: This GET method is used to query the information related to individual application package resources. + operationId: onboardedapppackagesByIdGET + tags: + - app-pkgm + responses: + '200': + description: Indicates the success of request. The response message content shall contain a representation of the resource. + content: + application/json: + schema: + type: object + properties: + AppPkgInfo: + $ref: '#/components/schemas/AppPkgInfo' + '400': + $ref: '#/components/responses/400' + '401': + $ref: '#/components/responses/401' + '403': + $ref: '#/components/responses/403' + '404': + $ref: '#/components/responses/404' + '406': + $ref: '#/components/responses/406' + '429': + $ref: '#/components/responses/429' + delete: + summary: Delete an individual on-boarded application package. + 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: onboardedapppackagesByIdDELETE + tags: + - app-pkgm + responses: + '204': + $ref: '#/components/responses/204' + '400': + $ref: '#/components/responses/400' + '401': + $ref: '#/components/responses/401' + '403': + $ref: '#/components/responses/403' + '404': + $ref: '#/components/responses/404' + '406': + $ref: '#/components/responses/406' + '429': + $ref: '#/components/responses/429' + patch: + summary: Enable or disable an individual onboarded application package. + 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: onboardedapppackagesByIdPATCH + tags: + - app-pkgm + requestBody: + description: Parameters for application package information modification. + required: true + content: + application/json: + schema: + type: object + properties: + AppPkgInfoModifications: + $ref: '#/components/schemas/AppPkgInfoModifications' + responses: + '200': + description: Shall be returned when the operation has been completed successfully. + content: + application/json: + schema: + type: object + properties: + AppPkgInfoModifications: + $ref: '#/components/schemas/AppPkgInfoModifications' + '400': + $ref: '#/components/responses/400' + '401': + $ref: '#/components/responses/401' + '403': + $ref: '#/components/responses/403' + '404': + $ref: '#/components/responses/404' + '406': + $ref: '#/components/responses/406' + '429': + $ref: '#/components/responses/429' + /subscriptions: + post: + summary: Subscribe to notification related to on-boarding and/or changes of application packages. + description: The POST method is used to subscribe to notifications about on-boarding an application package, or about operational state changes of on-boarded application package, which is mapped to the procedure of "subscription operation" as described in clause 6.3.3.3. + operationId: subscriptionsPOST + tags: + - app-pkgm + requestBody: + description: The input parameters of "subscribe operation" to notifications about changes related to application package management for the onboarding, or operational state change of application package. + required: true + content: + application/json: + schema: + type: object + properties: + AppPkgSubscription: + $ref: '#/components/schemas/AppPkgSubscription' + responses: + '201': + description: Upon success, a response message content representing the created subscription shall be returned. + content: + application/json: + schema: + type: object + properties: + AppPkgSubscriptionInfo: + $ref: '#/components/schemas/AppPkgSubscriptionInfo' + '400': + $ref: '#/components/responses/400' + '401': + $ref: '#/components/responses/401' + '403': + $ref: '#/components/responses/403' + '404': + $ref: '#/components/responses/404' + '406': + $ref: '#/components/responses/406' + '429': + $ref: '#/components/responses/429' + callbacks: + notification: + post: + summary: Callback POST used to send a notification + description: Subscription notification + operationId: notificationPOST + requestBody: + description: Subscription notification + required: true + content: + application/json: + schema: + type: object + properties: + subscriptionNotification: + $ref: '#/components/schemas/AppPkgSubscription' + get: + summary: Query multiple subscriptions. + description: This GET method is used to retrieve the information of subscriptions to individual application package resource in MEO or MEAO. Upon success, the response contains the list of links to the subscriptions that are present for the requestor. + operationId: subscriptionsGET + tags: + - app-pkgm + responses: + '200': + description: Upon success, a response message content containing a list of zero or more subscriptions shall be returned. + content: + application/json: + schema: + type: object + properties: + AppPkgSubscriptionLinkList: + $ref: '#/components/schemas/AppPkgSubscriptionLinkList' + '400': + $ref: '#/components/responses/400' + '401': + $ref: '#/components/responses/401' + '403': + $ref: '#/components/responses/403' + '404': + $ref: '#/components/responses/404' + '406': + $ref: '#/components/responses/406' + '429': + $ref: '#/components/responses/429' + /subscriptions/{subscriptionId}: + get: + summary: Read resource of an individual subscription. + description: This GET method is used to retrieve the individual subscription information to the application package resource in MEO or MEAO. + operationId: subscriptionsByIdGET + tags: + - app-pkgm + responses: + '200': + description: Upon success, a response message content containing a representation of the resource shall be returned. + content: + application/json: + schema: + type: object + properties: + AppPkgSubscriptionInfo: + $ref: '#/components/schemas/AppPkgSubscriptionInfo' + '400': + $ref: '#/components/responses/400' + '401': + $ref: '#/components/responses/401' + '403': + $ref: '#/components/responses/403' + '404': + $ref: '#/components/responses/404' + '406': + $ref: '#/components/responses/406' + '429': + $ref: '#/components/responses/429' + delete: + summary: Terminate an individual subscription. + description: This DELETE method is used to delete the individual subscription to notifications about application package changes in MEO or MEAO. + operationId: subscriptionsByIdDELETE + tags: + - app-pkgm + responses: + '204': + $ref: '#/components/responses/204' + '401': + $ref: '#/components/responses/401' + '403': + $ref: '#/components/responses/403' + '404': + $ref: '#/components/responses/404' + '429': + $ref: '#/components/responses/429' + /user_defined_notification: + post: + description: The POST method delivers a notification from the application package management resource in MEO or MEAO to the subscriber. + operationId: userdefinednotificationPOST + tags: + - notification + requestBody: + description: A notification of an application package for on-boarding or operational state change. + required: true + content: + application/json: + schema: + type: object + properties: + AppPkgNotification: + $ref: '#/components/schemas/AppPkgNotification' + responses: + '204': + description: 'The notification was delivered successfully. + + The response message content shall be empty.' + content: + application/json: + schema: + type: object + properties: {} + '401': + $ref: '#/components/responses/401' + '403': + $ref: '#/components/responses/403' + '404': + $ref: '#/components/responses/404' + '429': + $ref: '#/components/responses/429' + /app_packages/{appPkgId}/appd: + get: + summary: Read application descriptor of an onboarded application package. + 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: appdGET + 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' + responses: + '200': + description: 'Indicates the success of request, and the content of the AppD is returned. + + + The response message content shall contain a copy of the file representing the AppD or a ZIP file that contains the file or multiple files representing the AppD. + + + The "Content-Type" HTTP header shall be set according to the format of the returned file, which is selected according to "Accept" HTTP header options passed in the request.' + content: + application/json: + schema: + type: object + properties: + AppD: + $ref: '#/components/schemas/AppD' + '400': + $ref: '#/components/responses/400' + '401': + $ref: '#/components/responses/401' + '403': + $ref: '#/components/responses/403' + '404': + $ref: '#/components/responses/404' + '406': + $ref: '#/components/responses/406' + '429': + $ref: '#/components/responses/429' + /onboarded_app_packages/{appDId}/appd: + get: + summary: Read application descriptor of an onboarded application package. + 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: appdGET + 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' + responses: + '200': + description: 'Indicates the success of request, and the content of the AppD is returned. + + + The response message content shall contain a copy of the file representing the AppD or a ZIP file that contains the file or multiple files representing the AppD. + + + The "Content-Type" HTTP header shall be set according to the format of the returned file, which is selected according to "Accept" HTTP header options passed in the request.' + content: + application/json: + schema: + type: object + properties: + AppD: + $ref: '#/components/schemas/AppD' + '400': + $ref: '#/components/responses/400' + '401': + $ref: '#/components/responses/401' + '403': + $ref: '#/components/responses/403' + '404': + $ref: '#/components/responses/404' + '406': + $ref: '#/components/responses/406' + '429': + $ref: '#/components/responses/429' + /app_packages/{appPkgId}/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. + operationId: packagecontentGET + tags: + - app-pkgm + responses: + '200': + description: "On success, a copy of the on-boarded application package is returned in the response message content. \n\nThe \"Content-Type\" HTTP header shall be set according to the type of the file, i.e. to \"application/zip\" for an application package." + content: + application/json: + schema: + type: object + properties: {} + '400': + $ref: '#/components/responses/400' + '401': + $ref: '#/components/responses/401' + '403': + $ref: '#/components/responses/403' + '404': + $ref: '#/components/responses/404' + '406': + $ref: '#/components/responses/406' + '416': + $ref: '#/components/responses/416' + '429': + $ref: '#/components/responses/429' + put: + summary: Upload an application package by providing the content of application package. + description: This PUT method uploads the content of application package. + operationId: packagecontentPUT + tags: + - app-pkgm + requestBody: + description: 'The message content shall contain a ZIP file that represents the application package. + + The "Content-Type" HTTP header shall be set to "application/zip".' + content: + application/json: {} + required: false + responses: + '202': + description: 'The application package has been accepted for uploading, but the processing has not been completed. It is expected to take some time for processing. + + + The response message content shall be empty.' + content: + application/json: + schema: + type: object + properties: {} + '400': + $ref: '#/components/responses/400' + '401': + $ref: '#/components/responses/401' + '403': + $ref: '#/components/responses/403' + '404': + $ref: '#/components/responses/404' + '406': + $ref: '#/components/responses/406' + '429': + $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. + operationId: packagecontentGET + tags: + - app-pkgm + responses: + '200': + description: "On success, a copy of the on-boarded application package is returned in the response message content. \n\nThe \"Content-Type\" HTTP header shall be set according to the type of the file, i.e. to \"application/zip\" for an application package." + content: + application/json: + schema: + type: object + properties: {} + '400': + $ref: '#/components/responses/400' + '401': + $ref: '#/components/responses/401' + '403': + $ref: '#/components/responses/403' + '404': + $ref: '#/components/responses/404' + '406': + $ref: '#/components/responses/406' + '416': + $ref: '#/components/responses/416' + '429': + $ref: '#/components/responses/429' + put: + summary: Upload an application package by providing the content of application package. + description: This PUT method uploads the content of application package. + operationId: packagecontentPUT + tags: + - app-pkgm + requestBody: + description: 'The message content shall contain a ZIP file that represents the application package. + + The "Content-Type" HTTP header shall be set to "application/zip".' + content: + application/json: {} + required: false + responses: + '202': + description: 'The application package has been accepted for uploading, but the processing has not been completed. It is expected to take some time for processing. + + + The response message content shall be empty.' + content: + application/json: + schema: + type: object + properties: {} + '400': + $ref: '#/components/responses/400' + '401': + $ref: '#/components/responses/401' + '403': + $ref: '#/components/responses/403' + '404': + $ref: '#/components/responses/404' + '406': + $ref: '#/components/responses/406' + '429': + $ref: '#/components/responses/429' +components: + schemas: + ProblemDetails: + type: object + properties: + type: + type: string + format: uri + description: A URI reference according to IETF RFC 3986 that identifies the problem type + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: URI + title: + type: string + description: A short, human-readable summary of the problem type + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: String + status: + type: integer + format: uint32 + description: The HTTP status code for this occurrence of the problem + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: Uint32 + detail: + type: string + description: A human-readable explanation specific to this occurrence of the problem + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: String + instance: + type: string + format: uri + description: A URI reference that identifies the specific occurrence of the problem + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: URI + VirtualStorageDescriptor: + type: object + properties: + id: + type: string + description: Unique identifier of this VirtualStorageDesc in the VNFD. + typeOfStorage: + type: string + enum: + - BLOCK + - OBJECT + - FILE + description: Type of virtualized storage resource. + blockStorageData: + $ref: '#/components/schemas/BlockStorageData' + description: Details of block storage. Required when typeOfStorage is set to "BLOCK". + objectStorageData: + $ref: '#/components/schemas/ObjectStorageData' + description: Details of object storage. Required when typeOfStorage is set to "OBJECT". + fileStorageData: + $ref: '#/components/schemas/FileStorageData' + description: Details of file storage. Required when typeOfStorage is set to "FILE". + nfviMaintenanceInfo: + $ref: '#/components/schemas/NfviMaintenanceInfo' + description: Information on NFVI operation and maintenance rules for instances based on this VirtualStorageDesc. + perVnfcInstance: + type: boolean + description: Indicates whether the virtual storage resource should be instantiated per VNFC instance. + AppPkgSWImageInfo: + NOTE 1: The data type of application software image information data model is related to virtualisation method and needs for further study. + AppPkgArtifactInfo: + NOTE 2: The data type of additional information of application package artifacts is not specified in the present document. + McioIdentificationData: + type: object + required: + - name + - type + properties: + name: + type: string + description: The name of the mcio. See note 1. + type: + type: string + description: The type of the mcio. See note 2. + description: "NOTE 1: When the container infrastructure service is a Kubernetes\xAE instance it is the value of the 'metadata.name' \n field in Kubernetes\xAE manifest. \nNOTE 2: When the container infrastructure service is a Kubernetes\xAE instance it is the value of the 'kind' field in \n Kubernetes\xAE manifest. \n" + OsContainerDescriptor: + title: OsContainerDescriptor + type: object + required: + - osContainerDescId + - name + - description + - swImageDesc + properties: + osContainerDescId: + type: string + description: Unique identifier of this OsContainerDesc in the VNFD. + name: + type: string + description: Human readable name of this OS container. + description: + type: string + description: Human readable description of this OS container. + requestedCpuResources: + type: integer + description: Number of CPU resources requested for the container (e.g. in milli-CPU-s). + requestedMemoryResources: + type: number + description: Amount of memory resources requested for the container (e.g. in MB). + requestedEphemeralStorageResources: + type: number + description: Size of ephemeral storage resources requested for the container (e.g. in GB). + extendedResourceRequests: + type: array + items: + $ref: '#/components/schemas/KeyValuePairs' + description: An array of key-value pairs of extended resources required by the container see note. + additionalProperties: + type: string + description: See note. + cpuResourceLimit: + type: integer + description: Number of CPU resources the container can maximally use (e.g. in milli-CPU). + memoryResourceLimit: + type: number + description: Amount of memory resources the container can maximally use (e.g. in MB). + ephemeralStorageResourceLimit: + type: number + description: Size of ephemeral storage resources the container can maximally use (e.g. in GB). + hugePageResources: + type: object + description: Specifies HugePages resources requested for the container, which the container can maximally use. + additionalProperties: + type: string + cpuPinningRequirements: + $ref: '#/components/schemas/VirtualCpuPinningData' + description: Requirements for CPU pinning configuration for this OS container. + swImageDesc: + $ref: '#/components/schemas/SwImageDesc' + description: Describes the software image realizing this OS container. + bootData: + type: string + description: Contains a string or a URL to a file contained in the VNF package used to customize a container resource at boot time. The bootData may contain variable parts that are replaced by deployment specific values before being sent. + monitoringParameters: + type: array + items: + $ref: '#/components/schemas/MonitoringParameter' + description: Specifies the virtualized resource related performance metrics on the OsContainerDesc level to be tracked by the VNFM. + description: "NOTE: Extended resources are to describe any type of resource provided by the container infrastructure. One \n example implementation of extended resources is \"Extended Resources\" in case the container infrastructure \n service is a Kubernetes\xAE instance. \n" + VirtualCpuPinningData: + type: object + properties: + virtualCpuPinningPolicy: + type: string + description: Indicates the policy for CPU pinning. + enum: + - STATIC + - DYNAMIC + virtualCpuPinningRule: + type: array + items: + type: string + description: List of rules that should be considered during the allocation of the virtual CPUs to logical CPUs in case of "STATIC" virtualCpuPinningPolicy. + AppInstanceSubscriptionType: + type: string + enum: + - AppInstanceStateChangeSubscription + - AppLcmOpOccStateChangeSubscription + - AppIdentifierCreationSubscription + - AppIdentifierDeletionSubscription + description: String representing the type of a subscription. + ServicePortData: + type: object + required: + - name + - protocol + - port + - portConfigurable + properties: + name: + type: string + description: The name of the port exposed by the VirtualCp. + protocol: + type: string + enum: + - TCP + - UDP + - SCTP + description: The L4 protocol for this port exposed by the VirtualCp. + port: + type: integer + description: The L4 port number exposed by the VirtualCp. + portConfigurable: + type: boolean + description: Specifies whether the port attribute value is allowed to be configurable. + AdditionalServiceData: + type: object + required: + - portData + properties: + portData: + type: array + items: + $ref: '#/components/schemas/ServicePortData' + minItems: 1 + serviceData: + type: string + description: Service matching information exposed by the VirtualCp. See note. + description: "This information element describes the additional service data of the VirtualCp used to expose\nproperties of the VirtualCp to NFV-MANO.\n\nIf the VirtualCp is exposed by a VNF component realized by one or a set of OS containers,\nthe properties are mirrored from the declarative descriptor of the corresponding MCIO where available. \n\nNOTE: This attribute shall only be present if additional information is needed to identify the\nservice termination within the VNF, such as for example a url path information in an HTTP request\nrequired to allow a single VirtualCp IP address to be used for several HTTP based services that\nuse the same portnumber. \n" + MonitoringParameter: + type: object + required: + - monitoringParameterId + - performanceMetric + properties: + monitoringParameterId: + type: string + description: Unique identifier of the monitoring parameter. + name: + type: string + description: Human readable name of the monitoring parameter. + performanceMetric: + type: string + description: Specifies the virtualised resource performance metric. + collectionPeriod: + type: string + description: An attribute that describes the periodicity at which to collect the performance information. + ChangeAppInstanceStateOpConfig: + type: object + description: 'This information element defines attributes that affect the invocation of the OperateVnf operation. + + ' + required: + - minGracefulStopTimeout + properties: + minGracefulStopTimeout: + type: number + description: Minimum timeout value for graceful stop of a VNF instance. + maxRecommendedGracefulStopTimeout: + type: number + description: "Maximum recommended timeout value that can be needed to gracefully stop a VNF instance of a particular type under certain conditions, such as maximum load condition. This is provided by VNF provider as information for the operator facilitating the selection of optimal timeout value. This value is not used as constraint. \n" + parameter: + type: array + items: + type: string + description: 'Array of KVP requirements for VNF-specific parameters to be passed when invoking the OperateVnf operation. See note. + + ' + SwImageDescriptor: + type: object + required: + - id + - name + - version + - containerFormat + - swImage + properties: + id: + type: string + description: The identifier of this software image. + name: + type: string + description: The name of this software image. + version: + type: string + items: + $ref: '#/components/schemas/Version' + description: The version of this software image. + checksum: + $ref: '#/components/schemas/ChecksumData' + description: The checksum of the software image file. See note 3. + containerFormat: + type: string + description: The container format describes the container file format in which software image is provided. + diskFormat: + type: string + description: The disk format of a software image is the format of the underlying disk image. See note 1. + minDisk: + type: number + description: The minimal disk size requirement for this software image. See note 1. + minRam: + type: number + description: The minimal RAM requirement for this software image. See note 2. + size: + type: number + description: The size of this software image file. See note 3. + swImage: + type: object + items: + $ref: '#/components/schemas/SwImageDesc' + description: A reference to the actual software image. + operatingSystem: + type: string + description: Specifies the operating system used in the software image. + supportedVirtualisationEnvironment: + type: array + items: + type: string + description: Specifies the virtualisation environments (e.g. hypervisor) compatible with this software image. + description: "NOTE 1: The attribute shall be present for VM-based software images referenced from a Vdu or from a VirtualStorageDesc, and shall be absent otherwise. \nNOTE 2: The attribute may be present for VM-based software images referenced from a Vdu or from a VirtualStorageDesc, and shall be absent otherwise. \nNOTE 3: The attribute shall be present for VM-based software images referenced from a Vdu or from a VirtualStorageDesc, and may be present otherwise. \n" + TerminateAppInstanceOpConfig: + type: object + description: 'This information element defines attributes that affect the invocation of the TerminateVnf operation. + + ' + required: + - minGracefulTerminationTimeout + properties: + minGracefulTerminationTimeout: + type: number + description: Minimum timeout value for graceful stop of a VNF instance. + maxRecommendedGracefulTerminationTimeout: + type: number + description: "Maximum recommended timeout value that can be needed to gracefully terminate a VNF instance of a particular type under certain conditions, such as maximum load condition. This is provided by VNF provider as information for the operator facilitating the selection of optimal timeout value. This value is not used as constraint. \n" + parameter: + type: array + items: + type: string + description: "Array of KVP requirements for VNF-specific parameters to be passed when invoking the TerminateVnf operation. See note. \n" + VirtualComputeDescriptor: + title: VirtualComputeDescriptor + type: object + required: + - virtualComputeDescId + - virtualMemory + - virtualCpu + properties: + virtualComputeDescId: + type: string + description: Unique identifier of this VirtualComputeDesc in the VNFD. + logicalNode: + type: array + items: + $ref: '#/components/schemas/LogicalNodeRequirements' + requestAdditionalCapabilities: + type: array + items: + $ref: '#/components/schemas/RequestedAdditionalCapabilityData' + computeRequirements: + description: Specifies compute requirements. + type: array + items: + type: string + format: not-specified + virtualMemory: + $ref: '#/components/schemas/VirtualMemoryData' + virtualCpu: + $ref: '#/components/schemas/VirtualCpuData' + virtualDisk: + type: array + items: + $ref: '#/components/schemas/BlockStorageData' + VirtualNetworkInterfaceRequirements: + type: object + properties: + name: + type: string + description: Provides a human readable name for the requirement. + description: + type: string + description: Provides a human readable description of the requirement. + standardizedNetworkInterfaceRequirements: + type: string + description: The requirements on standardized network interface capabilities, e.g. SR-IOV or secondary container cluster network interface deployment requirements.See note + networkInterfaceRequirements: + type: string + description: The additional network interface requirements beyond those specified in the standardizedNetworkInterfaceRequirements attribute.An element from an array of key-value pairs that articulate the network interface deployment requirements.See note. + nicIoRequirements: + items: + $ref: '#/components/schemas/LogicalNodeRequirements' + description: This references (couples) the CPD with any logical node I/O requirements (for network devices) that may have been created. Linking these attributes is necessary so that I/O requirements that need to be articulated at the logical node level can be associated with the network interface requirements associated with the CPD.See note + description: 'NOTE: At least one of the attributes "standardizedNetworkInterfaceRequirements", "networkInterfaceRequirements", "nicIoRequirements" shall be present + + ' + AppPkgSubscriptionType: + title: AppPkgSubscriptionType + enum: + - AppPackageOnBoardingSubscription + - AppPackageChangeSubscription + - AppPackageDeletionSubscription + type: string + description: type of a subscription. + examples: + - AppPackageOnBoardingSubscription + KeyValuePairs: + type: object + additionalProperties: + type: object + ObjectStorageData: + type: object + properties: + maxSizeOfStorage: + type: number + description: Maximum size of virtualized storage resource in GB. + FileStorageData: + type: object + properties: + sizeOfStorage: + type: number + description: Size of virtualized storage resource in GB. + fileSystemProtocol: + type: string + description: The shared file system protocol (e.g. NFS, CIFS). + intVirtualLinkDesc: + $ref: '#/components/schemas/VnfVirtualLinkDesc' + description: Reference of the internal VLD which this file storage connects to. + VnfVirtualLinkDesc: + type: object + properties: + virtualLinkDescId: + type: string + description: Unique identifier of this internal VLD in VNFD. + virtualLinkDescFlavour: + type: array + items: + $ref: '#/components/schemas/VirtualLinkDescFlavour' + description: Describes a specific flavour of the VL with specific bitrate requirements. + connectivityType: + $ref: '#/components/schemas/ConnectivityType' + description: See clause 7.1.7.3. + testAccess: + type: array + items: + type: string + description: Specifies test access facilities expected on the VL. + description: + type: string + description: Provides human-readable information on the purpose of the VL. + monitoringParameter: + type: array + items: + $ref: '#/components/schemas/MonitoringParameter' + description: Specifies the virtualised resource related performance metrics on VLD level to be tracked by the VNFM. + nfviMaintenanceInfo: + $ref: '#/components/schemas/NfviMaintenanceInfo' + description: Provides information on the rules to be observed when an instance based on this VnfVirtualLinkDesc is impacted during NFVI operation and maintenance. + externallyManaged: + type: string + enum: + - REQUIRED + - ALLOWED + default: ALLOWED + description: Specifies the intent of the VNF designer with respect to the internal VL instances created from this descriptor being externally managed. + ConnectivityType: + type: object + properties: + layerProtocol: + type: array + items: + type: string + description: Specifies the protocols that the VL uses. + enum: + - Ethernet + - MPLS + - ODU2 + - IPV4 + - IPV6 + - Pseudo-Wire + - Etc. + minItems: 1 + flowPattern: + type: string + description: Specifies the flow pattern of the connectivity (Line, Tree, Mesh, etc.). + required: + - layerProtocol + QoS: + type: object + properties: + latency: + type: number + description: Specifies the maximum latency in ms. + packetDelayVariation: + type: number + description: Specifies the maximum jitter in ms. + packetLossRatio: + type: number + description: Specifies the maximum packet loss ratio. + required: + - latency + - packetDelayVariation + VirtualLinkDescFlavour: + type: object + properties: + flavourId: + type: string + description: Identifies a flavour within a VnfVirtualLinkDesc. + qos: + $ref: '#/components/schemas/QoS' + description: QoS of the VL. + required: + - flavourId + NfviMaintenanceInfo: + type: object + properties: + impactNotificationLeadTime: + type: number + description: The minimum notification lead time requested for upcoming impact of the virtualised resource or their group. + isImpactMitigationRequested: + type: boolean + description: Indicates if it is requested to provide virtualised resource(s) of the same characteristics as the impacted ones to compensate for the impact. + supportedMigrationType: + type: array + items: + type: string + enum: + - NO_MIGRATION + - OFFLINE_MIGRATION + - LIVE_MIGRATION + description: Specifies the allowed migration types in order of preference in case of an impact. + maxUndetectableInterruptionTime: + type: number + description: Specifies the maximum interruption time that can go undetected at the VNF level during live migration. + minRecoveryTimeBetweenImpacts: + type: number + description: Specifies the time required by the group to recover from an impact, indicating the minimum time between consecutive impacts of the group. + maxNumberOfImpactedInstances: + type: array + items: + $ref: '#/components/schemas/MaxNumberOfImpactedInstances' + description: Specifies the maximum number of instances that can be impacted simultaneously within the group of virtualised resources for different group sizes. + minNumberOfPreservedInstances: + type: array + items: + $ref: '#/components/schemas/MinNumberOfPreservedInstances' + description: Specifies the minimum number of instances which need to be preserved simultaneously within the group of virtualised resources for different group sizes. + MaxNumberOfImpactedInstances: + type: object + properties: + groupSize: + type: integer + description: Determines the size of the group for which the maxNumberOfImpactedInstances is specified. + maxNumberOfImpactedInstances: + type: integer + description: The maximum number of instances that can be impacted simultaneously within the group of the specified size. + MinNumberOfPreservedInstances: + type: object + properties: + groupSize: + type: integer + description: Determines the size of the group for which the minNumberOfPreservedInstances is specified. + minNumberOfPreservedInstances: + type: integer + description: The minimum number of instances which need to be preserved simultaneously within the group of the specified size. + CategoryRef: + x-etsi-ref: 8.1.5.2 + type: object + properties: + href: + description: Reference of the catalogue. + x-etsi-mec-origin-type: Uri + x-etsi-mec-cardinality: '1' + type: string + id: + description: Unique identifier of the category. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + name: + description: Name of the category. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + version: + description: Name of the category. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + required: + - href + - id + - name + - version + SerializerType: + x-etsi-ref: 8.1.6.3 + type: string + enum: + - JSON + - XML + - PROTOBUF3 + x-etsi-mec-extensible: true + x-etsi-mec-enumeration-table: + - value: JSON + description: Javascript object notation [9] + - value: XML + description: eXtensible Mark-up Language version 1.1 [10] + - value: PROTOBUF3 + description: Protocol buffers version 3 [i.3] + TransportTypes: + x-etsi-ref: 8.1.6.4 + type: string + enum: + - REST_HTTP + - MB_TOPIC_BASED + - MB_ROUTING + - MB_PUBSUB + - RPC + - RPC_STREAMING + - WEBSOCKET + description: The enumeration TransportType represents types of transports. + x-etsi-mec-extensible: true + x-etsi-mec-enumeration-table: + - value: REST_HTTP + description: RESTful API using HTTP (as defined in IETF RFC 9110 [11]). + - value: MB_TOPIC_BASED + description: Topic-based message bus which routes messages to receivers based on subscriptions, if a pattern passed on subscription matches the topic of the message. EXAMPLE MQTT (see [i.4]). + - value: MB_ROUTING + description: Routing-based message bus which routes messages to receivers based on subscriptions, if a key passed on subscription is equal to the key of the message. + - value: MB_PUBSUB + description: Publish-subscribe based message bus which distributes messages to all subscribers. + - value: RPC + description: Remote procedure call. EXAMPLE GRPC (see [i.5]). + - value: RPC_STREAMING + description: Remote procedure call supporting streams of requests and responses. EXAMPLE GRPC (see [i.5]). + - value: WEBSOCKET + description: Websockets as defined in IETF RFC 6455 [12]. + LogicalNodeRequirements: + type: object + required: + - id + properties: + id: + type: string + format: uuid + description: Identifies this set of logical node requirements + logicalNodeRequirementDetail: + type: array + description: "The logical node-level compute, memory and I/O requirements. An array of key-value pairs that articulate the deployment requirements. This could include the number of CPU cores on this logical node, a memory configuration specific to a logical node (e.g. such as available in the Linux kernel via the libnuma library) or a requirement related to the association of an I/O device with the logical node. \n" + items: + type: string + format: not-specified + BlockStorageData: + type: object + required: + - sizeOfStorage + properties: + sizeOfStorage: + type: number + description: Size of virtualised storage resource in GB. + vduStorageRequirements: + type: array + items: + $ref: '#/components/schemas/KeyValuePairs' + description: An array of key-value pairs that articulate the storage deployment requirements. + rdmaEnabled: + type: boolean + description: Indicate if the storage support RDMA. + swImageDesc: + $ref: '#/components/schemas/SwImageDesc' + description: References the software image to be loaded on the VirtualStorage resource created based on this VirtualStorageDesc. Shall be absent when used for virtual disks. See note. + description: 'NOTE: This attribute shall not be present in a VirtualStorageDesc used in a VDU realized by one or a set of OS containers + + ' + Version: + type: object + required: + - srcVnfdId + - dstVnfdId + - srcFlavourId + properties: + srcVnfdId: + type: string + description: Identifier of the source VNFD and the source VNF package. See note 1. + dstVnfdId: + type: string + description: Identifier of the destination VNFD and the destination VNF package. See note 1. + srcFlavourId: + type: string + description: Identifier of the deployment flavour in the source VNF package for which this modification applies. See note 2. + description: "NOTE 1: Either the srcVnfdId or the dstVnfdId shall be equal to the vnfdId of the VNFD containing this version selector. \nNOTE 2: It is up to protocol design stage to decide whether there is further optimization potential to apply one modification for multiple srcFlavourIds.\n" + SwImageDesc: + type: object + required: + - id + - name + - version + - containerFormat + - swImage + properties: + id: + type: string + description: The identifier of this software image. + name: + type: string + description: The name of this software image. + version: + type: string + description: The version of this software image. + checksum: + $ref: '#/components/schemas/ChecksumData' + description: The checksum of the software image file. See note 3 + containerFormat: + type: string + description: The container format describes the container file format in which software image is provided. + diskFormat: + type: string + description: The disk format of a software image is the format of the underlying disk image. See note 1 + minDisk: + type: number + description: The minimal disk size requirement for this software image. The value of the "size of storage" attribute of the VirtualStorageDesc referencing this SwImageDesc shall not be smaller than the value of minDisk. See note 1 + minRam: + type: number + description: The minimal RAM requirement for this software image. The value of the "size" attribute of VirtualMemoryData of the Vdu referencing this SwImageDesc shall not be smaller than the value of minRam. See note 2 + size: + type: number + description: The size of this software image file. See note 3 + swImage: + $ref: '#/components/schemas/SwImageDesc' + description: This is a reference to the actual software image. The reference can be relative to the root of the VNF Package or can be a URL. + operatingSystem: + type: string + description: Specifies the operating system used in the software image. This attribute may also identify if a 32 bit or 64 bit software image is used. + supportedVirtualisationEnvironment: + type: array + items: + type: string + description: Specifies the virtualisation environments (e.g. hypervisor) compatible with this software image. + description: "NOTE 1: The attribute shall be present for VM-based software images referenced from a Vdu or from a VirtualStorageDesc, and shall be absent otherwise. \nNOTE 2: The attribute may be present for VM-based software images referenced from a Vdu or from a VirtualStorageDesc, and shall be absent otherwise. \nNOTE 3: The attribute shall be present for VM-based software images referenced from a Vdu or from a VirtualStorageDesc, and may be present otherwise. \n" + ChecksumData: + type: object + required: + - algorithm + - hash + properties: + algorithm: + type: string + description: Specifies the algorithm used to obtain the checksum value see note. + hash: + type: string + description: Contains the result of applying the algorithm indicated by the algorithm attribute to the data to which this ChecksumData refers. + description: "NOTE: The algorithm attribute value shall be one of the Hash Function Textual Names present in [2]. \n" + VirtualCpuData: + type: object + required: + - numVirtualCpu + properties: + cpuArchitecture: + type: string + description: CPU architecture type. Examples are x86, ARM. + numVirtualCpu: + type: integer + description: Number of virtual CPUs. + virtualCpuClock: + type: number + description: Minimum virtual CPU clock rate (e.g. in MHz). + virtualCpuOversubscriptionPolicy: + type: string + description: The CPU core oversubscription policy, e.g. the relation of virtual CPU cores to physical CPU cores/threads. + vduCpuRequirements: + type: array + items: + $ref: '#/components/schemas/KeyValuePairs' + description: Array of key-value pair requirements on the Compute (CPU) for the VDU. + virtualCpuPinning: + $ref: '#/components/schemas/VirtualCpuPinningData' + VirtualMemoryData: + type: object + required: + - virtualMemSize + properties: + virtualMemSize: + type: number + description: Amount of virtual memory in MB. + virtualMemOversubscriptionPolicy: + type: string + description: 'The memory core oversubscription policy in terms of virtual memory to physical memory + + on the platform. The cardinality can be 0 during the allocation request, if no particular + + value is requested. + + ' + vduMemRequirements: + type: array + items: + $ref: '#/components/schemas/KeyValuePairs' + description: Array of key-value pair requirements on the memory for the VDU. + numaEnabled: + type: boolean + description: Specifies the memory allocation to be cognisant of the relevant process/core allocation. + hugePagesRequirements: + type: string + description: Specifies requirements on the huge pages resources for the virtual memory. + RequestedAdditionalCapabilityData: + type: object + required: + - requestedAdditionalCapabilityName + - supportMandatory + - targetPerformanceParameters + properties: + requestedAdditionalCapabilityName: + type: string + description: Specifies a requested additional capability for the VDU + supportMandatory: + type: boolean + description: Indicates whether the requested additional capability is mandatory for successful operation + minRequestedAdditionalCapabilityVersion: + type: string + description: Specifies the minimum version of the requested additional capability + preferredRequestedAdditionalCapabilityVersion: + type: string + description: Specifies the preferred version of the requested additional capability + targetPerformanceParameters: + type: array + items: + $ref: '#/components/schemas/KeyValuePairs' + OAuth2Info: + description: Parameters related to use of OAuth 2.0. Shall be present in case OAuth 2.0 (see IETF RFC 6749 [13]) is supported to secure the provision of the service over the transport. + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: 0..1 + type: object + properties: + grantTypes: + description: "List of supported OAuth 2.0 grant types. Each entry shall be one of the following permitted values: \u2022 OAUTH2_AUTHORIZATION_CODE (Authorization code grant type) \u2022 OAUTH2_IMPLICIT_GRANT (Implicit grant type) \u2022 OAUTH2_RESOURCE_OWNER (Resource owner password credentials grant type) \u2022 OAUTH2_CLIENT_CREDENTIALS (Client credentials grant type) Only the value \"OAUTH2_CLIENT_CREDENTIALS\" is supported in the present document." + x-etsi-mec-origin-type: Enum_inlined + x-etsi-mec-cardinality: 1..4 + type: array + minItems: 0 + items: + type: string + enum: + - SEE_DESCRIPTION + tokenEndpoint: + description: The token endpoint. Shall be present unless the grant type is OAUTH2_IMPLICIT_GRANT. + x-etsi-mec-origin-type: Uri + x-etsi-mec-cardinality: 0..1 + type: string + format: uri + required: + - grantTypes + SecurityInfo: + x-etsi-ref: 8.1.5.4 + type: object + properties: + oAuth2Info: + $ref: '#/components/schemas/OAuth2Info' + (extensions): + description: Extensions for alternative transport mechanisms. These extensions depend on the actual transport, and are out of scope of the present document. For instance, such extensions may be used to signal the necessary parameters for the client to use TLS-based authorization defined for alternative transports (see ETSI GS MEC 009 [5] for more information). + AppD: + x-etsi-ref: 6.2.1.2 + type: object + properties: + appDId: + description: "Identifier of this MEC application descriptor. This attribute shall be globally unique. See note\_1." + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + appName: + description: Name to identify the MEC application. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + appProvider: + description: Provider of the application and of the AppD. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + appSoftVersion: + description: Identifies the version of software of the MEC application. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + appDVersion: + description: Identifies the version of the application descriptor. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + mecVersion: + description: 'Identifies version(s) of MEC system compatible with the MEC application described in this version of the AppD. + + The value shall be formatted as comma-separated list of strings. Each entry shall have the format .. where , and are decimal numbers representing the version of the present document. + + Whitespace between list entries shall be trimmed before validation.' + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + appInfoName: + description: Human readable name for the MEC application. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + appDescription: + description: Human readable description of the MEC application. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + virtualComputeDescriptor: + # description': Describes CPU and memory requirements, as well as optional additional requirements, such as disk and acceleration related capabilities, of the single VM used to realize this MEC application. See note 5. + $ref: '#/components/schemas/VirtualComputeDescriptor' + # x-etsi-mec-origin-type': VirtualComputeDescriptor + # x-etsi-mec-cardinality': 0..1 + osContainerDescriptor: + description: 'Describes CPU, memory requirements and limits, and software images of the OS Containers realizing this MEC application corresponding to OS Containers sharing the same host and same network namespace. + + See notes 5 and 7.' + x-etsi-mec-origin-type: OsContainerDescriptor + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + $ref: '#/components/schemas/OsContainerDescriptor' + swImageDescriptor: + description: 'Describes the descriptors of the software image to be used by the virtualisation container used to realize this MEC application. + + See note 5.' + x-etsi-mec-origin-type: SwImageDescriptor + x-etsi-mec-cardinality: 1..N + type: array + minItems: 1 + items: + $ref: '#/components/schemas/SwImageDescriptor' + virtualStorageDescriptor: + description: Defines descriptors of virtual storage resources to be used by the MEC application. + x-etsi-mec-origin-type: VirtualStorageDescriptor + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + $ref: '#/components/schemas/VirtualStorageDescriptor' + appExtCpd: + description: Describes external interface(s) exposed by this MEC application. See note 4. + x-etsi-mec-origin-type: AppExternalCpd + x-etsi-mec-cardinality: 1..N + type: array + minItems: 1 + items: + $ref: '#/components/schemas/AppExternalCpd' + appServiceRequired: + description: Describes services a MEC application requires to run. + x-etsi-mec-origin-type: ServiceDependency + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + $ref: '#/components/schemas/ServiceDependency' + appServiceOptional: + description: Describes services a MEC application may use if available. + x-etsi-mec-origin-type: ServiceDependency + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + $ref: '#/components/schemas/ServiceDependency' + appServiceProduced: + description: Describes services a MEC application is able to produce to the platform or other MEC applications. Only relevant for service-producing apps. + x-etsi-mec-origin-type: ServiceDescriptor + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + $ref: '#/components/schemas/ServiceDescriptor' + appFeatureRequired: + description: Describes features a MEC application requires to run. + x-etsi-mec-origin-type: FeatureDependency + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + $ref: '#/components/schemas/FeatureDependency' + appFeatureOptional: + description: Describes features a MEC application may use if available. + x-etsi-mec-origin-type: FeatureDependency + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + $ref: '#/components/schemas/FeatureDependency' + transportDependencies: + description: 'Transports, if any, that this application requires to be provided by the platform. These transports will be used by the application to deliver services provided by this application. Only relevant for service-producing apps. + + See note 2.' + x-etsi-mec-origin-type: TransportDependency + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + $ref: '#/components/schemas/TransportDependency' + appTrafficRule: + description: Describes traffic rules the MEC application requires. + x-etsi-mec-origin-type: TrafficRuleDescriptor + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + $ref: '#/components/schemas/TrafficRuleDescriptor' + appDNSRule: + description: Describes DNS rules the MEC application requires. + x-etsi-mec-origin-type: DNSRuleDescriptor + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + $ref: '#/components/schemas/DNSRuleDescriptor' + appLatency: + # description': Describes the maximum latency tolerated by the MEC application. + $ref: '#/components/schemas/LatencyDescriptor' + # x-etsi-mec-origin-type': LatencyDescriptor + # x-etsi-mec-cardinality': 0..1 + terminateAppInstanceOpConfig: + # description': Configuration parameters for the Terminate application instance operation. + $ref: '#/components/schemas/TerminateAppInstanceOpConfig' + # x-etsi-mec-origin-type': TerminateAppInstanceOpConfig + # x-etsi-mec-cardinality': 0..1 + changeAppInstanceStateOpConfig: + # description': Configuration parameters for the change application instance state operation. + $ref: '#/components/schemas/ChangeAppInstanceStateOpConfig' + # x-etsi-mec-origin-type': ChangeAppInstanceStateOpConfig + # x-etsi-mec-cardinality': 0..1 + userContextTransferCapability: + # description': If the application supports the user context transfer capability, this attribute shall be included. + $ref: '#/components/schemas/UserContextTransferCapability' + # x-etsi-mec-origin-type': UserContextTransferCapability + # x-etsi-mec-cardinality': 0..1 + appNetworkPolicy: + # description': If present, it represents the application network policy of carrying the application traffic. + $ref: '#/components/schemas/AppNetworkPolicy' + # x-etsi-mec-origin-type': AppNetworkPolicy + # x-etsi-mec-cardinality': 0..1 + mciopId: + description: Identifies the MCIOP in the application package, used in containerized workload management, when the application is realized by a set of OS containers. See note 7. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + mcioIdentificationData: + # description': Name and type of the Managed Container Infrastructure Object (MCIO) that realizes this application. It allows the VNFM to identify the MCIO e.g. when querying the Container Infrastructure Service Management (CISM). See note 7. It shall be present when the application is realized by one or a set of OS containers and shall be absent otherwise. + $ref: '#/components/schemas/McioIdentificationData' + # x-etsi-mec-origin-type': McioIdentificationData + # x-etsi-mec-cardinality': 0..1 + logicalNode: + description: 'The logical node requirements. + + See notes 6 and 7.' + x-etsi-mec-origin-type: LogicalNodeRequirements + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + $ref: '#/components/schemas/LogicalNodeRequirements' + requestAdditionalCapabilities: + description: "Specifies requirements for additional capabilities. These can be for a range of purposes. One example is acceleration related capabilities. \nSee notes 6 and 7." + x-etsi-mec-origin-type: RequestedAdditionalCapabilityData + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + $ref: '#/components/schemas/RequestedAdditionalCapabilityData' + mcioConstraintParams: + description: "The parameter names for constraints expected to be assigned to MCIOs realizing this application.\nThe value specifies the standardized semantical context of the MCIO constraints and the parameter names for the MCIO constraints in the MCIO declarative descriptor.\nThe mcioConstraintParams attribute shall have one of the following values, expressing the associated semantical context.\nVALUES:\nlocalAffinityCisNode\nnodeAdditionalCapabilitySsd\nnodeAdditionalCapabilityDpdk\nnodeAdditionalCapabilitySriov\nnodeAdditionalCapabilityGpu\nnodeAdditionalCapabilityFpga\nnodeAdditionalCapabilityCpuPin\nnodeCapabilityLogicalNuma\nnodePool\nFor the associated semantical context of the values, refer to the description under the table\_7.1.6.2.2-1 of ETSI GS NFV IFA 011 [1].\nSee note 7." + x-etsi-mec-origin-type: Enum + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + type: string + required: + - appDId + - appName + - appProvider + - appSoftVersion + - appDVersion + - mecVersion + - appDescription + - swImageDescriptor + - appExtCpd + x-etsi-notes: "NOTE 1:\tThe appDId shall be used as the unique identifier of the application package that contains this AppD.\nNOTE 2:\tThis attribute indicates groups of transport bindings which a service-producing MEC application requires to be supported by the platform in order to be able to produce its services. At least one of the indicated groups needs to be supported to fulfil the requirements.\nNOTE 3:\tThe support of application descriptor containing descriptions of multiple virtualisation containers and/or application software images is out of scope of the present document.\nNOTE 4:\tExternal interfaces are used to connect to e.g. other MEC applications, MEC services, UEs and also MEC platform and OSS.\nNOTE 5:\tOnly one of virtualComputeDescriptor or osContainerDescriptor shall be present. If virtualComputeDescriptor presents, only a single swImageDescriptor shall be provided. \nNOTE 6:\tIf the AppD includes virtualComputeDesc, then logicalNode and requestedAdditionalCapabilites shall not be present.\nNOTE 7:\tThis attribute reflects the ETSI NFV interpretation of the cloud native workloads." + AppExternalCpd: + x-etsi-ref: 6.2.1.6 + type: object + properties: + virtualNetworkInterfaceRequirements: + description: Specifies requirements on a virtual network interface realizing the CPs instantiated from this CPD. See note 1. + x-etsi-mec-origin-type: VirtualNetworkInterfaceRequirements + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + $ref: '#/components/schemas/VirtualNetworkInterfaceRequirements' + additionalServiceData: + description: Additional service identification data of the external CP. + x-etsi-mec-origin-type: AdditionalServiceData + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + $ref: '#/components/schemas/AdditionalServiceData' + inherited_attributes: + description: All attributes inherited from Cpd. See note 2. + x-etsi-mec-origin-type: inherited_attributes + x-etsi-mec-cardinality: '1' + type: object + required: + - inherited_attributes + x-etsi-notes: "NOTE 1:\tAn AppD conformant to the present document shall not specify \"virtualNetworkInterfaceRequirements\" in AppExternalCpd corresponding to primary container cluster network interfaces.\nNOTE 2:\tFor CPs exposed by MEC Applications realized only by one or set of OS containers and used by the OS containers to connect to the primary container cluster external network, the ability to configure virtualised resources based on cpRole and trunkMode attributes might not be supported by all container technologies." + ServiceDescriptor: + x-etsi-ref: 6.2.1.7 + type: object + properties: + serName: + description: The name of the service, for example, RNIS, LocationService, etc. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + serCategory: + # description': A Category reference of the service, defined in ETSI GS MEC 011 [17]. + $ref: '#/components/schemas/CategoryRef' + # x-etsi-mec-origin-type': CategoryRef + # x-etsi-mec-cardinality': 0..1 + version: + description: The version of the service. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + transportsSupported: + type: array + items: + $ref: '#/components/schemas/TransportsSupported' + required: + - serName + - version + FeatureDependency: + x-etsi-ref: 6.2.1.8 + type: object + properties: + featureName: + description: The name of the feature, for example, UserApps, UEIdentity, etc. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + version: + description: The version of the feature. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + required: + - featureName + - version + TrafficRuleDescriptor: + x-etsi-ref: 6.2.1.9 + type: object + properties: + trafficRuleId: + description: Identifies the traffic rule. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + filterType: + type: string + 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.' + enum: + - SEE_DESCRIPTION + x-etsi-mec-origin-type: Enum_inlined + x-etsi-mec-cardinality: '1' + 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." + x-etsi-mec-origin-type: Integer + x-etsi-mec-cardinality: '1' + type: integer + trafficFilter: + description: The filter used to identify specific flow/packets that need to be handled by the MEC host. + x-etsi-mec-origin-type: TrafficFilter + x-etsi-mec-cardinality: 1..N + type: array + minItems: 1 + items: + $ref: '#/components/schemas/TrafficFilter' + action: + type: string + description: 'Identifies the action of the MEC host data plane, when a packet matches the trafficFilter, the example actions include: + + DROP, + + FORWARD_DECAPSULATED, + + FORWARD_ENCAPSULATED, + + PASSTHROUGH, + + DUPLICATE_DECAPSULATED, + + DUPLICATE_ENCAPSULATED ' + enum: + - SEE_DESCRIPTION + x-etsi-mec-origin-type: Enum_inlined + x-etsi-mec-cardinality: '1' + dstInterface: + # description': Describes the destination interface information. If the action is FORWARD_DECAPSULATED, FORWARD_ENCAPSULATED or PASSTHROUGH, one value shall be provided. If the action is DUPLICATE_DECAPSULATED or DUPLICATE_ENCAPSULATED, two values shall be provided. See note 2. If the action is DROP, no value shall be provided. + $ref: '#/components/schemas/InterfaceDescriptor' + # x-etsi-mec-origin-type': InterfaceDescriptor + # x-etsi-mec-cardinality': 0..2 + required: + - trafficRuleId + - filterType + - priority + - trafficFilter + - action + x-etsi-notes: "NOTE 1:\tValue indicates the priority in descending order, i.e. with 0 as the highest priority and 255 as the lowest priority.\nNOTE 2:\tSome applications (like inline/tap) require two interfaces. The first interface in the case of inline/tap is on the client (e.g. UE) side and the second on the core network (e.g. EPC) side." + TrafficFilter: + x-etsi-ref: 6.2.1.10 + type: object + properties: + srcAddress: + description: 'An IP address or a range of IP addresses. + + For IPv4, the IP address could be an IP address plus mask, or an individual IP address, or a range of IP addresses. + + For IPv6, the IP address could be an IP prefix, or a range of IP prefixes.' + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + type: string + dstAddress: + description: 'An IP address or a range of IP addresses. + + For IPv4, the IP address could be an IP address plus mask, or an individual IP address, or a range of IP addresses. + + For IPv6, the IP address could be an IP prefix, or a range of IP prefixes.' + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + type: string + srcPort: + description: A port or a range of ports. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + type: string + dstPort: + description: A port or a range of ports. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + type: string + protocol: + description: Specify the protocol of the traffic filter. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + type: string + tag: + description: Used for tag based traffic rule. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + type: string + uri: + description: An URI label, in application layer, i.e. in HTTP message, is used to filter the traffic. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + type: string + packetLabel: + description: A customized packet label in network layer, as defined by the owner of the MEC platform, is used to filter the traffic. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + type: string + srcTunnelAddress: + description: Used for GTP tunnel based traffic rule. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + type: string + tgtTunnelAddress: + description: Used for GTP tunnel based traffic rule. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + type: string + srcTunnelPort: + description: Used for GTP tunnel based traffic rule. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + type: string + dstTunnelPort: + description: Used for GTP tunnel based traffic rule. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + type: string + qCI: + description: Used to match all packets that have the same QCI. + x-etsi-mec-origin-type: Integer + x-etsi-mec-cardinality: 0..1 + type: integer + dSCP: + description: Used to match all IPv4 packets that have the same DSCP. + x-etsi-mec-origin-type: Integer + x-etsi-mec-cardinality: 0..1 + type: integer + tC: + description: Used to match all IPv6 packets that have the same TC. + x-etsi-mec-origin-type: Integer + x-etsi-mec-cardinality: 0..1 + type: integer + InterfaceDescriptor: + x-etsi-ref: 6.2.1.11 + type: object + properties: + interfaceType: + type: string + description: 'Type of interface: TUNNEL, MAC, IP, etc.' + enum: + - SEE_DESCRIPTION + x-etsi-mec-origin-type: Enum_inlined + x-etsi-mec-cardinality: '1' + tunnelInfo: + # description': Included only if the destination address type is tunnel. + $ref: '#/components/schemas/TunnelInfo' + # x-etsi-mec-origin-type': TunnelInfo + # x-etsi-mec-cardinality': 0..1 + srcMACAddress: + description: If the interface type is MAC, the source address identifies the MAC address of the interface. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + dstMACAddress: + description: If the interface type is MAC, the destination address identifies the MAC address of the destination. Only used for dstInterface. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + dstIPAddress: + description: If the interface type is IP, the destination address identifies the IP address of the destination. Only used for dstInterface. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + required: + - interfaceType + TunnelInfo: + x-etsi-ref: 6.2.1.12 + type: object + properties: + tunnelType: + type: string + description: 'Type of tunnel: GTP-U, GRE, etc.' + enum: + - SEE_DESCRIPTION + x-etsi-mec-origin-type: Enum_inlined + x-etsi-mec-cardinality: '1' + tunnelDstAddress: + description: Destination address of the tunnel. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + tunnelSrcAddress: + description: Source address of the tunnel. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + tunnelSpecificData: + description: Parameters specific to the tunnel. + x-etsi-mec-origin-type: Not_specified + x-etsi-mec-cardinality: 0..1 + type: object + required: + - tunnelType + - tunnelDstAddress + - tunnelSrcAddress + DNSRuleDescriptor: + x-etsi-ref: 6.2.1.13 + type: object + properties: + dnsRuleId: + description: Identifies the DNS Rule + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + domainName: + description: FQDN of the DNS rule + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + ipAddressType: + type: string + description: 'Specifies the IP address type, value: IP_V6, IP_V4' + enum: + - SEE_DESCRIPTION + x-etsi-mec-origin-type: Enum_inlined + x-etsi-mec-cardinality: '1' + ipAddress: + description: IP address given by the DNS rule + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + ttl: + description: Time-to-live value + x-etsi-mec-origin-type: Integer + x-etsi-mec-cardinality: 0..1 + type: integer + required: + - dnsRuleId + - domainName + - ipAddressType + - ipAddress + LatencyDescriptor: + x-etsi-ref: 6.2.1.14 + type: object + properties: + maxLatency: + description: The value of the maximum latency in nano seconds tolerated by the MEC application. See note. + x-etsi-mec-origin-type: Uint32 + x-etsi-mec-cardinality: '1' + type: integer + format: uint32 + required: + - maxLatency + x-etsi-notes: "NOTE:\tThe latency is considered to be the one way end-to-end latency between the client application (e.g. in a device) and the service (i.e. the MEC application instance)." + ServiceDependency: + x-etsi-ref: 6.2.1.17 + type: object + properties: + serName: + description: The name of the service, for example, RNIS, LocationService, AMS, etc. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + serCategory: + # description': A Category reference of the service. + $ref: '#/components/schemas/CategoryRef' + # x-etsi-mec-origin-type': CategoryRef + # x-etsi-mec-cardinality': 0..1 + version: + description: The version of the service. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + serTransportDependencies: + description: Indicates transport and serialization format dependencies of consuming the service. Defaults to REST + JSON if absent. See note. + x-etsi-mec-origin-type: TransportDependency + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + $ref: '#/components/schemas/TransportDependency' + requestedPermissions: + description: 'Requested permissions regarding the access of the application to the service. See clause 7.2 of ETSI GS MEC 009 [4]. + + The format of this attribute is left for the data model design stage.' + x-etsi-mec-origin-type: Not_specified + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + $ref: '#/components/schemas/Not_specified' + required: + - serName + - version + x-etsi-notes: "NOTE:\tThis attribute indicates groups of transport bindings that a service-consuming MEC application supports for the consumption of the MEC service defined by this ServiceDependency structure. If at least one of the indicated groups is supported by the service it may be consumed by the application." + TransportDependency: + x-etsi-ref: 6.2.1.18 + type: object + properties: + transport: + # description': Information about the transport in this transport binding. + $ref: '#/components/schemas/TransportDescriptor' + # x-etsi-mec-origin-type': TransportDescriptor + # x-etsi-mec-cardinality': '1' + serializers: + description: Information about the serializers in this transport binding, as defined in the SerializerType type in ETSI GS MEC 011 [17]. Support for at least one of the entries is required in conjunction with the transport. + x-etsi-mec-origin-type: SerializerType + x-etsi-mec-cardinality: 1..N + type: array + minItems: 1 + items: + $ref: '#/components/schemas/SerializerType' + labels: + description: Set of labels that allow to define groups of transport bindings. The mechanism of the grouping is defined below this table. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 1..N + type: array + minItems: 1 + items: + type: string + required: + - transport + - serializers + - labels + TransportDescriptor: + x-etsi-ref: 6.2.1.19 + type: object + properties: + name: + description: The name of this transport. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + description: + description: Human-readable description of this transport. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + type: + # description': Type of the transport, as defined in the TransportTypes type in ETSI GS MEC 011 [17]. + $ref: '#/components/schemas/TransportTypes' + # x-etsi-mec-origin-type': TransportTypes + # x-etsi-mec-cardinality': '1' + protocol: + description: The name of the protocol used. Shall be set to "HTTP" for a REST API. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + version: + description: The version of the protocol used. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + security: + # description': Information about the security used by the transport in ETSI GS MEC 011 [17]. + $ref: '#/components/schemas/SecurityInfo' + # x-etsi-mec-origin-type': SecurityInfo + # x-etsi-mec-cardinality': '1' + implSpecificInfo: + description: Additional implementation specific details of the transport. + x-etsi-mec-origin-type: Not_specified + x-etsi-mec-cardinality: 0..1 + type: object + required: + - name + - type + - protocol + - version + - security + UserContextTransferCapability: + x-etsi-ref: 6.2.1.20 + type: object + properties: + statefulApplication: + description: 'If the application is stateful, this attribute shall be set to true. + + Otherwise, this attribute shall be set to false. ' + x-etsi-mec-origin-type: Boolean + x-etsi-mec-cardinality: '1' + type: boolean + userContextTransferSupport: + description: 'This attribute shall be present if the application is stateful and shall be absent otherwise. + + + If the application supports the user context transfer, this attribute shall be set to true. + + Otherwise this attribute shall be set to false.' + x-etsi-mec-origin-type: Boolean + x-etsi-mec-cardinality: 0..1 + type: boolean + required: + - statefulApplication + AppNetworkPolicy: + x-etsi-ref: 6.2.1.21 + type: object + properties: + steeredNetwork: + $ref: '#/components/schemas/SteeredNetwork' + required: + - steeredNetwork + x-etsi-notes: "NOTE:\tThe network types may depend on the availability of deployed access networks of MEC system." + CreateAppPkg: + x-etsi-ref: 6.2.3.2 + type: object + properties: + appPkgName: + description: Name of the application package to be onboarded. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + appPkgVersion: + description: 'Version of the application package to be onboarded. + + The appPkgName with appPkgVersion can be used to uniquely identify the application package.' + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + appProvider: + description: The provider's name of the application package to be onboarded. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + checksum: + # description': Checksum of the onboarded application package. + $ref: '#/components/schemas/Checksum' + # x-etsi-mec-origin-type': Checksum + # x-etsi-mec-cardinality': '1' + userDefinedData: + $ref: '#/components/schemas/KeyValuePairs' + appPkgPath: + description: Address information of the application package. See note. + x-etsi-mec-origin-type: Uri + x-etsi-mec-cardinality: '1' + type: string + format: uri + required: + - appPkgName + - appPkgVersion + - checksum + - appPkgPath + x-etsi-notes: "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 + type: object + properties: + id: + description: Identifier of the application package resource. This identifier is allocated by the MEO. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + 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.' + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + appProvider: + description: The provider's name of the onboarded application package. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + appName: + description: Name of the onboarded application. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + 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. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + appDVersion: + description: Version of the application descriptor. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + checksum: + # description': Checksum of the onboarded application package. + $ref: '#/components/schemas/Checksum' + # x-etsi-mec-origin-type': Checksum + # x-etsi-mec-cardinality': '1' + signingCertificate: + description: The singleton signing certificate if it is included as a file in the AppD archive. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + softwareImages: + description: Information of application software image in application package. See note 1. + x-etsi-mec-origin-type: AppPkgSWImageInfo + x-etsi-mec-cardinality: 1..N + type: array + minItems: 1 + items: + $ref: '#/components/schemas/AppPkgSWImageInfo' + additionalArtifacts: + description: Additional information of application package artifacts that are not application software images. See note 2. + x-etsi-mec-origin-type: AppPkgArtifactInfo + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + $ref: '#/components/schemas/AppPkgArtifactInfo' + onboardingState: + type: string + description: 'Onboarding state of application package: + + CREATED: The application package resource has been created. + + UPLOADING: The associated application package content is being uploaded. + + PROCESSING: The associated application package content is being processed, e.g. validation. + + ONBOARDED: The associated application package content is successfully onboarded.' + enum: + - SEE_DESCRIPTION + x-etsi-mec-origin-type: Enum_inlined + x-etsi-mec-cardinality: '1' + operationalState: + type: string + description: 'Operational state of the onboarded application package: + + ENABLED: the application package can be used for instantiation of new application instances. + + DISABLED: the application package cannot be used for further application instantiation requests.' + enum: + - SEE_DESCRIPTION + x-etsi-mec-origin-type: Enum_inlined + x-etsi-mec-cardinality: '1' + usageState: + type: string + description: 'Usage state of the onboarded 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.' + enum: + - SEE_DESCRIPTION + x-etsi-mec-origin-type: Enum_inlined + x-etsi-mec-cardinality: '1' + mecInfo: + description: The MEC version that compatible with this application. This information is copied from the AppD. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 1..N + type: array + minItems: 1 + items: + type: string + userDefinedData: + $ref: '#/components/schemas/KeyValuePairs' + onboardingFailureDetails: + # description': Failure details of current onboarding procedure. See ETSI GS MEC 009 [4]. + $ref: '#/components/schemas/ProblemDetails' + # x-etsi-mec-origin-type': ProblemDetails + # x-etsi-mec-cardinality': 0..1 + _links: + $ref: '#/components/schemas/_links' + required: + - id + - appDId + - appName + - appSoftwareVersion + - appDVersion + - checksum + - softwareImages + - onboardingState + - operationalState + - usageState + - mecInfo + - _links + x-etsi-notes: "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." + AppPkgSubscriptionInfo: + x-etsi-ref: 6.2.3.4 + type: object + properties: + id: + description: Identifier of the subscription to application package notification. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + subscriptionType: + # description': Type of subscription. + $ref: '#/components/schemas/AppPkgSubscriptionType' + # x-etsi-mec-origin-type': AppPkgSubscriptionType + # x-etsi-mec-cardinality': '1' + callbackUri: + description: The URI of the endpoint for the subscription related notification to be sent to. + x-etsi-mec-origin-type: Uri + x-etsi-mec-cardinality: '1' + type: string + format: uri + _links: + $ref: '#/components/schemas/_links1' + required: + - id + - subscriptionType + - callbackUri + - _links + AppPkgSubscriptionLinkList: + x-etsi-ref: 6.2.3.5 + type: object + properties: + _links: + $ref: '#/components/schemas/_links2' + required: + - _links + AppPkgNotification: + x-etsi-ref: 6.2.3.6 + 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. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + notificationType: + description: 'Discriminator for the different notification types: + + "AppPackageOnBoarded": notification of the new onboarded application package. + + "AppPackageEnabled": notification of the operational state change of onboarded application package. + + "AppPackageDisabled": notification of the onboarded application package disabled. + + "AppPackageDeleted": notification of the application package deleted.' + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + subscriptionId: + description: Identifier of the subscription to this notification. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + timeStamp: + # description': Date and time of the notification generation. + $ref: '#/components/schemas/TimeStamp' + # x-etsi-mec-origin-type': TimeStamp + # x-etsi-mec-cardinality': '1' + appPkgId: + description: Identifier of the onboarded application package. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + appDId: + description: The application descriptor identifier identifies the application package and the application descriptor in a globally unique way. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + operationalState: + type: string + description: 'Operational state of the application package: + + ENABLED: the application package can be used for instantiation of new application instances. + + DISABLED: the application package cannot be used for further application instantiation requests.' + enum: + - SEE_DESCRIPTION + x-etsi-mec-origin-type: Enum_inlined + x-etsi-mec-cardinality: '1' + _links: + $ref: '#/components/schemas/_links3' + required: + - id + - notificationType + - subscriptionId + - timeStamp + - appPkgId + - appDId + - operationalState + - _links + AppPkgSubscription: + x-etsi-ref: 6.2.3.7 + type: object + properties: + callbackUri: + description: The URI of the endpoint for the subscription related notification to be sent to. + x-etsi-mec-origin-type: Uri + x-etsi-mec-cardinality: '1' + type: string + format: uri + subscriptionType: + # description': Type of the subscription. + $ref: '#/components/schemas/AppPkgSubscriptionType' + # x-etsi-mec-origin-type': AppPkgSubscriptionType + # x-etsi-mec-cardinality': '1' + appPkgFilter: + description: The attribute-based filter is to filter application packages on which the query applies. + x-etsi-mec-origin-type: AppPkgFilter + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + $ref: '#/components/schemas/AppPkgFilter' + required: + - callbackUri + - subscriptionType + AppPkgInfoModifications: + x-etsi-ref: 6.2.3.8 + type: object + properties: + operationalState: + type: string + description: "New value of the \"operationalState\" attribute of the \"OnboardedAppPkgInfo\" structure.\n\nPermitted values \nDISABLED: to disable the individual application package.\nENABLED: to enable the individual application package." + enum: + - SEE_DESCRIPTION + x-etsi-mec-origin-type: Enum_inlined + x-etsi-mec-cardinality: '1' + required: + - operationalState + AppPkgFilter: + x-etsi-ref: 6.2.3.10 + type: object + properties: + appPkgInfoId: + description: Match the application package identifier which is allocated by the MEO. See note. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + appDId: + description: Match the application descriptor identifier which is allocated by the application provider. See note. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + appProvider: + description: Match the provider's name of the onboarded application. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + appName: + description: Match the name of the onboarded application. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + appSoftwareVersion: + description: Match the software version of the application package. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + appDVersion: + description: Match the version of the application descriptor. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + operationalState: + type: string + description: 'Match particular operational state of the application package: + + ENABLED: the application package can be used for instantiation of new application instances. + + DISABLED: the application package cannot be used for further application instantiation requests. + + + May be present if the "subscriptionType" attribute contains the value "AppPackageChangeSubscription", and shall be absent otherwise.' + enum: + - SEE_DESCRIPTION + x-etsi-mec-origin-type: Enum_inlined + x-etsi-mec-cardinality: 0..1 + usageState: + type: string + description: 'Match particular usage state of the application package: + + IN_USE: application instances instantiated from this package exist. + + NOT_IN_USE: No application instance instantiated from this package exist. + + + May be present if the "subscriptionType" attribute contains the value "AppPackageChangeSubscription", and shall be absent otherwise.' + enum: + - SEE_DESCRIPTION + x-etsi-mec-origin-type: Enum_inlined + x-etsi-mec-cardinality: 0..1 + x-etsi-notes: "NOTE:\tThe attributes \"appPkgInfoId \", and \"appDId\" are alternatives to reference particular application package in a filter. They should not be used both in the same filter instance, but one alternative should be chosen." + LinkType: + x-etsi-ref: 6.2.5.2 + type: object + properties: + href: + description: URI referring to a resource. + x-etsi-mec-origin-type: Uri + x-etsi-mec-cardinality: '1' + type: string + format: uri + required: + - href + TimeStamp: + x-etsi-ref: 6.2.5.4 + type: object + properties: + seconds: + description: "The seconds part of the Time. Time is defined as Unix-time since January\_1, 1970, 00:00:00 UTC." + x-etsi-mec-origin-type: Uint32 + x-etsi-mec-cardinality: '1' + type: integer + format: uint32 + nanoSeconds: + description: The nanoseconds part of the Time. Time is defined as Unix-time since January 1, 1970, 00:00:00 UTC. + x-etsi-mec-origin-type: Uint32 + x-etsi-mec-cardinality: '1' + type: integer + format: uint32 + required: + - seconds + - nanoSeconds + Checksum: + x-etsi-ref: 6.2.5.6 + type: object + properties: + algorithm: + description: Name of the algorithm used to generate the checksum, as defined in ETSI GS NFV-SOL 004 [18]. For example, SHA-256, SHA-512. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + hash: + description: The hexadecimal value of the checksum. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + required: + - algorithm + - hash + TransportsSupported: + description: Indicates transports and serialization formats supported made available to the service-consuming application. Defaults to REST + JSON if absent. + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: 0..N + type: object + minItems: 0 + properties: + transport: + # description': Information about the transport in this binding. + $ref: '#/components/schemas/TransportDescriptor' + # x-etsi-mec-origin-type': TransportDescriptor + # x-etsi-mec-cardinality': '1' + serializers: + description: "Information about the serializers in this binding, as defined in the SerializerType type in ETSI GS\_MEC\_011\_[17]." + x-etsi-mec-origin-type: SerializerType + x-etsi-mec-cardinality: 1..N + type: array + minItems: 1 + items: + $ref: '#/components/schemas/SerializerType' + required: + - transport + - serializers + SteeredNetwork: + description: 'This attribute provides an option for the application to specify a type of network to carry the application traffic. + + See note.' + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: '1' + type: object + properties: + cellularNetwork: + 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. + x-etsi-mec-origin-type: Boolean + x-etsi-mec-cardinality: 0..1 + 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." + x-etsi-mec-origin-type: Boolean + x-etsi-mec-cardinality: 0..1 + 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. + x-etsi-mec-origin-type: Boolean + x-etsi-mec-cardinality: 0..1 + type: boolean + _links: + description: Links to resources related to this resource. + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: '1' + type: object + properties: + self: + # description': Self referring URI. + $ref: '#/components/schemas/LinkType' + # x-etsi-mec-origin-type': LinkType + # x-etsi-mec-cardinality': '1' + appD: + # description': Link to the appD resource. + $ref: '#/components/schemas/LinkType' + # x-etsi-mec-origin-type': LinkType + # x-etsi-mec-cardinality': '1' + appPkgContent: + # description': Link to the "Onboarded application package content" resource. + $ref: '#/components/schemas/LinkType' + # x-etsi-mec-origin-type': LinkType + # x-etsi-mec-cardinality': '1' + vnfPkgInfo: + # description': Link to the corresponding VNF package resource at NFVO. See note 3. + $ref: '#/components/schemas/LinkType' + # x-etsi-mec-origin-type': LinkType + # x-etsi-mec-cardinality': 0..1 + required: + - self + - appD + - appPkgContent + _links1: + description: Links to resources related to this resource. + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: '1' + type: object + properties: + self: + # description': URI of this resource. + $ref: '#/components/schemas/LinkType' + # x-etsi-mec-origin-type': LinkType + # x-etsi-mec-cardinality': '1' + required: + - self + Subscriptions: + description: A link list to the subscriptions to an application package. + x-etsi-mec-origin-type: array (Structure (inlined)) + x-etsi-mec-cardinality: 0..N + type: object + minItems: 0 + properties: + href: + description: The URI referring to the subscription. + x-etsi-mec-origin-type: Uri + x-etsi-mec-cardinality: '1' + type: string + format: uri + subscriptionType: + # description': Type of the subscription. + $ref: '#/components/schemas/AppPkgSubscriptionType' + # x-etsi-mec-origin-type': AppPkgSubscriptionType + # x-etsi-mec-cardinality': '1' + required: + - href + - subscriptionType + _links2: + description: Links to resources related to this resource. + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: '1' + type: object + properties: + self: + # description': URI of this resource. + $ref: '#/components/schemas/LinkType' + # x-etsi-mec-origin-type': LinkType + # x-etsi-mec-cardinality': '1' + subscriptions: + type: array + items: + $ref: '#/components/schemas/Subscriptions' + required: + - self + _links3: + description: Links to resources related to this notification. + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: '1' + type: object + properties: + subscription: + # description': A link to the related subscription. + $ref: '#/components/schemas/LinkType' + # x-etsi-mec-origin-type': LinkType + # x-etsi-mec-cardinality': '1' + required: + - subscription + responses: + '200': + description: OK + '204': + description: No Content + '206': + description: Partial Content + '400': + description: 'Bad Request: used to indicate that incorrect parameters were passed to the request.' + content: + application/problem+json: + schema: + $ref: '#/components/schemas/ProblemDetails' + '401': + description: 'Unauthorized: used when the client did not submit credentials.' + content: + application/problem+json: + schema: + $ref: '#/components/schemas/ProblemDetails' + '403': + description: 'Forbidden: operation is not allowed given the current status of the resource.' + content: + application/problem+json: + schema: + $ref: '#/components/schemas/ProblemDetails' + '404': + description: 'Not Found: used when a client provided a URI that cannot be mapped to a valid resource URI.' + content: + application/problem+json: + schema: + $ref: '#/components/schemas/ProblemDetails' + '406': + description: 'Not Acceptable: used to indicate that the server cannot provide the any of the content formats supported by the client.' + content: + application/problem+json: + schema: + $ref: '#/components/schemas/ProblemDetails' + '409': + description: 'Conflict: The operation cannot be executed currently, due to a conflict with the state of the resource. .' + content: + application/problem+json: + schema: + $ref: '#/components/schemas/ProblemDetails' + '416': + description: 'Range Not Satisfiable: The byte range passed in the "Range" header did not match any available byte range. .' + content: + application/problem+json: + schema: + $ref: '#/components/schemas/ProblemDetails' + '429': + description: 'Too Many Requests: used when a rate limiter has triggered.' + content: + application/problem+json: + schema: + $ref: '#/components/schemas/ProblemDetails' + parameters: + 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 + cardinality: 0..1 + in: query + required: false + x-exportParamName: Query.Filter + 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 + cardinality: 0..1 + in: query + required: false + x-exportParamName: Query.All_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 + cardinality: 0..1 + in: query + required: false + x-exportParamName: Query.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 + cardinality: 0..1 + in: query + required: false + x-exportParamName: Query.Exclude_fields + Query.Exclude_default: + description: 'Indicates to exclude the following complex attributes of AppPkgInfo from the response. + + + The following attributes shall be excluded from the AppPkgInfo 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: + + checksum; + + softwareImages; + + additionalArtifacts.' + name: exclude_default + cardinality: 0..1 + in: query + required: false + x-exportParamName: Query.Exclude_default + 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.' + name: filter + cardinality: 0..1 + in: query + required: false + x-exportParamName: Query.Filter1 + 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_fields + cardinality: 0..1 + in: query + required: false + x-exportParamName: Query.All_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: fields + cardinality: 0..1 + in: query + required: false + x-exportParamName: Query.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_fields + cardinality: 0..1 + in: query + required: false + x-exportParamName: Query.Exclude_fields1 + Query.Exclude_default1: + description: 'Indicates to exclude the following complex attributes of AppD from the response. + + + The following attributes shall be excluded from the AppPkgInfo 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: + + virtualComputeDescriptor; + + swImageDescriptor; + + virtualStorageDescriptor; + + appExtCpd; + + terminateAppInstanceOpConfig; + + changeAppInstanceStateOpConfig.' + name: exclude_default + cardinality: 0..1 + in: query + required: false + x-exportParamName: Query.Exclude_default1 + diff --git a/Auto_Generated_OAS_Output_Files/gs_mec011v030101p_SrvMgmt.yaml b/Auto_Generated_OAS_Output_Files/gs_mec011v030101p_SrvMgmt.yaml new file mode 100644 index 0000000..a880c7f --- /dev/null +++ b/Auto_Generated_OAS_Output_Files/gs_mec011v030101p_SrvMgmt.yaml @@ -0,0 +1,1139 @@ +openapi: 3.1.0 +jsonSchemaDialect: https://json-schema.org/draft/2020-12/schema +info: + contact: + url: https://forge.etsi.org/rep/mec/gs011-app-enablement-api + title: ETSI GS MEC 011 Edge Platform Application Enablement + description: 'The present document focuses on the functionalities enabled via the Mp1 reference point between MEC applications and MEC platform, which allows these applications to interact with the MEC system. Service management functionality includes registration/deregistration, discovery and event notifications. Application support functionality includes application start-up, registration and termination, traffic rules, DNS and time of day. It describes the information flows, required information, and specifies the necessary operations, data models and API definitions. + + ' + license: + name: BSD-3-Clause + url: https://forge.etsi.org/legal-matters + version: 3.1.1 +paths: + /services: + get: + summary: Retrieve information about a list of mecService resources of an application instance. + description: This method retrieves information about a list of mecService resources. This method is typically used in "service availability query" procedure as described in clause 5.2.5. Figure 8.2.3.3.1-1 shows the example message flows using GET method. + operationId: servicesGET + tags: + - serviceManagement + parameters: + - $ref: '#/components/parameters/Query.Ser_instance_id' + - $ref: '#/components/parameters/Query.Ser_name' + - $ref: '#/components/parameters/Query.Ser_category_id' + - $ref: '#/components/parameters/Query.Scope_of_locality' + - $ref: '#/components/parameters/Query.Consumed_local_only' + - $ref: '#/components/parameters/Query.Is_local' + responses: + '200': + description: Upon success, a response message content containing an array of the mecServices is returned. + content: + application/json: + schema: + type: object + properties: + ServiceInfo: + type: array + items: + $ref: '#/components/schemas/ServiceInfo' + '400': + $ref: '#/components/responses/400' + '404': + $ref: '#/components/responses/404' + '403': + $ref: '#/components/responses/403' + '414': + $ref: '#/components/responses/414' + /services/{serviceId}: + get: + summary: Retrieve information about a mecService resource of an application instance. + description: This method retrieves information about a mecService resource. This method is typically used in "service availability query" procedure as described in clause 5.2.5. + operationId: servicesByIdGET + tags: + - serviceManagement + responses: + '200': + description: It is used to indicate nonspecific success. The response message content contains a representation of the resource. + content: + application/json: + schema: + type: object + properties: + ServiceInfo: + $ref: '#/components/schemas/ServiceInfo' + '400': + $ref: '#/components/responses/400' + '404': + $ref: '#/components/responses/404' + '403': + $ref: '#/components/responses/403' + /transports: + get: + summary: Retrieve information about the available transports. + description: This method retrieves information about a list of available transports. This method is typically used by a service-producing application to discover transports provided by the MEC platform in the "transport information query" procedure as described in clause 5.2.9. Figure 8.2.5.3.1-1 shows the example message flows using GET method. + operationId: transportsGET + tags: + - serviceManagement + responses: + '200': + description: Upon success, a response message content containing an array describing the available transports is returned. + content: + application/json: + schema: + type: object + properties: + TransportInfo: + type: array + items: + $ref: '#/components/schemas/TransportInfo' + '400': + $ref: '#/components/responses/400' + '404': + $ref: '#/components/responses/404' + '403': + $ref: '#/components/responses/403' + /applications/{appInstanceId}/services: + get: + summary: Retrieve information about a list of mecService resources of an application instance. + description: This method retrieves information about a list of mecService resources that is associated with an application instance. This method is typically used in "service availability query" procedure as described in clause 5.2.5. Figure 8.2.6.3.1-1 shows the example message flows using GET method. + operationId: servicesGET + tags: + - serviceManagement + parameters: + - $ref: '#/components/parameters/Query.Ser_instance_id' + - $ref: '#/components/parameters/Query.Ser_name' + - $ref: '#/components/parameters/Query.Ser_category_id' + - $ref: '#/components/parameters/Query.Scope_of_locality' + - $ref: '#/components/parameters/Query.Consumed_local_only' + - $ref: '#/components/parameters/Query.Is_local' + responses: + '200': + description: Upon success, a response message content containing an array of the mecServices is returned. + content: + application/json: + schema: + type: object + properties: + ServiceInfo: + type: array + items: + $ref: '#/components/schemas/ServiceInfo' + '400': + $ref: '#/components/responses/400' + '404': + $ref: '#/components/responses/404' + '403': + $ref: '#/components/responses/403' + '414': + $ref: '#/components/responses/414' + post: + summary: Create a mecService resource of an application instance. + description: "This method is used to create a mecService resource that is associated with the application instance. This method is typically used in \"service availability update and new service registration\" procedure as described in clause 5.2.4. Figure\_8.2.6.3.4-1 shows the message flow." + operationId: servicesPOST + tags: + - serviceManagement + requestBody: + description: Message content in the request contains ServiceInfo to be created. + required: true + content: + application/json: + schema: + type: object + properties: + ServiceInfo: + $ref: '#/components/schemas/ServiceInfo' + responses: + '201': + description: Upon success, the HTTP response shall include a "Location" HTTP header that contains the resource URI of the created resource. + content: + application/json: + schema: + type: object + properties: + ServiceInfo: + $ref: '#/components/schemas/ServiceInfo' + '400': + $ref: '#/components/responses/400' + '404': + $ref: '#/components/responses/404' + '403': + $ref: '#/components/responses/403' + /applications/{appInstanceId}/services/{serviceId}: + get: + summary: Retrieve information about a mecService resource of an application instance. + description: This method retrieves information about a mecService resource that is associated with an application instance. This method is typically used in "service availability query" procedure as described in clause 5.2.5. + operationId: servicesByIdGET + tags: + - serviceManagement + responses: + '200': + description: It is used to indicate nonspecific success. The response message content contains a representation of the resource. + content: + application/json: + schema: + type: object + properties: + ServiceInfo: + $ref: '#/components/schemas/ServiceInfo' + '400': + $ref: '#/components/responses/400' + '404': + $ref: '#/components/responses/404' + '403': + $ref: '#/components/responses/403' + put: + summary: Update the information about a mecService resource of an application instance. + description: PUT HTTP method shall comply with the URI query parameters, request and response data structures, and response codes, as specified in tables 8.2.7.3.2-1 and 8.2.7.3.2-2. + operationId: servicesByIdPUT + tags: + - serviceManagement + requestBody: + description: One or more updated attributes that are allowed to be changed (i.e. "state" or other attributes based on definition in clause 8.1.2.2) are included in the ServiceInfo data structure in the message content of the request. + required: true + content: + application/json: + schema: + type: object + properties: + ServiceInfo: + $ref: '#/components/schemas/ServiceInfo' + responses: + '200': + description: Upon success, a response message content containing data type describing the updated ServiceInfo is returned. + content: + application/json: + schema: + type: object + properties: + ServiceInfo: + $ref: '#/components/schemas/ServiceInfo' + '400': + $ref: '#/components/responses/400' + '404': + $ref: '#/components/responses/404' + '403': + $ref: '#/components/responses/403' + '412': + $ref: '#/components/responses/412' + delete: + summary: Delete a mecService resource. + description: This method deletes a mecService resource. This method is typically used in the service deregistration procedure. Figure 8.2.7.3.5-1 shows the example message flows using DELETE method. + operationId: servicesByIdDELETE + tags: + - serviceManagement + responses: + '204': + $ref: '#/components/responses/204' + '404': + $ref: '#/components/responses/404' + '403': + $ref: '#/components/responses/403' + /applications/{appInstanceId}/subscriptions: + get: + summary: Retrieve information about a list of mecSrvMgmtSubscription resources for this subscriber. + description: The GET method may be used to request information about all subscriptions for this requestor. Upon success, the response contains message content with all the subscriptions for the requestor. + operationId: subscriptionsGET + tags: + - serviceManagement + responses: + '200': + description: Upon success, a response message content containing the list of links to the requested subscriptions is returned. + content: + application/json: + schema: + type: object + properties: + SubscriptionLinkList: + $ref: '#/components/schemas/SubscriptionLinkList' + '400': + $ref: '#/components/responses/400' + '404': + $ref: '#/components/responses/404' + '403': + $ref: '#/components/responses/403' + post: + summary: Create a mecSrvMgmtSubscription resource. + description: The POST method may be used to create a new subscription. One example use case is to create a new subscription to the MEC service availability notifications. Upon success, the response contains message content describing the created subscription. This method is typically used in "Subscribing to service availability event notifications" procedure as described in clause 5.2.6.2. Figure 8.2.8.3.4-1 shows the example message flows using POST method. + operationId: subscriptionsPOST + tags: + - serviceManagement + requestBody: + description: Message content in the request contains a subscription to the MEC service availability notifications that is to be created. + required: true + content: + application/json: + schema: + type: object + properties: + SerAvailabilityNotificationSubscription: + $ref: '#/components/schemas/SerAvailabilityNotificationSubscription' + responses: + '201': + description: Upon success, the HTTP response shall include a "Location" HTTP header that contains the resource URI of the created subscription resource. + content: + application/json: + schema: + type: object + properties: + SerAvailabilityNotificationSubscription: + $ref: '#/components/schemas/SerAvailabilityNotificationSubscription' + '400': + $ref: '#/components/responses/400' + '404': + $ref: '#/components/responses/404' + '403': + $ref: '#/components/responses/403' + callbacks: + notification: + post: + summary: Callback POST used to send a notification + description: Subscription notification + operationId: notificationPOST + requestBody: + description: Subscription notification + required: true + content: + application/json: + schema: + type: object + properties: + subscriptionNotification: + $ref: '#/components/schemas/SerAvailabilityNotificationSubscription' + /applications/{appInstanceId}/subscriptions/{subscriptionId}: + get: + summary: Retrieve information about a mecSrvMgmtSubscription resource for this subscriber. + description: The GET method requests information about a subscription for this requestor. Upon success, the response contains message content with the subscription for the requestor. + operationId: subscriptionsByIdGET + tags: + - serviceManagement + responses: + '200': + description: Upon success, a response message content containing the requested subscription is returned. + content: + application/json: + schema: + type: object + properties: + ? 'SerAvailabilityNotification + + Subscription' + : $ref: '#/components/schemas/SerAvailabilityNotification + + Subscription' + '400': + $ref: '#/components/responses/400' + '404': + $ref: '#/components/responses/404' + '403': + $ref: '#/components/responses/403' + delete: + summary: Delete a mecSrvMgmtSubscription resource. + description: This method deletes a mecSrvMgmtSubscription. This method is typically used in "Unsubscribing from event notifications" procedure as described in clause 5.2.6.3. Figure 8.2.9.3.5-1 shows the example message flows using DELETE method. + operationId: subscriptionsByIdDELETE + tags: + - serviceManagement + responses: + '204': + $ref: '#/components/responses/204' + '404': + $ref: '#/components/responses/404' + '403': + $ref: '#/components/responses/403' + 'Resource URI: (allocated by the MEC platform)': + get: + description: 'This method retrieves information about an "Individual mecServiceLiveness" resource. ' + operationId: 'Resource URI: (allocated by the MEC platform)GET' + tags: + - serviceManagement + responses: + '200': + description: It is used to indicate nonspecific success. The response message content contains a representation of the resource. + content: + application/json: + schema: + type: object + properties: + ServiceLivenessInfo: + $ref: '#/components/schemas/ServiceLivenessInfo' + '400': + $ref: '#/components/responses/400' + '404': + $ref: '#/components/responses/404' + '403': + $ref: '#/components/responses/403' + patch: + description: The MEC application instance that provides MEC service shall send a PATCH request to the resource URI representing the liveness of the service instance. + operationId: 'Resource URI: (allocated by the MEC platform)PATCH' + tags: + - serviceManagement + requestBody: + description: It contains an update of the liveness state. + required: true + content: + application/json: + schema: + type: object + properties: + ServiceLivenessUpdate: + $ref: '#/components/schemas/ServiceLivenessUpdate' + responses: + '200': + description: Upon success, a response message content is returned containing the updated liveness interval value of the service Instance. + content: + application/json: + schema: + type: object + properties: + ServiceLivenessInfo: + $ref: '#/components/schemas/ServiceLivenessInfo' + '204': + description: Successful response sent when there is no need to provide a new liveness interval value to the service Instance. + content: + application/json: + schema: + type: object + properties: {} + '400': + $ref: '#/components/responses/400' + '404': + $ref: '#/components/responses/404' + '403': + $ref: '#/components/responses/403' + '412': + $ref: '#/components/responses/412' +components: + schemas: + ProblemDetails: + type: object + properties: + type: + type: string + format: uri + description: A URI reference according to IETF RFC 3986 that identifies the problem type + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: URI + title: + type: string + description: A short, human-readable summary of the problem type + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: String + status: + type: integer + format: uint32 + description: The HTTP status code for this occurrence of the problem + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: Uint32 + detail: + type: string + description: A human-readable explanation specific to this occurrence of the problem + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: String + instance: + type: string + format: uri + description: A URI reference that identifies the specific occurrence of the problem + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: URI + LocalityType: + type: string + enum: + - MEC_SYSTEM + - MEC_HOST + - NFVI_POP + - ZONE + - ZONE_GROUP + - NFVI_NODE + description: Enumeration representing types of locality. + SerializerType: + type: string + enum: + - JSON + - XML + - PROTOBUF3 + description: Enumeration representing types of serializers. + example: JSON + TransportType: + type: string + enum: + - REST_HTTP + - MB_TOPIC_BASED + - MB_ROUTING + - MB_PUBSUB + - RPC + - RPC_STREAMING + - WEBSOCKET + description: Enumeration representing types of transports. + ServiceState: + type: string + enum: + - ACTIVE + - INACTIVE + - SUSPENDED + description: Enumeration representing possible states of a MEC service instance. + SerInstanceId: + description: Identifier of the service instance assigned by the MEPM/MEC platform. For the uniqueness of the identifier across the MEC system, UUID format [i.7] is recommended.Shall be absent in POST requests, and present otherwise + SerName: + description: The name of the service. This is how the service producing MEC application identifies the service instance it produces. + SubscriptionLinkList: + x-etsi-ref: 6.2.2 + type: object + properties: + _links: + $ref: '#/components/schemas/_links' + required: + - _links + LinkType: + x-etsi-ref: 6.3.2 + type: object + properties: + href: + description: URI referring to a resource + x-etsi-mec-origin-type: Uri + x-etsi-mec-cardinality: '1' + type: string + format: uri + required: + - href + ServiceInfo: + x-etsi-ref: 8.1.2.2 + type: object + properties: + serInstanceId: + # description': 0..1 + $ref: '#/components/schemas/SerInstanceId' + # x-etsi-mec-origin-type': SerInstanceId + # x-etsi-mec-cardinality': 0..1 + serName: + # description': '1' + $ref: '#/components/schemas/SerName' + # x-etsi-mec-origin-type': SerName + # x-etsi-mec-cardinality': '1' + serCategory: + # description': 0..1 + $ref: '#/components/schemas/CategoryRef' + # x-etsi-mec-origin-type': CategoryRef + # x-etsi-mec-cardinality': 0..1 + version: + description: '1' + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + state: + # description': '1' + $ref: '#/components/schemas/ServiceState' + # x-etsi-mec-origin-type': ServiceState + # x-etsi-mec-cardinality': '1' + transportId: + description: Identifier of the platform-provided transport to be used by the service. Valid identifiers may be obtained using the "Transport information query" procedure. May be present in POST requests to signal the use of a platform-provided transport for the service, and shall be absent otherwise. See note 2. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + transportInfo: + # description': Information regarding the transport used by the service. May be present in POST requests to signal the use of an application-provided transport for the service, and shall be present otherwise. See note 2. + $ref: '#/components/schemas/TransportInfo' + # x-etsi-mec-origin-type': TransportInfo + # x-etsi-mec-cardinality': 0..1 + serializer: + # description': Indicate the supported serialization format of the service. + $ref: '#/components/schemas/SerializerType' + # x-etsi-mec-origin-type': SerializerType + # x-etsi-mec-cardinality': '1' + scopeOfLocality: + # description': The scope of locality as expressed by "consumedLocalOnly" and "isLocal". If absent, defaults to MEC_HOST. See notes 3, 5 and 6. + $ref: '#/components/schemas/LocalityType' + # x-etsi-mec-origin-type': LocalityType + # x-etsi-mec-cardinality': 0..1 + consumedLocalOnly: + description: 'Indicate whether the service can only be consumed by the MEC applications located in the same locality (as defined by scopeOfLocality) as this service instance (TRUE) or not (FALSE). + + Default to TRUE if absent.' + x-etsi-mec-origin-type: Boolean + x-etsi-mec-cardinality: 0..1 + type: boolean + isLocal: + description: 'Indicate whether the service is located in the same locality (as defined by scopeOfLocality) as the consuming MEC application (TRUE) or not (FALSE). + + Default to TRUE if absent. See note 4.' + x-etsi-mec-origin-type: Boolean + x-etsi-mec-cardinality: 0..1 + type: boolean + livenessInterval: + description: 'Interval (in seconds) between two consecutive "heartbeat" messages (see clause 8.2.10.3.3). + + If the service-producing application supports sending "heartbeat" messages, it shall include this attribute in the registration request. In this case, the application shall either set the value of this attribute to zero or shall use this attribute to propose a non-zero positive value for the liveness interval. + + If the application has provided this attribute in the request and the MEC platform requires "heartbeat" messages, the MEC platform shall return this attribute value in the HTTP responses. The MEC platform may use the value proposed in the request or may choose a different value. + + If the MEC platform does not require "heartbeat" messages for this service instance it shall omit the attribute in responses.' + x-etsi-mec-origin-type: Integer + x-etsi-mec-cardinality: 0..1 + type: integer + _links: + $ref: '#/components/schemas/_links1' + required: + - serName + - version + - state + - serializer + - _links + x-etsi-notes: "NOTE 1:\tThe service category may be included in the application descriptor. It may be allocated by the operator or by the application developer.\nNOTE 2:\tEither transportId or transportInfo but not both shall be present in POST requests.\nNOTE 3:\tValues NFVI_POP, ZONE and NFVI_NODE are used when the service instance is deployed as a VNF.\nNOTE 4:\tThe isLocal is used only in service availability query response and service availability subscription/notification messages.\nNOTE 5:\tValue ZONE_GROUP can be used when the service instance is deployed as a VNF.\nNOTE 6:\tRegarding the value MEC_SYSTEM, if the service is running on the same MEC system as the MEC app, then it will be local to it." + TransportInfo: + x-etsi-ref: 8.1.2.3 + type: object + properties: + id: + description: The identifier of this transport. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + name: + description: The name of this transport. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + description: + description: Human-readable description of this transport. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + type: + # description': Type of the transport. + $ref: '#/components/schemas/TransportType' + # x-etsi-mec-origin-type': TransportType + # x-etsi-mec-cardinality': '1' + protocol: + description: The name of the protocol used. Shall be set to "HTTP" for a REST API. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + version: + description: The version of the protocol used. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + endpoint: + # description': Information about the endpoint to access the transport. + $ref: '#/components/schemas/EndPointInfo' + # x-etsi-mec-origin-type': EndPointInfo + # x-etsi-mec-cardinality': '1' + security: + # description': Information about the security used by the transport. + $ref: '#/components/schemas/SecurityInfo' + # x-etsi-mec-origin-type': SecurityInfo + # x-etsi-mec-cardinality': '1' + implSpecificInfo: + description: Additional implementation specific details of the transport. + x-etsi-mec-origin-type: Not_specified + x-etsi-mec-cardinality: 0..1 + type: object + required: + - id + - name + - type + - protocol + - version + - endpoint + - security + ServiceLivenessInfo: + x-etsi-ref: 8.1.2.4 + type: object + properties: + state: + # description': Liveness state of the MEC service instance. The valid values are defined in clause 8.1.6.6. + $ref: '#/components/schemas/ServiceState' + # x-etsi-mec-origin-type': ServiceState + # x-etsi-mec-cardinality': '1' + timeStamp: + $ref: '#/components/schemas/TimeStamp' + interval: + description: The interval (in seconds) between two consecutive "heartbeat" messages (see clause 8.2.10.3.3) that MEC platform has determined. + x-etsi-mec-origin-type: Integer + x-etsi-mec-cardinality: '1' + type: integer + required: + - state + - timeStamp + - interval + ServiceLivenessUpdate: + x-etsi-ref: 8.1.2.5 + type: object + properties: + state: + # description': Update to the state of the MEC service instance to indicate that the service is still alive ("heartbeat" message). Shall be set to "ACTIVE". + $ref: '#/components/schemas/ServiceState' + # x-etsi-mec-origin-type': ServiceState + # x-etsi-mec-cardinality': '1' + required: + - state + SerAvailabilityNotificationSubscription: + x-etsi-ref: 8.1.3.2 + type: object + properties: + subscriptionType: + description: Shall be set to "SerAvailabilityNotificationSubscription". + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + callbackReference: + description: URI selected by the MEC application instance to receive notifications on the subscribed MEC service availability information. This shall be included in both the request and the response. + x-etsi-mec-origin-type: Uri + x-etsi-mec-cardinality: '1' + type: string + format: uri + _links: + $ref: '#/components/schemas/_links2' + filteringCriteria: + $ref: '#/components/schemas/FilteringCriteria' + required: + - subscriptionType + - callbackReference + x-etsi-notes: "NOTE:\tThe attributes \"serInstanceIds\", \"serNames\" and \"serCategories\" provide mutually-exclusive alternatives to define a set of services. Only one of them may be present." + ServiceAvailabilityNotification: + x-etsi-ref: 8.1.4.2 + type: object + properties: + notificationType: + description: Shall be set to "SerAvailabilityNotification". + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + serviceReferences: + type: array + items: + $ref: '#/components/schemas/ServiceReferences' + _links: + $ref: '#/components/schemas/_links3' + required: + - notificationType + - serviceReferences + - _links + CategoryRef: + x-etsi-ref: 8.1.5.2 + type: object + properties: + href: + description: Reference of the catalogue. + x-etsi-mec-origin-type: Uri + x-etsi-mec-cardinality: '1' + type: string + format: uri + id: + description: Unique identifier of the category. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + name: + description: Name of the category. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + version: + description: Category version. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + required: + - href + - id + - name + - version + EndPointInfo: + x-etsi-ref: 8.1.5.3 + type: object + properties: + uris: + description: Entry point information of the service as string, formatted according to URI syntax (see IETF RFC 3986 [8]). Shall be used for REST APIs. See note. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + type: string + fqdn: + description: Fully Qualified Domain Name of the service. See note. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + type: string + addresses: + type: array + items: + $ref: '#/components/schemas/Addresses' + alternative: + description: "Entry point information of the service in a format defined by an implementation, or in an external specification. See\_note." + x-etsi-mec-origin-type: Not_specified + x-etsi-mec-cardinality: 0..1 + type: object + x-etsi-notes: "NOTE:\tExactly one of \"uris\", \"fqdn\", \"addresses\" or \"alternative\" shall be present." + SecurityInfo: + x-etsi-ref: 8.1.5.4 + type: object + properties: + oAuth2Info: + $ref: '#/components/schemas/OAuth2Info' + (extensions): + description: 'Extensions for alternative transport mechanisms. These extensions depend on the actual transport, and are out of scope of the present document. + + For instance, such extensions may be used to signal the necessary parameters for the client to use TLSbased authorization defined for alternative transports (see ETSI GS MEC 009 [5] for more information).' + x-etsi-mec-origin-type: Not_specified + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + $ref: '#/components/schemas/Not_specified' + Subscriptions: + description: The MEC application instance's subscriptions. + x-etsi-mec-origin-type: Structure (inlined + x-etsi-mec-cardinality: 0..N + type: object + minItems: 0 + properties: + href: + description: URI referring to the subscription. + x-etsi-mec-origin-type: Uri + x-etsi-mec-cardinality: '1' + type: string + format: uri + subscriptionType: + description: Type of the subscription. The values are as defined in the "subscriptionType" attribute for each different Mp1 event subscription data type. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + required: + - href + - subscriptionType + _links: + description: Object containing hyperlinks related to the resource. + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: '1' + type: object + properties: + self: + # description': Self-referring URI. + $ref: '#/components/schemas/LinkType' + # x-etsi-mec-origin-type': LinkType + # x-etsi-mec-cardinality': '1' + subscriptions: + type: array + items: + $ref: '#/components/schemas/Subscriptions' + required: + - self + _links1: + description: Links to resources related to this resource. Shall be absent in HTTP requests. + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: '1' + type: object + properties: + self: + # description': Link to this resource. Shall be present in HTTP responses. + $ref: '#/components/schemas/LinkType' + # x-etsi-mec-origin-type': LinkType + # x-etsi-mec-cardinality': '1' + liveness: + # description': Link to the "Individual mecServiceLiveness" resource where the MEC platform expects the service instance to send the liveness information. The structure of the URI of that resource is outside the scope of the present document. Shall be present in HTTP responses if the MEC platform requires "heartbeat" messages for this service instance and shall be absent otherwise. + $ref: '#/components/schemas/LinkType' + # x-etsi-mec-origin-type': LinkType + # x-etsi-mec-cardinality': 0..1 + required: + - self + TimeStamp: + description: The time when the last "heartbeat" message was received by MEC platform. + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: '1' + type: object + properties: + seconds: + description: The seconds part of the time. Time is defined as Unixtime since January 1, 1970, 00:00:00 UTC. + x-etsi-mec-origin-type: Uint32 + x-etsi-mec-cardinality: '1' + type: integer + format: uint32 + nanoSeconds: + description: The nanoseconds part of the time. Time is defined as Unix-time since January 1, 1970, 00:00:00 UTC. + x-etsi-mec-origin-type: Uint32 + x-etsi-mec-cardinality: '1' + type: integer + format: uint32 + required: + - seconds + - nanoSeconds + _links2: + description: Object containing hyperlinks related to the resource. This shall only be included in the HTTP responses. + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: 0..1 + type: object + properties: + self: + # description': Self-referring URI. + $ref: '#/components/schemas/LinkType' + # x-etsi-mec-origin-type': LinkType + # x-etsi-mec-cardinality': '1' + required: + - self + FilteringCriteria: + description: Filtering criteria to match services for which events are requested to be reported. If absent, matches all services. All child attributes are combined with the logical "AND" operation. + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: 0..1 + type: object + properties: + serInstanceIds: + description: 'Identifiers of service instances about which to report events. + + See note.' + x-etsi-mec-origin-type: SerInstanceId + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + $ref: '#/components/schemas/SerInstanceId' + serNames: + description: 'Names of services about which to report events. + + See note.' + x-etsi-mec-origin-type: SerName + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + $ref: '#/components/schemas/SerName' + serCategories: + description: 'Categories of services about which to report events. + + See note.' + x-etsi-mec-origin-type: CategoryRef + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + $ref: '#/components/schemas/CategoryRef' + states: + description: 'States of the services about which to report events. If the event is a state change, this filter represents the state after the change. ' + x-etsi-mec-origin-type: ServiceState + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + $ref: '#/components/schemas/ServiceState' + isLocal: + description: Restrict event reporting to whether the service is local to the MEC platform where the subscription is managed. + x-etsi-mec-origin-type: Boolean + x-etsi-mec-cardinality: 0..1 + type: boolean + ServiceReferences: + description: List of links to services whose availability has changed. + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: 1..N + type: object + minItems: 1 + properties: + link: + # description': Link to the resource representing the individual service. Shall be present unless "changeType"="REMOVED". + $ref: '#/components/schemas/LinkType' + # x-etsi-mec-origin-type': LinkType + # x-etsi-mec-cardinality': 0..1 + serName: + # description': Name of the service. + $ref: '#/components/schemas/SerName' + # x-etsi-mec-origin-type': SerName + # x-etsi-mec-cardinality': '1' + serInstanceId: + # description': Identifier of the service. + $ref: '#/components/schemas/SerInstanceId' + # x-etsi-mec-origin-type': SerInstanceId + # x-etsi-mec-cardinality': '1' + state: + # description': State of the service after the modification. + $ref: '#/components/schemas/ServiceState' + # x-etsi-mec-origin-type': ServiceState + # x-etsi-mec-cardinality': '1' + changeType: + type: string + description: "Type of the change. \nValid values:\nADDED:\nThe service was newly added.\nREMOVED:\nThe service was removed.\nSTATE_CHANGED:\nOnly the state of the service was changed. \nATTRIBUTES_CHANGED:\nAt least one attribute of the service other than state was changed. The change may or may not include changing the state." + enum: + - SEE_DESCRIPTION + x-etsi-mec-origin-type: Enum_inlined + x-etsi-mec-cardinality: '1' + required: + - serName + - serInstanceId + - state + - changeType + _links3: + description: Object containing hyperlinks related to the resource. + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: '1' + type: object + properties: + subscription: + # description': A link to the related subscription. + $ref: '#/components/schemas/LinkType' + # x-etsi-mec-origin-type': LinkType + # x-etsi-mec-cardinality': '1' + required: + - subscription + Addresses: + description: Entry point information of the service as one or more pairs of IP address and port. See note. + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: 0..N + type: object + minItems: 0 + properties: + host: + description: Host portion of the address. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + port: + description: Port portion of the address. + x-etsi-mec-origin-type: Int + x-etsi-mec-cardinality: '1' + type: integer + required: + - host + - port + OAuth2Info: + description: Parameters related to use of OAuth 2.0. Shall be present in case OAuth 2.0 (see IETF RFC 6749 [13]) is supported to secure the provision of the service over the transport. + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: 0..1 + type: object + properties: + grantTypes: + type: array + description: "List of supported OAuth 2.0 grant types.\nEach entry shall be one of the following permitted values:\nOAUTH2_AUTHORIZATION_CODE (Authorization code grant type)\nOAUTH2_IMPLICIT_GRANT\n\t(Implicit grant type)\nOAUTH2_RESOURCE_OWNER\n\t(Resource owner password credentials grant type)\nOAUTH2_CLIENT_CREDENTIALS\n\t(Client credentials grant type)\nOnly the value \"OAUTH2_CLIENT_CREDENTIALS\" is supported in the present document. " + maxItems: '1' + minItems: '4' + items: + enum: SEE_DESCRIPTION + type: string + x-etsi-mec-origin-type: Enum_inlined + x-etsi-mec-cardinality: 1..4 + tokenEndpoint: + description: The token endpoint. Shall be present unless the grant type is OAUTH2_IMPLICIT_GRANT. + x-etsi-mec-origin-type: Uri + x-etsi-mec-cardinality: 0..1 + type: string + format: uri + required: + - grantTypes + responses: + '200': + description: OK + '204': + description: No Content + '400': + description: 'Bad Request: used to indicate that incorrect parameters were passed to the request.' + content: + application/problem+json: + schema: + $ref: '#/components/schemas/ProblemDetails' + '401': + description: 'Unauthorized: used when the client did not submit credentials.' + content: + application/problem+json: + schema: + $ref: '#/components/schemas/ProblemDetails' + '403': + description: 'Forbidden: operation is not allowed given the current status of the resource.' + content: + application/problem+json: + schema: + $ref: '#/components/schemas/ProblemDetails' + '404': + description: 'Not Found: used when a client provided a URI that cannot be mapped to a valid resource URI.' + content: + application/problem+json: + schema: + $ref: '#/components/schemas/ProblemDetails' + '409': + description: 'Conflict: The operation cannot be executed currently, due to a conflict with the state of the resource. .' + content: + application/problem+json: + schema: + $ref: '#/components/schemas/ProblemDetails' + '412': + description: 'Precondition failed: used when a condition has failed during conditional requests, e.g. when using ETags to avoid write conflicts when using PUT' + content: + application/problem+json: + schema: + $ref: '#/components/schemas/ProblemDetails' + '414': + description: 'URI Too Long: used to indicate that the server is refusing to process the request because the request URI is longer than the server is willing or able to process.' + content: + application/problem+json: + schema: + $ref: '#/components/schemas/ProblemDetails' + '429': + description: 'Too Many Requests: used when a rate limiter has triggered.' + content: + application/problem+json: + schema: + $ref: '#/components/schemas/ProblemDetails' + parameters: + Query.Ser_instance_id: + description: 'A MEC application instance may use multiple ser_instance_ids as an input parameter to query the availability of a list of MEC service instances. ser_instance_id corresponds to serInstanceId defined in table 8.1.2.2-1. + + See note.' + name: ser_instance_id + cardinality: 0..N + in: query + required: false + x-exportParamName: Query.Ser_instance_id + schema: + type: array + items: + type: string + Query.Ser_name: + description: "A MEC application instance may use multiple ser_names as an input parameter to query the availability of a list of MEC service instances. ser_name corresponds to serName defined in table\_8.1.2.2-1.\nSee note." + name: ser_name + cardinality: 0..N + in: query + required: false + x-exportParamName: Query.Ser_name + schema: + type: array + items: + type: string + Query.Ser_category_id: + description: 'A MEC application instance may use ser_category_id as an input parameter to query the availability of a list of MEC service instances in a serCategory. ser_category_id corresponds to serCategory defined in table 8.1.2.2-1. + + See note.' + name: ser_category_id + cardinality: 0..1 + in: query + required: false + x-exportParamName: Query.Ser_category_id + schema: + type: string + Query.Scope_of_locality: + description: A MEC application instance may use scope_of_locality as an input parameter to query the availability of a list of MEC service instances with a certain scope of locality, as defined in LocalityType in table 8.1.6.5-1. scope_of_locality corresponds to scopeOfLocality defined in table 8.1.2.2-1. + name: scope_of_locality + cardinality: 0..1 + in: query + required: false + x-exportParamName: Query.Scope_of_locality + schema: + $ref: '#/components/schemas/LocalityType' + Query.Consumed_local_only: + description: A MEC application instance may use consumed_local_only as an input parameter to query the availability of a list of MEC service instances that can be consumed only locally. consumed_local_only corresponds to consumedLocalOnly defined in table 8.1.2.2-1. + name: consumed_local_only + cardinality: 0..1 + in: query + required: false + x-exportParamName: Query.Consumed_local_only + schema: + type: boolean + Query.Is_local: + description: A MEC application instance may use is_local as an input parameter to query the availability of a list of MEC service instances in the local MEC host or in local and remote MEC hosts. is_local corresponds to isLocal defined in table 8.1.2.2-1. + name: is_local + cardinality: 0..1 + in: query + required: false + x-exportParamName: Query.Is_local + schema: + type: boolean + diff --git a/Auto_Generated_OAS_Output_Files/gs_mec012v020201p.yaml b/Auto_Generated_OAS_Output_Files/gs_mec012v020201p.yaml new file mode 100644 index 0000000..1dab221 --- /dev/null +++ b/Auto_Generated_OAS_Output_Files/gs_mec012v020201p.yaml @@ -0,0 +1,3979 @@ +openapi: 3.1.0 +jsonSchemaDialect: https://json-schema.org/draft/2020-12/schema +info: + contact: + url: https://forge.etsi.org/rep/mec/gs012-rnis-api + title: ETSI GS MEC 012 Radio Network Information API + description: The ETSI MEC ISG Radio Network Information API described using OpenAPI. + license: + name: BSD-3-Clause + url: https://forge.etsi.org/legal-matters + version: 2.2.1 +paths: + /queries/rab_info: + get: + summary: Retrieve current status of Radio Access Bearer information . + description: The GET method is used to query information about the Radio Access Bearers. + operationId: rabinfoGET + tags: + - queries + parameters: + - $ref: '#/components/parameters/Query.App_ins_id' + - $ref: '#/components/parameters/Query.Cell_id' + - $ref: '#/components/parameters/Query.Ue_ipv4_address' + - $ref: '#/components/parameters/Query.Ue_ipv6_address' + - $ref: '#/components/parameters/Query.Nated_ip_address' + - $ref: '#/components/parameters/Query.Gtp_teid' + - $ref: '#/components/parameters/Query.Erab_id' + - $ref: '#/components/parameters/Query.Qci' + - $ref: '#/components/parameters/Query.Erab_mbr_dl' + - $ref: '#/components/parameters/Query.Erab_mbr_ul' + - $ref: '#/components/parameters/Query.Erab_gbr_dl' + - $ref: '#/components/parameters/Query.Erab_gbr_ul' + responses: + '200': + description: Upon success, a response body containing the Radio Access Bearer information is returned. + content: + application/json: + schema: + type: object + properties: + RabInfo: + $ref: '#/components/schemas/RabInfo' + '400': + $ref: '#/components/responses/400' + '401': + $ref: '#/components/responses/401' + '403': + $ref: '#/components/responses/403' + '404': + $ref: '#/components/responses/404' + '406': + $ref: '#/components/responses/406' + '429': + $ref: '#/components/responses/429' + /queries/plmn_info: + get: + summary: Retrieve current status of PLMN information. + description: The GET method is used to query information about the Mobile Network. + operationId: plmninfoGET + tags: + - queries + parameters: + - $ref: '#/components/parameters/Query.App_ins_id1' + responses: + '200': + description: Upon success, a response body containing the array of Mobile Network information is returned. + content: + application/json: + schema: + type: object + properties: + PlmnInfo: + type: array + items: + $ref: '#/components/schemas/PlmnInfo' + '400': + $ref: '#/components/responses/400' + '401': + $ref: '#/components/responses/401' + '403': + $ref: '#/components/responses/403' + '404': + $ref: '#/components/responses/404' + '406': + $ref: '#/components/responses/406' + '429': + $ref: '#/components/responses/429' + /queries/s1_bearer_info: + get: + summary: Retrieve current status of S1 bearer information. + description: The GET method is used to query information about the S1 bearer(s). + operationId: s1bearerinfoGET + tags: + - queries + parameters: + - $ref: '#/components/parameters/Query.Temp_ue_id' + - $ref: '#/components/parameters/Query.Ue_ipv4_address' + - $ref: '#/components/parameters/Query.Ue_ipv6_address' + - $ref: '#/components/parameters/Query.Nated_ip_address' + - $ref: '#/components/parameters/Query.Gtp_teid' + - $ref: '#/components/parameters/Query.Cell_id' + - $ref: '#/components/parameters/Query.Erab_id1' + responses: + '200': + description: Upon success, a response body containing the UE S1-U bearer information is returned. + content: + application/json: + schema: + type: object + properties: + S1BearerInfo: + $ref: '#/components/schemas/S1BearerInfo' + '400': + $ref: '#/components/responses/400' + '401': + $ref: '#/components/responses/401' + '403': + $ref: '#/components/responses/403' + '404': + $ref: '#/components/responses/404' + '406': + $ref: '#/components/responses/406' + '429': + $ref: '#/components/responses/429' + /queries/layer2_meas: + get: + summary: Retrieve current status of layer 2 measurements information. + description: The GET method is used to query information about the layer 2 measurements. + operationId: layer2measGET + tags: + - queries + parameters: + - $ref: '#/components/parameters/Query.App_ins_id' + - $ref: '#/components/parameters/Query.Cell_id1' + - $ref: '#/components/parameters/Query.Ue_ipv4_address' + - $ref: '#/components/parameters/Query.Ue_ipv6_address' + - $ref: '#/components/parameters/Query.Nated_ip_address' + - $ref: '#/components/parameters/Query.Gtp_teid' + - $ref: '#/components/parameters/Query.Dl_gbr_prb_usage_cell' + - $ref: '#/components/parameters/Query.Ul_gbr_prb_usage_cell' + - $ref: '#/components/parameters/Query.Dl_nongbr_prb_usage_cell' + - $ref: '#/components/parameters/Query.Ul_nongbr_prb_usage_cell' + - $ref: '#/components/parameters/Query.Dl_total_prb_usage_cell' + - $ref: '#/components/parameters/Query.Ul_total_prb_usage_cell' + - $ref: '#/components/parameters/Query.Received_dedicated_preambles_cell' + - $ref: '#/components/parameters/Query.Received_randomly_selecte_preambles_low_range_cell' + - $ref: '#/components/parameters/Query.Received_randomly_selected_preambles_high_range_cell' + - $ref: '#/components/parameters/Query.Number_of_active_ue_dl_gbr_cell' + - $ref: '#/components/parameters/Query.Number_of_active_ue_ul_gbr_cell' + - $ref: '#/components/parameters/Query.Number_of_active_ue_dl_nongbr_cell' + - $ref: '#/components/parameters/Query.Number_of_active_ue_ul_nongbr_cell' + - $ref: '#/components/parameters/Query.Dl_gbr_pdr_cell' + - $ref: '#/components/parameters/Query.Ul_gbr_pdr_cell' + - $ref: '#/components/parameters/Query.Dl_nongbr_pdr_cell' + - $ref: '#/components/parameters/Query.Ul_nongbr_pdr_cell' + - $ref: '#/components/parameters/Query.Dl_gbr_delay_ue' + - $ref: '#/components/parameters/Query.Ul_gbr_delay_ue' + - $ref: '#/components/parameters/Query.Dl_nongbr_delay_ue' + - $ref: '#/components/parameters/Query.Ul_nongbr_delay_ue' + - $ref: '#/components/parameters/Query.Dl_gbr_pdr_ue' + - $ref: '#/components/parameters/Query.Ul_gbr_pdr_ue' + - $ref: '#/components/parameters/Query.Dl_nongbr_pdr_ue' + - $ref: '#/components/parameters/Query.Ul_nongbr_pdr_ue' + - $ref: '#/components/parameters/Query.Dl_gbr_throughput_ue' + - $ref: '#/components/parameters/Query.Ul_gbr_throughput_ue' + - $ref: '#/components/parameters/Query.Dl_nongbr_throughput_ue' + - $ref: '#/components/parameters/Query.Ul_nongbr_throughput_ue' + - $ref: '#/components/parameters/Query.Dl_gbr_data_volume_ue' + - $ref: '#/components/parameters/Query.Ul_gbr_data_volume_ue' + - $ref: '#/components/parameters/Query.Dl_nongbr_data_volume_ue' + - $ref: '#/components/parameters/Query.Ul_nongbr_data_volume_ue' + responses: + '200': + description: Upon success, a response body containing the layer 2 measurements information is returned. + content: + application/json: + schema: + type: object + properties: + L2Meas: + $ref: '#/components/schemas/L2Meas' + '400': + $ref: '#/components/responses/400' + '401': + $ref: '#/components/responses/401' + '403': + $ref: '#/components/responses/403' + '404': + $ref: '#/components/responses/404' + '406': + $ref: '#/components/responses/406' + '414': + $ref: '#/components/responses/414' + '429': + $ref: '#/components/responses/429' + /subscriptions: + get: + summary: Retrieve a list of active subscriptions for this subscriber. + description: The GET method is used to request information about the subscriptions for this requestor. Upon success, the response contains entity body with the list of links to the subscriptions that are present for the requestor. + operationId: subscriptionsGET + tags: + - subscriptions + parameters: + - $ref: '#/components/parameters/Query.Subscription_type' + responses: + '200': + description: Upon success, a response body containing the list of links to requestor's subscriptions is returned. + content: + application/json: + schema: + type: object + properties: + SubscriptionLinkList: + $ref: '#/components/schemas/SubscriptionLinkList' + '400': + $ref: '#/components/responses/400' + '401': + $ref: '#/components/responses/401' + '403': + $ref: '#/components/responses/403' + '404': + $ref: '#/components/responses/404' + '406': + $ref: '#/components/responses/406' + '429': + $ref: '#/components/responses/429' + post: + summary: Create a new subscription. + description: The POST method is used to create a new subscription to Radio Network Information notifications. Upon success, the response contains entity body describing the created subscription. + operationId: subscriptionsPOST + tags: + - subscriptions + requestBody: + description: 'The entity body in the request contains data type of the specific RNI event subscription that is to be created, where the data type options are listed below and defined in clauses 6.3.2 through 6.3.9 and in clause 6.3.11: + + CellChangeSubscription + + RabEstSubscription + + RabModSubscription + + RabRelSubscription + + MeasRepUeSubscription + + NrMeasRepUeSubscription + + MeasTaSubscription + + CaReconfSubscription + + S1BearerSubscription.' + content: + application/json: + schema: + type: object + properties: + CellChangeSubscription: + $ref: '#/components/schemas/CellChangeSubscription' + responses: + '201': + description: 'Indicates successful resource creation, where the resource URI shall be returned in the HTTP Location header field. + + + In the returned NotificationSubscription structure, the created subscription is described using the appropriate data type from the list below and as defined in clauses 6.3.2 through 6.3.9 and in clause 6.3.11: + + CellChangeSubscription + + RabEstSubscription + + RabModSubscription + + RabRelSubscription + + MeasRepUeSubscription + + NrMeasRepUeSubscription + + MeasTaSubscription + + CaReconfSubscription + + S1BearerSubscription.' + content: + application/json: + schema: + type: object + properties: + CellChangeSubscription: + $ref: '#/components/schemas/CellChangeSubscription' + '400': + $ref: '#/components/responses/400' + '401': + $ref: '#/components/responses/401' + '403': + $ref: '#/components/responses/403' + '404': + $ref: '#/components/responses/404' + '406': + $ref: '#/components/responses/406' + '415': + $ref: '#/components/responses/415' + '422': + $ref: '#/components/responses/422' + '429': + $ref: '#/components/responses/429' + callbacks: + notification: + post: + summary: Callback POST used to send a notification + description: Subscription notification + operationId: notificationPOST + requestBody: + description: Subscription notification + required: true + content: + application/json: + schema: + type: object + properties: + subscriptionNotification: + oneOf: + - $ref: '#/components/schemas/CellChangeSubscription' + - $ref: '#/components/schemas/RabEstSubscription' + - $ref: '#/components/schemas/RabModSubscription' + - $ref: '#/components/schemas/RabRelSubscription' + - $ref: '#/components/schemas/MeasRepUeSubscription' + - $ref: '#/components/schemas/NrMeasRepUeSubscription' + - $ref: '#/components/schemas/MeasTaSubscription' + - $ref: '#/components/schemas/CaReconfSubscription' + - $ref: '#/components/schemas/S1BearerSubscription' + /subscriptions/{subscriptionId}: + get: + summary: Retrieve information on current specific subscription. + description: The GET method is used to retrieve information about this subscription. Upon success, the response contains entity body with the data type describing the subscription. + operationId: subscriptionsByIdGET + tags: + - subscriptions + responses: + '200': + description: 'Upon success, a response body containing data type describing the specific RNI event subscription is returned. The allowed data types for subscriptions are defined in clauses 6.3.2 through 6.3.9 and in clause 6.3.11 and are as follows: + + CellChangeSubscription + + RabEstSubscription + + RabModSubscription + + RabRelSubscription + + MeasRepUeSubscription + + NrMeasRepUeSubscription + + MeasTaSubscription + + CaReconfSubscription + + S1BearerSubscription.' + content: + application/json: + schema: + type: object + properties: + CellChangeSubscription: + $ref: '#/components/schemas/CellChangeSubscription' + '400': + $ref: '#/components/responses/400' + '401': + $ref: '#/components/responses/401' + '403': + $ref: '#/components/responses/403' + '404': + $ref: '#/components/responses/404' + '406': + $ref: '#/components/responses/406' + '429': + $ref: '#/components/responses/429' + put: + summary: Modify existing subscription by sending a new data structure. + description: 'The PUT method is used to update the existing subscription. PUT method in this case has "replace" semantics. Upon successful operation, the target resource is updated with new Data Type received within the message body of the PUT request. ' + operationId: subscriptionsByIdPUT + tags: + - subscriptions + requestBody: + description: 'New NotificationSubscription is included as entity body of the request. The allowed data types for subscriptions are defined in clauses 6.3.2 through 6.3.9 and in clause 6.3.11 and are as follows: + + CellChangeSubscription + + RabEstSubscription + + RabModSubscription + + RabRelSubscription + + MeasRepUeSubscription + + NrMeasRepUeSubscription + + MeasTaSubscription + + CaReconfSubscription + + S1BearerSubscription.' + content: + application/json: + schema: + type: object + properties: + CellChangeSubscription: + $ref: '#/components/schemas/CellChangeSubscription' + responses: + '200': + description: 'Upon success, a response body containing data type describing the updated subscription is returned. The allowed data types for subscriptions are defined in clauses 6.3.2 through 6.3.9 and in clause 6.3.11 and are as follows: + + CellChangeSubscription + + RabEstSubscription + + RabModSubscription + + RabRelSubscription + + MeasRepUeSubscription + + NrMeasRepUeSubscription + + MeasTaSubscription + + CaReconfSubscription + + S1BearerSubscription.' + content: + application/json: + schema: + type: object + properties: + CellChangeSubscription: + $ref: '#/components/schemas/CellChangeSubscription' + '400': + $ref: '#/components/responses/400' + '401': + $ref: '#/components/responses/401' + '403': + $ref: '#/components/responses/403' + '404': + $ref: '#/components/responses/404' + '406': + $ref: '#/components/responses/406' + '412': + $ref: '#/components/responses/412' + '422': + $ref: '#/components/responses/422' + '429': + $ref: '#/components/responses/429' + delete: + summary: Cancel the existing subscription. + description: The DELETE method is used to cancel the existing subscription. Cancellation can be made by deleting the resource that represents existing subscription. + operationId: subscriptionsByIdDELETE + tags: + - subscriptions + responses: + '204': + $ref: '#/components/responses/204' + '401': + $ref: '#/components/responses/401' + '403': + $ref: '#/components/responses/403' + '404': + $ref: '#/components/responses/404' + '429': + $ref: '#/components/responses/429' +components: + schemas: + ProblemDetails: + type: object + properties: + type: + type: string + format: uri + description: A URI reference according to IETF RFC 3986 that identifies the problem type + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: URI + title: + type: string + description: A short, human-readable summary of the problem type + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: String + status: + type: integer + format: uint32 + description: The HTTP status code for this occurrence of the problem + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: Uint32 + detail: + type: string + description: A human-readable explanation specific to this occurrence of the problem + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: String + instance: + type: string + format: uri + description: A URI reference that identifies the specific occurrence of the problem + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: URI + Enum: + type: integer + CellId: + type: string + description: String representing the E-UTRAN Cell Identity. Encoded as a bit string (size (28)) as defined in ETSI TS 136 413 [i.3]. + NrCellId: + type: string + description: String representing the NR Cell Identity. Encoded as a bit string (size (36)) as defined in ETSI TS 138 423 [i.17]. + Trigger: + description: As defined in Ref ETSI TS 136 331 [i.7]

0 = NOT_AVAILABLE

1 = PERIODICAL_REPORT_STRONGEST_CELLS

2 = PERIODICAL_REPORT_STRONGEST_CELLS_FOR_SON

3 = PERIODICAL_REPORT_CGI

4 = INTRA_PERIODICAL_REPORT_STRONGEST_CELLS

5 = INTRA_PERIODICAL_REPORT_CGI

10 = EVENT_A1

11 = EVENT_A2

12 = EVENT_A3

13 = EVENT_A4

14 = EVENT_A5

15 = EVENT_A6

20 = EVENT_B1

21 = EVENT_B2

20 = EVENT_B1-NR

21 = EVENT_B2-NR

30 = EVENT_C1

31 = EVENT_C2

40 = EVENT_W1

41 = EVENT_W2

42 = EVENT_W3

50 = EVENT_V1

51 = EVENT_V2

60 = EVENT_H1

61 = EVENT_H2 + enum: + - 0 + - 1 + - 2 + - 3 + - 4 + - 5 + - 10 + - 11 + - 12 + - 13 + - 14 + - 15 + - 20 + - 21 + - 30 + - 31 + - 40 + - 41 + - 42 + - 50 + - 51 + - 60 + - 61 + type: integer + TriggerNr: + description: The enumeration Trigger represents specified triggers for a 5G UE Measurement Report. Full details can be found in ETSI TS 138 331 [i.13]).

0 = NOT_AVAILABLE

1 = NR_PERIODICAL

2 = NR_CGI

10 = EVENT_A1

11 = EVENT_A2

12 = EVENT_A3

13 = EVENT_A4

14 = EVENT_A5

15 = EVENT_A6

20 = INTER_RAT_PERIODICAL

21 = INTER_RAT_CGI

30 = EVENT_B1

31 = EVENT_B2 + enum: + - 0 + - 1 + - 2 + - 10 + - 11 + - 12 + - 13 + - 14 + - 15 + - 20 + - 21 + - 30 + - 31 + type: integer + AssociateId1_: + properties: + type: + description: 'Numeric value (0-255) corresponding to specified type of identifier as following:

0 = reserved.

1 = UE_IPv4_ADDRESS.

2 = UE_IPV6_ADDRESS.

3 = NATED_IP_ADDRESS.

4 = GTP_TEID.' + enum: + - 0 + - 1 + - 2 + - 3 + - 4 + type: integer + x-etsi-mec-cardinality: '1' + x-etsi-mec-origin-type: Enum + value: + description: Value for the identifier. + type: string + x-etsi-mec-cardinality: '1' + x-etsi-mec-origin-type: String + NRcgi: + type: object + properties: + plmn: + $ref: '#/components/schemas/Plmn' + nrCellId: + $ref: '#/components/schemas/NrCellId' + required: + - plmn + - nrCellId + description: New Radio Cell Global Identifier. + L2Meas1_: + properties: + cellInfo: + description: The per cell measurement information as defined below. + items: + type: object + properties: + dl_gbr_prb_usage_cell: + description: It indicates the PRB usage for downlink GBR traffic, as defined in ETSI TS 136 314 [i.11] and ETSI TS 136 423 [i.12]. + type: integer + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: Integer (0..100) + dl_nongbr_prb_usage_cell: + description: "It indicates (in percentage) the PRB usage for downlink non-GBR traffic, as defined in ETSI TS\_136\_314 [i.11] and ETSI TS\_136 423 [i.12]." + type: integer + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: Integer (0..100) + dl_total_prb_usage_cell: + description: "It indicates (in percentage) the PRB usage for total downlink traffic, as defined in ETSI TS\_136\_314 [i.11] and ETSI TS\_136 423 [i.12]." + type: integer + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: Integer (0..100) + ecgi: + $ref: '#/components/schemas/Ecgi' + ul_gbr_prb_usage_cell: + description: "It indicates (in percentage) the PRB usage for uplink GBR traffic, as defined in ETSI TS\_136\_314\_[i.11] and ETSI TS\_136 423 [i.12]." + type: integer + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: Integer (0..100) + ul_nongbr_prb_usage_cell: + description: "It indicates (in percentage) the PRB usage for uplink non-GBR traffic, as defined in ETSI TS\_136\_314 [i.11] and ETSI TS\_136 423 [i.12]." + type: integer + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: Integer (0..100) + ul_total_prb_usage_cell: + description: "It indicates (in percentage) the PRB usage for total uplink traffic, as defined in ETSI TS\_136\_314\_[i.11] and ETSI TS\_136\_423 [i.12]." + type: integer + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: Integer (0..100) + received_dedicated_preambles_cell: + description: It indicates (in percentage) the received dedicated preamples, as defined in ETSI TS 136 314 [i.11]. + type: integer + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: Integer (0..100) + received_randomly_selected_preambles_high_range_cell: + description: It indicates (in percentage) the received randomly selected preambles in the high range, as defined in ETSI TS 136 314 [i.11]. + type: integer + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: Integer (0..100) + received_randomly_selected_preambles_low_range_cell: + description: It indicates (in percentage) the received randomly selected preambles in the low range, as defined in ETSI TS 136 314 [i.11]. + type: integer + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: Integer (0..100) + number_of_active_ue_dl_gbr_cell: + description: It indicates the number of active UEs with downlink GBR traffic, as defined in ETSI TS 136 314 [i.11]. + type: integer + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: Integer + number_of_active_ue_dl_nongbr_cell: + description: "It indicates the number of active UEs with downlink non-GBR traffic, as defined in ETSI TS\_136\_314 [i.11]." + type: integer + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: Integer + number_of_active_ue_ul_gbr_cell: + description: It indicates the number of active UEs with uplink GBR traffic, as defined in ETSI TS 136 314 [i.11]. + type: integer + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: Integer + number_of_active_ue_ul_nongbr_cell: + description: "It indicates the number of active UEs with uplink non-GBR traffic, as defined in ETSI TS\_136\_314\_[i.11]." + type: integer + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: Integer + dl_gbr_pdr_cell: + description: It indicates the packet discard rate in percentage of the downlink GBR traffic in a cell, as defined in ETSI TS 136 314 [i.11]. + type: integer + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: Integer (0..100) + dl_nongbr_pdr_cell: + description: It indicates the packet discard rate in percentage of the downlink non-GBR traffic in a cell, as defined in ETSI TS 136 314 [i.11]. + type: integer + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: Integer (0..100) + ul_gbr_pdr_cell: + description: It indicates the packet discard rate in percentage of the uplink GBR traffic in a cell, as defined in ETSI TS 136 314 [i.11]. + type: integer + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: Integer (0..100) + ul_nongbr_pdr_cell: + description: It indicates the packet discard rate in percentage of the uplink non-GBR traffic in a cell, as defined in ETSI TS 136 314 [i.11]. + type: integer + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: Integer (0..100) + required: + - ecgi + minItems: 0 + type: array + x-etsi-mec-cardinality: 0..N + x-etsi-mec-origin-type: Structure (inlined) + cellUEInfo: + description: The per cell per UE layer 2 measurements information as defined below. + items: + type: object + properties: + associateId: + $ref: '#/components/schemas/AssociateId' + dl_gbr_delay_ue: + description: It indicates the packet delay of the downlink GBR traffic of a UE, as defined in ETSI TS 136 314 [i.11]. + type: integer + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: Integer + dl_nongbr_delay_ue: + description: "It indicates the packet delay of the downlink non-GBR traffic of a UE, as defined in ETSI TS\_136\_314\_[i.11]." + type: integer + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: Integer + ecgi: + $ref: '#/components/schemas/Ecgi' + ul_gbr_delay_ue: + description: It indicates the packet delay of the uplink GBR traffic of a UE, as defined in ETSI TS 136 314 [i.11]. + type: integer + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: Integer + ul_nongbr_delay_ue: + description: It indicates the packet delay of the uplink non-GBR traffic of a UE, as defined in ETSI TS 136 314 [i.11]. + type: integer + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: Integer + dl_gbr_data_volume_ue: + description: It indicates the data volume of the downlink GBR traffic of a UE, as defined in ETSI TS 136 314 [i.11]. + type: integer + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: Integer + dl_gbr_pdr_ue: + description: It indicates the packet discard rate in percentage of the downlink GBR traffic of a UE, as defined in ETSI TS 136 314 [i.11]. + type: integer + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: Integer (0..100) + dl_gbr_throughput_ue: + description: It indicates the scheduled throughput of the downlink GBR traffic of a UE, as defined in ETSI TS 136 314 [i.11]. + type: integer + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: Integer + dl_nongbr_data_volume_ue: + description: "It indicates the data volume of the downlink non-GBR traffic of a UE, as defined in ETSI TS\_136\_314\_[i.11]." + type: integer + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: Integer + dl_nongbr_pdr_ue: + description: It indicates the packet discard rate in percentage of the downlink nonGBR traffic of a UE, as defined in ETSI TS 136 314 [i.11]. + type: integer + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: Integer (0..100) + dl_nongbr_throughput_ue: + description: It indicates the scheduled throughput of the downlink nonGBR traffic of a UE, as defined in ETSI TS 136 314 [i.11]. + type: integer + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: Integer + ul_gbr_data_volume_ue: + description: It indicates the data volume of the uplink GBR traffic of a UE, as defined in ETSI TS 136 314 [i.11]. + type: integer + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: Integer + ul_gbr_pdr_ue: + description: It indicates the packet discard rate in percentage of the uplink GBR traffic of a UE, as defined in ETSI TS 136 314 [i.11]. + type: integer + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: Integer (0..100) + ul_gbr_throughput_ue: + description: It indicates the scheduled throughput of the uplink GBR traffic of a UE, as defined in ETSI TS 136 314 [i.11]. + type: integer + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: Integer + ul_nongbr_data_volume_ue: + description: It indicates the data volume of the uplink non-GBR traffic of a UE, as defined in ETSI TS 136 314 [i.11]. + type: integer + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: Integer + ul_nongbr_pdr_ue: + description: It indicates the packet discard rate in percentage of the uplink nonGBR traffic of a UE, as defined in ETSI TS 136 314 [i.11]. + type: integer + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: Integer (0..100) + ul_nongbr_throughput_ue: + description: It indicates the scheduled throughput of the uplink non-GBR traffic of a UE, as defined in ETSI TS 136 314 [i.11]. + type: integer + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: Integer + required: + - ecgi + - associateId + minItems: 0 + type: array + x-etsi-mec-cardinality: 0..N + x-etsi-mec-origin-type: Structure (inlined) + timeStamp: + $ref: '#/components/schemas/TimeStamp' + type: object + x-etsi-ref: 6.2.4a + InlineSubscription: + oneOf: + - $ref: '#/components/schemas/CellChangeSubscription' + - $ref: '#/components/schemas/RabEstSubscription' + - $ref: '#/components/schemas/RabModSubscription' + - $ref: '#/components/schemas/RabRelSubscription' + - $ref: '#/components/schemas/MeasRepUeSubscription' + - $ref: '#/components/schemas/NrMeasRepUeSubscription' + - $ref: '#/components/schemas/MeasTaSubscription' + - $ref: '#/components/schemas/CaReconfSubscription' + - $ref: '#/components/schemas/S1BearerSubscription' + discriminator: + propertyName: subscriptionType + InlineNotification: + oneOf: + - $ref: '#/components/schemas/CellChangeNotification' + - $ref: '#/components/schemas/RabEstNotification' + - $ref: '#/components/schemas/RabModNotification' + - $ref: '#/components/schemas/RabRelNotification' + - $ref: '#/components/schemas/MeasRepUeNotification' + - $ref: '#/components/schemas/NrMeasRepUeNotification' + - $ref: '#/components/schemas/MeasTaNotification' + - $ref: '#/components/schemas/CaReconfNotification' + - $ref: '#/components/schemas/S1BearerNotification' + discriminator: + propertyName: notificationType + PlmnInfo: + x-etsi-ref: 6.2.2 + type: object + properties: + timeStamp: + # description': Time stamp. + $ref: '#/components/schemas/TimeStamp' + # x-etsi-mec-origin-type': TimeStamp + # x-etsi-mec-cardinality': 0..1 + appInstanceId: + description: Unique identifier for the MEC application instance. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + plmn: + description: Public Land Mobile Network Identity. + x-etsi-mec-origin-type: Plmn + x-etsi-mec-cardinality: 1..N + type: array + minItems: 1 + items: + $ref: '#/components/schemas/Plmn' + required: + - appInstanceId + - plmn + RabInfo: + x-etsi-ref: 6.2.3 + type: object + properties: + timeStamp: + # description': Time stamp. + $ref: '#/components/schemas/TimeStamp' + # x-etsi-mec-origin-type': TimeStamp + # x-etsi-mec-cardinality': 0..1 + appInstanceId: + description: Unique identifier for the MEC application instance. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + requestId: + description: Unique identifier allocated by the service consumer for the RAB Information request. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + cellUserInfo: + type: array + items: + $ref: '#/components/schemas/CellUserInfo' + required: + - appInstanceId + - requestId + S1BearerInfo: + description: S1 bearer information as defined below. + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: 1..N + type: object + minItems: 1 + properties: + erabId: + description: The attribute that uniquely identifies a S1 bearer for a specific UE, as defined in ETSI TS 136 413 [i.3]. + x-etsi-mec-origin-type: Integer + x-etsi-mec-cardinality: '1' + type: integer + enbInfo: + $ref: '#/components/schemas/EnbInfo' + sGwInfo: + $ref: '#/components/schemas/SGwInfo' + required: + - erabId + - enbInfo + - sGwInfo + L2Meas: + x-etsi-ref: 6.2.4a + type: object + properties: + timeStamp: + # description': Time stamp. + $ref: '#/components/schemas/TimeStamp' + # x-etsi-mec-origin-type': TimeStamp + # x-etsi-mec-cardinality': 0..1 + cellInfo: + type: array + items: + $ref: '#/components/schemas/CellInfo' + cellUEInfo: + type: array + items: + $ref: '#/components/schemas/CellUEInfo' + CellChangeSubscription: + x-etsi-ref: 6.3.2 + type: object + properties: + subscriptionType: + description: Shall be set to "CellChangeSubscription". + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + callbackReference: + description: URI exposed by the client on which to receive notifications via HTTP. See note. + x-etsi-mec-origin-type: Uri + x-etsi-mec-cardinality: 0..1 + type: string + format: uri + requestTestNotification: + description: 'Shall be set to TRUE by the service consumer to request a test notification via HTTP on the callbackReference URI, specified in ETSI GS MEC 009 [6], as described in clause 6.12a. ' + x-etsi-mec-origin-type: Boolean + x-etsi-mec-cardinality: 0..1 + type: boolean + websockNotifConfig: + # description': Provides details to negotiate and signal the use of a Websocket connection between RNIS and the service consumer for notifications. See note. + $ref: '#/components/schemas/WebsockNotifConfig' + # x-etsi-mec-origin-type': WebsockNotifConfig + # x-etsi-mec-cardinality': 0..1 + _links: + $ref: '#/components/schemas/_links' + filterCriteriaAssocHo: + $ref: '#/components/schemas/FilterCriteriaAssocHo' + expiryDeadline: + # description': Time stamp. + $ref: '#/components/schemas/TimeStamp' + # x-etsi-mec-origin-type': TimeStamp + # x-etsi-mec-cardinality': 0..1 + required: + - subscriptionType + - filterCriteriaAssocHo + x-etsi-notes: "NOTE:\tAt least one of callbackReference and websockNotifConfig shall be provided by the service consumer. If both are provided, it is up to RNIS to choose an alternative and return only that alternative in the response, specified in ETSI GS MEC 009 [6], as described in clause 6.12a." + RabEstSubscription: + x-etsi-ref: 6.3.3 + type: object + properties: + subscriptionType: + description: Shall be set to "RabEstSubscription". + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + callbackReference: + description: URI exposed by the client on which to receive notifications via HTTP. See note. + x-etsi-mec-origin-type: Uri + x-etsi-mec-cardinality: 0..1 + type: string + format: uri + requestTestNotification: + description: "Shall be set to TRUE by the service consumer to request a test notification via HTTP on the callbackReference URI, specified in ETSI GS MEC 009 [6], as described in clause\_6.12a. " + x-etsi-mec-origin-type: Boolean + x-etsi-mec-cardinality: 0..1 + type: boolean + websockNotifConfig: + # description': Provides details to negotiate and signal the use of a Websocket connection between RNIS and the service consumer for notifications. See note. + $ref: '#/components/schemas/WebsockNotifConfig' + # x-etsi-mec-origin-type': WebsockNotifConfig + # x-etsi-mec-cardinality': 0..1 + _links: + $ref: '#/components/schemas/_links' + filterCriteriaQci: + $ref: '#/components/schemas/FilterCriteriaQci' + expiryDeadline: + # description': Time stamp. + $ref: '#/components/schemas/TimeStamp' + # x-etsi-mec-origin-type': TimeStamp + # x-etsi-mec-cardinality': 0..1 + required: + - subscriptionType + - filterCriteriaQci + x-etsi-notes: "NOTE:\tAt least one of callbackReference and websockNotifConfig shall be provided by the service consumer. If both are provided, it is up to RNIS to choose an alternative and return only that alternative in the response, specified in ETSI GS MEC 009 [6], as described in clause 6.12a." + RabModSubscription: + x-etsi-ref: 6.3.4 + type: object + properties: + subscriptionType: + description: Shall be set to "RabModSubscription". + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + callbackReference: + description: URI exposed by the client on which to receive notifications via HTTP. See note. + x-etsi-mec-origin-type: Uri + x-etsi-mec-cardinality: 0..1 + type: string + format: uri + requestTestNotification: + description: "Shall be set to TRUE by the service consumer to request a test notification via HTTP on the callbackReference URI, specified in ETSI GS MEC 009 [6], as described in clause\_6.12a. " + x-etsi-mec-origin-type: Boolean + x-etsi-mec-cardinality: 0..1 + type: boolean + websockNotifConfig: + # description': Provides details to negotiate and signal the use of a Websocket connection between RNIS and the service consumer for notifications. See note. + $ref: '#/components/schemas/WebsockNotifConfig' + # x-etsi-mec-origin-type': WebsockNotifConfig + # x-etsi-mec-cardinality': 0..1 + _links: + $ref: '#/components/schemas/_links' + filterCriteriaQci: + $ref: '#/components/schemas/FilterCriteriaQci1' + expiryDeadline: + # description': Time stamp. + $ref: '#/components/schemas/TimeStamp' + # x-etsi-mec-origin-type': TimeStamp + # x-etsi-mec-cardinality': 0..1 + required: + - subscriptionType + - filterCriteriaQci + x-etsi-notes: "NOTE:\tAt least one of callbackReference and websockNotifConfig shall be provided by the service consumer. If both are provided, it is up to RNIS to choose an alternative and return only that alternative in the response, specified in ETSI GS MEC 009 [6], as described in clause 6.12a." + RabRelSubscription: + x-etsi-ref: 6.3.5 + type: object + properties: + subscriptionType: + description: Shall be set to "RabRelSubscription". + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + callbackReference: + description: URI selected by the service consumer to receive notifications on the subscribed RNIS information. This shall be included both in the request and in response. If not present, the service consumer is requesting the use of a Websocket for notifications. See note. + x-etsi-mec-origin-type: Uri + x-etsi-mec-cardinality: 0..1 + type: string + format: uri + requestTestNotification: + description: 'Set to TRUE by the service consumer to request a test notification on the callbackReference URI to determine if it is reachable by RNIS for notifications. ' + x-etsi-mec-origin-type: Boolean + x-etsi-mec-cardinality: 0..1 + type: boolean + websockNotifConfig: + # description': Provides details to negotiate and signal the use of a Websocket connection between RNIS and the service consumer for notifications, either in place of the callbackReference URI or if it is not reachable via the test notification. + $ref: '#/components/schemas/WebsockNotifConfig' + # x-etsi-mec-origin-type': WebsockNotifConfig + # x-etsi-mec-cardinality': 0..1 + _links: + $ref: '#/components/schemas/_links' + filterCriteriaQci: + $ref: '#/components/schemas/FilterCriteriaQci1' + expiryDeadline: + # description': Time stamp. + $ref: '#/components/schemas/TimeStamp' + # x-etsi-mec-origin-type': TimeStamp + # x-etsi-mec-cardinality': 0..1 + required: + - subscriptionType + - filterCriteriaQci + x-etsi-notes: "NOTE:\tAt least one of callbackReference and websockNotifConfig shall be provided by the service consumer. If both are provided, it is up to RNIS to select the method to be used for notifications and to return only that method in the response." + MeasRepUeSubscription: + x-etsi-ref: 6.3.6 + type: object + properties: + subscriptionType: + description: Shall be set to "MeasRepUeSubscription". + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + callbackReference: + description: URI selected by the service consumer to receive notifications on the subscribed RNIS information. This shall be included both in the request and in response. If not present, the service consumer is requesting the use of a Websocket for notifications. See note. + x-etsi-mec-origin-type: Uri + x-etsi-mec-cardinality: 0..1 + type: string + format: uri + requestTestNotification: + description: 'Set to TRUE by the service consumer to request a test notification on the callbackReference URI to determine if it is reachable by RNIS for notifications. ' + x-etsi-mec-origin-type: Boolean + x-etsi-mec-cardinality: 0..1 + type: boolean + websockNotifConfig: + # description': Provides details to negotiate and signal the use of a Websocket connection between RNIS and the service consumer for notifications, either in place of the callbackReference URI or if it is not reachable via the test notification. + $ref: '#/components/schemas/WebsockNotifConfig' + # x-etsi-mec-origin-type': WebsockNotifConfig + # x-etsi-mec-cardinality': 0..1 + _links: + $ref: '#/components/schemas/_links' + filterCriteriaAssocTri: + $ref: '#/components/schemas/FilterCriteriaAssocTri' + expiryDeadline: + # description': Time stamp. + $ref: '#/components/schemas/TimeStamp' + # x-etsi-mec-origin-type': TimeStamp + # x-etsi-mec-cardinality': 0..1 + required: + - subscriptionType + - filterCriteriaAssocTri + x-etsi-notes: "NOTE:\tAt least one of callbackReference and websockNotifConfig shall be provided by the service consumer. If both are provided, it is up to RNIS to select the method to be used for notifications and to return only that method in the response." + MeasTaSubscription: + x-etsi-ref: 6.3.7 + type: object + properties: + subscriptionType: + description: Shall be set to "MeasTaSubscription". + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + callbackReference: + description: URI exposed by the client on which to receive notifications via HTTP. See note. + x-etsi-mec-origin-type: Uri + x-etsi-mec-cardinality: 0..1 + type: string + format: uri + requestTestNotification: + description: 'Shall be set to TRUE by the service consumer to request a test notification via HTTP on the callbackReference URI, specified in ETSI GS MEC 009 [6], as described in clause 6.12a. ' + x-etsi-mec-origin-type: Boolean + x-etsi-mec-cardinality: 0..1 + type: boolean + websockNotifConfig: + # description': Provides details to negotiate and signal the use of a Websocket connection between RNIS and the service consumer for notifications. See note. + $ref: '#/components/schemas/WebsockNotifConfig' + # x-etsi-mec-origin-type': WebsockNotifConfig + # x-etsi-mec-cardinality': 0..1 + _links: + $ref: '#/components/schemas/_links' + filterCriteriaAssoc: + $ref: '#/components/schemas/FilterCriteriaAssoc' + expiryDeadline: + # description': Time stamp. + $ref: '#/components/schemas/TimeStamp' + # x-etsi-mec-origin-type': TimeStamp + # x-etsi-mec-cardinality': 0..1 + required: + - subscriptionType + - filterCriteriaAssoc + x-etsi-notes: "NOTE:\tAt least one of callbackReference and websockNotifConfig shall be provided by the service consumer. If both are provided, it is up to RNIS to choose an alternative and return only that alternative in the response, specified in ETSI GS MEC 009 [6], as described in clause 6.12a." + CaReconfSubscription: + x-etsi-ref: 6.3.8 + type: object + properties: + subscriptionType: + description: Shall be set to "CaReconfSubscription". + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + callbackReference: + description: URI exposed by the client on which to receive notifications via HTTP. See note. + x-etsi-mec-origin-type: Uri + x-etsi-mec-cardinality: 0..1 + type: string + format: uri + requestTestNotification: + description: 'Shall be set to TRUE by the service consumer to request a test notification via HTTP on the callbackReference URI, specified in ETSI GS MEC 009 [6], as described in clause 6.12a. ' + x-etsi-mec-origin-type: Boolean + x-etsi-mec-cardinality: 0..1 + type: boolean + websockNotifConfig: + # description': Provides details to negotiate and signal the use of a Websocket connection between RNIS and the service consumer for notifications. See note. + $ref: '#/components/schemas/WebsockNotifConfig' + # x-etsi-mec-origin-type': WebsockNotifConfig + # x-etsi-mec-cardinality': 0..1 + _links: + $ref: '#/components/schemas/_links' + filterCriteriaAssoc: + $ref: '#/components/schemas/FilterCriteriaAssoc' + expiryDeadline: + # description': Time stamp. + $ref: '#/components/schemas/TimeStamp' + # x-etsi-mec-origin-type': TimeStamp + # x-etsi-mec-cardinality': 0..1 + required: + - subscriptionType + - filterCriteriaAssoc + x-etsi-notes: "NOTE:\tAt least one of callbackReference and websockNotifConfig shall be provided by the service consumer. If both are provided, it is up to RNIS to choose an alternative and return only that alternative in the response, specified in ETSI GS MEC 009 [6], as described in clause 6.12a." + S1BearerSubscription: + x-etsi-ref: 6.3.9 + type: object + properties: + subscriptionType: + description: Shall be set to "S1BearerSubscription". + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + callbackReference: + description: URI exposed by the client on which to receive notifications via HTTP. See note. + x-etsi-mec-origin-type: Uri + x-etsi-mec-cardinality: 0..1 + type: string + format: uri + requestTestNotification: + description: "Shall be set to TRUE by the service consumer to request a test notification via HTTP on the callbackReference URI, specified in ETSI GS MEC 009 [6], as described in clause\_6.12a. " + x-etsi-mec-origin-type: Boolean + x-etsi-mec-cardinality: 0..1 + type: boolean + websockNotifConfig: + # description': Provides details to negotiate and signal the use of a Websocket connection between RNIS and the service consumer for notifications. See note. + $ref: '#/components/schemas/WebsockNotifConfig' + # x-etsi-mec-origin-type': WebsockNotifConfig + # x-etsi-mec-cardinality': 0..1 + _links: + $ref: '#/components/schemas/_links' + eventType: + description: "Description of the subscribed event. The event is included both in the request and in the response. \nFor the eventType, the following values are currently defined:\n0 = RESERVED.\n1 = S1_BEARER_ESTABLISH.\n2 = S1_BEARER_MODIFY.\n3 = S1_BEARER_RELEASE." + x-etsi-mec-origin-type: Enum + x-etsi-mec-cardinality: 1..N + type: array + minItems: 1 + items: + type: integer + S1BearerSubscriptionCriteria: + $ref: '#/components/schemas/S1BearerSubscriptionCriteria' + expiryDeadline: + # description': Time stamp. + $ref: '#/components/schemas/TimeStamp' + # x-etsi-mec-origin-type': TimeStamp + # x-etsi-mec-cardinality': 0..1 + required: + - subscriptionType + - eventType + - S1BearerSubscriptionCriteria + x-etsi-notes: "NOTE:\tAt least one of callbackReference and websockNotifConfig shall be provided by the service consumer. If both are provided, it is up to RNIS to choose an alternative and return only that alternative in the response, specified in ETSI GS MEC 009 [6], as described in clause 6.12a." + SubscriptionLinkList: + x-etsi-ref: 6.3.10 + type: object + properties: + _links: + $ref: '#/components/schemas/_links1' + required: + - _links + NrMeasRepUeSubscription: + x-etsi-ref: 6.3.11 + type: object + properties: + subscriptionType: + description: Shall be set to "NrMeasRepUeSubscription". + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + callbackReference: + description: URI exposed by the client on which to receive notifications via HTTP. See note. + x-etsi-mec-origin-type: Uri + x-etsi-mec-cardinality: 0..1 + type: string + format: uri + requestTestNotification: + description: "Shall be set to TRUE by the service consumer to request a test notification via HTTP on the callbackReference URI, specified in ETSI GS\_MEC\_009\_[6], as described in clause 6.12a. " + x-etsi-mec-origin-type: Boolean + x-etsi-mec-cardinality: 0..1 + type: boolean + websockNotifConfig: + # description': Provides details to negotiate and signal the use of a Websocket connection between RNIS and the service consumer for notifications. See note. + $ref: '#/components/schemas/WebsockNotifConfig' + # x-etsi-mec-origin-type': WebsockNotifConfig + # x-etsi-mec-cardinality': 0..1 + _links: + $ref: '#/components/schemas/_links' + filterCriteriaNrMrs: + $ref: '#/components/schemas/FilterCriteriaNrMrs' + expiryDeadline: + # description': Time stamp. + $ref: '#/components/schemas/TimeStamp' + # x-etsi-mec-origin-type': TimeStamp + # x-etsi-mec-cardinality': 0..1 + required: + - subscriptionType + - filterCriteriaNrMrs + x-etsi-notes: "NOTE:\tAt least one of callbackReference and websockNotifConfig shall be provided by the service consumer. If both are provided, it is up to RNIS to choose an alternative and return only that alternative in the response, specified in ETSI GS MEC 009 [6], as described in clause 6.12a." + WebsockNotifConfig: + x-etsi-ref: 6.3.12 + type: object + properties: + websocketUri: + description: Set by RNIS to indicate to the service consumer the Websocket URI to be used for delivering notifications. + x-etsi-mec-origin-type: Uri + x-etsi-mec-cardinality: 0..1 + type: string + format: uri + requestWebsocketUri: + description: Set to true by the service consumer to indicate that Websocket delivery is requested. + x-etsi-mec-origin-type: Boolean + x-etsi-mec-cardinality: 0..1 + type: boolean + CellChangeNotification: + x-etsi-ref: 6.4.2 + type: object + properties: + notificationType: + description: Shall be set to "CellChangeNotification". + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + timeStamp: + # description': Time stamp. + $ref: '#/components/schemas/TimeStamp' + # x-etsi-mec-origin-type': TimeStamp + # x-etsi-mec-cardinality': 0..1 + associateId: + description: 0 to N identifiers to associate the event for a specific UE or flow. + x-etsi-mec-origin-type: AssociateId + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + $ref: '#/components/schemas/AssociateId' + srcEcgi: + # description': E-UTRAN Cell Global Identifier of the source cell. + $ref: '#/components/schemas/Ecgi' + # x-etsi-mec-origin-type': Ecgi + # x-etsi-mec-cardinality': '1' + trgEcgi: + description: E-UTRAN Cell Global Identifier of the target cell. See note. + x-etsi-mec-origin-type: Ecgi + x-etsi-mec-cardinality: 1..N + type: array + minItems: 1 + items: + $ref: '#/components/schemas/Ecgi' + hoStatus: + type: integer + description: 'Indicate the status of the UE handover procedure. Values are defined as following: + + 1 = IN_PREPARATION. + + 2 = IN_EXECUTION. + + 3 = COMPLETED. + + 4 = REJECTED. + + 5 = CANCELLED.' + enum: + - SEE_DESCRIPTION + x-etsi-mec-origin-type: Enum + x-etsi-mec-cardinality: '1' + tempUeId: + $ref: '#/components/schemas/TempUeId' + _links: + description: Links to resources related to this notification. + x-etsi-mec-origin-type: '1' + x-etsi-mec-cardinality: Structure (inlined) + type: array + items: + $ref: '#/components/schemas/1' + subscription: + description: A link to the related subscription. + x-etsi-mec-origin-type: '1' + x-etsi-mec-cardinality: LinkType + type: array + items: + $ref: '#/components/schemas/1' + required: + - notificationType + - srcEcgi + - trgEcgi + - hoStatus + - _links + - subscription + x-etsi-notes: "NOTE:\tCardinality N is valid only in case of statuses IN_PREPARATION, REJECTED and CANCELLED." + RabEstNotification: + x-etsi-ref: 6.4.3 + type: object + properties: + notificationType: + description: Shall be set to "RabEstNotification". + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + timeStamp: + # description': Time stamp. + $ref: '#/components/schemas/TimeStamp' + # x-etsi-mec-origin-type': TimeStamp + # x-etsi-mec-cardinality': 0..1 + ecgi: + # description': E-UTRAN Cell Global Identifier. + $ref: '#/components/schemas/Ecgi' + # x-etsi-mec-origin-type': Ecgi + # x-etsi-mec-cardinality': '1' + associateId: + description: '0 to N identifiers to bind the event for a specific UE or flow. ' + x-etsi-mec-origin-type: AssociateId + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + $ref: '#/components/schemas/AssociateId' + erabId: + description: The attribute that uniquely identifies a Radio Access bearer for specific UE as defined in ETSI TS 136 413 [i.3]. + x-etsi-mec-origin-type: Integer + x-etsi-mec-cardinality: '1' + type: integer + erabQosParameters: + $ref: '#/components/schemas/ErabQosParameters1' + tempUeId: + $ref: '#/components/schemas/TempUeId1' + _links: + description: Links to resources related to this notification. + x-etsi-mec-origin-type: '1' + x-etsi-mec-cardinality: Structure (inlined) + type: array + items: + $ref: '#/components/schemas/1' + subscription: + description: A link to the related subscription. + x-etsi-mec-origin-type: '1' + x-etsi-mec-cardinality: LinkType + type: array + items: + $ref: '#/components/schemas/1' + required: + - notificationType + - ecgi + - erabId + - _links + - subscription + RabModNotification: + x-etsi-ref: 6.4.4 + type: object + properties: + notificationType: + description: Shall be set to "RabModNotification". + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + timeStamp: + # description': Time stamp. + $ref: '#/components/schemas/TimeStamp' + # x-etsi-mec-origin-type': TimeStamp + # x-etsi-mec-cardinality': 0..1 + ecgi: + # description': E-UTRAN Cell Global Identifier. + $ref: '#/components/schemas/Ecgi' + # x-etsi-mec-origin-type': Ecgi + # x-etsi-mec-cardinality': '1' + associateId: + description: '0 to N identifiers to bind the event for a specific UE or flow. ' + x-etsi-mec-origin-type: AssociateId + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + $ref: '#/components/schemas/AssociateId' + erabId: + description: The attribute that uniquely identifies a Radio Access bearer for specific UE as defined in ETSI TS 136 413 [i.3]. + x-etsi-mec-origin-type: Integer + x-etsi-mec-cardinality: '1' + type: integer + erabQosParameters: + $ref: '#/components/schemas/ErabQosParameters2' + _links: + description: Links to resources related to this notification. + x-etsi-mec-origin-type: '1' + x-etsi-mec-cardinality: Structure (inlined) + type: array + items: + $ref: '#/components/schemas/1' + subscription: + description: A link to the related subscription. + x-etsi-mec-origin-type: '1' + x-etsi-mec-cardinality: LinkType + type: array + items: + $ref: '#/components/schemas/1' + required: + - notificationType + - ecgi + - erabId + - _links + - subscription + RabRelNotification: + x-etsi-ref: 6.4.5 + type: object + properties: + notificationType: + description: Shall be set to "RabRelNotification". + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + timeStamp: + # description': Time stamp. + $ref: '#/components/schemas/TimeStamp' + # x-etsi-mec-origin-type': TimeStamp + # x-etsi-mec-cardinality': 0..1 + ecgi: + # description': E-UTRAN Cell Global Identifier. + $ref: '#/components/schemas/Ecgi' + # x-etsi-mec-origin-type': Ecgi + # x-etsi-mec-cardinality': '1' + associateId: + description: 0 to N identifiers to bind the event for a specific UE or flow as defined below. + x-etsi-mec-origin-type: AssociateId + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + $ref: '#/components/schemas/AssociateId' + erabReleaseInfo: + $ref: '#/components/schemas/ErabReleaseInfo' + _links: + description: Links to resources related to this notification. + x-etsi-mec-origin-type: '1' + x-etsi-mec-cardinality: Structure (inlined) + type: array + items: + $ref: '#/components/schemas/1' + subscription: + description: A link to the related subscription. + x-etsi-mec-origin-type: '1' + x-etsi-mec-cardinality: LinkType + type: array + items: + $ref: '#/components/schemas/1' + required: + - notificationType + - ecgi + - erabReleaseInfo + - _links + - subscription + MeasRepUeNotification: + x-etsi-ref: 6.4.6 + type: object + properties: + notificationType: + description: Shall be set to "MeasRepUeNotification". + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + timeStamp: + # description': Time stamp. + $ref: '#/components/schemas/TimeStamp' + # x-etsi-mec-origin-type': TimeStamp + # x-etsi-mec-cardinality': 0..1 + ecgi: + # description': E-UTRAN Cell Global Identifier of the Primary serving Cell (PCell), as defined in ETSI TS 136 331 [i.7]. + $ref: '#/components/schemas/Ecgi' + # x-etsi-mec-origin-type': Ecgi + # x-etsi-mec-cardinality': '1' + associateId: + description: 0 to N identifiers to associate the event for a specific UE or flow. + x-etsi-mec-origin-type: AssociateId + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + $ref: '#/components/schemas/AssociateId' + rsrp: + description: "Reference Signal Received Power as defined in ETSI TS\_136 214 [i.5]." + x-etsi-mec-origin-type: Uint8 + x-etsi-mec-cardinality: '1' + type: integer + format: uint8 + rsrpEx: + description: Extended Reference Signal Received Power, with value mapping defined in ETSI TS 136 133 [i.16]. + x-etsi-mec-origin-type: Uint8 + x-etsi-mec-cardinality: 0..1 + type: integer + format: uint8 + rsrq: + description: Reference Signal Received Quality as defined in ETSI TS 136 214 [i.5]. + x-etsi-mec-origin-type: Uint8 + x-etsi-mec-cardinality: '1' + type: integer + format: uint8 + rsrqEx: + description: Extended Reference Signal Received Quality, with value mapping defined in ETSI TS 136 133 [i.16]. + x-etsi-mec-origin-type: Uint8 + x-etsi-mec-cardinality: 0..1 + type: integer + format: uint8 + sinr: + description: "Reference Signal \"Signal to Interference plus Noise Ratio\", with value mapping defined in ETSI TS\_136\_133\_[i.16]." + x-etsi-mec-origin-type: Uint8 + x-etsi-mec-cardinality: 0..1 + type: integer + format: uint8 + trigger: + # description': Corresponds to a specific E-UTRAN UE Measurement Report trigger. + $ref: '#/components/schemas/Trigger' + # x-etsi-mec-origin-type': Trigger + # x-etsi-mec-cardinality': '1' + eutranNeighbourCellMeasInfo: + type: array + items: + $ref: '#/components/schemas/EutranNeighbourCellMeasInfo' + carrierAggregationMeasInfo: + type: array + items: + $ref: '#/components/schemas/CarrierAggregationMeasInfo' + heightUe: + description: Indicates height of the UE in meters relative to the sea level as defined in ETSI TS 136 331 [i.7]. + x-etsi-mec-origin-type: Int + x-etsi-mec-cardinality: 0..1 + type: integer + newRadioMeasInfo: + type: array + items: + $ref: '#/components/schemas/NewRadioMeasInfo' + newRadioMeasNeiInfo: + type: array + items: + $ref: '#/components/schemas/NewRadioMeasNeiInfo' + _links: + description: Links to resources related to this notification. + x-etsi-mec-origin-type: '1' + x-etsi-mec-cardinality: Structure (inlined) + type: array + items: + $ref: '#/components/schemas/1' + subscription: + description: A link to the related subscription. + x-etsi-mec-origin-type: '1' + x-etsi-mec-cardinality: LinkType + type: array + items: + $ref: '#/components/schemas/1' + required: + - notificationType + - ecgi + - rsrp + - rsrq + - trigger + - _links + - subscription + MeasTaNotification: + x-etsi-ref: 6.4.7 + type: object + properties: + notificationType: + description: Shall be set to "MeasTaNotification". + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + timeStamp: + # description': Time stamp. + $ref: '#/components/schemas/TimeStamp' + # x-etsi-mec-origin-type': TimeStamp + # x-etsi-mec-cardinality': 0..1 + ecgi: + # description': E-UTRAN Cell Global Identifier. + $ref: '#/components/schemas/Ecgi' + # x-etsi-mec-origin-type': Ecgi + # x-etsi-mec-cardinality': '1' + associateId: + description: 0 to N identifiers to associate the event for a specific UE or flow. + x-etsi-mec-origin-type: AssociateId + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + $ref: '#/components/schemas/AssociateId' + timingAdvance: + description: The timing advance as defined in ETSI TS 136 214 [i.5]. + x-etsi-mec-origin-type: Uint32 + x-etsi-mec-cardinality: '1' + type: integer + format: uint32 + _links: + description: Links to resources related to this notification. + x-etsi-mec-origin-type: '1' + x-etsi-mec-cardinality: Structure (inlined) + type: array + items: + $ref: '#/components/schemas/1' + subscription: + description: A link to the related subscription. + x-etsi-mec-origin-type: '1' + x-etsi-mec-cardinality: LinkType + type: array + items: + $ref: '#/components/schemas/1' + required: + - notificationType + - ecgi + - timingAdvance + - _links + - subscription + CaReconfNotification: + x-etsi-ref: 6.4.8 + type: object + properties: + notificationType: + description: Shall be set to "CaReconfNotification". + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + timeStamp: + # description': Time stamp. + $ref: '#/components/schemas/TimeStamp' + # x-etsi-mec-origin-type': TimeStamp + # x-etsi-mec-cardinality': 0..1 + ecgi: + # description': E-UTRAN Cell Global Identifier. + $ref: '#/components/schemas/Ecgi' + # x-etsi-mec-origin-type': Ecgi + # x-etsi-mec-cardinality': '1' + associateId: + description: 0 to N identifiers to associate the event for a specific UE or flow. + x-etsi-mec-origin-type: AssociateId + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + $ref: '#/components/schemas/AssociateId' + secondaryCellAdd: + type: array + items: + $ref: '#/components/schemas/SecondaryCellAdd' + secondaryCellRemove: + type: array + items: + $ref: '#/components/schemas/SecondaryCellRemove' + carrierAggregationMeasInfo: + type: array + items: + $ref: '#/components/schemas/CarrierAggregationMeasInfo1' + _links: + description: Links to resources related to this notification. + x-etsi-mec-origin-type: '1' + x-etsi-mec-cardinality: Structure (inlined) + type: array + items: + $ref: '#/components/schemas/1' + subscription: + description: A link to the related subscription. + x-etsi-mec-origin-type: '1' + x-etsi-mec-cardinality: LinkType + type: array + items: + $ref: '#/components/schemas/1' + required: + - notificationType + - ecgi + - _links + - subscription + ExpiryNotification: + x-etsi-ref: 6.4.9 + type: object + properties: + notificationType: + description: Shall be set to "ExpiryNotification" + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + timeStamp: + # description': Time stamp of the notification. + $ref: '#/components/schemas/TimeStamp' + # x-etsi-mec-origin-type': TimeStamp + # x-etsi-mec-cardinality': 0..1 + _links: + $ref: '#/components/schemas/_links2' + expiryDeadline: + # description': Time stamp of the notification expiry. + $ref: '#/components/schemas/TimeStamp' + # x-etsi-mec-origin-type': TimeStamp + # x-etsi-mec-cardinality': '1' + required: + - notificationType + - _links + - expiryDeadline + S1BearerNotification: + x-etsi-ref: 6.4.10 + type: object + properties: + notificationType: + description: Shall be set to "S1BearerNotification". + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + timeStamp: + # description': Time stamp. + $ref: '#/components/schemas/TimeStamp' + # x-etsi-mec-origin-type': TimeStamp + # x-etsi-mec-cardinality': 0..1 + s1Event: + type: string + description: The subscribed event that triggered this notification in S1BearerSubscription. + enum: + - SEE_DESCRIPTION + x-etsi-mec-origin-type: Enum + x-etsi-mec-cardinality: '1' + s1UeInfo: + $ref: '#/components/schemas/S1UeInfo1' + _links: + description: Links to resources related to this notification. + x-etsi-mec-origin-type: '1' + x-etsi-mec-cardinality: Structure (inlined) + type: array + items: + $ref: '#/components/schemas/1' + subscription: + description: A link to the related subscription. + x-etsi-mec-origin-type: '1' + x-etsi-mec-cardinality: LinkType + type: array + items: + $ref: '#/components/schemas/1' + required: + - notificationType + - s1Event + - s1UeInfo + - _links + - subscription + NrMeasRepUeNotification: + x-etsi-ref: 6.4.11 + type: object + properties: + notificationType: + description: Shall be set to "NrMeasRepUeNotification". + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + timeStamp: + # description': Time stamp. + $ref: '#/components/schemas/TimeStamp' + # x-etsi-mec-origin-type': TimeStamp + # x-etsi-mec-cardinality': 0..1 + associateId: + description: 0 to N identifiers to associate the event for a specific UE or flow. + x-etsi-mec-origin-type: AssociateId + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + $ref: '#/components/schemas/AssociateId' + triggerNr: + # description': Corresponds to a specific 5G UE Measurement Report trigger. + $ref: '#/components/schemas/TriggerNr' + # x-etsi-mec-origin-type': TriggerNr + # x-etsi-mec-cardinality': '1' + servCellMeasInfo: + type: array + items: + $ref: '#/components/schemas/ServCellMeasInfo' + nrNeighCellMeasInfo: + type: array + items: + $ref: '#/components/schemas/NrNeighCellMeasInfo' + eutraNeighCellMeasInfo: + type: array + items: + $ref: '#/components/schemas/EutraNeighCellMeasInfo' + _links: + description: Links to resources related to this notification. + x-etsi-mec-origin-type: '1' + x-etsi-mec-cardinality: Structure (inlined) + type: array + items: + $ref: '#/components/schemas/1' + subscription: + description: A link to the related subscription. + x-etsi-mec-origin-type: '1' + x-etsi-mec-cardinality: LinkType + type: array + items: + $ref: '#/components/schemas/1' + required: + - notificationType + - triggerNr + - _links + - subscription + TestNotification: + x-etsi-ref: 6.4.12 + type: object + properties: + notificationType: + description: Shall be set to "TestNotification". + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + _links: + $ref: '#/components/schemas/_links3' + required: + - notificationType + - _links + LinkType: + x-etsi-ref: 6.5.2 + type: object + properties: + href: + description: URI referring to a resource + x-etsi-mec-origin-type: Uri + x-etsi-mec-cardinality: '1' + type: string + format: uri + required: + - href + TimeStamp: + x-etsi-ref: 6.5.3 + type: object + properties: + seconds: + description: The seconds part of the time. Time is defined as Unixtime since January 1, 1970, 00:00:00 UTC. + x-etsi-mec-origin-type: Uint32 + x-etsi-mec-cardinality: '1' + type: integer + format: uint32 + nanoSeconds: + description: The nanoseconds part of the time. Time is defined as Unix-time since January 1, 1970, 00:00:00 UTC. + x-etsi-mec-origin-type: Uint32 + x-etsi-mec-cardinality: '1' + type: integer + format: uint32 + required: + - seconds + - nanoSeconds + AssociateId: + x-etsi-ref: 6.5.4 + type: object + properties: + type: + type: integer + description: 'Numeric value (0-255) corresponding to specified type of identifier as following: + + 0 = reserved. + + 1= UE_IPv4_ADDRESS. + + 2 = UE_IPV6_ADDRESS. + + 3 = NATED_IP_ADDRESS. + + 4 = GTP_TEID.' + enum: + - SEE_DESCRIPTION + x-etsi-mec-origin-type: Enum + x-etsi-mec-cardinality: '1' + value: + description: Value for the identifier. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + required: + - type + - value + Plmn: + x-etsi-ref: 6.5.5 + type: object + properties: + mcc: + description: The Mobile Country Code part of PLMN Identity as defined in ETSI TS 136 413 [i.3]. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + mnc: + description: The Mobile Network Code part of PLMN Identity as defined in ETSI TS 136 413 [i.3]. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + required: + - mcc + - mnc + Ecgi: + x-etsi-ref: 6.5.6 + type: object + properties: + plmn: + # description': Public Land Mobile Network Identity. + $ref: '#/components/schemas/Plmn' + # x-etsi-mec-origin-type': Plmn + # x-etsi-mec-cardinality': '1' + cellId: + # description': E-UTRAN Cell Global Identifier. + $ref: '#/components/schemas/CellId' + # x-etsi-mec-origin-type': CellId + # x-etsi-mec-cardinality': '1' + required: + - plmn + - cellId + Nrcgi: + x-etsi-ref: 6.5.7 + type: object + properties: + plmn: + # description': Public Land Mobile Network Identity. + $ref: '#/components/schemas/Plmn' + # x-etsi-mec-origin-type': Plmn + # x-etsi-mec-cardinality': '1' + nrCellId: + # description': NR Cell Global Identifier. + $ref: '#/components/schemas/NrCellId' + # x-etsi-mec-origin-type': NrCellId + # x-etsi-mec-cardinality': '1' + required: + - plmn + - nrCellId + RsIndexResults: + x-etsi-ref: 6.5.8 + type: object + properties: + resultsSsbIndexes: + # description': Beam level measurement results based on SS/PBCH related measurements. + $ref: '#/components/schemas/ResultsPerSsbIndexList' + # x-etsi-mec-origin-type': ResultsPerSsbIndexList + # x-etsi-mec-cardinality': '1' + resultsCsiRsIndexes: + # description': Beam level measurement results based on CSI-RS related measurements. + $ref: '#/components/schemas/ResultsPerCsiRsIndexList' + # x-etsi-mec-origin-type': ResultsPerCsiRsIndexList + # x-etsi-mec-cardinality': '1' + required: + - resultsSsbIndexes + - resultsCsiRsIndexes + ResultsPerSsbIndexList: + x-etsi-ref: 6.5.9 + type: object + properties: + resultsPerSsbIndex: + type: array + items: + $ref: '#/components/schemas/ResultsPerSsbIndex' + ResultsPerCsiRsIndexList: + x-etsi-ref: 6.5.10 + type: object + properties: + resultsPerCsiRsIndex: + type: array + items: + $ref: '#/components/schemas/ResultsPerCsiRsIndex' + MeasQuantityResultsNr: + x-etsi-ref: 6.5.11 + type: object + properties: + rsrp: + description: "Reference Signal Received Power as defined in ETSI TS\_138 331 [i.13]." + x-etsi-mec-origin-type: Uint8 + x-etsi-mec-cardinality: 0..1 + type: integer + format: uint8 + rsrq: + description: "Reference Signal Received Quality as defined in ETSI TS\_138 331 [i.13]." + x-etsi-mec-origin-type: Uint8 + x-etsi-mec-cardinality: 0..1 + type: integer + format: uint8 + sinr: + description: Reference Signal to Interference & Noise Ratio as defined in ETSI TS 138 331 [i.13]. + x-etsi-mec-origin-type: Uint8 + x-etsi-mec-cardinality: 0..1 + type: integer + format: uint8 + QosInformation: + description: The QoS information for the E-RAB. + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: 0..1 + type: object + properties: + erabMbrDl: + description: This attribute indicates the maximum downlink ERAB Bit Rate as defined in ETSI TS 123 401 [i.4] for this bearer. + x-etsi-mec-origin-type: Integer + x-etsi-mec-cardinality: '1' + type: integer + erabMbrUl: + description: This attribute indicates the maximum uplink E-RAB Bit Rate as defined in ETSI TS 123 401 [i.4] for this bearer. + x-etsi-mec-origin-type: Integer + x-etsi-mec-cardinality: '1' + type: integer + erabGbrDl: + description: This attribute indicates the guaranteed downlink ERAB Bit Rate as defined in ETSI TS 123 401 [i.4] for this bearer. + x-etsi-mec-origin-type: Integer + x-etsi-mec-cardinality: '1' + type: integer + erabGbrUl: + description: This attribute indicates the guaranteed uplink ERAB Bit Rate as defined in ETSI TS 123 401 [i.4] for this bearer. + x-etsi-mec-origin-type: Integer + x-etsi-mec-cardinality: '1' + type: integer + required: + - erabMbrDl + - erabMbrUl + - erabGbrDl + - erabGbrUl + ErabQosParameters: + description: QoS parameters for the E-RAB as defined below. + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: 0..1 + type: object + properties: + qci: + description: "QoS Class Identifier as defined in ETSI TS\_123\_401\_[i.4]." + x-etsi-mec-origin-type: Integer + x-etsi-mec-cardinality: '1' + type: integer + qosInformation: + $ref: '#/components/schemas/QosInformation' + required: + - qci + ErabInfo: + description: Information on E-RAB as defined below. + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: 1..N + type: object + minItems: 1 + properties: + erabId: + description: "The attribute that uniquely identifies a Radio Access bearer for specific UE as defined in ETSI TS\_136\_413\_[i.3]." + x-etsi-mec-origin-type: Integer + x-etsi-mec-cardinality: '1' + type: integer + erabQosParameters: + $ref: '#/components/schemas/ErabQosParameters' + required: + - erabId + UeInfo: + description: Information on UEs in the specific cell as defined below. + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: 1..N + type: object + minItems: 1 + properties: + associateId: + description: 0 to N identifiers to associate the event for a specific UE or flow. + x-etsi-mec-origin-type: AssociateId + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + $ref: '#/components/schemas/AssociateId' + erabInfo: + type: array + items: + $ref: '#/components/schemas/ErabInfo' + required: + - erabInfo + CellUserInfo: + description: The information on users per cell as defined below. + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: 0..N + type: object + minItems: 0 + properties: + ecgi: + # description': E-UTRAN Cell Global Identifier. + $ref: '#/components/schemas/Ecgi' + # x-etsi-mec-origin-type': Ecgi + # x-etsi-mec-cardinality': '1' + ueInfo: + type: array + items: + $ref: '#/components/schemas/UeInfo' + required: + - ecgi + - ueInfo + TempUeId: + description: The temporary identifier allocated for the specific UE as defined below. + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: 0..1 + type: object + properties: + mmec: + description: MMEC as defined in ETSI TS 136 413 [i.3]. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + mtmsi: + description: M-TMSI as defined in ETSI TS 136 413 [i.3]. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + required: + - mmec + - mtmsi + EnbInfo: + description: S1 bearer information on eNB side as defined below. + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: '1' + type: object + properties: + ipAddress: + description: eNB transport layer address of this S1 bearer. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + tunnelId: + description: eNB GTP-U TEID of this S1 bearer. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + required: + - ipAddress + - tunnelId + SGwInfo: + description: S1 bearer information on GW side as defined below. + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: '1' + type: object + properties: + ipAddress: + description: SGW transport layer address of this S1 bearer. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + tunnelId: + description: SGW GTP-U TEID of this S1 bearer. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + required: + - ipAddress + - tunnelId + S1BearerInfoDetailed: + description: S1 bearer information as defined below. + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: 1..N + type: object + minItems: 1 + properties: + erabId: + description: The attribute that uniquely identifies a S1 bearer for a specific UE, as defined in ETSI TS 136 413 [i.3]. + x-etsi-mec-origin-type: Integer + x-etsi-mec-cardinality: '1' + type: integer + enbInfo: + $ref: '#/components/schemas/EnbInfo' + sGwInfo: + $ref: '#/components/schemas/SGwInfo' + required: + - erabId + - enbInfo + - sGwInfo + S1UeInfo: + description: Information on a specific UE as defined below. + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: 1..N + type: object + minItems: 1 + properties: + tempUeId: + $ref: '#/components/schemas/TempUeId' + associateId: + description: 1 to N identifiers to associate the information for a specific UE or flow. + x-etsi-mec-origin-type: AssociateId + x-etsi-mec-cardinality: 1..N + type: array + minItems: 1 + items: + $ref: '#/components/schemas/AssociateId' + ecgi: + description: E-UTRAN Cell Global Identifier. + x-etsi-mec-origin-type: Ecgi + x-etsi-mec-cardinality: 1..N + type: array + minItems: 1 + items: + $ref: '#/components/schemas/Ecgi' + s1BearerInfoDetailed: + type: array + items: + $ref: '#/components/schemas/S1BearerInfoDetailed' + required: + - associateId + - ecgi + - s1BearerInfoDetailed + CellInfo: + description: The per cell measurement information as defined below. + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: 0..N + type: object + minItems: 0 + properties: + ecgi: + # description': E-UTRAN Cell Global Identifier. + $ref: '#/components/schemas/Ecgi' + # x-etsi-mec-origin-type': Ecgi + # x-etsi-mec-cardinality': '1' + dl_gbr_prb_usage_cell: + description: It indicates the PRB usage for downlink GBR traffic, as defined in ETSI TS 136 314 [i.11] and ETSI TS 136 423 [i.12]. + x-etsi-mec-origin-type: Integer + x-etsi-mec-cardinality: 0..1 + type: integer + ul_gbr_prb_usage_cell: + description: "It indicates (in percentage) the PRB usage for uplink GBR traffic, as defined in ETSI TS\_136\_314\_[i.11] and ETSI TS\_136 423 [i.12]." + x-etsi-mec-origin-type: Integer + x-etsi-mec-cardinality: 0..1 + type: integer + dl_nongbr_prb_usage_cell: + description: "It indicates (in percentage) the PRB usage for downlink non-GBR traffic, as defined in ETSI TS\_136\_314 [i.11] and ETSI TS\_136 423 [i.12]." + x-etsi-mec-origin-type: Integer + x-etsi-mec-cardinality: 0..1 + type: integer + ul_nongbr_prb_usage_cell: + description: "It indicates (in percentage) the PRB usage for uplink non-GBR traffic, as defined in ETSI TS\_136\_314 [i.11] and ETSI TS\_136 423 [i.12]." + x-etsi-mec-origin-type: Integer + x-etsi-mec-cardinality: 0..1 + type: integer + dl_total_prb_usage_cell: + description: "It indicates (in percentage) the PRB usage for total downlink traffic, as defined in ETSI TS\_136\_314 [i.11] and ETSI TS\_136 423 [i.12]." + x-etsi-mec-origin-type: Integer + x-etsi-mec-cardinality: 0..1 + type: integer + ul_total_prb_usage_cell: + description: "It indicates (in percentage) the PRB usage for total uplink traffic, as defined in ETSI TS\_136\_314\_[i.11] and ETSI TS\_136\_423 [i.12]." + x-etsi-mec-origin-type: Integer + x-etsi-mec-cardinality: 0..1 + type: integer + received_dedicated_preambles_cell: + description: It indicates (in percentage) the received dedicated preambles, as defined in ETSI TS 136 314 [i.11]. + x-etsi-mec-origin-type: Integer + x-etsi-mec-cardinality: 0..1 + type: integer + received_randomly_selected _preambles_low_range_cell: + description: It indicates (in percentage) the received randomly selected preambles in the low range, as defined in ETSI TS 136 314 [i.11]. + x-etsi-mec-origin-type: Integer + x-etsi-mec-cardinality: 0..1 + type: integer + received_randomly_selected _preambles_high_range_cell: + description: It indicates (in percentage) the received randomly selected preambles in the high range, as defined in ETSI TS 136 314 [i.11]. + x-etsi-mec-origin-type: Integer + x-etsi-mec-cardinality: 0..1 + type: integer + number_of_active_ue_dl_gbr_cell: + description: It indicates the number of active UEs with downlink GBR traffic, as defined in ETSI TS 136 314 [i.11]. + x-etsi-mec-origin-type: Integer + x-etsi-mec-cardinality: 0..1 + type: integer + number_of_active_ue_ul_gbr_cell: + description: It indicates the number of active UEs with uplink GBR traffic, as defined in ETSI TS 136 314 [i.11]. + x-etsi-mec-origin-type: Integer + x-etsi-mec-cardinality: 0..1 + type: integer + number_of_active_ue_dl_nongbr_cell: + description: "It indicates the number of active UEs with downlink non-GBR traffic, as defined in ETSI TS\_136\_314 [i.11]." + x-etsi-mec-origin-type: Integer + x-etsi-mec-cardinality: 0..1 + type: integer + number_of_active_ue_ul_nongbr_cell: + description: "It indicates the number of active UEs with uplink non-GBR traffic, as defined in ETSI TS\_136\_314\_[i.11]." + x-etsi-mec-origin-type: Integer + x-etsi-mec-cardinality: 0..1 + type: integer + dl_gbr_pdr_cell: + description: It indicates the packet discard rate in percentage of the downlink GBR traffic in a cell, as defined in ETSI TS 136 314 [i.11]. + x-etsi-mec-origin-type: Integer + x-etsi-mec-cardinality: 0..1 + type: integer + ul_gbr_pdr_cell: + description: It indicates the packet discard rate in percentage of the uplink GBR traffic in a cell, as defined in ETSI TS 136 314 [i.11]. + x-etsi-mec-origin-type: Integer + x-etsi-mec-cardinality: 0..1 + type: integer + dl_nongbr_pdr_cell: + description: It indicates the packet discard rate in percentage of the downlink nonGBR traffic in a cell, as defined in ETSI TS 136 314 [i.11]. + x-etsi-mec-origin-type: Integer + x-etsi-mec-cardinality: 0..1 + type: integer + ul_nongbr_pdr_cell: + description: It indicates the packet discard rate in percentage of the uplink nonGBR traffic in a cell, as defined in ETSI TS 136 314 [i.11]. + x-etsi-mec-origin-type: Integer + x-etsi-mec-cardinality: 0..1 + type: integer + required: + - ecgi + CellUEInfo: + description: The per cell per UE layer 2 measurements information as defined below. + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: 0..N + type: object + minItems: 0 + properties: + ecgi: + # description': E-UTRAN Cell Global Identifier. + $ref: '#/components/schemas/Ecgi' + # x-etsi-mec-origin-type': Ecgi + # x-etsi-mec-cardinality': '1' + associateId: + # description': Identifier to associate the information for a specific UE or flow. + $ref: '#/components/schemas/AssociateId' + # x-etsi-mec-origin-type': AssociateId + # x-etsi-mec-cardinality': '1' + dl_gbr_delay_ue: + description: It indicates the packet delay of the downlink GBR traffic of a UE, as defined in ETSI TS 136 314 [i.11]. + x-etsi-mec-origin-type: Integer + x-etsi-mec-cardinality: 0..1 + type: integer + ul_gbr_delay_ue: + description: It indicates the packet delay of the uplink GBR traffic of a UE, as defined in ETSI TS 136 314 [i.11]. + x-etsi-mec-origin-type: Integer + x-etsi-mec-cardinality: 0..1 + type: integer + dl_nongbr_delay_ue: + description: "It indicates the packet delay of the downlink non-GBR traffic of a UE, as defined in ETSI TS\_136\_314\_[i.11]." + x-etsi-mec-origin-type: Integer + x-etsi-mec-cardinality: 0..1 + type: integer + ul_nongbr_delay_ue: + description: It indicates the packet delay of the uplink non-GBR traffic of a UE, as defined in ETSI TS 136 314 [i.11]. + x-etsi-mec-origin-type: Integer + x-etsi-mec-cardinality: 0..1 + type: integer + dl_gbr_pdr_ue: + description: It indicates the packet discard rate in percentage of the downlink GBR traffic of a UE, as defined in ETSI TS 136 314 [i.11]. + x-etsi-mec-origin-type: Integer + x-etsi-mec-cardinality: 0..1 + type: integer + ul_gbr_pdr_ue: + description: It indicates the packet discard rate in percentage of the uplink GBR traffic of a UE, as defined in ETSI TS 136 314 [i.11]. + x-etsi-mec-origin-type: Integer + x-etsi-mec-cardinality: 0..1 + type: integer + dl_nongbr_pdr_ue: + description: It indicates the packet discard rate in percentage of the downlink nonGBR traffic of a UE, as defined in ETSI TS 136 314 [i.11]. + x-etsi-mec-origin-type: Integer + x-etsi-mec-cardinality: 0..1 + type: integer + ul_nongbr_pdr_ue: + description: It indicates the packet discard rate in percentage of the uplink nonGBR traffic of a UE, as defined in ETSI TS 136 314 [i.11]. + x-etsi-mec-origin-type: Integer + x-etsi-mec-cardinality: 0..1 + type: integer + dl_gbr_throughput_ue: + description: It indicates the scheduled throughput of the downlink GBR traffic of a UE, as defined in ETSI TS 136 314 [i.11]. + x-etsi-mec-origin-type: Integer + x-etsi-mec-cardinality: 0..1 + type: integer + ul_gbr_throughput_ue: + description: It indicates the scheduled throughput of the uplink GBR traffic of a UE, as defined in ETSI TS 136 314 [i.11]. + x-etsi-mec-origin-type: Integer + x-etsi-mec-cardinality: 0..1 + type: integer + dl_nongbr_throughput_ue: + description: It indicates the scheduled throughput of the downlink nonGBR traffic of a UE, as defined in ETSI TS 136 314 [i.11]. + x-etsi-mec-origin-type: Integer + x-etsi-mec-cardinality: 0..1 + type: integer + ul_nongbr_throughput_ue: + description: It indicates the scheduled throughput of the uplink non-GBR traffic of a UE, as defined in ETSI TS 136 314 [i.11]. + x-etsi-mec-origin-type: Integer + x-etsi-mec-cardinality: 0..1 + type: integer + dl_gbr_data_volume_ue: + description: It indicates the data volume of the downlink GBR traffic of a UE, as defined in ETSI TS 136 314 [i.11]. + x-etsi-mec-origin-type: Integer + x-etsi-mec-cardinality: 0..1 + type: integer + ul_gbr_data_volume_ue: + description: It indicates the data volume of the uplink GBR traffic of a UE, as defined in ETSI TS 136 314 [i.11]. + x-etsi-mec-origin-type: Integer + x-etsi-mec-cardinality: 0..1 + type: integer + dl_nongbr_data_volume_ue: + description: "It indicates the data volume of the downlink non-GBR traffic of a UE, as defined in ETSI TS\_136\_314\_[i.11]." + x-etsi-mec-origin-type: Integer + x-etsi-mec-cardinality: 0..1 + type: integer + ul_nongbr_data_volume_ue: + description: It indicates the data volume of the uplink non-GBR traffic of a UE, as defined in ETSI TS 136 314 [i.11]. + x-etsi-mec-origin-type: Integer + x-etsi-mec-cardinality: 0..1 + type: integer + required: + - ecgi + - associateId + _links: + description: Hyperlink related to the resource. This shall be only included in the HTTP responses and in HTTP PUT requests. + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: 0..1 + type: object + properties: + self: + # description': Self-referring URI. The URI shall be unique within the RNI API as it acts as an ID for the subscription. + $ref: '#/components/schemas/LinkType' + # x-etsi-mec-origin-type': LinkType + # x-etsi-mec-cardinality': '1' + required: + - self + FilterCriteriaAssocHo: + description: List of filtering criteria for the subscription. Any filtering criteria from below, which is included in the request, shall also be included in the response. + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: '1' + type: object + properties: + appInstanceId: + description: Unique identifier for the MEC application instance. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + associateId: + description: 0 to N identifiers to associate the information for a specific UE or flow. + x-etsi-mec-origin-type: AssociateId + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + $ref: '#/components/schemas/AssociateId' + ecgi: + description: E-UTRAN Cell Global Identifier. + x-etsi-mec-origin-type: Ecgi + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + $ref: '#/components/schemas/Ecgi' + hoStatus: + description: 'In case hoStatus is not included in the subscription request, the default value 3 = COMPLETED shall be used and included in the response: + + 1 = IN_PREPARATION. + + 2 = IN_EXECUTION. + + 3 = COMPLETED. + + 4 = REJECTED. + + 5 = CANCELLED.' + x-etsi-mec-origin-type: Enum + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + type: integer + FilterCriteriaQci: + description: List of filtering criteria for the subscription. Any filtering criteria from below, which is included in the request, shall also be included in the response. + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: '1' + type: object + properties: + appInstanceId: + description: Unique identifier for the MEC application instance. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + ecgi: + description: E-UTRAN Cell Global Identifier. + x-etsi-mec-origin-type: Ecgi + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + $ref: '#/components/schemas/Ecgi' + qci: + description: QoS Class Identifier as defined in ETSI TS 123 401 [i.4]. + x-etsi-mec-origin-type: Integer + x-etsi-mec-cardinality: '1' + type: integer + required: + - qci + FilterCriteriaQci1: + description: List of filtering criteria for the subscription. Any filtering criteria from below, which is included in the request, shall also be included in the response. + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: '1' + type: object + properties: + appInstanceId: + description: Unique identifier for the MEC application instance. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + erabId: + description: The attribute that uniquely identifies a Radio Access bearer for specific UE as defined in ETSI TS 136 413 [i.3]. + x-etsi-mec-origin-type: Integer + x-etsi-mec-cardinality: '1' + type: integer + ecgi: + description: E-UTRAN Cell Global Identifier. + x-etsi-mec-origin-type: Ecgi + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + $ref: '#/components/schemas/Ecgi' + qci: + description: QoS Class Identifier as defined in ETSI TS 123 401 [i.4]. + x-etsi-mec-origin-type: Integer + x-etsi-mec-cardinality: '1' + type: integer + required: + - erabId + - qci + FilterCriteriaAssocTri: + description: List of filtering criteria for the subscription. Any filtering criteria from below, which is included in the request, shall also be included in the response. + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: '1' + type: object + properties: + appInstanceId: + description: Unique identifier for the MEC application instance. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + associateId: + description: 0 to N identifiers to associate the information for a specific UE or flow. + x-etsi-mec-origin-type: AssociateId + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + $ref: '#/components/schemas/AssociateId' + ecgi: + description: E-UTRAN Cell Global Identifier. + x-etsi-mec-origin-type: Ecgi + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + $ref: '#/components/schemas/Ecgi' + trigger: + description: Corresponds to a specific E-UTRAN UE Measurement Report trigger. + x-etsi-mec-origin-type: Trigger + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + $ref: '#/components/schemas/Trigger' + FilterCriteriaAssoc: + description: List of filtering criteria for the subscription. Any filtering criteria from below, which is included in the request, shall also be included in the response. + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: '1' + type: object + properties: + appInstanceId: + description: Unique identifier for the MEC application instance. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + associateId: + description: 0 to N identifiers to associate the information for a specific UE or flow. + x-etsi-mec-origin-type: AssociateId + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + $ref: '#/components/schemas/AssociateId' + ecgi: + description: E-UTRAN Cell Global Identifier. + x-etsi-mec-origin-type: Ecgi + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + $ref: '#/components/schemas/Ecgi' + S1BearerSubscriptionCriteria: + description: As defined below. + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: '1' + type: object + properties: + associateId: + description: 0 to N identifiers to associate the events for a specific UE or a flow. + x-etsi-mec-origin-type: AssociateId + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + $ref: '#/components/schemas/AssociateId' + ecgi: + description: E-UTRAN Cell Global Identifier. + x-etsi-mec-origin-type: Ecgi + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + $ref: '#/components/schemas/Ecgi' + erabId: + description: The attribute that uniquely identifies a S1 bearer for a specific UE, as defined in ETSI TS 136 413 [i.3]. + x-etsi-mec-origin-type: Integer + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + type: integer + Subscription: + description: A link to a subscription. + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: 0..N + type: object + minItems: 0 + properties: + href: + description: The URI referring to the subscription. + x-etsi-mec-origin-type: Uri + x-etsi-mec-cardinality: '1' + type: string + format: uri + subscriptionType: + description: "Type of the subscription. The string shall be set according to the \"subscriptionType\" attribute of the associated subscription data type event defined in clause\_6.3." + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + required: + - href + - subscriptionType + _links1: + description: List of hyperlinks related to the resource. + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: '1' + type: object + properties: + self: + # description': '' + $ref: '#/components/schemas/LinkType' + # x-etsi-mec-origin-type': LinkType + # x-etsi-mec-cardinality': '1' + subscription: + type: array + items: + $ref: '#/components/schemas/Subscription' + required: + - self + FilterCriteriaNrMrs: + description: List of filtering criteria for the subscription. Any filtering criteria from below, which is included in the request, shall also be included in the response. + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: '1' + type: object + properties: + appInstanceId: + description: Unique identifier for the MEC application instance. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + associateId: + description: 0 to N identifiers to associate the information for a specific UE or flow. + x-etsi-mec-origin-type: AssociateId + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + $ref: '#/components/schemas/AssociateId' + nrcgi: + description: NR Cell Global Identifier. + x-etsi-mec-origin-type: NRcgi + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + $ref: '#/components/schemas/NRcgi' + triggerNr: + description: Corresponds to a specific 5G UE Measurement Report trigger. + x-etsi-mec-origin-type: TriggerNr + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + $ref: '#/components/schemas/TriggerNr' + QosInformation1: + description: The QoS information for the E-RAB. + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: 0..1 + type: object + properties: + erabMbrDl: + description: This attribute indicates the maximum downlink E-RAB Bit Rate as defined in ETSI TS 123 401 [i.4] for this bearer. + x-etsi-mec-origin-type: Integer + x-etsi-mec-cardinality: '1' + type: integer + erabMbrUl: + description: This attribute indicates the maximum uplink E-RAB Bit Rate as defined in ETSI TS 123 401 [i.4] for this bearer. + x-etsi-mec-origin-type: Integer + x-etsi-mec-cardinality: '1' + type: integer + erabGbrDl: + description: This attribute indicates the guaranteed downlink E-RAB Bit Rate as defined in ETSI TS 123 401 [i.4] for this bearer. + x-etsi-mec-origin-type: Integer + x-etsi-mec-cardinality: '1' + type: integer + erabGbrUl: + description: This attribute indicates the guaranteed uplink E-RAB Bit Rate as defined in ETSI TS 123 401 [i.4] for this bearer. + x-etsi-mec-origin-type: Integer + x-etsi-mec-cardinality: '1' + type: integer + required: + - erabMbrDl + - erabMbrUl + - erabGbrDl + - erabGbrUl + ErabQosParameters1: + description: QoS parameters for the E-RAB as defined below. + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: 0..1 + type: object + properties: + qci: + description: QoS Class Identifier as defined in ETSI TS 123 401 [i.4]. + x-etsi-mec-origin-type: Integer + x-etsi-mec-cardinality: '1' + type: integer + qosInformation: + $ref: '#/components/schemas/QosInformation1' + required: + - qci + TempUeId1: + description: 'The temporary identifier allocated for the specific UE as defined below. ' + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: 0..1 + type: object + properties: + mmec: + description: MMEC as defined in ETSI TS 136 413 [i.3]. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + mtmsi: + description: M-TMSI as defined in ETSI TS 136 413 [i.3]. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + required: + - mmec + - mtmsi + QosInformation2: + description: The QoS Information for the E-RAB as defined below. + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: 0..1 + type: object + properties: + erabMbrDl: + description: This attribute indicates the maximum downlink E-RAB Bit Rate as defined in ETSI TS 123 401 [i.4] for this bearer. + x-etsi-mec-origin-type: Integer + x-etsi-mec-cardinality: '1' + type: integer + erabMbrUl: + description: This attribute indicates the maximum uplink E-RAB Bit Rate as defined in ETSI TS 123 401 [i.4] for this bearer. + x-etsi-mec-origin-type: Integer + x-etsi-mec-cardinality: '1' + type: integer + erabGbrDl: + description: This attribute indicates the guaranteed downlink E-RAB Bit Rate as defined in ETSI TS 123 401 [i.4] for this bearer. + x-etsi-mec-origin-type: Integer + x-etsi-mec-cardinality: '1' + type: integer + erabGbrUl: + description: This attribute indicates the guaranteed uplink E-RAB Bit Rate as defined in ETSI TS 123 401 [i.4] for this bearer. + x-etsi-mec-origin-type: Integer + x-etsi-mec-cardinality: '1' + type: integer + required: + - erabMbrDl + - erabMbrUl + - erabGbrDl + - erabGbrUl + ErabQosParameters2: + description: The QoS parameters for the E-RAB as defined below. + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: 0..1 + type: object + properties: + qci: + description: QoS Class Identifier as defined in ETSI TS 123 401 [i.4]. + x-etsi-mec-origin-type: Integer + x-etsi-mec-cardinality: '1' + type: integer + qosInformation: + $ref: '#/components/schemas/QosInformation2' + required: + - qci + ErabReleaseInfo: + description: The release information for the E-RAB as defined below. + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: '1' + type: object + properties: + erabId: + description: The attribute that uniquely identifies a Radio Access bearer for specific UE as defined in ETSI TS 136 413 [i.3]. + x-etsi-mec-origin-type: Integer + x-etsi-mec-cardinality: '1' + type: integer + required: + - erabId + EutranNeighbourCellMeasInfo: + description: This parameter can be repeated to contain information of all the neighbouring cells up to N. + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: 0..N + type: object + minItems: 0 + properties: + ecgi: + # description': E-UTRAN Cell Global Identifier. + $ref: '#/components/schemas/Ecgi' + # x-etsi-mec-origin-type': Ecgi + # x-etsi-mec-cardinality': '1' + rsrp: + description: "Reference Signal Received Power as defined in ETSI TS\_136 214 [i.5]." + x-etsi-mec-origin-type: Uint8 + x-etsi-mec-cardinality: 0..1 + type: integer + format: uint8 + rsrpEx: + description: Extended Reference Signal Received Power, with value mapping defined in ETSI TS 136 133 [i.16]. + x-etsi-mec-origin-type: Uint8 + x-etsi-mec-cardinality: 0..1 + type: integer + format: uint8 + rsrq: + description: "Reference Signal Received Quality as defined in ETSI TS\_136 214 [i.5]." + x-etsi-mec-origin-type: Uint8 + x-etsi-mec-cardinality: 0..1 + type: integer + format: uint8 + rsrqEx: + description: Extended Reference Signal Received Quality, with value mapping defined in ETSI TS 136 133 [i.16]. + x-etsi-mec-origin-type: Uint8 + x-etsi-mec-cardinality: 0..1 + type: integer + format: uint8 + sinr: + description: "Reference Signal \"Signal to Interference plus Noise Ratio\", with value mapping defined in ETSI TS\_136\_133\_[i.16]." + x-etsi-mec-origin-type: Uint8 + x-etsi-mec-cardinality: 0..1 + type: integer + format: uint8 + required: + - ecgi + CarrierAggregationMeasInfo: + description: This parameter can be repeated to contain information of all the carriers assign for Carrier Aggregation up to N. + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: 0..N + type: object + minItems: 0 + properties: + cellIdSrv: + # description': E-UTRAN Cell Identity of a Secondary serving Cell (SCell), as defined in ETSI TS 136 331 [i.7]. + $ref: '#/components/schemas/CellId' + # x-etsi-mec-origin-type': CellId + # x-etsi-mec-cardinality': '1' + rsrpSrv: + description: "Reference Signal Received Power as defined in ETSI TS\_136 214 [i.5]." + x-etsi-mec-origin-type: Uint8 + x-etsi-mec-cardinality: 0..1 + type: integer + format: uint8 + rsrpSrvEx: + description: Extended Reference Signal Received Power, with value mapping defined in ETSI TS 136 133 [i.16]. + x-etsi-mec-origin-type: Uint8 + x-etsi-mec-cardinality: 0..1 + type: integer + format: uint8 + rsrqSrv: + description: "Reference Signal Received Quality as defined in ETSI TS\_136 214 [i.5]." + x-etsi-mec-origin-type: Uint8 + x-etsi-mec-cardinality: 0..1 + type: integer + format: uint8 + rsrqSrvEx: + description: Extended Reference Signal Received Quality, with value mapping defined in ETSI TS 136 133 [i.16]. + x-etsi-mec-origin-type: Uint8 + x-etsi-mec-cardinality: 0..1 + type: integer + format: uint8 + sinrSrv: + description: "Reference Signal \"Signal to Interference plus Noise Ratio\", with value mapping defined in ETSI TS\_136\_133\_[i.16]." + x-etsi-mec-origin-type: Uint8 + x-etsi-mec-cardinality: 0..1 + type: integer + format: uint8 + cellIdNei: + # description': E-UTRAN Cell Identity of the best neighbouring cell (NCell) associated with the SCell, as defined in ETSI TS 136 331 [i.7]. + $ref: '#/components/schemas/CellId' + # x-etsi-mec-origin-type': CellId + # x-etsi-mec-cardinality': 0..1 + rsrpNei: + description: "Reference Signal Received Power as defined in ETSI TS\_136 214 [i.5]." + x-etsi-mec-origin-type: Uint8 + x-etsi-mec-cardinality: 0..1 + type: integer + format: uint8 + rsrpNeiEx: + description: Extended Reference Signal Received Power, with value mapping defined in ETSI TS 136 133 [i.16]. + x-etsi-mec-origin-type: Uint8 + x-etsi-mec-cardinality: 0..1 + type: integer + format: uint8 + rsrqNei: + description: "Reference Signal Received Quality as defined in ETSI TS\_136 214 [i.5]." + x-etsi-mec-origin-type: Uint8 + x-etsi-mec-cardinality: 0..1 + type: integer + format: uint8 + rsrqNeiEx: + description: Extended Reference Signal Received Quality, with value mapping defined in ETSI TS 136 133 [i.16]. + x-etsi-mec-origin-type: Uint8 + x-etsi-mec-cardinality: 0..1 + type: integer + format: uint8 + sinrNei: + description: "Reference Signal \"Signal to Interference plus Noise Ratio\", with value mapping defined in ETSI TS\_136\_133\_[i.16]." + x-etsi-mec-origin-type: Uint8 + x-etsi-mec-cardinality: 0..1 + type: integer + format: uint8 + required: + - cellIdSrv + NrSCellInfo: + description: Secondary serving cell(s) info. + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: 1..N + type: object + minItems: 1 + properties: + nrSCellPlmn: + description: Public land mobile network identities. + x-etsi-mec-origin-type: Plmn + x-etsi-mec-cardinality: 1..N + type: array + minItems: 1 + items: + $ref: '#/components/schemas/Plmn' + nrSCellGId: + # description': Cell Global Identifier, as defined in ETSI TS 138 331 [i.13]. + $ref: '#/components/schemas/NrCellId' + # x-etsi-mec-origin-type': NrCellId + # x-etsi-mec-cardinality': '1' + required: + - nrSCellPlmn + - nrSCellGId + NrSCs: + description: Measurement quantities concerning the secondary serving cells. + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: '1' + type: object + properties: + nrSCellInfo: + type: array + items: + $ref: '#/components/schemas/NrSCellInfo' + nrSCellRsrp: + description: Reference Signal Received Power measurement according to mapping table in ETSI TS 138 133 [i.14]. + x-etsi-mec-origin-type: Uint8 + x-etsi-mec-cardinality: 0..1 + type: integer + format: uint8 + nrSCellRsrq: + description: Reference Signal Received Quality measurement according to mapping table in ETSI TS 138 133 [i.14]. + x-etsi-mec-origin-type: Uint8 + x-etsi-mec-cardinality: 0..1 + type: integer + format: uint8 + nrSCellRssi: + description: Reference signal SINR measurement according to mapping table in ETSI TS 138 133 [i.14]. + x-etsi-mec-origin-type: Uint8 + x-etsi-mec-cardinality: 0..1 + type: integer + format: uint8 + required: + - nrSCellInfo + NrBNCellInfo: + description: Best neighbours of the secondary serving cell(s) info. + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: 1..N + type: object + minItems: 1 + properties: + nrBNCellPlmn: + description: Public land mobile network identities. + x-etsi-mec-origin-type: Plmn + x-etsi-mec-cardinality: 1..N + type: array + minItems: 1 + items: + $ref: '#/components/schemas/Plmn' + nrBNCellGId: + # description': Cell Global Identifier, as defined in ETSI TS 138 331 [i.13]. + $ref: '#/components/schemas/NrCellId' + # x-etsi-mec-origin-type': NrCellId + # x-etsi-mec-cardinality': '1' + required: + - nrBNCellPlmn + - nrBNCellGId + NrBNCs: + description: Measurement quantities concerning the best neighbours of the secondary serving cells. + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: 0..1 + type: object + properties: + nrBNCellInfo: + type: array + items: + $ref: '#/components/schemas/NrBNCellInfo' + nrBNCellRsrp: + description: Reference Signal Received Power measurement according to mapping table in ETSI TS 138 133 [i.14]. + x-etsi-mec-origin-type: Uint8 + x-etsi-mec-cardinality: 0..1 + type: integer + format: uint8 + nrBNCellRsrq: + description: Reference Signal Received Quality measurement according to mapping table in ETSI TS 138 133 [i.14]. + x-etsi-mec-origin-type: Uint8 + x-etsi-mec-cardinality: 0..1 + type: integer + format: uint8 + nrBNCellRssi: + description: Reference signal SINR measurement according to mapping table in ETSI TS 138 133 [i.14]. + x-etsi-mec-origin-type: Uint8 + x-etsi-mec-cardinality: 0..1 + type: integer + format: uint8 + required: + - nrBNCellInfo + NewRadioMeasInfo: + description: 5G New Radio secondary serving cells measurement information. + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: 0..N + type: object + minItems: 0 + properties: + nrCarrierFreq: + description: "ARFCN applicable for a downlink, uplink or bi-directional (TDD) NR carrier frequency, as defined in ETSI TS\_138\_101 [i.15]." + x-etsi-mec-origin-type: Uint32 + x-etsi-mec-cardinality: '1' + type: integer + format: uint32 + nrSCs: + $ref: '#/components/schemas/NrSCs' + nrBNCs: + $ref: '#/components/schemas/NrBNCs' + required: + - nrCarrierFreq + - nrSCs + NrNCellInfo: + description: 5G NR neighbour cell info. + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: 1..N + type: object + minItems: 1 + properties: + nrNCellPlmn: + description: Public land mobile network identities. + x-etsi-mec-origin-type: Plmn + x-etsi-mec-cardinality: 1..N + type: array + minItems: 1 + items: + $ref: '#/components/schemas/Plmn' + nrNCellGId: + # description': Cell Global Identifier, as defined in ETSI TS 138 331 [i.13]. + $ref: '#/components/schemas/NrCellId' + # x-etsi-mec-origin-type': NrCellId + # x-etsi-mec-cardinality': '1' + required: + - nrNCellPlmn + - nrNCellGId + NewRadioMeasNeiInfo: + description: Measurement quantities concerning the 5G NR neighbours. + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: 0..N + type: object + minItems: 0 + properties: + nrNCellInfo: + type: array + items: + $ref: '#/components/schemas/NrNCellInfo' + nrNCellRsrp: + description: Reference Signal Received Power measurement according to mapping table in ETSI TS 138 133 [i.14]. + x-etsi-mec-origin-type: Uint8 + x-etsi-mec-cardinality: 0..1 + type: integer + format: uint8 + nrNCellRsrq: + description: Reference Signal Received Quality measurement according to mapping table in ETSI TS 138 133 [i.14]. + x-etsi-mec-origin-type: Uint8 + x-etsi-mec-cardinality: 0..1 + type: integer + format: uint8 + nrNCellRssi: + description: Reference signal SINR measurement according to mapping table in ETSI TS 138 133 [i.14]. + x-etsi-mec-origin-type: Uint8 + x-etsi-mec-cardinality: 0..1 + type: integer + format: uint8 + rsIndexResults: + # description': Beam level measurements results of a NR cell. + $ref: '#/components/schemas/RsIndexResults' + # x-etsi-mec-origin-type': RsIndexResults + # x-etsi-mec-cardinality': 0..1 + required: + - nrNCellInfo + SecondaryCellAdd: + description: '' + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: 0..N + type: object + minItems: 0 + properties: + ecgi: + # description': E-UTRAN Cell Global Identifier. + $ref: '#/components/schemas/Ecgi' + # x-etsi-mec-origin-type': Ecgi + # x-etsi-mec-cardinality': '1' + required: + - ecgi + SecondaryCellRemove: + description: '' + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: 0..N + type: object + minItems: 0 + properties: + ecgi: + # description': E-UTRAN Cell Global Identifier. + $ref: '#/components/schemas/Ecgi' + # x-etsi-mec-origin-type': Ecgi + # x-etsi-mec-cardinality': '1' + required: + - ecgi + CarrierAggregationMeasInfo1: + description: This parameter can be repeated to contain information of all the carriers assign for Carrier Aggregation up to N. + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: 0..N + type: object + minItems: 0 + properties: + cellIdSrv: + # description': E-UTRAN Cell Identity of a Carrier Aggregation serving cell. + $ref: '#/components/schemas/CellId' + # x-etsi-mec-origin-type': CellId + # x-etsi-mec-cardinality': '1' + rsrpSrv: + description: "Reference Signal Received Power as defined in ETSI TS\_136 214 [i.5]." + x-etsi-mec-origin-type: Uint32 + x-etsi-mec-cardinality: 0..1 + type: integer + format: uint32 + rsrqSrv: + description: Reference Signal Received Quality as defined in ETSI TS 136 214 [i.5]. + x-etsi-mec-origin-type: Uint32 + x-etsi-mec-cardinality: 0..1 + type: integer + format: uint32 + cellIdNei: + # description': E-UTRAN Cell Identity of the best neighbouring cell associated with the Carrier Aggregation serving cell. + $ref: '#/components/schemas/CellId' + # x-etsi-mec-origin-type': CellId + # x-etsi-mec-cardinality': '1' + rsrpNei: + description: "Reference Signal Received Power as defined in ETSI TS\_136 214 [i.5]." + x-etsi-mec-origin-type: Uint32 + x-etsi-mec-cardinality: 0..1 + type: integer + format: uint32 + rsrqNei: + description: Reference Signal Received Quality as defined in ETSI TS 136 214 [i.5]. + x-etsi-mec-origin-type: Uint32 + x-etsi-mec-cardinality: 0..1 + type: integer + format: uint32 + required: + - cellIdSrv + - cellIdNei + _links2: + description: List of hyperlinks related to the resource. + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: '1' + type: object + properties: + subscription: + # description': URI identifying the subscription which has expired. + $ref: '#/components/schemas/LinkType' + # x-etsi-mec-origin-type': LinkType + # x-etsi-mec-cardinality': '1' + required: + - subscription + S1UeInfo1: + description: Information on specific UE that matches the criteria in S1BearerSubscription as defined below. + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: '1' + type: object + properties: + tempUeId: + $ref: '#/components/schemas/TempUeId' + associateId: + description: 0 to N identifiers to associate the information for a specific UE or flow. + x-etsi-mec-origin-type: AssociateId + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + $ref: '#/components/schemas/AssociateId' + ecgi: + description: E-UTRAN Cell Global Identifier. + x-etsi-mec-origin-type: Ecgi + x-etsi-mec-cardinality: 1..N + type: array + minItems: 1 + items: + $ref: '#/components/schemas/Ecgi' + s1BearerInfo: + type: array + items: + $ref: '#/components/schemas/S1BearerInfo' + required: + - ecgi + - s1BearerInfo + SCell: + description: Measurement information relating to this serving cell. + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: '1' + type: object + properties: + measQuantityResultsSsbCell: + # description': Measurement quantity results relating to the Synchronization Signal Block. + $ref: '#/components/schemas/MeasQuantityResultsNr' + # x-etsi-mec-origin-type': MeasQuantityResultsNr + # x-etsi-mec-cardinality': 0..1 + measQuantityResultsCsiRsCell: + # description': Measurement quantity results relating to the Channel State Information Reference Signal. + $ref: '#/components/schemas/MeasQuantityResultsNr' + # x-etsi-mec-origin-type': MeasQuantityResultsNr + # x-etsi-mec-cardinality': 0..1 + rsIndexResults: + # description': Beam level measurement information + $ref: '#/components/schemas/RsIndexResults' + # x-etsi-mec-origin-type': RsIndexResults + # x-etsi-mec-cardinality': 0..1 + NCell: + description: Measurement information relating to the best neighbour of this serving cell. + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: 0..1 + type: object + properties: + measQuantityResultsSsbCell: + # description': Measurement quantity results relating to the Synchronization Signal Block. + $ref: '#/components/schemas/MeasQuantityResultsNr' + # x-etsi-mec-origin-type': MeasQuantityResultsNr + # x-etsi-mec-cardinality': 0..1 + measQuantityResultsCsiRsCell: + # description': Measurement quantity results relating to the Channel State Information Reference Signal. + $ref: '#/components/schemas/MeasQuantityResultsNr' + # x-etsi-mec-origin-type': MeasQuantityResultsNr + # x-etsi-mec-cardinality': 0..1 + rsIndexResults: + # description': Beam level measurement information + $ref: '#/components/schemas/RsIndexResults' + # x-etsi-mec-origin-type': RsIndexResults + # x-etsi-mec-cardinality': 0..1 + ServCellMeasInfo: + description: This parameter can be repeated to contain information of all the serving cells up to N. + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: 0..N + type: object + minItems: 0 + properties: + nrcgi: + # description': NR Cell Global Identifier. + $ref: '#/components/schemas/Nrcgi' + # x-etsi-mec-origin-type': Nrcgi + # x-etsi-mec-cardinality': '1' + sCell: + $ref: '#/components/schemas/SCell' + nCell: + $ref: '#/components/schemas/NCell' + required: + - nrcgi + - sCell + NrNeighCellMeasInfo: + description: This parameter can be repeated to contain measurement information of all the neighbouring cells up to N. It shall not be included if eutraNeighCellMeasInfo is included. + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: 0..N + type: object + minItems: 0 + properties: + nrcgi: + # description': NR Cell Global Identifier. + $ref: '#/components/schemas/Nrcgi' + # x-etsi-mec-origin-type': Nrcgi + # x-etsi-mec-cardinality': '1' + measQuantityResultsSsbCell: + # description': Measurement quantity results relating to the Synchronization Signal Block of the neighbouring cells. + $ref: '#/components/schemas/MeasQuantityResultsNr' + # x-etsi-mec-origin-type': MeasQuantityResultsNr + # x-etsi-mec-cardinality': 0..1 + measQuantityResultsCsiRsCell: + # description': Measurement quantity results relating to the Channel State Information Reference Signal of the neighbouring cells. + $ref: '#/components/schemas/MeasQuantityResultsNr' + # x-etsi-mec-origin-type': MeasQuantityResultsNr + # x-etsi-mec-cardinality': 0..1 + rsIndexResults: + # description': Beam level measurement information. + $ref: '#/components/schemas/RsIndexResults' + # x-etsi-mec-origin-type': RsIndexResults + # x-etsi-mec-cardinality': 0..1 + required: + - nrcgi + EutraNeighCellMeasInfo: + description: This parameter can be repeated to contain measurement information of all the neighbouring cells up to N. It shall not be included if nrNeighCellMeasInfo is included. + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: 0..N + type: object + minItems: 0 + properties: + ecgi: + # description': E-UTRAN Cell Global Identifier. + $ref: '#/components/schemas/Ecgi' + # x-etsi-mec-origin-type': Ecgi + # x-etsi-mec-cardinality': '1' + rsrp: + description: "Reference Signal Received Power as defined in ETSI TS\_138 331 [i.13]." + x-etsi-mec-origin-type: Uint8 + x-etsi-mec-cardinality: 0..1 + type: integer + format: uint8 + rsrq: + description: Reference Signal Received Quality as defined in ETSI TS 138 331 [i.13]. + x-etsi-mec-origin-type: Uint8 + x-etsi-mec-cardinality: 0..1 + type: integer + format: uint8 + sinr: + description: "Reference Signal plus Interference Noise Ratio as defined in ETSI TS\_138\_331\_[i.13]." + x-etsi-mec-origin-type: Uint8 + x-etsi-mec-cardinality: 0..1 + type: integer + format: uint8 + required: + - ecgi + _links3: + description: 'Hyperlink related to the resource. ' + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: '1' + type: object + properties: + subscription: + # description': URI identifying the subscription for the test notification. + $ref: '#/components/schemas/LinkType' + # x-etsi-mec-origin-type': LinkType + # x-etsi-mec-cardinality': '1' + required: + - subscription + ResultsPerSsbIndex: + description: '' + x-etsi-mec-origin-type: Structure (inline) + x-etsi-mec-cardinality: 0..N + type: object + minItems: 0 + properties: + ssbIndex: + description: '' + x-etsi-mec-origin-type: Uint8 + x-etsi-mec-cardinality: '1' + type: integer + format: uint8 + ssbResults: + # description': '' + $ref: '#/components/schemas/MeasQuantityResultsNr' + # x-etsi-mec-origin-type': MeasQuantityResultsNr + # x-etsi-mec-cardinality': 0..1 + required: + - ssbIndex + ResultsPerCsiRsIndex: + description: '' + x-etsi-mec-origin-type: Structure (inline) + x-etsi-mec-cardinality: 0..N + type: object + minItems: 0 + properties: + csiRsIndex: + description: '' + x-etsi-mec-origin-type: Uint8 + x-etsi-mec-cardinality: '1' + type: integer + format: uint8 + csiRsResults: + # description': '' + $ref: '#/components/schemas/MeasQuantityResultsNr' + # x-etsi-mec-origin-type': MeasQuantityResultsNr + # x-etsi-mec-cardinality': 0..1 + required: + - csiRsIndex + responses: + '200': + description: OK + '204': + description: No Content + '400': + description: 'Bad Request: used to indicate that incorrect parameters were passed to the request.' + content: + application/problem+json: + schema: + $ref: '#/components/schemas/ProblemDetails' + '401': + description: 'Unauthorized: used when the client did not submit credentials.' + content: + application/problem+json: + schema: + $ref: '#/components/schemas/ProblemDetails' + '403': + description: 'Forbidden: operation is not allowed given the current status of the resource.' + content: + application/problem+json: + schema: + $ref: '#/components/schemas/ProblemDetails' + '404': + description: 'Not Found: used when a client provided a URI that cannot be mapped to a valid resource URI.' + content: + application/problem+json: + schema: + $ref: '#/components/schemas/ProblemDetails' + '406': + description: 'Not Acceptable: used to indicate that the server cannot provide the any of the content formats supported by the client.' + content: + application/problem+json: + schema: + $ref: '#/components/schemas/ProblemDetails' + '412': + description: 'Precondition failed: used when a condition has failed during conditional requests, e.g. when using ETags to avoid write conflicts when using PUT' + content: + application/problem+json: + schema: + $ref: '#/components/schemas/ProblemDetails' + '414': + description: 'URI Too Long: used to indicate that the server is refusing to process the request because the request URI is longer than the server is willing or able to process.' + content: + application/problem+json: + schema: + $ref: '#/components/schemas/ProblemDetails' + '415': + description: 'Unsupported Media Type: used to indicate that the server or the client does not support the content type of the entity body.' + content: + application/problem+json: + schema: + $ref: '#/components/schemas/ProblemDetails' + '422': + description: 'Unprocessable Entity: used to indicate that the server understands the content type of the request entity and that the syntax of the request entity is correct but that the server is unable to process the contained instructions. This error condition can occur if an JSON request body is syntactically correct but semantically incorrect, for example if the target area for the request is considered too large. This error condition can also occur if the capabilities required by the request are not supported.' + content: + application/problem+json: + schema: + $ref: '#/components/schemas/ProblemDetails' + '429': + description: 'Too Many Requests: used when a rate limiter has triggered.' + content: + application/problem+json: + schema: + $ref: '#/components/schemas/ProblemDetails' + parameters: + Query.App_ins_id: + description: Comma separated list of application instance identifiers. + name: app_ins_id + cardinality: 0..1 + in: query + required: false + x-exportParamName: Query.App_ins_id + schema: + type: string + Query.Cell_id: + description: Comma separated list of E-UTRAN Cell Identities. + name: cell_id + cardinality: 0..N + in: query + required: false + x-exportParamName: Query.Cell_id + schema: + $ref: '#/components/schemas/CellId' + Query.Ue_ipv4_address: + description: Comma separated list of IE IPv4 addresses as defined for the type for AssociateId in clause 6.5.4. + name: ue_ipv4_address + cardinality: 0..N + in: query + required: false + x-exportParamName: Query.Ue_ipv4_address + schema: + type: array + items: + type: string + Query.Ue_ipv6_address: + description: Comma separated list of IE IPv6 addresses as defined for the type for AssociateId in clause 6.5.4. + name: ue_ipv6_address + cardinality: 0..N + in: query + required: false + x-exportParamName: Query.Ue_ipv6_address + schema: + type: array + items: + type: string + Query.Nated_ip_address: + description: Comma separated list of NATed IP addresses as defined for the type for AssociateId in clause 6.5.4. + name: nated_ip_address + cardinality: 0..N + in: query + required: false + x-exportParamName: Query.Nated_ip_address + schema: + type: array + items: + type: string + Query.Gtp_teid: + description: Comma separated list of GTP TEID addresses as defined for the type for AssociateId in clause 6.5.4. + name: gtp_teid + cardinality: 0..N + in: query + required: false + x-exportParamName: Query.Gtp_teid + schema: + type: array + items: + type: string + Query.Erab_id: + description: E-RAB identifier. + name: erab_id + cardinality: 0..1 + in: query + required: false + x-exportParamName: Query.Erab_id + schema: + type: integer + Query.Qci: + description: QoS Class Identifier as defined in ETSI TS 123 401 [i.4]. + name: qci + cardinality: 0..1 + in: query + required: false + x-exportParamName: Query.Qci + schema: + type: integer + Query.Erab_mbr_dl: + description: "Maximum downlink E-RAB Bit Rate as defined in ETSI TS\_123\_401 [i.4]." + name: erab_mbr_dl + cardinality: 0..1 + in: query + required: false + x-exportParamName: Query.Erab_mbr_dl + schema: + type: integer + Query.Erab_mbr_ul: + description: "Maximum uplink E-RAB Bit Rate as defined in ETSI TS\_123\_401\_[i.4]." + name: erab_mbr_ul + cardinality: 0..1 + in: query + required: false + x-exportParamName: Query.Erab_mbr_ul + schema: + type: integer + Query.Erab_gbr_dl: + description: "Guaranteed downlink E-RAB Bit Rate as defined in ETSI TS\_123\_401 [i.4]." + name: erab_gbr_dl + cardinality: 0..1 + in: query + required: false + x-exportParamName: Query.Erab_gbr_dl + schema: + type: integer + Query.Erab_gbr_ul: + description: "Guaranteed uplink E-RAB Bit Rate as defined in ETSI TS\_123\_401 [i.4]." + name: erab_gbr_ul + cardinality: 0..1 + in: query + required: false + x-exportParamName: Query.Erab_gbr_ul + schema: + type: integer + Query.App_ins_id1: + description: Comma separated list of application instance identifiers. + name: app_ins_id + cardinality: 1..N + in: query + required: true + x-exportParamName: Query.App_ins_id1 + schema: + type: array + items: + type: string + Query.Temp_ue_id: + description: Comma separated list of temporary identifiers allocated for the specific UEs as defined in ETSI TS 136 413 [i.3]. + name: temp_ue_id + cardinality: 0..N + in: query + required: false + x-exportParamName: Query.Temp_ue_id + schema: + type: array + items: + type: string + Query.Erab_id1: + description: Comma separated list of E-RAB identifiers. + name: erab_id + cardinality: 0..N + in: query + required: false + x-exportParamName: Query.Erab_id1 + schema: + type: array + items: + type: integer + Query.Cell_id1: + description: "Comma separated list of E-UTRAN Cell Identities each defined as a bit string (size (28)), as defined in ETSI TS\_136\_413 [i.3]." + name: cell_id + cardinality: 0..N + in: query + required: false + x-exportParamName: Query.Cell_id1 + schema: + type: array + items: + type: string + Query.Dl_gbr_prb_usage_cell: + description: "It indicates the PRB usage for downlink GBR traffic, as defined in ETSI TS 136 314 [i.11] and ETSI TS\_136\_423\_[i.12]." + name: dl_gbr_prb_usage_cell + cardinality: 0..1 + in: query + required: false + x-exportParamName: Query.Dl_gbr_prb_usage_cell + schema: + type: integer (0..100) + Query.Ul_gbr_prb_usage_cell: + description: "It indicates (in percentage) the PRB usage for uplink GBR traffic, as defined in ETSI TS 136 314 [i.11] and ETSI TS\_136\_423\_[i.12]." + name: ul_gbr_prb_usage_cell + cardinality: 0..1 + in: query + required: false + x-exportParamName: Query.Ul_gbr_prb_usage_cell + schema: + type: integer (0..100) + Query.Dl_nongbr_prb_usage_cell: + description: It indicates (in percentage) the PRB usage for downlink nonGBR traffic, as defined in ETSI TS 136 314 [i.11] and ETSI TS 136 423 [i.12]. + name: dl_nongbr_prb_usage_cell + cardinality: 0..1 + in: query + required: false + x-exportParamName: Query.Dl_nongbr_prb_usage_cell + schema: + type: integer (0..100) + Query.Ul_nongbr_prb_usage_cell: + description: "It indicates (in percentage) the PRB usage for uplink nonGBR traffic, as defined in ETSI TS 136 314 [i.11] and ETSI TS\_136\_423 [i.12]." + name: ul_nongbr_prb_usage_cell + cardinality: 0..1 + in: query + required: false + x-exportParamName: Query.Ul_nongbr_prb_usage_cell + schema: + type: integer (0..100) + Query.Dl_total_prb_usage_cell: + description: "It indicates (in percentage) the PRB usage for total downlink traffic, as defined in ETSI TS 136 314 [i.11] and ETSI TS\_136\_423 [i.12]." + name: dl_total_prb_usage_cell + cardinality: 0..1 + in: query + required: false + x-exportParamName: Query.Dl_total_prb_usage_cell + schema: + type: integer (0..100) + Query.Ul_total_prb_usage_cell: + description: "It indicates (in percentage) the PRB usage for total uplink traffic, as defined in ETSI TS 136 314 [i.11] and \nETSI\_TS\_136\_423 [i.12]." + name: ul_total_prb_usage_cell + cardinality: 0..1 + in: query + required: false + x-exportParamName: Query.Ul_total_prb_usage_cell + schema: + type: integer (0..100) + Query.Received_dedicated_preambles_cell: + description: It indicates (in percentage) the received dedicated preamples, as defined in ETSI TS 136 314 [i.11]. + name: received_dedicated_preambles_cell + cardinality: 0..1 + in: query + required: false + x-exportParamName: Query.Received_dedicated_preambles_cell + schema: + type: integer (0..100) + Query.Received_randomly_selecte_preambles_low_range_cell: + description: "It indicates (in percentage) the received randomly selected preambles in the low range, as defined in ETSI TS\_136\_314\_[i.11]." + name: received_randomly_selecte_preambles_low_range_cell + cardinality: 0..1 + in: query + required: false + x-exportParamName: Query.Received_randomly_selecte_preambles_low_range_cell + schema: + type: integer (0..100) + Query.Received_randomly_selected_preambles_high_range_cell: + description: "It indicates (in percentage) the received randomly selected preambles in the high range, as defined in ETSI TS\_136\_314\_[i.11]." + name: received_randomly_selected_preambles_high_range_cell + cardinality: 0..1 + in: query + required: false + x-exportParamName: Query.Received_randomly_selected_preambles_high_range_cell + schema: + type: integer (0..100) + Query.Number_of_active_ue_dl_gbr_cell: + description: It indicates the number of active UEs with downlink GBR traffic, as defined in ETSI TS 136 314 [i.11]. + name: number_of_active_ue_dl_gbr_cell + cardinality: 0..1 + in: query + required: false + x-exportParamName: Query.Number_of_active_ue_dl_gbr_cell + schema: + type: integer + Query.Number_of_active_ue_ul_gbr_cell: + description: It indicates the number of active UEs with uplink GBR traffic, as defined in ETSI TS 136 314 [i.11]. + name: number_of_active_ue_ul_gbr_cell + cardinality: 0..1 + in: query + required: false + x-exportParamName: Query.Number_of_active_ue_ul_gbr_cell + schema: + type: integer + Query.Number_of_active_ue_dl_nongbr_cell: + description: It indicates the number of active UEs with downlink non-GBR traffic, as defined in ETSI TS 136 314 [i.11]. + name: number_of_active_ue_dl_nongbr_cell + cardinality: 0..1 + in: query + required: false + x-exportParamName: Query.Number_of_active_ue_dl_nongbr_cell + schema: + type: integer + Query.Number_of_active_ue_ul_nongbr_cell: + description: It indicates the number of active UEs with uplink non-GBR traffic, as defined in ETSI TS 136 314 [i.11]. + name: number_of_active_ue_ul_nongbr_cell + cardinality: 0..1 + in: query + required: false + x-exportParamName: Query.Number_of_active_ue_ul_nongbr_cell + schema: + type: integer + Query.Dl_gbr_pdr_cell: + description: "It indicates the packet discard rate in percentage of the downlink GBR traffic in a cell, as defined in ETSI TS\_136\_314\_[i.11]." + name: dl_gbr_pdr_cell + cardinality: 0..1 + in: query + required: false + x-exportParamName: Query.Dl_gbr_pdr_cell + schema: + type: integer (0..100) + Query.Ul_gbr_pdr_cell: + description: It indicates the packet discard rate in percentage of the uplink GBR traffic in a cell, as defined in ETSI TS 136 314 [i.11]. + name: ul_gbr_pdr_cell + cardinality: 0..1 + in: query + required: false + x-exportParamName: Query.Ul_gbr_pdr_cell + schema: + type: integer (0..100) + Query.Dl_nongbr_pdr_cell: + description: "It indicates the packet discard rate in percentage of the downlink non-GBR traffic in a cell, as defined in ETSI TS\_136\_314 [i.11]." + name: dl_nongbr_pdr_cell + cardinality: 0..1 + in: query + required: false + x-exportParamName: Query.Dl_nongbr_pdr_cell + schema: + type: integer (0..100) + Query.Ul_nongbr_pdr_cell: + description: It indicates the packet discard rate in percentage of the uplink non-GBR traffic in a cell, as defined in ETSI TS 136 314 [i.11]. + name: ul_nongbr_pdr_cell + cardinality: 0..1 + in: query + required: false + x-exportParamName: Query.Ul_nongbr_pdr_cell + schema: + type: integer (0..100) + Query.Dl_gbr_delay_ue: + description: It indicates the packet delay of the downlink GBR traffic of a UE, as defined in ETSI TS 136 314 [i.11]. + name: dl_gbr_delay_ue + cardinality: 0..1 + in: query + required: false + x-exportParamName: Query.Dl_gbr_delay_ue + schema: + type: integer + Query.Ul_gbr_delay_ue: + description: It indicates the packet delay of the uplink GBR traffic of a UE, as defined in ETSI TS 136 314 [i.11]. + name: ul_gbr_delay_ue + cardinality: 0..1 + in: query + required: false + x-exportParamName: Query.Ul_gbr_delay_ue + schema: + type: integer + Query.Dl_nongbr_delay_ue: + description: It indicates the packet delay of the downlink non-GBR traffic of a UE, as defined in ETSI TS 136 314 [i.11]. + name: dl_nongbr_delay_ue + cardinality: 0..1 + in: query + required: false + x-exportParamName: Query.Dl_nongbr_delay_ue + schema: + type: integer + Query.Ul_nongbr_delay_ue: + description: It indicates the packet delay of the uplink non-GBR traffic of a UE, as defined in ETSI TS 136 314 [i.11]. + name: ul_nongbr_delay_ue + cardinality: 0..1 + in: query + required: false + x-exportParamName: Query.Ul_nongbr_delay_ue + schema: + type: integer + Query.Dl_gbr_pdr_ue: + description: "It indicates the packet discard rate in percentage of the downlink GBR traffic of a UE, as defined in ETSI TS\_136\_314\_[i.11]." + name: dl_gbr_pdr_ue + cardinality: 0..1 + in: query + required: false + x-exportParamName: Query.Dl_gbr_pdr_ue + schema: + type: integer (0..100) + Query.Ul_gbr_pdr_ue: + description: It indicates the packet discard rate in percentage of the uplink GBR traffic of a UE, as defined in ETSI TS 136 314 [i.11]. + name: ul_gbr_pdr_ue + cardinality: 0..1 + in: query + required: false + x-exportParamName: Query.Ul_gbr_pdr_ue + schema: + type: integer (0..100) + Query.Dl_nongbr_pdr_ue: + description: "It indicates the packet discard rate in percentage of the downlink non-GBR traffic of a UE, as defined in ETSI TS\_136\_314 [i.11]." + name: dl_nongbr_pdr_ue + cardinality: 0..1 + in: query + required: false + x-exportParamName: Query.Dl_nongbr_pdr_ue + schema: + type: integer (0..100) + Query.Ul_nongbr_pdr_ue: + description: It indicates the packet discard rate in percentage of the uplink non-GBR traffic of a UE, as defined in ETSI TS 136 314 [i.11]. + name: ul_nongbr_pdr_ue + cardinality: 0..1 + in: query + required: false + x-exportParamName: Query.Ul_nongbr_pdr_ue + schema: + type: integer (0..100) + Query.Dl_gbr_throughput_ue: + description: It indicates the scheduled throughput of the downlink GBR traffic of a UE, as defined in ETSI TS 136 314 [i.11]. + name: dl_gbr_throughput_ue + cardinality: 0..1 + in: query + required: false + x-exportParamName: Query.Dl_gbr_throughput_ue + schema: + type: integer + Query.Ul_gbr_throughput_ue: + description: It indicates the scheduled throughput of the uplink GBR traffic of a UE, as defined in ETSI TS 136 314 [i.11]. + name: ul_gbr_throughput_ue + cardinality: 0..1 + in: query + required: false + x-exportParamName: Query.Ul_gbr_throughput_ue + schema: + type: integer + Query.Dl_nongbr_throughput_ue: + description: It indicates the scheduled throughput of the downlink non-GBR traffic of a UE, as defined in ETSI TS 136 314 [i.11]. + name: dl_nongbr_throughput_ue + cardinality: 0..1 + in: query + required: false + x-exportParamName: Query.Dl_nongbr_throughput_ue + schema: + type: integer + Query.Ul_nongbr_throughput_ue: + description: It indicates the scheduled throughput of the uplink non-GBR traffic of a UE, as defined in ETSI TS 136 314 [i.11]. + name: ul_nongbr_throughput_ue + cardinality: 0..1 + in: query + required: false + x-exportParamName: Query.Ul_nongbr_throughput_ue + schema: + type: integer + Query.Dl_gbr_data_volume_ue: + description: It indicates the data volume of the downlink GBR traffic of a UE, as defined in ETSI TS 136 314 [i.11]. + name: dl_gbr_data_volume_ue + cardinality: 0..1 + in: query + required: false + x-exportParamName: Query.Dl_gbr_data_volume_ue + schema: + type: integer + Query.Ul_gbr_data_volume_ue: + description: It indicates the data volume of the uplink GBR traffic of a UE, as defined in ETSI TS 136 314 [i.11]. + name: ul_gbr_data_volume_ue + cardinality: 0..1 + in: query + required: false + x-exportParamName: Query.Ul_gbr_data_volume_ue + schema: + type: integer + Query.Dl_nongbr_data_volume_ue: + description: It indicates the data volume of the downlink non-GBR traffic of a UE, as defined in ETSI TS 136 314 [i.11]. + name: dl_nongbr_data_volume_ue + cardinality: 0..1 + in: query + required: false + x-exportParamName: Query.Dl_nongbr_data_volume_ue + schema: + type: integer + Query.Ul_nongbr_data_volume_ue: + description: It indicates the data volume of the uplink non-GBR traffic of a UE, as defined in ETSI TS 136 314 [i.11]. + name: ul_nongbr_data_volume_ue + cardinality: 0..1 + in: query + required: false + x-exportParamName: Query.Ul_nongbr_data_volume_ue + schema: + type: integer + Query.Subscription_type: + description: "Query parameter to filter on a specific subscription type. Permitted values:\ncell_change\tCell Change \nrab_est\tRAB Establishment\nrab_mod\tRAB Modification\nrab_rel\tRAB Release\nmeas_rep_ue\tUE Measurement Report\nnr_meas_rep_ue\t5G UE Measurement Report\ntiming_advance_ue\tUE Timing Advance\nca_reconf\tCarrier Aggregation Reconfig\ns1_bearer\tS1 Bearer Notification ." + name: subscription_type + cardinality: 0..1 + in: query + required: false + x-exportParamName: Query.Subscription_type + schema: + type: string + diff --git a/Auto_Generated_OAS_Output_Files/gs_mec013v030101p.yaml b/Auto_Generated_OAS_Output_Files/gs_mec013v030101p.yaml new file mode 100644 index 0000000..0b55150 --- /dev/null +++ b/Auto_Generated_OAS_Output_Files/gs_mec013v030101p.yaml @@ -0,0 +1,3174 @@ +openapi: 3.1.0 +jsonSchemaDialect: https://json-schema.org/draft/2020-12/schema +info: + contact: + url: https://forge.etsi.org/rep/mec/gs013-location-api + title: ETSI GS MEC 013 Location API + version: 3.1.1 + description: The ETSI MEC ISG Location API described using OpenAPI. + license: + name: BSD-3-Clause + url: https://forge.etsi.org/legal-matters +paths: + /queries/users: + get: + description: The GET method is used to query location information about a specific UE or a group of UEs. + operationId: usersGET + tags: + - queries + parameters: + - $ref: '#/components/parameters/Query.Zoneid' + - $ref: '#/components/parameters/Query.Accesspointid' + - $ref: '#/components/parameters/Query.Address' + responses: + '200': + description: Upon success, a response body containing the list of user location information is returned. + content: + application/json: + schema: + type: object + properties: + UserList: + $ref: '#/components/schemas/UserList' + '400': + $ref: '#/components/responses/400' + '401': + $ref: '#/components/responses/401' + '403': + $ref: '#/components/responses/403' + '404': + $ref: '#/components/responses/404' + '406': + $ref: '#/components/responses/406' + '429': + $ref: '#/components/responses/429' + /subscriptions/users: + get: + description: The GET method is used to request information about the subscriptions for this requestor. Upon success, the response contains entity body with the list of links to the subscriptions that are present for the requestor. + operationId: usersGET + tags: + - subscriptions + parameters: + - $ref: '#/components/parameters/Query.Subscription_type' + - $ref: '#/components/parameters/Query.Address1' + responses: + '200': + description: Upon success, a response body containing the list of links to requestor's subscriptions is returned. + content: + application/json: + schema: + type: object + properties: + NotificationSubscriptionList: + $ref: '#/components/schemas/NotificationSubscriptionList' + '400': + $ref: '#/components/responses/400' + '401': + $ref: '#/components/responses/401' + '403': + $ref: '#/components/responses/403' + '404': + $ref: '#/components/responses/404' + '406': + $ref: '#/components/responses/406' + '429': + $ref: '#/components/responses/429' + post: + description: The POST method is used to create a new subscription to UE location notifications. Upon success, the response contains entity body describing the created subscription. + operationId: usersPOST + tags: + - subscriptions + requestBody: + description: 'The entity body in the request contains data type of the specific UE location event subscription that is to be created, where the data type options are listed below and defined in clauses 6.3.4 and 6.3.5: + + UserLocationEventSubscription. + + UserLocationPeriodicSubscription.' + content: + application/json: + schema: + type: object + properties: + UserLocationEventSubscription: + $ref: '#/components/schemas/UserLocationEventSubscription' + responses: + '201': + description: 'Indicates successful resource creation, where the resource URI shall be returned in the HTTP Location header field. + + + In the returned NotificationSubscription structure, the created subscription is described using the appropriate data type from the list below and as defined in clauses 6.3.4, and 6.3.5: + + UserLocationEventSubscription. + + UserLocationPeriodicSubscription.' + content: + application/json: + schema: + type: object + properties: + UserLocationEventSubscription: + $ref: '#/components/schemas/UserLocationEventSubscription' + '400': + $ref: '#/components/responses/400' + '401': + $ref: '#/components/responses/401' + '403': + $ref: '#/components/responses/403' + '404': + $ref: '#/components/responses/404' + '406': + $ref: '#/components/responses/406' + '415': + $ref: '#/components/responses/415' + '422': + $ref: '#/components/responses/422' + '429': + $ref: '#/components/responses/429' + callbacks: + notification: + post: + summary: Callback POST used to send a notification + description: Subscription notification + operationId: notificationPOST + requestBody: + description: Subscription notification + required: true + content: + application/json: + schema: + type: object + properties: + subscriptionNotification: + oneOf: + - $ref: '#/components/schemas/UserLocationEventSubscription' + - $ref: '#/components/schemas/UserLocationPeriodicSubscription' + /subscriptions/users/{subscriptionId}: + get: + description: The GET method is used to query the information about a specific access point under a zone. + operationId: usersByIdGET + tags: + - subscriptions + responses: + '200': + description: Upon success, a response body containing the access point information is returned. + content: + application/json: + schema: + type: object + properties: + AccessPointInfo: + $ref: '#/components/schemas/AccessPointInfo' + '400': + $ref: '#/components/responses/400' + '401': + $ref: '#/components/responses/401' + '403': + $ref: '#/components/responses/403' + '404': + $ref: '#/components/responses/404' + '406': + $ref: '#/components/responses/406' + '429': + $ref: '#/components/responses/429' + put: + description: The PUT method is used to update the existing subscription. PUT method in this case has "replace" semantics. Upon successful operation, the target resource is updated with new Data Type received within the message body of the PUT request. + operationId: usersByIdPUT + tags: + - subscriptions + requestBody: + description: 'New NotificationSubscription is included as entity body of the request. The allowed data types for subscriptions are defined in clauses 6.3.4 and 6.3.5: + + UserLocationEventSubscription. + + UserLocationPeriodicSubscription.' + content: + application/json: + schema: + type: object + properties: + UserLocationEventSubscription: + $ref: '#/components/schemas/UserLocationEventSubscription' + responses: + '200': + description: 'Upon success, a response body containing data type describing the updated subscription is returned. The allowed data types for subscriptions are defined in clauses 6.3.4 and 6.3.5: + + UserLocationEventSubscription. + + UserLocationPeriodicSubscription.' + content: + application/json: + schema: + type: object + properties: + UserLocationEventSubscription: + $ref: '#/components/schemas/UserLocationEventSubscription' + '400': + $ref: '#/components/responses/400' + '401': + $ref: '#/components/responses/401' + '403': + $ref: '#/components/responses/403' + '404': + $ref: '#/components/responses/404' + '406': + $ref: '#/components/responses/406' + '412': + $ref: '#/components/responses/412' + '422': + $ref: '#/components/responses/422' + '429': + $ref: '#/components/responses/429' + delete: + description: The DELETE method is used to cancel the existing subscription. Cancellation can be made by deleting the resource that represents existing subscription. + operationId: usersByIdDELETE + tags: + - subscriptions + responses: + '204': + $ref: '#/components/responses/204' + '401': + $ref: '#/components/responses/401' + '403': + $ref: '#/components/responses/403' + '404': + $ref: '#/components/responses/404' + '429': + $ref: '#/components/responses/429' + /subscriptions/zones: + get: + description: The GET method is used to request information about the subscriptions for this requestor. Upon success, the response contains entity body with the list of links to the subscriptions that are present for the requestor. + operationId: zonesGET + tags: + - subscriptions + parameters: + - $ref: '#/components/parameters/Query.Subscription_type1' + - $ref: '#/components/parameters/Query.Zoneid1' + responses: + '200': + description: Upon success, a response body containing the list of links to requestor's subscriptions is returned. + content: + application/json: + schema: + type: object + properties: + NotificationSubscriptionList: + $ref: '#/components/schemas/NotificationSubscriptionList' + '400': + $ref: '#/components/responses/400' + '401': + $ref: '#/components/responses/401' + '403': + $ref: '#/components/responses/403' + '404': + $ref: '#/components/responses/404' + '406': + $ref: '#/components/responses/406' + '429': + $ref: '#/components/responses/429' + post: + description: The POST method is used to create a new subscription to zone notifications. Upon success, the response contains entity body describing the created subscription. + operationId: zonesPOST + tags: + - subscriptions + requestBody: + description: 'The entity body in the request contains data type of the specific UE location event subscription that is to be created, where the data type options are listed below and defined in clauses 6.3.6 and 6.3.7: + + ZoneLocationEventSubscription. + + ZoneStatusSubscription.' + content: + application/json: + schema: + type: object + properties: + ZoneLocationEventSubscription: + $ref: '#/components/schemas/ZoneLocationEventSubscription' + responses: + '201': + description: 'Indicates successful resource creation, where the resource URI shall be returned in the HTTP Location header field. + + + In the returned NotificationSubscription structure, the created subscription is described using the appropriate data type from the list below and as defined in clauses 6.3.6 and 6.3.7: + + ZoneLocationEventSubscription. + + ZoneStatusSubscription.' + content: + application/json: + schema: + type: object + properties: + ZoneLocationEventSubscription: + $ref: '#/components/schemas/ZoneLocationEventSubscription' + '400': + $ref: '#/components/responses/400' + '401': + $ref: '#/components/responses/401' + '403': + $ref: '#/components/responses/403' + '404': + $ref: '#/components/responses/404' + '406': + $ref: '#/components/responses/406' + '415': + $ref: '#/components/responses/415' + '422': + $ref: '#/components/responses/422' + '429': + $ref: '#/components/responses/429' + callbacks: + notification: + post: + summary: Callback POST used to send a notification + description: Subscription notification + operationId: notificationPOST + requestBody: + description: Subscription notification + required: true + content: + application/json: + schema: + type: object + properties: + subscriptionNotification: + oneOf: + - $ref: '#/components/schemas/ZoneLocationEventSubscription' + - $ref: '#/components/schemas/ZoneStatusSubscription' + /subscriptions/zones/{subscriptionId}: + get: + description: The GET method is used to retrieve information about this subscription. Upon success, the response contains entity body with the data type describing the subscription. + operationId: zonesByIdGET + tags: + - subscriptions + responses: + '200': + description: 'Upon success, a response body containing data type describing the specific zone subscription is returned. The allowed data types for subscriptions are defined in clauses 6.3.6 and 6.3.7: + + ZoneLocationEventSubscription. + + ZoneStatusSubscription.' + content: + application/json: + schema: + type: object + properties: + ZoneLocationEventSubscription: + $ref: '#/components/schemas/ZoneLocationEventSubscription' + '400': + $ref: '#/components/responses/400' + '401': + $ref: '#/components/responses/401' + '403': + $ref: '#/components/responses/403' + '404': + $ref: '#/components/responses/404' + '406': + $ref: '#/components/responses/406' + '429': + $ref: '#/components/responses/429' + put: + description: The PUT method is used to update the existing subscription. PUT method in this case has "replace" semantics. Upon successful operation, the target resource is updated with new Data Type received within the message body of the PUT request. + operationId: zonesByIdPUT + tags: + - subscriptions + requestBody: + description: 'New NotificationSubscription is included as entity body of the request. The allowed data types for subscriptions are defined in clauses 6.3.6 and 6.3.7: + + ZoneLocationEventSubscription. + + ZoneStatusSubscription.' + content: + application/json: + schema: + type: object + properties: + ZoneLocationEventSubscription: + $ref: '#/components/schemas/ZoneLocationEventSubscription' + responses: + '200': + description: 'Upon success, a response body containing data type describing the updated subscription is returned. The allowed data types for subscriptions are defined in clauses 6.3.6 and 6.3.7: + + ZoneLocationEventSubscription. + + ZoneStatusSubscription.' + content: + application/json: + schema: + type: object + properties: + ZoneLocationEventSubscription: + $ref: '#/components/schemas/ZoneLocationEventSubscription' + '400': + $ref: '#/components/responses/400' + '401': + $ref: '#/components/responses/401' + '403': + $ref: '#/components/responses/403' + '404': + $ref: '#/components/responses/404' + '406': + $ref: '#/components/responses/406' + '412': + $ref: '#/components/responses/412' + '422': + $ref: '#/components/responses/422' + '429': + $ref: '#/components/responses/429' + delete: + description: The DELETE method is used to cancel the existing subscription. Cancellation can be made by deleting the resource that represents existing subscription. + operationId: zonesByIdDELETE + tags: + - subscriptions + responses: + '204': + $ref: '#/components/responses/204' + '401': + $ref: '#/components/responses/401' + '403': + $ref: '#/components/responses/403' + '404': + $ref: '#/components/responses/404' + '429': + $ref: '#/components/responses/429' + /queries/distance: + get: + description: The GET method is used to query information about distance from a user to a location or between two users. + operationId: distanceGET + tags: + - queries + parameters: + - $ref: '#/components/parameters/Query.Address2' + - $ref: '#/components/parameters/Query.Location' + responses: + '200': + description: Upon success, a response body containing the list of distance information is returned. + content: + application/json: + schema: + type: object + properties: + TerminalDistance: + $ref: '#/components/schemas/TerminalDistance' + '400': + $ref: '#/components/responses/400' + '401': + $ref: '#/components/responses/401' + '403': + $ref: '#/components/responses/403' + '404': + $ref: '#/components/responses/404' + '406': + $ref: '#/components/responses/406' + '429': + $ref: '#/components/responses/429' + /subscriptions/distance: + get: + description: The GET method is used to request information about the subscriptions for this requestor. Upon success, the response contains entity body with the list of links to the subscriptions that are present for the requestor. + operationId: distanceGET + tags: + - subscriptions + responses: + '200': + description: Upon success, a response body containing the list of links to requestor's subscriptions is returned. + content: + application/json: + schema: + type: object + properties: + NotificationSubscriptionList: + $ref: '#/components/schemas/NotificationSubscriptionList' + '400': + $ref: '#/components/responses/400' + '401': + $ref: '#/components/responses/401' + '403': + $ref: '#/components/responses/403' + '404': + $ref: '#/components/responses/404' + '406': + $ref: '#/components/responses/406' + '429': + $ref: '#/components/responses/429' + post: + description: The POST method is used to create a new subscription to user distance notifications. Upon success, the response contains entity body describing the created subscription. + operationId: distancePOST + tags: + - subscriptions + requestBody: + description: 'The entity body in the request contains data type of the user distance subscription that is to be created, where the data type options are listed below and defined in clauses 6.3.9: + + UserDistanceSubscription.' + content: + application/json: + schema: + type: object + properties: + UserDistanceSubscription: + $ref: '#/components/schemas/UserDistanceSubscription' + responses: + '201': + description: 'Indicates successful resource creation, where the resource URI shall be returned in the HTTP Location header field. + + + In the returned NotificationSubscription structure, the created subscription is described using the appropriate data type from the list below and as defined in clauses 6.3.9: + + UserDistanceSubscription.' + content: + application/json: + schema: + type: object + properties: + UserDistanceSubscription: + $ref: '#/components/schemas/UserDistanceSubscription' + '400': + $ref: '#/components/responses/400' + '401': + $ref: '#/components/responses/401' + '403': + $ref: '#/components/responses/403' + '404': + $ref: '#/components/responses/404' + '406': + $ref: '#/components/responses/406' + '415': + $ref: '#/components/responses/415' + '422': + $ref: '#/components/responses/422' + '429': + $ref: '#/components/responses/429' + callbacks: + notification: + post: + summary: Callback POST used to send a notification + description: Subscription notification + operationId: notificationPOST + requestBody: + description: Subscription notification + required: true + content: + application/json: + schema: + type: object + properties: + subscriptionNotification: + $ref: '#/components/schemas/UserDistanceSubscription' + /subscriptions/distance/{subscriptionId}: + get: + description: The GET method is used to retrieve information about this subscription. Upon success, the response contains entity body with the data type describing the subscription. + operationId: distanceByIdGET + tags: + - subscriptions + responses: + '200': + description: 'Upon success, a response body containing data type describing the specific distance event subscription is returned. The allowed data types for subscriptions are defined in clause 6.3.9: + + UserDistanceSubscription.' + content: + application/json: + schema: + type: object + properties: + UserDistanceSubscription: + $ref: '#/components/schemas/UserDistanceSubscription' + '400': + $ref: '#/components/responses/400' + '401': + $ref: '#/components/responses/401' + '403': + $ref: '#/components/responses/403' + '404': + $ref: '#/components/responses/404' + '406': + $ref: '#/components/responses/406' + '429': + $ref: '#/components/responses/429' + put: + description: The PUT method is used to update the existing subscription. PUT method in this case has "replace" semantics. Upon successful operation, the target resource is updated with new Data Type received within the message body of the PUT request. + operationId: distanceByIdPUT + tags: + - subscriptions + requestBody: + description: 'New NotificationSubscription is included as entity body of the request. The allowed data types for subscriptions are defined in clause 6.3.9: + + UserDistanceSubscription.' + content: + application/json: + schema: + type: object + properties: + UserDistanceSubscription: + $ref: '#/components/schemas/UserDistanceSubscription' + responses: + '200': + description: 'Upon success, a response body containing data type describing the updated subscription is returned. The allowed data types for subscriptions are defined in clause 6.3.9: + + UserDistanceSubscription.' + content: + application/json: + schema: + type: object + properties: + UserDistanceSubscription: + $ref: '#/components/schemas/UserDistanceSubscription' + '400': + $ref: '#/components/responses/400' + '401': + $ref: '#/components/responses/401' + '403': + $ref: '#/components/responses/403' + '404': + $ref: '#/components/responses/404' + '406': + $ref: '#/components/responses/406' + '412': + $ref: '#/components/responses/412' + '422': + $ref: '#/components/responses/422' + '429': + $ref: '#/components/responses/429' + delete: + description: The DELETE method is used to cancel the existing subscription. Cancellation can be made by deleting the resource that represents existing subscription. + operationId: distanceByIdDELETE + tags: + - subscriptions + responses: + '204': + $ref: '#/components/responses/204' + '401': + $ref: '#/components/responses/401' + '403': + $ref: '#/components/responses/403' + '404': + $ref: '#/components/responses/404' + '429': + $ref: '#/components/responses/429' + /subscriptions/area: + get: + description: The GET method is used to request information about the subscriptions for this requestor. Upon success, the response contains entity body with the list of links to the subscriptions that are present for the requestor. + operationId: areaGET + tags: + - subscriptions + parameters: + - $ref: '#/components/parameters/Query.Subscription_type2' + responses: + '200': + description: Upon success, a response body containing the list of links to requestor's subscriptions is returned. + content: + application/json: + schema: + type: object + properties: + NotificationSubscriptionList: + $ref: '#/components/schemas/NotificationSubscriptionList' + '400': + $ref: '#/components/responses/400' + '401': + $ref: '#/components/responses/401' + '403': + $ref: '#/components/responses/403' + '404': + $ref: '#/components/responses/404' + '406': + $ref: '#/components/responses/406' + '429': + $ref: '#/components/responses/429' + post: + description: The POST method is used to create a new subscription to area notifications. Upon success, the response contains entity body describing the created subscription. + operationId: areaPOST + tags: + - subscriptions + requestBody: + description: 'The entity body in the request contains data type of the specific UE location event subscription that is to be created, where the data type options are listed below and defined in clause 6.3.8: + + UserAreaNotification.' + content: + application/json: + schema: + type: object + properties: + UserAreaNotification: + $ref: '#/components/schemas/UserAreaNotification' + responses: + '201': + description: 'Indicates successful resource creation, where the resource URI shall be returned in the HTTP Location header field. + + + In the returned NotificationSubscription structure, the created subscription is described using the appropriate data type from the list below and as defined in clause 6.3.8: + + UserAreaNotification.' + content: + application/json: + schema: + type: object + properties: + UserAreaNotification: + $ref: '#/components/schemas/UserAreaNotification' + '400': + $ref: '#/components/responses/400' + '401': + $ref: '#/components/responses/401' + '403': + $ref: '#/components/responses/403' + '404': + $ref: '#/components/responses/404' + '406': + $ref: '#/components/responses/406' + '415': + $ref: '#/components/responses/415' + '422': + $ref: '#/components/responses/422' + '429': + $ref: '#/components/responses/429' + callbacks: + notification: + post: + summary: Callback POST used to send a notification + description: Subscription notification + operationId: notificationPOST + requestBody: + description: Subscription notification + required: true + content: + application/json: + schema: + type: object + properties: + subscriptionNotification: + $ref: '#/components/schemas/UserAreaNotification' + /subscriptions/area/{subscriptionId}: + get: + description: The GET method is used to retrieve information about this subscription. Upon success, the response contains entity body with the data type describing the subscription. + operationId: areaByIdGET + tags: + - subscriptions + responses: + '200': + description: "Upon success, a response body containing data type describing the specific zone subscription is returned. The allowed data types for subscriptions are defined in clause\_6.3.8:\nUserAreaNotification." + content: + application/json: + schema: + type: object + properties: + UserAreaNotification: + $ref: '#/components/schemas/UserAreaNotification' + '400': + $ref: '#/components/responses/400' + '401': + $ref: '#/components/responses/401' + '403': + $ref: '#/components/responses/403' + '404': + $ref: '#/components/responses/404' + '406': + $ref: '#/components/responses/406' + '429': + $ref: '#/components/responses/429' + put: + description: The PUT method is used to update the existing subscription. PUT method in this case has "replace" semantics. Upon successful operation, the target resource is updated with new Data Type received within the message body of the PUT request. + operationId: areaByIdPUT + tags: + - subscriptions + requestBody: + description: 'New NotificationSubscription is included as entity body of the request. The allowed data types for subscriptions are defined in clauses 6.3.8: + + UserAreaNotification.' + content: + application/json: + schema: + type: object + properties: + UserAreaNotification: + $ref: '#/components/schemas/UserAreaNotification' + responses: + '200': + description: 'Upon success, a response body containing data type describing the updated subscription is returned. The allowed data types for subscriptions are defined in clause 6.3.8: + + UserAreaNotification.' + content: + application/json: + schema: + type: object + properties: + UserAreaNotification: + $ref: '#/components/schemas/UserAreaNotification' + '400': + $ref: '#/components/responses/400' + '401': + $ref: '#/components/responses/401' + '403': + $ref: '#/components/responses/403' + '404': + $ref: '#/components/responses/404' + '406': + $ref: '#/components/responses/406' + '412': + $ref: '#/components/responses/412' + '422': + $ref: '#/components/responses/422' + '429': + $ref: '#/components/responses/429' + delete: + description: The DELETE method is used to cancel the existing subscription. Cancellation can be made by deleting the resource that represents existing subscription. + operationId: areaByIdDELETE + tags: + - subscriptions + responses: + '204': + $ref: '#/components/responses/204' + '401': + $ref: '#/components/responses/401' + '403': + $ref: '#/components/responses/403' + '404': + $ref: '#/components/responses/404' + '429': + $ref: '#/components/responses/429' +components: + schemas: + ProblemDetails: + type: object + properties: + type: + type: string + format: uri + description: A URI reference according to IETF RFC 3986 that identifies the problem type + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: URI + title: + type: string + description: A short, human-readable summary of the problem type + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: String + status: + type: integer + format: uint32 + description: The HTTP status code for this occurrence of the problem + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: Uint32 + detail: + type: string + description: A human-readable explanation specific to this occurrence of the problem + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: String + instance: + type: string + format: uri + description: A URI reference that identifies the specific occurrence of the problem + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: URI + LocationInfo1_: + properties: + accuracy: + type: integer + description: Horizontal accuracy / (semi-major) uncertainty of location provided in meters, as defined in [14]. Present only if "shape" equals 4, 5 or 6 + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: UnsignedInt + accuracyAltitude: + type: integer + description: Altitude accuracy / uncertainty of location provided in meters, as defined in [14]. Present only if "shape" equals 3 or 4 + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: UnsignedInt + accuracySemiMinor: + type: integer + description: Horizontal accuracy / (semi-major) uncertainty of location provided in meters, as defined in [14]. Present only if "shape" equals 4, 5 or 6 + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: UnsignedInt + altitude: + description: Location altitude relative to the WGS84 ellipsoid surface. + type: number + format: float + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: Float + confidence: + type: integer + description: Confidence by which the position of a target entity is known to be within the shape description, expressed as a percentage and defined in [14]. Present only if "shape" equals 1, 4 or 6 + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: UnsignedInt + includedAngle: + type: integer + description: Present only if "shape" equals 6 + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: UnsignedInt + innerRadius: + type: integer + description: Present only if "shape" equals 6 + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: UnsignedInt + latitude: + description: "Location latitude, expressed in the range -90\xB0 to +90\xB0. Cardinality greater than one only if \"shape\" equals 7." + type: array + items: + type: number + format: float + minItems: 1 + x-etsi-mec-cardinality: 1..N + x-etsi-mec-origin-type: Float + longitude: + description: "Location longitude, expressed in the range -180\xB0 to +180\xB0. Cardinality greater than one only if \"shape\" equals 7." + type: array + items: + type: number + format: float + minItems: 1 + x-etsi-mec-cardinality: 1..N + x-etsi-mec-origin-type: Float + offsetAngle: + type: integer + description: Present only if "shape" equals 6 + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: UnsignedInt + orientationMajorAxis: + type: integer + description: "Angle of orientation of the major axis, expressed in the range 0\xB0 to 180\xB0, as defined in [14]. Present only if \"shape\" equals 4 or 6" + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: UnsignedInt + shape: + description: 'Shape information, as detailed in [14], associated with the reported location coordinate:

1 = ELLIPSOID_ARC

2 = ELLIPSOID_POINT

3 = ELLIPSOID_POINT_ALTITUDE

4 = ELLIPSOID_POINT_ALTITUDE_UNCERT_ELLIPSOID

5 = ELLIPSOID_POINT_UNCERT_CIRCLE

6 = ELLIPSOID_POINT_UNCERT_ELLIPSE

7 = POLYGON' + type: integer + x-etsi-mec-cardinality: '1' + x-etsi-mec-origin-type: Enum_inlined + uncertaintyRadius: + type: integer + description: Present only if "shape" equals 6 + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: UnsignedInt + velocity: + description: "Structure with attributes relating to the target entity\u2019s velocity, as defined in [14]." + properties: + bearing: + type: integer + description: "Bearing, expressed in the range 0\xB0 to 360\xB0, as defined in [14]." + x-etsi-mec-cardinality: '1' + x-etsi-mec-origin-type: UnsignedInt + horizontalSpeed: + type: integer + description: Horizontal speed, expressed in km/h and defined in [14]. + x-etsi-mec-cardinality: '1' + x-etsi-mec-origin-type: UnsignedInt + uncertainty: + type: integer + description: Horizontal uncertainty, as defined in [14]. Present only if "velocityType" equals 3 or 4 + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: UnsignedInt + velocityType: + description: 'Velocity information, as detailed in [14], associated with the reported location coordinate:

1 = HORIZONTAL

2 = HORIZONTAL_VERTICAL

3 = HORIZONTAL_UNCERT

4 = HORIZONTAL_VERTICAL_UNCERT' + type: integer + x-etsi-mec-cardinality: '1' + x-etsi-mec-origin-type: Enum_inlined + verticalSpeed: + description: Vertical speed, expressed in km/h and defined in [14]. Present only if "velocityType" equals 2 or 4 + type: integer + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: Int + verticalUncertainty: + type: integer + description: Vertical uncertainty, as defined in [14]. Present only if "velocityType" equals 4 + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: UnsignedInt + required: + - velocityType + - bearing + - horizontalSpeed + type: object + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: Structure (inlined) + timestamp: + $ref: '#/components/schemas/TimeStamp' + required: + - latitude + - longitude + - shape + type: object + x-etsi-ref: 6.5.3 + UserInfo1_: + properties: + accessPointId: + description: The identity of the access point the user is currently on, see note 1. + type: string + x-etsi-mec-cardinality: '1' + x-etsi-mec-origin-type: String + address: + description: Address of user (e.g. 'sip' URI, 'tel' URI, 'acr' URI) currently on the access point, see note 1. + format: uri + type: string + x-etsi-mec-cardinality: '1' + x-etsi-mec-origin-type: AnyURI + ancillaryInfo: + description: Reserved for future use. + type: string + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: String + contextLocationInfo: + description: Contextual information of a user location (e.g. aisle, floor, room number, etc.). + type: string + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: String + locationInfo: + $ref: '#/components/schemas/LocationInfo' + resourceURL: + description: Self-referring URL, see note 1. + type: string + x-etsi-mec-cardinality: '1' + x-etsi-mec-origin-type: String + timestamp: + $ref: '#/components/schemas/TimeStamp' + zoneId: + description: The identity of the zone the user is currently within, see note 1. + type: string + x-etsi-mec-cardinality: '1' + x-etsi-mec-origin-type: String + required: + - address + - accessPointId + - zoneId + - resourceURL + - timestamp + type: object + x-etsi-notes: "NOTE 1:\tAs specified in [5], clause 5.2.2.7.\nNOTE 2: \tAs specified in [5], clause 5.2.2.5." + x-etsi-ref: 6.2.2 + CallbackReference: + type: object + required: + - notifyURL + properties: + notifyURL: + description: Notify Callback URL + type: string + x-etsi-mec-cardinality: '1' + x-etsi-mec-origin-type: anyURI + callbackData: + description: Data the application can register with the server when subscribing to notifications, and that are passed back unchanged in each of the related notifications. These data can be used by the application in the processing of the notification, e.g. for correlation purposes. + type: string + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: string + notificationFormat: + $ref: '#/components/schemas/NotificationFormat' + UserTrackingSubscription: + description: A type containing user tracking subscription. + type: object + required: + - callbackReference + - address + properties: + clientCorrelator: + type: string + description: A correlator that the client can use to tag this particular resource representation during a request to create a resource on the server. + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: string + callbackReference: + $ref: '#/components/schemas/CallbackReference' + address: + type: string + description: Address of user (e.g. "sip" URI, "tel" URI, "acr" URI) to monitor + x-etsi-mec-cardinality: 1 + x-etsi-mec-origin-type: anyURI + userEventCriteria: + type: array + items: + $ref: '#/components/schemas/UserEventType' + description: List of user event values to generate notifications for (these apply to address specified). If this element is missing, a notification is requested to be generated for any change in user event. + x-etsi-mec-cardinality: 0..N + x-etsi-mec-origin-type: UserEventType + resourceURL: + description: Self referring URL + type: string + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: anyURI + ZonalPresenceNotification: + description: A type containing zonal presence notification + type: object + required: + - zoneId + - address + - userEventType + - currentAccessPointId + - timestamp + properties: + callbackData: + description: CallBackData if passed by the application during the associated ZonalTrafficSubscription and UserTrackingSubscription operation. See [REST_NetAPI_Common]. + type: string + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: string + zoneId: + description: Identifier of zone + type: string + x-etsi-mec-cardinality: 1 + x-etsi-mec-origin-type: string + address: + description: Address of user (e.g. "sip" URI, "tel" URI, "acr" URI) to monitor + type: string + x-etsi-mec-cardinality: 1 + x-etsi-mec-origin-type: anyURI + interestRealm: + description: Interest realm of access point (e.g. geographical area, a type of industry etc.). + type: string + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: string + userEventType: + $ref: '#/components/schemas/UserEventType' + currentAccessPointId: + description: Identifier of access point. + type: string + x-etsi-mec-cardinality: 1 + x-etsi-mec-origin-type: string + previousAccessPointId: + description: Identifier of access point. + type: string + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: string + timestamp: + $ref: '#/components/schemas/TimeStamp' + link: + description: Link to other resources that are in relationship with this notification. The server SHOULD include a link to the related subscription. No other links are required or suggested by this specification + type: array + items: + $ref: '#/components/schemas/Link' + x-etsi-mec-cardinality: 0..N + x-etsi-mec-origin-type: Link + UserEventType: + type: string + enum: + - Entering + - Leaving + - Transferring + Link: + description: Link to other resources + type: object + required: + - rel + - href + properties: + rel: + description: Describes the relationship between the URI and the resource. + type: string + href: + description: URI + type: string + format: anyURI + ZonalTrafficSubscription: + description: A type containing zonal traffic subscription + type: object + required: + - callbackReference + - zoneId + properties: + clientCorrelator: + description: A correlator that the client can use to tag this particular resource representation during a request to create a resource on the server. + type: string + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: string + callbackReference: + $ref: '#/components/schemas/CallbackReference' + zoneId: + description: Identifier of zone + type: string + x-etsi-mec-cardinality: 1 + x-etsi-mec-origin-type: string + interestRealm: + description: Interest realm of access point (e.g. geographical area, a type of industry etc.). + type: array + items: + type: string + x-etsi-mec-cardinality: 0..N + x-etsi-mec-origin-type: string + userEventCriteria: + $ref: '#/components/schemas/UserEventType' + duration: + description: Period (in seconds) of time notifications are provided for. If set to "0" (zero), a default duration time, which is specified by the service policy, will be used. If the parameter is omitted, the notifications will continue until the maximum duration time, which is specified by the service policy, unless the notifications are stopped by deletion of subscription for notifications. This element MAY be given by the client during resource creation in order to signal the desired lifetime of the subscription. The server MUST return in this element the period of time for which the subscription will still be valid. + type: integer + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: unsignedInt + resourceURL: + type: string + description: Self referring URL + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: anyURI + OperationStatus: + type: string + enum: + - Serviceable + - Unserviceable + - Unknown + ZoneStatusSubscription: + x-etsi-ref: 6.3.7 + type: object + properties: + subscriptionType: + description: Shall be set to "ZoneStatusSubscription". + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + clientCorrelator: + description: A correlator that the client can use to tag this particular resource representation during a request to create a resource on the server. See note 2. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + callbackReference: + description: URI exposed by the client on which to receive notifications via HTTP. See note 1. + x-etsi-mec-origin-type: Uri + x-etsi-mec-cardinality: 0..1 + type: string + format: uri + requestTestNotification: + description: "Set to TRUE by the service consumer to request a test notification via HTTP on the callbackReference URI, as specified in ETSI GS\_MEC 009 [4], clause 6.12a." + x-etsi-mec-origin-type: Boolean + x-etsi-mec-cardinality: 0..1 + type: boolean + websockNotifConfig: + # description': Provides details to negotiate and signal the use of a Websocket connection between the location server and the service consumer for notifications. See note 1. + $ref: '#/components/schemas/WebsockNotifConfig' + # x-etsi-mec-origin-type': WebsockNotifConfig + # x-etsi-mec-cardinality': 0..1 + _links: + $ref: '#/components/schemas/_links' + zoneId: + description: Identifier of zone (e.g. zone001) to monitor. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + upperNumberOfUsersZoneThreshold: + description: Threshold number of users in a zone which if crossed upward shall cause a notification. + x-etsi-mec-origin-type: UnsignedInt + x-etsi-mec-cardinality: 0..1 + type: integer + lowerNumberOfUsersZoneThreshold: + description: Threshold number of users in a zone which if crossed downward shall cause a notification. + x-etsi-mec-origin-type: UnsignedInt + x-etsi-mec-cardinality: 0..1 + type: integer + upperNumberOfUsersAPThreshold: + description: Threshold number of users in an access point which if crossed upward shall cause a notification. + x-etsi-mec-origin-type: UnsignedInt + x-etsi-mec-cardinality: 0..1 + type: integer + lowerNumberOfUsersAPThreshold: + description: Threshold number of users in an access point which if crossed downward shall cause a notification. + x-etsi-mec-origin-type: UnsignedInt + x-etsi-mec-cardinality: 0..1 + type: integer + operationStatus: + description: List of operation status values to generate notifications for (these apply to all access points within a zone). See note 3. + x-etsi-mec-origin-type: OperationStatus + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + $ref: '#/components/schemas/OperationStatus' + reportingCtrl: + # description': Provides parameters that ctrl the reporting. + $ref: '#/components/schemas/ReportingCtrl' + # x-etsi-mec-origin-type': ReportingCtrl + # x-etsi-mec-cardinality': 0..1 + expiryDeadline: + # description': The expiration time of the subscription determined by the Zone Status Service. + $ref: '#/components/schemas/TimeStamp' + # x-etsi-mec-origin-type': TimeStamp + # x-etsi-mec-cardinality': 0..1 + required: + - subscriptionType + - zoneId + x-etsi-notes: "NOTE 1:\tAt least one of callbackReference and websockNotifConfig shall be provided by the service consumer. If both are provided, it is up to location server to select an alternative and return only that alternative in the response, as specified in ETSI GS MEC 009 [4], clause 6.12a.\nNOTE 2:\tThis allows the client to recover from communication failures during resource creation and therefore avoids duplicate subscription creation in such situations. In case the element is present, the server shall not alter its value, and shall provide it as part of the representation of this resource. In case the element is not present, the server shall not generate it.\nNOTE 3:\tAs specified in [5], clause 5.2.3.2." + PeriodicEventInfo: + x-etsi-notes: "NOTE 3:\tAs specified in [17], clause 6.1.6.2.24." + LocationEventType: + x-etsi-ref: 8.1.6.3 + type: string + enum: + - ENTERING_AREA_EVENT + - LEAVING_AREA_EVENT + x-etsi-mec-extensible: true + x-etsi-mec-enumeration-table: + - value: ENTERING_AREA_EVENT + description: Entering area reporting event. + - value: LEAVING_AREA_EVENT + description: Leaving area reporting event. + Uri: + type: string + format: uri + description: Uniform Resource Identifier (URI) + CivicAddress: + x-etsi-notes: "NOTE 3:\tAs specified in [17], clause 6.1.6.2.14." + NotificationResult: + x-etsi-notes: "NOTE 3:\tIf the result is SUCCESS, at least one of locationInfo, civicInfo and relativeLocationInfo shall be present. " + OccurrenceInfo: + x-etsi-notes: "NOTE 3:\tAs specified in [17], clause 6.1.6.3.16." + ZoneStatusNotification: + x-etsi-ref: 6.4.7 + type: object + properties: + notificationType: + description: Shall be set to "ZoneStatusNotification". + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + timeStamp: + # description': Time stamp. + $ref: '#/components/schemas/TimeStamp' + # x-etsi-mec-origin-type': TimeStamp + # x-etsi-mec-cardinality': 0..1 + userNumEvent: + type: integer + description: 'Shall be present when ZoneStatusSubscription includes upperNumberOfUsersZoneThreshold, lowerNumberOfUsersZoneThreshold, upperNumberOfUsersAPThreshold or lowerNumberOfUsersAPThreshold, and the number of users in a zone or an access point crosses the threshold defined in the subscription: + + 1 = OVER_ZONE_UPPER_THD. + + 2 = UNDER_ZONE_LOWER_THD. + + 3 = OVER_AP_UPPER_THD. + + 4 = UNDER_AP_LOWER_THD.' + enum: + - SEE_DESCRIPTION + x-etsi-mec-origin-type: Enum(inlined) + x-etsi-mec-cardinality: 0..1 + operationStatus: + # description': Shall be present when ZoneStatusSubscription includes operationStatus and the operation status value of an access point meets Serviceable or Unserviceable or Unknown defined in the subscription. See note 1. + $ref: '#/components/schemas/OperationStatus' + # x-etsi-mec-origin-type': OperationStatus + # x-etsi-mec-cardinality': 0..1 + zoneId: + description: 'The identity of the zone. ' + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + accessPointId: + description: Identifier of an access point (e.g. ap01). Shall be included when userNumEvent related with access point or operationStatus is included. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + _links: + $ref: '#/components/schemas/_links3' + required: + - notificationType + - zoneId + - _links + x-etsi-notes: "NOTE:\tAs specified in [5], clause 5.2.3.2." + UserList: + x-etsi-ref: 6.2.5 + type: object + properties: + user: + description: 'Collection of the user location information list. ' + x-etsi-mec-origin-type: UserInfo + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + $ref: '#/components/schemas/UserInfo' + resourceURL: + description: Self referring URL. This shall be only included in the procedure of UE Location Lookup. + x-etsi-mec-origin-type: Uri + x-etsi-mec-cardinality: 0..1 + type: string + format: uri + AccessPointList: + description: A type containing list of access points. + type: object + required: + - zoneId + - resourceURL + properties: + zoneId: + description: Identifier of zone + type: string + x-etsi-mec-cardinality: 1 + x-etsi-mec-origin-type: string + accessPoint: + description: Collection of the access point information list. + type: array + items: + $ref: '#/components/schemas/AccessPointInfo' + x-etsi-mec-cardinality: 0..N + x-etsi-mec-origin-type: AccessPointInfo + resourceURL: + description: Self referring URL + type: string + x-etsi-mec-cardinality: 1 + x-etsi-mec-origin-type: anyURI + ConnectionType: + description: The connection type for the access point + type: string + enum: + - Femto + - LTE-femto + - Smallcell + - LTE-smallcell + - Wifi + - Pico + - Micro + - Macro + - Wimax + - Unknown + AccessPointInfo: + description: A type containing access point information. + type: object + required: + - accessPointId + - connectionType + - operationStatus + - numberOfUsers + - resourceURL + properties: + accessPointId: + description: Identifier of access point. + type: string + x-etsi-mec-cardinality: 1 + x-etsi-mec-origin-type: string + locationInfo: + $ref: '#/components/schemas/LocationInfo' + connectionType: + $ref: '#/components/schemas/ConnectionType' + operationStatus: + $ref: '#/components/schemas/OperationStatus' + numberOfUsers: + description: Number of users currently on the access point. + type: integer + x-etsi-mec-cardinality: 1 + x-etsi-mec-origin-type: integer + timezone: + description: Time zone of access point. + type: string + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: dateTimeStamp + interestRealm: + description: Interest realm of access point. + type: string + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: string + resourceURL: + description: Self referring URL + type: string + x-etsi-mec-cardinality: 1 + x-etsi-mec-origin-type: anyURI + ZoneInfo: + description: A type containing zone information. + type: object + required: + - zoneId + - numberOfAccessPoints + - numberOfUnserviceableAccessPoints + - numberOfUsers + - resourceURL + properties: + zoneId: + description: Identifier of zone + type: string + x-etsi-mec-cardinality: 1 + x-etsi-mec-origin-type: string + numberOfAccessPoints: + description: The number of access points within the zone + type: integer + x-etsi-mec-cardinality: 1 + x-etsi-mec-origin-type: unsignedInt + numberOfUnserviceableAccessPoints: + description: Number of inoperable access points within the zone. + type: integer + x-etsi-mec-cardinality: 1 + x-etsi-mec-origin-type: unsignedInt + numberOfUsers: + description: The number of users currently on the access point. + type: integer + x-etsi-mec-cardinality: 1 + x-etsi-mec-origin-type: unsignedInt + resourceURL: + description: Self referring URL + type: string + x-etsi-mec-cardinality: 1 + x-etsi-mec-origin-type: anyURI + ZoneList: + description: A type containing a list of zones. + type: object + required: + - resourceURL + properties: + zone: + description: Collection of the zone information list. + type: array + items: + $ref: '#/components/schemas/ZoneInfo' + resourceURL: + description: Self referring URL + type: string + x-etsi-mec-cardinality: 1 + x-etsi-mec-origin-type: anyURI + TerminalDistance: + description: A type containing information about the distance from a terminal to a location or between two terminals, in addition the accuracy and a timestamp of the information are provided. + type: object + required: + - distance + properties: + accuracy: + description: Accuracy of the provided distance in meters + type: integer + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: integer + distance: + description: Distance from terminal to a location or between two terminals specified in meters + type: integer + x-etsi-mec-cardinality: 1 + x-etsi-mec-origin-type: integer + timestamp: + $ref: '#/components/schemas/TimeStamp' + CircleNotificationSubscription: + description: A type containing data for notifications, when the area is defined as a circle. + type: object + required: + - callbackReference + - address + - latitude + - longitude + - radius + - trackingAccuracy + - enteringLeavingCriteria + - checkImmediate + - frequency + properties: + clientCorrelator: + description: A correlator that the client can use to tag this particular resource representation during a request to create a resource on the server. + type: string + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: string + resourceURL: + description: Self referring URL + type: string + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: anyURI + link: + description: Link to other resources that are in relationship with the resource. + type: array + items: + $ref: '#/components/schemas/Link' + x-etsi-mec-cardinality: 0..N + x-etsi-mec-origin-type: Link + callbackReference: + $ref: '#/components/schemas/CallbackReference' + requester: + description: Identifies the entity that is requesting the information (e.g. "sip" URI, "tel" URI, "acr" URI) + type: string + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: anyURI + address: + description: Address of terminals to monitor (e.g. "sip" URI, "tel" URI, "acr" URI) + type: array + items: + type: string + x-etsi-mec-cardinality: 1..N + x-etsi-mec-origin-type: anyURI + latitude: + description: Latitude of center point. + type: number + format: float + x-etsi-mec-cardinality: 1 + x-etsi-mec-origin-type: float + longitude: + description: Longitude of center point. + type: number + format: float + x-etsi-mec-cardinality: 1 + x-etsi-mec-origin-type: float + radius: + description: Radius circle around center point in meters. + type: number + format: float + x-etsi-mec-cardinality: 1 + x-etsi-mec-origin-type: float + trackingAccuracy: + description: Number of meters of acceptable error in tracking distance. + type: number + format: float + x-etsi-mec-cardinality: 1 + x-etsi-mec-origin-type: float + enteringLeavingCriteria: + $ref: '#/components/schemas/EnteringLeavingCriteria' + checkImmediate: + description: Check location immediately after establishing notification. + type: boolean + x-etsi-mec-cardinality: 1 + x-etsi-mec-origin-type: boolean + frequency: + description: Maximum frequency (in seconds) of notifications per subscription (can also be considered minimum time between notifications). + type: integer + x-etsi-mec-cardinality: 1 + x-etsi-mec-origin-type: int + duration: + description: "Period of time (in seconds) notifications are provided for. If set to \u201C0\u201D (zero), a default duration time, which is specified by the service policy, will be used. If the parameter is omitted, the notifications will continue until the maximum duration time, which is specified by the service policy, unless the notifications are stopped by deletion of subscription for notifications." + type: integer + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: int + count: + description: Maximum number of notifications per individual address. For no maximum, either do not include this element or specify a value of zero. Default value is 0. + type: integer + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: int + PeriodicNotificationSubscription: + description: A type containing data for periodic subscription. + type: object + required: + - callbackReference + - address + - requestedAccuracy + - frequency + properties: + clientCorrelator: + description: A correlator that the client can use to tag this particular resource representation during a request to create a resource on the server. + type: string + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: string + resourceURL: + description: Self referring URL + type: string + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: anyURI + link: + description: Link to other resources that are in relationship with the resource. + type: array + items: + $ref: '#/components/schemas/Link' + x-etsi-mec-cardinality: 0..N + x-etsi-mec-origin-type: Link + callbackReference: + $ref: '#/components/schemas/CallbackReference' + requester: + description: Identifies the entity that is requesting the information (e.g. "sip" URI, "tel" URI, "acr" URI) + type: string + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: anyURI + address: + description: Address of terminals to monitor (e.g. "sip" URI, "tel" URI, "acr" URI) + type: array + items: + type: string + x-etsi-mec-cardinality: 1..N + x-etsi-mec-origin-type: anyURI + requestedAccuracy: + description: Accuracy of the provided distance in meters. + type: integer + x-etsi-mec-cardinality: 1 + x-etsi-mec-origin-type: int + frequency: + description: Maximum frequency (in seconds) of notifications (can also be considered minimum time between notifications) per subscription. + type: integer + x-etsi-mec-cardinality: 1 + x-etsi-mec-origin-type: int + duration: + description: "Period of time (in seconds) notifications are provided for. If set to \u201C0\u201D (zero), a default duration time, which is specified by the service policy, will be used. If the parameter is omitted, the notifications will continue until the maximum duration time, which is specified by the service policy, unless the notifications are stopped by deletion of subscription for notifications." + type: integer + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: int + DistanceNotificationSubscription: + description: A type containing data for distance subscription, with reference to other devices. + type: object + required: + - callbackReference + - monitoredAddress + - distance + - trackingAccuracy + - criteria + - checkImmediate + - frequency + properties: + clientCorrelator: + description: A correlator that the client can use to tag this particular resource representation during a request to create a resource on the server. + type: string + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: string + resourceURL: + description: Self referring URL + type: string + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: anyURI + link: + description: Link to other resources that are in relationship with the resource. + type: array + items: + $ref: '#/components/schemas/Link' + x-etsi-mec-cardinality: 0..N + x-etsi-mec-origin-type: Link + callbackReference: + $ref: '#/components/schemas/CallbackReference' + requester: + description: Identifies the entity that is requesting the information (e.g. "sip" URI, "tel" URI, "acr" URI) + type: string + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: anyURI + referenceAddress: + description: Indicates address of each device that will be used as reference devices from which the distances towards monitored devices indicated in the Addresses will be monitored (e.g., 'sip' URI, 'tel' URI, 'acr' URI) + type: array + items: + type: string + x-etsi-mec-cardinality: 0..N + x-etsi-mec-origin-type: anyURI + monitoredAddress: + description: Contains addresses of devices to monitor (e.g., 'sip' URI, 'tel' URI, 'acr' URI) + type: array + items: + type: string + x-etsi-mec-cardinality: 1..N + x-etsi-mec-origin-type: anyURI + distance: + description: Distance between devices that shall be monitored. + type: number + format: float + x-etsi-mec-cardinality: 1 + x-etsi-mec-origin-type: float + trackingAccuracy: + description: Number of meters of acceptable error in tracking distance. + type: number + format: float + x-etsi-mec-cardinality: 1 + x-etsi-mec-origin-type: float + criteria: + $ref: '#/components/schemas/DistanceCriteria' + checkImmediate: + description: Check location immediately after establishing notification. + type: boolean + x-etsi-mec-cardinality: 1 + x-etsi-mec-origin-type: boolean + frequency: + description: Maximum frequency (in seconds) of notifications per subscription (can also be considered minimum time between notifications). + type: integer + x-etsi-mec-cardinality: 1 + x-etsi-mec-origin-type: int + duration: + description: "Period of time (in seconds) notifications are provided for. If set to \u201C0\u201D (zero), a default duration time, which is specified by the service policy, will be used. If the parameter is omitted, the notifications will continue until the maximum duration time, which is specified by the service policy, unless the notifications are stopped by deletion of subscription for notifications." + type: integer + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: int + count: + description: Maximum number of notifications per individual address. For no maximum, either do not include this element or specify a value of zero. Default value is 0. + type: integer + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: int + EnteringLeavingCriteria: + type: string + enum: + - Entering = 'Terminal is entering an area' + - Leaving = 'Terminal is leaving an area' + DistanceCriteria: + type: string + enum: + - AllWithinDistance = 'All monitored devices are within the specified distance' + - AnyWithinDistance = 'Any of monitored devices gets within the specified distance' + - AllBeyondDistance = 'All monitored devices are beyond the specified distance' + - AnyBeyondDistance = 'Any of monitored devices gets beyond the specified distance' + NotificationFormat: + type: string + enum: + - XML + - JSON + SubscriptionNotification: + description: A type containing the notification subscription. + type: object + required: + - terminalLocation + properties: + callbackData: + description: CallbackData if passed by the application in the receiptRequest element during the associated subscription operation + type: string + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: string + terminalLocation: + description: Collection of the terminal locations. + type: array + items: + $ref: '#/components/schemas/TerminalLocation' + x-etsi-mec-cardinality: 1..N + x-etsi-mec-origin-type: TerminalLocation + enteringLeavingCriteria: + $ref: '#/components/schemas/EnteringLeavingCriteria' + distanceCriteria: + $ref: '#/components/schemas/DistanceCriteria' + isFinalNotification: + description: Set to true if it is a final notification about location change. + type: boolean + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: boolean + link: + description: Link to other resources that are in relationship with the resource. + type: array + items: + $ref: '#/components/schemas/Link' + x-etsi-mec-cardinality: 0..N + x-etsi-mec-origin-type: Link + SubscriptionCancellationNotification: + description: A type containing the subscription cancellation notification. + type: object + required: + - terminalLocation + properties: + callbackData: + description: CallbackData if passed by the application in the receiptRequest element during the associated subscription operation + type: string + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: string + address: + description: Address of terminal if the error applies to an individual terminal. + type: string + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: anyURI + reason: + $ref: '#/components/schemas/ServiceError' + link: + description: Link to other resources that are in relationship with the resource. + type: array + items: + $ref: '#/components/schemas/Link' + x-etsi-mec-cardinality: 0..N + x-etsi-mec-origin-type: Link + TerminalLocation: + description: A type containing device address, retrieval status and location information. + type: object + required: + - address + - locationRetrievalStatus + properties: + address: + description: Address of the terminal to which the location information applies (e.g., 'sip' URI, 'tel' URI, 'acr' URI). + type: string + x-etsi-mec-cardinality: 1 + x-etsi-mec-origin-type: anyURI + locationRetrievalStatus: + $ref: '#/components/schemas/RetrievalStatus' + currentLocation: + $ref: '#/components/schemas/LocationInfo' + errorInformation: + $ref: '#/components/schemas/ServiceError' + TerminalLocationList: + description: Collection of the terminal locations. + type: array + items: + $ref: '#/components/schemas/TerminalLocation' + x-etsi-mec-cardinality: 1..N + x-etsi-mec-origin-type: TerminalLocation + RetrievalStatus: + type: string + enum: + - Retrieved + - NotRetrieved + - Error + ServiceError: + description: used to indicate a notification termination or cancellation. + type: object + required: + - messageId + - text + properties: + messageId: + description: Message identifier, either with prefix SVC or with prefix POL + type: string + x-etsi-mec-cardinality: 1 + x-etsi-mec-origin-type: string + text: + description: Message text, with replacement variables marked with %n, where n is an index into the list of elements, starting at 1 + type: string + x-etsi-mec-cardinality: 1 + x-etsi-mec-origin-type: string + variables: + description: Variables to substitute into text string + type: array + items: + type: string + x-etsi-mec-cardinality: 0..N + x-etsi-mec-origin-type: string + UserInfo: + x-etsi-ref: 6.2.2 + type: object + properties: + address: + description: Address of user (e.g. 'sip' URI, 'tel' URI, 'acr' URI) currently on the access point, see note 1. + x-etsi-mec-origin-type: AnyURI + x-etsi-mec-cardinality: '1' + type: string + format: uri + AccessPointId: + description: The identity of the access point the user is currently on, see note 1. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + zoneId: + description: The identity of the zone the user is currently within, see note 1. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + resourceURL: + description: Self-referring URL, see note 1. This shall be only included in the procedure of UE Location Lookup. + x-etsi-mec-origin-type: AnyURI + x-etsi-mec-cardinality: 0..1 + type: string + format: uri + timeStamp: + # description': Date and time that location was collected. + $ref: '#/components/schemas/TimeStamp' + # x-etsi-mec-origin-type': TimeStamp + # x-etsi-mec-cardinality': '1' + locationInfo: + # description': The geographical coordinates where the user is. + $ref: '#/components/schemas/LocationInfo' + # x-etsi-mec-origin-type': LocationInfo + # x-etsi-mec-cardinality': 0..1 + civicInfo: + # description': Contextual information of a user location (e.g. aisle, floor, room number, etc.). See note 3. + $ref: '#/components/schemas/CivicAddress' + # x-etsi-mec-origin-type': CivicAddress + # x-etsi-mec-cardinality': 0..1 + ancillaryInfo: + description: Reserved for future use. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + relativeLocationInfo: + # description': The relative location in a reference system. + $ref: '#/components/schemas/RelativeLocationInfo' + # x-etsi-mec-origin-type': RelativeLocationInfo + # x-etsi-mec-cardinality': 0..1 + required: + - address + - AccessPointId + - zoneId + - timeStamp + x-etsi-notes: "NOTE 1:\tAs specified in [5], clause 5.2.2.7.\nNOTE 2:\tVoid.\nNOTE 3:\tAs specified in [17], clause 6.1.6.2.14." + RelativeLocationInfo: + x-etsi-ref: 6.2.3 + type: object + properties: + mapInfo: + # description': Indicates a map corresponding to a location area. + $ref: '#/components/schemas/MapInfo' + # x-etsi-mec-origin-type': MapInfo + # x-etsi-mec-cardinality': '1' + X: + description: 'Indicates the value (in the unit of meters) on x-axis of the relative location in the Cartesian system. + + + Positive value represents easting from origin.' + x-etsi-mec-origin-type: Float + x-etsi-mec-cardinality: '1' + type: number + format: float + Y: + description: 'Indicates the value (in the unit of meters) on y-axis of the relative location in the Cartesian system. + + + Positive value represents northing from origin.' + x-etsi-mec-origin-type: Float + x-etsi-mec-cardinality: '1' + type: number + format: float + Z: + description: 'Indicates the value (in the unit of meters) on z-axis of the relative location in the Cartesian system for a 3DPoint. + + + Positive value represents height above origin.' + x-etsi-mec-origin-type: Float + x-etsi-mec-cardinality: 0..1 + type: number + format: float + required: + - mapInfo + - X + - Y + MapInfo: + x-etsi-ref: 6.2.4 + type: object + properties: + mapId: + description: 'Indicates the ID of the map. ' + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + origin: + $ref: '#/components/schemas/Origin' + ancillaryMapInfo: + description: Ancillary map information may be used to convert coordinates between different coordinate systems. + x-etsi-mec-origin-type: Not_specified + x-etsi-mec-cardinality: 0..1 + type: object + required: + - mapId + NotificationSubscriptionList: + x-etsi-ref: 6.3.3 + type: object + properties: + subscription: + type: array + items: + $ref: '#/components/schemas/Subscription' + resourceURL: + # description': Self-referring URL. + $ref: '#/components/schemas/LinkType' + # x-etsi-mec-origin-type': LinkType + # x-etsi-mec-cardinality': '1' + required: + - resourceURL + x-etsi-notes: "NOTE 1:\tVoid.\nNOTE 2:\tVoid." + UserLocationEventSubscription: + x-etsi-ref: 6.3.4 + type: object + properties: + subscriptionType: + description: Shall be set to "UserLocationEventSubscription". + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + clientCorrelator: + description: A correlator that the client can use to tag this particular resource representation during a request to create a resource on the server. See note 2. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + callbackReference: + description: URI exposed by the client on which to receive notifications via HTTP. See note 1. + x-etsi-mec-origin-type: Uri + x-etsi-mec-cardinality: 0..1 + type: string + format: uri + requestTestNotification: + description: "Set to TRUE by the service consumer to request a test notification via HTTP on the callbackReference URI, as specified in ETSI GS\_MEC 009 [4], clause 6.12a." + x-etsi-mec-origin-type: Boolean + x-etsi-mec-cardinality: 0..1 + type: boolean + websockNotifConfig: + # description': Provides details to negotiate and signal the use of a Websocket connection between the location server and the service consumer for notifications. See note 1. + $ref: '#/components/schemas/WebsockNotifConfig' + # x-etsi-mec-origin-type': WebsockNotifConfig + # x-etsi-mec-cardinality': 0..1 + _links: + $ref: '#/components/schemas/_links' + address: + description: Address of user (e.g. 'sip' URI, 'tel' URI, 'acr' URI) to monitor. + x-etsi-mec-origin-type: Uri + x-etsi-mec-cardinality: '1' + type: string + format: uri + userEventPara: + # description': Requirements for user event reporting. + $ref: '#/components/schemas/UserEventPara' + # x-etsi-mec-origin-type': UserEventPara + # x-etsi-mec-cardinality': 0..1 + locationEventCriteria: + description: 'List of user event values to generate notifications for (these apply to address specified). ' + x-etsi-mec-origin-type: LocationEventType + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + $ref: '#/components/schemas/LocationEventType' + expiryDeadline: + # description': The expiration time of the subscription determined by the UE Location Subscribe Service. + $ref: '#/components/schemas/TimeStamp' + # x-etsi-mec-origin-type': TimeStamp + # x-etsi-mec-cardinality': 0..1 + required: + - subscriptionType + - address + x-etsi-notes: "NOTE 1:\tAt least one of callbackReference and websockNotifConfig shall be provided by the service consumer. If both are provided, it is up to location server to select an alternative and return only that alternative in the response, as specified in ETSI GS MEC 009 [4], clause 6.12a.\nNOTE 2:\tThis allows the client to recover from communication failures during resource creation and therefore avoids duplicate subscription creation in such situations. In case the element is present, the server shall not alter its value, and shall provide it as part of the representation of this resource. In case the element is not present, the server shall not generate it." + UserLocationPeriodicSubscription: + x-etsi-ref: 6.3.5 + type: object + properties: + subscriptionType: + description: Shall be set to "UserLocationPeriodicSubscription". + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + clientCorrelator: + description: A correlator that the client can use to tag this particular resource representation during a request to create a resource on the server. See note 2. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + callbackReference: + description: "URI exposed by the client on which to receive notifications via HTTP. See note\_1." + x-etsi-mec-origin-type: Uri + x-etsi-mec-cardinality: 0..1 + type: string + format: uri + requestTestNotification: + description: Set to TRUE by the service consumer to request a test notification via HTTP on the callbackReference URI, as specified in ETSI GS MEC 009 [4], clause 6.12a. + x-etsi-mec-origin-type: Boolean + x-etsi-mec-cardinality: 0..1 + type: boolean + websockNotifConfig: + # description': Provides details to negotiate and signal the use of a Websocket connection between the location server and the service consumer for notifications. See note 1. + $ref: '#/components/schemas/WebsockNotifConfig' + # x-etsi-mec-origin-type': WebsockNotifConfig + # x-etsi-mec-cardinality': 0..1 + _links: + $ref: '#/components/schemas/_links' + address: + description: Address of user (e.g. 'sip' URI, 'tel' URI, 'acr' URI) to monitor. + x-etsi-mec-origin-type: Uri + x-etsi-mec-cardinality: '1' + type: string + format: uri + periodicEventInfo: + # description': Information for periodic event reporting. See note 3. + $ref: '#/components/schemas/PeriodicEventInfo' + # x-etsi-mec-origin-type': PeriodicEventInfo + # x-etsi-mec-cardinality': '1' + expiryDeadline: + # description': The expiration time of the subscription determined by the UE Location Subscribe Service. + $ref: '#/components/schemas/TimeStamp' + # x-etsi-mec-origin-type': TimeStamp + # x-etsi-mec-cardinality': 0..1 + required: + - subscriptionType + - address + - periodicEventInfo + x-etsi-notes: "NOTE 1:\tAt least one of callbackReference and websockNotifConfig shall be provided by the service consumer. If both are provided, it is up to location server to select an alternative and return only that alternative in the response, as specified in ETSI GS MEC 009 [4], clause 6.12a.\nNOTE 2:\tThis allows the client to recover from communication failures during resource creation and therefore avoids duplicate subscription creation in such situations. In case the element is present, the server shall not alter its value, and shall provide it as part of the representation of this resource. In case the element is not present, the server shall not generate it.\nNOTE 3:\tAs specified in [17], clause 6.1.6.2.24." + ZoneLocationEventSubscription: + x-etsi-ref: 6.3.6 + type: object + properties: + subscriptionType: + description: Shall be set to "ZoneLocationEventSubscription". + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + clientCorrelator: + description: A correlator that the client can use to tag this particular resource representation during a request to create a resource on the server. See note 2. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + callbackReference: + description: URI exposed by the client on which to receive notifications via HTTP. See note 1. + x-etsi-mec-origin-type: Uri + x-etsi-mec-cardinality: 0..1 + type: string + format: uri + requestTestNotification: + description: "Set to TRUE by the service consumer to request a test notification via HTTP on the callbackReference URI, as specified in ETSI GS\_MEC 009 [4], clause 6.12a." + x-etsi-mec-origin-type: Boolean + x-etsi-mec-cardinality: 0..1 + type: boolean + websockNotifConfig: + # description': Provides details to negotiate and signal the use of a Websocket connection between the location server and the service consumer for notifications. See note 1. + $ref: '#/components/schemas/WebsockNotifConfig' + # x-etsi-mec-origin-type': WebsockNotifConfig + # x-etsi-mec-cardinality': 0..1 + _links: + $ref: '#/components/schemas/_links' + zoneId: + description: Identifier of zone (e.g. zone001) to monitor. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + addressList: + description: List of the users to be monitored. If not present, all the users need to be monitored. + x-etsi-mec-origin-type: Uri + x-etsi-mec-cardinality: 0..N + type: array + format: uri + minItems: 0 + items: + $ref: '#/components/schemas/Uri' + locationEventCriteria: + description: 'List of user event values to generate notifications for. ' + x-etsi-mec-origin-type: LocationEventType + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + $ref: '#/components/schemas/LocationEventType' + reportingCtrl: + # description': Provides parameters that ctrl the reporting. + $ref: '#/components/schemas/ReportingCtrl' + # x-etsi-mec-origin-type': ReportingCtrl + # x-etsi-mec-cardinality': 0..1 + expiryDeadline: + # description': The expiration time of the subscription determined by the Zone Location Event Service. + $ref: '#/components/schemas/TimeStamp' + # x-etsi-mec-origin-type': TimeStamp + # x-etsi-mec-cardinality': 0..1 + required: + - subscriptionType + - zoneId + x-etsi-notes: "NOTE 1:\tAt least one of callbackReference and websockNotifConfig shall be provided by the service consumer. If both are provided, it is up to location server to select an alternative and return only that alternative in the response, as specified in ETSI GS MEC 009 [4], clause 6.12a.\nNOTE 2:\tThis allows the client to recover from communication failures during resource creation and therefore avoids duplicate subscription creation in such situations. In case the element is present, the server shall not alter its value, and shall provide it as part of the representation of this resource. In case the element is not present, the server shall not generate it." + UserAreaSubscription: + x-etsi-ref: 6.3.8 + type: object + properties: + subscriptionType: + description: Shall be set to "UserAreaSubscription". + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + clientCorrelator: + description: A correlator that the client can use to tag this particular resource representation during a request to create a resource on the server. See note 2. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + callbackReference: + description: URI exposed by the client on which to receive notifications via HTTP. See note 1. + x-etsi-mec-origin-type: Uri + x-etsi-mec-cardinality: 0..1 + type: string + format: uri + requestTestNotification: + description: "Set to TRUE by the service consumer to request a test notification via HTTP on the callbackReference URI, as specified in ETSI GS\_MEC 009 [4], clause 6.12a." + x-etsi-mec-origin-type: Boolean + x-etsi-mec-cardinality: 0..1 + type: boolean + websockNotifConfig: + # description': Provides details to negotiate and signal the use of a Websocket connection between the location server and the service consumer for notifications. See note 1. + $ref: '#/components/schemas/WebsockNotifConfig' + # x-etsi-mec-origin-type': WebsockNotifConfig + # x-etsi-mec-cardinality': 0..1 + _links: + $ref: '#/components/schemas/_links' + areaDefine: + # description': The parameters describing the area to subscribe. + $ref: '#/components/schemas/AreaInfo' + # x-etsi-mec-origin-type': AreaInfo + # x-etsi-mec-cardinality': '1' + addressList: + description: 'List of the users to be monitored. ' + x-etsi-mec-origin-type: Uri + x-etsi-mec-cardinality: 1..N + type: array + format: uri + minItems: 1 + items: + $ref: '#/components/schemas/Uri' + trackingAccuracy: + description: Number of meters of acceptable error. + x-etsi-mec-origin-type: Float + x-etsi-mec-cardinality: '1' + type: number + format: float + locationEventCriteria: + description: 'List of user event values to generate notifications for (these apply to address specified). ' + x-etsi-mec-origin-type: LocationEventType + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + $ref: '#/components/schemas/LocationEventType' + reportingCtrl: + # description': Provides parameters that ctrl the reporting. + $ref: '#/components/schemas/ReportingCtrl' + # x-etsi-mec-origin-type': ReportingCtrl + # x-etsi-mec-cardinality': 0..1 + reportingLocationReq: + description: This IE shall be set to true if a location estimate is required for each event report. + x-etsi-mec-origin-type: boolean + x-etsi-mec-cardinality: 0..1 + type: boolean + expiryDeadline: + # description': The expiration time of the subscription determined by the UE Area Subscribe Service. + $ref: '#/components/schemas/TimeStamp' + # x-etsi-mec-origin-type': TimeStamp + # x-etsi-mec-cardinality': 0..1 + required: + - subscriptionType + - areaDefine + - addressList + - trackingAccuracy + x-etsi-notes: "NOTE 1:\tAt least one of callbackReference and websockNotifConfig shall be provided by the service consumer. If both are provided, it is up to location server to select an alternative and return only that alternative in the response, as specified in ETSI GS MEC 009 [4], clause 6.12a.\nNOTE 2:\tThis allows the client to recover from communication failures during resource creation and therefore avoids duplicate subscription creation in such situations. In case the element is present, the server shall not alter its value, and shall provide it as part of the representation of this resource. In case the element is not present, the server shall not generate it." + UserDistanceSubscription: + x-etsi-ref: 6.3.9 + type: object + properties: + subscriptionType: + description: Shall be set to "UserDistanceSubscription". + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + clientCorrelator: + description: A correlator that the client can use to tag this particular resource representation during a request to create a resource on the server. See note 2. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + callbackReference: + description: URI exposed by the client on which to receive notifications via HTTP. See note 1. + x-etsi-mec-origin-type: Uri + x-etsi-mec-cardinality: 0..1 + type: string + format: uri + requestTestNotification: + description: Set to TRUE by the service consumer to request a test notification via HTTP on the callbackReference URI, as specified in ETSI GS MEC 009 [4], clause 6.12a. + x-etsi-mec-origin-type: Boolean + x-etsi-mec-cardinality: 0..1 + type: boolean + websockNotifConfig: + # description': Provides details to negotiate and signal the use of a Websocket connection between the location server and the service consumer for notifications. See note 1. + $ref: '#/components/schemas/WebsockNotifConfig' + # x-etsi-mec-origin-type': WebsockNotifConfig + # x-etsi-mec-cardinality': 0..1 + _links: + $ref: '#/components/schemas/_links1' + referenceAddress: + description: If specified, indicates address of each user that will be used as reference users from which the distances towards monitored users indicated in the Addresses will be monitored (e.g., 'sip' URI, 'tel' URI, 'acr' URI). Reference to a group could be provided here if supported by implementation. + x-etsi-mec-origin-type: Uri + x-etsi-mec-cardinality: 0..N + type: array + format: uri + minItems: 0 + items: + $ref: '#/components/schemas/Uri' + monitoredAddress: + description: 'Contains addresses of users to monitor (e.g. ''sip'' URI, ''tel'' URI, ''acr'' URI). Reference to a group could be provided here if supported by implementation. + + If the ReferenceAddress is specified, then the distance between each monitored user and reference user(s) will be monitored. + + If the ReferenceAddress is not present, then the distance between each pair of the monitored users will be monitored. Note that in that case there shall be at least two addresses specified here.' + x-etsi-mec-origin-type: Uri + x-etsi-mec-cardinality: 1..N + type: array + format: uri + minItems: 1 + items: + $ref: '#/components/schemas/Uri' + distance: + description: Distance between users that shall be monitored. The unit is meter. + x-etsi-mec-origin-type: Float + x-etsi-mec-cardinality: '1' + type: number + format: float + trackingAccuracy: + description: Number of meters of acceptable error in tracking distance. + x-etsi-mec-origin-type: Float + x-etsi-mec-cardinality: '1' + type: number + format: float + criteria: + # description': Indicates whether the notification should occur when the geographical relationship between monitored and referenced users' changes. See note 3. + $ref: '#/components/schemas/DistanceCriteria' + # x-etsi-mec-origin-type': DistanceCriteria + # x-etsi-mec-cardinality': '1' + checkImmediate: + # description': Check location immediately after establishing notification. + type: boolean + # x-etsi-mec-origin-type': Bool + # x-etsi-mec-cardinality': '1' + reportingCtrl: + # description': Provides parameters that ctrl the reporting. + $ref: '#/components/schemas/ReportingCtrl' + # x-etsi-mec-origin-type': ReportingCtrl + # x-etsi-mec-cardinality': 0..1 + expiryDeadline: + # description': The expiration time of the subscription determined by the UE Distance Subscribe Service. + $ref: '#/components/schemas/TimeStamp' + # x-etsi-mec-origin-type': TimeStamp + # x-etsi-mec-cardinality': 0..1 + required: + - subscriptionType + - monitoredAddress + - distance + - trackingAccuracy + - criteria + - checkImmediate + x-etsi-notes: "NOTE 1:\tAt least one of callbackReference and websockNotifConfig shall be provided by the service consumer. If both are provided, it is up to location server to select an alternative and return only that alternative in the response, as specified in ETSI GS MEC 009 [4], clause 6.12a.\nNOTE 2:\tThis allows the client to recover from communication failures during resource creation and therefore avoids duplicate subscription creation in such situations. In case the element is present, the server shall not alter its value, and shall provide it as part of the representation of this resource. In case the element is not present, the server shall not generate it.\nNOTE 3:\tAs specified in [6], clause 5.2.3.2." + TestNotification: + x-etsi-ref: 6.4.3 + type: object + properties: + notificationType: + description: Shall be set to "TestNotification". + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + _links: + $ref: '#/components/schemas/_links2' + required: + - notificationType + - _links + UserLocationEventNotification: + x-etsi-ref: 6.4.4 + type: object + properties: + notificationType: + description: Shall be set to "UserLocationEventNotification". + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + timeStamp: + # description': Time stamp. + $ref: '#/components/schemas/TimeStamp' + # x-etsi-mec-origin-type': TimeStamp + # x-etsi-mec-cardinality': 0..1 + address: + description: Address of user (e.g. 'sip' URI, 'tel' URI, 'acr' URI). + x-etsi-mec-origin-type: Uri + x-etsi-mec-cardinality: 0..1 + type: string + format: uri + userLocationEvent: + # description': The specific event triggering this notification, e.g. "ENTERING_AREA_EVENT", "LEAVING_AREA_EVENT". + $ref: '#/components/schemas/LocationEventType' + # x-etsi-mec-origin-type': LocationEventType + # x-etsi-mec-cardinality': '1' + locationInfo: + # description': The geographical coordinates where the user is. See note 3. + $ref: '#/components/schemas/LocationInfo' + # x-etsi-mec-origin-type': LocationInfo + # x-etsi-mec-cardinality': 0..1 + civicInfo: + # description': Contextual information of a user location (e.g. aisle, floor, room number, etc.). See note 1 and note 3. + $ref: '#/components/schemas/CivicAddress' + # x-etsi-mec-origin-type': CivicAddress + # x-etsi-mec-cardinality': 0..1 + relativeLocationInfo: + # description': The relative location in a reference system. See note 3. + $ref: '#/components/schemas/RelativeLocationInfo' + # x-etsi-mec-origin-type': RelativeLocationInfo + # x-etsi-mec-cardinality': 0..1 + zoneId: + description: "The identity of the zone. \nFor the events of \"ENTERING_AREA_EVENT\", it is the zone that the user is currently within. \nFor the event of \"LEAVING_AREA_EVENT\", it is the zone that the user used to be within.\nSee note 2." + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + accessPointId: + description: "The identity of the access point.\nFor the events of \"ENTERING_AREA_EVENT\", it indicates the access point that the user is currently within. \nFor the event of \"LEAVING_AREA_EVENT\", it indicates the access point that the user used to be within.\nSee note 2." + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + _links: + $ref: '#/components/schemas/_links3' + required: + - notificationType + - userLocationEvent + - _links + x-etsi-notes: "NOTE 1:\tAs specified in [17], clause 6.1.6.2.14.\nNOTE 2:\tAs specified in [5], clause 5.2.2.7.\nNOTE 3:\tAt least one of these attributes shall be present only when reportingLocationReq is set to TRUE in the UserLocationEventSubscription." + UserLocationPeriodicNotification: + x-etsi-ref: 6.4.5 + type: object + properties: + notificationType: + description: Shall be set to "UserLocationPeriodicNotification". + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + timeStamp: + # description': Time stamp. + $ref: '#/components/schemas/TimeStamp' + # x-etsi-mec-origin-type': TimeStamp + # x-etsi-mec-cardinality': 0..1 + address: + description: Address of user (e.g. 'sip' URI, 'tel' URI, 'acr' URI). + x-etsi-mec-origin-type: Uri + x-etsi-mec-cardinality: 0..1 + type: string + format: uri + result: + # description': The result of Localization. See note 3. + $ref: '#/components/schemas/NotificationResult' + # x-etsi-mec-origin-type': NotificationResult + # x-etsi-mec-cardinality': '1' + locationInfo: + # description': The geographical coordinates where the user is. + $ref: '#/components/schemas/LocationInfo' + # x-etsi-mec-origin-type': LocationInfo + # x-etsi-mec-cardinality': 0..1 + civicInfo: + # description': Contextual information of a user location (e.g. aisle, floor, room number, etc.). See note 1. + $ref: '#/components/schemas/CivicAddress' + # x-etsi-mec-origin-type': CivicAddress + # x-etsi-mec-cardinality': 0..1 + relativeLocationInfo: + # description': The relative location in a reference system. + $ref: '#/components/schemas/RelativeLocationInfo' + # x-etsi-mec-origin-type': RelativeLocationInfo + # x-etsi-mec-cardinality': 0..1 + zoneId: + description: "The identity of the zone that the user is currently within. \nSee note 2." + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + accessPointId: + description: "The identity of the access point that the user is currently within. \nSee note 2." + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + isFinalNotification: + description: Shall be set to true if it is a final notification. + x-etsi-mec-origin-type: Boolean + x-etsi-mec-cardinality: 0..1 + type: boolean + _links: + $ref: '#/components/schemas/_links3' + required: + - notificationType + - result + - _links + x-etsi-notes: "NOTE 1:\tAs specified in [17], clause 6.1.6.2.14.\nNOTE 2:\tAs specified in [5], clause 5.2.2.7.\nNOTE 3:\tIf the result is SUCCESS, at least one of locationInfo, civicInfo and relativeLocationInfo shall be present." + ZoneLocationEventNotification: + x-etsi-ref: 6.4.6 + type: object + properties: + notificationType: + description: Shall be set to "ZoneLocationEventNotification". + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + timeStamp: + # description': Time stamp. + $ref: '#/components/schemas/TimeStamp' + # x-etsi-mec-origin-type': TimeStamp + # x-etsi-mec-cardinality': 0..1 + address: + description: Address of user (e.g. 'sip' URI, 'tel' URI, 'acr' URI). + x-etsi-mec-origin-type: Uri + x-etsi-mec-cardinality: '1' + type: string + format: uri + userLocationEvent: + # description': The specific event triggering this notification, e.g. "ENTERING_AREA_EVENT","LEAVING_AREA_EVENT". + $ref: '#/components/schemas/LocationEventType' + # x-etsi-mec-origin-type': LocationEventType + # x-etsi-mec-cardinality': '1' + zoneId: + description: 'The identity of the zone. ' + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + _links: + $ref: '#/components/schemas/_links3' + required: + - notificationType + - address + - userLocationEvent + - zoneId + - _links + UserAreaNotification: + x-etsi-ref: 6.4.8 + type: object + properties: + notificationType: + description: Shall be set to "UserAreaNotification". + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + timeStamp: + # description': Time stamp. + $ref: '#/components/schemas/TimeStamp' + # x-etsi-mec-origin-type': TimeStamp + # x-etsi-mec-cardinality': 0..1 + address: + description: Address of user (e.g. 'sip' URI, 'tel' URI, 'acr' URI). + x-etsi-mec-origin-type: Uri + x-etsi-mec-cardinality: '1' + type: string + format: uri + locationInfo: + # description': The geographical coordinates where the user is. See note 2. + $ref: '#/components/schemas/LocationInfo' + # x-etsi-mec-origin-type': LocationInfo + # x-etsi-mec-cardinality': 0..1 + civicInfo: + # description': Contextual information of a user location (e.g. aisle, floor, room number, etc.). See note 1 and note 2. + $ref: '#/components/schemas/CivicAddress' + # x-etsi-mec-origin-type': CivicAddress + # x-etsi-mec-cardinality': 0..1 + relativeLocationInfo: + # description': The relative location in a reference system. See note 2. + $ref: '#/components/schemas/RelativeLocationInfo' + # x-etsi-mec-origin-type': RelativeLocationInfo + # x-etsi-mec-cardinality': 0..1 + userLocationEvent: + # description': The specific event triggering this notification, e.g. "ENTERING_AREA_EVENT", "LEAVING_AREA_EVENT". + $ref: '#/components/schemas/LocationEventType' + # x-etsi-mec-origin-type': LocationEventType + # x-etsi-mec-cardinality': '1' + _links: + $ref: '#/components/schemas/_links3' + required: + - notificationType + - address + - userLocationEvent + - _links + x-etsi-notes: "NOTE 1:\tAs specified in [17], clause 6.1.6.2.14.\nNOTE 2:\tAt least one of these attributes shall be present only when reportingLocationReq is set to TRUE in the UserAreaSubscription." + UserDistanceNotification: + x-etsi-ref: 6.4.9 + type: object + properties: + notificationType: + description: Shall be set to "UserDistanceNotification". + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + timeStamp: + # description': Time stamp. + $ref: '#/components/schemas/TimeStamp' + # x-etsi-mec-origin-type': TimeStamp + # x-etsi-mec-cardinality': 0..1 + monitoredUsers: + # description': Indicates the location information related to monitored users. + $ref: '#/components/schemas/UserList' + # x-etsi-mec-origin-type': UserList + # x-etsi-mec-cardinality': '1' + distanceEvent: + # description': Indicates the distance event triggering the notification. See note. + $ref: '#/components/schemas/DistanceCriteria' + # x-etsi-mec-origin-type': DistanceCriteria + # x-etsi-mec-cardinality': '1' + _links: + $ref: '#/components/schemas/_links3' + required: + - notificationType + - monitoredUsers + - distanceEvent + - _links + x-etsi-notes: "NOTE:\tAs specified in [6], clause 5.2.3.2." + TimeStamp: + x-etsi-ref: 6.5.2 + type: object + properties: + seconds: + description: 'The seconds part of the time. Time is defined as + + Unix-time since January 1, 1970, 00:00:00 UTC.' + x-etsi-mec-origin-type: Uint32 + x-etsi-mec-cardinality: '1' + type: integer + format: uint32 + nanoSeconds: + description: 'The nanoseconds part of the time. Time is defined as + + Unix-time since January 1, 1970, 00:00:00 UTC.' + x-etsi-mec-origin-type: Uint32 + x-etsi-mec-cardinality: '1' + type: integer + format: uint32 + required: + - seconds + - nanoSeconds + LocationInfo: + x-etsi-ref: 6.5.3 + type: object + properties: + latitude: + description: "Location latitude, expressed in the range -90\xB0 to +90\xB0. Cardinality greater than one only if \"shape\" equals 7." + x-etsi-mec-origin-type: Float + x-etsi-mec-cardinality: 1..N + type: array + format: float + minItems: 1 + items: + type: float + longitude: + description: "Location longitude, expressed in the range -180\xB0 to +180\xB0. Cardinality greater than one only if \"shape\" equals 7." + x-etsi-mec-origin-type: Float + x-etsi-mec-cardinality: 1..N + type: array + format: float + minItems: 1 + items: + type: float + altitude: + description: Location altitude relative to the WGS84 ellipsoid surface. + x-etsi-mec-origin-type: Float + x-etsi-mec-cardinality: 0..1 + type: number + format: float + accuracy: + description: Horizontal accuracy/(semi-major) uncertainty of location provided in meters, as defined in [14]. Present only if "shape" equals 4, 5 or 6. + x-etsi-mec-origin-type: UnsignedInt + x-etsi-mec-cardinality: 0..1 + type: integer + accuracySemiMinor: + description: Horizontal accuracy/(semi-major) uncertainty of location provided in meters, as defined in [14]. Present only if "shape" equals 4, 5 or 6. + x-etsi-mec-origin-type: UnsignedInt + x-etsi-mec-cardinality: 0..1 + type: integer + accuracyAltitude: + description: Altitude accuracy/uncertainty of location provided in meters, as defined in [14]. Present only if "shape" equals 3 or 4. + x-etsi-mec-origin-type: UnsignedInt + x-etsi-mec-cardinality: 0..1 + type: integer + orientationMajorAxis: + description: "Angle of orientation of the major axis, expressed in the range 0\xB0 to 180\xB0, as defined in [14]. Present only if \"shape\" equals 4 or 6." + x-etsi-mec-origin-type: UnsignedInt + x-etsi-mec-cardinality: 0..1 + type: integer + confidence: + description: Confidence by which the position of a target entity is known to be within the shape description, expressed as a percentage and defined in [14]. Present only if "shape" equals 1, 4 or 6. + x-etsi-mec-origin-type: UnsignedInt + x-etsi-mec-cardinality: 0..1 + type: integer + innerRadius: + description: Present only if "shape" equals 6. + x-etsi-mec-origin-type: UnsignedInt + x-etsi-mec-cardinality: 0..1 + type: integer + uncertaintyRadius: + description: Present only if "shape" equals 6. + x-etsi-mec-origin-type: UnsignedInt + x-etsi-mec-cardinality: 0..1 + type: integer + offsetAngle: + description: Present only if "shape" equals 6. + x-etsi-mec-origin-type: UnsignedInt + x-etsi-mec-cardinality: 0..1 + type: integer + includedAngle: + description: Present only if "shape" equals 6. + x-etsi-mec-origin-type: UnsignedInt + x-etsi-mec-cardinality: 0..1 + type: integer + shape: + type: integer + description: 'Shape information, as detailed in [14], associated with the reported location coordinate: + + 1 = Ellipsoid_Arc + + 2 = ellipsoid_Point + + 3 = ellipsoid_Point_Altitude + + 4 = ellipsoid_Point_Altitude_Uncert_Ellipsoid + + 5 = ellipsoid_Point_Uncert_Circle + + 6 = ellipsoid_Point_Uncert_Ellipse + + 7 = polygon' + enum: + - SEE_DESCRIPTION + x-etsi-mec-origin-type: Enum_inlined + x-etsi-mec-cardinality: '1' + velocity: + $ref: '#/components/schemas/Velocity' + required: + - latitude + - longitude + - shape + WebsockNotifConfig: + x-etsi-ref: 6.5.4 + type: object + properties: + websocketUri: + description: Set by location server to indicate to the service consumer the Websocket URI to be used for delivering notifications. + x-etsi-mec-origin-type: Uri + x-etsi-mec-cardinality: 0..1 + type: string + format: uri + requestWebsocketUri: + description: Set to true by the service consumer to indicate that Websocket delivery is requested. + x-etsi-mec-origin-type: Boolean + x-etsi-mec-cardinality: 0..1 + type: boolean + UserEventPara: + x-etsi-ref: 6.5.5 + type: object + properties: + reportingLocationReq: + description: This IE shall be set to true if a location estimate is required for each event report. + x-etsi-mec-origin-type: boolean + x-etsi-mec-cardinality: 0..1 + type: boolean + accessPointList: + description: One or more access points forming a monitoring area that could be any shape. See note 1. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + type: string + zoneId: + description: "Identifier of zone (e.g. zone001) to monitor. See note\_1." + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + occurrenceInfo: + # description': One time only report indication. See note 2. + $ref: '#/components/schemas/OccurrenceInfo' + # x-etsi-mec-origin-type': OccurrenceInfo + # x-etsi-mec-cardinality': 0..1 + x-etsi-notes: "NOTE 1:\tOnly one of accessPointList and zoneId may be present.\nNOTE 2:\tAs specified in [17], clause 6.1.6.3.16." + ReportingCtrl: + x-etsi-ref: 6.5.6 + type: object + properties: + minimumInterval: + description: Minimum interval between reports in case frequently reporting. Unit is second. + x-etsi-mec-origin-type: UnsignedInt + x-etsi-mec-cardinality: 0..1 + type: integer + maximumFrequency: + description: Maximum frequency (in seconds) of notifications per subscription. + x-etsi-mec-origin-type: UnsignedInt + x-etsi-mec-cardinality: 0..1 + type: integer + maximumCount: + description: Maximum number of notifications. For no maximum, either do not include this element or specify a value of zero. Default value is 0. + x-etsi-mec-origin-type: UnsignedInt + x-etsi-mec-cardinality: 0..1 + type: integer + AreaInfo: + x-etsi-ref: 6.5.7 + type: object + properties: + shape: + type: integer + description: 'The shape of the area monitored: + + 1 = CIRCLE. + + 2 = POLYGON.' + enum: + - SEE_DESCRIPTION + x-etsi-mec-origin-type: Enum(inlined) + x-etsi-mec-cardinality: '1' + points: + description: Shall include one point if the shape is CIRCLE. Shall include 3-15 points if the shape is POLYGON. + x-etsi-mec-origin-type: Point + x-etsi-mec-cardinality: 1..N + type: array + minItems: 1 + items: + $ref: '#/components/schemas/Point' + radius: + description: Shall be present if the shape is CIRCLE. + x-etsi-mec-origin-type: UnsignedInt + x-etsi-mec-cardinality: 0..1 + type: integer + required: + - shape + - points + Point: + x-etsi-ref: 6.5.8 + type: object + properties: + latitude: + description: "Location latitude, expressed in the range -90\xB0 to +90\xB0." + x-etsi-mec-origin-type: Float + x-etsi-mec-cardinality: '1' + type: number + format: float + longitude: + description: "Location longitude, expressed in the range -180\xB0 to +180\xB0." + x-etsi-mec-origin-type: Float + x-etsi-mec-cardinality: '1' + type: number + format: float + required: + - latitude + - longitude + LinkType: + x-etsi-ref: 6.7.2 + type: object + properties: + href: + description: URI referring to a resource. + x-etsi-mec-origin-type: Uri + x-etsi-mec-cardinality: '1' + type: string + format: uri + required: + - href + Origin: + description: Indicates the location of the map origin in the local Cartesian coordinate system. + x-etsi-mec-origin-type: Structure(inlined) + x-etsi-mec-cardinality: 0..1 + type: object + properties: + latitude: + description: "Location latitude, expressed in the range -90\xB0 to +90\xB0." + x-etsi-mec-origin-type: Float + x-etsi-mec-cardinality: '1' + type: number + format: float + longitude: + description: "Location longitude, expressed in the range -180\xB0 to +180\xB0." + x-etsi-mec-origin-type: Float + x-etsi-mec-cardinality: '1' + type: number + format: float + altitude: + description: Location altitude relative to the WGS84 ellipsoid surface. + x-etsi-mec-origin-type: Float + x-etsi-mec-cardinality: 0..1 + type: number + format: float + required: + - latitude + - longitude + Subscription: + description: '' + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: 0..N + type: object + minItems: 0 + properties: + href: + description: The URI referring to the subscription. + x-etsi-mec-origin-type: Uri + x-etsi-mec-cardinality: '1' + type: string + format: uri + subscriptionType: + description: "Type of the subscription. The string shall be set according to the \"subscriptionType\" attribute of the associated subscription data type defined in clauses\_6.3.4, 6.3.5, 6.3.6, 6.3.7 6.3.8 and 6.3.9:\n\"UserLocationEventSubscription\"\n\"UserLocationPeriodicSubscription\"\n\"ZoneLocationEventSubscription\"\n\"ZoneStatusSubscription\"\n\"UserAreaSubscription\"\n\"UserDistanceSubscription\"" + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + required: + - href + - subscriptionType + _links: + description: Hyperlink related to the resource. This shall be only included in the HTTP responses and in HTTP PUT requests. + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: 0..1 + type: object + properties: + self: + # description': Self-referring URI. The URI shall be unique within the UE Location Subscribe as it acts as an ID for the subscription. + $ref: '#/components/schemas/LinkType' + # x-etsi-mec-origin-type': LinkType + # x-etsi-mec-cardinality': '1' + required: + - self + _links1: + description: Hyperlink related to the resource. This shall be only included in the HTTP responses and in HTTP PUT requests. + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: 0..1 + type: object + properties: + self: + # description': Self-referring URI. The URI shall be unique within the User Distance Subscribe as it acts as an ID for the subscription. + $ref: '#/components/schemas/LinkType' + # x-etsi-mec-origin-type': LinkType + # x-etsi-mec-cardinality': '1' + required: + - self + _links2: + description: 'Hyperlink related to the resource. ' + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: '1' + type: object + properties: + subscription: + # description': URI identifying the subscription for the test notification. + $ref: '#/components/schemas/LinkType' + # x-etsi-mec-origin-type': LinkType + # x-etsi-mec-cardinality': '1' + required: + - subscription + _links3: + description: Object containing hyperlinks related to the resource. + x-etsi-mec-origin-type: Structure(inlined) + x-etsi-mec-cardinality: '1' + type: object + properties: + subscription: + # description': A link to the related subscription. + $ref: '#/components/schemas/LinkType' + # x-etsi-mec-origin-type': LinkType + # x-etsi-mec-cardinality': '1' + required: + - subscription + Velocity: + description: Structure with attributes relating to the target entity's velocity, as defined in [14]. + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: 0..1 + type: object + properties: + velocityType: + type: integer + description: 'Velocity information, as detailed in [14], associated with the reported location coordinate: + + 1 = Horizontal + + 2 = Horizontal_Vertical + + 3 = Horizontal_Uncert + + 4 = Horizontal_Vertical_Uncert' + enum: + - SEE_DESCRIPTION + x-etsi-mec-origin-type: Enum_inlined + x-etsi-mec-cardinality: '1' + bearing: + description: "Bearing, expressed in the range 0\xB0 to 360\xB0, as defined in [14]." + x-etsi-mec-origin-type: UnsignedInt + x-etsi-mec-cardinality: '1' + type: integer + horizontalSpeed: + description: Horizontal speed, expressed in km/h and defined in [14]. + x-etsi-mec-origin-type: UnsignedInt + x-etsi-mec-cardinality: '1' + type: integer + uncertainty: + description: Horizontal uncertainty, as defined in [14]. Present only if "velocityType" equals 3 or 4. + x-etsi-mec-origin-type: UnsignedInt + x-etsi-mec-cardinality: 0..1 + type: integer + verticalSpeed: + description: Vertical speed, expressed in km/h and defined in [14]. Present only if "velocityType" equals 2 or 4. + x-etsi-mec-origin-type: Int + x-etsi-mec-cardinality: 0..1 + type: integer + verticalUncertainty: + description: Vertical uncertainty, as defined in [14]. Present only if "velocityType" equals 4. + x-etsi-mec-origin-type: UnsignedInt + x-etsi-mec-cardinality: 0..1 + type: integer + required: + - velocityType + - bearing + - horizontalSpeed + responses: + '200': + description: OK + '204': + description: No Content + '400': + description: 'Bad Request: used to indicate that incorrect parameters were passed to the request.' + content: + application/problem+json: + schema: + $ref: '#/components/schemas/ProblemDetails' + '401': + description: 'Unauthorized: used when the client did not submit credentials.' + content: + application/problem+json: + schema: + $ref: '#/components/schemas/ProblemDetails' + '403': + description: 'Forbidden: operation is not allowed given the current status of the resource.' + content: + application/problem+json: + schema: + $ref: '#/components/schemas/ProblemDetails' + '404': + description: 'Not Found: used when a client provided a URI that cannot be mapped to a valid resource URI.' + content: + application/problem+json: + schema: + $ref: '#/components/schemas/ProblemDetails' + '406': + description: 'Not Acceptable: used to indicate that the server cannot provide the any of the content formats supported by the client.' + content: + application/problem+json: + schema: + $ref: '#/components/schemas/ProblemDetails' + '412': + description: 'Precondition failed: used when a condition has failed during conditional requests, e.g. when using ETags to avoid write conflicts when using PUT' + content: + application/problem+json: + schema: + $ref: '#/components/schemas/ProblemDetails' + '415': + description: 'Unsupported Media Type: used to indicate that the server or the client does not support the content type of the entity body.' + content: + application/problem+json: + schema: + $ref: '#/components/schemas/ProblemDetails' + '422': + description: 'Unprocessable Entity: used to indicate that the server understands the content type of the request entity and that the syntax of the request entity is correct but that the server is unable to process the contained instructions. This error condition can occur if an JSON request body is syntactically correct but semantically incorrect, for example if the target area for the request is considered too large. This error condition can also occur if the capabilities required by the request are not supported.' + content: + application/problem+json: + schema: + $ref: '#/components/schemas/ProblemDetails' + '429': + description: 'Too Many Requests: used when a rate limiter has triggered.' + content: + application/problem+json: + schema: + $ref: '#/components/schemas/ProblemDetails' + parameters: + Query.Zoneid: + description: Identifier of zone (e.g. zone001). + name: zoneid + cardinality: 0..N + in: query + required: false + x-exportParamName: Query.Zoneid + schema: + type: array + items: + type: string + Query.Accesspointid: + description: Identifier of access point (e.g. 001010000000000000000000000000001). + name: accesspointid + cardinality: 0..N + in: query + required: false + x-exportParamName: Query.Accesspointid + schema: + type: array + items: + type: string + Query.Address: + description: Address of users (e.g. 'sip' URI, 'tel' URI, 'acr' URI). See note. + name: address + cardinality: 0..N + in: query + required: false + x-exportParamName: Query.Address + schema: + type: array + items: + type: anyuri + Query.Subscription_type: + description: 'Query parameter to filter on a specific subscription type. Permitted values: + + event + + periodic.' + name: subscription_type + cardinality: 0..1 + in: query + required: false + x-exportParamName: Query.Subscription_type + schema: + type: string + Query.Address1: + description: Address of user (e.g. 'sip' URI, 'tel' URI, 'acr' URI). + name: address + cardinality: 0..1 + in: query + required: false + x-exportParamName: Query.Address1 + schema: + type: uri + Query.Subscription_type1: + description: 'Query parameter to filter on a specific subscription type. Permitted values: + + event + + status.' + name: subscription_type + cardinality: 0..1 + in: query + required: false + x-exportParamName: Query.Subscription_type1 + schema: + type: string + Query.Zoneid1: + description: The identity of the zone. . + name: zoneid + cardinality: 0..1 + in: query + required: false + x-exportParamName: Query.Zoneid1 + schema: + type: string + Query.Address2: + description: "One or two addresses of user to check.\nThe second \"address\" parameter shall not be included when the distance between a user and a location is requested. \nThe second \"address\" parameter shall be included when a location is not provided." + name: address + cardinality: 1..2 + in: query + required: true + x-exportParamName: Query.Address2 + schema: + type: array (uri) + Query.Location: + description: Shall not be included when the distance between two terminals is requested. + name: location + cardinality: 0..1 + in: query + required: false + x-exportParamName: Query.Location + schema: + $ref: '#/components/schemas/Point' + Query.Subscription_type2: + description: 'Query parameter to filter on a specific subscription type. Permitted values: + + event.' + name: subscription_type + cardinality: 0..1 + in: query + required: false + x-exportParamName: Query.Subscription_type2 + schema: + type: string + diff --git a/Auto_Generated_OAS_Output_Files/gs_mec014v020101p.yaml b/Auto_Generated_OAS_Output_Files/gs_mec014v020101p.yaml new file mode 100644 index 0000000..733af14 --- /dev/null +++ b/Auto_Generated_OAS_Output_Files/gs_mec014v020101p.yaml @@ -0,0 +1,180 @@ +openapi: 3.1.0 +jsonSchemaDialect: https://json-schema.org/draft/2020-12/schema +info: + contact: + url: https://forge.etsi.org/rep/mec/gs014-ue-identity-api + title: ETSI GS MEC 014 UE Identity API + description: "The present document focuses on the UE Identity functionality. It describes the related application policy information (including authorization, access control and traffic rule pattern format), information flows, required information and service aggregation patterns. The present document specifies the necessary API, data model and data format, considering existing API(s) if applicable. \n" + license: + name: BSD-3-Clause + url: https://forge.etsi.org/legal-matters + version: 2.1.1 +paths: + /{appInstanceId}/ue_identity_tag_info: + get: + summary: Retrieve information about specific UeIdentityTagInfo. + description: This method retrieves information about a UeIdentityTagInfo resource. + operationId: ueidentitytaginfoGET + tags: + - uEIdentity + parameters: + - $ref: '#/components/parameters/Query.Ueidentitytag' + responses: + '200': + description: It is used to indicate nonspecific success. The response body contains a representation of the UeIdentityTagInfo resource. + content: + application/json: + schema: + type: object + properties: + UeIdentityTagInfo: + $ref: '#/components/schemas/UeIdentityTagInfo' + '400': + $ref: '#/components/responses/400' + '404': + $ref: '#/components/responses/404' + '403': + $ref: '#/components/responses/403' + put: + summary: Register/De-register the information about specific UeIdentityTagInfo. + description: This method registers/deregisters one or more UE Identity tags. It has "replace" semantics. + operationId: ueidentitytaginfoPUT + tags: + - uEIdentity + requestBody: + description: The updated "state" for each included UE Identity tag is included in the entity body of the request. + required: true + content: + application/json: + schema: + type: object + properties: + UeIdentityTagInfo: + $ref: '#/components/schemas/UeIdentityTagInfo' + responses: + '200': + description: It is used to indicate success. The response body contains a representation of the UeIdentityTagInfo resource. + content: + application/json: + schema: + type: object + properties: + UeIdentityTagInfo: + $ref: '#/components/schemas/UeIdentityTagInfo' + '400': + $ref: '#/components/responses/400' + '404': + $ref: '#/components/responses/404' + '403': + $ref: '#/components/responses/403' + '412': + $ref: '#/components/responses/412' +components: + schemas: + ProblemDetails: + type: object + properties: + type: + type: string + format: uri + description: A URI reference according to IETF RFC 3986 that identifies the problem type + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: URI + title: + type: string + description: A short, human-readable summary of the problem type + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: String + status: + type: integer + format: uint32 + description: The HTTP status code for this occurrence of the problem + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: Uint32 + detail: + type: string + description: A human-readable explanation specific to this occurrence of the problem + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: String + instance: + type: string + format: uri + description: A URI reference that identifies the specific occurrence of the problem + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: URI + UeIdentityTagInfo: + x-etsi-ref: 6.2.2 + type: object + properties: + ueIdentityTags: + type: array + items: + $ref: '#/components/schemas/UeIdentityTags' + required: + - ueIdentityTags + UeIdentityTags: + description: 1 to N tags presented by a MEC Application instance to a MEC Platform + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: 1..N + type: object + minItems: 1 + properties: + ueIdentityTag: + description: Specific tag presented by a MEC Application instance to a MEC Platform + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + state: + type: integer + description: 'The following numeric values are defined: + + 0 = UNREGISTERED + + 1 = REGISTERED' + enum: + - SEE_DESCRIPTION + x-etsi-mec-origin-type: Enum_inlined + x-etsi-mec-cardinality: '1' + required: + - ueIdentityTag + - state + responses: + '200': + description: OK + '400': + description: 'Bad Request: used to indicate that incorrect parameters were passed to the request.' + content: + application/problem+json: + schema: + $ref: '#/components/schemas/ProblemDetails' + '403': + description: 'Forbidden: operation is not allowed given the current status of the resource.' + content: + application/problem+json: + schema: + $ref: '#/components/schemas/ProblemDetails' + '404': + description: 'Not Found: used when a client provided a URI that cannot be mapped to a valid resource URI.' + content: + application/problem+json: + schema: + $ref: '#/components/schemas/ProblemDetails' + '412': + description: 'Precondition failed: used when a condition has failed during conditional requests, e.g. when using ETags to avoid write conflicts when using PUT' + content: + application/problem+json: + schema: + $ref: '#/components/schemas/ProblemDetails' + parameters: + Query.Ueidentitytag: + description: Represents one or more UEs. + name: ueidentitytag + cardinality: 1..N + in: query + required: true + x-exportParamName: Query.Ueidentitytag + schema: + type: array + items: + type: string + diff --git a/Auto_Generated_OAS_Output_Files/gs_mec015v020201p_BWM_API.yaml b/Auto_Generated_OAS_Output_Files/gs_mec015v020201p_BWM_API.yaml new file mode 100644 index 0000000..6f06384 --- /dev/null +++ b/Auto_Generated_OAS_Output_Files/gs_mec015v020201p_BWM_API.yaml @@ -0,0 +1,485 @@ +openapi: 3.1.0 +jsonSchemaDialect: https://json-schema.org/draft/2020-12/schema +info: + contact: + url: https://forge.etsi.org/rep/mec/gs015-bandwith-mgmt-api + title: ETSI GS MEC 015 Multi-access Traffic Steering APIs + description: The present document focuses on the Multi-access Traffic Steering multi-access edge service. It describes the related application policy information including authorization and access control, information flows, required information and service aggregation patterns. The present document specifies the necessary API with the data model and data format. + license: + name: BSD-3-Clause + url: https://forge.etsi.org/legal-matters + version: 2.2.1 +paths: + /bw_allocations/{allocationId}: + get: + summary: Retrieve information about a specific bandwidthAllocation. + description: "This method retrieves information about a bandwidthAllocation resource. This method is typically used in \"Get configured bandwidth allocation from Bandwidth Management Service\" procedure as described in clause\_6.2.5." + operationId: bwallocationsByIdGET + tags: + - bwm + responses: + '200': + description: It is used to indicate nonspecific success. The response body contains a representation of the resource. + content: + application/json: + schema: + type: object + properties: + BwInfo: + $ref: '#/components/schemas/BwInfo' + '400': + $ref: '#/components/responses/400' + '404': + $ref: '#/components/responses/404' + '403': + $ref: '#/components/responses/403' + put: + summary: Update the information about a specific bandwidthAllocation. + description: "This method updates the information about a bandwidthAllocation resource. As specified in ETSI GS\_MEC\_009\_[6], the PUT HTTP method has \"replace\" semantics." + operationId: bwallocationsByIdPUT + tags: + - bwm + requestBody: + description: BwInfo with updated information is included as entity body of the request. + required: true + content: + application/json: + schema: + type: object + properties: + BwInfo: + $ref: '#/components/schemas/BwInfo' + responses: + '200': + description: Upon success, a response body containing data type describing the updated BwInfo is returned. + content: + application/json: + schema: + type: object + properties: + BwInfo: + $ref: '#/components/schemas/BwInfo' + '400': + $ref: '#/components/responses/400' + '404': + $ref: '#/components/responses/404' + '403': + $ref: '#/components/responses/403' + '412': + $ref: '#/components/responses/412' + patch: + summary: Modify the information about a specific existing bandwidthAllocation by sending updates on the data structure. + description: 'This method updates the information about a bandwidthAllocation resource. As specified in ETSI GS MEC 009 [6], the PATCH HTTP method updates a resource on top of the existing resource state by just including the changes ("deltas") in the request body. ' + operationId: bwallocationsByIdPATCH + tags: + - bwm + requestBody: + description: Description of the changes to instruct the server how to modify the resource representation. . + required: true + content: + application/json: + schema: + type: object + properties: + BwInfoDeltas: + $ref: '#/components/schemas/BwInfoDeltas' + responses: + '200': + description: Upon success, a response body containing data type describing the updated BwInfo is returned. + content: + application/json: + schema: + type: object + properties: + BwInfo: + $ref: '#/components/schemas/BwInfo' + '400': + $ref: '#/components/responses/400' + '404': + $ref: '#/components/responses/404' + '403': + $ref: '#/components/responses/403' + '412': + $ref: '#/components/responses/412' + delete: + summary: Remove a specific bandwidthAllocation. + description: DELETE method is typically used in "Unregister from Bandwidth Management Service" procedure as described in clause 6.2.3. + operationId: bwallocationsByIdDELETE + tags: + - bwm + responses: + '204': + $ref: '#/components/responses/204' + '404': + $ref: '#/components/responses/404' + '403': + $ref: '#/components/responses/403' + /bw_allocations: + get: + summary: Retrieve information about a list of bandwidthAllocation resources. + description: This method retrieves information about a list of bandwidthAllocation resources. This method is typically used in "Get configured bandwidth allocation from Bandwidth Management Service" procedure as described in clause 6.2.5. + operationId: bwallocationsGET + tags: + - bwm + parameters: + - $ref: '#/components/parameters/Query.App_instance_id' + - $ref: '#/components/parameters/Query.App_name' + - $ref: '#/components/parameters/Query.Session_id' + responses: + '200': + description: Upon success, a response body containing an array of the bandwidthAllocations is returned. + content: + application/json: + schema: + type: object + properties: + BwInfo: + type: array + items: + $ref: '#/components/schemas/BwInfo' + '400': + $ref: '#/components/responses/400' + '404': + $ref: '#/components/responses/404' + '403': + $ref: '#/components/responses/403' + post: + summary: Create a bandwidthAllocation resource. + description: This method is used to create a bandwidthAllocation resource. This method is typically used in "Register to Bandwidth Management Service" procedure as described in clause 6.2.1. + operationId: bwallocationsPOST + tags: + - bwm + requestBody: + description: Entity body in the request contains BwInfo to be created. + required: true + content: + application/json: + schema: + type: object + properties: + BwInfo: + $ref: '#/components/schemas/BwInfo' + responses: + '201': + description: Upon success, the HTTP response shall include a "Location" HTTP header that contains the resource URI of the created resource. + content: + application/json: + schema: + type: object + properties: + BwInfo: + $ref: '#/components/schemas/BwInfo' + '400': + $ref: '#/components/responses/400' + '404': + $ref: '#/components/responses/404' + '403': + $ref: '#/components/responses/403' +components: + schemas: + ProblemDetails: + type: object + properties: + type: + type: string + format: uri + description: A URI reference according to IETF RFC 3986 that identifies the problem type + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: URI + title: + type: string + description: A short, human-readable summary of the problem type + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: String + status: + type: integer + format: uint32 + description: The HTTP status code for this occurrence of the problem + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: Uint32 + detail: + type: string + description: A human-readable explanation specific to this occurrence of the problem + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: String + instance: + type: string + format: uri + description: A URI reference that identifies the specific occurrence of the problem + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: URI + BwInfo: + x-etsi-ref: 7.2.2 + type: object + properties: + allocationId: + description: Bandwidth allocation instance identifier + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + timeStamp: + $ref: '#/components/schemas/TimeStamp' + appInsId: + description: Application instance identifier + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + appName: + description: Name of the application + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + requestType: + type: integer + description: 'Numeric value (0 - 255) corresponding to specific type of consumer as following: + + 0 = APPLICATION_SPECIFIC_BW_ALLOCATION + + 1 = SESSION_SPECIFIC_BW_ALLOCATION' + enum: + - SEE_DESCRIPTION + x-etsi-mec-origin-type: Enum_inlined + x-etsi-mec-cardinality: '1' + sessionFilter: + type: array + items: + $ref: '#/components/schemas/SessionFilter' + fixedBWPriority: + type: string + description: Indicates the allocation priority when dealing with several applications or sessions in parallel. Values are not defined in the present document + enum: + - SEE_DESCRIPTION + x-etsi-mec-origin-type: Enum + x-etsi-mec-cardinality: 0..1 + fixedAllocation: + description: Size of requested fixed BW allocation in [bps] + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + allocationDirection: + description: 'The direction of the requested BW allocation: + + 00 = Downlink (towards the UE) + + 01 = Uplink (towards the application/session) + + 10 = Symmetrical' + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + required: + - appInsId + - requestType + - fixedAllocation + - allocationDirection + BwInfoDeltas: + x-etsi-ref: 7.2.3 + type: object + properties: + allocationId: + description: Bandwidth allocation instance identifier + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + appInsId: + description: Application instance identifier + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + requestType: + type: integer + description: 'Numeric value (0 - 255) corresponding to specific type of consumer as following: + + 0 = APPLICATION_SPECIFIC_BW_ALLOCATION + + 1 = SESSION_SPECIFIC_BW_ALLOCATION' + enum: + - SEE_DESCRIPTION + x-etsi-mec-origin-type: Enum_inlined + x-etsi-mec-cardinality: '1' + sessionFilter: + type: array + items: + $ref: '#/components/schemas/SessionFilter1' + fixedBWPriority: + type: string + description: Indicates the allocation priority when dealing with several applications or sessions in parallel. Values are not defined in the present document + enum: + - SEE_DESCRIPTION + x-etsi-mec-origin-type: Enum_inlined + x-etsi-mec-cardinality: 0..1 + fixedAllocation: + description: Size of requested fixed BW allocation in [bps] + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + allocationDirection: + description: 'The direction of the requested BW allocation: + + 00 = Downlink (towards the UE) + + 01 = Uplink (towards the application/session) + + 10 = Symmetrical' + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + required: + - allocationId + - appInsId + - requestType + TimeStamp: + description: Time stamp to indicate when the corresponding information elements are sent + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: 0..1 + type: object + properties: + seconds: + description: The seconds part of the Time. Time is defined as Unixtime since January 1, 1970, 00:00:00 UTC + x-etsi-mec-origin-type: Uint32 + x-etsi-mec-cardinality: '1' + type: integer + format: uint32 + nanoSeconds: + description: The nanoseconds part of the Time. Time is defined as Unix-time since January 1, 1970, 00:00:00 UTC + x-etsi-mec-origin-type: Uint32 + x-etsi-mec-cardinality: '1' + type: integer + format: uint32 + required: + - seconds + - nanoSeconds + SessionFilter: + description: Session filtering criteria, applicable when requestType is set as SESSION_SPECIFIC_BW_ALLOCATION. Any filtering criteria shall define a single session only. In case multiple sessions match sessionFilter, the request shall be rejected + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: 0..N + type: object + minItems: 0 + properties: + sourceIp: + description: "Source address identity of session. The string for an IPv4 address shall be formatted in the \"dotted decimal\" notation as defined in IETF RFC\_1166\_[10]. The string for an IPv6 address shall be formatted according to clause 4 of IETF RFC\_5952\_[11], with in CIDR notation [12] used to provide the routing prefix" + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + sourcePort: + description: Source port identity of session + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + dstAddress: + description: "Destination address identity of session. The string for an IPv4 address shall be formatted in the \"dotted decimal\" notation as defined in IETF RFC\_1166\_[10]. The string for an IPv6 address shall be formatted according to clause 4 of IETF RFC\_5952\_[11], with in CIDR notation [12] used to provide the routing prefix" + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + dstPort: + description: Destination port identity of session + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + protocol: + description: Protocol number + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + SessionFilter1: + description: Session filtering criteria, applicable when requestType is set as SESSION_SPECIFIC_BW_ALLOCATION. Any filtering criteria shall define a single session only. In case multiple sessions match sessionFilter, the request shall be rejected + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: 0..N + type: object + minItems: 0 + properties: + sourceIp: + description: "Source address identity of session. The string for an IPv4 address shall be formatted in the \"dotted decimal\" notation as defined in IETF RFC\_1166\_[10]. The string for an IPv6 address shall be formatted according to clause 4 of IETF\_RFC\_5952\_[11], with in CIDR notation [12] used to provide the routing prefix" + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + sourcePort: + description: 'Source port identity of session ' + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + dstAddress: + description: "Destination address identity of session. The string for an IPv4 address shall be formatted in the \"dotted decimal\" notation as defined in IETF RFC\_1166\_[10]. The string for an IPv6 address shall be formatted according to clause 4 of IETF\_RFC\_5952\_[11], with in CIDR notation [12] used to provide the routing prefix" + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + dstPort: + description: Destination port identity of session + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + protocol: + description: Protocol number + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + responses: + '200': + description: OK + '204': + description: No Content + '400': + description: 'Bad Request: used to indicate that incorrect parameters were passed to the request.' + content: + application/problem+json: + schema: + $ref: '#/components/schemas/ProblemDetails' + '403': + description: 'Forbidden: operation is not allowed given the current status of the resource.' + content: + application/problem+json: + schema: + $ref: '#/components/schemas/ProblemDetails' + '404': + description: 'Not Found: used when a client provided a URI that cannot be mapped to a valid resource URI.' + content: + application/problem+json: + schema: + $ref: '#/components/schemas/ProblemDetails' + '412': + description: 'Precondition failed: used when a condition has failed during conditional requests, e.g. when using ETags to avoid write conflicts when using PUT' + content: + application/problem+json: + schema: + $ref: '#/components/schemas/ProblemDetails' + parameters: + Query.App_instance_id: + description: 'A MEC application instance may use multiple app_instance_ids as an input parameter to query the bandwidth allocation of a list of MEC application instances. app_instance_id corresponds to appInsId defined in table 7.2.2-1. + + See note.' + name: app_instance_id + cardinality: 0..N + in: query + required: false + x-exportParamName: Query.App_instance_id + schema: + type: array + items: + type: string + Query.App_name: + description: 'A MEC application instance may use multiple app_names as an input parameter to query the bandwidth allocation of a list of MEC application instances. app_name corresponds to appName defined in table 7.2.2-1. + + See note.' + name: app_name + cardinality: 0..N + in: query + required: false + x-exportParamName: Query.App_name + schema: + type: array + items: + type: string + Query.Session_id: + description: 'A MEC application instance may use session_id as an input parameter to query the bandwidth allocation of a list of sessions. session_id corresponds to allocationId defined in table 7.2.2-1. + + See note.' + name: session_id + cardinality: 0..N + in: query + required: false + x-exportParamName: Query.Session_id + schema: + type: array + items: + type: string + diff --git a/Auto_Generated_OAS_Output_Files/gs_mec015v020201p_MTS_API.yaml b/Auto_Generated_OAS_Output_Files/gs_mec015v020201p_MTS_API.yaml new file mode 100644 index 0000000..d23acb6 --- /dev/null +++ b/Auto_Generated_OAS_Output_Files/gs_mec015v020201p_MTS_API.yaml @@ -0,0 +1,557 @@ +openapi: 3.1.0 +jsonSchemaDialect: https://json-schema.org/draft/2020-12/schema +info: + contact: + url: https://forge.etsi.org/rep/mec/gs015-bandwith-mgmt-api + title: ETSI GS MEC 015 Multi-access Traffic Steering APIs + description: The present document focuses on the Multi-access Traffic Steering multi-access edge service. It describes the related application policy information including authorization and access control, information flows, required information and service aggregation patterns. The present document specifies the necessary API with the data model and data format. + license: + name: BSD-3-Clause + url: https://forge.etsi.org/legal-matters + version: 2.2.1 +paths: + /mts_capability_info: + get: + summary: Retrieve the MTS capability information. + description: The GET method is used to query information about the MTS information. This method is typically used in the "Get MTS service Info from the MTS Service" procedure as described in clause 6.2.6. + operationId: mtscapabilityinfoGET + tags: + - mts + responses: + '200': + description: Upon success, a response body containing the MTS capability information is returned. + content: + application/json: + schema: + type: object + properties: + MtsCapabilityInfo: + $ref: '#/components/schemas/MtsCapabilityInfo' + '400': + $ref: '#/components/responses/400' + '403': + $ref: '#/components/responses/403' + '404': + $ref: '#/components/responses/404' + /mts_sessions/{sessionId}: + get: + summary: Retrieve information about specific MTS session. + description: This method retrieves information about an individual MTS session. This method is typically used in the "Get configured MTS Session Info from the MTS Service" procedure as described in clause 6.2.10. + operationId: mtssessionsByIdGET + tags: + - mts + responses: + '200': + description: It is used to indicate nonspecific success. The response body contains a representation of the resource. + content: + application/json: + schema: + type: object + properties: + MtsSessionInfo: + $ref: '#/components/schemas/MtsSessionInfo' + '400': + $ref: '#/components/responses/400' + '404': + $ref: '#/components/responses/404' + '403': + $ref: '#/components/responses/403' + put: + summary: Update the information about specific MTS session. + description: 'This method updates the information about an individual MTS session. As specified in ETSI GS MEC 009 [6], the PUT HTTP method has "replace" semantics. ' + operationId: mtssessionsByIdPUT + tags: + - mts + requestBody: + description: MtsSessionInfo with updated information is included as entity body of the request. + required: true + content: + application/json: + schema: + type: object + properties: + MtsSessionInfo: + $ref: '#/components/schemas/MtsSessionInfo' + responses: + '200': + description: Upon success, a response body containing data type describing the updated MtsSessionInfo is returned. + content: + application/json: + schema: + type: object + properties: + MtsSessionInfo: + $ref: '#/components/schemas/MtsSessionInfo' + '400': + $ref: '#/components/responses/400' + '404': + $ref: '#/components/responses/404' + '403': + $ref: '#/components/responses/403' + '412': + $ref: '#/components/responses/412' + delete: + summary: Remove specific MTS session. + description: DELETE method is typically used in "Unregister from the MTS Service" procedure as described in clause 6.2.8. + operationId: mtssessionsByIdDELETE + tags: + - mts + responses: + '204': + $ref: '#/components/responses/204' + '404': + $ref: '#/components/responses/404' + '403': + $ref: '#/components/responses/403' + /mts_sessions: + get: + summary: Retrieve information about a list of MTS sessions. + description: This method retrieves information about a list of MTS sessions. This method is typically used in the "Get configured MTS Session Info from the MTS Service" procedure as described in clause 6.2.10. + operationId: mtssessionsGET + tags: + - mts + parameters: + - $ref: '#/components/parameters/Query.App_instance_id' + - $ref: '#/components/parameters/Query.App_name' + - $ref: '#/components/parameters/Query.Session_id' + responses: + '200': + description: Upon success, a response body containing an array of the MTS sessions is returned. + content: + application/json: + schema: + type: object + properties: + MtsSessionInfo: + type: array + items: + $ref: '#/components/schemas/MtsSessionInfo' + '400': + $ref: '#/components/responses/400' + '404': + $ref: '#/components/responses/404' + '403': + $ref: '#/components/responses/403' + post: + summary: Create a MTS session. + description: This method is used to create a MTS session. This method is typically used in "Register application to the MTS Service" procedure as described in clause 6.2.7. + operationId: mtssessionsPOST + tags: + - mts + requestBody: + description: Entity body in the request contains MtsSessionInfo to be created. + required: true + content: + application/json: + schema: + type: object + properties: + MtsSessionInfo: + $ref: '#/components/schemas/MtsSessionInfo' + responses: + '201': + description: Upon success, the HTTP response shall include a "Location" HTTP header that contains the resource URI of the created resource. + content: + application/json: + schema: + type: object + properties: + MtsSessionInfo: + $ref: '#/components/schemas/MtsSessionInfo' + '400': + $ref: '#/components/responses/400' + '404': + $ref: '#/components/responses/404' + '403': + $ref: '#/components/responses/403' +components: + schemas: + ProblemDetails: + type: object + properties: + type: + type: string + format: uri + description: A URI reference according to IETF RFC 3986 that identifies the problem type + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: URI + title: + type: string + description: A short, human-readable summary of the problem type + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: String + status: + type: integer + format: uint32 + description: The HTTP status code for this occurrence of the problem + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: Uint32 + detail: + type: string + description: A human-readable explanation specific to this occurrence of the problem + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: String + instance: + type: string + format: uri + description: A URI reference that identifies the specific occurrence of the problem + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: URI + Uint32: + type: integer + format: uint32 + MtsCapabilityInfo: + x-etsi-ref: 7.2.4 + type: object + properties: + timeStamp: + $ref: '#/components/schemas/TimeStamp' + mtsAccessInfo: + type: array + items: + $ref: '#/components/schemas/MtsAccessInfo' + mtsMode: + description: 'Numeric value corresponding to a specific MTS operation supported by the TMS + + 0 = low cost, i.e. using the unmetered access network connection whenever it is available + + 1 = low latency, i.e. using the access network connection with lower latency + + 2 = high throughput, i.e. using the access network connection with higher throughput, or/and multiple access network connection simultaneously if supported + + 3 = redundancy, i.e. sending duplicated (redundancy) packets over multiple access network connections for highreliability and low-latency applications + + 4 = QoS, i.e. performing MTS based on the specific QoS requirements from the app' + x-etsi-mec-origin-type: Uint32 + x-etsi-mec-cardinality: 1..N + type: array + format: uint32 + minItems: 1 + items: + $ref: '#/components/schemas/Uint32' + required: + - mtsAccessInfo + - mtsMode + x-etsi-notes: "NOTE:\tA metered connection is a network connection that has a maximum data usage in a specific period, e.g.\_per hour/day/week/month. The user may get billed extra charges if they go over the allotted amount." + MtsSessionInfo: + x-etsi-ref: 7.2.5 + type: object + properties: + sessionId: + description: MTS session instance identifier + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + timeStamp: + $ref: '#/components/schemas/TimeStamp1' + appInsId: + description: Application instance identifier + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + appName: + description: Name of the application + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + requestType: + type: integer + description: 'Numeric value (0 - 255) corresponding to specific type of consumer as following: + + 0 = APPLICATION_SPECIFIC_MTS_SESSION + + 1 = FLOW_SPECIFIC_MTS_SESSION' + enum: + - SEE_DESCRIPTION + x-etsi-mec-origin-type: Enum_inlined + x-etsi-mec-cardinality: '1' + flowFilter: + type: array + items: + $ref: '#/components/schemas/FlowFilter' + qosD: + $ref: '#/components/schemas/QosD' + mtsMode: + description: 'Numeric value (0 - 255) corresponding to a specific MTS mode of the MTS session: + + 0 = low cost, i.e. using the unmetered access network connection whenever it is available + + 1 = low latency, i.e. using the access network connection with lower latency + + 2 = high throughput, i.e. using the access network connection with higher throughput, or multiple access network connection simultaneously + + 3 = redundancy, i.e. sending duplicated (redundancy) packets over multiple access network connections for high-reliability and low-latency applications + + 4 = QoS, i.e. performing MTS based on the QoS requirement (qosD)' + x-etsi-mec-origin-type: Uint32 + x-etsi-mec-cardinality: '1' + type: integer + format: uint32 + trafficDirection: + description: 'The direction of the requested MTS session: + + 00 = Downlink (towards the UE) + + 01 = Uplink (towards the application/session) + + 10 = Symmetrical (see note)' + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + required: + - appInsId + - requestType + - flowFilter + - qosD + - mtsMode + - trafficDirection + x-etsi-notes: "NOTE:\tFor the downlink direction of a symmetrical flow, \"sourceIp\" and \"sourcePort\" in the \"flowFilter\" structure are used for source address and port, respectively; \"dstIp\" and \"dstPort\" are used for destination address and port, respectively. For the uplink direction of a symmetrical flow, \"sourceIp\" and \"sourcePort\" are used for destination address and port, respectively; \"dstIp\" and \"dstPort\" are used for source address and port, respectively." + TimeStamp: + description: Time stamp to indicate when the corresponding information elements are sent + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: 0..1 + type: object + properties: + seconds: + description: Time in seconds in Unix-time since January 1, 1970, 00:00:00 UTC + x-etsi-mec-origin-type: Uint32 + x-etsi-mec-cardinality: '1' + type: integer + format: uint32 + nanoSeconds: + description: Time in nanoseconds in Unix-time since January 1, 1970, 00:00:00 UTC + x-etsi-mec-origin-type: Uint32 + x-etsi-mec-cardinality: '1' + type: integer + format: uint32 + required: + - seconds + - nanoSeconds + MtsAccessInfo: + description: The information on access network connection as defined below + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: 1..N + type: object + minItems: 1 + properties: + accessId: + description: Unique identifier for the access network connection + x-etsi-mec-origin-type: Uint32 + x-etsi-mec-cardinality: '1' + type: integer + format: uint32 + accessType: + description: 'Numeric value (0-255) corresponding to specific type of access network as following: + + 0 = Unknown + + 1 = Any IEEE802.11-based WLAN technology + + 2 = Any 3GPP-based Cellular technology + + 3 = Any Fixed Access + + 11 = IEEE802.11 a/b/g WLAN + + 12 = IEEE 802.11 a/b/g/n WLAN + + 13 = IEEE 802.11 a/b/g/n/ac WLAN + + 14 = IEEE 802.11 a/b/g/n/ac/ax WLAN (Wi-Fi 6) + + 15 = IEEE 802.11 b/g/n WLAN + + 31 = 3GPP GERAN/UTRA (2G/3G) + + 32 = 3GPP E-UTRA (4G/LTE) + + 33 = 3GPP NR (5G) ' + x-etsi-mec-origin-type: Uint32 + x-etsi-mec-cardinality: '1' + type: integer + format: uint32 + metered: + description: 'Numeric value (0-255) corresponding to the following: + + 0: the connection is not metered (see note) + + 1: the connection is metered + + 2: unknown ' + x-etsi-mec-origin-type: Uint32 + x-etsi-mec-cardinality: '1' + type: integer + format: uint32 + required: + - accessId + - accessType + - metered + TimeStamp1: + description: 'Time stamp to indicate when the corresponding information elements are sent ' + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: 0..1 + type: object + properties: + seconds: + description: The seconds part of the Time. Time is defined as Unixtime since January 1, 1970, 00:00:00 UTC + x-etsi-mec-origin-type: Uint32 + x-etsi-mec-cardinality: '1' + type: integer + format: uint32 + nanoSeconds: + description: The nanoseconds part of the Time. Time is defined as Unix-time since January 1, 1970, 00:00:00 UTC + x-etsi-mec-origin-type: Uint32 + x-etsi-mec-cardinality: '1' + type: integer + format: uint32 + required: + - seconds + - nanoSeconds + FlowFilter: + description: Traffic flow filtering criteria, applicable only if when requestType is set as FLOW_SPECIFIC_MTS_SESSION. Any filtering criteria shall define a single session only. In case multiple sessions match flowFilter, the request shall be rejected. If the flowFilter field is included, at least one of its subfields shall be included. Any flowFilter subfield that is not included shall be ignored in traffic flow filtering + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: 1..N + type: object + minItems: 1 + properties: + sourceIp: + description: "Source address identity of session. The string for an IPv4 address shall be formatted in the \"dotted decimal\" notation as defined in IETF RFC\_1166\_[10]. The string for an IPv6 address shall be formatted according to clause 4 of IETF RFC\_5952\_[11], with in CIDR notation [12] used to provide the routing prefix" + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + sourcePort: + description: 'Source port identity of session ' + x-etsi-mec-origin-type: Uint32 + x-etsi-mec-cardinality: 0..1 + type: integer + format: uint32 + dstIp: + description: "Destination address identity of session. The string for an IPv4 address shall be formatted in the \"dotted decimal\" notation as defined in IETF RFC\_1166\_[10]. The string for an IPv6 address shall be formatted according to clause 4 of IETF RFC\_5952\_[11], with in CIDR notation [12] used to provide the routing prefix" + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + dstPort: + description: Destination port identity of session + x-etsi-mec-origin-type: Uint32 + x-etsi-mec-cardinality: 0..1 + type: integer + format: uint32 + protocol: + description: Protocol number + x-etsi-mec-origin-type: Uint32 + x-etsi-mec-cardinality: 0..1 + type: integer + format: uint32 + dscp: + description: DSCP in the IPv4 header or Traffic Class in the IPv6 header + x-etsi-mec-origin-type: Uint32 + x-etsi-mec-cardinality: 0..1 + type: integer + format: uint32 + flowlabel: + description: Flow Label in the IPv6 header, applicable only if the flow is IPv6 + x-etsi-mec-origin-type: Uint32 + x-etsi-mec-cardinality: 0..1 + type: integer + format: uint32 + QosD: + description: QoS requirement description of the MTS session, applicable only if mtsMode = 4 (QoS). If the qosD field is included, at least one of its subfields shall be included. Any qosD subfield that is not included shall be ignored in Multi-access Traffic Steering (MTS) + x-etsi-mec-origin-type: Structure + x-etsi-mec-cardinality: '1' + type: object + properties: + minTpt: + # description': minimal throughput in [kbps] + $ref: '#/components/schemas/Unit32' + # x-etsi-mec-origin-type': Unit32 + # x-etsi-mec-cardinality': 0..1 + maxLatency: + # description': tolerable (one-way) delay in [10 nanoseconds] + $ref: '#/components/schemas/Unit32' + # x-etsi-mec-origin-type': Unit32 + # x-etsi-mec-cardinality': 0..1 + maxLoss: + # description': tolerable packet loss rate in [1/10^x] + $ref: '#/components/schemas/Unit32' + # x-etsi-mec-origin-type': Unit32 + # x-etsi-mec-cardinality': 0..1 + maxJitter: + # description': tolerable jitter in [10 nanoseconds] + $ref: '#/components/schemas/Unit32' + # x-etsi-mec-origin-type': Unit32 + # x-etsi-mec-cardinality': 0..1 + priority: + # description': 'numeric value (0 - 255) corresponding to the traffic priority: 0: low; 1: medium; 2: high; 3: critical' + $ref: '#/components/schemas/Unit32' + # x-etsi-mec-origin-type': Unit32 + # x-etsi-mec-cardinality': 0..1 + responses: + '200': + description: OK + '204': + description: No Content + '400': + description: 'Bad Request: used to indicate that incorrect parameters were passed to the request.' + content: + application/problem+json: + schema: + $ref: '#/components/schemas/ProblemDetails' + '403': + description: 'Forbidden: operation is not allowed given the current status of the resource.' + content: + application/problem+json: + schema: + $ref: '#/components/schemas/ProblemDetails' + '404': + description: 'Not Found: used when a client provided a URI that cannot be mapped to a valid resource URI.' + content: + application/problem+json: + schema: + $ref: '#/components/schemas/ProblemDetails' + '412': + description: 'Precondition failed: used when a condition has failed during conditional requests, e.g. when using ETags to avoid write conflicts when using PUT' + content: + application/problem+json: + schema: + $ref: '#/components/schemas/ProblemDetails' + parameters: + Query.App_instance_id: + description: 'A MEC application instance may use multiple app_instance_ids as an input parameter to query the MTS session of a list of MEC application instances. app_instance_id corresponds to appInsId defined in table 7.2.5-1. + + See note.' + name: app_instance_id + cardinality: 0..N + in: query + required: false + x-exportParamName: Query.App_instance_id + schema: + type: array + items: + type: string + Query.App_name: + description: 'A MEC application instance may use multiple app_names as an input parameter to query the MTS session of a list of MEC application instances. app_name corresponds to appName defined in table 7.2.5-1. + + See note.' + name: app_name + cardinality: 0..N + in: query + required: false + x-exportParamName: Query.App_name + schema: + type: array + items: + type: string + Query.Session_id: + description: 'A MEC application instance may use session_id as an input parameter to query the information of a list of MTS sessions. session_id corresponds to sessionId defined in table 7.2.5-1. + + See note.' + name: session_id + cardinality: 0..N + in: query + required: false + x-exportParamName: Query.Session_id + schema: + type: array + items: + type: string + diff --git a/Auto_Generated_OAS_Output_Files/gs_mec021v020201p.yaml b/Auto_Generated_OAS_Output_Files/gs_mec021v020201p.yaml new file mode 100644 index 0000000..da70498 --- /dev/null +++ b/Auto_Generated_OAS_Output_Files/gs_mec021v020201p.yaml @@ -0,0 +1,1253 @@ +openapi: 3.1.0 +jsonSchemaDialect: https://json-schema.org/draft/2020-12/schema +info: + contact: + url: https://forge.etsi.org/rep/mec/gs021-amsi-api + title: ETSI GS MEC 021 Application Mobility Service API + description: The ETSI MEC ISG Mobility Service API described using OpenAPI. + license: + name: BSD-3-Clause + url: https://forge.etsi.org/legal-matters + version: 2.2.1 +paths: + /app_mobility_services: + get: + summary: Query multiple Application Mobility Service resources. + description: The GET method is to retrieve information about the registered Application Mobility Service. Upon success, the response contains entity body with the list of application mobility services that are present for the requestor. + operationId: appmobilityservicesGET + tags: + - app_mobility_services + 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' + responses: + '200': + description: 'Information about zero or more application mobility services was queried successfully. + + + The response body shall contain in an array the representations of zero or more application mobility services.' + content: + application/json: + schema: + type: object + properties: + RegistrationInfo: + type: array + items: + $ref: '#/components/schemas/RegistrationInfo' + '400': + $ref: '#/components/responses/400' + '401': + $ref: '#/components/responses/401' + '403': + $ref: '#/components/responses/403' + '404': + $ref: '#/components/responses/404' + '406': + $ref: '#/components/responses/406' + '429': + $ref: '#/components/responses/429' + post: + summary: Create an Application Mobility Service resource. + description: The POST method is used to create a new application mobility service for the service requester. Upon success, the response contains entity body of created application mobility service with the service ID. + operationId: appmobilityservicesPOST + tags: + - app_mobility_services + requestBody: + description: The POST method is to create an application mobility service resource. + required: true + content: + application/json: + schema: + type: object + properties: + RegistrationInfo: + $ref: '#/components/schemas/RegistrationInfo' + responses: + '201': + description: 'An application mobility service with a service identifier was created successfully. + + + The HTTP response shall include a "Location" HTTP header that contains the resource URI of the created application instance.' + content: + application/json: + schema: + type: object + properties: + RegistrationInfo: + $ref: '#/components/schemas/RegistrationInfo' + '400': + $ref: '#/components/responses/400' + '401': + $ref: '#/components/responses/401' + '403': + $ref: '#/components/responses/403' + '404': + $ref: '#/components/responses/404' + '406': + $ref: '#/components/responses/406' + '429': + $ref: '#/components/responses/429' + /app_mobility_services/{appMobilityServiceId}: + get: + summary: Read an Application Mobility Service resource. + description: The GET method is used to retrieve information about this individual application mobility service. Upon success, the response contains entity body with the data type describing the registered Application Mobility Service. + operationId: appmobilityservicesByIdGET + tags: + - app_mobility_services + responses: + '200': + description: Information about application mobility service was queried successfully. + content: + application/json: + schema: + type: object + properties: + RegistrationInfo: + $ref: '#/components/schemas/RegistrationInfo' + '400': + $ref: '#/components/responses/400' + '401': + $ref: '#/components/responses/401' + '403': + $ref: '#/components/responses/403' + '404': + $ref: '#/components/responses/404' + '406': + $ref: '#/components/responses/406' + '429': + $ref: '#/components/responses/429' + put: + summary: Update an individual Application Mobility Service resource. + description: The PUT method is used to update the existing individual application mobility service. PUT method in this case has "replace" semantics. Upon successful operation, the target resource is updated with new Data Type received within the message body of the PUT request. + operationId: appmobilityservicesByIdPUT + tags: + - app_mobility_services + requestBody: + description: The updated information for the registered application mobility service resource. + required: true + content: + application/json: + schema: + type: object + properties: + RegistrationInfo: + $ref: '#/components/schemas/RegistrationInfo' + responses: + '200': + description: Upon success, a response body containing data type describing the updated application mobility service. + content: + application/json: + schema: + type: object + properties: + RegistrationInfo: + $ref: '#/components/schemas/RegistrationInfo' + '400': + $ref: '#/components/responses/400' + '401': + $ref: '#/components/responses/401' + '403': + $ref: '#/components/responses/403' + '404': + $ref: '#/components/responses/404' + '406': + $ref: '#/components/responses/406' + '412': + $ref: '#/components/responses/412' + '422': + $ref: '#/components/responses/422' + '429': + $ref: '#/components/responses/429' + delete: + summary: Delete an individual Application Mobility Service resource. + description: The DELETE method is used to deregister the individual application mobility service, and delete the resource that represents the individual application mobility service. + operationId: appmobilityservicesByIdDELETE + tags: + - app_mobility_services + responses: + '204': + $ref: '#/components/responses/204' + '401': + $ref: '#/components/responses/401' + '403': + $ref: '#/components/responses/403' + '404': + $ref: '#/components/responses/404' + '429': + $ref: '#/components/responses/429' + /app_mobility_services/{appMobilityServiceId}/deregister_task: + post: + summary: Timer based individual deregistration of an Application Mobility Service resource. + description: 'The POST method is to trigger deregistration of the application mobility service on expiry of the timer associated with the service. ' + operationId: deregistertaskPOST + tags: + - app_mobility_services + responses: + '204': + description: 'The request is acknowledged. + + + The response body shall be empty.' + content: + application/json: + schema: + type: object + properties: {} + '401': + $ref: '#/components/responses/401' + '403': + $ref: '#/components/responses/403' + '404': + $ref: '#/components/responses/404' + '406': + $ref: '#/components/responses/406' + '429': + $ref: '#/components/responses/429' + /subscriptions: + get: + summary: Retrieve information of multiple subscriptions to notifications of Application Mobility Service event. + description: The GET method is used to retrieve information about the subscriptions for this requestor. Upon success, the response contains entity body with the list of links to the subscriptions that are present for the requestor. + operationId: subscriptionsGET + tags: + - subscriptions + parameters: + - $ref: '#/components/parameters/Query.Subscriptiontype' + responses: + '200': + description: Upon success, a response body containing the list of links to requestor's subscriptions is returned. + content: + application/json: + schema: + type: object + properties: + SubscriptionLinkList: + $ref: '#/components/schemas/SubscriptionLinkList' + '400': + $ref: '#/components/responses/400' + '401': + $ref: '#/components/responses/401' + '403': + $ref: '#/components/responses/403' + '404': + $ref: '#/components/responses/404' + '406': + $ref: '#/components/responses/406' + '429': + $ref: '#/components/responses/429' + post: + summary: Subscribe to notifications of Application Mobility Service event. + description: The POST method is used to create a new subscription to Application Mobility Service notifications. Upon success, the response contains entity body describing the created subscription. + operationId: subscriptionsPOST + tags: + - subscriptions + requestBody: + description: 'The entity body in the request contains data type of the specific AMS event subscription that is to be created, where the data type options are listed below and defined in clauses 7.3.2 through 7.3.4: + + MobilityProcedureSubscription. + + AdjacentAppInfoSubscription.' + content: + application/json: + schema: + type: object + properties: + MobilityProcedureSubscription: + $ref: '#/components/schemas/MobilityProcedureSubscription' + responses: + '201': + description: "Indicates successful resource creation, where the resource URI shall be returned in the HTTP Location header field.\n\nIn the returned NotificationSubscription structure, the created subscription is described using the appropriate data type from the list below and as defined in clauses\_7.3.2 through 7.3.4:\nMobilityProcedureSubscription.\nAdjacentAppInfoSubscription." + content: + application/json: + schema: + type: object + properties: + MobilityProcedureSubscription: + $ref: '#/components/schemas/MobilityProcedureSubscription' + '400': + $ref: '#/components/responses/400' + '401': + $ref: '#/components/responses/401' + '403': + $ref: '#/components/responses/403' + '404': + $ref: '#/components/responses/404' + '406': + $ref: '#/components/responses/406' + '415': + $ref: '#/components/responses/415' + '422': + $ref: '#/components/responses/422' + '429': + $ref: '#/components/responses/429' + callbacks: + notification: + post: + summary: Callback POST used to send a notification + description: Subscription notification + operationId: notificationPOST + requestBody: + description: Subscription notification + required: true + content: + application/json: + schema: + type: object + properties: + subscriptionNotification: + oneOf: + - $ref: '#/components/schemas/MobilityProcedureSubscription' + - $ref: '#/components/schemas/AdjacentAppInfoSubscription' + /subscriptions/{subscriptionId}: + get: + summary: Read information of subscription of Application Mobility Service. + description: The GET method is used to retrieve information about this subscription. Upon success, the response contains entity body with the data type describing the subscription. + operationId: subscriptionsByIdGET + tags: + - subscriptions + responses: + '200': + description: 'Upon success, a response body containing data type describing the specific AMS event subscription is returned. The allowed data types for subscriptions are defined in clauses 7.3.2 and 7.3.3 as follows: + + MobilityProcedureSubscription. + + AdjacentAppInfoSubscription.' + content: + application/json: + schema: + type: object + properties: + MobilityProcedureSubscription: + $ref: '#/components/schemas/MobilityProcedureSubscription' + '400': + $ref: '#/components/responses/400' + '401': + $ref: '#/components/responses/401' + '403': + $ref: '#/components/responses/403' + '404': + $ref: '#/components/responses/404' + '406': + $ref: '#/components/responses/406' + '429': + $ref: '#/components/responses/429' + put: + summary: Update an individual subscription to notification of Application Mobility Service event. + description: The PUT method is used to update the existing individual subscription. PUT method in this case has "replace" semantics. Upon successful operation, the target resource is updated with new subscription parameters received within the message body of the PUT request. + operationId: subscriptionsByIdPUT + tags: + - subscriptions + requestBody: + description: 'Updated NotificationSubscription is included as entity body of the request. The allowed data types for subscriptions are defined in clauses 7.3.2 and 7.3.3 as follows: + + MobilityProcedureSubscription. + + AdjacentAppInfoSubscription.' + content: + application/json: + schema: + type: object + properties: + MobilityProcedureSubscription: + $ref: '#/components/schemas/MobilityProcedureSubscription' + responses: + '200': + description: 'Upon success, a response body containing data type describing the updated subscription is returned. The allowed data types for subscriptions are defined in clauses 7.3.2 and 7.3.3 as follows: + + MobilityProcedureSubscription. + + AdjacentAppInfoSubscription.' + content: + application/json: + schema: + type: object + properties: + MobilityProcedureSubscription: + $ref: '#/components/schemas/MobilityProcedureSubscription' + '400': + $ref: '#/components/responses/400' + '401': + $ref: '#/components/responses/401' + '403': + $ref: '#/components/responses/403' + '404': + $ref: '#/components/responses/404' + '406': + $ref: '#/components/responses/406' + '412': + $ref: '#/components/responses/412' + '422': + $ref: '#/components/responses/422' + '429': + $ref: '#/components/responses/429' + delete: + summary: Terminate an individual subscription to notification of Application Mobility Service event. + description: The DELETE method is used to cancel the existing individual subscription. Cancellation can be made by deleting the resource that represents existing individual subscription. + operationId: subscriptionsByIdDELETE + tags: + - subscriptions + responses: + '204': + $ref: '#/components/responses/204' + '401': + $ref: '#/components/responses/401' + '403': + $ref: '#/components/responses/403' + '404': + $ref: '#/components/responses/404' + '429': + $ref: '#/components/responses/429' + /queries/adjacent_app_instances: + get: + summary: Read information of adjacent application instance(s). + description: The GET method is to retrieve the information of adjacent application instances. Upon success, the response contains entity body with the list of available application instance information. + operationId: adjacentappinstancesGET + tags: + - adjacent_app_instances + parameters: + - $ref: '#/components/parameters/Query.Filter1' + - $ref: '#/components/parameters/Query.All_fields' + - $ref: '#/components/parameters/Query.Fields' + - $ref: '#/components/parameters/Query.Exclude_fields1' + - $ref: '#/components/parameters/Query.Exclude_default1' + responses: + '200': + description: 'Information about zero or more adjacent application instances was queried successfully. + + + The response body shall contain in an array the representations of zero or more adjacent application instance information.' + content: + application/json: + schema: + type: object + properties: + AdjacentAppInstanceInfo: + type: array + items: + $ref: '#/components/schemas/AdjacentAppInstanceInfo' + '400': + $ref: '#/components/responses/400' + '401': + $ref: '#/components/responses/401' + '403': + $ref: '#/components/responses/403' + '404': + $ref: '#/components/responses/404' + '406': + $ref: '#/components/responses/406' + '429': + $ref: '#/components/responses/429' + /user_defined_notification: + post: + description: The POST method delivers a notification from the AMS resource to the subscriber. + operationId: userdefinednotificationPOST + tags: + - notifications + requestBody: + description: 'A notification of an event related to the specific AMS event, where the data type options are listed below and defined in clauses 7.4.2 through 7.4.4: + + MobilityProcedureNotification. + + AdjacentAppInfoNotification. + + ExpiryNotification.' + content: + application/json: + schema: + type: object + properties: + MobilityProcedureNotification: + $ref: '#/components/schemas/MobilityProcedureNotification' + responses: + '204': + description: The notification was delivered successfully. The response body shall be empty. + content: + application/json: + schema: + type: object + properties: {} + '401': + $ref: '#/components/responses/401' + '403': + $ref: '#/components/responses/403' + '404': + $ref: '#/components/responses/404' + '429': + $ref: '#/components/responses/429' +components: + schemas: + MobilityStatus1_: + description: Indicate the status of the UE mobility + type: integer + enum: + - 1 = INTERHOST_MOVEOUT_TRIGGERED + - 2 = INTERHOST_MOVEOUT_COMPLETED + - 3 = INTERHOST_MOVEOUT_FAILED + AssociateId: + description: The data type of AssociateId is defined in ETSI GS MEC 012 [6]. + type: string + AppMobilityServiceLevel1_: + description: This attribute provides an option for the application instance (server) to communicate with the application client before relocating this application instance to another MEC host. + type: integer + enum: + - 1 = APP_MOBILITY_NOT_ALLOWED + - 2 = APP_MOBILITY_WITH_CONFIRMATION + - 3 = APP_MOBILITY_WITHOUT_CONFIRMATION + x-etsi-notes: "'APP_MOBILITY_NOT_ALLOWED: the current serving application instance continues to deliver the service to the device. The AMS will inform the MEP to perform the traffic steering to the device when the UE moves cross MEC hosts. \u2212 APP_MOBILITY_WITH_CONFIRMATION: the serving application instance is allowed to change with the confirmation by the application once the device mobility happens. The AMS then will inform the MEP to update the traffic routing to the target application instance and clean up the previous resource allocated to the application instance serving to the device after the serving application instance has been changed. \u2212 APP_MOBILITY_WITHOUT_CONFIRMATION: the serving application instance is allowed to change without confirmation from the application instance when the device mobility happens. The AMS will notify to the MEP to update the traffic routing to the target application instance and clean up the previous resource allocated to the application instance serving to the device after the serving application instance has been changed. .'\n" + contextTransferState1_: + description: If present, it represents the state of transferring the user context to another application instance. + type: string + enum: + - 0 = NOT_TRANSFERRED + - 1 = USER_CONTEXT_TRANSFER_COMPLETED + subscriptionType1_: + description: Numeric value (0 - 255) corresponding to specified type of subscription as following + type: integer + enum: + - 0 = RESERVED. + - 1 = MOBILITY_PROCEDURE. + - 2 = ADJACENT_APPINFO. + ProblemDetails: + type: object + properties: + type: + type: string + format: uri + description: A URI reference according to IETF RFC 3986 that identifies the problem type + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: URI + title: + type: string + description: A short, human-readable summary of the problem type + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: String + status: + type: integer + format: uint32 + description: The HTTP status code for this occurrence of the problem + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: Uint32 + detail: + type: string + description: A human-readable explanation specific to this occurrence of the problem + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: String + instance: + type: string + format: uri + description: A URI reference that identifies the specific occurrence of the problem + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: URI + LinkType: + title: LinkType + required: + - href + type: object + properties: + href: + type: string + description: URI referring to a resource + RegistrationInfo: + x-etsi-ref: 7.2.2 + type: object + properties: + appMobilityServiceId: + description: 'The identifier of registered Application Mobility Service. + + Shall be absent in POST requests, and present otherwise.' + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + serviceConsumerId: + $ref: '#/components/schemas/ServiceConsumerId' + deviceInformation: + type: array + items: + $ref: '#/components/schemas/DeviceInformation' + expiryTime: + description: 'If present, it indicates the time of Application Mobility Service expiration from the time of registration accepted. + + The value "0" means infinite time, i.e. no expiration. + + The unit of expiry time is one second.' + x-etsi-mec-origin-type: Uint32 + x-etsi-mec-cardinality: 0..1 + type: integer + format: uint32 + required: + - serviceConsumerId + x-etsi-notes: "NOTE:\tThe data type of AssociateId is defined in ETSI GS MEC 012 [6]." + AdjacentAppInstanceInfo: + x-etsi-ref: 7.2.3 + type: object + properties: + appInstanceId: + description: Identifier of the application instance. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + appDId: + description: Identifier of the application descriptor. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + appInstanceCommLink: + description: It specifies the communication interface of application instance. + x-etsi-mec-origin-type: CommunicationInterface + x-etsi-mec-cardinality: 1..N + type: array + minItems: 1 + items: + $ref: '#/components/schemas/CommunicationInterface' + mecHostInformation: + # description': The MEC host where the application instance is running on. + $ref: '#/components/schemas/MECHostInformation' + # x-etsi-mec-origin-type': MECHostInformation + # x-etsi-mec-cardinality': 0..1 + registeredInstanceId: + description: Identifier of the application instance that registers to the AMS, which is instantiated from the application descriptor identified by the attribute "appDId". + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + required: + - appInstanceId + - appDId + - appInstanceCommLink + MobilityProcedureSubscription: + x-etsi-ref: 7.3.2 + type: object + properties: + subscriptionType: + description: Shall be set to "MobilityProcedureSubscription". + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + callbackReference: + description: URI selected by the service consumer to receive notifications on the subscribed Application Mobility Service. See note. + x-etsi-mec-origin-type: Uri + x-etsi-mec-cardinality: 0..1 + type: string + format: uri + requestTestNotification: + description: "Shall be set to TRUE by the service consumer to request a test notification via HTTP on the callbackReference URI, specified in ETSI GS MEC 009 [4], as described in clause\_6.12a. " + x-etsi-mec-origin-type: Boolean + x-etsi-mec-cardinality: 0..1 + type: boolean + websockNotifConfig: + # description': Provides details to negotiate and signal the use of a Websocket connection between AMS and the service consumer for notifications. See note. + $ref: '#/components/schemas/WebsockNotifConfig' + # x-etsi-mec-origin-type': WebsockNotifConfig + # x-etsi-mec-cardinality': 0..1 + _links: + $ref: '#/components/schemas/_links' + filterCriteria: + $ref: '#/components/schemas/FilterCriteria' + expiryDeadline: + # description': Identifies a boundary after which the subscription will expire. + $ref: '#/components/schemas/TimeStamp' + # x-etsi-mec-origin-type': TimeStamp + # x-etsi-mec-cardinality': 0..1 + required: + - subscriptionType + - filterCriteria + x-etsi-notes: "NOTE:\tAt least one of callbackReference and websockNotifConfig shall be provided by the service consumer. If both are provided, it is up to AMS to choose an alternative and return only that alternative in the response, specified in ETSI GS MEC 009 [4], as described in clause 6.12a." + AdjacentAppInfoSubscription: + x-etsi-ref: 7.3.3 + type: object + properties: + subscriptionType: + description: Shall be set to "AdjacentAppInfoSubscription". + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + callbackReference: + description: URI selected by the service consumer to receive notifications on the subscribed Application Mobility Service. See note. + x-etsi-mec-origin-type: Uri + x-etsi-mec-cardinality: 0..1 + type: string + format: uri + requestTestNotification: + description: "Shall be set to TRUE by the service consumer to request a test notification via HTTP on the callbackReference URI, specified in ETSI GS MEC 009 [4], as described in clause\_6.12a. " + x-etsi-mec-origin-type: Boolean + x-etsi-mec-cardinality: 0..1 + type: boolean + websockNotifConfig: + # description': Provides details to negotiate and signal the use of a Websocket connection between AMS and the service consumer for notifications. See note. + $ref: '#/components/schemas/WebsockNotifConfig' + # x-etsi-mec-origin-type': WebsockNotifConfig + # x-etsi-mec-cardinality': 0..1 + _links: + $ref: '#/components/schemas/_links' + filterCriteria: + $ref: '#/components/schemas/FilterCriteria1' + expiryDeadline: + # description': Identifies a boundary after which the subscription will expire. + $ref: '#/components/schemas/TimeStamp' + # x-etsi-mec-origin-type': TimeStamp + # x-etsi-mec-cardinality': 0..1 + required: + - subscriptionType + - filterCriteria + x-etsi-notes: "NOTE:\tAt least one of callbackReference and websockNotifConfig shall be provided by the service consumer. If both are provided, it is up to AMS to choose an alternative and return only that alternative in the response, specified in ETSI GS MEC 009 [4], as described in clause 6.12a." + SubscriptionLinkList: + x-etsi-ref: 7.3.4 + type: object + properties: + _links: + $ref: '#/components/schemas/_links1' + required: + - _links + MobilityProcedureNotification: + x-etsi-ref: 7.4.2 + type: object + properties: + notificationType: + description: Shall be set to "MobilityProcedureNotification". + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + timeStamp: + # description': Date and time of the generation of the notification. + $ref: '#/components/schemas/TimeStamp' + # x-etsi-mec-origin-type': TimeStamp + # x-etsi-mec-cardinality': 0..1 + associateId: + description: 1 to N identifiers to associate the information for specific UE(s) and flow(s). + x-etsi-mec-origin-type: AssociateId + x-etsi-mec-cardinality: 1..N + type: array + minItems: 1 + items: + $ref: '#/components/schemas/AssociateId' + mobilityStatus: + type: integer + description: 'Indicate the status of the UE mobility. Values are defined as following: + + 1 = INTERHOST_MOVEOUT_TRIGGERED. + + 2 = INTERHOST_MOVEOUT_COMPLETED. + + 3 = INTERHOST_MOVEOUT_FAILED. + + Other values are reserved.' + enum: + - SEE_DESCRIPTION + x-etsi-mec-origin-type: Enum_inlined + x-etsi-mec-cardinality: '1' + targetAppInfo: + $ref: '#/components/schemas/TargetAppInfo' + _links: + $ref: '#/components/schemas/_links2' + required: + - notificationType + - associateId + - mobilityStatus + - _links + ExpiryNotification: + x-etsi-ref: 7.4.4 + type: object + properties: + notificationType: + description: Shall be set to "ExpiryNotification". + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + timeStamp: + # description': Date and time of the generation of the notification. + $ref: '#/components/schemas/TimeStamp' + # x-etsi-mec-origin-type': TimeStamp + # x-etsi-mec-cardinality': 0..1 + _links: + $ref: '#/components/schemas/_links3' + expiryDeadline: + # description': The boundary value setting in the subscription request. + $ref: '#/components/schemas/TimeStamp' + # x-etsi-mec-origin-type': TimeStamp + # x-etsi-mec-cardinality': '1' + required: + - notificationType + - _links + - expiryDeadline + AppMobilityServiceLevel: + x-etsi-ref: 7.4.5 + type: object + properties: + appMobilityServiceLevel: + type: integer + description: 'This attribute provides an option for the application instance (server) to communicate with the application client before relocating this application instance to another MEC host. The applicable values of this attribute are: + + 1 = APP_MOBILITY_NOT_ALLOWED + + 2 = APP_MOBILITY_WITH_CONFIRMATION + + 3 = APP_MOBILITY_WITHOUT_CONFIRMATION. + + Other values are reserved. + + See note.' + enum: + - SEE_DESCRIPTION + x-etsi-mec-origin-type: Enum_inlined + x-etsi-mec-cardinality: '1' + required: + - appMobilityServiceLevel + x-etsi-notes: 'NOTE: + + APP_MOBILITY_NOT_ALLOWED: the current serving application instance continues to deliver the service to the device. The AMS will inform the MEP to perform the traffic steering to the device when the UE moves cross MEC hosts. + + APP_MOBILITY_WITH_CONFIRMATION: the serving application instance is allowed to change with the confirmation by the application once the device mobility happens. The AMS then will inform the MEP to update the traffic routing to the target application instance and clean up the previous resource allocated to the application instance serving to the device after the serving application instance has been changed. + + APP_MOBILITY_WITHOUT_CONFIRMATION: the serving application instance is allowed to change without confirmation from the application instance when the device mobility happens. The AMS will notify to the MEP to update the traffic routing to the target application instance and clean up the previous resource allocated to the application instance serving to the device after the serving application instance has been changed.' + TestNotification: + x-etsi-ref: 7.4.6 + type: object + properties: + notificationType: + description: Shall be set to "TestNotification". + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + _links: + $ref: '#/components/schemas/_links4' + required: + - notificationType + - _links + CommunicationInterface: + x-etsi-ref: 7.5.2 + type: object + properties: + ipAddresses: + type: array + items: + $ref: '#/components/schemas/IpAddresses' + TimeStamp: + x-etsi-ref: 7.5.3 + type: object + properties: + seconds: + description: "The seconds part of the Time. Time is defined as Unix-time since January\_1, 1970, 00:00:00 UTC." + x-etsi-mec-origin-type: Uint32 + x-etsi-mec-cardinality: '1' + type: integer + format: uint32 + nanoSeconds: + description: The nanoseconds part of the Time. Time is defined as Unix-time since January 1, 1970, 00:00:00 UTC. + x-etsi-mec-origin-type: Uint32 + x-etsi-mec-cardinality: '1' + type: integer + format: uint32 + required: + - seconds + - nanoSeconds + LinkType: + x-etsi-ref: 7.5.4 + type: object + properties: + href: + description: URI referring to a resource + x-etsi-mec-origin-type: Uri + x-etsi-mec-cardinality: '1' + type: string + format: uri + required: + - href + MECHostInformation: + x-etsi-ref: 7.5.5 + type: object + properties: + hostName: + description: Human-readable name of MEC host. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + hostId: + $ref: '#/components/schemas/KeyValuePairs' + required: + - hostId + x-etsi-notes: "NOTE: \tThis information can be structured to cater for host identification schemes that are more complex than a simple identifier, e.g. when referring to the structure of an NFVI." + WebsockNotifConfig: + x-etsi-ref: 7.5.7 + type: object + properties: + websocketUri: + description: Set by AMS to indicate to the service consumer the Websocket URI to be used for delivering notifications. + x-etsi-mec-origin-type: Uri + x-etsi-mec-cardinality: 0..1 + type: string + format: uri + requestWebsocketUri: + description: Set to true by the service consumer to indicate that Websocket delivery is requested. + x-etsi-mec-origin-type: Boolean + x-etsi-mec-cardinality: 0..1 + type: boolean + ServiceConsumerId: + description: The identifier of service consumer requesting the Application Mobility Service, i.e. either the application instance ID or the MEC platform ID. + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: '1' + type: object + properties: + appInstanceId: + description: If present, it represents the identifier of the application instance registering the Application Mobility Service. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + mepId: + description: If present, it represents the identifier of the MEC platform registering the Application Mobility Service. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + DeviceInformation: + description: 'If present, it specifies the device served by the application instance which is registering the Application Mobility Service. ' + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: 0..N + type: object + minItems: 0 + properties: + associateId: + # description': Represents the identifier of the device. See note. + $ref: '#/components/schemas/AssociateId' + # x-etsi-mec-origin-type': AssociateId + # x-etsi-mec-cardinality': '1' + appMobilityServiceLevel: + # description': If the application is stateful, this attribute shall be included. + $ref: '#/components/schemas/AppMobilityServiceLevel' + # x-etsi-mec-origin-type': AppMobilityServiceLevel + # x-etsi-mec-cardinality': 0..1 + contextTransferState: + type: integer + description: 'If present, it represents the state of transferring the user context to another application instance. The applicable values of this attribute are: + + 0 = NOT_TRANSFERRED (default value) + + 1 = USER_CONTEXT_TRANSFER_COMPLETED + + In the initial application mobility registration, this attribute shall be set to the default value.' + enum: + - SEE_DESCRIPTION + x-etsi-mec-origin-type: Enum_inlined + x-etsi-mec-cardinality: 0..1 + required: + - associateId + _links: + description: Hyperlink related to the resource. This shall be only included in the HTTP responses and in HTTP PUT requests. + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: 0..1 + type: object + properties: + self: + # description': Self-referring URI. The URI shall be unique within the AMS API as it acts as an ID for the subscription. + $ref: '#/components/schemas/LinkType' + # x-etsi-mec-origin-type': LinkType + # x-etsi-mec-cardinality': '1' + required: + - self + FilterCriteria: + description: List of filtering criteria for the subscription. Any filtering criteria from below, which is included in the request, shall also be included in the response. + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: '1' + type: object + properties: + appInstanceId: + description: Identifier of the application instance that registers the Application Mobility Service. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + associateId: + description: 0 to N identifiers to associate the information for specific UE(s) and flow(s). + x-etsi-mec-origin-type: AssociateId + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + $ref: '#/components/schemas/AssociateId' + mobilityStatus: + description: 'In case mobilityStatus is not included in the subscription request, the default value 1 = INTER_HOST_MOBILITY_TRIGGERED shall be used and included in the response. + + 1 = INTERHOST_MOVEOUT_TRIGGERED. + + 2 = INTERHOST_MOVEOUT_COMPLETED. + + 3 = INTERHOST_MOVEOUT_FAILED.' + x-etsi-mec-origin-type: Enum_inlined + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + type: integer + FilterCriteria1: + description: List of filtering criteria for the subscription. Any filtering criteria from below, which is included in the request, shall also be included in the response. + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: '1' + type: object + properties: + appInstanceId: + description: Identifier of the application instance that registers to the Application Mobility Service. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + Subscription: + description: The service consumer's subscriptions. + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: 0..N + type: object + minItems: 0 + properties: + href: + description: The URI referring to the subscription. + x-etsi-mec-origin-type: Uri + x-etsi-mec-cardinality: '1' + type: string + format: uri + subscriptionType: + description: "Type of the subscription. The string shall be set according to the \"subscriptionType\" attribute of the associated subscription data type defined in clauses\_7.3.2 and 7.3.3:\n\"MobilityProcedureSubscription\"\n\"AdjacentAppInfoSubscription\"" + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + required: + - href + - subscriptionType + _links1: + description: Hyperlinks related to the resource. + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: '1' + type: object + properties: + self: + # description': URI of this resource. + $ref: '#/components/schemas/LinkType' + # x-etsi-mec-origin-type': LinkType + # x-etsi-mec-cardinality': '1' + subscription: + type: array + items: + $ref: '#/components/schemas/Subscription' + required: + - self + TargetAppInfo: + description: Identifiers to associate the information of target application instance. + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: 0..1 + type: object + properties: + appInstanceId: + description: Identifiers of the target application instance. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + commInterface: + # description': If present, it specifies the communication interface of the application instance. + $ref: '#/components/schemas/CommunicationInterface' + # x-etsi-mec-origin-type': CommunicationInterface + # x-etsi-mec-cardinality': 0..1 + required: + - appInstanceId + _links2: + description: Object containing hyperlinks related to the resource. + x-etsi-mec-origin-type: Structure(inlined) + x-etsi-mec-cardinality: '1' + type: object + properties: + subscription: + # description': Link to the related subscription. + $ref: '#/components/schemas/LinkType' + # x-etsi-mec-origin-type': LinkType + # x-etsi-mec-cardinality': '1' + required: + - subscription + _links3: + description: Object containing hyperlinks related to the resource. + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: '1' + type: object + properties: + subscription: + # description': Link to the expired subscription. + $ref: '#/components/schemas/LinkType' + # x-etsi-mec-origin-type': LinkType + # x-etsi-mec-cardinality': '1' + required: + - subscription + _links4: + description: 'Hyperlink related to the resource. ' + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: '1' + type: object + properties: + subscription: + # description': URI identifying the subscription for the test notification. + $ref: '#/components/schemas/LinkType' + # x-etsi-mec-origin-type': LinkType + # x-etsi-mec-cardinality': '1' + required: + - subscription + IpAddresses: + description: Entry point information of the service as one or more pairs of IP address and port. + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: 0..N + type: object + minItems: 0 + properties: + host: + description: Host portion of the address. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + port: + description: Port portion of the address. + x-etsi-mec-origin-type: Int + x-etsi-mec-cardinality: '1' + type: integer + required: + - host + - port + responses: + '200': + description: OK + '204': + description: No Content + '400': + description: 'Bad Request: used to indicate that incorrect parameters were passed to the request.' + content: + application/problem+json: + schema: + $ref: '#/components/schemas/ProblemDetails' + '401': + description: 'Unauthorized: used when the client did not submit credentials.' + content: + application/problem+json: + schema: + $ref: '#/components/schemas/ProblemDetails' + '403': + description: 'Forbidden: operation is not allowed given the current status of the resource.' + content: + application/problem+json: + schema: + $ref: '#/components/schemas/ProblemDetails' + '404': + description: 'Not Found: used when a client provided a URI that cannot be mapped to a valid resource URI.' + content: + application/problem+json: + schema: + $ref: '#/components/schemas/ProblemDetails' + '406': + description: 'Not Acceptable: used to indicate that the server cannot provide the any of the content formats supported by the client.' + content: + application/problem+json: + schema: + $ref: '#/components/schemas/ProblemDetails' + '412': + description: 'Precondition failed: used when a condition has failed during conditional requests, e.g. when using ETags to avoid write conflicts when using PUT' + content: + application/problem+json: + schema: + $ref: '#/components/schemas/ProblemDetails' + '415': + description: 'Unsupported Media Type: used to indicate that the server or the client does not support the content type of the entity body.' + content: + application/problem+json: + schema: + $ref: '#/components/schemas/ProblemDetails' + '422': + description: 'Unprocessable Entity: used to indicate that the server understands the content type of the request entity and that the syntax of the request entity is correct but that the server is unable to process the contained instructions. This error condition can occur if an JSON request body is syntactically correct but semantically incorrect, for example if the target area for the request is considered too large. This error condition can also occur if the capabilities required by the request are not supported.' + content: + application/problem+json: + schema: + $ref: '#/components/schemas/ProblemDetails' + '429': + description: 'Too Many Requests: used when a rate limiter has triggered.' + content: + application/problem+json: + schema: + $ref: '#/components/schemas/ProblemDetails' + parameters: + 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. + + All attribute names that appear in the RegistrationInfo 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 + cardinality: 0..1 + in: query + required: false + x-exportParamName: Query.Filter + 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 + cardinality: 0..1 + in: query + required: false + x-exportParamName: Query.All_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 + cardinality: 0..1 + in: query + required: false + x-exportParamName: Query.Fields + Query.Exclude_fields: + description: "Complex attributes 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 + cardinality: 0..1 + in: query + required: false + x-exportParamName: Query.Exclude_fields + 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. + + The following attributes shall be excluded from the RegistrationInfo structure in the response body if this parameter is provided, or none of the parameters "all_fields", "fields", "exclude_fields", "exclude_default" are provided: + + n/a.' + name: exclude_default + cardinality: 0..1 + in: query + required: false + x-exportParamName: Query.Exclude_default + Query.Subscriptiontype: + description: "Query parameter to filter on a specific subscription type. Permitted values:\nmobility_proc\tMobility Procedure\nadj_app_info\tAdjacent Application Info." + name: subscriptiontype + cardinality: 0..1 + in: query + required: false + x-exportParamName: Query.Subscriptiontype + 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 AdjacentAppInstanceInfo 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 + cardinality: 0..1 + in: query + required: false + x-exportParamName: Query.Filter1 + Query.Exclude_fields1: + description: Complex attributes 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 + cardinality: 0..1 + in: query + required: false + x-exportParamName: Query.Exclude_fields1 + Query.Exclude_default1: + 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. + + The following attributes shall be excluded from the AdjacentAppInstanceInfo structure in the response body if this parameter is provided, or none of the parameters "all_fields", "fields", "exclude_fields", "exclude_default" are provided: + + n/a.' + name: exclude_default + cardinality: 0..1 + in: query + required: false + x-exportParamName: Query.Exclude_default1 + diff --git a/Auto_Generated_OAS_Output_Files/gs_mec028v020301p.yaml b/Auto_Generated_OAS_Output_Files/gs_mec028v020301p.yaml new file mode 100644 index 0000000..3474f70 --- /dev/null +++ b/Auto_Generated_OAS_Output_Files/gs_mec028v020301p.yaml @@ -0,0 +1,2995 @@ +openapi: 3.1.0 +jsonSchemaDialect: https://json-schema.org/draft/2020-12/schema +info: + contact: + url: https://forge.etsi.org/rep/mec/gs028-wai-api + title: ETSI GS MEC 028 MEC WLAN Information API + description: The ETSI MEC ISG MEC WLAN Information API described using OpenAPI. + license: + name: BSD-3-Clause + url: https://forge.etsi.org/legal-matters + version: 2.3.1 +paths: + /queries/ap/ap_information: + get: + summary: Retrieve current status of Access Point information. + description: The GET method is used to query information about the WLAN Access Points. + operationId: apinformationGET + tags: + - queries + 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' + responses: + '200': + description: 'Shall be returned when information about zero or more Access Points has been queried successfully. + + + The response body shall contain in an array the representations of zero or more Access Points, as defined in clause 6.2.2. + + + If the "filter" URI parameter or one of the "all_fields", "fields" (if supported), "exclude_fields" (if supported) or "exclude_default" URI parameters was supplied in the request, the data in the response body shall have been transformed according to the rules specified in clauses 6.19 and 6.18 of ETSI GS MEC 009 [10], respectively.' + content: + application/json: + schema: + type: object + properties: + ApInfo: + type: array + items: + $ref: '#/components/schemas/ApInfo' + '400': + $ref: '#/components/responses/400' + '401': + $ref: '#/components/responses/401' + '403': + $ref: '#/components/responses/403' + '404': + $ref: '#/components/responses/404' + '406': + $ref: '#/components/responses/406' + '416': + $ref: '#/components/responses/416' + '429': + $ref: '#/components/responses/429' + /queries/sta/sta_information: + get: + summary: Retrieve current status of Station information. + description: The GET method is used to query information about the WLAN stations. + operationId: stainformationGET + tags: + - queries + parameters: + - $ref: '#/components/parameters/Query.Filter1' + - $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: 'Shall be returned when information about zero or more WLAN stations has been queried successfully. + + + The response body shall contain in an array the representations of zero or more WLAN stations, as defined in clause 6.2.2. + + + If the "filter" URI parameter or one of the "all_fields", "fields" (if supported), "exclude_fields" (if supported) or "exclude_default" URI parameters was supplied in the request, the data in the response body shall have been transformed according to the rules specified in clauses 6.19 and 6.18 of ETSI GS MEC 009 [10], respectively.' + content: + application/json: + schema: + type: object + properties: + StaInfo: + type: array + items: + $ref: '#/components/schemas/StaInfo' + '400': + $ref: '#/components/responses/400' + '401': + $ref: '#/components/responses/401' + '403': + $ref: '#/components/responses/403' + '404': + $ref: '#/components/responses/404' + '406': + $ref: '#/components/responses/406' + '416': + $ref: '#/components/responses/416' + '429': + $ref: '#/components/responses/429' + /subscriptions: + get: + summary: Retrieve a list of active subscriptions for this subscriber. + description: The GET method is used to request information about the subscriptions for this requestor. Upon success, the response contains entity body with the list of links to the subscriptions that are present for the requestor. + operationId: subscriptionsGET + tags: + - subscriptions + parameters: + - $ref: '#/components/parameters/Query.Subscription_type' + responses: + '200': + description: Upon success, a response body containing the list of links to requestor's subscriptions is returned. + content: + application/json: + schema: + type: object + properties: + SubscriptionLinkList: + $ref: '#/components/schemas/SubscriptionLinkList' + '400': + $ref: '#/components/responses/400' + '401': + $ref: '#/components/responses/401' + '403': + $ref: '#/components/responses/403' + '404': + $ref: '#/components/responses/404' + '406': + $ref: '#/components/responses/406' + '429': + $ref: '#/components/responses/429' + post: + summary: Create a new subscription. + description: The POST method is used to create a new subscription to WLAN notifications. Upon success, the response contains entity body describing the created subscription. + operationId: subscriptionsPOST + tags: + - subscriptions + requestBody: + description: 'The entity body in the request contains data type of the specific WLAN event subscription that is to be created, where the data type options are listed below and defined in clauses 6.3.2, 6.3.3 and 6.3.5: + + AssocStaSubscription. + + StaDataRateSubscription. + + MeasurementReportSubscription.' + content: + application/json: + schema: + type: object + properties: + AssocStaSubscription: + $ref: '#/components/schemas/AssocStaSubscription' + responses: + '201': + description: 'Indicates successful resource creation, where the resource URI shall be returned in the HTTP Location header field. + + + In the returned NotificationSubscription structure, the created subscription is described using the appropriate data type from the list below and as defined in clauses 6.3.2, 6.3.3 and 6.3.5: + + AssocStaSubscription. + + StaDataRateSubscription. + + MeasurementReportSubscription. + + + The created resource is identified by its subscriptionId included in the "self" attribute (selfreferring URI).' + content: + application/json: + schema: + type: object + properties: + AssocStaSubscription: + $ref: '#/components/schemas/AssocStaSubscription' + '400': + $ref: '#/components/responses/400' + '401': + $ref: '#/components/responses/401' + '403': + $ref: '#/components/responses/403' + '404': + $ref: '#/components/responses/404' + '406': + $ref: '#/components/responses/406' + '415': + $ref: '#/components/responses/415' + callbacks: + notification: + post: + summary: Callback POST used to send a notification + description: Subscription notification + operationId: notificationPOST + requestBody: + description: Subscription notification + required: true + content: + application/json: + schema: + type: object + properties: + subscriptionNotification: + oneOf: + - $ref: '#/components/schemas/AssocStaSubscription' + - $ref: '#/components/schemas/StaDataRateSubscription' + - $ref: '#/components/schemas/MeasurementReportSubscription' + /subscriptions/{subscriptionId}: + get: + summary: Retrieve information on current specific subscription. + description: The GET method is used to retrieve information about this subscription. Upon success, the response contains entity body with the data type describing the subscription. + operationId: subscriptionsByIdGET + tags: + - subscriptions + responses: + '200': + description: "Upon success, a response body containing data type describing the specific WLAN event subscription is returned. The allowed data types for subscriptions are defined in clauses\_6.3.2, 6.3.3 and 6.3.5:\nAssocStaSubscription.\nStaDataRateSubscription.\nMeasurementReportSubscription." + content: + application/json: + schema: + type: object + properties: + AssocStaSubscription: + $ref: '#/components/schemas/AssocStaSubscription' + '400': + $ref: '#/components/responses/400' + '401': + $ref: '#/components/responses/401' + '403': + $ref: '#/components/responses/403' + '404': + $ref: '#/components/responses/404' + '406': + $ref: '#/components/responses/406' + '429': + $ref: '#/components/responses/429' + put: + summary: Modify existing subscription by sending a new data structure. + description: The PUT method is used to update the existing subscription. PUT method in this case has "replace" semantics. Upon successful operation, the target resource is updated with new Data Type received within the message body of the PUT request. + operationId: subscriptionsByIdPUT + tags: + - subscriptions + requestBody: + description: 'New NotificationSubscription is included as entity body of the request. The allowed data types for subscriptions are defined in clauses 6.3.2, 6.3.3 and 6.3.5: + + AssocStaSubscription. + + StaDataRateSubscription. + + MeasurementReportSubscription.' + content: + application/json: + schema: + type: object + properties: + AssocStaSubscription: + $ref: '#/components/schemas/AssocStaSubscription' + responses: + '200': + description: 'Upon success, a response body containing data type describing the updated subscription is returned. The allowed data types for subscriptions are defined in clauses 6.3.2, 6.3.3 and 6.3.5: + + AssocStaSubscription. + + StaDataRateSubscription. + + MeasurementReportSubscription.' + content: + application/json: + schema: + type: object + properties: + AssocStaSubscription: + $ref: '#/components/schemas/AssocStaSubscription' + '400': + $ref: '#/components/responses/400' + '401': + $ref: '#/components/responses/401' + '403': + $ref: '#/components/responses/403' + '404': + $ref: '#/components/responses/404' + '406': + $ref: '#/components/responses/406' + '412': + $ref: '#/components/responses/412' + delete: + summary: Cancel an existing subscription. + description: The DELETE method is used to cancel the existing subscription. Cancellation can be made by deleting the resource that represents existing subscription. + operationId: subscriptionsByIdDELETE + tags: + - subscriptions + responses: + '204': + $ref: '#/components/responses/204' + '401': + $ref: '#/components/responses/401' + '403': + $ref: '#/components/responses/403' + '404': + $ref: '#/components/responses/404' + '429': + $ref: '#/components/responses/429' + /measurements: + get: + summary: Retrieve a list of configured measurements for this subscriber. + description: The GET method is used to request information about the measurement configurations for this requestor. Upon success, the response contains an entity body with the list of links to the measurement configurations that are present for the requestor. + operationId: measurementsGET + tags: + - measurements + responses: + '200': + description: Upon success, a response body containing the list of links to requestor's measurement configurations is returned. + content: + application/json: + schema: + type: object + properties: + MeasurementConfigLinkList: + $ref: '#/components/schemas/MeasurementConfigLinkList' + '400': + $ref: '#/components/responses/400' + '401': + $ref: '#/components/responses/401' + '403': + $ref: '#/components/responses/403' + '404': + $ref: '#/components/responses/404' + '406': + $ref: '#/components/responses/406' + '429': + $ref: '#/components/responses/429' + post: + summary: Create a new measurement configuration. + description: The POST method is used to create a new WLAN measurement configuration. Upon success, the response contains an entity body describing the created measurement configuration. + operationId: measurementsPOST + tags: + - measurements + requestBody: + description: Entity body in the request contains the measurement configuration as defined in clause 6.2.4. + required: true + content: + application/json: + schema: + type: object + properties: + MeasurementConfig: + $ref: '#/components/schemas/MeasurementConfig' + responses: + '201': + description: "Indicates successful resource creation, where the resource URI shall be returned in the HTTP Location header field.\n\nThe returned MeasurementConfig structure describes the created configuration resource. \n\nThe created resource is identified by its measurementConfigId included in the \"self\" attribute (self-referring URI)." + content: + application/json: + schema: + type: object + properties: + MeasurementConfig: + $ref: '#/components/schemas/MeasurementConfig' + '400': + $ref: '#/components/responses/400' + '401': + $ref: '#/components/responses/401' + '403': + $ref: '#/components/responses/403' + '404': + $ref: '#/components/responses/404' + '406': + $ref: '#/components/responses/406' + '415': + $ref: '#/components/responses/415' + '422': + $ref: '#/components/responses/422' + '429': + $ref: '#/components/responses/429' + /measurements/{measurementConfigId}: + get: + summary: Retrieve information on an existing measurement configuration. + description: The GET method is used to retrieve information about this measurement configuration. Upon success, the response contains entity body with the data type describing the measurement configuration. + operationId: measurementsByIdGET + tags: + - measurements + responses: + '200': + description: Upon success, the response body contains the measurement configuration for the queried measurementConfigId. + content: + application/json: + schema: + type: object + properties: + MeasurementConfig: + $ref: '#/components/schemas/MeasurementConfig' + '400': + $ref: '#/components/responses/400' + '401': + $ref: '#/components/responses/401' + '403': + $ref: '#/components/responses/403' + '404': + $ref: '#/components/responses/404' + '406': + $ref: '#/components/responses/406' + '429': + $ref: '#/components/responses/429' + put: + summary: Modify an existing measurement configuration by sending a new data structure. + description: The PUT method is used to update the existing WAI measurement configuration. PUT method in this case has "replace" semantics. Upon successful operation, the target resource is updated with new Data Type received within the message body of the PUT request. + operationId: measurementsByIdPUT + tags: + - measurements + requestBody: + description: Entity body in the request contains the measurement configuration as defined in clause 6.2.4. + required: true + content: + application/json: + schema: + type: object + properties: + MeasurementConfig: + $ref: '#/components/schemas/MeasurementConfig' + responses: + '200': + description: Indicates successful resource update. The returned MeasurementConfig structure describes the updated measurement configuration resource. + content: + application/json: + schema: + type: object + properties: + MeasurementConfig: + $ref: '#/components/schemas/MeasurementConfig' + '400': + $ref: '#/components/responses/400' + '401': + $ref: '#/components/responses/401' + '403': + $ref: '#/components/responses/403' + '404': + $ref: '#/components/responses/404' + '406': + $ref: '#/components/responses/406' + '412': + $ref: '#/components/responses/412' + '422': + $ref: '#/components/responses/422' + delete: + summary: Cancel an existing measurement configuration. + description: The DELETE method is used to remove an existing measurement configuration. After the measurement configuration is removed, the configuration's associated measurementId will no longer be available in the ap_information and sta_information queries. + operationId: measurementsByIdDELETE + tags: + - measurements + responses: + '204': + $ref: '#/components/responses/204' + '401': + $ref: '#/components/responses/401' + '403': + $ref: '#/components/responses/403' + '404': + $ref: '#/components/responses/404' + '429': + $ref: '#/components/responses/429' +components: + schemas: + ProblemDetails: + type: object + properties: + type: + type: string + format: uri + description: A URI reference according to IETF RFC 3986 that identifies the problem type + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: URI + title: + type: string + description: A short, human-readable summary of the problem type + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: String + status: + type: integer + format: uint32 + description: The HTTP status code for this occurrence of the problem + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: Uint32 + detail: + type: string + description: A human-readable explanation specific to this occurrence of the problem + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: String + instance: + type: string + format: uri + description: A URI reference that identifies the specific occurrence of the problem + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: URI + MeasurementConfigLinkList1_: + properties: + _links: + description: Hyperlink related to the resource. + properties: + self: + $ref: '#/components/schemas/LinkType' + required: + - self + type: object + x-etsi-mec-cardinality: '1' + x-etsi-mec-origin-type: Structure (inlined) + measurementConfig: + description: '' + items: + type: object + properties: + href: + description: The URI referring to a measurement configuration. + format: uri + type: string + x-etsi-mec-cardinality: '1' + x-etsi-mec-origin-type: URI + measurementId: + description: Unique identifier allocated by the service consumer to identify measurement reports associated with this measurement configuration. + type: string + x-etsi-mec-cardinality: '1' + x-etsi-mec-origin-type: String + required: + - href + - measurementId + type: array + x-etsi-mec-cardinality: 0..N + x-etsi-mec-origin-type: Structure (inlined) + required: + - _links + type: object + x-etsi-ref: 6.2.5 + SubscriptionLinkList1_: + properties: + _links: + description: List of hyperlinks related to the resource. + properties: + self: + $ref: '#/components/schemas/LinkType' + required: + - self + type: object + x-etsi-mec-cardinality: '1' + x-etsi-mec-origin-type: Structure (inlined) + subscription: + description: '' + items: + type: object + properties: + href: + description: The URI referring to the subscription. + format: uri + type: string + x-etsi-mec-cardinality: '1' + x-etsi-mec-origin-type: URI + subscriptionType: + description: "Type of the subscription. The string shall be set according to the \"subscriptionType\" attribute of the associated subscription data type defined in 6.3.2, 6.3.3. and 6.3.5:\n\u201CAssocStaSubscription\u201D\n\u201CStaDataRateSubscription\u201D\n\u201CMeasurementReportSubscription\u201D" + type: string + x-etsi-mec-cardinality: '1' + x-etsi-mec-origin-type: String + minItems: 0 + required: + - href + - subscriptionType + type: array + x-etsi-mec-cardinality: 0..N + x-etsi-mec-origin-type: Structure (inlined) + required: + - _links + type: object + x-etsi-ref: 6.3.4 + InlineNotification: + oneOf: + - $ref: '#/components/schemas/AssocStaNotification' + - $ref: '#/components/schemas/StaDataRateNotification' + - $ref: '#/components/schemas/MeasurementReportNotification' + discriminator: + propertyName: notificationType + InlineSubscription: + oneOf: + - $ref: '#/components/schemas/AssocStaSubscription' + - $ref: '#/components/schemas/StaDataRateSubscription' + - $ref: '#/components/schemas/MeasurementReportSubscription' + discriminator: + propertyName: subscriptionType + ApInfo: + x-etsi-ref: 6.2.2 + type: object + properties: + timeStamp: + # description': Time stamp. + $ref: '#/components/schemas/TimeStamp' + # x-etsi-mec-origin-type': TimeStamp + # x-etsi-mec-cardinality': 0..1 + apId: + # description': Identifier(s) to uniquely specify the Access Point whose information is exposed within this data type. + $ref: '#/components/schemas/ApIdentity' + # x-etsi-mec-origin-type': ApIdentity + # x-etsi-mec-cardinality': '1' + channel: + description: Channel configured for the Access Point. + x-etsi-mec-origin-type: Uint32 + x-etsi-mec-cardinality: 0..1 + type: integer + format: uint32 + wlanCap: + # description': WLAN capabilities of Access Point. + $ref: '#/components/schemas/WlanCapabilities' + # x-etsi-mec-origin-type': WlanCapabilities + # x-etsi-mec-cardinality': 0..1 + wanMetrics: + # description': WAN Metrics element provides information about the WAN link connecting an IEEE 802.11 Access Node and the Internet. Transmission characteristics such as the speed of the WAN connection to the Internet are included in Hotspot 2.0 Technical Specification v1.0.0 [i.3]. + $ref: '#/components/schemas/WanMetrics' + # x-etsi-mec-origin-type': WanMetrics + # x-etsi-mec-cardinality': 0..1 + bssLoad: + # description': BSS Load attribute contains information on the current STA population and traffic levels in the BSS as defined in IEEE 802.11-2016 [8]. + $ref: '#/components/schemas/BssLoad' + # x-etsi-mec-origin-type': BssLoad + # x-etsi-mec-cardinality': 0..1 + extBssLoad: + # description': Extended BSS Load attribute contains more detailed information on the current STA population and traffic levels in the BSS as per ETSI GS MEC 002 [i.4]. + $ref: '#/components/schemas/ExtBssLoad' + # x-etsi-mec-origin-type': ExtBssLoad + # x-etsi-mec-cardinality': 0..1 + oBssLoad: + # description': Overlapping BSS Load attribute contains information related to the contribution of channel usage by Access Points in proximity to the reporting Access Point and operating on the same channel. + $ref: '#/components/schemas/OBssLoad' + # x-etsi-mec-origin-type': OBssLoad + # x-etsi-mec-cardinality': 0..1 + apLocation: + # description': The location on the Access Point. + $ref: '#/components/schemas/ApLocation' + # x-etsi-mec-origin-type': ApLocation + # x-etsi-mec-cardinality': 0..1 + required: + - apId + StaInfo: + x-etsi-ref: 6.2.3 + type: object + properties: + timeStamp: + # description': Time stamp. + $ref: '#/components/schemas/TimeStamp' + # x-etsi-mec-origin-type': TimeStamp + # x-etsi-mec-cardinality': 0..1 + staId: + # description': Identifier(s) uniquely specify the station whose information is exposed within this data type. + $ref: '#/components/schemas/StaIdentity' + # x-etsi-mec-origin-type': StaIdentity + # x-etsi-mec-cardinality': '1' + channel: + description: Channel currently used by the station to connect with its associated Access Point. + x-etsi-mec-origin-type: Uint32 + x-etsi-mec-cardinality: 0..1 + type: integer + format: uint32 + apAssociated: + # description': Information about the station's associated Access Point. + $ref: '#/components/schemas/ApAssociated' + # x-etsi-mec-origin-type': ApAssociated + # x-etsi-mec-cardinality': 0..1 + rssi: + # description': Receive Signal Strength Indicator. + $ref: '#/components/schemas/Rssi' + # x-etsi-mec-origin-type': Rssi + # x-etsi-mec-cardinality': 0..1 + staDataRate: + # description': Station Data Rate as defined in IEEE 802.11-2016 [8]. + $ref: '#/components/schemas/StaDataRate' + # x-etsi-mec-origin-type': StaDataRate + # x-etsi-mec-cardinality': 0..1 + staStatistics: + description: Statistics as defined in IEEE 802.11-2016 [8] for the client station collected over measurement duration. + x-etsi-mec-origin-type: StaStatistics + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + $ref: '#/components/schemas/StaStatistics' + beaconReport: + description: 'Beacon Report as defined in IEEE 802.11-2016 [8]. ' + x-etsi-mec-origin-type: BeaconReport + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + $ref: '#/components/schemas/BeaconReport' + neighborReport: + description: Information about neighbor Access Points seen by the station as defined IEEE 802.11-2016 [8]. + x-etsi-mec-origin-type: NeighborReport + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + $ref: '#/components/schemas/NeighborReport' + channelLoad: + description: "Channel Load reports as seen by the station as defined IEEE\_802.11-2016 [8]. Channel Load reports may be configured for any channel, including the station's current channel for association." + x-etsi-mec-origin-type: ChannelLoad + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + $ref: '#/components/schemas/ChannelLoad' + required: + - staId + MeasurementConfig: + description: '' + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: 0..N + type: object + minItems: 0 + properties: + href: + description: The URI referring to a measurement configuration. + x-etsi-mec-origin-type: Uri + x-etsi-mec-cardinality: '1' + type: string + format: uri + measurementId: + description: Unique identifier allocated by the service consumer to identify measurement reports associated with this measurement configuration. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + required: + - href + - measurementId + MeasurementConfigLinkList: + x-etsi-ref: 6.2.5 + type: object + properties: + _links: + $ref: '#/components/schemas/_links1' + measurementConfig: + type: array + items: + $ref: '#/components/schemas/MeasurementConfig' + required: + - _links + AssocStaSubscription: + x-etsi-ref: 6.3.2 + type: object + properties: + subscriptionType: + description: Shall be set to "AssocStaSubscription". + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + callbackReference: + description: URI exposed by the client on which to receive notifications via HTTP. See note 1. + x-etsi-mec-origin-type: Uri + x-etsi-mec-cardinality: 0..1 + type: string + format: uri + requestTestNotification: + description: Set to TRUE by the service consumer to request a test notification via HTTP on the callbackReference URI, as specified in ETSI GS MEC 009 [10], clause 6.12a. + x-etsi-mec-origin-type: Boolean + x-etsi-mec-cardinality: 0..1 + type: boolean + websockNotifConfig: + # description': Provides details to negotiate and signal the use of a Websocket connection between the WAIS and the service consumer for notifications. See note 1. + $ref: '#/components/schemas/WebsockNotifConfig' + # x-etsi-mec-origin-type': WebsockNotifConfig + # x-etsi-mec-cardinality': 0..1 + _links: + $ref: '#/components/schemas/_links2' + apId: + # description': Identifier(s) to uniquely specify the target Access Point for the subscription. + $ref: '#/components/schemas/ApIdentity' + # x-etsi-mec-origin-type': ApIdentity + # x-etsi-mec-cardinality': '1' + notificationPeriod: + description: 'Set for periodic notification reporting. + + Value indicates the notification period in seconds.' + x-etsi-mec-origin-type: Uint8 + x-etsi-mec-cardinality: 0..1 + type: integer + format: uint8 + notificationEvent: + $ref: '#/components/schemas/NotificationEvent' + expiryDeadline: + # description': The expiration time of the subscription determined by the WLAN Access Information Service. + $ref: '#/components/schemas/TimeStamp' + # x-etsi-mec-origin-type': TimeStamp + # x-etsi-mec-cardinality': 0..1 + required: + - subscriptionType + - apId + x-etsi-notes: "NOTE 1:\tAt least one of callbackReference and websockNotifConfig shall be provided by the service consumer. If both are provided, it is up to WAIS to select an alternative and return only that alternative in the response, as specified in ETSI GS MEC 009 [10], clause 6.12a.\nNOTE 2:\tAssocStaSubscription shall include either notificationPeriod or notificationEvent.\nNOTE 3:\tIf both notificationPeriod and notificationEvent attributes are set, notifications are issued periodically when the trigger threshold is satisfied." + StaDataRateSubscription: + x-etsi-ref: 6.3.3 + type: object + properties: + subscriptionType: + description: Shall be set to "StaDataRateSubscription". + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + callbackReference: + description: URI exposed by the client on which to receive notifications via HTTP. See note 1. + x-etsi-mec-origin-type: Uri + x-etsi-mec-cardinality: 0..1 + type: string + format: uri + requestTestNotification: + description: Set to TRUE by the service consumer to request a test notification via HTTP on the callbackReference URI, as specified in ETSI GS MEC 009 [10], clause 6.12a. + x-etsi-mec-origin-type: Boolean + x-etsi-mec-cardinality: 0..1 + type: boolean + websockNotifConfig: + # description': Provides details to negotiate and signal the use of a Websocket connection between the WAIS and the service consumer for notifications. See note 1. + $ref: '#/components/schemas/WebsockNotifConfig' + # x-etsi-mec-origin-type': WebsockNotifConfig + # x-etsi-mec-cardinality': 0..1 + _links: + $ref: '#/components/schemas/_links2' + staId: + description: Identifier(s) to uniquely specify the target client station(s) for the subscription. + x-etsi-mec-origin-type: StaIdentity + x-etsi-mec-cardinality: 1..N + type: array + minItems: 1 + items: + $ref: '#/components/schemas/StaIdentity' + notificationPeriod: + description: 'Set for periodic notification reporting. + + Value indicates the notification period in seconds.' + x-etsi-mec-origin-type: Uint8 + x-etsi-mec-cardinality: 0..1 + type: integer + format: uint8 + notificationEvent: + $ref: '#/components/schemas/NotificationEvent1' + expiryDeadline: + # description': The expiration time of the subscription determined by the WLAN Access Information Service. + $ref: '#/components/schemas/TimeStamp' + # x-etsi-mec-origin-type': TimeStamp + # x-etsi-mec-cardinality': 0..1 + required: + - subscriptionType + - staId + x-etsi-notes: "NOTE 1:\tAt least one of callbackReference and websockNotifConfig shall be provided by the service consumer. If both are provided, it is up to WAIS to select an alternative and return only that alternative in the response, as specified in ETSI GS MEC 009 [10], clause 6.12a.\nNOTE 2:\tStaDataRateSubscription shall include either notificationPeriod or notificationEvent.\nNOTE 3:\tIf both notificationPeriod and notificationEvent attributes are set, notifications are issued periodically when the trigger threshold is satisfied." + SubscriptionLinkList: + x-etsi-ref: 6.3.4 + type: object + properties: + _links: + $ref: '#/components/schemas/_links3' + subscription: + type: array + items: + $ref: '#/components/schemas/Subscription' + required: + - _links + MeasurementReportSubscription: + x-etsi-ref: 6.3.5 + type: object + properties: + subscriptionType: + description: Shall be set to "MeasurementReportSubscription". + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + callbackReference: + description: URI exposed by the client on which to receive notifications via HTTP. See note. + x-etsi-mec-origin-type: Uri + x-etsi-mec-cardinality: 0..1 + type: string + format: uri + requestTestNotification: + description: Set to TRUE by the service consumer to request a test notification via HTTP on the callbackReference URI, as specified in ETSI GS MEC 009 [10], clause 6.12a. + x-etsi-mec-origin-type: Boolean + x-etsi-mec-cardinality: 0..1 + type: boolean + websockNotifConfig: + # description': Provides details to negotiate and signal the use of a Websocket connection between the WAIS and the service consumer for notifications. See note. + $ref: '#/components/schemas/WebsockNotifConfig' + # x-etsi-mec-origin-type': WebsockNotifConfig + # x-etsi-mec-cardinality': 0..1 + _links: + $ref: '#/components/schemas/_links2' + staId: + description: Identifier(s) to uniquely specify the target client station(s) for the subscription. + x-etsi-mec-origin-type: StaIdentity + x-etsi-mec-cardinality: 1..N + type: array + minItems: 1 + items: + $ref: '#/components/schemas/StaIdentity' + measurementId: + description: Unique identifier allocated by the service consumer to identify measurement reports associated with this measurement subscription. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + measurementInfo: + # description': Information used to configure this measurement. + $ref: '#/components/schemas/MeasurementInfo' + # x-etsi-mec-origin-type': MeasurementInfo + # x-etsi-mec-cardinality': '1' + expiryDeadline: + # description': The expiration time of the subscription determined by the WLAN Access Information Service. + $ref: '#/components/schemas/TimeStamp' + # x-etsi-mec-origin-type': TimeStamp + # x-etsi-mec-cardinality': 0..1 + required: + - subscriptionType + - staId + - measurementId + - measurementInfo + x-etsi-notes: "NOTE:\tAt least one of callbackReference and websockNotifConfig shall be provided by the service consumer. If both are provided, it is up to WAIS to select an alternative and return only that alternative in the response, as specified in ETSI GS MEC 009 [10], clause 6.12a." + AssocStaNotification: + x-etsi-ref: 6.4.2 + type: object + properties: + notificationType: + description: Shall be set to "AssocStaNotification". + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + timeStamp: + # description': Time stamp. + $ref: '#/components/schemas/TimeStamp' + # x-etsi-mec-origin-type': TimeStamp + # x-etsi-mec-cardinality': 0..1 + apId: + # description': Identifier(s) to uniquely specify the Access Point to which the client stations are associated. + $ref: '#/components/schemas/ApIdentity' + # x-etsi-mec-origin-type': ApIdentity + # x-etsi-mec-cardinality': '1' + staId: + description: Identifier(s) to uniquely specify the client station(s) associated. + x-etsi-mec-origin-type: StaIdentity + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + $ref: '#/components/schemas/StaIdentity' + required: + - notificationType + - apId + StaDataRateNotification: + x-etsi-ref: 6.4.3 + type: object + properties: + notificationType: + description: Shall be set to "StaDataRateNotification". + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + timeStamp: + # description': Time stamp. + $ref: '#/components/schemas/TimeStamp' + # x-etsi-mec-origin-type': TimeStamp + # x-etsi-mec-cardinality': 0..1 + staDataRate: + description: Data rates of a client station. + x-etsi-mec-origin-type: StaDataRate + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + $ref: '#/components/schemas/StaDataRate' + required: + - notificationType + ExpiryNotification: + x-etsi-ref: 6.4.4 + type: object + properties: + notificationType: + description: Shall be set to "ExpiryNotification". + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + _links: + $ref: '#/components/schemas/_links4' + expiryDeadline: + # description': Time stamp. + $ref: '#/components/schemas/TimeStamp' + # x-etsi-mec-origin-type': TimeStamp + # x-etsi-mec-cardinality': '1' + required: + - notificationType + - _links + - expiryDeadline + MeasurementReportNotification: + x-etsi-ref: 6.4.5 + type: object + properties: + notificationType: + description: Shall be set to "MeasurementReportNotification". + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + timeStamp: + # description': Time stamp of the notification. + $ref: '#/components/schemas/TimeStamp' + # x-etsi-mec-origin-type': TimeStamp + # x-etsi-mec-cardinality': 0..1 + staStatistics: + description: STA Statistics Report as defined in IEEE 802.11-2016 [8]. + x-etsi-mec-origin-type: StaStatistics + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + $ref: '#/components/schemas/StaStatistics' + beaconReport: + description: Beacon Report as defined in IEEE 802.11-2016 [8]. + x-etsi-mec-origin-type: BeaconReport + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + $ref: '#/components/schemas/BeaconReport' + neighborReport: + description: "Neighbor Report providing information about neighbor Access Points seen by the station as defined in IEEE\_802.112016 [8]." + x-etsi-mec-origin-type: NeighborReport + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + $ref: '#/components/schemas/NeighborReport' + channelLoad: + description: Channel Load reports as seen by the station as defined in IEEE 802.11-2016 [8]. + x-etsi-mec-origin-type: ChannelLoad + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + $ref: '#/components/schemas/ChannelLoad' + required: + - notificationType + x-etsi-notes: "NOTE 1:\tEach MeasurementReportNotification shall include a single measurement report type (channelLoad, beaconRequest, etc.), based on the MeasurementReportSubscription.\nNOTE 2:\tA single MeasurementReportNotification may include multiple measurement reports (of the same type), if the MeasurementReportSubscription configured the measurement report for several client stations and multiple reports are available to WAIS." + TestNotification: + x-etsi-ref: 6.4.6 + type: object + properties: + notificationType: + description: Shall be set to "TestNotification". + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + _links: + $ref: '#/components/schemas/_links5' + required: + - notificationType + - _links + TimeStamp: + x-etsi-ref: 6.5.2 + type: object + properties: + seconds: + description: The seconds part of the time. Time is defined as Unixtime since January 1, 1970, 00:00:00 UTC. + x-etsi-mec-origin-type: Uint32 + x-etsi-mec-cardinality: '1' + type: integer + format: uint32 + nanoSeconds: + description: The nanoseconds part of the time. Time is defined as Unix-time since January 1, 1970, 00:00:00 UTC. + x-etsi-mec-origin-type: Uint32 + x-etsi-mec-cardinality: '1' + type: integer + format: uint32 + required: + - seconds + - nanoSeconds + ApIdentity: + x-etsi-ref: 6.5.3 + type: object + properties: + bssid: + description: Basic Service Set Identifier (BSSID) is a unique Identifier assigned to an Access Point (as network interface controller) for communications at the data link layer of a network segment. BSSID is typically set to an access point's MAC address. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + ssid: + description: Service Set Identifier (SSID) to identify logical WLAN networks available via the Access Point. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + type: string + ipAddress: + description: IPv4 or IPv6 address allocated for the Access Point. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + type: string + required: + - bssid + WlanCapabilities: + x-etsi-ref: 6.5.4 + type: object + properties: + ht: + # description': Information about Access Point HT capabilities as defined in IEEE 802.11-2016 [8]. + $ref: '#/components/schemas/HtCapabilities' + # x-etsi-mec-origin-type': HtCapabilities + # x-etsi-mec-cardinality': 0..1 + vht: + # description': Information about Access Point VHT capabilities as defined in IEEE 802.11-2016 [8]. + $ref: '#/components/schemas/VhtCapabilities' + # x-etsi-mec-origin-type': VhtCapabilities + # x-etsi-mec-cardinality': 0..1 + he: + # description': Information about Access Point HE capabilities as defined in IEEE P802.11ax [i.10], clause 9.2.2.248. + $ref: '#/components/schemas/HeCapabilities' + # x-etsi-mec-origin-type': HeCapabilities + # x-etsi-mec-cardinality': 0..1 + dmg: + # description': Information about Access Point DMG capabilities as defined in IEEE 802.11-2016 [8]. + $ref: '#/components/schemas/DmgCapabilities' + # x-etsi-mec-origin-type': DmgCapabilities + # x-etsi-mec-cardinality': 0..1 + edmg: + # description': Information about Access Point EDMG capabilities as defined in draft IEEE P802.11ay [i.11]. + $ref: '#/components/schemas/EdmgCapabilities' + # x-etsi-mec-origin-type': EdmgCapabilities + # x-etsi-mec-cardinality': 0..1 + WanMetrics: + x-etsi-ref: 6.5.6 + type: object + properties: + wanInfo: + description: Info about WAN link status, link symmetricity and capacity currently used. + x-etsi-mec-origin-type: Uint8 + x-etsi-mec-cardinality: '1' + type: integer + format: uint8 + downlinkSpeed: + description: 4-octet positive integer whose value is an estimate of the WAN Backhaul link current downlink speed in kilobits per second. + x-etsi-mec-origin-type: Uint32 + x-etsi-mec-cardinality: '1' + type: integer + format: uint32 + uplinkSpeed: + description: 4-octet positive integer whose value is an estimate of the WAN Backhaul link's current uplink speed in kilobits per second. + x-etsi-mec-origin-type: UInt32 + x-etsi-mec-cardinality: '1' + type: integer + format: uint32 + downlinkLoad: + description: "1-octet positive integer representing the current percentage loading of the downlink WAN connection, scaled linearly with 255 representing 100\_%, as measured over an interval the duration of which is reported in Load Measurement Duration. In cases where the downlink load is unknown to the AP, the value is set to zero." + x-etsi-mec-origin-type: UInt8 + x-etsi-mec-cardinality: '1' + type: integer + format: uint8 + uplinkLoad: + description: "1-octet positive integer representing the current percentage loading of the uplink WAN connection, scaled linearly with 255 representing 100\_%, as measured over an interval, the duration of which is reported in Load Measurement Duration. In cases where the uplink load is unknown to the AP, the value is set to zero." + x-etsi-mec-origin-type: Uint8 + x-etsi-mec-cardinality: '1' + type: integer + format: uint8 + lmd: + description: The LMD (Load Measurement Duration) field is a 2-octet positive integer representing the duration over which the Downlink Load and Uplink Load have been measured, in tenths of a second. When the actual load measurement duration is greater than the maximum value, the maximum value will be reported. The value of the LMD field is set to 0 when neither the uplink nor downlink load can be computed. When the uplink and downlink loads are computed over different intervals, the maximum interval is reported. + x-etsi-mec-origin-type: Uint16 + x-etsi-mec-cardinality: '1' + type: integer + format: uint16 + required: + - wanInfo + - downlinkSpeed + - uplinkSpeed + - downlinkLoad + - uplinkLoad + - lmd + BssLoad: + x-etsi-ref: 6.5.7 + type: object + properties: + staCount: + description: An unsigned integer that indicates the total number of STAs currently associated with this BSS. + x-etsi-mec-origin-type: UInt16 + x-etsi-mec-cardinality: '1' + type: integer + format: uint16 + channelUtilization: + description: "The percentage of time, linearly scaled with 255 representing 100\_%, that the AP sensed the medium was busy, as indicated by either the physical or virtual Carrier Sense (CS) mechanism." + x-etsi-mec-origin-type: UInt8 + x-etsi-mec-cardinality: '1' + type: integer + format: uint8 + availAdmCap: + description: Available Admission Capacity that specifies the remaining amount of medium time available via explicit admission control, in units of 32 s/s. + x-etsi-mec-origin-type: Uint16 + x-etsi-mec-cardinality: '1' + type: integer + format: uint16 + required: + - staCount + - channelUtilization + - availAdmCap + ExtBssLoad: + x-etsi-ref: 6.5.8 + type: object + properties: + muMimoStaCount: + description: Indicates the total number of STAs currently associated with this BSS that have a 1 in the MU Beamformee Capable field of their VHT Capabilities element. + x-etsi-mec-origin-type: UInt16 + x-etsi-mec-cardinality: '1' + type: integer + format: uint16 + spatStreamUnderUtil: + description: "The percentage of time, linearly scaled with 255 representing 100\_%, that the AP has underutilized spatial domain resources for given busy time of the medium." + x-etsi-mec-origin-type: UInt8 + x-etsi-mec-cardinality: '1' + type: integer + format: uint8 + obsSec20MhzUtil: + description: Observable loading on each of the secondary 20 MHz channel. + x-etsi-mec-origin-type: Uint8 + x-etsi-mec-cardinality: '1' + type: integer + format: uint8 + obsSec40MhzUtil: + description: Observable loading on each of the secondary 40 MHz channel. + x-etsi-mec-origin-type: Uint8 + x-etsi-mec-cardinality: '1' + type: integer + format: uint8 + obsSec80MhzUtil: + description: Observable loading on each of the secondary 80 MHz channel. + x-etsi-mec-origin-type: Uint8 + x-etsi-mec-cardinality: '1' + type: integer + format: uint8 + required: + - muMimoStaCount + - spatStreamUnderUtil + - obsSec20MhzUtil + - obsSec40MhzUtil + - obsSec80MhzUtil + ApLocation: + x-etsi-ref: 6.5.9 + type: object + properties: + geolocation: + # description': Geospatial Location of the AP as defined in IEEE 802.11-2016 [8]. + $ref: '#/components/schemas/GeoLocation' + # x-etsi-mec-origin-type': GeoLocation + # x-etsi-mec-cardinality': 0..1 + civicLocation: + # description': Civic Location of the AP as described in IETF RFC 4776 [7]. + $ref: '#/components/schemas/CivicLocation' + # x-etsi-mec-origin-type': CivicLocation + # x-etsi-mec-cardinality': 0..1 + NeighborReport: + x-etsi-ref: 6.5.10 + type: object + properties: + staId: + # description': Identifier to uniquely specify the station whose information is exposed within this Neighbor Report. If NeighborReport is contained within a data type that provides the station's identifier, this field may be omitted. + $ref: '#/components/schemas/StaIdentity' + # x-etsi-mec-origin-type': StaIdentity + # x-etsi-mec-cardinality': 0..1 + measurementId: + description: Measurement ID of the Measurement configuration applied to this Neighbor Report. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + bssid: + description: BSSID (MAC address) of the Access Point that is being reported. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + bssidInfo: + # description': Additional information related to Access Point that is being reported such as AP reachability, security, key scope, Mobility Domain, HT/VHT capability and Fine Time Measurements, as defined in Figure 9-296, BSSID information field, within IEEE 802.11-2016 [8]. + $ref: '#/components/schemas/BssidInfo' + # x-etsi-mec-origin-type': BssidInfo + # x-etsi-mec-cardinality': '1' + operatingClass: + description: Operating Class field indicates an operating class value as defined in Annex E within IEEE 802.11-2016 [8]. + x-etsi-mec-origin-type: Uint8 + x-etsi-mec-cardinality: '1' + type: integer + format: uint8 + channel: + description: Channel field indicates a channel number, which is interpreted in the context of the indicated operating class. Channel numbers are defined in Annex E within IEEE 802.11-2016 [8]. + x-etsi-mec-origin-type: Uint8 + x-etsi-mec-cardinality: '1' + type: integer + format: uint8 + phyType: + description: "PHY type of the AP indicated by this BSSID. It is an integer value coded according to the value of the dot11PHYType, Annex\_C within IEEE 802.11-2016 [8]:\n2 = dsss\n4 = ofdm\n5 = hrdsss\n6 = erp\n7 = ht\n8 = dmg\n9 = vht\n10 = tvht" + x-etsi-mec-origin-type: Uint8 + x-etsi-mec-cardinality: '1' + type: integer + format: uint8 + bssTransitionCandidatePreference: + description: "Relative value indicating the preferred ordering for this BSS as a transition candidate for roaming. 255 indicating the most preferred candidate and 1 indicating the least preferred candidate, as defined in Table 9-152 within IEEE\_802.112016\_[8]." + x-etsi-mec-origin-type: Uint8 + x-etsi-mec-cardinality: 0..1 + type: integer + format: uint8 + required: + - measurementId + - bssid + - bssidInfo + - operatingClass + - channel + - phyType + StaIdentity: + x-etsi-ref: 6.5.11 + type: object + properties: + macId: + description: Unique identifier assigned to station (as network interface controller) for communications at the data link layer of a network segment. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + ssid: + description: Service Set Identifier(s) to identify logical networks. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + type: string + aid: + description: Number which identifies a particular association between a station and an Access Point. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + ipAddress: + description: IPv4 or IPv6 address(es) allocated for the station. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + type: string + required: + - macId + ApAssociated: + x-etsi-ref: 6.5.12 + type: object + properties: + bssid: + description: Basic Service Set Identifier (BSSID) is a unique identifier assigned to the Access Point (as network interface controller) for communications at the data link layer of a network segment. BSSID is typically set to an access point's MAC address. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + ssid: + description: Service Set Identifier to identify logical networks. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + type: string + assocId: + description: Unique number which identifies a particular association between the station and Access Point. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + ipAddress: + description: IPv4 or IPv6 address allocated for the Access Point. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + type: string + required: + - bssid + StaStatistics: + x-etsi-ref: 6.5.13 + type: object + properties: + staId: + # description': Identifier to uniquely specify the station whose information is exposed within this STA Statistics Report. If StaStatistics is contained within a data type that provides the station's identifier, this field may be omitted. + $ref: '#/components/schemas/StaIdentity' + # x-etsi-mec-origin-type': StaIdentity + # x-etsi-mec-cardinality': 0..1 + measurementId: + description: Measurement ID of the Measurement configuration applied to this STA Statistics Report. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + measurementDuration: + description: "Duration over which the Statistics Group Data was measured in time units of 1 024 \xB5s. Duration equal to zero indicates a report of current values." + x-etsi-mec-origin-type: UInt16 + x-etsi-mec-cardinality: '1' + type: integer + format: uint16 + groupIdentity: + description: "Indicates the requested statistics group describing the Statistics Group Data according to Table 9-114 of IEEE\_802.11-2016 [8].\nDepending on group identity, one and only one of the STA Statistics Group Data will be present." + x-etsi-mec-origin-type: UInt8 + x-etsi-mec-cardinality: '1' + type: integer + format: uint8 + groupZeroData: + # description': STA Statistics Data for Group Identity = 0. + $ref: '#/components/schemas/StaStatisticsGroupZeroData' + # x-etsi-mec-origin-type': StaStatisticsGroupZeroData + # x-etsi-mec-cardinality': 0..1 + groupOneData: + # description': STA Statistics Data for Group Identity = 1. + $ref: '#/components/schemas/StaStatisticsGroupOneData' + # x-etsi-mec-origin-type': StaStatisticsGroupOneData + # x-etsi-mec-cardinality': 0..1 + group2to9Data: + # description': STA Statistics Data for Group Identity = 2 through 9. + $ref: '#/components/schemas/StaStatisticsGroup2to9Data' + # x-etsi-mec-origin-type': StaStatisticsGroup2to9Data + # x-etsi-mec-cardinality': 0..1 + required: + - measurementId + - measurementDuration + - groupIdentity + HtCapabilities: + x-etsi-ref: 6.5.14 + type: object + properties: + htCapabilityInfo: + description: HT Capability Information as defined in IEEE 802.11-2016 [8]. + x-etsi-mec-origin-type: UInt16 + x-etsi-mec-cardinality: '1' + type: integer + format: uint16 + ampduParameters: + description: A-MPDU parameters as defined in IEEE 802.11-2016 [8]. + x-etsi-mec-origin-type: UInt8 + x-etsi-mec-cardinality: '1' + type: integer + format: uint8 + supportedMcsSet: + description: Supported MCS set as defined in IEEE 802.11-2016 [8]. + x-etsi-mec-origin-type: Uint128 + x-etsi-mec-cardinality: '1' + type: integer + format: uint128 + htExtendedCap: + description: Extended HT Capabilities as defined in IEEE 802.11-2016 [8]. + x-etsi-mec-origin-type: UInt16 + x-etsi-mec-cardinality: '1' + type: integer + format: uint16 + txBeamFormCap: + description: Transmit Beamforming Capabilities as defined in IEEE 802.11-2016 [8]. + x-etsi-mec-origin-type: UInt32 + x-etsi-mec-cardinality: '1' + type: integer + format: uint32 + aselCap: + description: ASEL capabilities as defined in IEEE 802.11-2016 [8]. + x-etsi-mec-origin-type: UInt8 + x-etsi-mec-cardinality: '1' + type: integer + format: uint8 + required: + - htCapabilityInfo + - ampduParameters + - supportedMcsSet + - htExtendedCap + - txBeamFormCap + - aselCap + VhtCapabilities: + x-etsi-ref: 6.5.15 + type: object + properties: + vhtCapInfo: + description: VHT capabilities Info as defined in IEEE 802.11-2016 [8]. + x-etsi-mec-origin-type: UInt32 + x-etsi-mec-cardinality: '1' + type: integer + format: uint32 + vhtMcsNss: + description: "Supported VHT-MCS and NSS Set as defined in IEEE\_802.112016 [8]." + x-etsi-mec-origin-type: UInt64 + x-etsi-mec-cardinality: '1' + type: integer + format: uint64 + required: + - vhtCapInfo + - vhtMcsNss + HeCapabilities: + x-etsi-ref: 6.5.16 + type: object + properties: + heMacCapInfo: + description: MAC capabilities of an Access Point. + x-etsi-mec-origin-type: Uint8 + x-etsi-mec-cardinality: '1' + type: integer + format: uint8 + hePhyCapinfo: + description: PHY capabilities of an Access Point. + x-etsi-mec-origin-type: Uint8 + x-etsi-mec-cardinality: '1' + type: integer + format: uint8 + supportedHeMcsNssSet: + description: Supported MCS and NSS Set. + x-etsi-mec-origin-type: Uint8 + x-etsi-mec-cardinality: '1' + type: integer + format: uint8 + required: + - heMacCapInfo + - hePhyCapinfo + - supportedHeMcsNssSet + DmgCapabilities: + x-etsi-ref: 6.5.17 + type: object + properties: + dmgStaCapInfo: + description: "DMG station capabilities information as defined in IEEE\_802.11-2016 [8]. " + x-etsi-mec-origin-type: Uint64 + x-etsi-mec-cardinality: '1' + type: integer + format: uint64 + dmgApOrPcpCapInfo: + description: 'DMG AP or PCP capabilities information as defined in IEEE 802.11-2016 [8]. ' + x-etsi-mec-origin-type: Uint16 + x-etsi-mec-cardinality: '1' + type: integer + format: uint16 + dmgStaBeamTrackTimeLimit: + description: "DMG station beam tracking time limit as defined in IEEE\_802.11-2016 [8]. " + x-etsi-mec-origin-type: Uint16 + x-etsi-mec-cardinality: '1' + type: integer + format: uint16 + ExtScMcsCap: + description: "Extended SC MCS capabilities as defined in IEEE\_802.11-2016 [8]." + x-etsi-mec-origin-type: Uint8 + x-etsi-mec-cardinality: '1' + type: integer + format: uint8 + maxNrBasicAmsduSubframes: + description: Number of basic A-MSDU subframes in A-MSDU as defined in IEEE 802.11-2016 [8]. + x-etsi-mec-origin-type: Uint8 + x-etsi-mec-cardinality: '1' + type: integer + format: uint8 + maxNrShortAmsduSubframes: + description: Number of short A-MSDU subframes in A-MSDU as defined in IEEE 802.11-2016 [8]. + x-etsi-mec-origin-type: Uint8 + x-etsi-mec-cardinality: '1' + type: integer + format: uint8 + required: + - dmgStaCapInfo + - dmgApOrPcpCapInfo + - dmgStaBeamTrackTimeLimit + - ExtScMcsCap + - maxNrBasicAmsduSubframes + - maxNrShortAmsduSubframes + EdmgCapabilities: + x-etsi-ref: 6.5.18 + type: object + properties: + ampduParameters: + description: A-MPDU parameters as defined in draft IEEE P802.11ay [i.11] + x-etsi-mec-origin-type: Uint8 + x-etsi-mec-cardinality: '1' + type: integer + format: uint8 + trnParameters: + description: Training parameters as defined in draft IEEE P802.11ay [i.11] + x-etsi-mec-origin-type: Uint16 + x-etsi-mec-cardinality: '1' + type: integer + format: uint16 + supportedMcs: + description: Supported MCS as defined in draft IEEE P802.11ay [i.11] + x-etsi-mec-origin-type: Uint32 + x-etsi-mec-cardinality: '1' + type: integer + format: uint32 + required: + - ampduParameters + - trnParameters + - supportedMcs + GeoLocation: + x-etsi-ref: 6.5.19 + type: object + properties: + latUncertainty: + description: The uncertainty for Latitude information as defined in IETF RFC 6225 [6] + x-etsi-mec-origin-type: Uint8 + x-etsi-mec-cardinality: '1' + type: integer + format: uint8 + lat: + description: "The latitude value of location as defined in IETF RFC\_6225 [6]" + x-etsi-mec-origin-type: Uint64 + x-etsi-mec-cardinality: '1' + type: integer + format: uint64 + longUncertainty: + description: The uncertainty for Longitude information as defined in IETF RFC 6225 [6] + x-etsi-mec-origin-type: Uint8 + x-etsi-mec-cardinality: '1' + type: integer + format: uint8 + long: + description: "The longitude value of location as defined in IETF RFC\_6225 [6]" + x-etsi-mec-origin-type: Uint64 + x-etsi-mec-cardinality: '1' + type: integer + format: uint64 + altitudeType: + description: The type description for altitude information e.g. floors or meters as defined in IETF RFC 6225 [6] + x-etsi-mec-origin-type: Uint8 + x-etsi-mec-cardinality: 0..1 + type: integer + format: uint8 + altitudeUncertainty: + description: The uncertainty for altitude information as defined in IETF RFC 6225 [6] + x-etsi-mec-origin-type: Uint8 + x-etsi-mec-cardinality: 0..1 + type: integer + format: uint8 + altitude: + description: "The altitude value of location as defined in IETF RFC\_6225 [6]" + x-etsi-mec-origin-type: Uint32 + x-etsi-mec-cardinality: 0..1 + type: integer + format: uint32 + datum: + description: The datum value to express how coordinates are organized and related to real world as defined in IETF RFC 6225 [6] + x-etsi-mec-origin-type: Uint8 + x-etsi-mec-cardinality: '1' + type: integer + format: uint8 + required: + - latUncertainty + - lat + - longUncertainty + - long + - datum + CivicLocation: + x-etsi-ref: 6.5.20 + type: object + properties: + country: + description: The two-letter ISO 3166 [i.9] country code in capital ASCII letters, e.g. DE or US, as per ISO 3166 [i.9] + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + ca0: + description: Language + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + ca1: + description: 'National subdivisions (state, canton, region, province, prefecture) ' + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + ca2: + description: County, parish, gun (JP), district (IN) + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + ca3: + description: City, township, shi (JP) + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + ca4: + description: City division, borough, city district, ward, chou (JP) + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + ca5: + description: Neighborhood, block + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + ca6: + description: 'Group of streets below the neighborhood level ' + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + ca16: + description: Leading street direction + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + ca17: + description: Trailing street suffix + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + ca18: + description: Street suffix or type + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + ca19: + description: House number + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + ca20: + description: House number suffix + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + ca21: + description: Landmark of vanity address + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + ca22: + description: Additional location information + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + ca23: + description: Name (residence and office occupant) + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + ca24: + description: Postal/zip code + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + ca25: + description: Building (structure) + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + ca26: + description: Unit (apartment/suite) + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + ca27: + description: Floor + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + ca28: + description: Room + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + ca29: + description: Type of place + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + ca30: + description: Postal community name + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + ca31: + description: Post office box + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + ca32: + description: Additional code + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + ca33: + description: Seat (desk, cubicle, workstation, etc.) + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + ca34: + description: Primary road name + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + ca35: + description: Road section + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + ca36: + description: Branch road name + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + ca37: + description: Sub-branch road name + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + ca38: + description: Street name pre-modifier + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + ca39: + description: Street name post-modifier + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + ca128: + description: Script + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + required: + - country + Rssi: + x-etsi-ref: 6.5.21 + type: object + properties: + rssi: + description: The Received Signal Strength Indicator from a station + x-etsi-mec-origin-type: Uint8 + x-etsi-mec-cardinality: '1' + type: integer + format: uint8 + required: + - rssi + StaDataRate: + x-etsi-ref: 6.5.22 + type: object + properties: + staId: + # description': Identifier to uniquely specify the station whose information is exposed within StaDataRate. If StaDataRate is contained within a data type that provides the station's identifier, this field may be omitted. + $ref: '#/components/schemas/StaIdentity' + # x-etsi-mec-origin-type': StaIdentity + # x-etsi-mec-cardinality': 0..1 + staLastDataDownlinkRate: + description: The data transmit rate in kbps that was most recently used for transmission of data PPDUs from the access point to the station. + x-etsi-mec-origin-type: Uint32 + x-etsi-mec-cardinality: 0..1 + type: integer + format: uint32 + staLastDataUplinkRate: + description: The data transmit rate in Kbps that was most recently used for transmission of data PPDUs from the associated station to the access point. + x-etsi-mec-origin-type: Uint32 + x-etsi-mec-cardinality: 0..1 + type: integer + format: uint32 + x-etsi-notes: "NOTE:\tStaDataRate shall include at least one instance of either downlink rate or uplink rate and may include both." + LinkType: + x-etsi-ref: 6.5.23 + type: object + properties: + href: + description: URI referring to a resource + x-etsi-mec-origin-type: Uri + x-etsi-mec-cardinality: '1' + type: string + format: uri + required: + - href + ChannelLoadConfig: + x-etsi-ref: 6.5.24 + type: object + properties: + operatingClass: + description: Operating Class field indicates an operating class value as defined in Annex E within IEEE 802.11-2016 [8]. + x-etsi-mec-origin-type: Uint8 + x-etsi-mec-cardinality: '1' + type: integer + format: uint8 + channel: + description: Channel for which the channel load report is requested. + x-etsi-mec-origin-type: Integer + x-etsi-mec-cardinality: '1' + type: integer + reportingCondition: + description: 'Reporting condition for the Beacon Report as per Table 9-153 of IEEE 802.11-2016 [8]: + + 0 = Report to be issued after each measurement. + + 1 = Report to be issued when Channel Load is greater than or equal to the threshold. + + 2 = Report to be issued when Channel Load is less than or equal to the threshold. + + + If this optional field is not provided, channel load report should be issued after each measurement (reportingCondition = 0).' + x-etsi-mec-origin-type: Uint8 + x-etsi-mec-cardinality: 0..1 + type: integer + format: uint8 + threshold: + description: Channel Load reference value for threshold reporting. This field shall be provided for reportingCondition values 1 and 2. + x-etsi-mec-origin-type: Uint8 + x-etsi-mec-cardinality: 0..1 + type: integer + format: uint8 + required: + - operatingClass + - channel + BeaconRequestConfig: + x-etsi-ref: 6.5.25 + type: object + properties: + operatingClass: + description: "Operating Class field indicates an operating class value as defined in Annex E within IEEE\_802.112016\_[8]." + x-etsi-mec-origin-type: Uint8 + x-etsi-mec-cardinality: '1' + type: integer + format: uint8 + channelId: + description: "Channel number to scan. A Channel Number of 0 indicates a request to make iterative measurements for all supported channels in the Operating Class where the measurement is permitted on the channel and the channel is valid for the current regulatory domain. A\_Channel Number of 255 indicates a request to make iterative measurements for all supported channels in the current Operating Class listed in the latest AP Channel Report received from the serving AP." + x-etsi-mec-origin-type: Uint8 + x-etsi-mec-cardinality: '1' + type: integer + format: uint8 + measurementMode: + description: '0 for passive. + + 1 for active. + + 2 for beacon table.' + x-etsi-mec-origin-type: Uint8 + x-etsi-mec-cardinality: '1' + type: integer + format: uint8 + bssid: + description: The BSSID field indicates the BSS for which a beacon report is requested. If absent, the requested beacon reports should include all BSSs on the channel. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + ssid: + description: The SSID subelement indicates the ESS or IBSS for which a beacon report is requested. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + beaconReportingConf: + # description': Beacon reporting configuration data field format as in Figure 9-157 in IEEE 802.11-2016 [8]. + $ref: '#/components/schemas/BeaconReportingConfig' + # x-etsi-mec-origin-type': BeaconReportingConfig + # x-etsi-mec-cardinality': '1' + required: + - operatingClass + - channelId + - measurementMode + - beaconReportingConf + StaStatisticsConfig: + x-etsi-ref: 6.5.26 + type: object + properties: + groupIdentity: + description: As per Table 9-92 of IEEE 802.11-2016 [8]. + x-etsi-mec-origin-type: Uint8 + x-etsi-mec-cardinality: '1' + type: integer + format: uint8 + triggeredReport: + description: True = triggered reporting, otherwise duration. + x-etsi-mec-origin-type: Boolean + x-etsi-mec-cardinality: '1' + type: boolean + measurementCount: + description: 'Valid if triggeredReport = true. + + Specifies the number of MAC service data units or protocol data units to determine if the trigger conditions are met.' + x-etsi-mec-origin-type: Uint32 + x-etsi-mec-cardinality: 0..1 + type: integer + format: uint32 + triggerTimeout: + description: "Valid if triggeredReport = true.\nThe Trigger Timeout field contains a value in units of 100 time-units of 1 024 \xB5s during which a measuring STA does not generate further triggered STA Statistics Reports after a trigger condition has been met." + x-etsi-mec-origin-type: Uint16 + x-etsi-mec-cardinality: 0..1 + type: integer + format: uint16 + triggerCondition: + # description': Valid if triggeredReport = true. As per Figure 9-161 of IEEE 802.11-2016 [8]. Defines what are the metrics returned by the STA Statistics Report. + $ref: '#/components/schemas/STACounterTriggerCondition' + # x-etsi-mec-origin-type': STACounterTriggerCondition + # x-etsi-mec-cardinality': 0..1 + required: + - groupIdentity + - triggeredReport + BeaconReport: + x-etsi-ref: 6.5.27 + type: object + properties: + staId: + # description': Identifier to uniquely specify the station whose information is exposed within this Beacon Report. If BeaconReport is contained within a data type that provides the station's identifier, this field may be omitted. + $ref: '#/components/schemas/StaIdentity' + # x-etsi-mec-origin-type': StaIdentity + # x-etsi-mec-cardinality': 0..1 + measurementId: + description: Measurement ID of the Measurement configuration applied to this Beacon Report. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + operatingClass: + description: Operating Class field indicates an operating class value as defined in Annex E within IEEE 802.11-2016 [8]. + x-etsi-mec-origin-type: Uint8 + x-etsi-mec-cardinality: '1' + type: integer + format: uint8 + channel: + description: Channel number where the beacon was received. + x-etsi-mec-origin-type: Uint8 + x-etsi-mec-cardinality: '1' + type: integer + format: uint8 + reportedFrameInfo: + # description': Information about the reported beacon frame. + $ref: '#/components/schemas/ReportedBeaconFrameInfo' + # x-etsi-mec-origin-type': ReportedBeaconFrameInfo + # x-etsi-mec-cardinality': '1' + bssid: + description: Indicates the BSSID of the BSS for which a beacon report has been received. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + ssid: + description: The SSID subelement indicates the ESS or IBSS for which a beacon report is received. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + rcpi: + description: "RCPI indicates the received channel power of the Beacon, Measurement Pilot, or Probe Response frame, which is a logarithmic function of the received signal power, as defined in clause\_9.4.2.38 of IEEE 802.11-2016 [8]." + x-etsi-mec-origin-type: Uint8 + x-etsi-mec-cardinality: 0..1 + type: integer + format: uint8 + rsni: + description: "RSNI indicates the received signal-to-noise indication for the Beacon, Measurement Pilot, or Probe Response frame, as described in clause\_9.4.2.41 of IEEE 802.11-2016 [8]." + x-etsi-mec-origin-type: Uint8 + x-etsi-mec-cardinality: 0..1 + type: integer + format: uint8 + antennaId: + description: "The Antenna ID field contains the identifying number for the antenna(s) used for this measurement. Antenna ID is defined in clause\_9.4.2.40 of IEEE 802.11-2016 [8]." + x-etsi-mec-origin-type: Uint8 + x-etsi-mec-cardinality: 0..1 + type: integer + format: uint8 + parentTsf: + description: The Parent TSF field contains the lower 4 octets of the measuring STA's TSF timer value at the start of reception of the first octet of the timestamp field of the reported Beacon, Measurement Pilot, or Probe Response frame at the time the Beacon, Measurement Pilot, or Probe Response frame being reported was received. + x-etsi-mec-origin-type: Uint32 + x-etsi-mec-cardinality: 0..1 + type: integer + format: uint32 + required: + - measurementId + - operatingClass + - channel + - reportedFrameInfo + - bssid + BeaconReportingConfig: + x-etsi-ref: 6.5.28 + type: object + properties: + reportingCondition: + description: 'Reporting condition for the Beacon Report as per Table 9-89 of IEEE 802.11-2016 [8]: + + 0 = Report to be issued after each measurement. + + 1 = measured RCPI level is greater than the threshold. + + 2 = measured RCPI level is less than the threshold. + + 3 = measured RSNI level is greater than the threshold. + + 4 = measured RSNI level is less than the threshold. + + 5 = measured RCPI level is greater than a threshold defined by an offset from the serving AP''s reference RCPI. + + 6 = measured RCPI level is less than a threshold defined by an offset from the serving AP''s reference RCPI. + + 7 = measured RSNI level is greater than a threshold defined by an offset from the serving AP''s reference RSNI. + + 8 = measured RSNI level is less than a threshold defined by an offset from the serving AP''s reference RSNI. + + 9 = measured RCPI level is in a range bound by the serving AP''s reference RCPI and an offset from the serving AP''s reference RCPI. + + 10 = measured RSNI level is in a range bound by the serving AP''s reference RSNI and an offset from the serving AP''s reference RSNI.' + x-etsi-mec-origin-type: Uint8 + x-etsi-mec-cardinality: '1' + type: integer + format: uint8 + threshold: + description: "The threshold subfield contains either the threshold value or the offset value to be used for conditional reporting.\n\nFor reportingCondition subfield with values 1 and 2, the threshold value is a logarithmic function of the received signal power, as defined in clause\_9.4.2.38 of IEEE 802.11-2016 [8].\n\nFor reportingCondition subfield values 3 and 4, the threshold value is a logarithmic function of the signal-to-noise ratio, as described in clause\_9.4.2.41 of IEEE 802.11-2016 [8].\n\nFor reportingCondition subfield values 5 to 10, the offset value is an 8-bit 2s complement integer in units of 0,5 dBm. The indicated reporting condition applies individually to each measured Beacon, Measurement Pilot, or Probe Response frame." + x-etsi-mec-origin-type: Uint8 + x-etsi-mec-cardinality: '1' + type: integer + format: uint8 + required: + - reportingCondition + - threshold + ReportedBeaconFrameInfo: + x-etsi-ref: 6.5.29 + type: object + properties: + phyType: + description: Value between 0 and 127 coded according to dot11PHYType. + x-etsi-mec-origin-type: Uint8 + x-etsi-mec-cardinality: '1' + type: integer + format: uint8 + frameType: + description: 'A value of 0 indicates a Beacon or Probe Response. + + A value of 1 indicates a Measurement Pilot frame.' + x-etsi-mec-origin-type: Uint8 + x-etsi-mec-cardinality: '1' + type: integer + format: uint8 + required: + - phyType + - frameType + BssidInfo: + x-etsi-ref: 6.5.30 + type: object + properties: + apReachability: + description: 'The apReachability field indicates whether the AP identified by this BSSID is reachable by the STA that requested the neighbor report. Valid values: + + 0 = reserved + + 1 = not reachable + + 2 = unknown + + 3 = reachable.' + x-etsi-mec-origin-type: Uint8 + x-etsi-mec-cardinality: '1' + type: integer + format: uint8 + security: + description: 'True indicates the AP identified by this BSSID supports the same security provisioning as used by the STA in its current association. + + + False indicates either that the AP does not support the same security provisioning or that the security information is not available at this time.' + x-etsi-mec-origin-type: Boolean + x-etsi-mec-cardinality: '1' + type: boolean + capabilities: + # description': Capability information for the AP indicated by this BSSID. + $ref: '#/components/schemas/BssCapabilities' + # x-etsi-mec-origin-type': BssCapabilities + # x-etsi-mec-cardinality': '1' + mobilityDomain: + description: True indicates the AP represented by this BSSID is including an MDE in its Beacon frames and that the contents of that MDE are identical to the MDE advertised by the AP sending the report. + x-etsi-mec-origin-type: Boolean + x-etsi-mec-cardinality: '1' + type: boolean + highThroughput: + description: True indicates that the AP represented by this BSSID is an HT AP including the HT Capabilities element in its Beacons, and that the contents of that HT Capabilities element are identical to the HT Capabilities element advertised by the AP sending the report. + x-etsi-mec-origin-type: Boolean + x-etsi-mec-cardinality: '1' + type: boolean + veryHighThroughput: + description: True indicates that the AP represented by this BSSID is a VHT AP and that the VHT Capabilities element, if included as a subelement in the report, is identical in content to the VHT Capabilities element included in the AP's Beacon. + x-etsi-mec-origin-type: Boolean + x-etsi-mec-cardinality: '1' + type: boolean + ftm: + description: 'True indicates the AP represented by this BSSID is an AP that has set the Fine Timing Measurement Responder field of the Extended Capabilities element to 1. + + + False indicates either that the reporting AP has dot11FineTimingMsmtRespActivated equal to false, or the reported AP has not set the Fine Timing Measurement Responder field of the Extended Capabilities element to 1 or that the Fine Timing Measurement Responder field of the reported AP is not available to the reporting AP at this time.' + x-etsi-mec-origin-type: Boolean + x-etsi-mec-cardinality: '1' + type: boolean + required: + - apReachability + - security + - capabilities + - mobilityDomain + - highThroughput + - veryHighThroughput + - ftm + BssCapabilities: + x-etsi-ref: 6.5.31 + type: object + properties: + spectrumManagement: + description: Spectrum Management required + x-etsi-mec-origin-type: Boolean + x-etsi-mec-cardinality: '1' + type: boolean + qos: + description: QoS Option implemented + x-etsi-mec-origin-type: Boolean + x-etsi-mec-cardinality: '1' + type: boolean + apsd: + description: APSD Option implemented + x-etsi-mec-origin-type: Boolean + x-etsi-mec-cardinality: '1' + type: boolean + radioMeasurements: + description: Radio Measurement Activated + x-etsi-mec-origin-type: Boolean + x-etsi-mec-cardinality: '1' + type: boolean + delayedBACK: + description: Delayed Block Ack Option implemented + x-etsi-mec-origin-type: Boolean + x-etsi-mec-cardinality: '1' + type: boolean + immediateBACK: + description: Immediate Block Ack Option implemented + x-etsi-mec-origin-type: Boolean + x-etsi-mec-cardinality: '1' + type: boolean + required: + - spectrumManagement + - qos + - apsd + - radioMeasurements + - delayedBACK + - immediateBACK + NeighborReportConfig: + x-etsi-ref: 6.5.32 + type: object + properties: + ssid: + description: The SSID field is optionally present. If present, it contains an SSID element. The presence of an SSID element in a Neighbor Report indicates a request for a neighbor list for the specified SSID in the SSID Element. The absence of an SSID element indicates neighbor report for the current ESS. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + bssid: + description: BSSID of the neighbor AP which information is intended to obtain. If no specific BSSID is given, the information will be provided for all APs matching the ssid criteria. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + x-etsi-notes: "NOTE:\tBoth SSID and BSSID are optional configuration parameters. BSSID is valid when a SSID setting is provided, otherwise ignored. If SSID is not included, the neighbor report will be generated for the SSID (i.e.\_current ESS) that the station is associated." + STACounterTriggerCondition: + x-etsi-ref: 6.5.33 + type: object + properties: + failedCountThreshold: + description: Configure and set threshold for dot11FailedCount trigger + x-etsi-mec-origin-type: Uint32 + x-etsi-mec-cardinality: 0..1 + type: integer + format: uint32 + fcsErrorCountThreshold: + description: Configure and set threshold for dot11FCSErrorCount trigger + x-etsi-mec-origin-type: Uint32 + x-etsi-mec-cardinality: 0..1 + type: integer + format: uint32 + multipleRetryCountThreshold: + description: Configure and set threshold for dot11MultipleRetryCount trigger + x-etsi-mec-origin-type: Uint32 + x-etsi-mec-cardinality: 0..1 + type: integer + format: uint32 + frameDuplicateCountThreshold: + description: Configure and set threshold for dot11FrameDuplicateCount trigger + x-etsi-mec-origin-type: Uint32 + x-etsi-mec-cardinality: 0..1 + type: integer + format: uint32 + rtsFailureCountThreshold: + description: Configure and set threshold for dot11RTSFailureCount trigger + x-etsi-mec-origin-type: Uint32 + x-etsi-mec-cardinality: 0..1 + type: integer + format: uint32 + ackFailureCountThreshold: + description: Configure and set threshold for dot11AckFailureCount trigger + x-etsi-mec-origin-type: Uint32 + x-etsi-mec-cardinality: 0..1 + type: integer + format: uint32 + retryCountThreshold: + description: Configure and set threshold for dot11RetryCount trigger + x-etsi-mec-origin-type: Uint32 + x-etsi-mec-cardinality: 0..1 + type: integer + format: uint32 + StaStatisticsGroupZeroData: + x-etsi-ref: 6.5.34 + type: object + properties: + transmittedFragmentCount: + description: dot11TransmittedFragmentCount counter + x-etsi-mec-origin-type: Uint32 + x-etsi-mec-cardinality: '1' + type: integer + format: uint32 + groupTransmittedFrameCount: + description: dot11GroupTransmittedFrameCount counter + x-etsi-mec-origin-type: Uint32 + x-etsi-mec-cardinality: '1' + type: integer + format: uint32 + failedCount: + description: dot11FailedCount counter + x-etsi-mec-origin-type: Uint32 + x-etsi-mec-cardinality: '1' + type: integer + format: uint32 + receivedFragmentCount: + description: dot11ReceivedFragmentCount counter + x-etsi-mec-origin-type: Uint32 + x-etsi-mec-cardinality: '1' + type: integer + format: uint32 + groupReceivedFrameCount: + description: dot11GroupReceivedFrameCount counter + x-etsi-mec-origin-type: Uint32 + x-etsi-mec-cardinality: '1' + type: integer + format: uint32 + fcsErrorCount: + description: dot11FCSErrorCount counter + x-etsi-mec-origin-type: Uint32 + x-etsi-mec-cardinality: '1' + type: integer + format: uint32 + transmittedFrameCount: + description: dot11TransmittedFrameCount counter + x-etsi-mec-origin-type: Uint32 + x-etsi-mec-cardinality: '1' + type: integer + format: uint32 + reportingReasonStaCounters: + # description': Optionally reported reason for STA Statistics Group 0 + $ref: '#/components/schemas/ReportingReasonStaCounters' + # x-etsi-mec-origin-type': ReportingReasonStaCounters + # x-etsi-mec-cardinality': 0..1 + required: + - transmittedFragmentCount + - groupTransmittedFrameCount + - failedCount + - receivedFragmentCount + - groupReceivedFrameCount + - fcsErrorCount + - transmittedFrameCount + StaStatisticsGroupOneData: + x-etsi-ref: 6.5.35 + type: object + properties: + retryCount: + description: dot11RetryCount counter + x-etsi-mec-origin-type: Uint32 + x-etsi-mec-cardinality: '1' + type: integer + format: uint32 + multipleRetryCount: + description: dot11MultipleRetryCount counter + x-etsi-mec-origin-type: Uint32 + x-etsi-mec-cardinality: '1' + type: integer + format: uint32 + frameDuplicateCount: + description: dot11FrameDuplicateCount counter + x-etsi-mec-origin-type: Uint32 + x-etsi-mec-cardinality: '1' + type: integer + format: uint32 + rtsSuccessCount: + description: dot11RTSSuccessCount counter + x-etsi-mec-origin-type: Uint32 + x-etsi-mec-cardinality: '1' + type: integer + format: uint32 + rtsFailureCount: + description: dot11RTSFailureCount counter + x-etsi-mec-origin-type: Uint32 + x-etsi-mec-cardinality: '1' + type: integer + format: uint32 + ackFailureCount: + description: dot11AckFailureCount counter + x-etsi-mec-origin-type: Uint32 + x-etsi-mec-cardinality: '1' + type: integer + format: uint32 + reportingReasonStaCounters: + # description': Optionally reported reason for STA Statistics Group 1 + $ref: '#/components/schemas/ReportingReasonStaCounters' + # x-etsi-mec-origin-type': ReportingReasonStaCounters + # x-etsi-mec-cardinality': 0..1 + required: + - retryCount + - multipleRetryCount + - frameDuplicateCount + - rtsSuccessCount + - rtsFailureCount + - ackFailureCount + StaStatisticsGroup2to9Data: + x-etsi-ref: 6.5.36 + type: object + properties: + qosTransmittedFragmentCount: + description: dot11QosTransmittedFragmentCount counter + x-etsi-mec-origin-type: Uint32 + x-etsi-mec-cardinality: '1' + type: integer + format: uint32 + qosFailedCount: + description: dot11QosFailedCount counter + x-etsi-mec-origin-type: Uint32 + x-etsi-mec-cardinality: '1' + type: integer + format: uint32 + qosRetryCount: + description: dot11QosRetryCount counter + x-etsi-mec-origin-type: Uint32 + x-etsi-mec-cardinality: '1' + type: integer + format: uint32 + qosMultipleRetryCount: + description: dot11QosMultipleRetryCount counter + x-etsi-mec-origin-type: Uint32 + x-etsi-mec-cardinality: '1' + type: integer + format: uint32 + qosFrameDuplicateCount: + description: dot11QosFrameDuplicateCount counter + x-etsi-mec-origin-type: Uint32 + x-etsi-mec-cardinality: '1' + type: integer + format: uint32 + qosRTSSuccessCount: + description: dot11QosRTSSuccessCount counter + x-etsi-mec-origin-type: Uint32 + x-etsi-mec-cardinality: '1' + type: integer + format: uint32 + qosRTSFailureCount: + description: dot11QosRTSFailureCount counter + x-etsi-mec-origin-type: Uint32 + x-etsi-mec-cardinality: '1' + type: integer + format: uint32 + qosAckFailureCount: + description: dot11QosAckFailureCount counter + x-etsi-mec-origin-type: Uint32 + x-etsi-mec-cardinality: '1' + type: integer + format: uint32 + qosReceivedFragmentCount: + description: dot11QosReceivedFragmentCount counter + x-etsi-mec-origin-type: Uint32 + x-etsi-mec-cardinality: '1' + type: integer + format: uint32 + qosTransmittedFrameCount: + description: dot11QosTransmittedFrameCount counter + x-etsi-mec-origin-type: Uint32 + x-etsi-mec-cardinality: '1' + type: integer + format: uint32 + qosDiscardedFrameCount: + description: dot11QosDiscardedFrameCount counter + x-etsi-mec-origin-type: Uint32 + x-etsi-mec-cardinality: '1' + type: integer + format: uint32 + qosMPDUsReceivedCount: + description: dot11QosMPDUsReceivedCount counter + x-etsi-mec-origin-type: Uint32 + x-etsi-mec-cardinality: '1' + type: integer + format: uint32 + qosRetriesReceivedCount: + description: dot11QosRetriesReceivedCount counter + x-etsi-mec-origin-type: Uint32 + x-etsi-mec-cardinality: '1' + type: integer + format: uint32 + reportingReasonQoSCounters: + # description': Optionally reported reason for STA Statistics Groups 2 to 9 + $ref: '#/components/schemas/ReportingReasonQoSCounters' + # x-etsi-mec-origin-type': ReportingReasonQoSCounters + # x-etsi-mec-cardinality': 0..1 + required: + - qosTransmittedFragmentCount + - qosFailedCount + - qosRetryCount + - qosMultipleRetryCount + - qosFrameDuplicateCount + - qosRTSSuccessCount + - qosRTSFailureCount + - qosAckFailureCount + - qosReceivedFragmentCount + - qosTransmittedFrameCount + - qosDiscardedFrameCount + - qosMPDUsReceivedCount + - qosRetriesReceivedCount + ReportingReasonStaCounters: + x-etsi-ref: 6.5.37 + type: object + properties: + failed: + description: dot11Failed + x-etsi-mec-origin-type: Boolean + x-etsi-mec-cardinality: '1' + type: boolean + fcsError: + description: 'dot11FCSError ' + x-etsi-mec-origin-type: Boolean + x-etsi-mec-cardinality: '1' + type: boolean + multipleRetry: + description: dot11MultipleRetry + x-etsi-mec-origin-type: Boolean + x-etsi-mec-cardinality: '1' + type: boolean + frameDuplicate: + description: 'dot11FrameDuplicate ' + x-etsi-mec-origin-type: Boolean + x-etsi-mec-cardinality: '1' + type: boolean + rtsFailure: + description: dot11RTSFailure + x-etsi-mec-origin-type: Boolean + x-etsi-mec-cardinality: '1' + type: boolean + ackFailure: + description: dot11AckFailure + x-etsi-mec-origin-type: Boolean + x-etsi-mec-cardinality: '1' + type: boolean + retry: + description: dot11Retry + x-etsi-mec-origin-type: Boolean + x-etsi-mec-cardinality: '1' + type: boolean + required: + - failed + - fcsError + - multipleRetry + - frameDuplicate + - rtsFailure + - ackFailure + - retry + ReportingReasonQoSCounters: + x-etsi-ref: 6.5.38 + type: object + properties: + qosFailed: + description: 'dot11QoSFailed ' + x-etsi-mec-origin-type: Boolean + x-etsi-mec-cardinality: '1' + type: boolean + qosRetry: + description: dot11QoSRetry + x-etsi-mec-origin-type: Boolean + x-etsi-mec-cardinality: '1' + type: boolean + qosMultipleRetry: + description: dot11QoSMultipleRetry + x-etsi-mec-origin-type: Boolean + x-etsi-mec-cardinality: '1' + type: boolean + qosFrameDuplicate: + description: dot11QoSFrameDuplicate + x-etsi-mec-origin-type: Boolean + x-etsi-mec-cardinality: '1' + type: boolean + qosRtsFailure: + description: dot11QoSRTSFailure + x-etsi-mec-origin-type: Boolean + x-etsi-mec-cardinality: '1' + type: boolean + qosAckFailure: + description: dot11QoSAckFailure + x-etsi-mec-origin-type: Boolean + x-etsi-mec-cardinality: '1' + type: boolean + qosDiscarded: + description: dot11QoSDiscarded + x-etsi-mec-origin-type: Boolean + x-etsi-mec-cardinality: '1' + type: boolean + required: + - qosFailed + - qosRetry + - qosMultipleRetry + - qosFrameDuplicate + - qosRtsFailure + - qosAckFailure + - qosDiscarded + ChannelLoad: + x-etsi-ref: 6.5.39 + type: object + properties: + staId: + # description': Identifier to uniquely specify the station whose information is exposed within Channel Load. If ChannelLoad is contained within a data type that provides the station's identifier, this field may be omitted. + $ref: '#/components/schemas/StaIdentity' + # x-etsi-mec-origin-type': StaIdentity + # x-etsi-mec-cardinality': 0..1 + measurementId: + description: Measurement ID of the Measurement configuration applied to this Channel Load Report. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + operatingClass: + description: Operating Class field indicates an operating class value as defined in Annex E within IEEE 802.11-2016 [8]. + x-etsi-mec-origin-type: Uint8 + x-etsi-mec-cardinality: '1' + type: integer + format: uint8 + channel: + description: Channel number indicates the channel number for which the measurement report applies. + x-etsi-mec-origin-type: Uint8 + x-etsi-mec-cardinality: '1' + type: integer + format: uint8 + measurementDuration: + description: "Duration over which the Channel Load report was measured, in units of TUs of 1 024 \xB5s." + x-etsi-mec-origin-type: Uint8 + x-etsi-mec-cardinality: '1' + type: integer + format: uint8 + channelLoad: + description: "Proportion of measurement duration for which the measuring STA determined the channel to be busy, as a percentage of time, linearly scaled with 255 representing 100\_%." + x-etsi-mec-origin-type: Uint8 + x-etsi-mec-cardinality: '1' + type: integer + format: uint8 + required: + - measurementId + - operatingClass + - channel + - measurementDuration + - channelLoad + OBssLoad: + x-etsi-ref: 6.5.40 + type: object + properties: + allocatedTrafficSelfMean: + description: "Mean of allocated traffic from this AP (BSS) in units of 32\_\xB5s per second." + x-etsi-mec-origin-type: Uint16 + x-etsi-mec-cardinality: '1' + type: integer + format: uint16 + allocatedTrafficSelfStdDev: + description: "Standard deviation from the mean of allocation traffic from this BSS in units of 32 \xB5s per second." + x-etsi-mec-origin-type: Uint16 + x-etsi-mec-cardinality: 0..1 + type: integer + format: uint16 + allocatedTrafficShareMean: + description: "Mean of the sum of allocated traffic from other APs on the overlapping channel in unit of 32 \xB5s per second." + x-etsi-mec-origin-type: Uint16 + x-etsi-mec-cardinality: '1' + type: integer + format: uint16 + allocatedTrafficShareStdDev: + description: "Standard deviation from the mean of the sum of allocated traffic from other APs on the overlapping channel in unit of 32 \xB5s per second." + x-etsi-mec-origin-type: Uint16 + x-etsi-mec-cardinality: 0..1 + type: integer + format: uint16 + overlap: + description: Indicates the number of other APs that are sharing the same channel as the reporting AP. + x-etsi-mec-origin-type: Uint8 + x-etsi-mec-cardinality: 0..1 + type: integer + format: uint8 + required: + - allocatedTrafficSelfMean + - allocatedTrafficShareMean + MeasurementInfo: + x-etsi-ref: 6.5.41 + type: object + properties: + measurementDuration: + description: "Duration of the measurement in Time Units (TUs) of 1\_024 \xB5s, as defined in clause 11.11.4 of IEEE\_802.11-2016 [8]. If not provided, the underlying system may utilize a default configuration that will be indicated in resulting measurement reports." + x-etsi-mec-origin-type: Uint16 + x-etsi-mec-cardinality: 0..1 + type: integer + format: uint16 + randomInterval: + description: "Random interval to be used for starting the measurement in TUs of 1\_024 \xB5s, as specified in clause\_11.11.3 of IEEE 802.11-2016 [8]. If not provided, the underlying system may utilize a default configuration that will be indicated in resulting measurement reports." + x-etsi-mec-origin-type: Uint16 + x-etsi-mec-cardinality: 0..1 + type: integer + format: uint16 + channelLoadConf: + # description': Configuration related to the Channel Load. + $ref: '#/components/schemas/ChannelLoadConfig' + # x-etsi-mec-origin-type': ChannelLoadConfig + # x-etsi-mec-cardinality': 0..1 + beaconRequestConf: + # description': Configuration related to Beacon Request. + $ref: '#/components/schemas/BeaconRequestConfig' + # x-etsi-mec-origin-type': BeaconRequestConfig + # x-etsi-mec-cardinality': 0..1 + staStatisticsConf: + # description': Configuration related to the statistics provided by STAs. + $ref: '#/components/schemas/StaStatisticsConfig' + # x-etsi-mec-origin-type': StaStatisticsConfig + # x-etsi-mec-cardinality': 0..1 + neighborReportConf: + # description': Configuration related to Neighbor Reports. + $ref: '#/components/schemas/NeighborReportConfig' + # x-etsi-mec-origin-type': NeighborReportConfig + # x-etsi-mec-cardinality': 0..1 + x-etsi-notes: "NOTE 1:\tOnly one of channelLoadConf, beaconRequestConf, staStatisticsConf or neighborReportConf is allowed in a MeasurementInfo instance.\nNOTE 2:\tAs per IEEE 802.11-2016 [8], measurementDuration and randomInterval apply to channelLoad, beaconRequest, staStatistics, and neighborReport configurations." + WebsockNotifConfig: + x-etsi-ref: 6.5.42 + type: object + properties: + websocketUri: + description: Set by WAIS to indicate to the service consumer the Websocket URI to be used for delivering notifications. + x-etsi-mec-origin-type: Uri + x-etsi-mec-cardinality: 0..1 + type: string + format: uri + requestWebsocketUri: + description: Set to true by the service consumer to indicate that Websocket delivery is requested. + x-etsi-mec-origin-type: Boolean + x-etsi-mec-cardinality: 0..1 + type: boolean + _links: + description: Hyperlink related to the resource. + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: 0..1 + type: object + properties: + self: + # description': Self-referring URI. The URI shall be unique within the WLAN Access Information API as it acts as an Id for the measurement configuration (MeasurementConfigId). + $ref: '#/components/schemas/LinkType' + # x-etsi-mec-origin-type': LinkType + # x-etsi-mec-cardinality': '1' + required: + - self + _links1: + description: Hyperlink related to the resource. + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: '1' + type: object + properties: + self: + # description': Self-referring URI. + $ref: '#/components/schemas/LinkType' + # x-etsi-mec-origin-type': LinkType + # x-etsi-mec-cardinality': '1' + required: + - self + _links2: + description: Hyperlink related to the resource. This shall be only included in the HTTP responses and in HTTP PUT requests. + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: 0..1 + type: object + properties: + self: + # description': Self-referring URI. The URI shall be unique within the WLAN Access Information API as it acts as an ID for the subscription (SubscriptionId). + $ref: '#/components/schemas/LinkType' + # x-etsi-mec-origin-type': LinkType + # x-etsi-mec-cardinality': '1' + required: + - self + NotificationEvent: + description: 'Set for trigger-based event notification reporting. ' + x-etsi-mec-origin-type: Structure (inline) + x-etsi-mec-cardinality: 0..1 + type: object + properties: + trigger: + type: integer + description: 'Trigger for the notification: + + 1 = Notification issued when the number of connected stations is greater than or equal to the threshold. + + 2 = Notification issued when the number of connected stations is less than or equal to the threshold.' + enum: + - SEE_DESCRIPTION + x-etsi-mec-origin-type: Enum_inline + x-etsi-mec-cardinality: '1' + threshold: + description: Number of connected stations threshold for trigger-based event reporting. + x-etsi-mec-origin-type: Uint8 + x-etsi-mec-cardinality: '1' + type: integer + format: uint8 + required: + - trigger + - threshold + NotificationEvent1: + description: Set for trigger-based event notification reporting. + x-etsi-mec-origin-type: Structure (inline) + x-etsi-mec-cardinality: 0..1 + type: object + properties: + trigger: + type: integer + description: 'Trigger event for the notification: + + 1 = Notification issued when the STA''s downlink data rate is greater than or equal to the downlink threshold. + + 2 = Notification issued when the STA''s downlink data rate is less than or equal to the downlink threshold. + + 3 = Notification issued when the STA''s uplink data rate is greater than or equal to the uplink threshold. + + 4 = Notification issued when the STA''s uplink data rate is less than or equal to the uplink threshold. + + 5 = Notification issued when the STA''s downlink and uplink data rate is greater than or equal to their thresholds. + + 6 = Notification issued when the STA''s downlink and uplink data rate is less than or equal to their thresholds. + + 7 = Notification issued when the STA''s downlink or uplink data rate is greater than or equal to their thresholds. + + 8 = Notification issued when the STA''s downlink or uplink data rate is less than or equal to their thresholds.' + enum: + - SEE_DESCRIPTION + x-etsi-mec-origin-type: Enum_inline + x-etsi-mec-cardinality: '1' + downlinkRateThreshold: + description: Downlink data rate threshold for StaDataRate reporting. + x-etsi-mec-origin-type: Uint32 + x-etsi-mec-cardinality: 0..1 + type: integer + format: uint32 + uplinkRateThreshold: + description: Uplink data rate threshold for StaDataRate reporting. + x-etsi-mec-origin-type: Uint32 + x-etsi-mec-cardinality: 0..1 + type: integer + format: uint32 + required: + - trigger + _links3: + description: List of hyperlinks related to the resource. + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: '1' + type: object + properties: + self: + # description': Self-referring URI. + $ref: '#/components/schemas/LinkType' + # x-etsi-mec-origin-type': LinkType + # x-etsi-mec-cardinality': '1' + required: + - self + Subscription: + description: '' + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: 0..N + type: object + minItems: 0 + properties: + href: + description: The URI referring to the subscription. + x-etsi-mec-origin-type: Uri + x-etsi-mec-cardinality: '1' + type: string + format: uri + subscriptionType: + description: "Type of the subscription. The string shall be set according to the \"subscriptionType\" attribute of the associated subscription data type defined in clauses\_6.3.2, 6.3.3 and 6.3.5:\n\"AssocStaSubscription\"\n\"StaDataRateSubscription\"\n\"MeasurementReportSubscription\"." + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + required: + - href + - subscriptionType + _links4: + description: Hyperlink related to the resource. + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: '1' + type: object + properties: + subscription: + # description': URI identifying the subscription which has expired. + $ref: '#/components/schemas/LinkType' + # x-etsi-mec-origin-type': LinkType + # x-etsi-mec-cardinality': '1' + required: + - subscription + _links5: + description: 'Hyperlink related to the resource. ' + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: '1' + type: object + properties: + subscription: + # description': URI identifying the subscription for the test notification. + $ref: '#/components/schemas/LinkType' + # x-etsi-mec-origin-type': LinkType + # x-etsi-mec-cardinality': '1' + required: + - subscription + responses: + '200': + description: OK + '204': + description: No Content + '400': + description: 'Bad Request: used to indicate that incorrect parameters were passed to the request.' + content: + application/problem+json: + schema: + $ref: '#/components/schemas/ProblemDetails' + '401': + description: 'Unauthorized: used when the client did not submit credentials.' + content: + application/problem+json: + schema: + $ref: '#/components/schemas/ProblemDetails' + '403': + description: 'Forbidden: operation is not allowed given the current status of the resource.' + content: + application/problem+json: + schema: + $ref: '#/components/schemas/ProblemDetails' + '404': + description: 'Not Found: used when a client provided a URI that cannot be mapped to a valid resource URI.' + content: + application/problem+json: + schema: + $ref: '#/components/schemas/ProblemDetails' + '406': + description: 'Not Acceptable: used to indicate that the server cannot provide the any of the content formats supported by the client.' + content: + application/problem+json: + schema: + $ref: '#/components/schemas/ProblemDetails' + '412': + description: 'Precondition failed: used when a condition has failed during conditional requests, e.g. when using ETags to avoid write conflicts when using PUT' + content: + application/problem+json: + schema: + $ref: '#/components/schemas/ProblemDetails' + '415': + description: 'Unsupported Media Type: used to indicate that the server or the client does not support the content type of the entity body.' + content: + application/problem+json: + schema: + $ref: '#/components/schemas/ProblemDetails' + '422': + description: 'Unprocessable Entity: used to indicate that the server understands the content type of the request entity and that the syntax of the request entity is correct but that the server is unable to process the contained instructions. This error condition can occur if an JSON request body is syntactically correct but semantically incorrect, for example if the target area for the request is considered too large. This error condition can also occur if the capabilities required by the request are not supported.' + content: + application/problem+json: + schema: + $ref: '#/components/schemas/ProblemDetails' + '429': + description: 'Too Many Requests: used when a rate limiter has triggered.' + content: + application/problem+json: + schema: + $ref: '#/components/schemas/ProblemDetails' + parameters: + Query.Filter: + description: "Attribute-based filtering expression according to clause 6.19 of ETSI GS\_MEC 009 [10].\nThe WLAN Access Information API shall support receiving this parameter as part of the URI query string.\nAll attribute names that appear in the ap_information and in data types referenced from it shall be supported by the WLAN Access Information API in the filter expression." + name: filter + cardinality: 0..1 + in: query + required: false + x-exportParamName: Query.Filter + Query.All_fields: + description: Include all complex attributes in the response. See clause 6.18 of ETSI GS MEC 009 [10] for details. The WLAN Access Information API shall support this parameter. + name: all_fields + cardinality: 0..1 + in: query + required: false + x-exportParamName: Query.All_fields + Query.Fields: + description: Complex attributes to be included into the response. See clause 6.18 of ETSI GS MEC 009 [10] for details. The WLAN Access Information API shall support this parameter. + name: fields + cardinality: 0..1 + in: query + required: false + x-exportParamName: Query.Fields + Query.Exclude_fields: + description: Complex attributes to be excluded from the response. See clause 6.18 of ETSI GS MEC 009 [10] for details. The WLAN Access Information API shall support this parameter. + name: exclude_fields + cardinality: 0..1 + in: query + required: false + x-exportParamName: Query.Exclude_fields + Query.Exclude_default: + description: 'Indicates to exclude the following complex attributes from the response. See clause 6.18 of ETSI GS MEC 009 [10] for details. The WLAN Access Information API shall support this parameter. + + The following attributes shall be excluded from the ap_information structure in the response body if this parameter is provided, or none of the parameters "all_fields", "fields", "exclude_fields", "exclude_default" are provided: + + Not applicable.' + name: exclude_default + cardinality: 0..1 + in: query + required: false + x-exportParamName: Query.Exclude_default + Query.Filter1: + description: "Attribute-based filtering expression according to clause 6.19 of ETSI GS\_MEC 009 [10].\nThe WLAN Access Information API shall support receiving this parameter as part of the URI query string.\n\nAll attribute names that appear in the ap_information and in data types referenced from it shall be supported by the WLAN Access Information API in the filter expression." + name: filter + cardinality: 0..1 + in: query + required: false + x-exportParamName: Query.Filter1 + Query.Subscription_type: + description: "Query parameter to filter on a specific subscription type. Permitted values:\nassoc_sta\tAssociated Stations\nsta_data_rate\tStation Data Rate\nmeasure_report \tMeasurement Report." + name: subscription_type + cardinality: 0..1 + in: query + required: false + x-exportParamName: Query.Subscription_type + schema: + type: string + diff --git a/Auto_Generated_OAS_Output_Files/gs_mec029v020201p.yaml b/Auto_Generated_OAS_Output_Files/gs_mec029v020201p.yaml new file mode 100644 index 0000000..db91007 --- /dev/null +++ b/Auto_Generated_OAS_Output_Files/gs_mec029v020201p.yaml @@ -0,0 +1,2004 @@ +openapi: 3.1.0 +jsonSchemaDialect: https://json-schema.org/draft/2020-12/schema +info: + contact: + url: https://forge.etsi.org/rep/mec/gs029-fai-api + title: ETSI GS MEC 029 Fixed Access Information API + description: The ETSI MEC ISG Fixed Access Information API described using OpenAPI. + license: + name: BSD-3-Clause + url: https://forge.etsi.org/legal-matters + version: 2.2.1 +paths: + /queries/fa_info: + get: + summary: Retrieve current status of the FAI. + description: The GET method is used to query information about the available fixed access networks. + operationId: fainfoGET + tags: + - queries + parameters: + - $ref: '#/components/parameters/Query.Customerpremisesinfo' + - $ref: '#/components/parameters/Query.Lastmiletech' + - $ref: '#/components/parameters/Query.Interfacetype' + - $ref: '#/components/parameters/Query.Dsbw' + - $ref: '#/components/parameters/Query.Usbw' + - $ref: '#/components/parameters/Query.Latency' + responses: + '200': + description: Upon success, a response body containing the information of zero or more fix access networks is returned. + content: + application/json: + schema: + type: object + properties: + FaInfo: + type: array + items: + $ref: '#/components/schemas/FaInfo' + '400': + $ref: '#/components/responses/400' + '401': + $ref: '#/components/responses/401' + '403': + $ref: '#/components/responses/403' + '404': + $ref: '#/components/responses/404' + '406': + $ref: '#/components/responses/406' + '429': + $ref: '#/components/responses/429' + /queries/device_info: + get: + summary: Retrieve current status of the device information. + description: The GET method is used to query information about the devices that are connected to a fixed access network. + operationId: deviceinfoGET + tags: + - queries + parameters: + - $ref: '#/components/parameters/Query.Gwid' + - $ref: '#/components/parameters/Query.Deviceid' + - $ref: '#/components/parameters/Query.Devicestatus' + responses: + '200': + description: Upon success, a response body containing the information of zero or more devices is returned. + content: + application/json: + schema: + type: object + properties: + DeviceInfo: + type: array + items: + $ref: '#/components/schemas/DeviceInfo' + '400': + $ref: '#/components/responses/400' + '401': + $ref: '#/components/responses/401' + '403': + $ref: '#/components/responses/403' + '404': + $ref: '#/components/responses/404' + '406': + $ref: '#/components/responses/406' + '429': + $ref: '#/components/responses/429' + /queries/cable_line_info: + get: + summary: Retrieve current status of the cable line information. + description: The GET method is used to query information about the cable line of a fixed access network. + operationId: cablelineinfoGET + tags: + - queries + - cable_line_info + parameters: + - $ref: '#/components/parameters/Query.Customerpremisesinfo1' + - $ref: '#/components/parameters/Query.Cmid' + responses: + '200': + description: Upon success, a response body containing the information of zero or more cable lines is returned. + content: + application/json: + schema: + type: object + properties: + CableLineInfo: + type: array + items: + $ref: '#/components/schemas/CableLineInfo' + '400': + $ref: '#/components/responses/400' + '401': + $ref: '#/components/responses/401' + '403': + $ref: '#/components/responses/403' + '404': + $ref: '#/components/responses/404' + '406': + $ref: '#/components/responses/406' + '429': + $ref: '#/components/responses/429' + /queries/optical_network_info: + get: + summary: Retrieve current status of the optical network information. + description: The GET method is used to query information about the optical network. + operationId: opticalnetworkinfoGET + tags: + - queries + - optical_network_info + parameters: + - $ref: '#/components/parameters/Query.Customerpremisesinfo2' + - $ref: '#/components/parameters/Query.Ponys_id' + - $ref: '#/components/parameters/Query.Onuid' + responses: + '200': + description: Upon success, a response body containing the information of zero or more optical networks is returned. + content: + application/json: + schema: + type: object + properties: + PonInfo: + type: array + items: + $ref: '#/components/schemas/PonInfo' + '400': + $ref: '#/components/responses/400' + '401': + $ref: '#/components/responses/401' + '403': + $ref: '#/components/responses/403' + '404': + $ref: '#/components/responses/404' + '406': + $ref: '#/components/responses/406' + '429': + $ref: '#/components/responses/429' + /subscriptions: + get: + summary: Retrieve a list of active subscriptions for this subscriber. + description: The GET method is used to request information about the subscriptions for this requestor. Upon success, the response contains entity body with the list of links to the subscriptions that are present for the requestor. + operationId: subscriptionsGET + tags: + - subscriptions + parameters: + - $ref: '#/components/parameters/Query.Subscription_type' + responses: + '200': + description: Upon success, a response body containing the list of links to requestor's subscriptions is returned. The list shall only contain subscriptions of the subscription type specified by the URI query parameters. + content: + application/json: + schema: + type: object + properties: + SubscriptionLinkList: + $ref: '#/components/schemas/SubscriptionLinkList' + '400': + $ref: '#/components/responses/400' + '401': + $ref: '#/components/responses/401' + '403': + $ref: '#/components/responses/403' + '404': + $ref: '#/components/responses/404' + '406': + $ref: '#/components/responses/406' + '429': + $ref: '#/components/responses/429' + post: + summary: Create a new subscription. + description: The POST method is used to create a new subscription to FAI notifications. Upon success, the response contains entity body describing the created subscription. + operationId: subscriptionsPOST + tags: + - subscriptions + requestBody: + description: 'The entity body in the request contains data type of the specific FAI event subscription that is to be created, where the data type options are listed below: + + OnuAlarmSubscription. + + DevInfoSubscription. + + CmConnSubscription. + + AniAlarmSubscription.' + content: + application/json: + schema: + type: object + properties: + OnuAlarmSubscription: + $ref: '#/components/schemas/OnuAlarmSubscription' + responses: + '201': + description: 'Indicates successful resource creation, where the resource URI shall be returned in the HTTP Location header field. + + + In the returned NotificationSubscription structure, the created subscription is described using the appropriate data type from the list below: + + OnuAlarmSubscription. + + DevInfoSubscription. + + CmConnSubscription. + + AniAlarmSubscription.' + content: + application/json: + schema: + type: object + properties: + OnuAlarmSubscription: + $ref: '#/components/schemas/OnuAlarmSubscription' + '400': + $ref: '#/components/responses/400' + '401': + $ref: '#/components/responses/401' + '403': + $ref: '#/components/responses/403' + '404': + $ref: '#/components/responses/404' + '406': + $ref: '#/components/responses/406' + '415': + $ref: '#/components/responses/415' + '422': + $ref: '#/components/responses/422' + '429': + $ref: '#/components/responses/429' + callbacks: + notification: + post: + summary: Callback POST used to send a notification + description: Subscription notification + operationId: notificationPOST + requestBody: + description: Subscription notification + required: true + content: + application/json: + schema: + type: object + properties: + subscriptionNotification: + oneOf: + - $ref: '#/components/schemas/OnuAlarmSubscription' + - $ref: '#/components/schemas/DevInfoSubscription' + - $ref: '#/components/schemas/CmConnSubscription' + - $ref: '#/components/schemas/AniAlarmSubscription' + /subscriptions/{subscriptionId}: + get: + summary: Retrieve information on current specific subscription. + description: The GET method is used to retrieve information about this subscription. Upon success, the response contains entity body with the data type describing the subscription. + operationId: subscriptionsByIdGET + tags: + - subscriptions + responses: + '200': + description: 'Upon success, a response body containing data type describing the specific FAI event subscription is returned. The allowed data types for subscriptions are as follows: + + OnuAlarmSubscription. + + DevInfoSubscription. + + CmConnSubscription. + + AniAlarmSubscription.' + content: + application/json: + schema: + type: object + properties: + OnuAlarmSubscription: + $ref: '#/components/schemas/OnuAlarmSubscription' + '400': + $ref: '#/components/responses/400' + '401': + $ref: '#/components/responses/401' + '403': + $ref: '#/components/responses/403' + '404': + $ref: '#/components/responses/404' + '406': + $ref: '#/components/responses/406' + '429': + $ref: '#/components/responses/429' + put: + summary: Modify existing subscription by sending a new data structure. + description: The PUT method is used to update the existing subscription. PUT method in this case has "replace" semantics. Upon successful operation, the target resource is updated with new Data Type received within the message body of the PUT request. + operationId: subscriptionsByIdPUT + tags: + - subscriptions + delete: + summary: Cancel the existing subscription. + description: The DELETE method is used to cancel the existing subscription. Cancellation can be made by deleting the resource that represents existing subscription. + operationId: subscriptionsByIdDELETE + tags: + - subscriptions + responses: + '204': + $ref: '#/components/responses/204' + '401': + $ref: '#/components/responses/401' + '403': + $ref: '#/components/responses/403' + '404': + $ref: '#/components/responses/404' + '429': + $ref: '#/components/responses/429' +components: + schemas: + LinkType: + x-etsi-ref: 6.5.8 + type: object + properties: + href: + description: URI referring to a resource + x-etsi-mec-origin-type: Uri + x-etsi-mec-cardinality: '1' + type: string + format: uri + required: + - href + Href: + description: The URI referring to the subscription. + type: string + format: uri + ProblemDetails: + type: object + properties: + type: + type: string + format: uri + description: A URI reference according to IETF RFC 3986 that identifies the problem type + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: URI + title: + type: string + description: A short, human-readable summary of the problem type + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: String + status: + type: integer + format: uint32 + description: The HTTP status code for this occurrence of the problem + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: Uint32 + detail: + type: string + description: A human-readable explanation specific to this occurrence of the problem + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: String + instance: + type: string + format: uri + description: A URI reference that identifies the specific occurrence of the problem + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: URI + FaInfo: + x-etsi-ref: 6.2.2 + type: object + properties: + timeStamp: + # description': Time stamp. + $ref: '#/components/schemas/TimeStamp' + # x-etsi-mec-origin-type': TimeStamp + # x-etsi-mec-cardinality': 0..1 + customerPremisesInfo: + # description': The physical location of a customer site. + $ref: '#/components/schemas/CpInfo' + # x-etsi-mec-origin-type': CpInfo + # x-etsi-mec-cardinality': '1' + lastMileTech: + type: integer + description: 'An informative field identifying the last mile access technology used. + + The valid values are: + + 1 = ADSL. + + 2 = VDSL. + + 3 = GPON. + + 4 = XGPON. + + 5 = NGPON2. + + 6 = XGSPON. + + 7 = GFAST. + + 8 = P2PEthernet.' + enum: + - SEE_DESCRIPTION + x-etsi-mec-origin-type: Enum + x-etsi-mec-cardinality: '1' + interfaceType: + type: integer + description: 'The physical interface used for the end customer site: + + 1 = 100BASE-TX. + + 2 = 1000BASE-TX. + + 3 = 1000BASE-LX. + + 4 = 1000BASELX10. + + 5 = 1000BASEBX10. + + 6 = 1000BASE-LH. + + 7 = 1000Base-ZX. + + 8 = ADSL-RJ11. + + 9 = VDSL-RJ11. + + 10 = GPON.' + enum: + - SEE_DESCRIPTION + x-etsi-mec-origin-type: Enum + x-etsi-mec-cardinality: '1' + dsbw: + description: The bandwidth (in Mbps) from the network towards the customer site. + x-etsi-mec-origin-type: Integer + x-etsi-mec-cardinality: 0..1 + type: integer + usbw: + description: The bandwidth (in Mbps) from the customer site towards the network. + x-etsi-mec-origin-type: Integer + x-etsi-mec-cardinality: 0..1 + type: integer + latency: + description: Maximum baseline latency (in ms) between customer site and service edge node. + x-etsi-mec-origin-type: Integer + x-etsi-mec-cardinality: 0..1 + type: integer + required: + - customerPremisesInfo + - lastMileTech + - interfaceType + DeviceInfo: + x-etsi-ref: 6.2.3 + type: object + properties: + timeStamp: + # description': Time stamp. + $ref: '#/components/schemas/TimeStamp' + # x-etsi-mec-origin-type': TimeStamp + # x-etsi-mec-cardinality': 0..1 + gwId: + description: 'Information (typically the serial number) to identify an Internet Gateway Device through which the customer premises device is connected. + + + This value shall remain fixed over the lifetime of the device, including across firmware updates.' + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + deviceId: + description: 'Typically, the serial number of the device. + + + This value shall remain fixed over the lifetime of the device, including across firmware updates.' + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + deviceStatus: + type: integer + description: 'Current operational status of the device. Enumeration of: + + 1 = Up. + + 2 = Initializing. + + 3 = Error. + + 4 = Disabled.' + enum: + - SEE_DESCRIPTION + x-etsi-mec-origin-type: Enum + x-etsi-mec-cardinality: '1' + upTime: + description: Time in seconds since the device was last restarted. + x-etsi-mec-origin-type: Integer + x-etsi-mec-cardinality: '1' + type: integer + iPConnectionUpTime: + description: The time in seconds that the IP interface has been connected. + x-etsi-mec-origin-type: Integer + x-etsi-mec-cardinality: '1' + type: integer + totalBytesSent: + description: Total number of IP payload bytes sent since the device was last restarted. + x-etsi-mec-origin-type: Integer + x-etsi-mec-cardinality: '1' + type: integer + totalBytesReceived: + description: Total number of IP payload bytes received since the device was last restarted. + x-etsi-mec-origin-type: Integer + x-etsi-mec-cardinality: '1' + type: integer + totalPacketsSent: + description: Total number of packets sent since the device was last restarted. + x-etsi-mec-origin-type: Integer + x-etsi-mec-cardinality: '1' + type: integer + totalPacketsReceived: + description: Total number of packets received since the device was last restarted. + x-etsi-mec-origin-type: Integer + x-etsi-mec-cardinality: '1' + type: integer + iPPingDiagnostics: + # description': The result of an IP-layer ping test. + $ref: '#/components/schemas/IPPingDiagnostics' + # x-etsi-mec-origin-type': IPPingDiagnostics + # x-etsi-mec-cardinality': 0..1 + traceRouteDiagnostics: + # description': The result of an IP-layer trace-route test. + $ref: '#/components/schemas/TraceRouteDiagnostics' + # x-etsi-mec-origin-type': TraceRouteDiagnostics + # x-etsi-mec-cardinality': 0..1 + downloadDiagnostics: + # description': The result of a HTTP and FTP DownloadDiagnostics Test. + $ref: '#/components/schemas/DownloadDiagnostics' + # x-etsi-mec-origin-type': DownloadDiagnostics + # x-etsi-mec-cardinality': 0..1 + uploadDiagnostics: + # description': The result of a HTTP and FTP UploadDiagnostics Test. + $ref: '#/components/schemas/UploadDiagnostics' + # x-etsi-mec-origin-type': UploadDiagnostics + # x-etsi-mec-cardinality': 0..1 + required: + - gwId + - deviceId + - deviceStatus + - upTime + - iPConnectionUpTime + - totalBytesSent + - totalBytesReceived + - totalPacketsSent + - totalPacketsReceived + CableLineInfo: + x-etsi-ref: 6.2.4 + type: object + properties: + timeStamp: + # description': Time stamp. + $ref: '#/components/schemas/TimeStamp' + # x-etsi-mec-origin-type': TimeStamp + # x-etsi-mec-cardinality': 0..1 + customerPremisesInfo: + # description': The physical location of a customer site. + $ref: '#/components/schemas/CpInfo' + # x-etsi-mec-origin-type': CpInfo + # x-etsi-mec-cardinality': '1' + cmId: + description: 'Information (typically the serial number) to identify a Cable Modem at subscriber locations intended for use in conveying data communications on a cable data system. + + + This value SHALL remain fixed over the lifetime of the device, including across firmware updates.' + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + cmStatus: + $ref: '#/components/schemas/CmStatus' + cmDpvStats: + $ref: '#/components/schemas/CmDpvStats' + serviceFlowStats: + $ref: '#/components/schemas/ServiceFlowStats' + required: + - customerPremisesInfo + - cmId + PonInfo: + x-etsi-ref: 6.2.5 + type: object + properties: + timeStamp: + # description': Time stamp. + $ref: '#/components/schemas/TimeStamp' + # x-etsi-mec-origin-type': TimeStamp + # x-etsi-mec-cardinality': 0..1 + customerPremisesInfo: + # description': The physical location of a customer site. + $ref: '#/components/schemas/CpInfo' + # x-etsi-mec-origin-type': CpInfo + # x-etsi-mec-cardinality': '1' + ponSYS_ID: + description: 'The 20-bit identity of the optical system within a certain domain. + + This is a reference value set by the OSS.' + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + onuId: + description: Information to identify an Optical Network Unit. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + ponTech: + type: integer + description: 'An informative field identifying the optical technology used. + + + The valid values are: + + 1 = GPON. + + 2 = XGPON. + + 3 = NGPON2. + + 4 = XGSPON.' + enum: + - SEE_DESCRIPTION + x-etsi-mec-origin-type: Enum + x-etsi-mec-cardinality: '1' + operationalState: + type: integer + description: 'It reports whether the ONU is currently capable of performing its function. Valid values are: + + 0 = enabled + + 1 = disabled' + enum: + - SEE_DESCRIPTION + x-etsi-mec-origin-type: Enum + x-etsi-mec-cardinality: '1' + dsRate: + type: integer + description: "Downstream line rate, valid values are:\n1 =\t2,48832 Gbit/s: G-PON [i.9]; or\nNG-PON2 option 2 [i.8].\n2 =\t9,95328 Gbit/s: XG-PON [i.10]; or\nXGS-PON [i.11]; or\nNG-PON2 option 1 [i.8]." + enum: + - SEE_DESCRIPTION + x-etsi-mec-origin-type: Enum + x-etsi-mec-cardinality: '1' + usRate: + type: integer + description: "Upstream line rate, valid values are:\n1 =\t1,24416 Gbit/s: G-PON option 1 [i.9].\n2 =\t2,48832 Gbit/s: G-PON option 2 [i.9]; or\nXG-PON [i.10]; or\nNG-PON2 option 2 [i.8].\n3 =\t9,95328 Gbit/s: XGS-PON [i.11]; or\nNG-PON2 option 1 [i.8]." + enum: + - SEE_DESCRIPTION + x-etsi-mec-origin-type: Enum + x-etsi-mec-cardinality: '1' + required: + - customerPremisesInfo + - ponSYS_ID + - onuId + - ponTech + - operationalState + - dsRate + - usRate + OnuAlarmSubscription: + x-etsi-ref: 6.3.2 + type: object + properties: + subscriptionType: + description: Shall be set to "OnuAlarmSubscription". + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + callbackReference: + description: URI exposed by the client on which to receive notifications via HTTP. See note. + x-etsi-mec-origin-type: Uri + x-etsi-mec-cardinality: 0..1 + type: string + format: uri + requestTestNotification: + description: "Shall be set to TRUE by the service consumer to request a test notification via HTTP on the callbackReference URI, as described in ETSI GS MEC 009 [i.1], clause\_6.12a.\nDefault: FALSE. " + x-etsi-mec-origin-type: Boolean + x-etsi-mec-cardinality: 0..1 + type: boolean + websockNotifConfig: + # description': Provides details to negotiate and signal the use of a Websocket connection between FAIS and the service consumer for notifications. See note. + $ref: '#/components/schemas/WebsockNotifConfig' + # x-etsi-mec-origin-type': WebsockNotifConfig + # x-etsi-mec-cardinality': 0..1 + _links: + $ref: '#/components/schemas/_links' + filterCriteriaOnuAlarm: + $ref: '#/components/schemas/FilterCriteriaOnuAlarm' + expiryDeadline: + # description': Time stamp. + $ref: '#/components/schemas/TimeStamp' + # x-etsi-mec-origin-type': TimeStamp + # x-etsi-mec-cardinality': 0..1 + required: + - subscriptionType + - filterCriteriaOnuAlarm + x-etsi-notes: "NOTE:\tAt least one of callbackReference and websockNotifConfig shall be provided by the service consumer. If both are provided, it is up to FAIS to choose an alternative and return only that alternative in the response, as described in ETSI GS MEC 009 [i.1], clause 6.12a." + DevInfoSubscription: + x-etsi-ref: 6.3.3 + type: object + properties: + subscriptionType: + description: Shall be set to "DevInfoSubscription". + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + callbackReference: + description: URI exposed by the client on which to receive notifications via HTTP. See note. + x-etsi-mec-origin-type: Uri + x-etsi-mec-cardinality: 0..1 + type: string + format: uri + requestTestNotification: + description: "Shall be set to TRUE by the service consumer to request a test notification via HTTP on the callbackReference URI, as described in ETSI GS MEC 009 [i.1], clause\_6.12a.\nDefault: FALSE. " + x-etsi-mec-origin-type: Boolean + x-etsi-mec-cardinality: 0..1 + type: boolean + websockNotifConfig: + # description': Provides details to negotiate and signal the use of a Websocket connection between FAIS and the service consumer for notifications. See note. + $ref: '#/components/schemas/WebsockNotifConfig' + # x-etsi-mec-origin-type': WebsockNotifConfig + # x-etsi-mec-cardinality': 0..1 + _links: + $ref: '#/components/schemas/_links' + filterCriteriaDevInfo: + $ref: '#/components/schemas/FilterCriteriaDevInfo' + expiryDeadline: + # description': Time stamp. + $ref: '#/components/schemas/TimeStamp' + # x-etsi-mec-origin-type': TimeStamp + # x-etsi-mec-cardinality': 0..1 + required: + - subscriptionType + - filterCriteriaDevInfo + x-etsi-notes: "NOTE:\tAt least one of callbackReference and websockNotifConfig shall be provided by the service consumer. If both are provided, it is up to FAIS to choose an alternative and return only that alternative in the response, as described in ETSI GS MEC 009 [i.1], clause 6.12a." + CmConnSubscription: + x-etsi-ref: 6.3.4 + type: object + properties: + subscriptionType: + description: Shall be set to "CmConnSubscription". + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + callbackReference: + description: URI exposed by the client on which to receive notifications via HTTP. See note 1. + x-etsi-mec-origin-type: Uri + x-etsi-mec-cardinality: 0..1 + type: string + format: uri + requestTestNotification: + description: "Shall be set to TRUE by the service consumer to request a test notification via HTTP on the callbackReference URI, as described in ETSI GS MEC 009 [i.1], clause\_6.12a.\nDefault: FALSE. " + x-etsi-mec-origin-type: Boolean + x-etsi-mec-cardinality: 0..1 + type: boolean + websockNotifConfig: + # description': Provides details to negotiate and signal the use of a Websocket connection between FAIS and the service consumer for notifications. See note 1. + $ref: '#/components/schemas/WebsockNotifConfig' + # x-etsi-mec-origin-type': WebsockNotifConfig + # x-etsi-mec-cardinality': 0..1 + _links: + $ref: '#/components/schemas/_links' + filterCriteriaCmConn: + $ref: '#/components/schemas/FilterCriteriaCmConn' + expiryDeadline: + # description': Time stamp. + $ref: '#/components/schemas/TimeStamp' + # x-etsi-mec-origin-type': TimeStamp + # x-etsi-mec-cardinality': 0..1 + required: + - subscriptionType + - filterCriteriaCmConn + x-etsi-notes: "NOTE 1:\tAt least one of callbackReference and websockNotifConfig shall be provided by the service consumer. If both are provided, it is up to FAIS to choose an alternative and return only that alternative in the response, as described in ETSI GS MEC 009 [i.1], clause 6.12a.\nNOTE 2:\t'notReady' indicates that the CM has not started the registration process yet.\n\t'notSynchronized' indicates that the CM has not initiated or completed the synchronization of the downstream physical layer.\n\t'phySynchronized' indicates that the CM has completed the synchronization of the downstream physical layer.\n\t'dsTopologyResolutionInProgress' indicates that the CM is attempting to determine its MD-DS-SG.\n\t'usParametersAcquired' indicates that the CM has completed the upstream parameters acquisition or have completed the downstream and upstream service groups resolution.\n\t'rangingInProgress' indicates that the CM has initiated the initial ranging process.\n\t'rangingComplete' indicates that the CM has completed initial ranging and received a Ranging Status of success from the CMTS in the RNG-RSP message.\n\t'eaeInProgress' indicates that the CM has sent an Auth Info message for EAE.\n\t'dhcpv4InProgress' indicates that the CM has sent a DHCPv4 DISCOVER to gain IP connectivity.\n\t'dhcpv6InProgress' indicates that the CM has sent a DHCPv6 Solicit message.\n\t'dhcpv4Complete' indicates that the CM has received a DHCPv4 ACK message from the CMTS.\n\t'dhcpv6Complete' indicates that the CM has received a DHCPv6 Reply message from the CMTS.\n\t'todEstablished' indicates that the CM has successfully acquired time of day.\n\t'securityEstablished' indicates that the CM has successfully completed the BPI initialization process.\n\t'configFileDownloadComplete' indicates that the CM has completed the config file download process.\n\t'registrationInProgress' indicates that the CM has sent a Registration Request.\n\t'registrationComplete' indicates that the CM has successfully completed the Registration process with the CMTS.\n\t'accessDenied' indicates that the CM has received a registration aborted notification from the CMTS.\n\t'operational' indicates that the CM has completed all necessary initialization steps and is operational.\n\t'bpiInit' indicates that the CM has started the BPI initialization process as indicated in the CM config file.\n\t'forwardingDisabled' indicates that the registration process was completed, but the network access option in the received configuration file prohibits forwarding." + SubscriptionLinkList: + x-etsi-ref: 6.3.5 + type: object + properties: + _links: + $ref: '#/components/schemas/_links1' + required: + - _links + AniAlarmSubscription: + x-etsi-ref: 6.3.6 + type: object + properties: + subscriptionType: + description: Shall be set to "AniAlarmSubscription". + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + callbackReference: + description: URI exposed by the client on which to receive notifications via HTTP. See note. + x-etsi-mec-origin-type: Uri + x-etsi-mec-cardinality: 0..1 + type: string + format: uri + requestTestNotification: + description: "Shall be set to TRUE by the service consumer to request a test notification via HTTP on the callbackReference URI, as described in ETSI GS MEC 009 [i.1], clause\_6.12a.\nDefault: FALSE. " + x-etsi-mec-origin-type: Boolean + x-etsi-mec-cardinality: 0..1 + type: boolean + websockNotifConfig: + # description': Provides details to negotiate and signal the use of a Websocket connection between FAIS and the service consumer for notifications. See note. + $ref: '#/components/schemas/WebsockNotifConfig' + # x-etsi-mec-origin-type': WebsockNotifConfig + # x-etsi-mec-cardinality': 0..1 + _links: + $ref: '#/components/schemas/_links' + filterCriteriaAniAlarm: + $ref: '#/components/schemas/FilterCriteriaAniAlarm' + onuId: + description: The unique identifiers for the optical network unit, + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + aniIndex: + description: The index of an access network interface supported by the optical network unit. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + alarms: + description: "In case alarms is not included in the subscription request, the default value -1 = All shall be used and included in the response:\n0 =\tLowReceivedOpticalPower.\n(Received downstream optical power below threshold.)\n1 =\tHighReceivedOpticalPower.\n\t(Received downstream optical power above threshold.)\n2 =\tSignalFalure.\n(Bit error-based signal fail.)\n3 =\tSignalDegrade.\n(Bit error-based signal degrade.)\n4 =\tLowTransmitOpticalPower.\n(Transmit optical power below lower threshold.)\n5 =\tHighTransmitOpticalPower.\n(Transmit optical power above upper threshold.)\n6 =\tLaserBiasCurrent.\n(Laser bias current above threshold determined by vendor.)\n-1 =\tAll." + x-etsi-mec-origin-type: Enum + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + type: integer + expiryDeadline: + # description': Time stamp. + $ref: '#/components/schemas/TimeStamp' + # x-etsi-mec-origin-type': TimeStamp + # x-etsi-mec-cardinality': 0..1 + required: + - subscriptionType + - filterCriteriaAniAlarm + - onuId + - aniIndex + x-etsi-notes: "NOTE:\tAt least one of callbackReference and websockNotifConfig shall be provided by the service consumer. If both are provided, it is up to FAIS to choose an alternative and return only that alternative in the response, as described in ETSI GS MEC 009 [i.1], clause 6.12a." + OnuAlarmNotification: + x-etsi-ref: 6.4.2 + type: object + properties: + notificationType: + description: Shall be set to "OnuAlarmNotification". + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + timeStamp: + # description': Time stamp. + $ref: '#/components/schemas/TimeStamp' + # x-etsi-mec-origin-type': TimeStamp + # x-etsi-mec-cardinality': 0..1 + customerPremisesInfo: + description: The physical location of the related customer sites. + x-etsi-mec-origin-type: CpInfo + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + $ref: '#/components/schemas/CpInfo' + onuId: + description: The unique identifier for an optical network unit. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + alarm: + type: string + description: "Indicates the alarm of the ONU:\n0 \t= \tEquipmentAlarm.\n1 \t= \tPoweringAlarm.\n2 \t= \tBatteryMissing.\n3 \t= \tBatteryFailure.\n4 \t= \tBatteryLow.\n5 \t= \tPhysicalIntrusion.\n6 \t= \tOnuSelfTestFailure.\n7 \t= \tDyingGasp.\n8 \t= \tTemperatureYellow.\n9 \t= \tTemperatureRed.\n10 \t= \tVoltageYellow.\n11 \t= \tVoltageRed.\n12 \t= \tOnuManualPowerOff.\n13 \t= \tInvImage.\n14 \t= \tPseOverloadYellow.\n15 \t= \tPseOverloadRed." + enum: + - SEE_DESCRIPTION + x-etsi-mec-origin-type: Enum + x-etsi-mec-cardinality: '1' + required: + - notificationType + - onuId + - alarm + DevInfoNotification: + x-etsi-ref: 6.4.3 + type: object + properties: + notificationType: + description: Shall be set to "DevInfoNotification". + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + timeStamp: + # description': Time stamp. + $ref: '#/components/schemas/TimeStamp' + # x-etsi-mec-origin-type': TimeStamp + # x-etsi-mec-cardinality': 0..1 + deviceId: + description: The identifier for a device. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + deviceErrStatus: + type: integer + description: 'Indicates the abnormal operational status of the device. Enumeration of: + + 1 = Error. + + 2 = Disabled.' + enum: + - SEE_DESCRIPTION + x-etsi-mec-origin-type: Enum + x-etsi-mec-cardinality: '1' + required: + - notificationType + - deviceId + - deviceErrStatus + CmConnNotification: + x-etsi-ref: 6.4.4 + type: object + properties: + notificationType: + description: Shall be set to "CmconnNotification". + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + timeStamp: + # description': Time stamp. + $ref: '#/components/schemas/TimeStamp' + # x-etsi-mec-origin-type': TimeStamp + # x-etsi-mec-cardinality': 0..1 + customerPremisesInfo: + # description': The physical location of a customer site. + $ref: '#/components/schemas/CpInfo' + # x-etsi-mec-origin-type': CpInfo + # x-etsi-mec-cardinality': 0..1 + cmIf: + type: array + items: + $ref: '#/components/schemas/CmIf1' + required: + - notificationType + - cmIf + ExpiryNotification: + x-etsi-ref: 6.4.5 + type: object + properties: + timeStamp: + # description': Time stamp. + $ref: '#/components/schemas/TimeStamp' + # x-etsi-mec-origin-type': TimeStamp + # x-etsi-mec-cardinality': 0..1 + _links: + $ref: '#/components/schemas/_links2' + expiryDeadline: + # description': Time stamp. + $ref: '#/components/schemas/TimeStamp' + # x-etsi-mec-origin-type': TimeStamp + # x-etsi-mec-cardinality': '1' + required: + - _links + - expiryDeadline + AniAlarmNotification: + x-etsi-ref: 6.4.6 + type: object + properties: + notificationType: + description: Shall be set to "AniAlarmNotification". + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + timeStamp: + # description': Time stamp. + $ref: '#/components/schemas/TimeStamp' + # x-etsi-mec-origin-type': TimeStamp + # x-etsi-mec-cardinality': 0..1 + customerPremisesInfo: + description: The physical location of the related customer sites. + x-etsi-mec-origin-type: CpInfo + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + $ref: '#/components/schemas/CpInfo' + onuId: + description: The unique identifiers for the optical network unit. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + aniId: + $ref: '#/components/schemas/AniId1' + aniIndex: + description: The index of an access network interface supported by the optical network unit. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + alarm: + type: integer + description: 'Indicates the alarm of the ANI: + + 0 = LowReceivedOpticalPower. + + 1 = HighReceivedOpticalPower. + + 2 = SignalFailure. + + 3 = SignalDegrade. + + 4 = LowTransmitOpticalPower. + + 5 = HighTransmitOpticalPower. + + 6 = LaserBiasCurrent.' + enum: + - SEE_DESCRIPTION + x-etsi-mec-origin-type: Enum + x-etsi-mec-cardinality: '1' + required: + - notificationType + - onuId + - aniIndex + - alarm + TestNotification: + x-etsi-ref: 6.4.7 + type: object + properties: + notificationType: + description: Shall be set to "TestNotification". + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + _links: + $ref: '#/components/schemas/_links3' + required: + - notificationType + - _links + TimeStamp: + x-etsi-ref: 6.5.2 + type: object + properties: + seconds: + description: The seconds part of the time. Time is defined as Unixtime since January 1, 1970, 00:00:00 UTC. + x-etsi-mec-origin-type: Uint32 + x-etsi-mec-cardinality: '1' + type: integer + format: uint32 + nanoSeconds: + description: The nanoseconds part of the time. Time is defined as Unix-time since January 1, 1970, 00:00:00 UTC. + x-etsi-mec-origin-type: Uint32 + x-etsi-mec-cardinality: '1' + type: integer + format: uint32 + required: + - seconds + - nanoSeconds + CpInfo: + x-etsi-ref: 6.5.3 + type: object + properties: + latitude: + description: 'Latitude (DATUM=WGS84) + + -90 to 90 in decimal degree format DDD.ddd' + x-etsi-mec-origin-type: Float + x-etsi-mec-cardinality: 0..1 + type: number + format: float + longitude: + description: 'Longitude (DATUM=WGS84) + + -180 to 180 in decimal degree format DDD.ddd' + x-etsi-mec-origin-type: Float + x-etsi-mec-cardinality: 0..1 + type: number + format: float + postalCode: + description: Postal code for the location + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + IPPingDiagnostics: + x-etsi-ref: 6.5.4 + type: object + properties: + diagnosticsState: + type: integer + description: 'The state of the IP ping test. Enumeration of: + + 1 = None. + + 2 = Requested. + + 3 = Complete. + + 4 = Error_CannotResolveHostName. + + 5 = Error_Internal. + + 6 = Error_Other.' + enum: + - SEE_DESCRIPTION + x-etsi-mec-origin-type: Enum + x-etsi-mec-cardinality: '1' + host: + description: Host name or address of the host to ping. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + numberOfRepetitions: + description: Number of repetitions of the ping test to perform before reporting the results. + x-etsi-mec-origin-type: Integer + x-etsi-mec-cardinality: 0..1 + type: integer + timeout: + description: Timeout in milliseconds for the ping test. + x-etsi-mec-origin-type: Integer + x-etsi-mec-cardinality: 0..1 + type: integer + dataBlockSize: + description: Size of the data block in bytes to be sent for each ping. + x-etsi-mec-origin-type: Integer + x-etsi-mec-cardinality: 0..1 + type: integer + successCount: + description: 'Result parameter indicating the number of successful + + pings (those in which a successful response was received prior to the timeout) in the most recent ping test.' + x-etsi-mec-origin-type: Integer + x-etsi-mec-cardinality: 0..1 + type: integer + failureCount: + description: Result parameter indicating the number of failed pings in the most recent ping test. + x-etsi-mec-origin-type: Integer + x-etsi-mec-cardinality: 0..1 + type: integer + averageResponseTime: + description: 'Result parameter indicating the average response time in milliseconds over all repetitions with successful responses of the most recent ping test. + + + If there were no successful responses, this value shall be zero.' + x-etsi-mec-origin-type: Integer + x-etsi-mec-cardinality: 0..1 + type: integer + minimumResponseTime: + description: 'Result parameter indicating the minimum response time in milliseconds over all repetitions with successful responses of the most recent ping test. + + + If there were no successful responses, this value shall be zero.' + x-etsi-mec-origin-type: Integer + x-etsi-mec-cardinality: 0..1 + type: integer + maximumResponseTime: + description: 'Result parameter indicating the maximum response time in milliseconds over all repetitions with successful responses of the most recent ping test. + + + If there were no successful responses, this value shall be zero.' + x-etsi-mec-origin-type: Integer + x-etsi-mec-cardinality: 0..1 + type: integer + required: + - diagnosticsState + TraceRouteDiagnostics: + x-etsi-ref: 6.5.5 + type: object + properties: + diagnosticsState: + type: integer + description: 'The state of the IP trace-route test. Enumeration of: + + 1 = None. + + 2 = Requested. + + 3 = Complete. + + 4 = Error_CannotResolveHostName. + + 5 = Error_MaxHopCountExceeded. + + 6 = Error_Internal. + + 7 = Error_Other.' + enum: + - SEE_DESCRIPTION + x-etsi-mec-origin-type: Enum + x-etsi-mec-cardinality: '1' + host: + description: Host name or address of the host to find a route to. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + timeout: + description: Timeout in milliseconds for the trace route test. + x-etsi-mec-origin-type: Integer + x-etsi-mec-cardinality: 0..1 + type: integer + dataBlockSize: + description: Size of the data block in bytes to be sent for each trace route. + x-etsi-mec-origin-type: Integer + x-etsi-mec-cardinality: 0..1 + type: integer + maxHopCount: + description: The maximum number of hop used in outgoing probe packets. The default is 30 hops. + x-etsi-mec-origin-type: Integer + x-etsi-mec-cardinality: 0..1 + type: integer + responseTime: + description: 'Result parameter indicating the response time in milliseconds the most recent trace route test. + + + If a route could not be determined, this value shall be zero.' + x-etsi-mec-origin-type: Integer + x-etsi-mec-cardinality: 0..1 + type: integer + numberOfRouteHops: + description: 'Result parameter indicating the number of hops within the discovered route. + + + If a route could not be determined, this value shall be zero.' + x-etsi-mec-origin-type: Integer + x-etsi-mec-cardinality: 0..1 + type: integer + required: + - diagnosticsState + DownloadDiagnostics: + x-etsi-ref: 6.5.6 + type: object + properties: + diagnosticsState: + type: string + description: "The state of the HTTP and FTP download test. Enumeration of:\n1 \t= \tNone.\n2 \t= \tRequested.\n3 \t= \tCompleted.\n4 \t= \tError_InitConnectionFailed.\n5 \t= \tError_NoResponse.\n6 \t= \tError_TransferFailed.\n7 \t= \tError_PasswordRequestFailed.\n8 \t= \tError_LoginFailed.\n9 \t= \tError_NoTransferMode.\n10 \t= \tError_NoPASV.\n11 \t= \tError_IncorrectSize.\n12 \t= \tError_Timeout." + enum: + - SEE_DESCRIPTION + x-etsi-mec-origin-type: Enum + x-etsi-mec-cardinality: '1' + downloadURI: + description: The URI for the device to perform the download on. + x-etsi-mec-origin-type: Uri + x-etsi-mec-cardinality: 0..1 + type: string + format: uri + rOMTime: + # description': Request time in UTC, which shall be specified to microsecond precision. + $ref: '#/components/schemas/TimeStamp' + # x-etsi-mec-origin-type': TimeStamp + # x-etsi-mec-cardinality': 0..1 + bOMTime: + # description': Begin of transmission time in UTC, which shall be specified to microsecond precision. + $ref: '#/components/schemas/TimeStamp' + # x-etsi-mec-origin-type': TimeStamp + # x-etsi-mec-cardinality': 0..1 + eOMTime: + # description': End of transmission in UTC, which shall be specified to microsecond precision. + $ref: '#/components/schemas/TimeStamp' + # x-etsi-mec-origin-type': TimeStamp + # x-etsi-mec-cardinality': 0..1 + testBytesReceived: + description: The test traffic received in bytes during the FTP/HTTP transaction including FTP/HTTP headers, between bOMTime and eOMTime. + x-etsi-mec-origin-type: Integer + x-etsi-mec-cardinality: 0..1 + type: integer + totalBytesReceived: + description: The total number of bytes received on the Interface between bOMTime and eOMTime. + x-etsi-mec-origin-type: Integer + x-etsi-mec-cardinality: 0..1 + type: integer + tCPOpenRequestTime: + # description': Request time in UTC, which shall be specified to microsecond precision. + $ref: '#/components/schemas/TimeStamp' + # x-etsi-mec-origin-type': TimeStamp + # x-etsi-mec-cardinality': 0..1 + tCPOpenReponseTime: + # description': Response time in UTC, which shall be specified to microsecond precision. + $ref: '#/components/schemas/TimeStamp' + # x-etsi-mec-origin-type': TimeStamp + # x-etsi-mec-cardinality': 0..1 + required: + - diagnosticsState + UploadDiagnostics: + x-etsi-ref: 6.5.7 + type: object + properties: + diagnosticsState: + type: string + description: "The state of the HTTP and FTP download test. Enumeration of:\n1 \t= \tNone.\n2 \t= \tRequested.\n3 \t= \tCompleted.\n4 \t= \tError_InitConnectionFailed.\n5 \t= \tError_NoResponse.\n6 \t= \tError_PasswordRequestFailed.\n7 \t= \tError_LoginFailed.\n8 \t= \tError_NoTransferMode.\n9 \t= \tError_NoPASV.\n10 \t= \tError_NoCWD.\n11 \t= \tError_NoSTOR.\n12 \t= \tError_NoTransferComplete." + enum: + - SEE_DESCRIPTION + x-etsi-mec-origin-type: Enum + x-etsi-mec-cardinality: '1' + uploadURI: + description: The URI for the device to perform the upload to. + x-etsi-mec-origin-type: Uri + x-etsi-mec-cardinality: 0..1 + type: string + format: uri + testFileLength: + description: The size of the file (in bytes) to be uploaded to the server. + x-etsi-mec-origin-type: Integer + x-etsi-mec-cardinality: 0..1 + type: integer + rOMTime: + # description': Request time in UTC, which shall be specified to microsecond precision. + $ref: '#/components/schemas/TimeStamp' + # x-etsi-mec-origin-type': TimeStamp + # x-etsi-mec-cardinality': 0..1 + bOMTime: + # description': Begin of transmission time in UTC, which shall be specified to microsecond precision. + $ref: '#/components/schemas/TimeStamp' + # x-etsi-mec-origin-type': TimeStamp + # x-etsi-mec-cardinality': 0..1 + eOMTime: + # description': End of transmission in UTC, which shall be specified to microsecond precision. + $ref: '#/components/schemas/TimeStamp' + # x-etsi-mec-origin-type': TimeStamp + # x-etsi-mec-cardinality': 0..1 + testBytesSent: + description: The test traffic sent in bytes during the FTP/HTTP transaction including FTP/HTTP headers, between bOMTime and eOMTime. + x-etsi-mec-origin-type: Integer + x-etsi-mec-cardinality: 0..1 + type: integer + tCPOpenRequestTime: + # description': Request time in UTC, which shall be specified to microsecond precision. + $ref: '#/components/schemas/TimeStamp' + # x-etsi-mec-origin-type': TimeStamp + # x-etsi-mec-cardinality': 0..1 + tCPOpenReponseTime: + # description': Response time in UTC, which shall be specified to microsecond precision. + $ref: '#/components/schemas/TimeStamp' + # x-etsi-mec-origin-type': TimeStamp + # x-etsi-mec-cardinality': 0..1 + required: + - diagnosticsState + WebsockNotifConfig: + x-etsi-ref: 6.5.9 + type: object + properties: + websocketUri: + description: Set by FAIS to indicate to the service consumer the Websocket URI to be used for delivering notifications. + x-etsi-mec-origin-type: Uri + x-etsi-mec-cardinality: 0..1 + type: string + format: uri + requestWebsocketUri: + description: Set to true by the service consumer to indicate that Websocket delivery is requested. + x-etsi-mec-origin-type: Boolean + x-etsi-mec-cardinality: 0..1 + type: boolean + CmStatus: + description: It provides CM connectivity status information of the CM. + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: 0..1 + type: object + properties: + ifIndex: + description: It denotes the MAC Domain interface index of the CM. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + cmRegState: + type: string + description: "It defines the CM connectivity state. Enumeration of:\n1 \t= \tother.\n2 \t= \tnotReady.\n3 \t= \tnotSynchronized.\n4 \t= \tphySynchronized.\n5 \t= \tusParametersAcquired.\n6 \t= \trangingComplete.\n7 \t= \tdhcpV4Complete.\n8 \t= \ttodEstablished.\n9 \t= \tsecurityEstablished.\n10 \t= \tconfigFileDownloadComplete.\n11 \t= \tregistrationComplete.\n12 \t= \toperational.\n13 \t= \taccessDenied.\n14 \t= \teaeInProgress.\n15 \t= \tdhcpv4InProgress.\n16 \t= \tdhcpv6InProgress.\n17 \t= \tdhcpV6Complete.\n18 \t= \tregistrationInProgress.\n19 \t= \tbpiInit.\n20 \t= \tforwardingDisabled.\n21 \t= \tdsTopologyResolutionInProgress.\n22 \t= \trangingInProgress.\n23 \t= \trfMuteAll." + enum: + - SEE_DESCRIPTION + x-etsi-mec-origin-type: Enum + x-etsi-mec-cardinality: '1' + resets: + description: It denotes the number of times the CM reset or initialized this interface. + x-etsi-mec-origin-type: Integer + x-etsi-mec-cardinality: '1' + type: integer + lostSyncs: + description: It denotes the number of times the CM lost synchronization with the downstream channel. + x-etsi-mec-origin-type: Integer + x-etsi-mec-cardinality: '1' + type: integer + invalidRegRsps: + description: It denotes the number of times the CM received invalid registration response messages. + x-etsi-mec-origin-type: Integer + x-etsi-mec-cardinality: '1' + type: integer + energyMgt1x1OperStatus: + description: It indicates whether the CM is currently operating in Energy Management 1x1 Mode. + x-etsi-mec-origin-type: Boolean + x-etsi-mec-cardinality: '1' + type: boolean + emDlsOperStatus: + description: It indicates whether the CM is currently operating in Energy Management DLS Mode. + x-etsi-mec-origin-type: Boolean + x-etsi-mec-cardinality: '1' + type: boolean + required: + - ifIndex + - cmRegState + - resets + - lostSyncs + - invalidRegRsps + - energyMgt1x1OperStatus + - emDlsOperStatus + CmDpvStats: + description: It represents the DOCSIS Path Verify Statistics collected in the cable modem device. + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: 0..1 + type: object + properties: + ifIndex: + description: It represents the interface Index of the Downstream Interface where the measurements are taken. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + lastMeasLatency: + description: The last latency measurement. + x-etsi-mec-origin-type: Integer + x-etsi-mec-cardinality: '1' + type: integer + lastMeasTime: + # description': The last measurement time of the last latency measurement. + $ref: '#/components/schemas/TimeStamp' + # x-etsi-mec-origin-type': TimeStamp + # x-etsi-mec-cardinality': '1' + minLatency: + description: The minimum latency measurement. + x-etsi-mec-origin-type: Integer + x-etsi-mec-cardinality: '1' + type: integer + maxLatency: + description: The maximum latency measurement. + x-etsi-mec-origin-type: Integer + x-etsi-mec-cardinality: '1' + type: integer + avgLatency: + description: The average latency measurement. + x-etsi-mec-origin-type: Integer + x-etsi-mec-cardinality: '1' + type: integer + numMeas: + description: The number of latency measurements made. + x-etsi-mec-origin-type: Integer + x-etsi-mec-cardinality: '1' + type: integer + required: + - ifIndex + - lastMeasLatency + - lastMeasTime + - minLatency + - maxLatency + - avgLatency + - numMeas + ServiceFlowInfo: + description: It represents the information of a Service Flow. + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: 1..N + type: object + minItems: 1 + properties: + serviceFlowId: + description: It represents an identifier assigned to a Service Flow by CMTS within a MAC Domain. + x-etsi-mec-origin-type: Integer + x-etsi-mec-cardinality: '1' + type: integer + pkts: + description: For outgoing Service Flows, this attribute counts the number of Packet Data PDUs forwarded to this Service Flow. For incoming upstream CMTS service flows, this attribute counts the number of Packet Data PDUs actually received on the Service Flow identified by the SID for which the packet was scheduled. + x-etsi-mec-origin-type: Integer + x-etsi-mec-cardinality: '1' + type: integer + timeCreated: + # description': It indicates the time when the service flow was created. + $ref: '#/components/schemas/TimeStamp' + # x-etsi-mec-origin-type': TimeStamp + # x-etsi-mec-cardinality': '1' + timeActive: + description: It indicates the number of seconds that the service flow has been active. + x-etsi-mec-origin-type: Integer + x-etsi-mec-cardinality: '1' + type: integer + policedDropPkts: + description: "For upstream service flows, this attribute counts the number of Packet Data PDUs classified to this service flow dropped due to:\n1)\texceeding the selected Buffer Size for the service flow; or\n2)\tUGS packets dropped due to exceeding the Unsolicited Grant Size with a Request/Transmission policy that requires such packets to be dropped." + x-etsi-mec-origin-type: Integer + x-etsi-mec-cardinality: '1' + type: integer + policedDelayPkts: + description: It counts only outgoing packets delayed in order to maintain the Maximum Sustained Traffic Rate. + x-etsi-mec-origin-type: Integer + x-etsi-mec-cardinality: '1' + type: integer + aqmDroppedPkts: + description: For upstream service flows on which AQM is enabled, this attribute counts the number of Packet Data PDUs classified to this service flow dropped due to Active Queue Management drop decisions. + x-etsi-mec-origin-type: Integer + x-etsi-mec-cardinality: '1' + type: integer + required: + - serviceFlowId + - pkts + - timeCreated + - timeActive + - policedDropPkts + - policedDelayPkts + - aqmDroppedPkts + ServiceFlowStats: + description: It describes statistics associated with the Service Flows in a managed device. + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: 0..1 + type: object + properties: + ifIndex: + description: It represents the interface index of the MAC Domain of the Service Flow. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + serviceFlowInfo: + type: array + items: + $ref: '#/components/schemas/ServiceFlowInfo' + required: + - ifIndex + - serviceFlowInfo + _links: + description: Hyperlink related to the resource. This shall be only included in the HTTP responses and in HTTP PUT requests. + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: 0..1 + type: object + properties: + self: + # description': Self-referring URI. The URI shall be unique within the FAI API as it acts as an ID for the subscription. + $ref: '#/components/schemas/LinkType' + # x-etsi-mec-origin-type': LinkType + # x-etsi-mec-cardinality': '1' + required: + - self + FilterCriteriaOnuAlarm: + description: List of filtering criteria for the subscription. Any filtering criteria from below, which is included in the request, shall also be included in the response. + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: '1' + type: object + properties: + customerPremisesInfo: + description: 0 to N physical locations of the customer sites. + x-etsi-mec-origin-type: CpInfo + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + $ref: '#/components/schemas/CpInfo' + onuId: + description: '1 to N unique identifiers for the optical network units. + + Typical it is the unique serial number for each ONU, which contains the vendor ID and version number. The first four bytes are an ASCII-encoded four-letter vendor ID. The second four bytes are a binary encoded serial number, under the control of the ONU vendor.' + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 1..N + type: array + minItems: 1 + items: + type: string + alarms: + description: "In case alarms is not included in the subscription request, the default value -1 = All shall be used and included in the response:\n0 =\tEquipmentAlarm.\n\t(Functional failure on an internal interface.)\n1 =\tPoweringAlarm.\n\t(Loss of external power to battery backup unit. This alarm is typically derived through an external interface to a battery backup unit, and indicates that AC is no longer available to maintain battery charge.)\n2 =\tBatteryMissing.\n\t(Battery is provisioned but missing.)\n3 =\tBatteryFailure.\n\t(Battery is provisioned and present but cannot recharge.)\n4 =\tBatteryLow.\n\t(Battery is provisioned and present but its voltage is too low.)\n5 =\tPhysicalIntrusion.\n\t(Applies if the ONU supports detection such as door or box open.)\n6 =\tOnuSelfTestFailure.\n\t(ONU has failed autonomous self-test.)\n7 =\tDyingGasp.\n\t(ONU is powering off imminently due to loss of power to the ONU itself.)\n8 =\tTemperatureYellow.\n\t(No service shutdown at present, but the circuit pack is operating beyond its recommended range.)\n9 =\tTemperatureRed.\n\t(Some services have been shut down to avoid equipment damage.)\n10 =\tVoltageYellow.\n\t(No service shutdown at present, but the line power voltage is below its recommended minimum.)\n11 =\tVoltageRed.\n\t(Some services have been shut down to avoid power collapse.)\n12 =\tOnuManualPowerOff.\n\t(The ONU is shutting down because the subscriber has turned off its power switch.)\n13 =\tInvImage.\n\t(Software image is invalid.)\n14 =\tPseOverloadYellow.\n\t(Indicates that the ONU is nearing its maximum ability to supply the known PoE demand of the attached PDs. The thresholds for declaring and clearing this alarm are vendor-specific.)\n15 =\tPseOverloadRed.\n\t(Indicates that the ONU is unable to supply all of the PoE demand of the attached PDs and has removed or reduced power to at least one PD.)\n-1 =\tAll." + x-etsi-mec-origin-type: Enum + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + type: integer + required: + - onuId + FilterCriteriaDevInfo: + description: List of filtering criteria for the subscription. Any filtering criteria from below, which is included in the request, shall also be included in the response. + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: '1' + type: object + properties: + gwId: + description: The identifier of an Internet Gateway Device through which the customer premises device is connected. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + type: string + deviceId: + description: The device identifier. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + type: string + deviceErrStatus: + description: 'The abnormal operational status of the device. Enumeration of: + + 1 = Error. + + 2 = Disabled.' + x-etsi-mec-origin-type: Enum + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + type: integer + CmIf: + description: '' + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: 0..N + type: object + minItems: 0 + properties: + cmId: + description: The identifier of a Cable Modem at subscriber locations intended for use in conveying data communications on a cable data system. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + ifIndex: + description: The MAC Domain interface index of the CM. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 1..N + type: array + minItems: 1 + items: + type: string + cmRegState: + description: "It indicates the CM connectivity state. See note 2 for detail. Enumeration of:\n1 \t= \tnotReady.\n2 \t= \tnotSynchronized.\n3 \t= \tphySynchronized.\n4 \t= \tdsTopologyResolutionInProgress.\n5 \t= \tusParametersAcquired.\n6 \t= \trangingInProgress.\n7 \t= \trangingComplete.\n8 \t= \teaeInProgress.\n9 \t= \tdhcpv4InProgress.\n10 \t= \tdhcpv6InProgress.\n11 \t= \tdhcpV4Complete.\n12 \t= \tdhcpV6Complete.\n13 \t= \ttodEstablished.\n14 \t= \tsecurityEstablished.\n15 \t= \tconfigFileDownloadComplete.\n16 \t= \tregistrationInProgress.\n17 \t= \tregistrationComplete.\n18 \t= \taccessDenied.\n19 \t=\toperational.\n20 \t= \tbpiInit.\n21 \t= \tforwardingDisabled." + x-etsi-mec-origin-type: Enum + x-etsi-mec-cardinality: 1..N + type: array + minItems: 1 + items: + type: string + required: + - cmId + - ifIndex + - cmRegState + FilterCriteriaCmConn: + description: List of filtering criteria for the subscription. Any filtering criteria from below, which is included in the request, shall also be included in the response. + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: '1' + type: object + properties: + customerPremisesInfo: + # description': The physical location of a customer site. + $ref: '#/components/schemas/CpInfo' + # x-etsi-mec-origin-type': CpInfo + # x-etsi-mec-cardinality': 0..1 + cmIf: + type: array + items: + $ref: '#/components/schemas/CmIf' + Subscriptions: + description: The service consumer's subscriptions. + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: 0..N + type: object + minItems: 0 + properties: + href: + description: The URI referring to the subscription. + x-etsi-mec-origin-type: Uri + x-etsi-mec-cardinality: '1' + type: string + format: uri + subscriptionType: + description: "Type of the subscription. The string shall be set according to the \"subscriptionType\" attribute of the associated subscription data type defined in clauses\_6.3.2, 6.3.3, 6.3.4 and 6.3.6:\n\"OnuAlarmSubscription\"\n\"DevInfoSubscription\"\n\"CmConnSubscription\"\n\"AniAlarmSubscription\"" + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + required: + - href + - subscriptionType + _links1: + description: Hyperlinks related to the resource. + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: '1' + type: object + properties: + self: + # description': URI of this resource. + $ref: '#/components/schemas/LinkType' + # x-etsi-mec-origin-type': LinkType + # x-etsi-mec-cardinality': '1' + subscriptions: + type: array + items: + $ref: '#/components/schemas/Subscriptions' + required: + - self + AniId: + description: '' + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: 1..N + type: object + minItems: 1 + FilterCriteriaAniAlarm: + description: List of filtering criteria for the subscription. Any filtering criteria from below, which is included in the request, shall also be included in the response. + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: '1' + type: object + properties: + customerPremisesInfo: + description: 0 to N physical locations of the customer sites. + x-etsi-mec-origin-type: CpInfo + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + $ref: '#/components/schemas/CpInfo' + onuId: + description: '1 to N unique identifiers for the optical network units. + + Typical it is the unique serial number for each ONU, which contains the vendor ID and version number. The first four bytes are an ASCII-encoded four-letter vendor ID. The second four bytes are a binary encoded serial number, under the control of the ONU vendor.' + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 1..N + type: array + minItems: 1 + items: + type: string + aniId: + type: array + items: + $ref: '#/components/schemas/AniId' + required: + - onuId + - aniId + CmIf1: + description: '' + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: 1..N + type: object + minItems: 1 + properties: + cmId: + description: The Cable Modem identifier. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + ifIndex: + description: The MAC Domain interface index of the CM. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 1..N + type: array + minItems: 1 + items: + type: string + cmRegState: + description: "It indicates the CM connectivity state. Enumeration of:\n1 \t= \tnotReady.\n2 \t= \tnotSynchronized.\n3 \t= \tphySynchronized.\n4 \t= \tdsTopologyResolutionInProgress.\n5 \t= \tusParametersAcquired.\n6 \t= \trangingInProgress.\n7 \t= \trangingComplete.\n8 \t= \teaeInProgress.\n9 \t= \tdhcpv4InProgress.\n10 \t= \tdhcpv6InProgress.\n11 \t= \tdhcpV4Complete.\n12 \t= \tdhcpV6Complete.\n13 \t= \ttodEstablished.\n14 \t= \tsecurityEstablished.\n15 \t= \tconfigFileDownloadComplete.\n16 \t= \tregistrationInProgress.\n17 \t= \tregistrationComplete.\n18 \t= \taccessDenied.\n19 \t= \toperational.\n20 \t= \tbpiInit.\n21 \t= \tforwardingDisabled." + x-etsi-mec-origin-type: Enum + x-etsi-mec-cardinality: 1..N + type: array + minItems: 1 + items: + type: string + required: + - cmId + - ifIndex + - cmRegState + _links2: + description: List of hyperlinks related to the resource. + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: '1' + type: object + properties: + self: + description: Self-referring URI. This shall be included in the response from the FAIS. The URI shall be unique within the FAI API as it acts as an ID for the subscription. + x-etsi-mec-origin-type: Uri + x-etsi-mec-cardinality: '1' + type: string + format: uri + required: + - self + AniId1: + description: '' + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: 0..1 + type: object + _links3: + description: 'Hyperlink related to the resource. ' + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: '1' + type: object + properties: + subscription: + # description': URI identifying the subscription for the test notification. + $ref: '#/components/schemas/LinkType' + # x-etsi-mec-origin-type': LinkType + # x-etsi-mec-cardinality': '1' + required: + - subscription + responses: + '200': + description: OK + '204': + description: No Content + '400': + description: 'Bad Request: used to indicate that incorrect parameters were passed to the request.' + content: + application/problem+json: + schema: + $ref: '#/components/schemas/ProblemDetails' + '401': + description: 'Unauthorized: used when the client did not submit credentials.' + content: + application/problem+json: + schema: + $ref: '#/components/schemas/ProblemDetails' + '403': + description: 'Forbidden: operation is not allowed given the current status of the resource.' + content: + application/problem+json: + schema: + $ref: '#/components/schemas/ProblemDetails' + '404': + description: 'Not Found: used when a client provided a URI that cannot be mapped to a valid resource URI.' + content: + application/problem+json: + schema: + $ref: '#/components/schemas/ProblemDetails' + '406': + description: 'Not Acceptable: used to indicate that the server cannot provide the any of the content formats supported by the client.' + content: + application/problem+json: + schema: + $ref: '#/components/schemas/ProblemDetails' + '412': + description: 'Precondition failed: used when a condition has failed during conditional requests, e.g. when using ETags to avoid write conflicts when using PUT' + content: + application/problem+json: + schema: + $ref: '#/components/schemas/ProblemDetails' + '415': + description: 'Unsupported Media Type: used to indicate that the server or the client does not support the content type of the entity body.' + content: + application/problem+json: + schema: + $ref: '#/components/schemas/ProblemDetails' + '422': + description: 'Unprocessable Entity: used to indicate that the server understands the content type of the request entity and that the syntax of the request entity is correct but that the server is unable to process the contained instructions. This error condition can occur if an JSON request body is syntactically correct but semantically incorrect, for example if the target area for the request is considered too large. This error condition can also occur if the capabilities required by the request are not supported.' + content: + application/problem+json: + schema: + $ref: '#/components/schemas/ProblemDetails' + '429': + description: 'Too Many Requests: used when a rate limiter has triggered.' + content: + application/problem+json: + schema: + $ref: '#/components/schemas/ProblemDetails' + parameters: + Query.Customerpremisesinfo: + description: Comma separated list of customer premises information defined in clause 6.2.2. + name: customerpremisesinfo + cardinality: 0..N + in: query + required: false + x-exportParamName: Query.Customerpremisesinfo + schema: + $ref: '#/components/schemas/CpInfo' + Query.Lastmiletech: + description: "Comma separated list of last mile technologies defined in clause\_6.2.2." + name: lastmiletech + cardinality: 0..N + in: query + required: false + x-exportParamName: Query.Lastmiletech + schema: + type: array + items: + type: integer + Query.Interfacetype: + description: Comma separated list of interface types defined in clause 6.2.2. + name: interfacetype + cardinality: 0..N + in: query + required: false + x-exportParamName: Query.Interfacetype + schema: + type: array + items: + type: integer + Query.Dsbw: + description: Comma separated list of the bandwidth (in Mbps) from the network towards the customer site defined in clause 6.2.2. + name: dsbw + cardinality: 0..N + in: query + required: false + x-exportParamName: Query.Dsbw + schema: + type: array + items: + type: integer + Query.Usbw: + description: Comma separated list of the bandwidth (in Mbps) from the customer site towards the network defined in clause 6.2.2. + name: usbw + cardinality: 0..N + in: query + required: false + x-exportParamName: Query.Usbw + schema: + type: array + items: + type: integer + Query.Latency: + description: "Comma separated list of the maximum baseline latency (in ms) between customer site and service edge node defined in clause\_6.2.2." + name: latency + cardinality: 0..N + in: query + required: false + x-exportParamName: Query.Latency + schema: + type: array + items: + type: integer + Query.Gwid: + description: Comma separated list of gateway identifier defined in clause 6.2.3. + name: gwid + cardinality: 0..N + in: query + required: false + x-exportParamName: Query.Gwid + schema: + type: array + items: + type: string + Query.Deviceid: + description: Comma separated list of device identifier defined in clause 6.2.3. + name: deviceid + cardinality: 0..N + in: query + required: false + x-exportParamName: Query.Deviceid + schema: + type: array + items: + type: string + Query.Devicestatus: + description: Comma separated list of device status defined in clause 6.2.3. + name: devicestatus + cardinality: 0..N + in: query + required: false + x-exportParamName: Query.Devicestatus + schema: + type: array + items: + type: integer + Query.Customerpremisesinfo1: + description: Comma separated list of customer premises information defined in clause 6.2.4. + name: customerpremisesinfo + cardinality: 0..N + in: query + required: false + x-exportParamName: Query.Customerpremisesinfo1 + schema: + $ref: '#/components/schemas/CpInfo' + Query.Cmid: + description: Comma separated list of Cable Modem identifiers defined in clause 6.2.4. + name: cmid + cardinality: 0..N + in: query + required: false + x-exportParamName: Query.Cmid + schema: + type: array + items: + type: string + Query.Customerpremisesinfo2: + description: Comma separated list of customer premises information defined in clause 6.2.5. + name: customerpremisesinfo + cardinality: 0..N + in: query + required: false + x-exportParamName: Query.Customerpremisesinfo2 + schema: + $ref: '#/components/schemas/CpInfo' + Query.Ponys_id: + description: Comma separated list of optical system identifiers defined in clause 6.2.5. + name: ponys_id + cardinality: 0..N + in: query + required: false + x-exportParamName: Query.Ponys_id + schema: + type: array + items: + type: string + Query.Onuid: + description: Comma separated list of optical network unit identifiers defined in clause 6.2.5. + name: onuid + cardinality: 0..N + in: query + required: false + x-exportParamName: Query.Onuid + schema: + type: array + items: + type: string + Query.Subscription_type: + description: "Query parameter to filter on a specific subscription type. Permitted values:\nonu_alarm\tOptical Network Unit alarm\ndevice_abnormal_alert\tDevice abnormal alert\ncm_connectivity_state\tCable Modem connectivity state \nani_alarm\tAccess Node Interface alarm." + name: subscription_type + cardinality: 0..1 + in: query + required: false + x-exportParamName: Query.Subscription_type + schema: + type: string + diff --git a/Auto_Generated_OAS_Output_Files/gs_mec030v030101p.yaml b/Auto_Generated_OAS_Output_Files/gs_mec030v030101p.yaml new file mode 100644 index 0000000..763ea0d --- /dev/null +++ b/Auto_Generated_OAS_Output_Files/gs_mec030v030101p.yaml @@ -0,0 +1,1937 @@ +openapi: 3.1.0 +jsonSchemaDialect: https://json-schema.org/draft/2020-12/schema +info: + contact: + url: https://forge.etsi.org/rep/mec/gs030-vis-api + title: ETSI GS MEC 030 V2X Information Service API + description: The ETSI MEC ISG V2X Information Service API described using OpenAPI. + license: + name: BSD-3-Clause + url: https://forge.etsi.org/legal-matters + version: 3.1.1 +paths: + /queries/uu_unicast_provisioning_info: + get: + summary: Retrieve provisioning information required for V2X communication over Uu unicast. + description: The GET method is used to query provisioning information for V2X communication over Uu unicast. + operationId: uuunicastprovisioninginfoGET + tags: + - queries + parameters: + - $ref: '#/components/parameters/Query.Location_info' + responses: + '200': + description: Upon success, a response body containing the Uu unicast provisioning information is returned. + content: + application/json: + schema: + type: object + properties: + UuUnicastProvisioningInfo: + $ref: '#/components/schemas/UuUnicastProvisioningInfo' + '400': + $ref: '#/components/responses/400' + '401': + $ref: '#/components/responses/401' + '403': + $ref: '#/components/responses/403' + '404': + $ref: '#/components/responses/404' + '406': + $ref: '#/components/responses/406' + '429': + $ref: '#/components/responses/429' + /queries/uu_mbms_provisioning_info: + get: + summary: Retrieve provisioning information required for V2X communication over Uu MBMS. + description: The GET method is used to query provisioning information for V2X communication over Uu MBMS. + operationId: uumbmsprovisioninginfoGET + tags: + - queries + parameters: + - $ref: '#/components/parameters/Query.Location_info1' + responses: + '200': + description: Upon success, a response body containing the Uu MBMS provisioning information is returned. + content: + application/json: + schema: + type: object + properties: + UuMbmsProvisioningInfo: + $ref: '#/components/schemas/UuMbmsProvisioningInfo' + '400': + $ref: '#/components/responses/400' + '401': + $ref: '#/components/responses/401' + '403': + $ref: '#/components/responses/403' + '404': + $ref: '#/components/responses/404' + '406': + $ref: '#/components/responses/406' + '429': + $ref: '#/components/responses/429' + /queries/pc5_provisioning_info: + get: + summary: Retrieve provisioning information required for V2X communication over PC5. + description: The GET method is used to query provisioning information for V2X communication over PC5. + operationId: pc5provisioninginfoGET + tags: + - queries + parameters: + - $ref: '#/components/parameters/Query.Location_info2' + responses: + '200': + description: Upon success, a response body containing the PC5 provisioning information is returned. + content: + application/json: + schema: + type: object + properties: + Pc5ProvisioningInfo: + $ref: '#/components/schemas/Pc5ProvisioningInfo' + '400': + $ref: '#/components/responses/400' + '401': + $ref: '#/components/responses/401' + '403': + $ref: '#/components/responses/403' + '404': + $ref: '#/components/responses/404' + '406': + $ref: '#/components/responses/406' + '429': + $ref: '#/components/responses/429' + /provide_v2x_msg_distribution_server_info: + post: + summary: Provide V2X Message Distribution Servers information required for direct connection with a service consumer. + description: The POST method is used to request the information about available V2X Message Distribution Servers that can be supported by the service consumer (e.g. a MEC application). + operationId: providev2xmsgdistributionserverinfoPOST + tags: + - queries + requestBody: + description: Entity body in the request contains the information of the V2X Message Distribution Servers supported by the service consumer for direct communication. + required: true + content: + application/json: + schema: + type: object + properties: + V2xMsgDistributionServerInfo: + $ref: '#/components/schemas/V2xMsgDistributionServerInfo' + responses: + '200': + description: The response body shall contain the connection information of the V2X Message Distribution Servers that the service consumer can use for direct connection. + content: + application/json: + schema: + type: object + properties: + V2xMsgDistributionServerInfo: + $ref: '#/components/schemas/V2xMsgDistributionServerInfo' + '400': + $ref: '#/components/responses/400' + '401': + $ref: '#/components/responses/401' + '403': + $ref: '#/components/responses/403' + '404': + $ref: '#/components/responses/404' + /provide_predicted_qos: + post: + summary: Provide predicted QoS based on route information. + description: The POST method is used to request the predicted QoS correspondent to potential routes of a vehicular UE. + operationId: providepredictedqosPOST + tags: + - qos + requestBody: + description: Entity body in the request contains the predicted QoS as requested by the VIS service consumer. + required: true + content: + application/json: + schema: + type: object + properties: + PredictedQos: + $ref: '#/components/schemas/PredictedQos' + responses: + '200': + description: The response body shall contain the predicted QoS corresponding to potential routes of a vehicular UE. + content: + application/json: + schema: + type: object + properties: + PredictedQos: + $ref: '#/components/schemas/PredictedQos' + '400': + $ref: '#/components/responses/400' + '401': + $ref: '#/components/responses/401' + '403': + $ref: '#/components/responses/403' + '404': + $ref: '#/components/responses/404' + /publish_v2x_message: + post: + summary: Publish a V2X message to VIS. + description: The POST method is used to publish a V2X message. + operationId: publishv2xmessagePOST + tags: + - v2x_message + requestBody: + description: Entity body in the request contains the V2X message to be published. + required: true + content: + application/json: + schema: + type: object + properties: + V2xMsgPublication: + $ref: '#/components/schemas/V2xMsgPublication' + responses: + '204': + description: Upon success, a response 204 No Content without any response body is returned. + content: + application/json: + schema: + type: object + properties: {} + '400': + $ref: '#/components/responses/400' + '401': + $ref: '#/components/responses/401' + '403': + $ref: '#/components/responses/403' + '404': + $ref: '#/components/responses/404' + '406': + $ref: '#/components/responses/406' + '429': + $ref: '#/components/responses/429' + /subscriptions: + get: + summary: Retrieve a list of active subscriptions for this subscriber. + description: The GET method is used to request information about the subscriptions for this requestor. Upon success, the response contains an entity body with the list of links to the subscriptions that are present for the requestor. + operationId: subscriptionsGET + tags: + - subscriptions + parameters: + - $ref: '#/components/parameters/Query.Subscription_type' + responses: + '200': + description: Upon success, a response body containing the list of links to requestor's subscriptions is returned. + content: + application/json: + schema: + type: object + properties: + SubscriptionLinkList: + $ref: '#/components/schemas/SubscriptionLinkList' + '400': + $ref: '#/components/responses/400' + '401': + $ref: '#/components/responses/401' + '403': + $ref: '#/components/responses/403' + '404': + $ref: '#/components/responses/404' + '406': + $ref: '#/components/responses/406' + '429': + $ref: '#/components/responses/429' + post: + summary: Create a new subscription. + description: The POST method is used to create a new subscription to VIS notifications. Upon success, the response contains an entity body describing the created subscription. + operationId: subscriptionsPOST + tags: + - subscriptions + requestBody: + description: "The entity body in the request contains the data type of the specific VIS event subscription that is to be created, where the data type options are listed below and defined in clause 6.3:\nProvChgUuUniSubscription\nProvChgUuMbmsSubscription\nProvChgPc5Subscription\nV2xMsgSubscription \nPredQosSubscription." + content: + application/json: + schema: + type: object + properties: + ProvChgUuUniSubscription: + $ref: '#/components/schemas/ProvChgUuUniSubscription' + responses: + '201': + description: 'Indicates successful resource creation, where the resource URI shall be returned in the HTTP Location header field. + + + In the returned NotificationSubscription structure, the created subscription is described using the appropriate data type from the list below and as defined in clause 6.3: + + ProvChgUuUniSubscription + + ProvChgUuMbmsSubscription + + ProvChgPc5Subscription + + V2xMsgSubscription + + PredQosSubscription.' + content: + application/json: + schema: + type: object + properties: + ProvChgUuUniSubscription: + $ref: '#/components/schemas/ProvChgUuUniSubscription' + '400': + $ref: '#/components/responses/400' + '401': + $ref: '#/components/responses/401' + '403': + $ref: '#/components/responses/403' + '404': + $ref: '#/components/responses/404' + '406': + $ref: '#/components/responses/406' + '415': + $ref: '#/components/responses/415' + '422': + $ref: '#/components/responses/422' + '429': + $ref: '#/components/responses/429' + callbacks: + notification: + post: + summary: Callback POST used to send a notification + description: Subscription notification + operationId: notificationPOST + requestBody: + description: Subscription notification + required: true + content: + application/json: + schema: + type: object + properties: + subscriptionNotification: + oneOf: + - $ref: '#/components/schemas/ProvChgUuUniSubscription' + - $ref: '#/components/schemas/ProvChgUuMbmsSubscription' + - $ref: '#/components/schemas/ProvChgPc5Subscription' + - $ref: '#/components/schemas/V2xMsgSubscription' + - $ref: '#/components/schemas/PredQosSubscription' + /subscriptions/{subscriptionId}: + get: + summary: Retrieve information on current specific subscription. + description: The GET method is used to retrieve information about this subscription. Upon success, the response contains an entity body with the data type describing the subscription. + operationId: subscriptionsByIdGET + tags: + - subscriptions + responses: + '200': + description: "Upon success, a response body containing the data type describing the specific RNI event subscription is returned. The allowed data types for subscriptions are defined in clause\_6.3 and are as follows:\nProvChgUuUniSubscription\nProvChgUuMbmsSubscription\nProvChgPc5Subscription\nV2xMsgSubscription\nPredQosSubscription." + content: + application/json: + schema: + type: object + properties: + ProvChgUuUniSubscription: + $ref: '#/components/schemas/ProvChgUuUniSubscription' + '400': + $ref: '#/components/responses/400' + '401': + $ref: '#/components/responses/401' + '403': + $ref: '#/components/responses/403' + '404': + $ref: '#/components/responses/404' + '406': + $ref: '#/components/responses/406' + '429': + $ref: '#/components/responses/429' + put: + summary: Modify existing subscription by sending a new data structure. + description: The PUT method is used to update the existing subscription. PUT method in this case has "replace" semantics. Upon successful operation, the target resource is updated with a new data type received within the message body of the PUT request. + operationId: subscriptionsByIdPUT + tags: + - subscriptions + requestBody: + description: 'New NotificationSubscription is included as entity body of the request. The allowed data types for subscriptions are defined in clause 6.3 and are as follows: + + ProvChgUuUniSubscription + + ProvChgUuMbmsSubscription + + ProvChgPc5Subscription + + V2xMsgSubscription + + PredQosSubscription.' + content: + application/json: + schema: + type: object + properties: + ProvChgUuUniSubscription: + $ref: '#/components/schemas/ProvChgUuUniSubscription' + responses: + '200': + description: "Upon success, a response body containing the data type describing the updated subscription is returned. The allowed data types for subscriptions are defined in clause\_6.3 and are as follows:\nProvChgUuUniSubscription\nProvChgUuMbmsSubscription\nProvChgPc5Subscription\nV2xMsgSubscription\nPredQosSubscription." + content: + application/json: + schema: + type: object + properties: + ProvChgUuUniSubscription: + $ref: '#/components/schemas/ProvChgUuUniSubscription' + '400': + $ref: '#/components/responses/400' + '401': + $ref: '#/components/responses/401' + '403': + $ref: '#/components/responses/403' + '404': + $ref: '#/components/responses/404' + '406': + $ref: '#/components/responses/406' + '412': + $ref: '#/components/responses/412' + '422': + $ref: '#/components/responses/422' + '429': + $ref: '#/components/responses/429' + delete: + summary: Cancel the existing subscription. + description: The DELETE method is used to cancel the existing subscription. Cancellation can be made by deleting the resource that represents the existing subscription. + operationId: subscriptionsByIdDELETE + tags: + - subscriptions + responses: + '204': + $ref: '#/components/responses/204' + '401': + $ref: '#/components/responses/401' + '403': + $ref: '#/components/responses/403' + '404': + $ref: '#/components/responses/404' + '429': + $ref: '#/components/responses/429' +components: + schemas: + ProblemDetails: + type: object + properties: + type: + type: string + format: uri + description: A URI reference according to IETF RFC 3986 that identifies the problem type + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: URI + title: + type: string + description: A short, human-readable summary of the problem type + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: String + status: + type: integer + format: uint32 + description: The HTTP status code for this occurrence of the problem + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: Uint32 + detail: + type: string + description: A human-readable explanation specific to this occurrence of the problem + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: String + instance: + type: string + format: uri + description: A URI reference that identifies the specific occurrence of the problem + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: URI + Integer: + NOTE 3: The message protocol version of ETSI shall be used as specified in ETSI TS 102 894-2 [6], clause A.114. + UuUnicastProvisioningInfo: + x-etsi-ref: 6.2.2 + type: object + properties: + timeStamp: + # description': Time stamp. + $ref: '#/components/schemas/TimeStamp' + # x-etsi-mec-origin-type': TimeStamp + # x-etsi-mec-cardinality': 0..1 + proInfoUuUnicast: + type: array + items: + $ref: '#/components/schemas/ProInfoUuUnicast' + required: + - proInfoUuUnicast + UuMbmsProvisioningInfo: + x-etsi-ref: 6.2.3 + type: object + properties: + timeStamp: + # description': Time stamp. + $ref: '#/components/schemas/TimeStamp' + # x-etsi-mec-origin-type': TimeStamp + # x-etsi-mec-cardinality': 0..1 + proInfoUuMbms: + type: array + items: + $ref: '#/components/schemas/ProInfoUuMbms' + required: + - proInfoUuMbms + Pc5ProvisioningInfo: + x-etsi-ref: 6.2.4 + type: object + properties: + timeStamp: + # description': Time stamp. + $ref: '#/components/schemas/TimeStamp' + # x-etsi-mec-origin-type': TimeStamp + # x-etsi-mec-cardinality': 0..1 + proInfoPc5: + type: array + items: + $ref: '#/components/schemas/ProInfoPc5' + required: + - proInfoPc5 + V2xMsgDistributionServerInfo: + x-etsi-ref: 6.2.5 + type: object + properties: + v2xMsgDistributionServer: + description: Describes the information of the V2X Message Distribution Servers supported by the service consumer for direct communication. + x-etsi-mec-origin-type: V2xMsgDistributionServer + x-etsi-mec-cardinality: 1..N + type: array + minItems: 1 + items: + $ref: '#/components/schemas/V2xMsgDistributionServer' + locationInfo: + description: Location information to identify a particular geographical area of interest to the service consumer for receiving V2X messages. + x-etsi-mec-origin-type: LocationInfo + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + $ref: '#/components/schemas/LocationInfo' + required: + - v2xMsgDistributionServer + PredictedQos: + x-etsi-ref: 6.2.6 + type: object + properties: + predictionTarget: + type: string + description: "Indicates target of QoS prediction. Valid values:\n1.\tSINGLE_UE_PREDICTION: \nThe predicted QoS is to be intended as journey-specific for a requesting vehicular UE.\n2.\tE2E_APPLICATION_INSTANCE_PREDICTION:\nThe E2E user plane link between two V2X application instances, where one instance relates to a single vehicular UE and the other instance to an application instance within another network, i.e. either another vehicular UE as in the V2N2V case, or an infrastructure element as in the V2N2I case.\nShall only be included in the request." + enum: + - SEE_DESCRIPTION + x-etsi-mec-origin-type: Enum_inlined + x-etsi-mec-cardinality: '1' + timeGranularity: + # description': Time granularity of visiting a location. + $ref: '#/components/schemas/TimeStamp' + # x-etsi-mec-origin-type': TimeStamp + # x-etsi-mec-cardinality': 0..1 + locationGranularity: + description: Granularity of visited location. Measured in meters. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + noticePeriod: + # description': Information on when the predicted QoS is needed at the service consumer interface. The value of the notice period depends on the application reaction that has to be triggered by the service consumer. The value of the notice period shall be equal or a multiple of the timeGranularity, if it is present. If present, it shall only be included in the request. + $ref: '#/components/schemas/TimeStamp' + # x-etsi-mec-origin-type': TimeStamp + # x-etsi-mec-cardinality': 0..1 + predictionArea: + $ref: '#/components/schemas/PredictionArea' + routes: + type: array + items: + $ref: '#/components/schemas/Routes' + qos: + $ref: '#/components/schemas/Qos' + required: + - predictionTarget + - locationGranularity + - qos + x-etsi-notes: "NOTE:\tThe data type of locationGranularity is a string which indicates the granularity of a visited location by means of latitudinal and longitudinal margins." + V2xMsgPublication: + x-etsi-ref: 6.2.7 + type: object + properties: + msgPropertiesValues: + # description': List of message properties that is associated to the V2X message publication that can be used for filtering messages at the reception of the V2X message. + $ref: '#/components/schemas/V2xMsgPropertiesValues' + # x-etsi-mec-origin-type': V2xMsgPropertiesValues + # x-etsi-mec-cardinality': '1' + msgRepresentationFormat: + description: The representation format of the binary V2X message, for example base64 or hexadecimal representation. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + msgContent: + description: Published V2X message content. Its format is defined by the standardization organization indicated by the attribute stdOrganization of the msgPropertiesValues attribute. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + required: + - msgPropertiesValues + - msgRepresentationFormat + - msgContent + ProvChgUuUniSubscription: + x-etsi-ref: 6.3.2 + type: object + properties: + subscriptionType: + description: Shall be set to "ProvChgUuUniSubscription". + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + callbackReference: + description: URI exposed by the client on which to receive notifications via HTTP. See note. + x-etsi-mec-origin-type: Uri + x-etsi-mec-cardinality: 0..1 + type: string + format: uri + requestTestNotification: + description: "Shall be set to TRUE by the service consumer to request a test notification via HTTP on the callbackReference URI, as described in ETSI GS\_MEC\_009 [9], clause 6.12a.\nDefault: FALSE." + x-etsi-mec-origin-type: Boolean + x-etsi-mec-cardinality: 0..1 + type: boolean + websockNotifConfig: + # description': Provides details to negotiate and signal the use of a Websocket connection between VIS and the service consumer for notifications. See note. + $ref: '#/components/schemas/WebsockNotifConfig' + # x-etsi-mec-origin-type': WebsockNotifConfig + # x-etsi-mec-cardinality': 0..1 + _links: + $ref: '#/components/schemas/_links' + filterCriteria: + $ref: '#/components/schemas/FilterCriteria' + expiryDeadline: + # description': Time stamp. + $ref: '#/components/schemas/TimeStamp' + # x-etsi-mec-origin-type': TimeStamp + # x-etsi-mec-cardinality': 0..1 + required: + - subscriptionType + - filterCriteria + x-etsi-notes: "NOTE:\tAt least one of callbackReference and websockNotifConfig shall be provided by the service consumer. If both are provided, it is up to VIS to choose an alternative and return only that alternative in the response, as described in ETSI GS MEC 009 [9], clause 6.12a." + ProvChgUuMbmsSubscription: + x-etsi-ref: 6.3.3 + type: object + properties: + subscriptionType: + description: Shall be set to "ProvChgUuMbmsSubscription". + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + callbackReference: + description: URI exposed by the client on which to receive notifications via HTTP. See note. + x-etsi-mec-origin-type: Uri + x-etsi-mec-cardinality: 0..1 + type: string + format: uri + requestTestNotification: + description: "Shall be set to TRUE by the service consumer to request a test notification via HTTP on the callbackReference URI, as described in ETSI GS\_MEC 009 [9], clause 6.12a.\nDefault: FALSE." + x-etsi-mec-origin-type: Boolean + x-etsi-mec-cardinality: 0..1 + type: boolean + websockNotifConfig: + # description': Provides details to negotiate and signal the use of a Websocket connection between VIS and the service consumer for notifications. See note. + $ref: '#/components/schemas/WebsockNotifConfig' + # x-etsi-mec-origin-type': WebsockNotifConfig + # x-etsi-mec-cardinality': 0..1 + _links: + $ref: '#/components/schemas/_links' + filterCriteria: + $ref: '#/components/schemas/FilterCriteria1' + expiryDeadline: + # description': Time stamp. + $ref: '#/components/schemas/TimeStamp' + # x-etsi-mec-origin-type': TimeStamp + # x-etsi-mec-cardinality': 0..1 + required: + - subscriptionType + - filterCriteria + x-etsi-notes: "NOTE:\tAt least one of callbackReference and websockNotifConfig shall be provided by the service consumer. If both are provided, it is up to VIS to choose an alternative and return only that alternative in the response, as described in ETSI GS MEC 009 [9], clause 6.12a." + ProvChgPc5Subscription: + x-etsi-ref: 6.3.4 + type: object + properties: + subscriptionType: + description: Shall be set to "ProvChgPc5Subscription". + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + callbackReference: + description: URI exposed by the client on which to receive notifications via HTTP. See note. + x-etsi-mec-origin-type: Uri + x-etsi-mec-cardinality: 0..1 + type: string + format: uri + requestTestNotification: + description: "Shall be set to TRUE by the service consumer to request a test notification via HTTP on the callbackReference URI, as described in ETSI GS MEC 009 [9], clause\_6.12a.\nDefault: FALSE." + x-etsi-mec-origin-type: Boolean + x-etsi-mec-cardinality: 0..1 + type: boolean + websockNotifConfig: + # description': Provides details to negotiate and signal the use of a Websocket connection between VIS and the service consumer for notifications. See note. + $ref: '#/components/schemas/WebsockNotifConfig' + # x-etsi-mec-origin-type': WebsockNotifConfig + # x-etsi-mec-cardinality': 0..1 + _links: + $ref: '#/components/schemas/_links' + filterCriteria: + $ref: '#/components/schemas/FilterCriteria2' + expiryDeadline: + # description': Time stamp. + $ref: '#/components/schemas/TimeStamp' + # x-etsi-mec-origin-type': TimeStamp + # x-etsi-mec-cardinality': 0..1 + required: + - subscriptionType + - filterCriteria + x-etsi-notes: "NOTE:\tAt least one of callbackReference and websockNotifConfig shall be provided by the service consumer. If both are provided, it is up to VIS to choose an alternative and return only that alternative in the response, as described in ETSI GS MEC 009 [9], clause 6.12a." + V2xMsgSubscription: + x-etsi-ref: 6.3.5 + type: object + properties: + subscriptionType: + description: Shall be set to "V2xMsgSubscription". + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + callbackReference: + description: URI exposed by the client on which to receive notifications via HTTP. See note. + x-etsi-mec-origin-type: Uri + x-etsi-mec-cardinality: 0..1 + type: string + format: uri + requestTestNotification: + description: "Shall be set to TRUE by the service consumer to request a test notification via HTTP on the callbackReference URI, as described in ETSI GS MEC 009 [9], clause 6.12a. \nDefault: FALSE." + x-etsi-mec-origin-type: Boolean + x-etsi-mec-cardinality: 0..1 + type: boolean + websockNotifConfig: + # description': Provides details to negotiate and signal the use of a Websocket connection between VIS and the service consumer for notifications. See note. + $ref: '#/components/schemas/WebsockNotifConfig' + # x-etsi-mec-origin-type': WebsockNotifConfig + # x-etsi-mec-cardinality': 0..1 + _links: + $ref: '#/components/schemas/_links' + filterCriteria: + # description': List of filtering criteria aimed to filter V2X messages at the reception. Any filtering criteria which is included in the request, shall also be included in the response. + $ref: '#/components/schemas/V2xMsgFilterCriteria' + # x-etsi-mec-origin-type': V2xMsgFilterCriteria + # x-etsi-mec-cardinality': '1' + expiryDeadline: + # description': Time stamp. + $ref: '#/components/schemas/TimeStamp' + # x-etsi-mec-origin-type': TimeStamp + # x-etsi-mec-cardinality': 0..1 + required: + - subscriptionType + - filterCriteria + x-etsi-notes: "NOTE:\tAt least one of callbackReference and websockNotifConfig shall be provided by the service consumer. If both are provided, it is up to VIS to choose an alternative and return only that alternative in the response, as described in ETSI GS MEC 009 [9], clause 6.12a." + PredQosSubscription: + x-etsi-ref: 6.3.6 + type: object + properties: + subscriptionType: + description: Shall be set to "PredQosSubscription". + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + callbackReference: + description: URI exposed by the client on which to receive notifications via HTTP. See note. + x-etsi-mec-origin-type: Uri + x-etsi-mec-cardinality: 0..1 + type: string + format: uri + requestTestNotification: + description: 'Shall be set to TRUE by the service consumer to request a test notification via HTTP on the callbackReference URI, as described in ETSI GS MEC 009 [9], clause 6.12a. + + Default: FALSE.' + x-etsi-mec-origin-type: Boolean + x-etsi-mec-cardinality: 0..1 + type: boolean + websockNotifConfig: + # description': Provides details to negotiate and signal the use of a Websocket connection between VIS and the service consumer for notifications. See note. + $ref: '#/components/schemas/WebsockNotifConfig' + # x-etsi-mec-origin-type': WebsockNotifConfig + # x-etsi-mec-cardinality': 0..1 + _links: + $ref: '#/components/schemas/_links' + filterCriteria: + # description': List of filtering criteria aimed to filter QoS predictions at the reception. Any filtering criteria included in the request, shall also be included in the response. + $ref: '#/components/schemas/QosPredFilterCriteria' + # x-etsi-mec-origin-type': QosPredFilterCriteria + # x-etsi-mec-cardinality': '1' + expiryDeadline: + # description': Time stamp. + $ref: '#/components/schemas/TimeStamp' + # x-etsi-mec-origin-type': TimeStamp + # x-etsi-mec-cardinality': 0..1 + required: + - subscriptionType + - filterCriteria + x-etsi-notes: "NOTE:\tAt least one of callbackReference and websockNotifConfig shall be provided by the service consumer. If both are provided, it is up to VIS to choose an alternative and return only that alternative in the response, as described in ETSI GS MEC 009 [9], clause 6.12a." + SubscriptionLinkList: + x-etsi-ref: 6.3.7 + type: object + properties: + _links: + $ref: '#/components/schemas/_links1' + required: + - _links + ProvChgUuUniNotification: + x-etsi-ref: 6.4.2 + type: object + properties: + notificationType: + description: Shall be set to "ProvChgUuUniNotification". + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + timeStamp: + # description': Time stamp. + $ref: '#/components/schemas/TimeStamp' + # x-etsi-mec-origin-type': TimeStamp + # x-etsi-mec-cardinality': 0..1 + locationInfo: + # description': Location information to identify a cell of a base station or a particular geographical area. + $ref: '#/components/schemas/LocationInfo' + # x-etsi-mec-origin-type': LocationInfo + # x-etsi-mec-cardinality': '1' + v2xApplicationServer: + # description': V2X Application Server address (consisting of IP address and UDP port) for unicast. + $ref: '#/components/schemas/V2xApplicationServer' + # x-etsi-mec-origin-type': V2xApplicationServer + # x-etsi-mec-cardinality': 0..1 + neighbourCellInfo: + description: The information of the neighbour cells in a visiting PLMN that support V2X communication over Uu unicast. + x-etsi-mec-origin-type: UuUniNeighbourCellInfo + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + $ref: '#/components/schemas/UuUniNeighbourCellInfo' + required: + - notificationType + - locationInfo + ProvChgUuMbmsNotification: + x-etsi-ref: 6.4.3 + type: object + properties: + notificationType: + description: Shall be set to "ProvChgUuMbmsNotification". + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + timeStamp: + # description': Time stamp. + $ref: '#/components/schemas/TimeStamp' + # x-etsi-mec-origin-type': TimeStamp + # x-etsi-mec-cardinality': 0..1 + locationInfo: + # description': Location information to identify a cell of a base station or a particular geographical area. + $ref: '#/components/schemas/LocationInfo' + # x-etsi-mec-origin-type': LocationInfo + # x-etsi-mec-cardinality': '1' + v2xServerUsd: + # description': User Service Description for V2X Application Server is used to configure the UE for receiving local V2X Application Server information when it is provided over MBMS. + $ref: '#/components/schemas/V2xServerUsd' + # x-etsi-mec-origin-type': V2xServerUsd + # x-etsi-mec-cardinality': 0..1 + neighbourCellInfo: + description: The information of the neighbour cells in a visiting PLMN that support V2X communication over Uu MBMS. + x-etsi-mec-origin-type: UuMbmsNeighbourCellInfo + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + $ref: '#/components/schemas/UuMbmsNeighbourCellInfo' + required: + - notificationType + - locationInfo + ProvChgPc5Notification: + x-etsi-ref: 6.4.4 + type: object + properties: + notificationType: + description: Shall be set to "ProvChgPc5Notification". + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + timeStamp: + # description': Time stamp. + $ref: '#/components/schemas/TimeStamp' + # x-etsi-mec-origin-type': TimeStamp + # x-etsi-mec-cardinality': 0..1 + locationInfo: + # description': Location information to identify a cell of a base station or a particular geographical area. + $ref: '#/components/schemas/LocationInfo' + # x-etsi-mec-origin-type': LocationInfo + # x-etsi-mec-cardinality': '1' + dstLayer2Id: + description: For sidelink communication, the Destination Layer-2 ID is set to the ProSe Layer-2 Group ID or Prose UE ID, see ETSI TS 136 321 [15]. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + neighbourCellInfo: + description: The information of the neighbour cells in a visiting PLMN that support V2X communication over PC5. + x-etsi-mec-origin-type: Pc5NeighbourCellInfo + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + $ref: '#/components/schemas/Pc5NeighbourCellInfo' + required: + - notificationType + - locationInfo + V2xMsgNotification: + x-etsi-ref: 6.4.5 + type: object + properties: + notificationType: + description: Shall be set to "V2xMsgNotification". + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + timeStamp: + # description': Date and time of the notification generation. + $ref: '#/components/schemas/TimeStamp' + # x-etsi-mec-origin-type': TimeStamp + # x-etsi-mec-cardinality': '1' + msgPropertiesValues: + # description': List of message properties that is associated to the V2X message. + $ref: '#/components/schemas/V2xMsgPropertiesValues' + # x-etsi-mec-origin-type': V2xMsgPropertiesValues + # x-etsi-mec-cardinality': '1' + msgRepresentationFormat: + description: The representation format of the binary V2X message, for example base64 or hexadecimal representation. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + msgContent: + description: Published V2X message content. The format of the string is defined by the standardization organization indicated by the attribute stdOrganization of the msgPropertiesValues attribute. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + _links: + $ref: '#/components/schemas/_links2' + required: + - notificationType + - timeStamp + - msgPropertiesValues + - msgRepresentationFormat + - msgContent + - _links + TestNotification: + x-etsi-ref: 6.4.6 + type: object + properties: + notificationType: + description: Shall be set to "TestNotification". + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + _links: + $ref: '#/components/schemas/_links3' + required: + - notificationType + - _links + TimeStamp: + x-etsi-ref: 6.5.2 + type: object + properties: + seconds: + description: The seconds part of the time. Time is defined as Unixtime since January 1, 1970, 00:00:00 UTC. + x-etsi-mec-origin-type: Uint32 + x-etsi-mec-cardinality: '1' + type: integer + format: uint32 + nanoSeconds: + description: The nanoseconds part of the time. Time is defined as Unix-time since January 1, 1970, 00:00:00 UTC. + x-etsi-mec-origin-type: Uint32 + x-etsi-mec-cardinality: '1' + type: integer + format: uint32 + required: + - seconds + - nanoSeconds + LocationInfo: + x-etsi-ref: 6.5.3 + type: object + properties: + ecgi: + # description': E-UTRAN CelI Global Identifier of the serving cell + $ref: '#/components/schemas/Ecgi' + # x-etsi-mec-origin-type': Ecgi + # x-etsi-mec-cardinality': 0..1 + geoArea: + $ref: '#/components/schemas/GeoArea' + x-etsi-notes: "NOTE:\tEither ecgi or geoArea shall be present, but not both." + Plmn: + x-etsi-ref: 6.5.4 + type: object + properties: + mcc: + description: The Mobile Country Code part of PLMN Identity. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + mnc: + description: The Mobile Network Code part of PLMN Identity. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + required: + - mcc + - mnc + Ecgi: + x-etsi-ref: 6.5.5 + type: object + properties: + plmn: + # description': Public Land Mobile Network Identity. + $ref: '#/components/schemas/Plmn' + # x-etsi-mec-origin-type': Plmn + # x-etsi-mec-cardinality': '1' + cellId: + # description': The E-UTRAN Cell Identity. + $ref: '#/components/schemas/CellId' + # x-etsi-mec-origin-type': CellId + # x-etsi-mec-cardinality': '1' + required: + - plmn + - cellId + FddInfo: + x-etsi-ref: 6.5.6 + type: object + properties: + ulEarfcn: + # description': '' + $ref: '#/components/schemas/Earfcn' + # x-etsi-mec-origin-type': Earfcn + # x-etsi-mec-cardinality': '1' + dlEarfcn: + # description': '' + $ref: '#/components/schemas/Earfcn' + # x-etsi-mec-origin-type': Earfcn + # x-etsi-mec-cardinality': '1' + ulTransmissionBandwidth: + # description': '' + $ref: '#/components/schemas/TransmissionBandwidth' + # x-etsi-mec-origin-type': TransmissionBandwidth + # x-etsi-mec-cardinality': '1' + dlTransmissionBandwidth: + # description': '' + $ref: '#/components/schemas/TransmissionBandwidth' + # x-etsi-mec-origin-type': TransmissionBandwidth + # x-etsi-mec-cardinality': '1' + required: + - ulEarfcn + - dlEarfcn + - ulTransmissionBandwidth + - dlTransmissionBandwidth + TddInfo: + x-etsi-ref: 6.5.7 + type: object + properties: + earfcn: + # description': '' + $ref: '#/components/schemas/Earfcn' + # x-etsi-mec-origin-type': Earfcn + # x-etsi-mec-cardinality': '1' + transmissionBandwidth: + # description': '' + $ref: '#/components/schemas/TransmissionBandwidth' + # x-etsi-mec-origin-type': TransmissionBandwidth + # x-etsi-mec-cardinality': '1' + subframeAssignment: + description: Uplink-downlink subframe configuration information. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + required: + - earfcn + - transmissionBandwidth + - subframeAssignment + V2xApplicationServer: + x-etsi-ref: 6.5.8 + type: object + properties: + ipAddress: + description: '' + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + udpPort: + description: '' + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + required: + - ipAddress + - udpPort + UuUniNeighbourCellInfo: + x-etsi-ref: 6.5.9 + type: object + properties: + plmn: + # description': Public Land Mobile Network Identity. + $ref: '#/components/schemas/Plmn' + # x-etsi-mec-origin-type': Plmn + # x-etsi-mec-cardinality': '1' + ecgi: + # description': E-UTRAN CelI Global Identifier. + $ref: '#/components/schemas/Ecgi' + # x-etsi-mec-origin-type': Ecgi + # x-etsi-mec-cardinality': '1' + pci: + description: Physical Cell Identifier. + x-etsi-mec-origin-type: Integer + x-etsi-mec-cardinality: '1' + type: integer + fddInfo: + # description': Information for FDD operation. + $ref: '#/components/schemas/FddInfo' + # x-etsi-mec-origin-type': FddInfo + # x-etsi-mec-cardinality': '1' + tddInfo: + # description': Information for TDD operation. + $ref: '#/components/schemas/TddInfo' + # x-etsi-mec-origin-type': TddInfo + # x-etsi-mec-cardinality': '1' + required: + - plmn + - ecgi + - pci + - fddInfo + - tddInfo + V2xServerUsd: + x-etsi-ref: 6.5.10 + type: object + properties: + tmgi: + $ref: '#/components/schemas/Tmgi' + serviceAreaIdentifier: + description: A list of service area identifier for the applicable MBMS broadcast area. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 1..N + type: array + minItems: 1 + items: + type: string + sdpInfo: + $ref: '#/components/schemas/SdpInfo' + required: + - tmgi + - serviceAreaIdentifier + - sdpInfo + UuMbmsNeighbourCellInfo: + x-etsi-ref: 6.5.11 + type: object + properties: + plmn: + # description': Public Land Mobile Network Identity. + $ref: '#/components/schemas/Plmn' + # x-etsi-mec-origin-type': Plmn + # x-etsi-mec-cardinality': '1' + ecgi: + # description': E-UTRAN CelI Global Identifier. + $ref: '#/components/schemas/Ecgi' + # x-etsi-mec-origin-type': Ecgi + # x-etsi-mec-cardinality': '1' + pci: + description: Physical Cell Identifier. + x-etsi-mec-origin-type: Integer + x-etsi-mec-cardinality: '1' + type: integer + fddInfo: + # description': Information for FDD operation. + $ref: '#/components/schemas/FddInfo' + # x-etsi-mec-origin-type': FddInfo + # x-etsi-mec-cardinality': '1' + tddInfo: + # description': Information for TDD operation. + $ref: '#/components/schemas/TddInfo' + # x-etsi-mec-origin-type': TddInfo + # x-etsi-mec-cardinality': '1' + mbmsServiceAreaIdentity: + description: Supported MBMS Service Area Identities in the cell. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 1..N + type: array + minItems: 1 + items: + type: string + required: + - plmn + - ecgi + - pci + - fddInfo + - tddInfo + - mbmsServiceAreaIdentity + Pc5NeighbourCellInfo: + x-etsi-ref: 6.5.12 + type: object + properties: + plmn: + # description': Public Land Mobile Network Identity. + $ref: '#/components/schemas/Plmn' + # x-etsi-mec-origin-type': Plmn + # x-etsi-mec-cardinality': '1' + ecgi: + # description': E-UTRAN CelI Global Identifier. + $ref: '#/components/schemas/Ecgi' + # x-etsi-mec-origin-type': Ecgi + # x-etsi-mec-cardinality': '1' + siV2xConfig: + # description': V2X sidelink communication configuration, as defined in ETSI TS 136 331 [14]. + $ref: '#/components/schemas/SystemInformationBlockType21' + # x-etsi-mec-origin-type': SystemInformationBlockType21 + # x-etsi-mec-cardinality': '1' + required: + - plmn + - ecgi + - siV2xConfig + LinkType: + x-etsi-ref: 6.5.13 + type: object + properties: + href: + description: URI referring to a resource + x-etsi-mec-origin-type: Uri + x-etsi-mec-cardinality: '1' + type: string + format: uri + required: + - href + V2xMsgPropertiesValues: + x-etsi-ref: 6.5.14 + type: object + properties: + stdOrganization: + type: string + description: 'Standardization organization which defines the published V2X message type: + + ETSI: European Telecommunications Standards Institute. + + See note 1.' + enum: + - SEE_DESCRIPTION + x-etsi-mec-origin-type: Enum + x-etsi-mec-cardinality: '1' + msgType: + type: string + description: Published V2X message type. Its value is defined by the standardization organization indicated by the attribute stdOrganization. See note 2. + enum: + - SEE_DESCRIPTION + x-etsi-mec-origin-type: Enum + x-etsi-mec-cardinality: '1' + msgProtocolVersion: + description: Protocol version of the V2X message (0..255). See note 3. + x-etsi-mec-origin-type: Integer + x-etsi-mec-cardinality: '1' + type: integer + locationInfo: + # description': Location information to identify a cell of a base station or a particular geographical area to which the V2X message can be associated. + $ref: '#/components/schemas/LocationInfo' + # x-etsi-mec-origin-type': LocationInfo + # x-etsi-mec-cardinality': '1' + required: + - stdOrganization + - msgType + - msgProtocolVersion + - locationInfo + x-etsi-notes: "NOTE 1:\tOther standardization organizations could be added as needed.\nNOTE 2:\tThe V2X message types of ETSI shall be used as specified in ETSI TS 102 894-2 [6], clause A.114.\nNOTE 3:\tThe message protocol version of ETSI shall be used as specified in ETSI TS 102 894-2 [6], clause A.114." + V2xMsgFilterCriteria: + x-etsi-ref: 6.5.15 + type: object + properties: + stdOrganization: + type: string + description: "Standardization organization which defines the published V2X message type: \nETSI: European Telecommunications Standards Institute.\nSee note 1." + enum: + - SEE_DESCRIPTION + x-etsi-mec-origin-type: Enum + x-etsi-mec-cardinality: '1' + msgType: + description: Published V2X message type. Its value is defined by the standardization organization indicated by the attribute stdOrganization. See note 2. + x-etsi-mec-origin-type: Enum + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + type: string + msgProtocolVersion: + description: Protocol version of the V2X message (0..255). See note 3. + x-etsi-mec-origin-type: Integer + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + type: integer + locationInfo: + description: Location information to identify a cell of a base station or a particular geographical area to which the V2X message can be associated. + x-etsi-mec-origin-type: LocationInfo + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + $ref: '#/components/schemas/LocationInfo' + required: + - stdOrganization + x-etsi-notes: "NOTE 1:\tOther standardization organizations could be added as needed.\nNOTE 2:\tThe V2X message types of ETSI shall be used as specified in ETSI TS 102 894-2 [6], clause A.114.\nNOTE 3:\tThe message protocol version of ETSI shall be used as specified in ETSI TS 102 894-2 [6], clause A.114." + V2xMsgDistributionServer: + x-etsi-ref: 6.5.16 + type: object + properties: + infoProtocol: + $ref: '#/components/schemas/InfoProtocol' + infoConnection: + $ref: '#/components/schemas/InfoConnection' + required: + - infoProtocol + x-etsi-notes: "NOTE:\tOther application layer protocols (and versions thereof) may be added as needed." + QosPredFilterCriteria: + x-etsi-ref: 6.5.17 + type: object + properties: + streamId: + description: The predicted QoS at the related time and vehicular UE location is provided for a specific data stream. In case of 3GPP network, this is mapped to a QoS flow. Stream needs to also contain the stream ID which, in case of the 3GPP network, can be mapped on to the 5QI or QCI. See note. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + x-etsi-notes: "NOTE:\tOther identifiers could be added as needed." + WebsockNotifConfig: + x-etsi-ref: 6.5.18 + type: object + properties: + websocketUri: + description: Set by VIS to indicate to the service consumer the Websocket URI to be used for delivering notifications. + x-etsi-mec-origin-type: Uri + x-etsi-mec-cardinality: 0..1 + type: string + format: uri + requestWebsocketUri: + description: Set to TRUE by the service consumer to indicate that Websocket delivery is requested. + x-etsi-mec-origin-type: Boolean + x-etsi-mec-cardinality: 0..1 + type: boolean + CellId: + x-etsi-ref: 6.6.2 + type: object + properties: + cellId: + description: E-UTRAN Cell Identity as a bit string (size (28)). + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + required: + - cellId + Earfcn: + x-etsi-ref: 6.6.3 + type: object + properties: + earfcn: + description: E-UTRA Absolute Radio Frequency Channel Number, range (0... 65535) + x-etsi-mec-origin-type: Integer + x-etsi-mec-cardinality: '1' + type: integer + required: + - earfcn + TransmissionBandwidth: + x-etsi-ref: 6.6.4 + type: object + properties: + transmissionBandwidth: + type: integer + description: 'Numeric value corresponding to the transmission bandwidth expressed in units of resource blocks as follows: + + 1 = bw6 (6 resource blocks) + + 2 = bw15 (15 resource blocks) + + 3 = bw25 (25 resource blocks) + + 4 = bw50 (50 resource blocks) + + 5 = bw75 (75 resource blocks) + + 6 = bw100 (100 resource blocks)' + enum: + - SEE_DESCRIPTION + x-etsi-mec-origin-type: Enum + x-etsi-mec-cardinality: '1' + required: + - transmissionBandwidth + ProInfoUuUnicast: + description: The provisioning information per location as defined below. + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: 1..N + type: object + minItems: 1 + properties: + locationInfo: + # description': Location information to identify a cell of a base station or a particular geographical area. + $ref: '#/components/schemas/LocationInfo' + # x-etsi-mec-origin-type': LocationInfo + # x-etsi-mec-cardinality': '1' + v2xApplicationServer: + # description': V2X Application Server address (consisting of IP address and UDP port) for unicast. + $ref: '#/components/schemas/V2xApplicationServer' + # x-etsi-mec-origin-type': V2xApplicationServer + # x-etsi-mec-cardinality': '1' + neighbourCellInfo: + description: The information of the neighbour cells in a visiting PLMN that support V2X communication over Uu unicast. + x-etsi-mec-origin-type: UuUniNeighbourCellInfo + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + $ref: '#/components/schemas/UuUniNeighbourCellInfo' + required: + - locationInfo + - v2xApplicationServer + ProInfoUuMbms: + description: The provisioning information per location as defined below. + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: 1..N + type: object + minItems: 1 + properties: + locationInfo: + # description': Location information to identify a cell of a base station or a particular geographical area. + $ref: '#/components/schemas/LocationInfo' + # x-etsi-mec-origin-type': LocationInfo + # x-etsi-mec-cardinality': '1' + v2xServerUsd: + # description': User Service Description for V2X Application Server is used to configure the UE for receiving local V2X Application Server information when it is provided over MBMS. + $ref: '#/components/schemas/V2xServerUsd' + # x-etsi-mec-origin-type': V2xServerUsd + # x-etsi-mec-cardinality': '1' + neighbourCellInfo: + description: The information of the neighbour cells in a visiting PLMN that support V2X communication over Uu MBMS. + x-etsi-mec-origin-type: UuMbmsNeighbourCellInfo + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + $ref: '#/components/schemas/UuMbmsNeighbourCellInfo' + required: + - locationInfo + - v2xServerUsd + ProInfoPc5: + description: The provisioning information per location as defined below. + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: 1..N + type: object + minItems: 1 + properties: + locationInfo: + # description': Location information to identify a cell of a base station or a particular geographical area. + $ref: '#/components/schemas/LocationInfo' + # x-etsi-mec-origin-type': LocationInfo + # x-etsi-mec-cardinality': '1' + dstLayer2Id: + description: "For sidelink communication, the Destination Layer-2 ID is set to the ProSe Layer-2 Group ID or Prose UE ID, see ETSI TS\_136\_321 [15].\nPLMN operators coordinate to make sure Destination Layer-2 ID(s) for different V2X services are configured in a consistent manner." + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + neighbourCellInfo: + description: The information of the neighbour cells in a visiting PLMN that support V2X communication over PC5. + x-etsi-mec-origin-type: Pc5NeighbourCellInfo + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + $ref: '#/components/schemas/Pc5NeighbourCellInfo' + required: + - locationInfo + - dstLayer2Id + PredictionArea: + description: 'Geographical area including the two ends of the user plane link between two V2X application instances. + + It shall only be present when "predictionTarget" = "E2E_APPLICATION_INSTANCE_PREDICTION".' + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: 0..1 + type: object + properties: + center: + # description': Center of geographical area including the two ends of the user plane link between two V2X application instances. + $ref: '#/components/schemas/LocationInfo' + # x-etsi-mec-origin-type': LocationInfo + # x-etsi-mec-cardinality': '1' + radius: + description: Radius of geographical area including the two ends of the user plane link between two V2X application instances. Measured in meters. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + required: + - center + - radius + RouteInfo: + description: 'Information relating to a specific route. + + The first structure shall relate to the route origin and the last to the route destination. Intermediate waypoint locations may also be provided.' + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: 1..N + type: object + minItems: 1 + properties: + location: + # description': Vehicular UE location. + $ref: '#/components/schemas/LocationInfo' + # x-etsi-mec-origin-type': LocationInfo + # x-etsi-mec-cardinality': '1' + time: + # description': Estimated time at the location. + $ref: '#/components/schemas/TimeStamp' + # x-etsi-mec-origin-type': TimeStamp + # x-etsi-mec-cardinality': 0..1 + required: + - location + Routes: + description: Information relating to the potential routes of a vehicular UE. Shall only be present when "predictionTarget" = "SINGLE_UE_PREDICTION". + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: 0..N + type: object + minItems: 0 + properties: + routeInfo: + type: array + items: + $ref: '#/components/schemas/RouteInfo' + required: + - routeInfo + QosKpi: + description: This structure contains the prediction for a specific QoS KPI related to a given data stream. + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: 1..N + type: object + minItems: 1 + properties: + kpiName: + description: 'The name of the KPI (e.g. latency, UL bitrate, etc.). + + It can be included in the request and in the response.' + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + kpiValue: + description: 'Information on the predicted value for the specific QoS KPI. It can be in different forms, such as upper bound and lower bound, CDF, actual value, etc. + + Shall only be included in the response.' + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + confidence: + description: Confidence of the prediction, as returned by the relevant domain PF. The value and the measurement of the confidence depends on the SLA. Shall only be included in the response. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + required: + - kpiName + - kpiValue + Stream: + description: Predicted QoS at the related time and vehicular UE location for the specific data stream. In case of 3GPP network, this is mapped to a QoS flow. Stream needs to also contain the stream ID that, in case of the 3GPP network, can be mapped on to the 5QI or QCI. + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: 1..N + type: object + minItems: 1 + properties: + qosKpi: + type: array + items: + $ref: '#/components/schemas/QosKpi' + required: + - qosKpi + Qos: + description: Predicted QoS at the related time and vehicular UE location. Shall only be included in the response. + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: '1' + type: object + properties: + stream: + type: array + items: + $ref: '#/components/schemas/Stream' + required: + - stream + _links: + description: Hyperlink related to the resource. This shall be only included in the HTTP responses and in HTTP PUT requests. + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: 0..1 + type: object + properties: + self: + # description': Self-referring URI. The URI shall be unique within the VIS API as it acts as an ID for the subscription. + $ref: '#/components/schemas/LinkType' + # x-etsi-mec-origin-type': LinkType + # x-etsi-mec-cardinality': '1' + required: + - self + FilterCriteria: + description: List of filtering criteria for the subscription. Any filtering criteria from below, which is included in the request, shall also be included in the response. + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: '1' + type: object + properties: + locationInfo: + # description': Location information to identify a cell of a base station or a particular geographical area. + $ref: '#/components/schemas/LocationInfo' + # x-etsi-mec-origin-type': LocationInfo + # x-etsi-mec-cardinality': '1' + v2xApplicationServer: + # description': V2X Application Server address (consisting of IP address and UDP port) for unicast. + $ref: '#/components/schemas/V2xApplicationServer' + # x-etsi-mec-origin-type': V2xApplicationServer + # x-etsi-mec-cardinality': '1' + neighbourCellInfo: + description: The information of the neighbour cells in a visiting PLMN that support V2X communication over Uu unicast. + x-etsi-mec-origin-type: UuUniNeighbourCellInfo + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + $ref: '#/components/schemas/UuUniNeighbourCellInfo' + required: + - locationInfo + - v2xApplicationServer + FilterCriteria1: + description: List of filtering criteria for the subscription. Any filtering criteria from below, which is included in the request, shall also be included in the response. + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: '1' + type: object + properties: + locationInfo: + # description': Location information to identify a cell of a base station or a particular geographical area. + $ref: '#/components/schemas/LocationInfo' + # x-etsi-mec-origin-type': LocationInfo + # x-etsi-mec-cardinality': '1' + v2xServerUsd: + # description': User Service Description for V2X Application Server is used to configure the UE for receiving local V2X Application Server information when it is provided over MBMS. + $ref: '#/components/schemas/V2xServerUsd' + # x-etsi-mec-origin-type': V2xServerUsd + # x-etsi-mec-cardinality': '1' + neighbourCellInfo: + description: The information of the neighbour cells in a visiting PLMN that support V2X communication over Uu MBMS. + x-etsi-mec-origin-type: UuMbmsNeighbourCellInfo + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + $ref: '#/components/schemas/UuMbmsNeighbourCellInfo' + required: + - locationInfo + - v2xServerUsd + FilterCriteria2: + description: List of filtering criteria for the subscription. Any filtering criteria from below, which is included in the request, shall also be included in the response. + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: '1' + type: object + properties: + locationInfo: + # description': Location information to identify a cell of a base station or a particular geographical area. + $ref: '#/components/schemas/LocationInfo' + # x-etsi-mec-origin-type': LocationInfo + # x-etsi-mec-cardinality': '1' + dstLayer2Id: + description: For sidelink communication, the Destination Layer-2 ID is set to the ProSe Layer-2 Group ID or Prose UE ID, see ETSI TS 136 321 [15]. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + neighbourCellInfo: + description: The information of the neighbour cells in a visiting PLMN that support V2X communication over PC5. + x-etsi-mec-origin-type: Pc5NeighbourCellInfo + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + $ref: '#/components/schemas/Pc5NeighbourCellInfo' + required: + - locationInfo + - dstLayer2Id + Subscriptions: + description: The service consumer's subscriptions. + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: 0..N + type: object + minItems: 0 + properties: + href: + description: The URI referring to the subscription. + x-etsi-mec-origin-type: Uri + x-etsi-mec-cardinality: '1' + type: string + format: uri + subscriptionType: + description: Type of the subscription. The values are as defined in the "subscriptionType" attribute for each different V2X information event subscription data type. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + required: + - href + - subscriptionType + _links1: + description: List of hyperlinks related to the resource. + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: '1' + type: object + properties: + self: + # description': URI of this resource. + $ref: '#/components/schemas/LinkType' + # x-etsi-mec-origin-type': LinkType + # x-etsi-mec-cardinality': '1' + subscriptions: + type: array + items: + $ref: '#/components/schemas/Subscriptions' + required: + - self + _links2: + description: Links to resources related to this notification. + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: '1' + type: object + properties: + subscription: + # description': A link to the related subscription. + $ref: '#/components/schemas/LinkType' + # x-etsi-mec-origin-type': LinkType + # x-etsi-mec-cardinality': '1' + required: + - subscription + _links3: + description: Hyperlink related to the resource. + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: '1' + type: object + properties: + subscription: + # description': URI identifying the subscription for the test notification. + $ref: '#/components/schemas/LinkType' + # x-etsi-mec-origin-type': LinkType + # x-etsi-mec-cardinality': '1' + required: + - subscription + GeoArea: + description: Information of a geographical area + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: 0..1 + type: object + properties: + latitude: + description: 'Latitude (DATUM = WGS84) + + -90 to 90 in decimal degree format DDD.ddd' + x-etsi-mec-origin-type: Float + x-etsi-mec-cardinality: '1' + type: number + format: float + longitude: + description: 'Longitude (DATUM = WGS84) + + -180 to 180 in decimal degree format DDD.ddd' + x-etsi-mec-origin-type: Float + x-etsi-mec-cardinality: '1' + type: number + format: float + required: + - latitude + - longitude + Tmgi: + description: Temporary Mobile Group Identity (TMGI), which is used within MBMS to uniquely identify Multicast and Broadcast bearer services. + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: '' + type: object + properties: + mbmsServiceId: + description: MBMS Service ID consisting of three octets. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + mcc: + description: The Mobile Country Code part of PLMN Identity. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + mnc: + description: The Mobile Network Code part of PLMN Identity. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + required: + - mbmsServiceId + - mcc + - mnc + SdpInfo: + description: SDP with IP multicast address and port number used for V2X communication via MBMS. + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: '1' + type: object + properties: + ipMulticastAddress: + description: '' + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + portNumber: + description: '' + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + required: + - ipMulticastAddress + - portNumber + InfoProtocol: + description: Specifics of the application layer protocol of V2X Message Distribution Server. + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: '1' + type: object + properties: + msgProtocol: + description: 'Numerical value corresponding to the application layer protocol supported by the service consumer. For the msgProtocol, the following values are currently defined (see note): + + 0 = MQTT v3.1.0 + + 1 = MQTT v3.1.1 + + 2 = MQTT v5 + + 3 = MQTT-SN + + 4 = AMQP 1.0' + x-etsi-mec-origin-type: Enum + x-etsi-mec-cardinality: 1..N + type: array + minItems: 1 + items: + type: integer + protImplementation: + description: "Implementation specifics of application layer protocol, e.g.\_programming language." + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + required: + - msgProtocol + - protImplementation + InfoConnection: + description: Connection information of the V2X Message Distribution Server the service consumer can use for direct connection. Shall only be included in the response. + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: 0..1 + type: object + properties: + ipAddress: + description: IP address of the V2X Message Distribution Server. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + port_number: + description: Port number of the V2X Message Distribution Server. + x-etsi-mec-origin-type: Integer + x-etsi-mec-cardinality: '1' + type: integer + required: + - ipAddress + - port_number + responses: + '200': + description: OK + '204': + description: No Content + '400': + description: 'Bad Request: used to indicate that incorrect parameters were passed to the request.' + content: + application/problem+json: + schema: + $ref: '#/components/schemas/ProblemDetails' + '401': + description: 'Unauthorized: used when the client did not submit credentials.' + content: + application/problem+json: + schema: + $ref: '#/components/schemas/ProblemDetails' + '403': + description: 'Forbidden: operation is not allowed given the current status of the resource.' + content: + application/problem+json: + schema: + $ref: '#/components/schemas/ProblemDetails' + '404': + description: 'Not Found: used when a client provided a URI that cannot be mapped to a valid resource URI.' + content: + application/problem+json: + schema: + $ref: '#/components/schemas/ProblemDetails' + '406': + description: 'Not Acceptable: used to indicate that the server cannot provide the any of the content formats supported by the client.' + content: + application/problem+json: + schema: + $ref: '#/components/schemas/ProblemDetails' + '412': + description: 'Precondition failed: used when a condition has failed during conditional requests, e.g. when using ETags to avoid write conflicts when using PUT' + content: + application/problem+json: + schema: + $ref: '#/components/schemas/ProblemDetails' + '415': + description: 'Unsupported Media Type: used to indicate that the server or the client does not support the content type of the entity body.' + content: + application/problem+json: + schema: + $ref: '#/components/schemas/ProblemDetails' + '422': + description: 'Unprocessable Entity: used to indicate that the server understands the content type of the request entity and that the syntax of the request entity is correct but that the server is unable to process the contained instructions. This error condition can occur if an JSON request body is syntactically correct but semantically incorrect, for example if the target area for the request is considered too large. This error condition can also occur if the capabilities required by the request are not supported.' + content: + application/problem+json: + schema: + $ref: '#/components/schemas/ProblemDetails' + '429': + description: 'Too Many Requests: used when a rate limiter has triggered.' + content: + application/problem+json: + schema: + $ref: '#/components/schemas/ProblemDetails' + parameters: + Query.Location_info: + description: "Comma separated list of locations to identify a cell of a base station or a particular geographical area, formatted as follows for the two cases:\n\n\u2026/uu_unicast_provisioning_info?location_info=ecgi,{String}\n\nWhere the String is made up of 1 to N comma separated ecgi values (reference clause 6.5.5).\n\n\u2026/uu_unicast_provisioning_info?location_info=latitude,{String},longitude,{String}\n\nWhere the two strings are made up of 1 to N comma separated latitude and longitude values respectively (reference clause\_6.5.3), such that the number of latitude and longitude values shall be equal.\n\nExamples of query formats when N=2 locations are provided below:\n\n\u2026/uu_unicast_provisioning_info?location_info=ecgi,1357924680,1357924681\n\n\u2026/uu_unicast_provisioning_info?location_info=latitude,000.000,001.000,longitude,000.000,001.000." + name: location_info + cardinality: '1' + in: query + required: true + x-exportParamName: Query.Location_info + schema: + type: string + Query.Location_info1: + description: "Comma separated list of locations to identify a cell of a base station or a particular geographical area, formatted as follows for the two cases:\n\n\u2026/uu_mbms_provisioning_info?location_info=ecgi,{String}\n\nWhere the String is made up of 1 to N comma separated ecgi values (reference clause 6.5.5).\n\n\u2026/uu_mbms_provisioning_info?location_info=latitude,{String},longitude,{String}\n\nWhere the two strings are made up of 1 to N comma separated latitude and longitude values respectively (reference clause\_6.5.3), such that the number of latitude and longitude values shall be equal.\n\nExamples of query formats when N=2 locations are provided below:\n\n\u2026/uu_mbms_provisioning_info?location_info=ecgi,1357924680,1357924681\n\u2026/uu_mbms_provisioning_info?location_info=latitude,000.000,001.000,longitude,000.000,001.000." + name: location_info + cardinality: '1' + in: query + required: true + x-exportParamName: Query.Location_info1 + schema: + type: string + Query.Location_info2: + description: "Comma separated list of locations to identify a cell of a base station or a particular geographical area, formatted as follows for the two cases:\n\n\u2026/pc5_provisioning_info?location_info=ecgi,{String}\n\nWhere the String is made up of 1 to N comma separated ecgi values (reference clause 6.5.5).\n\n\u2026/pc5_provisioning_info?location_info=latitude,{String},longitude,{String}\n\nWhere the two strings are made up of 1 to N comma separated latitude and longitude values respectively (reference clause\_6.5.3), such that the number of latitude and longitude values shall be equal.\n\nExamples of query formats when N=2 locations are provided below:\n\n\u2026/pc5_provisioning_info?location_info=ecgi,1357924680,1357924681\n\n\u2026/pc5_provisioning_info?location_info=latitude,000.000,001.000,longitude,000.000,001.000." + name: location_info + cardinality: '1' + in: query + required: true + x-exportParamName: Query.Location_info2 + schema: + type: string + Query.Subscription_type: + description: "Query parameter to filter on a specific subscription type. Permitted values:\n\nprov_chg_uu_uni: provisioning information change for V2X communication over Uu unicast \n\nprov_chg_uu_mbms: provisioning information change for V2X communication over Uu MBMS\n\nprov_chg_pc5: provisioning information change for V2X communication over PC5\n\nv2x_msg: V2X interoperability message \n\npred_qos: information on the predicted QoS." + name: subscription_type + cardinality: 0..1 + in: query + required: false + x-exportParamName: Query.Subscription_type + schema: + type: string + diff --git a/Auto_Generated_OAS_Output_Files/gs_mec033v030101p.yaml b/Auto_Generated_OAS_Output_Files/gs_mec033v030101p.yaml new file mode 100644 index 0000000..9dbba45 --- /dev/null +++ b/Auto_Generated_OAS_Output_Files/gs_mec033v030101p.yaml @@ -0,0 +1,757 @@ +openapi: 3.1.0 +jsonSchemaDialect: https://json-schema.org/draft/2020-12/schema +info: + contact: + url: https://forge.etsi.org/rep/mec/gs014-ue-identity-api + title: ETSI GS MEC 014 UE Identity API + description: "The present document focuses on the UE Identity functionality. It describes the related application policy information (including authorization, access control and traffic rule pattern format), information flows, required information and service aggregation patterns. The present document specifies the necessary API, data model and data format, considering existing API(s) if applicable. \n" + license: + name: BSD-3-Clause + url: https://forge.etsi.org/legal-matters + version: 3.1.1 +paths: + /registered_devices: + get: + summary: Retrieve information about all devices with a valid traffic rule association - see clause 5.2.2. + description: The GET method may be used by a service consumer to retrieve information about all devices with a valid traffic rule association. This method is typically used in the "registered devices query" procedure as described in clause 5.2.2. + operationId: registereddevicesGET + tags: + - serviceManagement + parameters: + - $ref: '#/components/parameters/Query.Filter' + - $ref: '#/components/parameters/Query.Fields' + responses: + '200': + description: Upon success, a response body containing the list of registered devices is returned. The response body shall contain a list of resources that match the attribute filter. + content: + application/json: + schema: + type: object + properties: + array(DeviceInfo): + type: array + items: + $ref: '#/components/schemas/array(DeviceInfo)' + '400': + $ref: '#/components/responses/400' + '404': + $ref: '#/components/responses/404' + '403': + $ref: '#/components/responses/403' + post: + summary: "Register a new device - see clause\_5.2.3." + description: The POST method may be used by a service consumer to register a new device. This method is typically used in the "device registration" procedure as described in clause 5.2.3. + operationId: registereddevicesPOST + tags: + - serviceManagement + requestBody: + description: Payload body in the request contains the information associated to the IoT device to be registered. + required: true + content: + application/json: + schema: + type: object + properties: + DeviceInfo: + $ref: '#/components/schemas/DeviceInfo' + responses: + '201': + description: Upon success, the HTTP response shall include a "Location" HTTP header that contains the resource URI of the registered device. + content: + application/json: + schema: + type: object + properties: + DeviceInfo: + $ref: '#/components/schemas/DeviceInfo' + '400': + $ref: '#/components/responses/400' + '404': + $ref: '#/components/responses/404' + '403': + $ref: '#/components/responses/403' + /registered_devices/{registeredDeviceId}: + get: + summary: Retrieve information about a device - see clause 5.2.4. + description: The GET method may be used by a service consumer to retrieve information about a device. This method is typically used in the "device registration query" procedure as described in clause 5.2.4. + operationId: registereddevicesByIdGET + tags: + - serviceManagement + responses: + '200': + description: Upon success, a response body containing information about the registered device is returned. + content: + application/json: + schema: + type: object + properties: + DeviceInfo: + $ref: '#/components/schemas/DeviceInfo' + '400': + $ref: '#/components/responses/400' + '404': + $ref: '#/components/responses/404' + '403': + $ref: '#/components/responses/403' + put: + summary: Update information about a device including its association to a valid traffic rule - see clauses 5.2.5 and 5.4.3. + description: The PUT method may be used by a service consumer to update a device registration including its association to a valid traffic rule. This method is typically used in the "device registration update" procedure as described in clause 5.2.5 and in the "user transport assignment" procedure as described in clause 5.4.3. + operationId: registereddevicesByIdPUT + tags: + - serviceManagement + requestBody: + description: One or more updated attributes that are allowed to be changed are included in the DeviceInfo data structure in the payload body of the request. . + required: true + content: + application/json: + schema: + type: object + properties: + DeviceInfo: + $ref: '#/components/schemas/DeviceInfo' + responses: + '200': + description: Upon success, a response body containing data type describing the updated DeviceInfo is returned. + content: + application/json: + schema: + type: object + properties: + DeviceInfo: + $ref: '#/components/schemas/DeviceInfo' + '400': + $ref: '#/components/responses/400' + '404': + $ref: '#/components/responses/404' + '403': + $ref: '#/components/responses/403' + '412': + $ref: '#/components/responses/412' + delete: + summary: "Deregister a device - see clause\_5.2.6." + description: The DELETE method may be used by a service consumer to deregister a device. This method is typically used in the "device deregistration" procedure as described in clause 5.2.6. + operationId: registereddevicesByIdDELETE + tags: + - serviceManagement + responses: + '204': + $ref: '#/components/responses/204' + '404': + $ref: '#/components/responses/404' + '403': + $ref: '#/components/responses/403' + /registered_iot_platforms: + get: + summary: Retrieve information about all IoT platforms - see clause 5.3.2. + description: "The GET method may be used by an authorized service consumer to retrieve the information of all currently registered IoT platforms. This method is typically used in the \"registered IoT platforms query\" procedure as described in clause\_5.3.2." + operationId: registerediotplatformsGET + tags: + - serviceManagement + parameters: + - $ref: '#/components/parameters/Query.Fields1' + responses: + '200': + description: Upon success, a response body containing the list of registered IoT platforms is returned. + content: + application/json: + schema: + type: object + properties: + array(IotPlatformInfo): + type: array + items: + $ref: '#/components/schemas/array(IotPlatformInfo)' + '400': + $ref: '#/components/responses/400' + '404': + $ref: '#/components/responses/404' + '403': + $ref: '#/components/responses/403' + post: + summary: "Register a IoT platform - see clause\_5.3.4." + description: The POST method may be used by a service consumer to register a new IoT platform. This method is typically used in the "IoT platform registration" procedure as described in clause 5.3.4. + operationId: registerediotplatformsPOST + tags: + - serviceManagement + requestBody: + description: Payload body in the request contains the information associated to the IoT platform to be registered. + required: true + content: + application/json: + schema: + type: object + properties: + IoTPlatformInfo: + $ref: '#/components/schemas/IoTPlatformInfo' + responses: + '201': + description: Upon success, the HTTP response shall include a "Location" HTTP header that contains the resource URI of the registered IoT platform. + content: + application/json: + schema: + type: object + properties: + IoTPlatformInfo: + $ref: '#/components/schemas/IoTPlatformInfo' + '400': + $ref: '#/components/responses/400' + '404': + $ref: '#/components/responses/404' + '403': + $ref: '#/components/responses/403' + /registered_iot_platforms/{registeredIotPlatformId}: + get: + summary: Discover native services and obtain information about user transports provided by a IoT platform - see clauses 5.3.3 and 5.4.2. + description: 'The GET method may be used by a service consumer to obtain information about a IoT platform. This method is typically used in the "IoT platform information request" procedure as described in clause 5.3.3 and in the "user transport query" procedure as described in clause 5.4.2. ' + operationId: registerediotplatformsByIdGET + tags: + - serviceManagement + parameters: + - $ref: '#/components/parameters/Query.Fields2' + responses: + '200': + description: Upon success, a response body containing information about the registered IoT platform is returned. + content: + application/json: + schema: + type: object + properties: + IotPlatformInfo: + $ref: '#/components/schemas/IotPlatformInfo' + '400': + $ref: '#/components/responses/400' + '404': + $ref: '#/components/responses/404' + '403': + $ref: '#/components/responses/403' + put: + summary: Update information about a IoT platform - see clause 5.3.5. + description: The PUT method may be used by a service consumer to update a IoT platform registration. This method is typically used in the "IoT platform update" procedure as described in clause 5.3.5. + operationId: registerediotplatformsByIdPUT + tags: + - serviceManagement + requestBody: + description: One or more updated attributes that are allowed to be changed are included in the IotPlatformInfo data structure in the payload body of the request. . + required: true + content: + application/json: + schema: + type: object + properties: + IotPlatformInfo: + $ref: '#/components/schemas/IotPlatformInfo' + responses: + '200': + description: Upon success, a response body containing data type describing the updated IotPlatformInfo is returned. + content: + application/json: + schema: + type: object + properties: + IotPlatformInfo: + $ref: '#/components/schemas/IotPlatformInfo' + '400': + $ref: '#/components/responses/400' + '404': + $ref: '#/components/responses/404' + '403': + $ref: '#/components/responses/403' + '412': + $ref: '#/components/responses/412' + delete: + summary: Deregister a IoT platform - see clause 5.3.6. + description: The DELETE method may be used by a service consumer to deregister a IoT platform. This method is typically used in the "IoT platform deregistration" procedure as described in clause 5.3.6. + operationId: registerediotplatformsByIdDELETE + tags: + - serviceManagement + responses: + '204': + $ref: '#/components/responses/204' + '404': + $ref: '#/components/responses/404' + '403': + $ref: '#/components/responses/403' +components: + schemas: + ProblemDetails: + type: object + properties: + type: + type: string + format: uri + description: A URI reference according to IETF RFC 3986 that identifies the problem type + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: URI + title: + type: string + description: A short, human-readable summary of the problem type + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: String + status: + type: integer + format: uint32 + description: The HTTP status code for this occurrence of the problem + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: Uint32 + detail: + type: string + description: A human-readable explanation specific to this occurrence of the problem + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: String + instance: + type: string + format: uri + description: A URI reference that identifies the specific occurrence of the problem + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: URI + DeviceInfo: + x-etsi-ref: 6.2.2 + type: object + properties: + deviceAuthenticationInfo: + description: Information needed for secondary authentication of the IoT device to the data network - see ETSI TS 129 561 [i.4] and ETSI TS 129 061 [i.5] for 5G and LTE procedures, respectively. This attribute is implementation dependent and should be logically linked to the identifiers of the IoT device listed hereafter. + x-etsi-mec-origin-type: Not_specified + x-etsi-mec-cardinality: '1' + type: object + deviceMetadata: + description: 'Additional information about the IoT device. This attribute is implementation dependent and may be expressed as an array of keyvalue pairs. ' + x-etsi-mec-origin-type: Not_specified + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + $ref: '#/components/schemas/Not_specified' + gpsi: + description: GPSI of the IoT device if 5G-enabled (see note 1). + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + pei: + description: PEI of the IoT device if 5G-enabled (see note 1). + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + supi: + description: SUPI of the IoT device if 5G-enabled (see note 1). + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + msisdn: + description: MSISDN of the IoT device if LTE-enabled (see note 1). + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + imei: + description: IMEI of the IoT device if LTE-enabled (see note 1). + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + imsi: + description: IMSI of the IoT device if LTE-enabled (see note 1). + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + iccid: + description: ICCID of the IoT device (see note 1). + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + deviceId: + description: Human-readable identifier of the IoT device. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + requestedMecTrafficRule: + description: "MEC traffic rules the IoT device is requested to be associated to (see note 2). The data type definition is as per ETSI GS\_MEC 010-2 [i.6]." + x-etsi-mec-origin-type: TrafficRuleDescriptor + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + $ref: '#/components/schemas/TrafficRuleDescriptor' + requestedIotPlatformId: + description: IoT platform to which the IoT device is requested to be associated to (see note 2). + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + requestedUserTransportId: + description: User transport to which the IoT device is requested to be associated to (see note 2). + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + deviceSpecificMessageFormats: + $ref: '#/components/schemas/DeviceSpecificMessageFormats' + downlinkInfo: + $ref: '#/components/schemas/DownlinkInfo' + clientCertificate: + description: Client-side SSL/TLS certificate to be used by the MEC IoTS to interact with the user transport provided by the associated IoT platform in case the MEC IoTS acts on behalf of the IoT device. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + enabled: + description: Indication whether the IoT device has a valid associated traffic rule (TRUE) or not (FALSE). See note 3. + x-etsi-mec-origin-type: Boolean + x-etsi-mec-cardinality: '1' + type: boolean + required: + - deviceAuthenticationInfo + - deviceId + - enabled + x-etsi-notes: "NOTE 1:\tAt least one attribute among gpsi, pei, supi, msisdn, imei, imsi, and iccid should be provided. Sufficient security measures shall be put in place when any attribute among PEI, SUPI, IMEI, and IMSI is disclosed over the API.\nNOTE 2:\tUntil a valid traffic rule is not provided, the device will not be able to use the IoTS. A valid traffic rule is provided by one of the following options:\nthe requestedMecTrafficRule attribute;\nthe requestedIotPlatformId attribute when the IoT platform offers only one user transport;\nthe combination of requestedIotPlatformId and requestedUserTransportId.\nNOTE 3:\tEnabled is a pseudo-attribute which needs to be maintained by the IoTS based on the presence or not of a valid traffic rule associated to the device. It cannot be set directly by the service consumer." + IotPlatformInfo: + x-etsi-ref: 6.2.3 + type: object + properties: + iotPlatformId: + description: Identifier of the IoT platform. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + userTransportInfo: + description: Information about the user transport(s) provided by the IoT platform. + x-etsi-mec-origin-type: MBTransportInfo + x-etsi-mec-cardinality: 1..N + type: array + minItems: 1 + items: + $ref: '#/components/schemas/MBTransportInfo' + customServicesTransportInfo: + description: Transport enabling access to vendor-specific services provided by the IoT platform. The data type definition is as per ETSI GS MEC 011 [i.2]. + x-etsi-mec-origin-type: TransportInfo + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + $ref: '#/components/schemas/TransportInfo' + enabled: + description: Indication whether the IoT platform is capable of providing user transports and vendor-specific services (TRUE) or not (FALSE). + x-etsi-mec-origin-type: Boolean + x-etsi-mec-cardinality: '1' + type: boolean + required: + - iotPlatformId + - userTransportInfo + - enabled + MBTransportInfo: + x-etsi-ref: 6.3.2 + type: object + properties: + id: + description: "The identifier of this transport as per ETSI GS\_MEC\_011 [i.2]." + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + name: + description: "The name of this transport as per ETSI GS\_MEC\_011\_[i.2]." + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + description: + description: "Human-readable description of this transport as per ETSI GS\_MEC 011 [i.2]." + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + type: + # description': Type of the transport. The attribute shall be set to "MB_TOPIC_BASED." + $ref: '#/components/schemas/TransportType' + # x-etsi-mec-origin-type': TransportType + # x-etsi-mec-cardinality': '1' + protocol: + description: The name of the protocol used. Being the transport of MB_TOPIC_BASED type, this attribute should be typically set to "MQTT" or "AMQP." + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + version: + description: "The version of the protocol used as per ETSI GS\_MEC\_011\_[i.2]." + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + endpoint: + # description': Information about the endpoint to access the transport as per ETSI GS MEC 011 [i.2]. + $ref: '#/components/schemas/EndPointInfo' + # x-etsi-mec-origin-type': EndPointInfo + # x-etsi-mec-cardinality': '1' + security: + # description': Information about the security used by the transport as per ETSI GS MEC 011 [i.2]. + $ref: '#/components/schemas/SecurityInfo' + # x-etsi-mec-origin-type': SecurityInfo + # x-etsi-mec-cardinality': '1' + implSpecificInfo: + $ref: '#/components/schemas/ImplSpecificInfo' + required: + - id + - name + - type + - protocol + - version + - endpoint + - security + - implSpecificInfo + EventMsg: + x-etsi-ref: 6.3.3 + type: object + properties: + eventTopic: + description: 'Topic where the message containing application-specific information should be published. ' + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + selectedSerializer: + # description': Type of serializer to be used for the topic as per ETSI GS MEC 011 [i.2]. + $ref: '#/components/schemas/SerializerType' + # x-etsi-mec-origin-type': SerializerType + # x-etsi-mec-cardinality': '1' + includeDeviceAddr: + description: Indication whether to include the IP address of the IoT device (TRUE) or not (FALSE). + x-etsi-mec-origin-type: Boolean + x-etsi-mec-cardinality: 0..1 + type: boolean + includeDeviceMetadata: + description: Indication whether to include the metadata about the IoT device (TRUE) or not (FALSE). + x-etsi-mec-origin-type: Boolean + x-etsi-mec-cardinality: 0..1 + type: boolean + includePei: + description: Indication whether to include the PEI of the IoT device (TRUE) or not (FALSE). + x-etsi-mec-origin-type: Boolean + x-etsi-mec-cardinality: 0..1 + type: boolean + includeSupi: + description: Indication whether to include the SUPI of the IoT device (TRUE) or not (FALSE). + x-etsi-mec-origin-type: Boolean + x-etsi-mec-cardinality: 0..1 + type: boolean + includeImei: + description: Indication whether to include the IMEI of the IoT device (TRUE) or not (FALSE). + x-etsi-mec-origin-type: Boolean + x-etsi-mec-cardinality: 0..1 + type: boolean + includeImsi: + description: Indication whether to include the IMSI of the IoT device (TRUE) or not (FALSE). + x-etsi-mec-origin-type: Boolean + x-etsi-mec-cardinality: 0..1 + type: boolean + includeIccid: + description: Indication whether to include the ICCID of the IoT device (TRUE) or not (FALSE). + x-etsi-mec-origin-type: Boolean + x-etsi-mec-cardinality: 0..1 + type: boolean + includeDeviceId: + description: Indication whether to include the human-readable identified of the IoT device (TRUE) or not (FALSE). + x-etsi-mec-origin-type: Boolean + x-etsi-mec-cardinality: 0..1 + type: boolean + required: + - eventTopic + - selectedSerializer + UplinkMsg: + x-etsi-ref: 6.3.4 + type: object + properties: + uplinkTopic: + description: Topic where the message containing the data generated by the IoT device(s) should be published, in order to be consumed by the end IoT application(s). + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + selectedSerializer: + # description': Type of serializer to be used for the topic as per ETSI GS MEC 011 [i.2]. + $ref: '#/components/schemas/SerializerType' + # x-etsi-mec-origin-type': SerializerType + # x-etsi-mec-cardinality': '1' + includeDevicePort: + description: Indication whether to include the UDP port of the remote IoT device (TRUE) or not (FALSE). + x-etsi-mec-origin-type: Boolean + x-etsi-mec-cardinality: 0..1 + type: boolean + includeDeviceAddr: + description: Indication whether to include the IP address of the IoT device (TRUE) or not (FALSE). + x-etsi-mec-origin-type: Boolean + x-etsi-mec-cardinality: 0..1 + type: boolean + includeDeviceMetadata: + description: Indication whether to include the metadata about the IoT device (TRUE) or not (FALSE). + x-etsi-mec-origin-type: Boolean + x-etsi-mec-cardinality: 0..1 + type: boolean + includePei: + description: Indication whether to include the PEI of the IoT device (TRUE) or not (FALSE). + x-etsi-mec-origin-type: Boolean + x-etsi-mec-cardinality: 0..1 + type: boolean + includeSupi: + description: Indication whether to include the SUPI of the IoT device (TRUE) or not (FALSE). + x-etsi-mec-origin-type: Boolean + x-etsi-mec-cardinality: 0..1 + type: boolean + includeImei: + description: Indication whether to include the IMEI of the IoT device (TRUE) or not (FALSE). + x-etsi-mec-origin-type: Boolean + x-etsi-mec-cardinality: 0..1 + type: boolean + includeImsi: + description: Indication whether to include the IMSI of the IoT device (TRUE) or not (FALSE). + x-etsi-mec-origin-type: Boolean + x-etsi-mec-cardinality: 0..1 + type: boolean + includeIccid: + description: Indication whether to include the ICCID of the IoT device (TRUE) or not (FALSE). + x-etsi-mec-origin-type: Boolean + x-etsi-mec-cardinality: 0..1 + type: boolean + includeDeviceId: + description: Indication whether to include the human-readable identified of the IoT device (TRUE) or not (FALSE). + x-etsi-mec-origin-type: Boolean + x-etsi-mec-cardinality: 0..1 + type: boolean + required: + - uplinkTopic + - selectedSerializer + DeviceSpecificMessageFormats: + description: Format of the messages to be published by the MEC IoTS on the user transport provided by the associated IoT platform in case the MEC IoTS acts on behalf of the IoT device. + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: 0..1 + type: object + properties: + eventMsgFormat: + # description': Event message format configuration. + $ref: '#/components/schemas/EventMsg' + # x-etsi-mec-origin-type': EventMsg + # x-etsi-mec-cardinality': 0..1 + uplinkMsgFormat: + # description': Uplink message format configuration. + $ref: '#/components/schemas/UplinkMsg' + # x-etsi-mec-origin-type': UplinkMsg + # x-etsi-mec-cardinality': 0..1 + DownlinkInfo: + description: Downlink communication configuration of the user transport provided by the associated IoT platform in case the MEC IoTS acts on behalf of the IoT device. + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: 0..1 + type: object + properties: + downlinkTopic: + description: Topic associated to the IoT device. This topic should be used by an end IoT application to send downlink data to the IoT device. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + devicePort: + description: UDP port to be used by the MEC IoTS for the outgoing downlink packets towards the IoT device. In case a default value is used, this attribute is optional. + x-etsi-mec-origin-type: Int + x-etsi-mec-cardinality: 0..1 + type: integer + ImplSpecificInfo: + description: Additional implementation specific details of the transport. + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: '1' + type: object + properties: + eventTopics: + description: Topics used to publish events related to the established session between the IoT device(s) and the end IoT application(s) on the user transport. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + type: string + uplinkTopics: + description: Topics used to publish data generated by the IoT device(s) on the user transport, in order to be consumed by the end IoT application(s). + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + type: string + downlinkTopics: + description: Topics used to publish data generated by the IoT applications(s) on the user transport, in order to be consumed by the end IoT device(s). + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + type: string + responses: + '200': + description: OK + '400': + description: 'Bad Request: used to indicate that incorrect parameters were passed to the request.' + content: + application/problem+json: + schema: + $ref: '#/components/schemas/ProblemDetails' + '403': + description: 'Forbidden: operation is not allowed given the current status of the resource.' + content: + application/problem+json: + schema: + $ref: '#/components/schemas/ProblemDetails' + '404': + description: 'Not Found: used when a client provided a URI that cannot be mapped to a valid resource URI.' + content: + application/problem+json: + schema: + $ref: '#/components/schemas/ProblemDetails' + '412': + description: 'Precondition failed: used when a condition has failed during conditional requests, e.g. when using ETags to avoid write conflicts when using PUT' + content: + application/problem+json: + schema: + $ref: '#/components/schemas/ProblemDetails' + parameters: + Query.Filter: + description: 'Attribute-based filtering parameters according to ETSI GS MEC 009 [i.1]. The API producer shall support receiving the following filtering parameters as part of the URI query string: "(eq,enabled,TRUE)".' + name: filter + cardinality: 0..1 + in: query + required: false + x-exportParamName: Query.Filter + schema: + type: string + Query.Fields: + description: 'The list may contain one or more of the following attributes from the DeviceInfo data type: + + deviceMetadata; + + gpsi; + + msisdn; + + deviceId; + + requestedMecTrafficRule; + + requestedIotPlatformId; + + requestedUserTransportId.' + name: fields + cardinality: 0..N + in: query + required: false + x-exportParamName: Query.Fields + schema: + $ref: '#/components/schemas/array(String)' + Query.Fields1: + description: 'The list shall contain the following attributes from the IotPlatformInfo data type: + + iotPlatformId + + enabled.' + name: fields + cardinality: 0..N + in: query + required: false + x-exportParamName: Query.Fields1 + schema: + $ref: '#/components/schemas/array(String)' + Query.Fields2: + description: 'The list may contain one or more of the following attributes from the IotPlatformInfo data type: + + userTransportInfo; + + customServiceTransportInfo.' + name: fields + cardinality: 0..N + in: query + required: false + x-exportParamName: Query.Fields2 + schema: + $ref: '#/components/schemas/array(String)' + diff --git a/Auto_Generated_OAS_Output_Files/gs_mec040v030101p.yaml b/Auto_Generated_OAS_Output_Files/gs_mec040v030101p.yaml new file mode 100644 index 0000000..bfcff2b --- /dev/null +++ b/Auto_Generated_OAS_Output_Files/gs_mec040v030101p.yaml @@ -0,0 +1,354 @@ +openapi: 3.1.0 +jsonSchemaDialect: https://json-schema.org/draft/2020-12/schema +info: + contact: + url: https://forge.etsi.org/rep/mec/gs014-ue-identity-api + title: ETSI GS MEC 014 UE Identity API + description: "The present document focuses on the UE Identity functionality. It describes the related application policy information (including authorization, access control and traffic rule pattern format), information flows, required information and service aggregation patterns. The present document specifies the necessary API, data model and data format, considering existing API(s) if applicable. \n" + license: + name: BSD-3-Clause + url: https://forge.etsi.org/legal-matters + version: 3.1.1 +paths: + /fed_resources/system_info: + get: + summary: Retrieve a list of system_info resources (see clause 6 for data model) of federation members. + description: The GET method retrieves the information of a list of system_info resources of federation members. This method is typically used in the sequence of "MEC system discovery" as described in clause 5.2.2.2. The method shall comply with the URI query parameters, request and response data structures, and response codes, as specified in Tables 7.3.3.1-1 and 7.3.3.1-2. + operationId: systeminfoGET + tags: + - serviceManagement + responses: + '200': + description: It is used to indicate that the query for retrieving system_info resource(s) is successful. Response body containing one or multiple system_info resources shall be returned. + content: + application/json: + schema: + type: object + properties: + SystemInfo: + $ref: '#/components/schemas/SystemInfo' + '400': + $ref: '#/components/responses/400' + '401': + $ref: '#/components/responses/401' + '403': + $ref: '#/components/responses/403' + '404': + $ref: '#/components/responses/404' + post: + summary: Create new system_info resource for a given MEC system. + description: "The POST method creates the information of system_info resources to the MEC federator. This method is typically used in the sequence of \"Registration of MEC system to the federation\" as described in clause 5.2.2.1. The method shall comply with the URI query parameters, request and response data structures, and response codes, as specified in Tables\_7.3.3.4-1 and 7.3.3.4-2." + operationId: systeminfoPOST + tags: + - serviceManagement + requestBody: + description: Entity body in the request contains SystemInfo to be created. The attribute "systemId" shall be absent. + required: true + content: + application/json: + schema: + type: object + properties: + SystemInfo: + $ref: '#/components/schemas/SystemInfo' + responses: + '201': + description: 'It is used to indicate that the system_info resource is successfully created. + + + The HTTP response includes a "Location" HTTP header that contains the URI of the created resource.' + content: + application/json: + schema: + type: object + properties: + SystemInfo: + $ref: '#/components/schemas/SystemInfo' + '400': + $ref: '#/components/responses/400' + '401': + $ref: '#/components/responses/401' + '403': + $ref: '#/components/responses/403' + '404': + $ref: '#/components/responses/404' + /fed_resources/system_info/{systemId}: + get: + summary: Retrieve the system_info resource of the federation member with systemId as its system identifier. + description: The GET method retrieves the system_info resource information. This method is typically used in the sequence of "MEC system discovery" as described in clause 5.2.2.2. The method shall comply with the URI query parameters, request and response data structures, and response codes, as specified in Tables 7.4.3.1-1 and 7.4.3.1-2. + operationId: systeminfoByIdGET + tags: + - serviceManagement + responses: + '200': + description: It is used to indicate that the query for retrieving system_info resource is successful. Response body containing one system_info resource shall be returned. + content: + application/json: + schema: + type: object + properties: + SystemInfo: + $ref: '#/components/schemas/SystemInfo' + '400': + $ref: '#/components/responses/400' + '401': + $ref: '#/components/responses/401' + '403': + $ref: '#/components/responses/403' + '404': + $ref: '#/components/responses/404' + patch: + summary: Update the system_info resource for a given MEC system. + description: The PATCH method updates the information of system_info resources stored in the MEC federator through previous registration. This method is typically used in the sequence of "Update of MEC system to the federation" as described in clause 5.2.2.2. The method shall comply with the URI query parameters, request and response data structures, and response codes, as specified in Tables 7.4.3.3-1 and 7.4.3.3-2. + operationId: systeminfoByIdPATCH + tags: + - serviceManagement + requestBody: + description: It contains attributes to be update. + required: true + content: + application/json: + schema: + type: object + properties: + SystemInfoUpdate: + $ref: '#/components/schemas/SystemInfoUpdate' + responses: + '200': + description: It is used to indicate that the system_info resource is successfully updated. + content: + application/json: + schema: + type: object + properties: + SystemInfo: + $ref: '#/components/schemas/SystemInfo' + '400': + $ref: '#/components/responses/400' + '401': + $ref: '#/components/responses/401' + '403': + $ref: '#/components/responses/403' + '404': + $ref: '#/components/responses/404' + delete: + summary: Delete the system_info resource for a given MEC system. + description: The DELETE method deletes the information of system_info resources stored in the MEF. This method is typically used in the sequence of "Deregistration of MEC system to the federation" as described in clause 5.2.2.1.1. The method shall comply with the URI query parameters, request and response data structures, and response codes, as specified in Tables 7.4.3.5-1 and 7.4.3.5-2. + operationId: systeminfoByIdDELETE + tags: + - serviceManagement + responses: + '204': + $ref: '#/components/responses/204' + '400': + $ref: '#/components/responses/400' + '401': + $ref: '#/components/responses/401' + '403': + $ref: '#/components/responses/403' + '404': + $ref: '#/components/responses/404' +components: + schemas: + ProblemDetails: + type: object + properties: + type: + type: string + format: uri + description: A URI reference according to IETF RFC 3986 that identifies the problem type + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: URI + title: + type: string + description: A short, human-readable summary of the problem type + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: String + status: + type: integer + format: uint32 + description: The HTTP status code for this occurrence of the problem + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: Uint32 + detail: + type: string + description: A human-readable explanation specific to this occurrence of the problem + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: String + instance: + type: string + format: uri + description: A URI reference that identifies the specific occurrence of the problem + x-etsi-mec-cardinality: 0..1 + x-etsi-mec-origin-type: URI + SystemInfo: + x-etsi-ref: 6.2.2 + type: object + properties: + systemId: + description: 'Identifier of the MEC system. For the uniqueness of the identifier across the federated MEC systems, UUID format [i.9] is recommended. + + + Shall be absent in POST request, and present otherwise.' + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + systemName: + description: The name of the MEC system. This is how the MEC system identifies other MEC systems + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + systemProvider: + description: Provider of the MEC system. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + required: + - systemId + - systemName + - systemProvider + SystemInfoUpdate: + x-etsi-ref: 6.2.3 + type: object + properties: + systemName: + description: The name of the MEC system. This is how the MEC system identifies other MEC systems. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..1 + type: string + endpoint: + # description': Endpoint information (e.g. URI, FQDN, IP address) of MEC federator. + $ref: '#/components/schemas/EndPointInfo' + # x-etsi-mec-origin-type': EndPointInfo + # x-etsi-mec-cardinality': 0..1 + x-etsi-notes: "NOTE:\tAt least one attribute shall exist." + SystemUpdateNotificationSubscription: + x-etsi-ref: 6.3.2 + type: object + properties: + subscriptionType: + description: Shall be set to "SystemUpdateNotificationSubscription". + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + callbackReference: + description: URI selected by the MEC orchestrator to receive notifications on the subscribed MEC system information updates in the MEC federation. This shall be included in both the request and the response. + x-etsi-mec-origin-type: Uri + x-etsi-mec-cardinality: '1' + type: string + format: uri + _links: + $ref: '#/components/schemas/_links' + systemId: + description: Identifier(s) to uniquely specify the target MEC system(s) for the subscription. If absent, the subscription should include all MEC systems in the MEC federation. + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: 0..N + type: array + minItems: 0 + items: + type: string + expiryDeadline: + # description': The expiration time of the subscription determined by the MEC Federation Enablement Service. + $ref: '#/components/schemas/TimeStamp' + # x-etsi-mec-origin-type': TimeStamp + # x-etsi-mec-cardinality': 0..1 + required: + - subscriptionType + - callbackReference + SystemUpdateNotification: + x-etsi-ref: 6.4.2 + type: object + properties: + notificationType: + description: Shall be set to "SystemUpdateNotification". + x-etsi-mec-origin-type: String + x-etsi-mec-cardinality: '1' + type: string + updatedSystemInfo: + description: Updated information of the MEC system(s) in the MEC federation. + x-etsi-mec-origin-type: SystemInfo + x-etsi-mec-cardinality: 1..N + type: array + minItems: 1 + items: + $ref: '#/components/schemas/SystemInfo' + _links: + $ref: '#/components/schemas/_links1' + required: + - notificationType + - updatedSystemInfo + - _links + TimeStamp: + x-etsi-ref: 6.5.2 + type: object + properties: + seconds: + description: The seconds part of the time. Time is defined as Unixtime since January 1, 1970, 00:00:00 UTC. + x-etsi-mec-origin-type: Uint32 + x-etsi-mec-cardinality: '1' + type: integer + format: uint32 + nanoSeconds: + description: The nanoseconds part of the time. Time is defined as Unix-time since January 1, 1970, 00:00:00 UTC. + x-etsi-mec-origin-type: Uint32 + x-etsi-mec-cardinality: '1' + type: integer + format: uint32 + required: + - seconds + - nanoSeconds + _links: + description: Object containing hyperlinks related to the resource. This shall only be included in the HTTP responses. + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: 0..1 + type: object + properties: + self: + # description': Self-referring URI. The URI shall be unique within the MEC Federation Enablement API as it acts as an ID for the subscription (SubscriptionId). + $ref: '#/components/schemas/LinkType' + # x-etsi-mec-origin-type': LinkType + # x-etsi-mec-cardinality': '1' + required: + - self + _links1: + description: Object containing hyperlinks related to the resource. + x-etsi-mec-origin-type: Structure (inlined) + x-etsi-mec-cardinality: '1' + type: object + properties: + subscription: + # description': A link to the related subscription. + $ref: '#/components/schemas/LinkType' + # x-etsi-mec-origin-type': LinkType + # x-etsi-mec-cardinality': '1' + required: + - subscription + responses: + '200': + description: OK + '400': + description: 'Bad Request: used to indicate that incorrect parameters were passed to the request.' + content: + application/problem+json: + schema: + $ref: '#/components/schemas/ProblemDetails' + '403': + description: 'Forbidden: operation is not allowed given the current status of the resource.' + content: + application/problem+json: + schema: + $ref: '#/components/schemas/ProblemDetails' + '404': + description: 'Not Found: used when a client provided a URI that cannot be mapped to a valid resource URI.' + content: + application/problem+json: + schema: + $ref: '#/components/schemas/ProblemDetails' + '412': + description: 'Precondition failed: used when a condition has failed during conditional requests, e.g. when using ETags to avoid write conflicts when using PUT' + content: + application/problem+json: + schema: + $ref: '#/components/schemas/ProblemDetails' + parameters: {} + -- GitLab