3GPP TS 29.222 CAPIF Logging API Invocation API

CAPIF Logging API Invocation API. An OpenAPI 3.0.0 document with 2 path(s), API version 1.4.0, published verbatim by 3GPP in 3GPP TS 29.222 as part of the CAPIF (Common API Framework) suite and mirrored in the public 3GPP Forge GitLab repository.

OpenAPI Specification

3gpp-ts29222-capif-logging-api-invocation-api.yml Raw ↑
openapi: 3.0.0

info:
  title: CAPIF_Logging_API_Invocation_API
  description: |
    API for invocation logs.  
    © 2025, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC).  
    All rights reserved.
  version: "1.4.0"

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/

servers:
  - url: '{apiRoot}/api-invocation-logs/v1'
    variables:
      apiRoot:
        default: https://example.com
        description: apiRoot as defined in clause 7.5 of 3GPP TS 29.222

paths:
  /{aefId}/logs:
    post:
      description: Creates a new log entry for service API invocations.
      operationId: CreateLogEntServAPIInv
      tags:
        - Logs (Collection)
      parameters:
        - name: aefId
          in: path
          description: Identifier of the API exposing function
          required: true
          schema:
            type: string
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/InvocationLog'
      responses:
        '201':
          description: >
            Log of service API invocations provided by API exposing function successfully
            stored on the CAPIF core function.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/InvocationLog'
          headers:
            Location:
              description: >
                Contains the URI of the newly created resource, according to the structure
                {apiRoot}/api-invocation-logs/v1/{aefId}/logs/{logId}
              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'
  /{aefId}/logs/{logId}:
    parameters:
      - name: aefId
        in: path
        description: Identifier of the API exposing function
        required: true
        schema:
          type: string
      - name: logId
        in: path
        description: Identifier of individual log entry
        required: true
        schema:
          type: string
components:
  schemas:
    InvocationLog:
      type: object
      description: >
        Represents a set of Service API invocation logs to be stored in a CAPIF core function.
      properties:
        aefId:
          type: string
          description: >
            Identity information of the API exposing function requesting logging of
            service API invocations
        apiInvokerId:
          type: string
          description: Identity of the API invoker which invoked the service API
        logs:
          type: array
          items:
            $ref: '#/components/schemas/Log'
          minItems: 1
          description: Service API invocation log
        supportedFeatures:
          $ref: 'TS29571_CommonData.yaml#/components/schemas/SupportedFeatures'
      required:
        - aefId
        - apiInvokerId
        - logs

    Log:
      type: object
      description: Represents an individual service API invocation log entry.
      properties:
        apiId:
          type: string
          description: String identifying the API invoked.
        apiName:
          type: string
          description: >
            Contains the invoked API name set to the value of the "<apiName>" placeholder of the API
            URI as defined in clause 5.2.4 of 3GPP TS 29.122 [14].
        apiVersion:
          type: string
          description: Version of the API which was invoked
        resourceName:
          type: string
          description: Name of the specific resource invoked
        uri:
          $ref: 'TS29122_CommonData.yaml#/components/schemas/Uri'
        protocol:
          $ref: 'TS29222_CAPIF_Publish_Service_API.yaml#/components/schemas/Protocol'
        operation:
          $ref: 'TS29222_CAPIF_Publish_Service_API.yaml#/components/schemas/Operation'
        result:
          type: string
          description: For HTTP protocol, it contains HTTP status code of the invocation
        invocationTime:
          $ref: 'TS29122_CommonData.yaml#/components/schemas/DateTime'
        invocationLatency:
          $ref: '#/components/schemas/DurationMs'
        inputParameters:
          description: >
            List of input parameters. Can be any value - string, number, boolean, array or object.
        outputParameters:
          description: >
            List of output parameters. Can be any value - string, number, boolean, array or object.
        srcInterface:
          $ref: 'TS29222_CAPIF_Publish_Service_API.yaml#/components/schemas/InterfaceDescription'
        destInterface:
          $ref: 'TS29222_CAPIF_Publish_Service_API.yaml#/components/schemas/InterfaceDescription'
        fwdInterface:
          type: string
          description: >
            It includes the node identifier (as defined in IETF RFC 7239 of all forwarding
            entities between the API invoker and the AEF, concatenated with comma and space,
            e.g. 192.0.2.43:80, unknown:_OBFport, 203.0.113.60
        netSliceInfo:
          $ref: 'TS29435_NSCE_PolicyManagement.yaml#/components/schemas/NetSliceId'
      required:
        - apiId
        - apiName
        - apiVersion
        - resourceName
        - protocol
        - result

    DurationMs:
      type: integer
      description: Represents a period of time in units of milliseconds.
      minimum: 0