1 // Package securityapi provides primitives to interact with the openapi HTTP API.
3 // Code generated by github.com/deepmap/oapi-codegen version v1.10.1 DO NOT EDIT.
7 externalRef0 "oransc.org/nonrtric/capifcore/internal/common29122"
8 externalRef1 "oransc.org/nonrtric/capifcore/internal/common29571"
9 externalRef2 "oransc.org/nonrtric/capifcore/internal/publishserviceapi"
12 // Defines values for AccessTokenErrError.
14 AccessTokenErrErrorInvalidClient AccessTokenErrError = "invalid_client"
16 AccessTokenErrErrorInvalidGrant AccessTokenErrError = "invalid_grant"
18 AccessTokenErrErrorInvalidRequest AccessTokenErrError = "invalid_request"
20 AccessTokenErrErrorInvalidScope AccessTokenErrError = "invalid_scope"
22 AccessTokenErrErrorUnauthorizedClient AccessTokenErrError = "unauthorized_client"
24 AccessTokenErrErrorUnsupportedGrantType AccessTokenErrError = "unsupported_grant_type"
27 // Defines values for AccessTokenReqGrantType.
29 AccessTokenReqGrantTypeClientCredentials AccessTokenReqGrantType = "client_credentials"
32 // Defines values for AccessTokenRspTokenType.
34 AccessTokenRspTokenTypeBearer AccessTokenRspTokenType = "Bearer"
37 // Defines values for Cause.
39 CauseOVERLIMITUSAGE Cause = "OVERLIMIT_USAGE"
41 CauseUNEXPECTEDREASON Cause = "UNEXPECTED_REASON"
44 // Represents an error in the access token request.
45 type AccessTokenErr struct {
46 Error AccessTokenErrError `json:"error"`
47 ErrorDescription *string `json:"error_description,omitempty"`
48 ErrorUri *string `json:"error_uri,omitempty"`
51 // AccessTokenErrError defines model for AccessTokenErr.Error.
52 type AccessTokenErrError string
54 // Represents the access token request information.
55 type AccessTokenReq struct {
56 ClientId string `json:"client_id"`
57 ClientSecret *string `json:"client_secret,omitempty"`
58 GrantType AccessTokenReqGrantType `json:"grant_type"`
59 Scope *string `json:"scope,omitempty"`
62 // AccessTokenReqGrantType defines model for AccessTokenReq.GrantType.
63 type AccessTokenReqGrantType string
65 // Represents the access token response information.
66 type AccessTokenRsp struct {
67 // JWS Compact Serialized representation of JWS signed JSON object (AccessTokenClaims)
68 AccessToken string `json:"access_token"`
70 // Unsigned integer identifying a period of time in units of seconds.
71 ExpiresIn externalRef0.DurationSec `json:"expires_in"`
72 Scope *string `json:"scope,omitempty"`
73 TokenType AccessTokenRspTokenType `json:"token_type"`
76 // AccessTokenRspTokenType defines model for AccessTokenRsp.TokenType.
77 type AccessTokenRspTokenType string
79 // Possible values are:
80 // - OVERLIMIT_USAGE: The revocation of the authorization of the API invoker is due to the overlimit usage of the service API
81 // - UNEXPECTED_REASON: The revocation of the authorization of the API invoker is due to unexpected reason.
84 // Represents the interface details and the security method.
85 type SecurityInformation struct {
86 // Identifier of the API exposing function
87 AefId *string `json:"aefId,omitempty"`
90 ApiId *string `json:"apiId,omitempty"`
92 // Authentication related information
93 AuthenticationInfo *string `json:"authenticationInfo,omitempty"`
95 // Authorization related information
96 AuthorizationInfo *string `json:"authorizationInfo,omitempty"`
98 // Represents the description of an API's interface.
99 InterfaceDetails *externalRef2.InterfaceDescription `json:"interfaceDetails,omitempty"`
101 // Security methods preferred by the API invoker for the API interface.
102 PrefSecurityMethods []externalRef2.SecurityMethod `json:"prefSecurityMethods"`
104 // Possible values are:
105 // - PSK: Security method 1 (Using TLS-PSK) as described in 3GPP TS 33.122
106 // - PKI: Security method 2 (Using PKI) as described in 3GPP TS 33.122
107 // - OAUTH: Security method 3 (TLS with OAuth token) as described in 3GPP TS 33.122
108 SelSecurityMethod *externalRef2.SecurityMethod `json:"selSecurityMethod,omitempty"`
111 // Represents revoked authorization notification details.
112 type SecurityNotification struct {
113 // String identifying the AEF.
114 AefId *string `json:"aefId,omitempty"`
116 // Identifier of the service API
117 ApiIds []string `json:"apiIds"`
119 // String identifying the API invoker assigned by the CAPIF core function.
120 ApiInvokerId string `json:"apiInvokerId"`
122 // Possible values are:
123 // - OVERLIMIT_USAGE: The revocation of the authorization of the API invoker is due to the overlimit usage of the service API
124 // - UNEXPECTED_REASON: The revocation of the authorization of the API invoker is due to unexpected reason.
125 Cause Cause `json:"cause"`
128 // Represents the details of the security method for each service API interface. When included by the API invoker, it indicates the preferred method of security. When included by the CAPIF core function, it indicates the security method to be used for the service API interface.
129 type ServiceSecurity struct {
130 // string providing an URI formatted according to IETF RFC 3986.
131 NotificationDestination externalRef0.Uri `json:"notificationDestination"`
133 // Set to true by API invoker to request the CAPIF core function to send a test notification as defined in in clause 7.6. Set to false or omitted otherwise.
134 RequestTestNotification *bool `json:"requestTestNotification,omitempty"`
135 SecurityInfo []SecurityInformation `json:"securityInfo"`
137 // A string used to indicate the features supported by an API that is used as defined in clause 6.6 in 3GPP TS 29.500. The string shall contain a bitmask indicating supported features in hexadecimal representation Each character in the string shall take a value of "0" to "9", "a" to "f" or "A" to "F" and shall represent the support of 4 features as described in table 5.2.2-3. The most significant character representing the highest-numbered features shall appear first in the string, and the character representing features 1 to 4 shall appear last in the string. The list of features and their numbering (starting with 1) are defined separately for each API. If the string contains a lower number of characters than there are defined features for an API, all features that would be represented by characters that are not present in the string are not supported.
138 SupportedFeatures *externalRef1.SupportedFeatures `json:"supportedFeatures,omitempty"`
140 // Represents the configuration information for the delivery of notifications over Websockets.
141 WebsockNotifConfig *externalRef0.WebsockNotifConfig `json:"websockNotifConfig,omitempty"`
144 // GetTrustedInvokersApiInvokerIdParams defines parameters for GetTrustedInvokersApiInvokerId.
145 type GetTrustedInvokersApiInvokerIdParams struct {
146 // When set to 'true', it indicates the CAPIF core function to send the authentication information of the API invoker. Set to false or omitted otherwise.
147 AuthenticationInfo *bool `json:"authenticationInfo,omitempty"`
149 // When set to 'true', it indicates the CAPIF core function to send the authorization information of the API invoker. Set to false or omitted otherwise.
150 AuthorizationInfo *bool `json:"authorizationInfo,omitempty"`
153 // PutTrustedInvokersApiInvokerIdJSONBody defines parameters for PutTrustedInvokersApiInvokerId.
154 type PutTrustedInvokersApiInvokerIdJSONBody ServiceSecurity
156 // PostTrustedInvokersApiInvokerIdDeleteJSONBody defines parameters for PostTrustedInvokersApiInvokerIdDelete.
157 type PostTrustedInvokersApiInvokerIdDeleteJSONBody SecurityNotification
159 // PostTrustedInvokersApiInvokerIdUpdateJSONBody defines parameters for PostTrustedInvokersApiInvokerIdUpdate.
160 type PostTrustedInvokersApiInvokerIdUpdateJSONBody ServiceSecurity
162 // PutTrustedInvokersApiInvokerIdJSONRequestBody defines body for PutTrustedInvokersApiInvokerId for application/json ContentType.
163 type PutTrustedInvokersApiInvokerIdJSONRequestBody PutTrustedInvokersApiInvokerIdJSONBody
165 // PostTrustedInvokersApiInvokerIdDeleteJSONRequestBody defines body for PostTrustedInvokersApiInvokerIdDelete for application/json ContentType.
166 type PostTrustedInvokersApiInvokerIdDeleteJSONRequestBody PostTrustedInvokersApiInvokerIdDeleteJSONBody
168 // PostTrustedInvokersApiInvokerIdUpdateJSONRequestBody defines body for PostTrustedInvokersApiInvokerIdUpdate for application/json ContentType.
169 type PostTrustedInvokersApiInvokerIdUpdateJSONRequestBody PostTrustedInvokersApiInvokerIdUpdateJSONBody