openapi: 3.2.0 info: title: CAPIF_API_Invoker_Management_ Individual On-boarded API Invoker (Document) API version: 1.4.0 description: "API for API invoker management. \n© 2025, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). \nAll rights reserved.\n" servers: - url: '{apiRoot}/api-invoker-management/v1' variables: apiRoot: default: https://example.com description: apiRoot as defined in clause 7.5 of 3GPP TS 29.222 tags: - name: Individual On-boarded API Invoker (Document) paths: /onboardedInvokers/{onboardingId}: parameters: - name: onboardingId in: path required: true schema: type: string delete: description: Deletes an existing Individual On-boarded API Invoker. summary: Delete an existing Individual On-boarded API Invoker resource. operationId: DeleteIndOnboardedAPIInvoker tags: - Individual On-boarded API Invoker (Document) responses: '204': description: 'No Content. The Individual On-boarded API Invoker resource is successfully deleted. ' '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 put: summary: Update an existing Individual On-boarded API Invoker resource. operationId: UpdateIndOnboardedAPIInvoker tags: - Individual On-boarded API Invoker (Document) requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/APIInvokerEnrolmentDetails' responses: '200': description: 'OK. The Individual On-boarded API Invoker resource is successfully updated and the representation of the updated resource is returned in the response body. ' content: application/json: schema: $ref: '#/components/schemas/APIInvokerEnrolmentDetails' '202': description: 'Accepted. The request is accepted and under processing. ' '204': description: 'No Content. The Individual On-boarded API Invoker resource is successfully updated and no content is returned in the response body. ' '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 patch: summary: Modify an existing Individual On-boarded API Invoker resource. operationId: ModifyIndOnboardedAPIInvoker tags: - Individual On-boarded API Invoker (Document) requestBody: required: true content: application/merge-patch+json: schema: $ref: '#/components/schemas/APIInvokerEnrolmentDetailsPatch' responses: '200': description: 'OK. The Individual On-boarded API Invoker resource is successfully modified and the representation of the updated resource is returned in the response body. ' content: application/json: schema: $ref: '#/components/schemas/APIInvokerEnrolmentDetails' '202': description: 'Accepted. The request is accepted and under processing. ' '204': description: 'No Content. The Individual On-boarded API Invoker resource is successfully modified and no content is returned in the response body. ' '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: schemas: APIList: type: object description: Represents a list of APIs with the corresponding information. properties: serviceAPIDescriptions: type: array items: $ref: TS29222_CAPIF_Publish_Service_API.yaml#/components/schemas/ServiceAPIDescription minItems: 1 description: 'Represents the list of service APIs that the API Invoker is allowed to invoke. ' EnrolFailCause: anyOf: - type: string enum: - AUTHORIZATION_ISSUE - ONBOARDING_CRI_NOT_MET - UNSPECIFIED - type: string description: 'This string provides forward-compatibility with future extensions to the enumeration but is not used to encode content defined in the present version of this API. ' description: "Represents API Invoker's per API enrollment failure code. \nPossible values are:\n- AUTHORIZATION_ISSUE: Indicates that the service API enrollment failed because the service\n API is not authorized for the API Invoker.\n- ONBOARDING_CRI_NOT_MET: Indicates that the service API entollment failed because the\n onboarding criteria not met for this service API for the API Invoker.\n- UNSPECIFIED: Indicates that the service API enrollment failed due to an unspecified\n reason.\n" OnboardingCriteria: type: object description: Represents the onboarding criteria information. properties: secMethods: type: array items: $ref: TS29222_CAPIF_Publish_Service_API.yaml#/components/schemas/SecurityMethod minItems: 1 relatedCriteria: $ref: '#/components/schemas/RelatedCriteria' required: - secMethods ApiInfo: type: object description: Represents service API identification related information. properties: apiName: type: string supportedApiVersions: type: array items: type: string minItems: 1 required: - apiName EnrolFailReason: type: object description: Represents the failure reason for not those APIs not enrolled successfully. properties: apiName: items: type: string failureCode: $ref: '#/components/schemas/EnrolFailCause' required: - apiName - failureCode APIInvokerEnrolmentDetails: description: Represents the onboarding information of the API Invoker. 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: $ref: '#/components/schemas/OnboardingInformation' notificationDestination: $ref: TS29122_CommonData.yaml#/components/schemas/Uri requestTestNotification: type: boolean description: 'Set to true to request the CCF to send a test notification as defined in in clause 7.6. Set to false or omitted otherwise. ' websockNotifConfig: $ref: TS29122_CommonData.yaml#/components/schemas/WebsockNotifConfig apiList: $ref: '#/components/schemas/APIList' apiInvokerInformation: type: string description: 'Generic information related to the API invoker such as details of the device or the application. ' expTime: $ref: TS29122_CommonData.yaml#/components/schemas/DateTime supportedFeatures: $ref: TS29571_CommonData.yaml#/components/schemas/SupportedFeatures failureReasons: type: array items: $ref: '#/components/schemas/EnrolFailReason' minItems: 1 required: - onboardingInformation - notificationDestination RelatedCriteria: type: object description: Represents onboarding related criteria. properties: aefIds: type: array items: type: string minItems: 1 apis: type: array items: $ref: '#/components/schemas/ApiInfo' minItems: 1 serviceAPICategories: type: array items: type: string minItems: 1 anyOf: - required: - aefIds - required: - serviceAPICategories - required: - apis OnboardingInformation: type: object description: Represents the on-boarding information of the API Invoker. 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. ' onboardingCriteria: type: array items: $ref: '#/components/schemas/OnboardingCriteria' minItems: 1 required: - apiInvokerPublicKey APIInvokerEnrolmentDetailsPatch: type: object description: Represents an API Invoker's enrolment details to be updated. properties: onboardingInformation: $ref: '#/components/schemas/OnboardingInformation' notificationDestination: $ref: TS29122_CommonData.yaml#/components/schemas/Uri apiList: $ref: '#/components/schemas/APIList' apiInvokerInformation: type: string description: 'Generic information related to the API invoker such as details of the device or the application. ' expTime: $ref: TS29122_CommonData.yaml#/components/schemas/DateTimeRm securitySchemes: oAuth2ClientCredentials: type: oauth2 flows: clientCredentials: tokenUrl: '{tokenUrl}' scopes: {} externalDocs: description: 3GPP TS 29.222 V19.5.0 Common API Framework for 3GPP Northbound APIs url: https://www.3gpp.org/ftp/Specs/archive/29_series/29.222/