A.2 CAPIF_Discover_Service_API
29.2223GPPCommon API Framework for 3GPP Northbound APIsRelease 18TS
openapi: 3.0.0
info:
title: CAPIF_Discover_Service_API
description: |
API for discovering service APIs.
© 2022, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC).
All rights reserved.
version: "1.3.0-alpha.1"
externalDocs:
description: 3GPP TS 29.222 V18.0.0 Common API Framework for 3GPP Northbound APIs
url: https://www.3gpp.org/ftp/Specs/archive/29_series/29.222/
servers:
– url: ‘{apiRoot}/service-apis/v1’
variables:
apiRoot:
default: https://example.com
description: apiRoot as defined in clause 7.5 of 3GPP TS 29.222.
paths:
/allServiceAPIs:
get:
description: >
Discover published service APIs and retrieve a collection of APIs according
to certain filter criteria.
parameters:
– name: api-invoker-id
in: query
description: >
String identifying the API invoker assigned by the CAPIF core function.
It also represents the CCF identifier in the CAPIF-6/6e interface.
required: true
schema:
type: string
– name: api-name
in: query
description: >
API name, it is set as {apiName} part of the URI structure as defined
in clause 5.2.4 of 3GPP TS 29.122.
schema:
type: string
– name: api-version
in: query
description: API major version the URI (e.g. v1).
schema:
type: string
– name: comm-type
in: query
description: Communication type used by the API (e.g. REQUEST_RESPONSE).
schema:
$ref: ‘TS29222_CAPIF_Publish_Service_API.yaml#/components/schemas/CommunicationType’
– name: protocol
in: query
description: Protocol used by the API.
schema:
$ref: ‘TS29222_CAPIF_Publish_Service_API.yaml#/components/schemas/Protocol’
– name: aef-id
in: query
description: AEF identifer.
schema:
type: string
– name: data-format
in: query
description: Data formats used by the API (e.g. serialization protocol JSON used).
schema:
$ref: ‘TS29222_CAPIF_Publish_Service_API.yaml#/components/schemas/DataFormat’
– name: api-cat
in: query
description: The service API category to which the service API belongs to.
schema:
type: string
– name: preferred-aef-loc
in: query
description: The preferred AEF location.
content:
application/json:
schema:
$ref: ‘TS29222_CAPIF_Publish_Service_API.yaml#/components/schemas/AefLocation’
– name: supported-features
in: query
description: Features supported by the NF consumer for the CAPIF Discover Service API.
schema:
$ref: ‘TS29571_CommonData.yaml#/components/schemas/SupportedFeatures’
– name: api-supported-features
in: query
description: >
Features supported by the discovered service API indicated by api-name parameter.
This may only be present if api-name query parameter is present.
schema:
$ref: ‘TS29571_CommonData.yaml#/components/schemas/SupportedFeatures’
responses:
‘200’:
description: >
The response body contains the result of the search over the list of registered APIs.
content:
application/json:
schema:
$ref: ‘#/components/schemas/DiscoveredAPIs’
‘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:
DiscoveredAPIs:
type: object
description: >
Represents a list of APIs currently registered in the CAPIF core function
and satisfying a number of filter criteria provided by the API consumer.
properties:
serviceAPIDescriptions:
type: array
items:
$ref: ‘TS29222_CAPIF_Publish_Service_API.yaml#/components/schemas/ServiceAPIDescription’
minItems: 1
description: >
Description of the service API as published by the service. Each service
API description shall include AEF profiles matching the filter criteria.