CAPIF_API_Invoker_Management_API

API for API invoker management.

OpenAPI

OpenAPI Version: 3.0.0

info

Title: CAPIF_API_Invoker_Management_API

Description: This API enables the API invoker to communicate with the CAPIF core function to negotiate security methods and obtain authorizations to access service APIs.

Version: "1.0.0"

externalDocs

Description: 3GPP TS 29.222 V15.2.0 Common API Framework for 3GPP Northbound APIs

URL: http://www.3gpp.org/ftp/Specs/archive/29_series/29.222/

servers

URL: '{apiRoot}/api-invoker-management/v1'

Variables:

API Root:

Default: https://example.com

Description: apiRoot as defined in subclause 7.5 of 3GPP TS 29.222

paths

/onboardedInvokers

Method: Post

Description: Creates a new individual API Invoker profile.

Request Body:

Required/Optional: true

Content:

Application/JSON:

Schema:

Reference: '#/components/schemas/APIInvokerEnrolmentDetails'

Callbacks:

notificationDestination:

'{request.body#/notificationDestination}':

Method: Post

Description: Notify the API Invoker about the onboarding completion

Request Body: # contents of the callback message

Required/Optional: true

Content:

Application/JSON:

Schema:

Reference: '#/components/schemas/OnboardingNotification'

Responses:

'204' No Content (successful onboarding notification)

'400': Reference 'TS29122_CommonData.yaml#/components/responses/400'

'401': Reference 'TS29122_CommonData.yaml#/components/responses/401'

'403': Reference 'TS29122_CommonData.yaml#/components/responses/403'

'404': Reference 'TS29122_CommonData.yaml#/components/responses/404'

'411': Reference 'TS29122_CommonData.yaml#/components/responses/411'

'413': Reference 'TS29122_CommonData.yaml#/components/responses/413'

'415': Reference 'TS29122_CommonData.yaml#/components/responses/415'

'429': Reference 'TS29122_CommonData.yaml#/components/responses/429'

'500': Reference 'TS29122_CommonData.yaml#/components/responses/500'

'503': Reference 'TS29122_CommonData.yaml#/components/responses/503'

default: Reference 'TS29122_CommonData.yaml#/components/responses/default'

Responses:

'201' API invoker on-boarded successfully

Content:

Application/JSON:

Schema:

Reference: '#/components/schemas/APIInvokerEnrolmentDetails'

Headers:

Location:

Description: 'Contains the URI of the newly created resource, according to the structure: {apiRoot}/api-invoker-management/v1/onboardedInvokers/{onboardingId}'

Required/Optional: true

Schema:

Type: string

'202' The CAPIF core has accepted the Onboarding request and is processing it.

'400': Reference 'TS29122_CommonData.yaml#/components/responses/400'

'401': Reference 'TS29122_CommonData.yaml#/components/responses/401'

'403': Reference 'TS29122_CommonData.yaml#/components/responses/403'

'404': Reference 'TS29122_CommonData.yaml#/components/responses/404'

'411': Reference 'TS29122_CommonData.yaml#/components/responses/411'

'413': Reference 'TS29122_CommonData.yaml#/components/responses/413'

'415': Reference 'TS29122_CommonData.yaml#/components/responses/415'

'429': Reference 'TS29122_CommonData.yaml#/components/responses/429'

'500': Reference 'TS29122_CommonData.yaml#/components/responses/500'

'503': Reference 'TS29122_CommonData.yaml#/components/responses/503'

default: Reference 'TS29122_CommonData.yaml#/components/responses/default'

/onboardedInvokers/{onboardingId}

delete:

Description: Deletes an individual API Invoker.

Parameters:

- name: onboardingId

In: path

Description: String identifying an individual on-boarded API invoker resource

Required/Optional: true

Schema:

Type: string

Responses:

'204' The individual API Invoker matching onboardingId was offboarded.

'400': Reference 'TS29122_CommonData.yaml#/components/responses/400'

'401': Reference 'TS29122_CommonData.yaml#/components/responses/401'

'403': Reference 'TS29122_CommonData.yaml#/components/responses/403'

'404': Reference 'TS29122_CommonData.yaml#/components/responses/404'

'429': Reference 'TS29122_CommonData.yaml#/components/responses/429'

'500': Reference 'TS29122_CommonData.yaml#/components/responses/500'

'503': Reference 'TS29122_CommonData.yaml#/components/responses/503'

default: Reference 'TS29122_CommonData.yaml#/components/responses/default'

components

schemas

OnboardingInformation

Type: object

Properties:

apiInvokerPublicKey:

Type: string

Description: The API Invoker’s public key

apiInvokerCertificate:

Type: string

Description: The API Invoker’s generic client certificate, provided by the CAPIF core function.

onboardingSecret:

Type: string

Description: The API Invoker’s onboarding secret, provided by the CAPIF core function.

Required:

- apiInvokerPublicKey

APIList

Type: array

Items:

Reference: 'TS29222_CAPIF_Publish_Service_API.yaml#/components/schemas/ServiceAPIDescription'

minItems: 1

Description: The list of service APIs that the API Invoker is allowed to invoke

APIInvokerEnrolmentDetails

Type: object

Properties:

apiInvokerId:

Type: string

Description: API invoker ID assigned by the CAPIF core function to the API invoker while on-boarding the API invoker. Shall not be present in the HTTP POST request from the API invoker to the CAPIF core function, to on-board itself. Shall be present in all other HTTP requests and responses.

readOnly: true

onboardingInformation:

Reference: '#/components/schemas/OnboardingInformation'

notificationDestination:

Reference: 'TS29122_CommonData.yaml#/components/schemas/Uri'

requestTestNotification:

Type: boolean

Description: Set to true by Subscriber to request the CAPIF core function to send a test notification as defined in in subclause 7.6. Set to false or omitted otherwise.

websockNotifConfig:

Reference: 'TS29122_CommonData.yaml#/components/schemas/WebsockNotifConfig'

apiList:

Reference: '#/components/schemas/APIList'

apiInvokerInformation:

Type: string

Description: Generic information related to the API invoker such as details of the device or the application.

supportedFeatures:

Reference: 'TS29571_CommonData.yaml#/components/schemas/SupportedFeatures'

Required:

- onboardingInformation

- notificationDestination

Description: Information about the API Invoker that requested to onboard

OnboardingNotification

Type: object

Properties:

result:

Type: boolean

Description: Set to "true" indicate successful on-boarding. Otherwise set to "false"

resourceLocation:

Reference: 'TS29122_CommonData.yaml#/components/schemas/Uri'

apiInvokerEnrolmentDetails:

Reference: '#/components/schemas/APIInvokerEnrolmentDetails'

apiList:

Reference: '#/components/schemas/APIList'

Required:

- result