A.7 CAPIF_Access_Control_Policy_API
29.2223GPPCommon API Framework for 3GPP Northbound APIsRelease 18TS
openapi: 3.0.0
info:
title: CAPIF_Access_Control_Policy_API
description: |
API for access control policy.
© 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}/access-control-policy/v1’
variables:
apiRoot:
default: https://example.com
description: apiRoot as defined in clause 7.5 of 3GPP TS 29.222
paths:
/accessControlPolicyList/{serviceApiId}:
get:
description: Retrieves the access control policy list.
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: api-invoker-id
in: query
description: Identifier of the API invoker
schema:
type: string
– name: supported-features
in: query
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/AccessControlPolicyList’
‘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:
AccessControlPolicyList:
type: object
description: Represents the access control policy list for a published service API.
properties:
apiInvokerPolicies:
type: array
items:
$ref: ‘#/components/schemas/ApiInvokerPolicy’
minItems: 0
description: Policy of each API invoker.
ApiInvokerPolicy:
type: object
description: Represents the policy of an API Invoker.
properties:
apiInvokerId:
type: string
description: API invoker ID assigned by the CAPIF core function
allowedTotalInvocations:
type: integer
description: Total number of invocations allowed on the service API by the API invoker.
allowedInvocationsPerSecond:
type: integer
description: Invocations per second allowed on the service API by the API invoker.
allowedInvocationTimeRangeList:
type: array
items:
$ref: ‘#/components/schemas/TimeRangeList’
minItems: 0
description: >
The time ranges during which the invocations are allowed on the service API
by the API invoker.
required:
– apiInvokerId
TimeRangeList:
type: object
description: >
Represents the time range during which the invocation of a service API is allowed
by the API invoker.
properties:
startTime:
$ref: ‘TS29122_CommonData.yaml#/components/schemas/DateTime’
stopTime:
$ref: ‘TS29122_CommonData.yaml#/components/schemas/DateTime’