A.3 Neasdf_BaselineDNSPattern API
29.5563GPPEdge Application Server Discovery ServicesRelease 17Stage 3TS
openapi: 3.0.0
info:
version: ‘1.0.0’
title: ‘Neasdf_BaselineDNSPattern’
description: |
EASDF Baseline DNS Pattern Service.
© 2022, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC).
All rights reserved.
externalDocs:
description: 3GPP TS 29.556 V17.1.0; 5G System; Edge Application Server Discovery Services; Stage 3
url: ‘https://www.3gpp.org/ftp/Specs/archive/29_series/29.556/’
servers:
– url: ‘{apiRoot}/neasdf-baselinednspattern/v1’
variables:
apiRoot:
default: https://example.com
description: apiRoot as defined in clause 4.4 of 3GPP TS 29.501.
security:
– {}
– oAuth2ClientCredentials:
– neasdf-baselinednspattern
paths:
/base-dns-patterns/{smfId}/{smfImplementationSegmentPaths}:
patch:
summary: Updates the Baseline DNS Pattern
operationId: UpdateBaseDNSPattern
tags:
– Individual Baseline DNS Pattern
parameters:
– name: smfId
in: path
description: SMF or SMF set identifier or Set Id part in SMF set identifier
required: true
schema:
$ref: ‘#/components/schemas/VarNfId’
style: simple
explode: true
– name: smfImplementationSegmentPaths
in: path
description: SMF Implementation Dependent Segment Paths
required: true
schema:
type: string
– name: Content-Encoding
in: header
description: Content-Encoding, described in IETF RFC 7231
schema:
type: string
requestBody:
content:
application/json-patch+json:
schema:
type: array
items:
$ref: ‘TS29571_CommonData.yaml#/components/schemas/PatchItem’
required: true
responses:
‘200’:
description: Partial update of the Baseline DNS Pattern
content:
application/json:
schema:
$ref: ‘TS29571_CommonData.yaml#/components/schemas/PatchResult’
‘204’:
description: Successful update of the Baseline DNS Pattern
headers:
Accept-Encoding:
description: Accept-Encoding, described in IETF RFC 7694
schema:
type: string
‘307’:
$ref: ‘TS29571_CommonData.yaml#/components/responses/307’
‘308’:
$ref: ‘TS29571_CommonData.yaml#/components/responses/308’
‘400’:
$ref: ‘TS29571_CommonData.yaml#/components/responses/400’
‘403’:
$ref: ‘TS29571_CommonData.yaml#/components/responses/403’
‘404’:
$ref: ‘TS29571_CommonData.yaml#/components/responses/404’
‘411’:
$ref: ‘TS29571_CommonData.yaml#/components/responses/411’
‘413’:
$ref: ‘TS29571_CommonData.yaml#/components/responses/413’
‘415’:
$ref: ‘TS29571_CommonData.yaml#/components/responses/415’
‘429’:
$ref: ‘TS29571_CommonData.yaml#/components/responses/429’
‘500’:
$ref: ‘TS29571_CommonData.yaml#/components/responses/500’
‘501’:
$ref: ‘TS29571_CommonData.yaml#/components/responses/501’
‘503’:
$ref: ‘TS29571_CommonData.yaml#/components/responses/503’
default:
$ref: ‘TS29571_CommonData.yaml#/components/responses/default’
put:
summary: Creates or Updates the Baseline DNS Pattern (complete replacement)
operationId: CreateOrReplaceBaseDnsPattern
tags:
– Individual Baseline DNS Pattern
parameters:
– name: smfId
in: path
description: SMF or SMF set identifier or Set Id part in SMF set identifier
required: true
schema:
$ref: ‘#/components/schemas/VarNfId’
style: simple
explode: true
– name: smfImplementationSegmentPaths
in: path
description: SMF Implementation Dependent Segment Paths
required: true
schema:
type: string
– name: Content-Encoding
in: header
description: Content-Encoding, described in IETF RFC 7231
schema:
type: string
requestBody:
required: true
content:
application/json:
schema:
$ref: ‘#/components/schemas/BaseDnsPatternCreateData’
responses:
‘201’:
description: successful creation of a Baseline DNS pattern
content:
application/json:
schema:
$ref: ‘#/components/schemas/BaseDnsPatternCreatedData’
headers:
Location:
description: ‘Contains the URI of the newly created resource, according to the structure: {apiRoot}/neasdf-baselinednspattern/<apiVersion>/base-dns-patterns/{smfId}/{smfImplementationSegmentPaths}’
required: true
schema:
type: string
‘204’:
description: Successful update of the Baseline DNS Pattern
headers:
Accept-Encoding:
description: Accept-Encoding, described in IETF RFC 7694
schema:
type: string
‘307’:
$ref: ‘TS29571_CommonData.yaml#/components/responses/307’
‘308’:
$ref: ‘TS29571_CommonData.yaml#/components/responses/308’
‘400’:
$ref: ‘TS29571_CommonData.yaml#/components/responses/400’
‘403’:
$ref: ‘TS29571_CommonData.yaml#/components/responses/403’
‘404’:
$ref: ‘TS29571_CommonData.yaml#/components/responses/404’
‘411’:
$ref: ‘TS29571_CommonData.yaml#/components/responses/411’
‘413’:
$ref: ‘TS29571_CommonData.yaml#/components/responses/413’
‘415’:
$ref: ‘TS29571_CommonData.yaml#/components/responses/415’
‘429’:
$ref: ‘TS29571_CommonData.yaml#/components/responses/429’
‘500’:
$ref: ‘TS29571_CommonData.yaml#/components/responses/500’
‘501’:
$ref: ‘TS29571_CommonData.yaml#/components/responses/501’
‘503’:
$ref: ‘TS29571_CommonData.yaml#/components/responses/503’
default:
$ref: ‘TS29571_CommonData.yaml#/components/responses/default’
delete:
summary: Deletes a Baseline DNS Pattern
tags:
– Individual Baseline DNS Pattern
operationId: DeleteBaseDnsPattern
parameters:
– name: smfId
in: path
description: SMF or SMF set identifier or Set Id part in SMF set identifier
required: true
schema:
$ref: ‘#/components/schemas/VarNfId’
style: simple
explode: true
– name: smfImplementationSegmentPaths
in: path
description: SMF Implementation Dependent Segment Paths
required: true
schema:
type: string
responses:
‘204’:
description: successful deletion of a Baseline DNS Pattern
‘307’:
$ref: ‘TS29571_CommonData.yaml#/components/responses/307’
‘308’:
$ref: ‘TS29571_CommonData.yaml#/components/responses/308’
‘400’:
$ref: ‘TS29571_CommonData.yaml#/components/responses/400’
‘403’:
$ref: ‘TS29571_CommonData.yaml#/components/responses/403’
‘404’:
$ref: ‘TS29571_CommonData.yaml#/components/responses/404’
‘411’:
$ref: ‘TS29571_CommonData.yaml#/components/responses/411’
‘413’:
$ref: ‘TS29571_CommonData.yaml#/components/responses/413’
‘415’:
$ref: ‘TS29571_CommonData.yaml#/components/responses/415’
‘429’:
$ref: ‘TS29571_CommonData.yaml#/components/responses/429’
‘500’:
$ref: ‘TS29571_CommonData.yaml#/components/responses/500’
‘503’:
$ref: ‘TS29571_CommonData.yaml#/components/responses/503’
default:
$ref: ‘TS29571_CommonData.yaml#/components/responses/default’
components:
securitySchemes:
oAuth2ClientCredentials:
type: oauth2
flows:
clientCredentials:
tokenUrl: ‘{nrfApiRoot}/oauth2/token’
scopes:
neasdf-baselinednspattern: Access to the neasdf-baselinednspattern API
schemas:
#
# STRUCTURED DATA TYPES
#
BaseDnsPatternCreateData:
description: Data in Baseline DNS Pattern Create request
type: object
properties:
label:
type: string
baseDnsMdtList:
description: map of baseline DNS message detection templates where a valid JSON string serves as key
type: object
additionalProperties:
$ref: ‘#/components/schemas/BaselineDnsMdt’
minProperties: 1
baseDnsAitList:
description: map of Baseline DNS action information Template where a valid JSON string serves as key
type: object
additionalProperties:
$ref: ‘#/components/schemas/BaselineDnsAit’
minProperties: 1
supportedFeatures:
$ref: ‘TS29571_CommonData.yaml#/components/schemas/SupportedFeatures’
BaseDnsPatternCreatedData:
description: Data in Baseline DNS Pattern Create response
type: object
properties:
supportedFeatures:
$ref: ‘TS29571_CommonData.yaml#/components/schemas/SupportedFeatures’
BaselineDnsMdt:
description: Baseline DNS message detection template
type: object
properties:
mdtId:
type: string
label:
type: string
dnsQueryMdtList:
description: map of DNS query message detection templates where a valid JSON string serves as key
type: object
additionalProperties:
$ref: ‘TS29556_Neasdf_DNSContext.yaml#/components/schemas/DnsQueryMdt’
minProperties: 1
dnsRspMdtList:
description: map of DNS response message detection templates where a valid JSON string serves as key
type: object
additionalProperties:
$ref: ‘TS29556_Neasdf_DNSContext.yaml#/components/schemas/DnsRspMdt’
minProperties: 1
required:
– mdtId
not:
required: [ dnsQueryMdtList, dnsRspMdtList ]
BaselineDnsAit:
description: Baseline DNS action information Template
type: object
properties:
aitId:
type: string
label:
type: string
ecsOption:
$ref: ‘TS29556_Neasdf_DNSContext.yaml#/components/schemas/EcsOption’
dnsServerAddressList:
type: array
items:
$ref: ‘TS29571_CommonData.yaml#/components/schemas/IpAddr’
minItems: 1
required:
– aitId
VarNfId:
description: SMF or SMF Set Id or Set Id part in NF Set Id
type: object
properties:
smfSetId:
$ref: ‘TS29571_CommonData.yaml#/components/schemas/NfSetId’
setId:
type: string
pattern: ‘^([A-Za-z0-9\-]*[A-Za-z0-9])$’
smfInstanceId:
$ref: ‘TS29571_CommonData.yaml#/components/schemas/NfInstanceId’
#
# SIMPLE DATA TYPES
#
#
# ENUMERATIONS
#
Annex B (informative):
Change history
|
Change history |
|||||||
|
Date |
Meeting |
TDoc |
CR |
Rev |
Cat |
Subject/Comment |
New version |
|
2021-04 |
CT4#103e |
C4-212440 |
TS skeleton |
0.0.0 |
|||
|
2021-04 |
CT4#103e |
C4-212441 C4-212442 |
Implementation of pCRs agreed in CT4#103E |
0.1.0 |
|||
|
2021-06 |
CT4#104e |
C4-213092 C4-213093 C4-213094 C4-213095 C4-213096 C4-213182 C4-213184 C4-213185 C4-213429 C4-213430 C4-213479 |
Implementation of pCRs agreed in CT4#104E |
0.2.0 |
|||
|
2021-09 |
CT4#105e |
C4-214676 |
Implementation of pCRs agreed in CT4#105E |
0.3.0 |
|||
|
2021-10 |
CT4#106e |
C4-215049 C4-215365 C4-215366 C4-215488 C4-215489 C4-215246 C4-215429 C4-215430 C4-215431 C4-215432 C4-215433 C4-215434 |
Implementation of pCRs agreed in CT4#106E |
0.4.0 |
|||
|
2021-11 |
CT4#107e |
C4-216189 C4-216551 C4-216303 C4-216304 C4-216305 C4-216306 C4-216307 |
Implementation of pCRs agreed in CT4#107E |
0.5.0 |
|||
|
2021-12 |
CT#94 |
CP-213156 |
V1.0.0 presented for information |
1.0.0 |
|||
|
2022-01 |
CT4#107bise |
C4-220101 C4-220103 C4-220239 C4-220399 C4-220419 C4-220452 |
Implementation of pCRs agreed in CT4#107bisE |
1.1.0 |
|||
|
2022-03 |
CT4#108e |
C4-221136 C4-221296 C4-221482 |
Implementation of pCRs agreed in CT4#108E |
1.2.0 |
|||
|
2022-03 |
CT#95e |
CP-220105 |
TS send for approval |
2.0.0 |
|||
|
2022-03 |
CT#95e |
TS approved |
17.0.0 |
||||
|
2022-06 |
CT#96 |
CP-221034 |
0001 |
2 |
F |
Key of Map in Data Structure for Baseline DNS Pattern |
17.1.0 |
|
2022-06 |
CT#96 |
CP-221034 |
0002 |
F |
Reference point between SMF and EASDF |
17.1.0 |
|
|
2022-06 |
CT#96 |
CP-221034 |
0003 |
1 |
B |
Using FQDN Pattern Matching Rule for fqdnPatternList |
17.1.0 |
|
2022-06 |
CT#96 |
CP-221034 |
0004 |
F |
Reuse of type Fqdn from 29.571 |
17.1.0 |
|
|
2022-06 |
CT#96 |
CP-221034 |
0005 |
F |
S-NSSAI in Create DNS context |
17.1.0 |
|
|
2022-06 |
CT#96 |
CP-221051 |
0006 |
F |
29.556 Rel-17 API version and External doc update |
17.1.0 |
|
|
2022-12 |
CT#98e |
CP-223045 |
0009 |
1 |
F |
Handling of EDNS Client Subnet option by EASDF |
17.2.0 |
|
2022-12 |
CT#98e |
CP-223045 |
0010 |
F |
Corrections on DnsServerAddressInfo |
17.2.0 |
|