@tapis/tapis-typescript-systems 0.0.6 → 0.0.7

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (197) hide show
  1. package/.openapi-generator/FILES +3 -0
  2. package/.openapi-generator/VERSION +1 -1
  3. package/README.md +5 -4
  4. package/dist/apis/ChildSystemsApi.d.ts +10 -10
  5. package/dist/apis/ChildSystemsApi.js +84 -65
  6. package/dist/apis/CredentialsApi.d.ts +25 -24
  7. package/dist/apis/CredentialsApi.js +172 -138
  8. package/dist/apis/GeneralApi.d.ts +6 -6
  9. package/dist/apis/GeneralApi.js +18 -11
  10. package/dist/apis/PermissionsApi.d.ts +10 -10
  11. package/dist/apis/PermissionsApi.js +112 -89
  12. package/dist/apis/SchedulerProfilesApi.d.ts +10 -10
  13. package/dist/apis/SchedulerProfilesApi.js +95 -72
  14. package/dist/apis/SharingApi.d.ts +12 -12
  15. package/dist/apis/SharingApi.js +122 -95
  16. package/dist/apis/SystemsApi.d.ts +61 -46
  17. package/dist/apis/SystemsApi.js +473 -341
  18. package/dist/apis/index.js +21 -10
  19. package/dist/index.d.ts +2 -2
  20. package/dist/index.js +17 -6
  21. package/dist/models/AuthnEnum.d.ts +12 -9
  22. package/dist/models/AuthnEnum.js +28 -13
  23. package/dist/models/Capability.d.ts +9 -3
  24. package/dist/models/Capability.js +37 -22
  25. package/dist/models/CategoryEnum.d.ts +14 -12
  26. package/dist/models/CategoryEnum.js +30 -16
  27. package/dist/models/Credential.d.ts +26 -3
  28. package/dist/models/Credential.js +47 -33
  29. package/dist/models/DatatypeEnum.d.ts +11 -9
  30. package/dist/models/DatatypeEnum.js +27 -13
  31. package/dist/models/JobRuntime.d.ts +8 -3
  32. package/dist/models/JobRuntime.js +27 -17
  33. package/dist/models/KeyValueInputModeEnum.d.ts +10 -8
  34. package/dist/models/KeyValueInputModeEnum.js +26 -12
  35. package/dist/models/KeyValuePair.d.ts +8 -3
  36. package/dist/models/KeyValuePair.js +32 -22
  37. package/dist/models/ListTypeEnum.d.ts +9 -7
  38. package/dist/models/ListTypeEnum.js +25 -11
  39. package/dist/models/LogicalQueue.d.ts +13 -2
  40. package/dist/models/LogicalQueue.js +48 -34
  41. package/dist/models/ModuleLoadSpec.d.ts +7 -2
  42. package/dist/models/ModuleLoadSpec.js +25 -15
  43. package/dist/models/OperationTypeEnum.d.ts +20 -18
  44. package/dist/models/OperationTypeEnum.js +36 -22
  45. package/dist/models/ReqMatchConstraints.d.ts +7 -2
  46. package/dist/models/ReqMatchConstraints.js +23 -12
  47. package/dist/models/ReqPatchSystem.d.ts +13 -3
  48. package/dist/models/ReqPatchSystem.js +76 -63
  49. package/dist/models/ReqPerms.d.ts +7 -2
  50. package/dist/models/ReqPerms.js +23 -12
  51. package/dist/models/ReqPostChildSystem.d.ts +7 -2
  52. package/dist/models/ReqPostChildSystem.js +28 -16
  53. package/dist/models/ReqPostPutCredential.d.ts +7 -2
  54. package/dist/models/ReqPostPutCredential.js +36 -28
  55. package/dist/models/ReqPostSchedulerProfile.d.ts +9 -3
  56. package/dist/models/ReqPostSchedulerProfile.js +33 -22
  57. package/dist/models/ReqPostSystem.d.ts +15 -3
  58. package/dist/models/ReqPostSystem.js +101 -76
  59. package/dist/models/ReqPutSystem.d.ts +13 -3
  60. package/dist/models/ReqPutSystem.js +74 -61
  61. package/dist/models/ReqSearchSystems.d.ts +7 -2
  62. package/dist/models/ReqSearchSystems.js +23 -12
  63. package/dist/models/ReqShareUpdate.d.ts +7 -2
  64. package/dist/models/ReqShareUpdate.js +23 -12
  65. package/dist/models/ReqUnlinkChildren.d.ts +7 -2
  66. package/dist/models/ReqUnlinkChildren.js +22 -14
  67. package/dist/models/ReqUpdateCredential.d.ts +7 -2
  68. package/dist/models/ReqUpdateCredential.js +38 -30
  69. package/dist/models/RespBasic.d.ts +7 -2
  70. package/dist/models/RespBasic.js +34 -26
  71. package/dist/models/RespBoolean.d.ts +8 -3
  72. package/dist/models/RespBoolean.js +35 -27
  73. package/dist/models/RespChangeCount.d.ts +8 -3
  74. package/dist/models/RespChangeCount.js +35 -27
  75. package/dist/models/RespCredential.d.ts +8 -3
  76. package/dist/models/RespCredential.js +35 -27
  77. package/dist/models/RespGlobusAuthUrl.d.ts +8 -3
  78. package/dist/models/RespGlobusAuthUrl.js +35 -27
  79. package/dist/models/RespName.d.ts +69 -0
  80. package/dist/models/RespName.js +62 -0
  81. package/dist/models/RespNameArray.d.ts +8 -3
  82. package/dist/models/RespNameArray.js +35 -27
  83. package/dist/models/RespResourceUrl.d.ts +8 -3
  84. package/dist/models/RespResourceUrl.js +35 -27
  85. package/dist/models/RespSchedulerProfile.d.ts +8 -3
  86. package/dist/models/RespSchedulerProfile.js +35 -27
  87. package/dist/models/RespSchedulerProfiles.d.ts +8 -3
  88. package/dist/models/RespSchedulerProfiles.js +35 -27
  89. package/dist/models/RespShareInfo.d.ts +8 -3
  90. package/dist/models/RespShareInfo.js +35 -27
  91. package/dist/models/RespSystem.d.ts +8 -3
  92. package/dist/models/RespSystem.js +35 -27
  93. package/dist/models/RespSystemHistory.d.ts +8 -3
  94. package/dist/models/RespSystemHistory.js +35 -27
  95. package/dist/models/RespSystems.d.ts +9 -3
  96. package/dist/models/RespSystems.js +36 -27
  97. package/dist/models/RespSystemsMetadata.d.ts +7 -2
  98. package/dist/models/RespSystemsMetadata.js +32 -24
  99. package/dist/models/ResultBoolean.d.ts +7 -2
  100. package/dist/models/ResultBoolean.js +22 -14
  101. package/dist/models/ResultChangeCount.d.ts +7 -2
  102. package/dist/models/ResultChangeCount.js +22 -14
  103. package/dist/models/ResultGlobusAuthUrl.d.ts +7 -2
  104. package/dist/models/ResultGlobusAuthUrl.js +26 -18
  105. package/dist/models/ResultName.d.ts +32 -0
  106. package/dist/models/ResultName.js +49 -0
  107. package/dist/models/ResultNameArray.d.ts +7 -2
  108. package/dist/models/ResultNameArray.js +22 -14
  109. package/dist/models/ResultResourceUrl.d.ts +7 -2
  110. package/dist/models/ResultResourceUrl.js +22 -14
  111. package/dist/models/RuntimeTypeEnum.d.ts +9 -7
  112. package/dist/models/RuntimeTypeEnum.js +25 -11
  113. package/dist/models/SchedulerHiddenOptionEnum.d.ts +8 -5
  114. package/dist/models/SchedulerHiddenOptionEnum.js +24 -9
  115. package/dist/models/SchedulerProfile.d.ts +9 -3
  116. package/dist/models/SchedulerProfile.js +35 -24
  117. package/dist/models/SchedulerTypeEnum.d.ts +12 -10
  118. package/dist/models/SchedulerTypeEnum.js +28 -14
  119. package/dist/models/ShareInfo.d.ts +14 -2
  120. package/dist/models/ShareInfo.js +29 -13
  121. package/dist/models/SkShareRecord.d.ts +86 -0
  122. package/dist/models/SkShareRecord.js +67 -0
  123. package/dist/models/SystemHistory.d.ts +8 -3
  124. package/dist/models/SystemHistory.js +35 -27
  125. package/dist/models/SystemTypeEnum.d.ts +10 -8
  126. package/dist/models/SystemTypeEnum.js +26 -12
  127. package/dist/models/TapisSystem.d.ts +39 -21
  128. package/dist/models/TapisSystem.js +114 -97
  129. package/dist/models/index.d.ts +3 -0
  130. package/dist/models/index.js +68 -54
  131. package/dist/runtime.d.ts +79 -37
  132. package/dist/runtime.js +311 -169
  133. package/package.json +6 -2
  134. package/src/apis/ChildSystemsApi.ts +47 -33
  135. package/src/apis/CredentialsApi.ts +124 -75
  136. package/src/apis/GeneralApi.ts +9 -7
  137. package/src/apis/PermissionsApi.ts +80 -45
  138. package/src/apis/SchedulerProfilesApi.ts +40 -29
  139. package/src/apis/SharingApi.ts +64 -41
  140. package/src/apis/SystemsApi.ts +306 -189
  141. package/src/index.ts +2 -2
  142. package/src/models/AuthnEnum.ts +26 -8
  143. package/src/models/Capability.ts +37 -19
  144. package/src/models/CategoryEnum.ts +28 -11
  145. package/src/models/Credential.ts +67 -31
  146. package/src/models/DatatypeEnum.ts +25 -8
  147. package/src/models/JobRuntime.ts +27 -14
  148. package/src/models/KeyValueInputModeEnum.ts +24 -7
  149. package/src/models/KeyValuePair.ts +33 -20
  150. package/src/models/ListTypeEnum.ts +23 -6
  151. package/src/models/LogicalQueue.ts +50 -31
  152. package/src/models/ModuleLoadSpec.ts +22 -12
  153. package/src/models/OperationTypeEnum.ts +34 -17
  154. package/src/models/ReqMatchConstraints.ts +20 -10
  155. package/src/models/ReqPatchSystem.ts +96 -69
  156. package/src/models/ReqPerms.ts +20 -10
  157. package/src/models/ReqPostChildSystem.ts +24 -13
  158. package/src/models/ReqPostPutCredential.ts +34 -25
  159. package/src/models/ReqPostSchedulerProfile.ts +38 -24
  160. package/src/models/ReqPostSystem.ts +123 -85
  161. package/src/models/ReqPutSystem.ts +94 -67
  162. package/src/models/ReqSearchSystems.ts +20 -10
  163. package/src/models/ReqShareUpdate.ts +20 -10
  164. package/src/models/ReqUnlinkChildren.ts +20 -11
  165. package/src/models/ReqUpdateCredential.ts +36 -27
  166. package/src/models/RespBasic.ts +32 -23
  167. package/src/models/RespBoolean.ts +35 -25
  168. package/src/models/RespChangeCount.ts +35 -25
  169. package/src/models/RespCredential.ts +35 -25
  170. package/src/models/RespGlobusAuthUrl.ts +35 -25
  171. package/src/models/RespName.ts +121 -0
  172. package/src/models/RespNameArray.ts +35 -25
  173. package/src/models/RespResourceUrl.ts +35 -25
  174. package/src/models/RespSchedulerProfile.ts +35 -25
  175. package/src/models/RespSchedulerProfiles.ts +35 -25
  176. package/src/models/RespShareInfo.ts +35 -25
  177. package/src/models/RespSystem.ts +35 -25
  178. package/src/models/RespSystemHistory.ts +35 -25
  179. package/src/models/RespSystems.ts +42 -29
  180. package/src/models/RespSystemsMetadata.ts +30 -21
  181. package/src/models/ResultBoolean.ts +20 -11
  182. package/src/models/ResultChangeCount.ts +20 -11
  183. package/src/models/ResultGlobusAuthUrl.ts +24 -15
  184. package/src/models/ResultName.ts +65 -0
  185. package/src/models/ResultNameArray.ts +20 -11
  186. package/src/models/ResultResourceUrl.ts +20 -11
  187. package/src/models/RuntimeTypeEnum.ts +23 -6
  188. package/src/models/SchedulerHiddenOptionEnum.ts +22 -4
  189. package/src/models/SchedulerProfile.ts +40 -26
  190. package/src/models/SchedulerTypeEnum.ts +26 -9
  191. package/src/models/ShareInfo.ts +38 -11
  192. package/src/models/SkShareRecord.ts +137 -0
  193. package/src/models/SystemHistory.ts +37 -25
  194. package/src/models/SystemTypeEnum.ts +24 -7
  195. package/src/models/TapisSystem.ts +167 -126
  196. package/src/models/index.ts +3 -0
  197. package/src/runtime.ts +217 -106
@@ -4,7 +4,7 @@
4
4
  * Tapis Systems API
5
5
  * The Tapis Systems API provides for management of Tapis Systems including permissions, credentials and Scheduler Profiles.
6
6
  *
7
- * The version of the OpenAPI document: 1.7.0
7
+ * The version of the OpenAPI document: 25Q4.2
8
8
  * Contact: cicsupport@tacc.utexas.edu
9
9
  *
10
10
  * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
@@ -14,20 +14,22 @@
14
14
 
15
15
 
16
16
  import * as runtime from '../runtime';
17
+ import type {
18
+ ReqUpdateCredential,
19
+ RespBasic,
20
+ RespCredential,
21
+ RespGlobusAuthUrl,
22
+ } from '../models/index';
17
23
  import {
18
- ReqUpdateCredential,
19
24
  ReqUpdateCredentialFromJSON,
20
25
  ReqUpdateCredentialToJSON,
21
- RespBasic,
22
26
  RespBasicFromJSON,
23
27
  RespBasicToJSON,
24
- RespCredential,
25
28
  RespCredentialFromJSON,
26
29
  RespCredentialToJSON,
27
- RespGlobusAuthUrl,
28
30
  RespGlobusAuthUrlFromJSON,
29
31
  RespGlobusAuthUrlToJSON,
30
- } from '../models';
32
+ } from '../models/index';
31
33
 
32
34
  export interface CheckUserCredentialRequest {
33
35
  systemId: string;
@@ -39,6 +41,7 @@ export interface CreateUserCredentialRequest {
39
41
  systemId: string;
40
42
  userName: string;
41
43
  reqUpdateCredential: ReqUpdateCredential;
44
+ createTmsKeys?: boolean;
42
45
  skipCredentialCheck?: boolean;
43
46
  }
44
47
 
@@ -70,31 +73,37 @@ export interface RemoveUserCredentialRequest {
70
73
  export class CredentialsApi extends runtime.BaseAPI {
71
74
 
72
75
  /**
73
- * Check user credentials by connecting to the system host. Not supported for all system types. Currently supported for LINUX and S3 type systems. If the *effectiveUserId* for the system is dynamic (i.e. equal to *${apiUserId}*) then *{userName}* is interpreted as a Tapis user and a search is made for credentials associated with *{userName}*. If the *effectiveUserId* for the system is static (i.e. not *${apiUserId}*) then *{userName}* is interpreted as the login user to be used when accessing the host. Note that this would typically be the current *effectiveUserId* defined for the system, but that is not a requirement. This allows for registering and checking credentials for a login user prior to updating the system definition. Operation is allowed if requester is the system owner or a tenant administrator. If the *effectiveUserId* for the system is dynamic (i.e. equal to *${apiUserId}*) then the operation is allowed if *{userName}* is the Tapis user making the request. Desired authentication method may be specified using query parameter *authnMethod*. If not specified, then credentials for the system\'s default authentication method are verified.
76
+ * Check user credentials by connecting to the system host. Not supported for all system types. Currently supported for LINUX and S3 type systems. If the *effectiveUserId* for the system is dynamic (i.e. equal to *${apiUserId}*) then *{userName}* is interpreted as a Tapis user and a search is made for credentials associated with *{userName}*. Note that the Tapis user *{userName}* may have a mapping to a host *loginUser* in which case the *loginUser* will be used when verifying the credentials. Note that what we call the *Tapis user* comes from the username claim in the Tapis JWT. If the *effectiveUserId* for the system is static (i.e. not *${apiUserId}*) then *{userName}* is interpreted as the login user to be used when accessing the host. Note that this would typically be the current *effectiveUserId* defined for the system, but that is not a requirement. This allows for registering and checking credentials for a login user prior to updating the system definition. Operation is allowed if requester is the system owner or a tenant administrator. If the *effectiveUserId* for the system is dynamic (i.e. equal to *${apiUserId}*) then the operation is allowed if *{userName}* is the Tapis user making the request. Desired authentication method may be specified using query parameter *authnMethod*. If not specified, then credentials for the system\'s default authentication method are verified.
74
77
  */
75
- async checkUserCredentialRaw(requestParameters: CheckUserCredentialRequest, initOverrides?: RequestInit): Promise<runtime.ApiResponse<RespBasic>> {
76
- if (requestParameters.systemId === null || requestParameters.systemId === undefined) {
77
- throw new runtime.RequiredError('systemId','Required parameter requestParameters.systemId was null or undefined when calling checkUserCredential.');
78
+ async checkUserCredentialRaw(requestParameters: CheckUserCredentialRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<RespBasic>> {
79
+ if (requestParameters['systemId'] == null) {
80
+ throw new runtime.RequiredError(
81
+ 'systemId',
82
+ 'Required parameter "systemId" was null or undefined when calling checkUserCredential().'
83
+ );
78
84
  }
79
85
 
80
- if (requestParameters.userName === null || requestParameters.userName === undefined) {
81
- throw new runtime.RequiredError('userName','Required parameter requestParameters.userName was null or undefined when calling checkUserCredential.');
86
+ if (requestParameters['userName'] == null) {
87
+ throw new runtime.RequiredError(
88
+ 'userName',
89
+ 'Required parameter "userName" was null or undefined when calling checkUserCredential().'
90
+ );
82
91
  }
83
92
 
84
93
  const queryParameters: any = {};
85
94
 
86
- if (requestParameters.authnMethod !== undefined) {
87
- queryParameters['authnMethod'] = requestParameters.authnMethod;
95
+ if (requestParameters['authnMethod'] != null) {
96
+ queryParameters['authnMethod'] = requestParameters['authnMethod'];
88
97
  }
89
98
 
90
99
  const headerParameters: runtime.HTTPHeaders = {};
91
100
 
92
101
  if (this.configuration && this.configuration.apiKey) {
93
- headerParameters["X-Tapis-Token"] = this.configuration.apiKey("X-Tapis-Token"); // TapisJWT authentication
102
+ headerParameters["X-Tapis-Token"] = await this.configuration.apiKey("X-Tapis-Token"); // TapisJWT authentication
94
103
  }
95
104
 
96
105
  const response = await this.request({
97
- path: `/v3/systems/credential/{systemId}/user/{userName}/check`.replace(`{${"systemId"}}`, encodeURIComponent(String(requestParameters.systemId))).replace(`{${"userName"}}`, encodeURIComponent(String(requestParameters.userName))),
106
+ path: `/v3/systems/credential/{systemId}/user/{userName}/check`.replace(`{${"systemId"}}`, encodeURIComponent(String(requestParameters['systemId']))).replace(`{${"userName"}}`, encodeURIComponent(String(requestParameters['userName']))),
98
107
  method: 'POST',
99
108
  headers: headerParameters,
100
109
  query: queryParameters,
@@ -104,33 +113,46 @@ export class CredentialsApi extends runtime.BaseAPI {
104
113
  }
105
114
 
106
115
  /**
107
- * Check user credentials by connecting to the system host. Not supported for all system types. Currently supported for LINUX and S3 type systems. If the *effectiveUserId* for the system is dynamic (i.e. equal to *${apiUserId}*) then *{userName}* is interpreted as a Tapis user and a search is made for credentials associated with *{userName}*. If the *effectiveUserId* for the system is static (i.e. not *${apiUserId}*) then *{userName}* is interpreted as the login user to be used when accessing the host. Note that this would typically be the current *effectiveUserId* defined for the system, but that is not a requirement. This allows for registering and checking credentials for a login user prior to updating the system definition. Operation is allowed if requester is the system owner or a tenant administrator. If the *effectiveUserId* for the system is dynamic (i.e. equal to *${apiUserId}*) then the operation is allowed if *{userName}* is the Tapis user making the request. Desired authentication method may be specified using query parameter *authnMethod*. If not specified, then credentials for the system\'s default authentication method are verified.
116
+ * Check user credentials by connecting to the system host. Not supported for all system types. Currently supported for LINUX and S3 type systems. If the *effectiveUserId* for the system is dynamic (i.e. equal to *${apiUserId}*) then *{userName}* is interpreted as a Tapis user and a search is made for credentials associated with *{userName}*. Note that the Tapis user *{userName}* may have a mapping to a host *loginUser* in which case the *loginUser* will be used when verifying the credentials. Note that what we call the *Tapis user* comes from the username claim in the Tapis JWT. If the *effectiveUserId* for the system is static (i.e. not *${apiUserId}*) then *{userName}* is interpreted as the login user to be used when accessing the host. Note that this would typically be the current *effectiveUserId* defined for the system, but that is not a requirement. This allows for registering and checking credentials for a login user prior to updating the system definition. Operation is allowed if requester is the system owner or a tenant administrator. If the *effectiveUserId* for the system is dynamic (i.e. equal to *${apiUserId}*) then the operation is allowed if *{userName}* is the Tapis user making the request. Desired authentication method may be specified using query parameter *authnMethod*. If not specified, then credentials for the system\'s default authentication method are verified.
108
117
  */
109
- async checkUserCredential(requestParameters: CheckUserCredentialRequest, initOverrides?: RequestInit): Promise<RespBasic> {
118
+ async checkUserCredential(requestParameters: CheckUserCredentialRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<RespBasic> {
110
119
  const response = await this.checkUserCredentialRaw(requestParameters, initOverrides);
111
120
  return await response.value();
112
121
  }
113
122
 
114
123
  /**
115
- * Create or update credentials in the Security Kernel for given system and target *userName* using a request body. Credentials for multiple authentication methods may be provided. Note that there is support for only one set of credentials per user per system. Updating credentials overwrites previously registered data. The Systems service does not store the secrets in its database, they are persisted in the Security Kernel. If the *effectiveUserId* for the system is dynamic (i.e. equal to *${apiUserId}*) then *{userName}* is interpreted as a Tapis user and the request body may contain the optional attribute *loginUser* which will be used to map the Tapis user to a username to be used when accessing the system. If the login user is not provided then there is no mapping and the Tapis user is always used when accessing the system. If the *effectiveUserId* for the system is static (i.e. not *${apiUserId}*) then *{userName}* is interpreted as the login user to be used when accessing the host. Operation is allowed if requester is the system owner or a tenant administrator. If the *effectiveUserId* for the system is dynamic (i.e. equal to *${apiUserId}*) then the operation is allowed if *{userName}* is the Tapis user making the request. By default credentials for LINUX and S3 type systems are verified. Use query parameter *skipCredentialCheck=true* to bypass initial credential validation.
124
+ * Create or update credentials in the Security Kernel for given system and target *userName* using a request body. Credentials for multiple authentication methods may be provided. Note that there is support for only one set of credentials per user per system. Updating credentials overwrites previously registered data. The Systems service does not store the secrets in its database, they are persisted in the Security Kernel. If the *effectiveUserId* for the system is dynamic (i.e. equal to *${apiUserId}*) then *{userName}* is interpreted as a Tapis user and the request body may contain the optional attribute *loginUser* which will be used to map the Tapis user to a username to be used when accessing the system. If the login user is not provided then there is no mapping and the Tapis user is always used when accessing the system. Note that what we call the *Tapis user* comes from the username claim in the Tapis JWT. If the *effectiveUserId* for the system is static (i.e. not *${apiUserId}*) then *{userName}* is interpreted as the login user to be used when accessing the host. Please note that if there is a *loginUser* field in the request body, TAPIS will reject the request because the static effective user is always the login user. Operation is allowed if requester is the system owner or a tenant administrator. If the *effectiveUserId* for the system is dynamic (i.e. equal to *${apiUserId}*) then the operation is allowed if *{userName}* is the Tapis user making the request. Use query parameter *createTmsKeys=true* to have the service call a Trust Manager System (TMS) server to create and store an ssh keypair. Default is *false*. Please note that the following restrictions apply: - Tapis installation for your site must be configured to support the Trust Manager System (TMS). - The host for the system must have the sshd configuration set up to use TMS. - The *effectiveUserId* must be dynamic. - Mapping of user using *loginUser* is not supported. By default credentials for LINUX and S3 type systems are verified. Use query parameter *skipCredentialCheck=true* to bypass initial credential validation.
116
125
  */
117
- async createUserCredentialRaw(requestParameters: CreateUserCredentialRequest, initOverrides?: RequestInit): Promise<runtime.ApiResponse<RespBasic>> {
118
- if (requestParameters.systemId === null || requestParameters.systemId === undefined) {
119
- throw new runtime.RequiredError('systemId','Required parameter requestParameters.systemId was null or undefined when calling createUserCredential.');
126
+ async createUserCredentialRaw(requestParameters: CreateUserCredentialRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<RespBasic>> {
127
+ if (requestParameters['systemId'] == null) {
128
+ throw new runtime.RequiredError(
129
+ 'systemId',
130
+ 'Required parameter "systemId" was null or undefined when calling createUserCredential().'
131
+ );
120
132
  }
121
133
 
122
- if (requestParameters.userName === null || requestParameters.userName === undefined) {
123
- throw new runtime.RequiredError('userName','Required parameter requestParameters.userName was null or undefined when calling createUserCredential.');
134
+ if (requestParameters['userName'] == null) {
135
+ throw new runtime.RequiredError(
136
+ 'userName',
137
+ 'Required parameter "userName" was null or undefined when calling createUserCredential().'
138
+ );
124
139
  }
125
140
 
126
- if (requestParameters.reqUpdateCredential === null || requestParameters.reqUpdateCredential === undefined) {
127
- throw new runtime.RequiredError('reqUpdateCredential','Required parameter requestParameters.reqUpdateCredential was null or undefined when calling createUserCredential.');
141
+ if (requestParameters['reqUpdateCredential'] == null) {
142
+ throw new runtime.RequiredError(
143
+ 'reqUpdateCredential',
144
+ 'Required parameter "reqUpdateCredential" was null or undefined when calling createUserCredential().'
145
+ );
128
146
  }
129
147
 
130
148
  const queryParameters: any = {};
131
149
 
132
- if (requestParameters.skipCredentialCheck !== undefined) {
133
- queryParameters['skipCredentialCheck'] = requestParameters.skipCredentialCheck;
150
+ if (requestParameters['createTmsKeys'] != null) {
151
+ queryParameters['createTmsKeys'] = requestParameters['createTmsKeys'];
152
+ }
153
+
154
+ if (requestParameters['skipCredentialCheck'] != null) {
155
+ queryParameters['skipCredentialCheck'] = requestParameters['skipCredentialCheck'];
134
156
  }
135
157
 
136
158
  const headerParameters: runtime.HTTPHeaders = {};
@@ -138,47 +160,59 @@ export class CredentialsApi extends runtime.BaseAPI {
138
160
  headerParameters['Content-Type'] = 'application/json';
139
161
 
140
162
  if (this.configuration && this.configuration.apiKey) {
141
- headerParameters["X-Tapis-Token"] = this.configuration.apiKey("X-Tapis-Token"); // TapisJWT authentication
163
+ headerParameters["X-Tapis-Token"] = await this.configuration.apiKey("X-Tapis-Token"); // TapisJWT authentication
142
164
  }
143
165
 
144
166
  const response = await this.request({
145
- path: `/v3/systems/credential/{systemId}/user/{userName}`.replace(`{${"systemId"}}`, encodeURIComponent(String(requestParameters.systemId))).replace(`{${"userName"}}`, encodeURIComponent(String(requestParameters.userName))),
167
+ path: `/v3/systems/credential/{systemId}/user/{userName}`.replace(`{${"systemId"}}`, encodeURIComponent(String(requestParameters['systemId']))).replace(`{${"userName"}}`, encodeURIComponent(String(requestParameters['userName']))),
146
168
  method: 'POST',
147
169
  headers: headerParameters,
148
170
  query: queryParameters,
149
- body: ReqUpdateCredentialToJSON(requestParameters.reqUpdateCredential),
171
+ body: ReqUpdateCredentialToJSON(requestParameters['reqUpdateCredential']),
150
172
  }, initOverrides);
151
173
 
152
174
  return new runtime.JSONApiResponse(response, (jsonValue) => RespBasicFromJSON(jsonValue));
153
175
  }
154
176
 
155
177
  /**
156
- * Create or update credentials in the Security Kernel for given system and target *userName* using a request body. Credentials for multiple authentication methods may be provided. Note that there is support for only one set of credentials per user per system. Updating credentials overwrites previously registered data. The Systems service does not store the secrets in its database, they are persisted in the Security Kernel. If the *effectiveUserId* for the system is dynamic (i.e. equal to *${apiUserId}*) then *{userName}* is interpreted as a Tapis user and the request body may contain the optional attribute *loginUser* which will be used to map the Tapis user to a username to be used when accessing the system. If the login user is not provided then there is no mapping and the Tapis user is always used when accessing the system. If the *effectiveUserId* for the system is static (i.e. not *${apiUserId}*) then *{userName}* is interpreted as the login user to be used when accessing the host. Operation is allowed if requester is the system owner or a tenant administrator. If the *effectiveUserId* for the system is dynamic (i.e. equal to *${apiUserId}*) then the operation is allowed if *{userName}* is the Tapis user making the request. By default credentials for LINUX and S3 type systems are verified. Use query parameter *skipCredentialCheck=true* to bypass initial credential validation.
178
+ * Create or update credentials in the Security Kernel for given system and target *userName* using a request body. Credentials for multiple authentication methods may be provided. Note that there is support for only one set of credentials per user per system. Updating credentials overwrites previously registered data. The Systems service does not store the secrets in its database, they are persisted in the Security Kernel. If the *effectiveUserId* for the system is dynamic (i.e. equal to *${apiUserId}*) then *{userName}* is interpreted as a Tapis user and the request body may contain the optional attribute *loginUser* which will be used to map the Tapis user to a username to be used when accessing the system. If the login user is not provided then there is no mapping and the Tapis user is always used when accessing the system. Note that what we call the *Tapis user* comes from the username claim in the Tapis JWT. If the *effectiveUserId* for the system is static (i.e. not *${apiUserId}*) then *{userName}* is interpreted as the login user to be used when accessing the host. Please note that if there is a *loginUser* field in the request body, TAPIS will reject the request because the static effective user is always the login user. Operation is allowed if requester is the system owner or a tenant administrator. If the *effectiveUserId* for the system is dynamic (i.e. equal to *${apiUserId}*) then the operation is allowed if *{userName}* is the Tapis user making the request. Use query parameter *createTmsKeys=true* to have the service call a Trust Manager System (TMS) server to create and store an ssh keypair. Default is *false*. Please note that the following restrictions apply: - Tapis installation for your site must be configured to support the Trust Manager System (TMS). - The host for the system must have the sshd configuration set up to use TMS. - The *effectiveUserId* must be dynamic. - Mapping of user using *loginUser* is not supported. By default credentials for LINUX and S3 type systems are verified. Use query parameter *skipCredentialCheck=true* to bypass initial credential validation.
157
179
  */
158
- async createUserCredential(requestParameters: CreateUserCredentialRequest, initOverrides?: RequestInit): Promise<RespBasic> {
180
+ async createUserCredential(requestParameters: CreateUserCredentialRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<RespBasic> {
159
181
  const response = await this.createUserCredentialRaw(requestParameters, initOverrides);
160
182
  return await response.value();
161
183
  }
162
184
 
163
185
  /**
164
- * Use a Globus *Native App Authorization Code* and a Tapis session Id to generate a pair of access and refresh tokens. The Systems service will use the Tapis Security Kernel to store the tokens for the given system and user. The session Id is a Tapis Id that is used to track the oauth2 flow that is started when a call to the getGlobusAuthUrl endpoint is made. The authorization code, as per Globus documentation, is valid for 10 minutes. Please note that the Tapis installation for your site must be configured by the site administrator to support systems of type GLOBUS.
186
+ * Use a Globus *Native App Authorization Code* and a Tapis session Id to generate a pair of access and refresh tokens. System must be of type GLOBUS. The Systems service will use the Tapis Security Kernel to store the tokens for the given system and user. If the *effectiveUserId* for the system is dynamic (i.e. equal to *${apiUserId}*) then *{userName}* must be set to the Tapis user. Note that what we call the *Tapis user* comes from the username claim in the Tapis JWT. If the *effectiveUserId* for the system is static (i.e. not *${apiUserId}*) then *{userName}* must be set to the static *effectiveUserId*. The session Id is a Tapis Id that is used to track the oauth2 flow that is started when a call to the getGlobusAuthUrl endpoint is made. The authorization code, as per Globus documentation, is valid for 10 minutes. Please note that the Tapis installation for your site must be configured by the site administrator to support systems of type GLOBUS.
165
187
  * Use a Globus authorization code + Tapis session Id to generate tokens
166
188
  */
167
- async generateGlobusTokensRaw(requestParameters: GenerateGlobusTokensRequest, initOverrides?: RequestInit): Promise<runtime.ApiResponse<RespBasic>> {
168
- if (requestParameters.systemId === null || requestParameters.systemId === undefined) {
169
- throw new runtime.RequiredError('systemId','Required parameter requestParameters.systemId was null or undefined when calling generateGlobusTokens.');
189
+ async generateGlobusTokensRaw(requestParameters: GenerateGlobusTokensRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<RespBasic>> {
190
+ if (requestParameters['systemId'] == null) {
191
+ throw new runtime.RequiredError(
192
+ 'systemId',
193
+ 'Required parameter "systemId" was null or undefined when calling generateGlobusTokens().'
194
+ );
170
195
  }
171
196
 
172
- if (requestParameters.userName === null || requestParameters.userName === undefined) {
173
- throw new runtime.RequiredError('userName','Required parameter requestParameters.userName was null or undefined when calling generateGlobusTokens.');
197
+ if (requestParameters['userName'] == null) {
198
+ throw new runtime.RequiredError(
199
+ 'userName',
200
+ 'Required parameter "userName" was null or undefined when calling generateGlobusTokens().'
201
+ );
174
202
  }
175
203
 
176
- if (requestParameters.authCode === null || requestParameters.authCode === undefined) {
177
- throw new runtime.RequiredError('authCode','Required parameter requestParameters.authCode was null or undefined when calling generateGlobusTokens.');
204
+ if (requestParameters['authCode'] == null) {
205
+ throw new runtime.RequiredError(
206
+ 'authCode',
207
+ 'Required parameter "authCode" was null or undefined when calling generateGlobusTokens().'
208
+ );
178
209
  }
179
210
 
180
- if (requestParameters.sessionId === null || requestParameters.sessionId === undefined) {
181
- throw new runtime.RequiredError('sessionId','Required parameter requestParameters.sessionId was null or undefined when calling generateGlobusTokens.');
211
+ if (requestParameters['sessionId'] == null) {
212
+ throw new runtime.RequiredError(
213
+ 'sessionId',
214
+ 'Required parameter "sessionId" was null or undefined when calling generateGlobusTokens().'
215
+ );
182
216
  }
183
217
 
184
218
  const queryParameters: any = {};
@@ -186,11 +220,11 @@ export class CredentialsApi extends runtime.BaseAPI {
186
220
  const headerParameters: runtime.HTTPHeaders = {};
187
221
 
188
222
  if (this.configuration && this.configuration.apiKey) {
189
- headerParameters["X-Tapis-Token"] = this.configuration.apiKey("X-Tapis-Token"); // TapisJWT authentication
223
+ headerParameters["X-Tapis-Token"] = await this.configuration.apiKey("X-Tapis-Token"); // TapisJWT authentication
190
224
  }
191
225
 
192
226
  const response = await this.request({
193
- path: `/v3/systems/credential/{systemId}/user/{userName}/globus/tokens/{authCode}/{sessionId}`.replace(`{${"systemId"}}`, encodeURIComponent(String(requestParameters.systemId))).replace(`{${"userName"}}`, encodeURIComponent(String(requestParameters.userName))).replace(`{${"authCode"}}`, encodeURIComponent(String(requestParameters.authCode))).replace(`{${"sessionId"}}`, encodeURIComponent(String(requestParameters.sessionId))),
227
+ path: `/v3/systems/credential/{systemId}/user/{userName}/globus/tokens/{authCode}/{sessionId}`.replace(`{${"systemId"}}`, encodeURIComponent(String(requestParameters['systemId']))).replace(`{${"userName"}}`, encodeURIComponent(String(requestParameters['userName']))).replace(`{${"authCode"}}`, encodeURIComponent(String(requestParameters['authCode']))).replace(`{${"sessionId"}}`, encodeURIComponent(String(requestParameters['sessionId']))),
194
228
  method: 'POST',
195
229
  headers: headerParameters,
196
230
  query: queryParameters,
@@ -200,21 +234,24 @@ export class CredentialsApi extends runtime.BaseAPI {
200
234
  }
201
235
 
202
236
  /**
203
- * Use a Globus *Native App Authorization Code* and a Tapis session Id to generate a pair of access and refresh tokens. The Systems service will use the Tapis Security Kernel to store the tokens for the given system and user. The session Id is a Tapis Id that is used to track the oauth2 flow that is started when a call to the getGlobusAuthUrl endpoint is made. The authorization code, as per Globus documentation, is valid for 10 minutes. Please note that the Tapis installation for your site must be configured by the site administrator to support systems of type GLOBUS.
237
+ * Use a Globus *Native App Authorization Code* and a Tapis session Id to generate a pair of access and refresh tokens. System must be of type GLOBUS. The Systems service will use the Tapis Security Kernel to store the tokens for the given system and user. If the *effectiveUserId* for the system is dynamic (i.e. equal to *${apiUserId}*) then *{userName}* must be set to the Tapis user. Note that what we call the *Tapis user* comes from the username claim in the Tapis JWT. If the *effectiveUserId* for the system is static (i.e. not *${apiUserId}*) then *{userName}* must be set to the static *effectiveUserId*. The session Id is a Tapis Id that is used to track the oauth2 flow that is started when a call to the getGlobusAuthUrl endpoint is made. The authorization code, as per Globus documentation, is valid for 10 minutes. Please note that the Tapis installation for your site must be configured by the site administrator to support systems of type GLOBUS.
204
238
  * Use a Globus authorization code + Tapis session Id to generate tokens
205
239
  */
206
- async generateGlobusTokens(requestParameters: GenerateGlobusTokensRequest, initOverrides?: RequestInit): Promise<RespBasic> {
240
+ async generateGlobusTokens(requestParameters: GenerateGlobusTokensRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<RespBasic> {
207
241
  const response = await this.generateGlobusTokensRaw(requestParameters, initOverrides);
208
242
  return await response.value();
209
243
  }
210
244
 
211
245
  /**
212
- * Retrieve a Globus URL + Session Id that can be used to generate an oauth2 authorization code associated with the given system. In Globus, the code is referred to as a *Native App Authorization Code*. The host property of the system is used as the Globus Endpoint Id or Globus Collection Id. Once a user has obtained an authorization code, the corresponding Systems endpoint for generating Globus tokens should be called to exchange the code + sessionId for a pair of access and refresh tokens. The session Id is a Tapis Id that is used to track the oauth2 flow that is started when this call is made. The authorization code, as per Globus documentation, is valid for 10 minutes. Please note that the Tapis installation for your site must be configured by the site administrator to support systems of type GLOBUS.
246
+ * Retrieve a Globus URL + Session Id that can be used to generate an oauth2 authorization code associated with the given system. System must be of type GLOBUS. In Globus, the code is referred to as a *Native App Authorization Code*. The host property of the system is used as the Globus Endpoint Id or Globus Collection Id. Once a user has obtained an authorization code, the corresponding Systems endpoint for generating Globus tokens should be called to exchange the code + sessionId for a pair of access and refresh tokens. The session Id is a Tapis Id that is used to track the oauth2 flow that is started when this call is made. The authorization code, as per Globus documentation, is valid for 10 minutes. Please note that the Tapis installation for your site must be configured by the site administrator to support systems of type GLOBUS.
213
247
  * Retrieve a Globus URL that can be used to generate an authorization code for an OAuth2 flow.
214
248
  */
215
- async getGlobusAuthUrlRaw(requestParameters: GetGlobusAuthUrlRequest, initOverrides?: RequestInit): Promise<runtime.ApiResponse<RespGlobusAuthUrl>> {
216
- if (requestParameters.systemId === null || requestParameters.systemId === undefined) {
217
- throw new runtime.RequiredError('systemId','Required parameter requestParameters.systemId was null or undefined when calling getGlobusAuthUrl.');
249
+ async getGlobusAuthUrlRaw(requestParameters: GetGlobusAuthUrlRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<RespGlobusAuthUrl>> {
250
+ if (requestParameters['systemId'] == null) {
251
+ throw new runtime.RequiredError(
252
+ 'systemId',
253
+ 'Required parameter "systemId" was null or undefined when calling getGlobusAuthUrl().'
254
+ );
218
255
  }
219
256
 
220
257
  const queryParameters: any = {};
@@ -222,11 +259,11 @@ export class CredentialsApi extends runtime.BaseAPI {
222
259
  const headerParameters: runtime.HTTPHeaders = {};
223
260
 
224
261
  if (this.configuration && this.configuration.apiKey) {
225
- headerParameters["X-Tapis-Token"] = this.configuration.apiKey("X-Tapis-Token"); // TapisJWT authentication
262
+ headerParameters["X-Tapis-Token"] = await this.configuration.apiKey("X-Tapis-Token"); // TapisJWT authentication
226
263
  }
227
264
 
228
265
  const response = await this.request({
229
- path: `/v3/systems/credential/{systemId}/globus/authUrl`.replace(`{${"systemId"}}`, encodeURIComponent(String(requestParameters.systemId))),
266
+ path: `/v3/systems/credential/{systemId}/globus/authUrl`.replace(`{${"systemId"}}`, encodeURIComponent(String(requestParameters['systemId']))),
230
267
  method: 'GET',
231
268
  headers: headerParameters,
232
269
  query: queryParameters,
@@ -236,40 +273,46 @@ export class CredentialsApi extends runtime.BaseAPI {
236
273
  }
237
274
 
238
275
  /**
239
- * Retrieve a Globus URL + Session Id that can be used to generate an oauth2 authorization code associated with the given system. In Globus, the code is referred to as a *Native App Authorization Code*. The host property of the system is used as the Globus Endpoint Id or Globus Collection Id. Once a user has obtained an authorization code, the corresponding Systems endpoint for generating Globus tokens should be called to exchange the code + sessionId for a pair of access and refresh tokens. The session Id is a Tapis Id that is used to track the oauth2 flow that is started when this call is made. The authorization code, as per Globus documentation, is valid for 10 minutes. Please note that the Tapis installation for your site must be configured by the site administrator to support systems of type GLOBUS.
276
+ * Retrieve a Globus URL + Session Id that can be used to generate an oauth2 authorization code associated with the given system. System must be of type GLOBUS. In Globus, the code is referred to as a *Native App Authorization Code*. The host property of the system is used as the Globus Endpoint Id or Globus Collection Id. Once a user has obtained an authorization code, the corresponding Systems endpoint for generating Globus tokens should be called to exchange the code + sessionId for a pair of access and refresh tokens. The session Id is a Tapis Id that is used to track the oauth2 flow that is started when this call is made. The authorization code, as per Globus documentation, is valid for 10 minutes. Please note that the Tapis installation for your site must be configured by the site administrator to support systems of type GLOBUS.
240
277
  * Retrieve a Globus URL that can be used to generate an authorization code for an OAuth2 flow.
241
278
  */
242
- async getGlobusAuthUrl(requestParameters: GetGlobusAuthUrlRequest, initOverrides?: RequestInit): Promise<RespGlobusAuthUrl> {
279
+ async getGlobusAuthUrl(requestParameters: GetGlobusAuthUrlRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<RespGlobusAuthUrl> {
243
280
  const response = await this.getGlobusAuthUrlRaw(requestParameters, initOverrides);
244
281
  return await response.value();
245
282
  }
246
283
 
247
284
  /**
248
- * Restricted. Only certain Tapis services authorized. Retrieve credentials for given system, target *userName* and authentication method. If the *effectiveUserId* for the system is dynamic (i.e. equal to *${apiUserId}*) then *{userName}* is interpreted as a Tapis user. Note that there may me a mapping of the Tapis user to a host *loginUser*. If the *effectiveUserId* for the system is static (i.e. not *${apiUserId}*) then *{userName}* is interpreted as the host *loginUser* that is used when accessing the host. Desired authentication method may be specified using query parameter *authnMethod*. If desired authentication method not specified then credentials for the system\'s default authentication method are returned. The result includes the attribute *authnMethod* indicating the authentication method associated with the returned credentials.
285
+ * Restricted. Only certain Tapis services authorized. Retrieve credentials for given system, target *userName* and authentication method. If the *effectiveUserId* for the system is dynamic (i.e. equal to *${apiUserId}*) then *{userName}* is interpreted as a Tapis user. Note that there may me a mapping of the Tapis user to a host *loginUser* and what we call the *Tapis user* comes from the username claim in the Tapis JWT. If the *effectiveUserId* for the system is static (i.e. not *${apiUserId}*) then *{userName}* is interpreted as the host *loginUser* that is used when accessing the host. Desired authentication method may be specified using query parameter *authnMethod*. If desired authentication method not specified then credentials for the system\'s default authentication method are returned. The result includes the attribute *authnMethod* indicating the authentication method associated with the returned credentials.
249
286
  */
250
- async getUserCredentialRaw(requestParameters: GetUserCredentialRequest, initOverrides?: RequestInit): Promise<runtime.ApiResponse<RespCredential>> {
251
- if (requestParameters.systemId === null || requestParameters.systemId === undefined) {
252
- throw new runtime.RequiredError('systemId','Required parameter requestParameters.systemId was null or undefined when calling getUserCredential.');
287
+ async getUserCredentialRaw(requestParameters: GetUserCredentialRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<RespCredential>> {
288
+ if (requestParameters['systemId'] == null) {
289
+ throw new runtime.RequiredError(
290
+ 'systemId',
291
+ 'Required parameter "systemId" was null or undefined when calling getUserCredential().'
292
+ );
253
293
  }
254
294
 
255
- if (requestParameters.userName === null || requestParameters.userName === undefined) {
256
- throw new runtime.RequiredError('userName','Required parameter requestParameters.userName was null or undefined when calling getUserCredential.');
295
+ if (requestParameters['userName'] == null) {
296
+ throw new runtime.RequiredError(
297
+ 'userName',
298
+ 'Required parameter "userName" was null or undefined when calling getUserCredential().'
299
+ );
257
300
  }
258
301
 
259
302
  const queryParameters: any = {};
260
303
 
261
- if (requestParameters.authnMethod !== undefined) {
262
- queryParameters['authnMethod'] = requestParameters.authnMethod;
304
+ if (requestParameters['authnMethod'] != null) {
305
+ queryParameters['authnMethod'] = requestParameters['authnMethod'];
263
306
  }
264
307
 
265
308
  const headerParameters: runtime.HTTPHeaders = {};
266
309
 
267
310
  if (this.configuration && this.configuration.apiKey) {
268
- headerParameters["X-Tapis-Token"] = this.configuration.apiKey("X-Tapis-Token"); // TapisJWT authentication
311
+ headerParameters["X-Tapis-Token"] = await this.configuration.apiKey("X-Tapis-Token"); // TapisJWT authentication
269
312
  }
270
313
 
271
314
  const response = await this.request({
272
- path: `/v3/systems/credential/{systemId}/user/{userName}`.replace(`{${"systemId"}}`, encodeURIComponent(String(requestParameters.systemId))).replace(`{${"userName"}}`, encodeURIComponent(String(requestParameters.userName))),
315
+ path: `/v3/systems/credential/{systemId}/user/{userName}`.replace(`{${"systemId"}}`, encodeURIComponent(String(requestParameters['systemId']))).replace(`{${"userName"}}`, encodeURIComponent(String(requestParameters['userName']))),
273
316
  method: 'GET',
274
317
  headers: headerParameters,
275
318
  query: queryParameters,
@@ -279,9 +322,9 @@ export class CredentialsApi extends runtime.BaseAPI {
279
322
  }
280
323
 
281
324
  /**
282
- * Restricted. Only certain Tapis services authorized. Retrieve credentials for given system, target *userName* and authentication method. If the *effectiveUserId* for the system is dynamic (i.e. equal to *${apiUserId}*) then *{userName}* is interpreted as a Tapis user. Note that there may me a mapping of the Tapis user to a host *loginUser*. If the *effectiveUserId* for the system is static (i.e. not *${apiUserId}*) then *{userName}* is interpreted as the host *loginUser* that is used when accessing the host. Desired authentication method may be specified using query parameter *authnMethod*. If desired authentication method not specified then credentials for the system\'s default authentication method are returned. The result includes the attribute *authnMethod* indicating the authentication method associated with the returned credentials.
325
+ * Restricted. Only certain Tapis services authorized. Retrieve credentials for given system, target *userName* and authentication method. If the *effectiveUserId* for the system is dynamic (i.e. equal to *${apiUserId}*) then *{userName}* is interpreted as a Tapis user. Note that there may me a mapping of the Tapis user to a host *loginUser* and what we call the *Tapis user* comes from the username claim in the Tapis JWT. If the *effectiveUserId* for the system is static (i.e. not *${apiUserId}*) then *{userName}* is interpreted as the host *loginUser* that is used when accessing the host. Desired authentication method may be specified using query parameter *authnMethod*. If desired authentication method not specified then credentials for the system\'s default authentication method are returned. The result includes the attribute *authnMethod* indicating the authentication method associated with the returned credentials.
283
326
  */
284
- async getUserCredential(requestParameters: GetUserCredentialRequest, initOverrides?: RequestInit): Promise<RespCredential> {
327
+ async getUserCredential(requestParameters: GetUserCredentialRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<RespCredential> {
285
328
  const response = await this.getUserCredentialRaw(requestParameters, initOverrides);
286
329
  return await response.value();
287
330
  }
@@ -289,13 +332,19 @@ export class CredentialsApi extends runtime.BaseAPI {
289
332
  /**
290
333
  * Remove credentials from the Security Kernel for given system and *target user*. Requester must be owner of the system. Operation is allowed if requester is the system owner or a tenant administrator. If the *effectiveUserId* for the system is dynamic (i.e. equal to *${apiUserId}*) then the operation is allowed if *{userName}* is the Tapis user making the request.
291
334
  */
292
- async removeUserCredentialRaw(requestParameters: RemoveUserCredentialRequest, initOverrides?: RequestInit): Promise<runtime.ApiResponse<RespBasic>> {
293
- if (requestParameters.systemId === null || requestParameters.systemId === undefined) {
294
- throw new runtime.RequiredError('systemId','Required parameter requestParameters.systemId was null or undefined when calling removeUserCredential.');
335
+ async removeUserCredentialRaw(requestParameters: RemoveUserCredentialRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<RespBasic>> {
336
+ if (requestParameters['systemId'] == null) {
337
+ throw new runtime.RequiredError(
338
+ 'systemId',
339
+ 'Required parameter "systemId" was null or undefined when calling removeUserCredential().'
340
+ );
295
341
  }
296
342
 
297
- if (requestParameters.userName === null || requestParameters.userName === undefined) {
298
- throw new runtime.RequiredError('userName','Required parameter requestParameters.userName was null or undefined when calling removeUserCredential.');
343
+ if (requestParameters['userName'] == null) {
344
+ throw new runtime.RequiredError(
345
+ 'userName',
346
+ 'Required parameter "userName" was null or undefined when calling removeUserCredential().'
347
+ );
299
348
  }
300
349
 
301
350
  const queryParameters: any = {};
@@ -303,11 +352,11 @@ export class CredentialsApi extends runtime.BaseAPI {
303
352
  const headerParameters: runtime.HTTPHeaders = {};
304
353
 
305
354
  if (this.configuration && this.configuration.apiKey) {
306
- headerParameters["X-Tapis-Token"] = this.configuration.apiKey("X-Tapis-Token"); // TapisJWT authentication
355
+ headerParameters["X-Tapis-Token"] = await this.configuration.apiKey("X-Tapis-Token"); // TapisJWT authentication
307
356
  }
308
357
 
309
358
  const response = await this.request({
310
- path: `/v3/systems/credential/{systemId}/user/{userName}`.replace(`{${"systemId"}}`, encodeURIComponent(String(requestParameters.systemId))).replace(`{${"userName"}}`, encodeURIComponent(String(requestParameters.userName))),
359
+ path: `/v3/systems/credential/{systemId}/user/{userName}`.replace(`{${"systemId"}}`, encodeURIComponent(String(requestParameters['systemId']))).replace(`{${"userName"}}`, encodeURIComponent(String(requestParameters['userName']))),
311
360
  method: 'DELETE',
312
361
  headers: headerParameters,
313
362
  query: queryParameters,
@@ -319,7 +368,7 @@ export class CredentialsApi extends runtime.BaseAPI {
319
368
  /**
320
369
  * Remove credentials from the Security Kernel for given system and *target user*. Requester must be owner of the system. Operation is allowed if requester is the system owner or a tenant administrator. If the *effectiveUserId* for the system is dynamic (i.e. equal to *${apiUserId}*) then the operation is allowed if *{userName}* is the Tapis user making the request.
321
370
  */
322
- async removeUserCredential(requestParameters: RemoveUserCredentialRequest, initOverrides?: RequestInit): Promise<RespBasic> {
371
+ async removeUserCredential(requestParameters: RemoveUserCredentialRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<RespBasic> {
323
372
  const response = await this.removeUserCredentialRaw(requestParameters, initOverrides);
324
373
  return await response.value();
325
374
  }
@@ -4,7 +4,7 @@
4
4
  * Tapis Systems API
5
5
  * The Tapis Systems API provides for management of Tapis Systems including permissions, credentials and Scheduler Profiles.
6
6
  *
7
- * The version of the OpenAPI document: 1.7.0
7
+ * The version of the OpenAPI document: 25Q4.2
8
8
  * Contact: cicsupport@tacc.utexas.edu
9
9
  *
10
10
  * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
@@ -14,11 +14,13 @@
14
14
 
15
15
 
16
16
  import * as runtime from '../runtime';
17
+ import type {
18
+ RespBasic,
19
+ } from '../models/index';
17
20
  import {
18
- RespBasic,
19
21
  RespBasicFromJSON,
20
22
  RespBasicToJSON,
21
- } from '../models';
23
+ } from '../models/index';
22
24
 
23
25
  /**
24
26
  *
@@ -28,7 +30,7 @@ export class GeneralApi extends runtime.BaseAPI {
28
30
  /**
29
31
  * Health check. Lightweight non-authenticated check that service is alive.
30
32
  */
31
- async healthCheckRaw(initOverrides?: RequestInit): Promise<runtime.ApiResponse<RespBasic>> {
33
+ async healthCheckRaw(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<RespBasic>> {
32
34
  const queryParameters: any = {};
33
35
 
34
36
  const headerParameters: runtime.HTTPHeaders = {};
@@ -46,7 +48,7 @@ export class GeneralApi extends runtime.BaseAPI {
46
48
  /**
47
49
  * Health check. Lightweight non-authenticated check that service is alive.
48
50
  */
49
- async healthCheck(initOverrides?: RequestInit): Promise<RespBasic> {
51
+ async healthCheck(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<RespBasic> {
50
52
  const response = await this.healthCheckRaw(initOverrides);
51
53
  return await response.value();
52
54
  }
@@ -54,7 +56,7 @@ export class GeneralApi extends runtime.BaseAPI {
54
56
  /**
55
57
  * Ready check. Non-authenticated check that service is ready to do work.
56
58
  */
57
- async readyCheckRaw(initOverrides?: RequestInit): Promise<runtime.ApiResponse<RespBasic>> {
59
+ async readyCheckRaw(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<RespBasic>> {
58
60
  const queryParameters: any = {};
59
61
 
60
62
  const headerParameters: runtime.HTTPHeaders = {};
@@ -72,7 +74,7 @@ export class GeneralApi extends runtime.BaseAPI {
72
74
  /**
73
75
  * Ready check. Non-authenticated check that service is ready to do work.
74
76
  */
75
- async readyCheck(initOverrides?: RequestInit): Promise<RespBasic> {
77
+ async readyCheck(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<RespBasic> {
76
78
  const response = await this.readyCheckRaw(initOverrides);
77
79
  return await response.value();
78
80
  }