A.3 SS_GroupManagement API
29.5493GPPApplication Programming Interface (API) specificationRelease 18Service Enabler Architecture Layer for Verticals (SEAL)Stage 3TS
openapi: 3.0.0
info:
title: SS_GroupManagement
description: |
API for SEAL Group management.
© 2022, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC).
All rights reserved.
version: "1.1.1"
externalDocs:
description: >
3GPP TS 29.549 V17.6.0 Service Enabler Architecture Layer for Verticals (SEAL);
Application Programming Interface (API) specification; Stage 3.
url: https://www.3gpp.org/ftp/Specs/archive/29_series/29.549/
security:
– {}
– oAuth2ClientCredentials: []
servers:
– url: ‘{apiRoot}/ss-gm/v1’
variables:
apiRoot:
default: https://example.com
description: apiRoot as defined in clause 6.5 of 3GPP TS 29.549
paths:
/group-documents:
post:
description: Creates a new VAL group document.
operationId: CreateValGroupDoc
tags:
– VAL Group Documents (Collection)
requestBody:
required: true
content:
application/json:
schema:
$ref: ‘#/components/schemas/VALGroupDocument’
responses:
‘201’:
description: VAL group created sucessfully.
content:
application/json:
schema:
$ref: ‘#/components/schemas/VALGroupDocument’
headers:
Location:
description: Contains the URI of the newly created resource.
required: true
schema:
type: string
‘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’
‘411’:
$ref: ‘TS29122_CommonData.yaml#/components/responses/411’
‘413’:
$ref: ‘TS29122_CommonData.yaml#/components/responses/413’
‘415’:
$ref: ‘TS29122_CommonData.yaml#/components/responses/415’
‘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’
get:
description: Retrieves VAL group documents satisfying filter criteria
operationId: RetrieveValGroupDocs
tags:
– VAL Group Documents (Collection)
parameters:
– name: val-group-id
in: query
description: String identifying the VAL group.
schema:
type: string
– name: val-service-id
in: query
description: String identifying the Val service.
schema:
type: string
responses:
‘200’:
description: List of VAL group documents matching the query parameters in the request.
content:
application/json:
schema:
type: array
items:
$ref: ‘#/components/schemas/VALGroupDocument’
minItems: 0
‘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’
‘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’
/group-documents/{groupDocId}:
get:
description: Retrieves VAL group information satisfying filter criteria.
operationId: RetrieveIndValGroupDoc
tags:
– Individual VAL Group Document (Document)
parameters:
– name: groupDocId
in: path
description: String identifying an individual VAL group document resource.
required: true
schema:
type: string
– name: group-members
in: query
description: >
When set to true indicates the group management server to send the members
list information of the VAL group.
schema:
type: boolean
– name: group-configuration
in: query
description: >
When set to true indicates the group management server to send the group
configuration information of the VAL group.
schema:
type: boolean
responses:
‘200’:
description: >
The VAL group information based on the request from the VAL server. Includes
VAL group members list if group-members flag is set to true in the request,
VAL group configuration information if the group-configuration flag is set to
true in the request, VAL group identifier, whole VAL group document resource
if both group-members and group-configuration flags are omitted/set to false
in the request.
content:
application/json:
schema:
$ref: ‘#/components/schemas/VALGroupDocument’
‘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’
‘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’
put:
description: Updates an individual VAL group document.
operationId: UpdateIndValGroupDoc
tags:
– Individual VAL Group Document (Document)
parameters:
– name: groupDocId
in: path
description: String identifying an individual VAL group document resource
required: true
schema:
type: string
requestBody:
description: VAL group document to be updated in Group management server.
required: true
content:
application/json:
schema:
$ref: ‘#/components/schemas/VALGroupDocument’
responses:
‘200’:
description: VAL group document updated successfully.
content:
application/json:
schema:
$ref: ‘#/components/schemas/VALGroupDocument’
‘204’:
description: No Content
‘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’
‘411’:
$ref: ‘TS29122_CommonData.yaml#/components/responses/411’
‘413’:
$ref: ‘TS29122_CommonData.yaml#/components/responses/413’
‘415’:
$ref: ‘TS29122_CommonData.yaml#/components/responses/415’
‘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’
delete:
description: Deletes a VAL Group.
operationId: DeleteIndValGroupDoc
tags:
– Individual VAL Group Document (Document)
parameters:
– name: groupDocId
in: path
description: String identifying an individual VAL group document resource.
required: true
schema:
type: string
responses:
‘204’:
description: The individual VAL group matching groupDocId was deleted.
‘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’
‘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’
patch:
description: Modify an existing VAL Group document.
operationId: ModifyIndValGroupDoc
tags:
– Individual VAL Group Document (Document)
parameters:
– name: groupDocId
in: path
description: Identifier of an individual VAL group document.
required: true
schema:
type: string
requestBody:
required: true
content:
application/merge-patch+json:
schema:
$ref: ‘#/components/schemas/VALGroupDocumentPatch’
responses:
‘200’:
description: >
The individual VAL Group document is modified successfully and a
representation of the updated VAL Group document is returned in the request body.
content:
application/json:
schema:
$ref: ‘#/components/schemas/VALGroupDocument’
‘204’:
description: No Content. The individual VAL group document is modified successfully.
‘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’
‘411’:
$ref: ‘TS29122_CommonData.yaml#/components/responses/411’
‘413’:
$ref: ‘TS29122_CommonData.yaml#/components/responses/413’
‘415’:
$ref: ‘TS29122_CommonData.yaml#/components/responses/415’
‘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:
securitySchemes:
oAuth2ClientCredentials:
type: oauth2
flows:
clientCredentials:
tokenUrl: ‘{tokenUrl}’
scopes: {}
schemas:
VALGroupDocument:
description: Represents details of the VAL group document information.
type: object
properties:
valGroupId:
type: string
description: The VAL group idenitity.
grpDesc:
type: string
description: The text description of the VAL group.
members:
type: array
description: The list of VAL User IDs or VAL UE IDs, which are members of the VAL group.
items:
$ref: ‘TS29549_SS_UserProfileRetrieval.yaml#/components/schemas/ValTargetUe’
minItems: 1
valGrpConf:
type: string
description: Configuration data for the VAL group.
valServiceIds:
type: array
description: The list of VAL services enabled on the group.
items:
type: string
minItems: 1
valSvcInf:
type: string
description: VAL service specific information.
suppFeat:
$ref: ‘TS29571_CommonData.yaml#/components/schemas/SupportedFeatures’
resUri:
$ref: ‘TS29122_CommonData.yaml#/components/schemas/Uri’
locInfo:
$ref: ‘TS29122_MonitoringEvent.yaml#/components/schemas/LocationInfo’
addLocInfo:
$ref: ‘TS29122_CommonData.yaml#/components/schemas/LocationArea5G’
extGrpId:
$ref: ‘TS29122_CommonData.yaml#/components/schemas/ExternalGroupId’
com5GLanType:
$ref: ‘TS29571_CommonData.yaml#/components/schemas/PduSessionType’
required:
– valGroupId
VALGroupDocumentPatch:
description: Represents details of the partial update of VAL group document information.
type: object
properties:
grpDesc:
type: string
description: The text description of the VAL group.
members:
type: array
description: The list of VAL User IDs or VAL UE IDs, which are members of the VAL group.
items:
$ref: ‘TS29549_SS_UserProfileRetrieval.yaml#/components/schemas/ValTargetUe’
minItems: 1
valGrpConf:
type: string
description: Configuration data for the VAL group.
valServiceIds:
type: array
description: The list of VAL services enabled on the group.
items:
type: string
minItems: 1
locInfo:
$ref: ‘TS29122_MonitoringEvent.yaml#/components/schemas/LocationInfo’
addLocInfo:
$ref: ‘TS29122_CommonData.yaml#/components/schemas/LocationArea5G’
extGrpId:
$ref: ‘TS29122_CommonData.yaml#/components/schemas/ExternalGroupId’
com5GLanType:
$ref: ‘TS29571_CommonData.yaml#/components/schemas/PduSessionType’