3GPP TS 29.222 CAPIF Routing Info API

API for Routing information. An OpenAPI 3.0.0 document with 1 path(s), API version 1.3.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-routing-info-api.yml Raw ↑
openapi: 3.0.0

info:
  title: CAPIF_Routing_Info_API
  description: |
    API for Routing information.  
    © 2025, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC).  
    All rights reserved.
  version: "1.3.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}/capif-routing-info/v1'
    variables:
      apiRoot:
        default: https://example.com
        description: apiRoot as defined in clause 7.5 of 3GPP TS 29.222

paths:
  /service-apis/{serviceApiId}:
    get:
      description: Retrieves the API routing information.
      operationId: GetAPIRouteInfo
      tags:
        - Individual Service API routing Info (Document)
      parameters:
        - name: serviceApiId
          in: path
          description: Identifier of a published service API
          required: true
          schema:
            type: string
        - name: aef-id
          in: query
          required: true
          description: Identifier of the AEF
          schema:
            type: string
        - name: supp-feat
          in: query
          required: false
          description: To filter irrelevant responses related to unsupported features
          schema:
            $ref: 'TS29571_CommonData.yaml#/components/schemas/SupportedFeatures'
      responses:
        '200':
          description: OK.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RoutingInfo'
        '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'
        '414':
          $ref: 'TS29122_CommonData.yaml#/components/responses/414'
        '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:
    RoutingInfo:
      type: object
      description: Represents an API routing information.
      properties:
        routingRules:
          type: array
          items:
            $ref: '#/components/schemas/RoutingRule'
          minItems: 1
      required:
        - routingRules

    RoutingRule:
      type: object
      description: Represents an API routing rule.
      properties:
        ipv4AddrRanges:
          type: array
          items:
            $ref: 'TS29510_Nnrf_NFManagement.yaml#/components/schemas/Ipv4AddressRange'
          minItems: 1
        ipv6AddrRanges:
          type: array
          items:
            $ref: '#/components/schemas/Ipv6AddressRange'
          minItems: 1
        aefProfile:
          $ref: 'TS29222_CAPIF_Publish_Service_API.yaml#/components/schemas/AefProfile'
      required:
        - aefProfile

    Ipv6AddressRange:
      type: object
      description: Represents IPv6 address range.
      properties:
        start:
          $ref: 'TS29122_CommonData.yaml#/components/schemas/Ipv6Addr'
        end:
          $ref: 'TS29122_CommonData.yaml#/components/schemas/Ipv6Addr'
      required:
        - start
        - end