openapi: 3.0.0 info: title: CAPIF_Discover_Service_API description: | API for discovering service APIs. © 2020, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). All rights reserved. version: "1.1.0" externalDocs: description: 3GPP TS 29.222 V16.3.0 Common API Framework for 3GPP Northbound APIs url: http://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 subclause 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 subclause 4.4 of 3GPP TS 29.501 [18]. 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: 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' '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 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.