A.2 Eees_EECRegistration
24.5583GPPEnabling Edge ApplicationsProtocol specificationRelease 17TS
openapi: 3.0.0
info:
title: Eees_EECRegistration
version: "1.0.1"
description: |
API for EEC registration.
© 2022, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC).
All rights reserved.
externalDocs:
description: >
3GPP TS 24.558 V17.1.0 Enabling Edge Applications; Protocol specification.
url: ‘https://www.3gpp.org/ftp/Specs/archive/24_series/24.558/’
security:
– {}
– oAuth2ClientCredentials: []
servers:
– url: ‘{apiRoot}/eees-eecregistration/v1’
variables:
apiRoot:
default: https://example.com
description: apiRoot as defined in clause 6.1 of 3GPP TS 24.558
paths:
/registrations:
post:
description: Create a new EEC registration at the EES.
requestBody:
required: true
content:
application/json:
schema:
$ref: ‘#/components/schemas/EECRegistration’
responses:
‘201’:
description: Created (EEC information is registered successfully at EES).
content:
application/json:
schema:
$ref: ‘#/components/schemas/EECRegistration’
‘307’:
$ref: ‘TS29122_CommonData.yaml#/components/responses/307’
‘308’:
$ref: ‘TS29122_CommonData.yaml#/components/responses/308’
‘400’:
$ref: ‘TS29122_CommonData.yaml#/components/responses/400’
‘401’:
$ref: ‘TS29122_CommonData.yaml#/components/responses/401’
‘403’:
$ref: ‘TS29122_CommonData.yaml#/components/responses/403’
‘404’:
$ref: ‘TS29122_CommonData.yaml#/components/responses/404’
‘411’:
$ref: ‘TS29122_CommonData.yaml#/components/responses/411’
‘413’:
$ref: ‘TS29122_CommonData.yaml#/components/responses/413’
‘415’:
$ref: ‘TS29122_CommonData.yaml#/components/responses/415’
‘429’:
$ref: ‘TS29122_CommonData.yaml#/components/responses/429’
‘500’:
$ref: ‘TS29122_CommonData.yaml#/components/responses/500’
‘503’:
$ref: ‘TS29122_CommonData.yaml#/components/responses/503’
default:
$ref: ‘TS29122_CommonData.yaml#/components/responses/default’
/registrations/{registrationId}:
put:
description: Update an existing EEC registration a the EES.
parameters:
– name: registrationId
in: path
description: Identifies an individual EEC registration
required: true
schema:
type: string
requestBody:
description: Parameters to replace the existing registration
required: true
content:
application/json:
schema:
$ref: ‘#/components/schemas/EECRegistration’
responses:
‘200’:
description: OK (An individual EEC registration resource updated successfully).
content:
application/json:
schema:
$ref: ‘#/components/schemas/EECRegistration’
‘204’:
description: >
No Content (An individual EEC registration resource updated successfully).
‘307’:
$ref: ‘TS29122_CommonData.yaml#/components/responses/307’
‘308’:
$ref: ‘TS29122_CommonData.yaml#/components/responses/308’
‘400’:
$ref: ‘TS29122_CommonData.yaml#/components/responses/400’
‘401’:
$ref: ‘TS29122_CommonData.yaml#/components/responses/401’
‘403’:
$ref: ‘TS29122_CommonData.yaml#/components/responses/403’
‘404’:
$ref: ‘TS29122_CommonData.yaml#/components/responses/404’
‘411’:
$ref: ‘TS29122_CommonData.yaml#/components/responses/411’
‘413’:
$ref: ‘TS29122_CommonData.yaml#/components/responses/413’
‘415’:
$ref: ‘TS29122_CommonData.yaml#/components/responses/415’
‘429’:
$ref: ‘TS29122_CommonData.yaml#/components/responses/429’
‘500’:
$ref: ‘TS29122_CommonData.yaml#/components/responses/500’
‘503’:
$ref: ‘TS29122_CommonData.yaml#/components/responses/503’
default:
$ref: ‘TS29122_CommonData.yaml#/components/responses/default’
delete:
description: Remove an existing ECC registration at EES.
parameters:
– name: registrationId
in: path
description: Identifies an individual EEC registration
required: true
schema:
type: string
responses:
‘204’:
description: >
No Content (An individual EEC registration resource deleted successfully).
‘307’:
$ref: ‘TS29122_CommonData.yaml#/components/responses/307’
‘308’:
$ref: ‘TS29122_CommonData.yaml#/components/responses/308’
‘400’:
$ref: ‘TS29122_CommonData.yaml#/components/responses/400’
‘401’:
$ref: ‘TS29122_CommonData.yaml#/components/responses/401’
‘403’:
$ref: ‘TS29122_CommonData.yaml#/components/responses/403’
‘404’:
$ref: ‘TS29122_CommonData.yaml#/components/responses/404’
‘429’:
$ref: ‘TS29122_CommonData.yaml#/components/responses/429’
‘500’:
$ref: ‘TS29122_CommonData.yaml#/components/responses/500’
‘503’:
$ref: ‘TS29122_CommonData.yaml#/components/responses/503’
default:
$ref: ‘TS29122_CommonData.yaml#/components/responses/default’
patch:
description: partially update an existing EEC registration a the EES.
parameters:
– name: registrationId
in: path
description: Identifies an individual EEC registration
required: true
schema:
type: string
requestBody:
description: Parameters to replace the existing registration
required: true
content:
application/json:
schema:
$ref: ‘#/components/schemas/EECRegistrationPatch’
responses:
‘200’:
description: OK (An individual EEC registration resource updated successfully).
content:
application/json:
schema:
$ref: ‘#/components/schemas/EECRegistration’
‘204’:
description: >
No Content (An individual EEC registration resource updated successfully).
‘307’:
$ref: ‘TS29122_CommonData.yaml#/components/responses/307’
‘308’:
$ref: ‘TS29122_CommonData.yaml#/components/responses/308’
‘400’:
$ref: ‘TS29122_CommonData.yaml#/components/responses/400’
‘401’:
$ref: ‘TS29122_CommonData.yaml#/components/responses/401’
‘403’:
$ref: ‘TS29122_CommonData.yaml#/components/responses/403’
‘404’:
$ref: ‘TS29122_CommonData.yaml#/components/responses/404’
‘411’:
$ref: ‘TS29122_CommonData.yaml#/components/responses/411’
‘413’:
$ref: ‘TS29122_CommonData.yaml#/components/responses/413’
‘415’:
$ref: ‘TS29122_CommonData.yaml#/components/responses/415’
‘429’:
$ref: ‘TS29122_CommonData.yaml#/components/responses/429’
‘500’:
$ref: ‘TS29122_CommonData.yaml#/components/responses/500’
‘503’:
$ref: ‘TS29122_CommonData.yaml#/components/responses/503’
default:
$ref: ‘TS29122_CommonData.yaml#/components/responses/default’
components:
securitySchemes:
oAuth2ClientCredentials:
type: oauth2
flows:
clientCredentials:
tokenUrl: ‘{tokenUrl}’
scopes: {}
schemas:
EECRegistration:
description: Describes the parameters to perform EEC Registration related operations.
type: object
properties:
eecId:
type: string
description: Represents a unique identifier of the EEC.
ueId:
$ref: ‘TS29571_CommonData.yaml#/components/schemas/Gpsi’
acProfs:
type: array
items:
$ref: ‘#/components/schemas/ACProfile’
description: Profiles of ACs for which the EEC provides edge enabling services.
expTime:
$ref: ‘TS29122_CommonData.yaml#/components/schemas/DateTime’
eecSvcContSupp:
type: array
items:
$ref: ‘TS29558_Eecs_EESRegistration.yaml#/components/schemas/ACRScenario’
description: Profiles of ACs for which the EEC provides edge enabling services.
eecCntxId:
type: string
description: Identifier of the EEC context obtained from a previous registration.
srcEesId:
type: string
description: Identifier of the EES that provided EEC context ID.
endPt:
$ref: ‘TS29558_Eees_EASRegistration.yaml#/components/schemas/EndPoint’
unfulfilledAcProfs:
$ref: ‘#/components/schemas/UnfulfilledAcProfile’
required:
– eecId
ACProfile:
description: ECS service provisioning response information.
type: object
properties:
acId:
type: string
description: Identity of the AC.
acType:
type: string
description: The category or type of AC.
prefEcsps:
type: array
items:
type: string
description: Indicates to the ECS which ECSPs are preferred for the AC.
acSchedule:
$ref: ‘TS29122_CpProvisioning.yaml#/components/schemas/ScheduledCommunicationTime’
expAcGeoServArea:
$ref: ‘TS29122_CommonData.yaml#/components/schemas/LocationArea5G’
acSvcContSupp:
type: array
items:
$ref: ‘TS29558_Eecs_EESRegistration.yaml#/components/schemas/ACRScenario’
description: Profiles of ACs for which the EEC provides edge enabling services.
eass:
type: array
items:
$ref: ‘#/components/schemas/EasDetail’
minItems: 1
description: List of EAS information.
required:
– acId
EasDetail:
description: EAS details.
type: object
properties:
easId:
type: string
description: Application identifier of the EAS.
expectedSvcKPIs:
$ref: ‘#/components/schemas/ACServiceKPIs’
minimumReqSvcKPIs:
$ref: ‘#/components/schemas/ACServiceKPIs’
required:
– easId
ACServiceKPIs:
description: EAS details.
type: object
properties:
connBand:
$ref: ‘TS29571_CommonData.yaml#/components/schemas/BitRate’
reqRate:
$ref: ‘TS29571_CommonData.yaml#/components/schemas/Uinteger’
respTime:
$ref: ‘TS29122_CommonData.yaml#/components/schemas/DurationSec’
avail:
$ref: ‘TS29571_CommonData.yaml#/components/schemas/Uinteger’
reqComp:
type: string
description: The compute resources required by the AC.
reqGrapComp:
type: string
description: The graphical compute resources required by the AC.
reqMem:
type: string
description: The memory resources required by the AC.
reqStrg:
type: string
description: The storage resources required by the AC.
EECRegistrationPatch:
description: Describes the parameters to perform EEC Registration update.
type: object
properties:
acProfs:
type: array
items:
$ref: ‘#/components/schemas/ACProfile’
description: Profiles of ACs for which the EEC provides edge enabling services.
expTime:
$ref: ‘TS29122_CommonData.yaml#/components/schemas/DateTime’
unfulfilledAcProfs:
$ref: ‘#/components/schemas/UnfulfilledAcProfile’
UnfulfilledAcProfile:
description: Desrcibes AC Profile ID and reason sent by EES in EEC Register response.
type: object
properties:
acId:
type: string
description: The AC ID of a AC profile.
reason:
$ref: ‘#/components/schemas/UnfulfillACProfRsn’
UnfulfillACProfRsn:
anyOf:
– type: string
enum:
– EAS_NOT_AVAILABLE
– REQ_UNFULFILLED
description: represents reason for unfulfilled AC profile requirements.