openapi: 3.0.0 info: title: 3gpp-ecs-address-provision version: 1.2.0 description: | API for ECS Address Provisioning. © 2025, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). All rights reserved. externalDocs: description: > 3GPP TS 29.522 V19.5.0; 5G System; Network Exposure Function Northbound APIs. url: 'https://www.3gpp.org/ftp/Specs/archive/29_series/29.522/' security: - {} - oAuth2ClientCredentials: [] servers: - url: '{apiRoot}/3gpp-ecs-address-provision/v1' variables: apiRoot: default: https://example.com description: apiRoot as defined in clause 5.2.4 of 3GPP TS 29.122. paths: /{afId}/configurations: get: summary: Read all active configurations for a given AF operationId: ReadAllConfigurations tags: - ECS Address Provision Configurations (Collection) parameters: - name: afId in: path description: Identifier of the AF required: true schema: type: string responses: '200': description: OK (Successful get all of the active resources for the AF) content: application/json: schema: type: array items: $ref: '#/components/schemas/EcsAddressProvision' minItems: 0 '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' '406': $ref: 'TS29122_CommonData.yaml#/components/responses/406' '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' post: summary: Creates a new configuration resource operationId: CreateNewConfiguration tags: - ECS Address Provision Configurations (Collection) parameters: - name: afId in: path description: Identifier of the AF required: true schema: type: string requestBody: description: new resource creation required: true content: application/json: schema: $ref: '#/components/schemas/EcsAddressProvision' responses: '201': description: Created (Successful creation) content: application/json: schema: $ref: '#/components/schemas/EcsAddressProvision' headers: Location: description: 'Contains the URI of the newly created resource' required: true schema: type: string '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' /{afId}/configurations/{configurationId}: get: summary: Read an active resource for the AF and the configuration Id operationId: ReadAnConfiguration tags: - Individual ECS Address Provision Configuration parameters: - name: afId in: path description: Identifier of the AF required: true schema: type: string - name: configurationId in: path description: Identifier of the configuration resource required: true schema: type: string responses: '200': description: OK (Successful get the active resource) content: application/json: schema: $ref: '#/components/schemas/EcsAddressProvision' '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' '406': $ref: 'TS29122_CommonData.yaml#/components/responses/406' '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' put: summary: Fully updates/replaces an existing resource operationId: FullyUpdateAnConfiguration tags: - Individual ECS Address Provision Configuration parameters: - name: afId in: path description: Identifier of the AF required: true schema: type: string - name: configurationId in: path description: Identifier of the configuration resource required: true schema: type: string requestBody: description: Parameters to update/replace the existing resource required: true content: application/json: schema: $ref: '#/components/schemas/EcsAddressProvision' responses: '200': description: OK (Successful update of the existing resource) content: application/json: schema: $ref: '#/components/schemas/EcsAddressProvision' '204': description: > Successful case. The resource has been successfully updated and no additional content is sent in the response message. '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: summary: Deletes an already existing configuration resource operationId: DeleteAnConfiguration tags: - Individual ECS Address Provision Configuration parameters: - name: afId in: path description: Identifier of the AF required: true schema: type: string - name: configurationId in: path description: Identifier of the configuration resource required: true schema: type: string responses: '204': description: No Content (Successful deletion of the existing resource) '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' components: securitySchemes: oAuth2ClientCredentials: type: oauth2 flows: clientCredentials: tokenUrl: '{tokenUrl}' scopes: {} schemas: EcsAddressProvision: description: Represents ECS address provision configuration. type: object properties: self: $ref: 'TS29122_CommonData.yaml#/components/schemas/Link' ecsServerAddr: $ref: 'TS29571_CommonData.yaml#/components/schemas/EcsServerAddr' mtcProviderId: $ref: 'TS29571_CommonData.yaml#/components/schemas/MtcProviderInformation' spatialValidityCond: $ref: 'TS29571_CommonData.yaml#/components/schemas/SpatialValidityCond' tgtUe: $ref: 'TS29522_AnalyticsExposure.yaml#/components/schemas/TargetUeId' plmnId: $ref: 'TS29571_CommonData.yaml#/components/schemas/PlmnIdNid' ecsAuthMethods: type: array items: $ref: 'TS29503_Nudm_PP.yaml#/components/schemas/EcsAuthMethod' minItems: 1 supportedPlmns: type: array items: $ref: 'TS29503_Nudm_PP.yaml#/components/schemas/SupportedPlmn' minItems: 1 suppFeat: $ref: 'TS29571_CommonData.yaml#/components/schemas/SupportedFeatures' required: - ecsServerAddr - suppFeat