@cirrobio/api-client 0.0.36-alpha → 0.0.37-alpha

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.
@@ -17,6 +17,7 @@ src/apis/SystemApi.ts
17
17
  src/apis/UsersApi.ts
18
18
  src/apis/index.ts
19
19
  src/index.ts
20
+ src/models/AccessType.ts
20
21
  src/models/AllowedDataType.ts
21
22
  src/models/BillingAccount.ts
22
23
  src/models/BillingAccountRequest.ts
@@ -37,6 +38,7 @@ src/models/DatasetDetail.ts
37
38
  src/models/DatasetViz.ts
38
39
  src/models/ErrorMessage.ts
39
40
  src/models/Executor.ts
41
+ src/models/FileAccessRequest.ts
40
42
  src/models/FileEntry.ts
41
43
  src/models/FileNamePattern.ts
42
44
  src/models/FileRequirements.ts
package/README.md CHANGED
@@ -36,7 +36,7 @@ navigate to the folder of your consuming project and run one of the following co
36
36
  _published:_
37
37
 
38
38
  ```
39
- npm install @cirrobio/api-client@0.0.36-alpha --save
39
+ npm install @cirrobio/api-client@0.0.37-alpha --save
40
40
  ```
41
41
 
42
42
  _unPublished (not recommended):_
@@ -10,11 +10,12 @@
10
10
  * Do not edit the class manually.
11
11
  */
12
12
  import * as runtime from '../runtime';
13
- import type { GenerateSftpCredentialsRequest, S3Credentials, SftpCredentials } from '../models/index';
14
- export interface GenerateFileAccessTokenRequest {
13
+ import type { FileAccessRequest, GenerateSftpCredentialsRequest, S3Credentials, SftpCredentials } from '../models/index';
14
+ export interface GenerateProjectFileAccessTokenRequest {
15
15
  projectId: string;
16
+ fileAccessRequest: FileAccessRequest;
16
17
  }
17
- export interface GenerateSftpTokenRequest {
18
+ export interface GenerateProjectSftpTokenRequest {
18
19
  projectId: string;
19
20
  generateSftpCredentialsRequest: GenerateSftpCredentialsRequest;
20
21
  }
@@ -24,22 +25,22 @@ export interface GenerateSftpTokenRequest {
24
25
  export declare class FileApi extends runtime.BaseAPI {
25
26
  /**
26
27
  * Generates credentials used for connecting via S3
27
- * Create file access token
28
+ * Create project file access token
28
29
  */
29
- generateFileAccessTokenRaw(requestParameters: GenerateFileAccessTokenRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<S3Credentials>>;
30
+ generateProjectFileAccessTokenRaw(requestParameters: GenerateProjectFileAccessTokenRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<S3Credentials>>;
30
31
  /**
31
32
  * Generates credentials used for connecting via S3
32
- * Create file access token
33
+ * Create project file access token
33
34
  */
34
- generateFileAccessToken(requestParameters: GenerateFileAccessTokenRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<S3Credentials>;
35
+ generateProjectFileAccessToken(requestParameters: GenerateProjectFileAccessTokenRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<S3Credentials>;
35
36
  /**
36
37
  * Generates credentials used for connecting via SFTP
37
- * Create SFTP Token
38
+ * Create project SFTP Token
38
39
  */
39
- generateSftpTokenRaw(requestParameters: GenerateSftpTokenRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<SftpCredentials>>;
40
+ generateProjectSftpTokenRaw(requestParameters: GenerateProjectSftpTokenRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<SftpCredentials>>;
40
41
  /**
41
42
  * Generates credentials used for connecting via SFTP
42
- * Create SFTP Token
43
+ * Create project SFTP Token
43
44
  */
44
- generateSftpToken(requestParameters: GenerateSftpTokenRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<SftpCredentials>;
45
+ generateProjectSftpToken(requestParameters: GenerateProjectSftpTokenRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<SftpCredentials>;
45
46
  }
@@ -77,19 +77,23 @@ var FileApi = /** @class */ (function (_super) {
77
77
  }
78
78
  /**
79
79
  * Generates credentials used for connecting via S3
80
- * Create file access token
80
+ * Create project file access token
81
81
  */
82
- FileApi.prototype.generateFileAccessTokenRaw = function (requestParameters, initOverrides) {
82
+ FileApi.prototype.generateProjectFileAccessTokenRaw = function (requestParameters, initOverrides) {
83
83
  return __awaiter(this, void 0, void 0, function () {
84
84
  var queryParameters, headerParameters, token, tokenString, response;
85
85
  return __generator(this, function (_a) {
86
86
  switch (_a.label) {
87
87
  case 0:
88
88
  if (requestParameters.projectId === null || requestParameters.projectId === undefined) {
89
- throw new runtime.RequiredError('projectId', 'Required parameter requestParameters.projectId was null or undefined when calling generateFileAccessToken.');
89
+ throw new runtime.RequiredError('projectId', 'Required parameter requestParameters.projectId was null or undefined when calling generateProjectFileAccessToken.');
90
+ }
91
+ if (requestParameters.fileAccessRequest === null || requestParameters.fileAccessRequest === undefined) {
92
+ throw new runtime.RequiredError('fileAccessRequest', 'Required parameter requestParameters.fileAccessRequest was null or undefined when calling generateProjectFileAccessToken.');
90
93
  }
91
94
  queryParameters = {};
92
95
  headerParameters = {};
96
+ headerParameters['Content-Type'] = 'application/json';
93
97
  if (!(this.configuration && this.configuration.accessToken)) return [3 /*break*/, 2];
94
98
  token = this.configuration.accessToken;
95
99
  return [4 /*yield*/, token("accessToken", [])];
@@ -104,6 +108,7 @@ var FileApi = /** @class */ (function (_super) {
104
108
  method: 'POST',
105
109
  headers: headerParameters,
106
110
  query: queryParameters,
111
+ body: (0, index_1.FileAccessRequestToJSON)(requestParameters.fileAccessRequest),
107
112
  }, initOverrides)];
108
113
  case 3:
109
114
  response = _a.sent();
@@ -114,14 +119,14 @@ var FileApi = /** @class */ (function (_super) {
114
119
  };
115
120
  /**
116
121
  * Generates credentials used for connecting via S3
117
- * Create file access token
122
+ * Create project file access token
118
123
  */
119
- FileApi.prototype.generateFileAccessToken = function (requestParameters, initOverrides) {
124
+ FileApi.prototype.generateProjectFileAccessToken = function (requestParameters, initOverrides) {
120
125
  return __awaiter(this, void 0, void 0, function () {
121
126
  var response;
122
127
  return __generator(this, function (_a) {
123
128
  switch (_a.label) {
124
- case 0: return [4 /*yield*/, this.generateFileAccessTokenRaw(requestParameters, initOverrides)];
129
+ case 0: return [4 /*yield*/, this.generateProjectFileAccessTokenRaw(requestParameters, initOverrides)];
125
130
  case 1:
126
131
  response = _a.sent();
127
132
  return [4 /*yield*/, response.value()];
@@ -132,19 +137,19 @@ var FileApi = /** @class */ (function (_super) {
132
137
  };
133
138
  /**
134
139
  * Generates credentials used for connecting via SFTP
135
- * Create SFTP Token
140
+ * Create project SFTP Token
136
141
  */
137
- FileApi.prototype.generateSftpTokenRaw = function (requestParameters, initOverrides) {
142
+ FileApi.prototype.generateProjectSftpTokenRaw = function (requestParameters, initOverrides) {
138
143
  return __awaiter(this, void 0, void 0, function () {
139
144
  var queryParameters, headerParameters, token, tokenString, response;
140
145
  return __generator(this, function (_a) {
141
146
  switch (_a.label) {
142
147
  case 0:
143
148
  if (requestParameters.projectId === null || requestParameters.projectId === undefined) {
144
- throw new runtime.RequiredError('projectId', 'Required parameter requestParameters.projectId was null or undefined when calling generateSftpToken.');
149
+ throw new runtime.RequiredError('projectId', 'Required parameter requestParameters.projectId was null or undefined when calling generateProjectSftpToken.');
145
150
  }
146
151
  if (requestParameters.generateSftpCredentialsRequest === null || requestParameters.generateSftpCredentialsRequest === undefined) {
147
- throw new runtime.RequiredError('generateSftpCredentialsRequest', 'Required parameter requestParameters.generateSftpCredentialsRequest was null or undefined when calling generateSftpToken.');
152
+ throw new runtime.RequiredError('generateSftpCredentialsRequest', 'Required parameter requestParameters.generateSftpCredentialsRequest was null or undefined when calling generateProjectSftpToken.');
148
153
  }
149
154
  queryParameters = {};
150
155
  headerParameters = {};
@@ -174,14 +179,14 @@ var FileApi = /** @class */ (function (_super) {
174
179
  };
175
180
  /**
176
181
  * Generates credentials used for connecting via SFTP
177
- * Create SFTP Token
182
+ * Create project SFTP Token
178
183
  */
179
- FileApi.prototype.generateSftpToken = function (requestParameters, initOverrides) {
184
+ FileApi.prototype.generateProjectSftpToken = function (requestParameters, initOverrides) {
180
185
  return __awaiter(this, void 0, void 0, function () {
181
186
  var response;
182
187
  return __generator(this, function (_a) {
183
188
  switch (_a.label) {
184
- case 0: return [4 /*yield*/, this.generateSftpTokenRaw(requestParameters, initOverrides)];
189
+ case 0: return [4 /*yield*/, this.generateProjectSftpTokenRaw(requestParameters, initOverrides)];
185
190
  case 1:
186
191
  response = _a.sent();
187
192
  return [4 /*yield*/, response.value()];
@@ -0,0 +1,25 @@
1
+ /**
2
+ * Cirro Data
3
+ * Cirro Data Platform service API
4
+ *
5
+ * The version of the OpenAPI document: latest
6
+ * Contact: support@cirro.bio
7
+ *
8
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
9
+ * https://openapi-generator.tech
10
+ * Do not edit the class manually.
11
+ */
12
+ /**
13
+ *
14
+ * @export
15
+ * @enum {string}
16
+ */
17
+ export declare enum AccessType {
18
+ DatasetUpload = "DATASET_UPLOAD",
19
+ SamplesheetUpload = "SAMPLESHEET_UPLOAD",
20
+ ReferenceUpload = "REFERENCE_UPLOAD",
21
+ ProjectDownload = "PROJECT_DOWNLOAD"
22
+ }
23
+ export declare function AccessTypeFromJSON(json: any): AccessType;
24
+ export declare function AccessTypeFromJSONTyped(json: any, ignoreDiscriminator: boolean): AccessType;
25
+ export declare function AccessTypeToJSON(value?: AccessType | null): any;
@@ -0,0 +1,40 @@
1
+ "use strict";
2
+ /* tslint:disable */
3
+ /* eslint-disable */
4
+ /**
5
+ * Cirro Data
6
+ * Cirro Data Platform service API
7
+ *
8
+ * The version of the OpenAPI document: latest
9
+ * Contact: support@cirro.bio
10
+ *
11
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
12
+ * https://openapi-generator.tech
13
+ * Do not edit the class manually.
14
+ */
15
+ Object.defineProperty(exports, "__esModule", { value: true });
16
+ exports.AccessTypeToJSON = exports.AccessTypeFromJSONTyped = exports.AccessTypeFromJSON = exports.AccessType = void 0;
17
+ /**
18
+ *
19
+ * @export
20
+ * @enum {string}
21
+ */
22
+ var AccessType;
23
+ (function (AccessType) {
24
+ AccessType["DatasetUpload"] = "DATASET_UPLOAD";
25
+ AccessType["SamplesheetUpload"] = "SAMPLESHEET_UPLOAD";
26
+ AccessType["ReferenceUpload"] = "REFERENCE_UPLOAD";
27
+ AccessType["ProjectDownload"] = "PROJECT_DOWNLOAD";
28
+ })(AccessType = exports.AccessType || (exports.AccessType = {}));
29
+ function AccessTypeFromJSON(json) {
30
+ return AccessTypeFromJSONTyped(json, false);
31
+ }
32
+ exports.AccessTypeFromJSON = AccessTypeFromJSON;
33
+ function AccessTypeFromJSONTyped(json, ignoreDiscriminator) {
34
+ return json;
35
+ }
36
+ exports.AccessTypeFromJSONTyped = AccessTypeFromJSONTyped;
37
+ function AccessTypeToJSON(value) {
38
+ return value;
39
+ }
40
+ exports.AccessTypeToJSON = AccessTypeToJSON;
@@ -0,0 +1,44 @@
1
+ /**
2
+ * Cirro Data
3
+ * Cirro Data Platform service API
4
+ *
5
+ * The version of the OpenAPI document: latest
6
+ * Contact: support@cirro.bio
7
+ *
8
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
9
+ * https://openapi-generator.tech
10
+ * Do not edit the class manually.
11
+ */
12
+ import type { AccessType } from './AccessType';
13
+ /**
14
+ *
15
+ * @export
16
+ * @interface FileAccessRequest
17
+ */
18
+ export interface FileAccessRequest {
19
+ /**
20
+ *
21
+ * @type {AccessType}
22
+ * @memberof FileAccessRequest
23
+ */
24
+ accessType: AccessType;
25
+ /**
26
+ *
27
+ * @type {string}
28
+ * @memberof FileAccessRequest
29
+ */
30
+ datasetId: string;
31
+ /**
32
+ *
33
+ * @type {number}
34
+ * @memberof FileAccessRequest
35
+ */
36
+ tokenLifetimeHours: number;
37
+ }
38
+ /**
39
+ * Check if a given object implements the FileAccessRequest interface.
40
+ */
41
+ export declare function instanceOfFileAccessRequest(value: object): boolean;
42
+ export declare function FileAccessRequestFromJSON(json: any): FileAccessRequest;
43
+ export declare function FileAccessRequestFromJSONTyped(json: any, ignoreDiscriminator: boolean): FileAccessRequest;
44
+ export declare function FileAccessRequestToJSON(value?: FileAccessRequest | null): any;
@@ -0,0 +1,57 @@
1
+ "use strict";
2
+ /* tslint:disable */
3
+ /* eslint-disable */
4
+ /**
5
+ * Cirro Data
6
+ * Cirro Data Platform service API
7
+ *
8
+ * The version of the OpenAPI document: latest
9
+ * Contact: support@cirro.bio
10
+ *
11
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
12
+ * https://openapi-generator.tech
13
+ * Do not edit the class manually.
14
+ */
15
+ Object.defineProperty(exports, "__esModule", { value: true });
16
+ exports.FileAccessRequestToJSON = exports.FileAccessRequestFromJSONTyped = exports.FileAccessRequestFromJSON = exports.instanceOfFileAccessRequest = void 0;
17
+ var AccessType_1 = require("./AccessType");
18
+ /**
19
+ * Check if a given object implements the FileAccessRequest interface.
20
+ */
21
+ function instanceOfFileAccessRequest(value) {
22
+ var isInstance = true;
23
+ isInstance = isInstance && "accessType" in value;
24
+ isInstance = isInstance && "datasetId" in value;
25
+ isInstance = isInstance && "tokenLifetimeHours" in value;
26
+ return isInstance;
27
+ }
28
+ exports.instanceOfFileAccessRequest = instanceOfFileAccessRequest;
29
+ function FileAccessRequestFromJSON(json) {
30
+ return FileAccessRequestFromJSONTyped(json, false);
31
+ }
32
+ exports.FileAccessRequestFromJSON = FileAccessRequestFromJSON;
33
+ function FileAccessRequestFromJSONTyped(json, ignoreDiscriminator) {
34
+ if ((json === undefined) || (json === null)) {
35
+ return json;
36
+ }
37
+ return {
38
+ 'accessType': (0, AccessType_1.AccessTypeFromJSON)(json['accessType']),
39
+ 'datasetId': json['datasetId'],
40
+ 'tokenLifetimeHours': json['tokenLifetimeHours'],
41
+ };
42
+ }
43
+ exports.FileAccessRequestFromJSONTyped = FileAccessRequestFromJSONTyped;
44
+ function FileAccessRequestToJSON(value) {
45
+ if (value === undefined) {
46
+ return undefined;
47
+ }
48
+ if (value === null) {
49
+ return null;
50
+ }
51
+ return {
52
+ 'accessType': (0, AccessType_1.AccessTypeToJSON)(value.accessType),
53
+ 'datasetId': value.datasetId,
54
+ 'tokenLifetimeHours': value.tokenLifetimeHours,
55
+ };
56
+ }
57
+ exports.FileAccessRequestToJSON = FileAccessRequestToJSON;
@@ -26,25 +26,25 @@ export interface S3Credentials {
26
26
  * @type {string}
27
27
  * @memberof S3Credentials
28
28
  */
29
- expiration: string;
29
+ secretAccessKey: string;
30
30
  /**
31
31
  *
32
32
  * @type {string}
33
33
  * @memberof S3Credentials
34
34
  */
35
- secretAccessKey: string;
35
+ sessionToken: string;
36
36
  /**
37
37
  *
38
- * @type {string}
38
+ * @type {Date}
39
39
  * @memberof S3Credentials
40
40
  */
41
- sessionToken: string;
41
+ expiration: Date;
42
42
  /**
43
- *
43
+ * Region of S3 Bucket
44
44
  * @type {string}
45
45
  * @memberof S3Credentials
46
46
  */
47
- region: string;
47
+ region?: string;
48
48
  }
49
49
  /**
50
50
  * Check if a given object implements the S3Credentials interface.
@@ -14,16 +14,16 @@
14
14
  */
15
15
  Object.defineProperty(exports, "__esModule", { value: true });
16
16
  exports.S3CredentialsToJSON = exports.S3CredentialsFromJSONTyped = exports.S3CredentialsFromJSON = exports.instanceOfS3Credentials = void 0;
17
+ var runtime_1 = require("../runtime");
17
18
  /**
18
19
  * Check if a given object implements the S3Credentials interface.
19
20
  */
20
21
  function instanceOfS3Credentials(value) {
21
22
  var isInstance = true;
22
23
  isInstance = isInstance && "accessKeyId" in value;
23
- isInstance = isInstance && "expiration" in value;
24
24
  isInstance = isInstance && "secretAccessKey" in value;
25
25
  isInstance = isInstance && "sessionToken" in value;
26
- isInstance = isInstance && "region" in value;
26
+ isInstance = isInstance && "expiration" in value;
27
27
  return isInstance;
28
28
  }
29
29
  exports.instanceOfS3Credentials = instanceOfS3Credentials;
@@ -37,10 +37,10 @@ function S3CredentialsFromJSONTyped(json, ignoreDiscriminator) {
37
37
  }
38
38
  return {
39
39
  'accessKeyId': json['accessKeyId'],
40
- 'expiration': json['expiration'],
41
40
  'secretAccessKey': json['secretAccessKey'],
42
41
  'sessionToken': json['sessionToken'],
43
- 'region': json['region'],
42
+ 'expiration': (new Date(json['expiration'])),
43
+ 'region': !(0, runtime_1.exists)(json, 'region') ? undefined : json['region'],
44
44
  };
45
45
  }
46
46
  exports.S3CredentialsFromJSONTyped = S3CredentialsFromJSONTyped;
@@ -53,9 +53,9 @@ function S3CredentialsToJSON(value) {
53
53
  }
54
54
  return {
55
55
  'accessKeyId': value.accessKeyId,
56
- 'expiration': value.expiration,
57
56
  'secretAccessKey': value.secretAccessKey,
58
57
  'sessionToken': value.sessionToken,
58
+ 'expiration': (value.expiration.toISOString()),
59
59
  'region': value.region,
60
60
  };
61
61
  }
@@ -1,3 +1,4 @@
1
+ export * from './AccessType';
1
2
  export * from './AllowedDataType';
2
3
  export * from './BillingAccount';
3
4
  export * from './BillingAccountRequest';
@@ -18,6 +19,7 @@ export * from './DatasetDetail';
18
19
  export * from './DatasetViz';
19
20
  export * from './ErrorMessage';
20
21
  export * from './Executor';
22
+ export * from './FileAccessRequest';
21
23
  export * from './FileEntry';
22
24
  export * from './FileNamePattern';
23
25
  export * from './FileRequirements';
@@ -16,6 +16,7 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
16
16
  Object.defineProperty(exports, "__esModule", { value: true });
17
17
  /* tslint:disable */
18
18
  /* eslint-disable */
19
+ __exportStar(require("./AccessType"), exports);
19
20
  __exportStar(require("./AllowedDataType"), exports);
20
21
  __exportStar(require("./BillingAccount"), exports);
21
22
  __exportStar(require("./BillingAccountRequest"), exports);
@@ -36,6 +37,7 @@ __exportStar(require("./DatasetDetail"), exports);
36
37
  __exportStar(require("./DatasetViz"), exports);
37
38
  __exportStar(require("./ErrorMessage"), exports);
38
39
  __exportStar(require("./Executor"), exports);
40
+ __exportStar(require("./FileAccessRequest"), exports);
39
41
  __exportStar(require("./FileEntry"), exports);
40
42
  __exportStar(require("./FileNamePattern"), exports);
41
43
  __exportStar(require("./FileRequirements"), exports);
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@cirrobio/api-client",
3
- "version": "0.0.36-alpha",
3
+ "version": "0.0.37-alpha",
4
4
  "description": "API client for Cirro",
5
5
  "author": "CirroBio",
6
6
  "repository": {
@@ -15,11 +15,14 @@
15
15
 
16
16
  import * as runtime from '../runtime';
17
17
  import type {
18
+ FileAccessRequest,
18
19
  GenerateSftpCredentialsRequest,
19
20
  S3Credentials,
20
21
  SftpCredentials,
21
22
  } from '../models/index';
22
23
  import {
24
+ FileAccessRequestFromJSON,
25
+ FileAccessRequestToJSON,
23
26
  GenerateSftpCredentialsRequestFromJSON,
24
27
  GenerateSftpCredentialsRequestToJSON,
25
28
  S3CredentialsFromJSON,
@@ -28,11 +31,12 @@ import {
28
31
  SftpCredentialsToJSON,
29
32
  } from '../models/index';
30
33
 
31
- export interface GenerateFileAccessTokenRequest {
34
+ export interface GenerateProjectFileAccessTokenRequest {
32
35
  projectId: string;
36
+ fileAccessRequest: FileAccessRequest;
33
37
  }
34
38
 
35
- export interface GenerateSftpTokenRequest {
39
+ export interface GenerateProjectSftpTokenRequest {
36
40
  projectId: string;
37
41
  generateSftpCredentialsRequest: GenerateSftpCredentialsRequest;
38
42
  }
@@ -44,17 +48,23 @@ export class FileApi extends runtime.BaseAPI {
44
48
 
45
49
  /**
46
50
  * Generates credentials used for connecting via S3
47
- * Create file access token
51
+ * Create project file access token
48
52
  */
49
- async generateFileAccessTokenRaw(requestParameters: GenerateFileAccessTokenRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<S3Credentials>> {
53
+ async generateProjectFileAccessTokenRaw(requestParameters: GenerateProjectFileAccessTokenRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<S3Credentials>> {
50
54
  if (requestParameters.projectId === null || requestParameters.projectId === undefined) {
51
- throw new runtime.RequiredError('projectId','Required parameter requestParameters.projectId was null or undefined when calling generateFileAccessToken.');
55
+ throw new runtime.RequiredError('projectId','Required parameter requestParameters.projectId was null or undefined when calling generateProjectFileAccessToken.');
56
+ }
57
+
58
+ if (requestParameters.fileAccessRequest === null || requestParameters.fileAccessRequest === undefined) {
59
+ throw new runtime.RequiredError('fileAccessRequest','Required parameter requestParameters.fileAccessRequest was null or undefined when calling generateProjectFileAccessToken.');
52
60
  }
53
61
 
54
62
  const queryParameters: any = {};
55
63
 
56
64
  const headerParameters: runtime.HTTPHeaders = {};
57
65
 
66
+ headerParameters['Content-Type'] = 'application/json';
67
+
58
68
  if (this.configuration && this.configuration.accessToken) {
59
69
  const token = this.configuration.accessToken;
60
70
  const tokenString = await token("accessToken", []);
@@ -68,6 +78,7 @@ export class FileApi extends runtime.BaseAPI {
68
78
  method: 'POST',
69
79
  headers: headerParameters,
70
80
  query: queryParameters,
81
+ body: FileAccessRequestToJSON(requestParameters.fileAccessRequest),
71
82
  }, initOverrides);
72
83
 
73
84
  return new runtime.JSONApiResponse(response, (jsonValue) => S3CredentialsFromJSON(jsonValue));
@@ -75,24 +86,24 @@ export class FileApi extends runtime.BaseAPI {
75
86
 
76
87
  /**
77
88
  * Generates credentials used for connecting via S3
78
- * Create file access token
89
+ * Create project file access token
79
90
  */
80
- async generateFileAccessToken(requestParameters: GenerateFileAccessTokenRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<S3Credentials> {
81
- const response = await this.generateFileAccessTokenRaw(requestParameters, initOverrides);
91
+ async generateProjectFileAccessToken(requestParameters: GenerateProjectFileAccessTokenRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<S3Credentials> {
92
+ const response = await this.generateProjectFileAccessTokenRaw(requestParameters, initOverrides);
82
93
  return await response.value();
83
94
  }
84
95
 
85
96
  /**
86
97
  * Generates credentials used for connecting via SFTP
87
- * Create SFTP Token
98
+ * Create project SFTP Token
88
99
  */
89
- async generateSftpTokenRaw(requestParameters: GenerateSftpTokenRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<SftpCredentials>> {
100
+ async generateProjectSftpTokenRaw(requestParameters: GenerateProjectSftpTokenRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<SftpCredentials>> {
90
101
  if (requestParameters.projectId === null || requestParameters.projectId === undefined) {
91
- throw new runtime.RequiredError('projectId','Required parameter requestParameters.projectId was null or undefined when calling generateSftpToken.');
102
+ throw new runtime.RequiredError('projectId','Required parameter requestParameters.projectId was null or undefined when calling generateProjectSftpToken.');
92
103
  }
93
104
 
94
105
  if (requestParameters.generateSftpCredentialsRequest === null || requestParameters.generateSftpCredentialsRequest === undefined) {
95
- throw new runtime.RequiredError('generateSftpCredentialsRequest','Required parameter requestParameters.generateSftpCredentialsRequest was null or undefined when calling generateSftpToken.');
106
+ throw new runtime.RequiredError('generateSftpCredentialsRequest','Required parameter requestParameters.generateSftpCredentialsRequest was null or undefined when calling generateProjectSftpToken.');
96
107
  }
97
108
 
98
109
  const queryParameters: any = {};
@@ -122,10 +133,10 @@ export class FileApi extends runtime.BaseAPI {
122
133
 
123
134
  /**
124
135
  * Generates credentials used for connecting via SFTP
125
- * Create SFTP Token
136
+ * Create project SFTP Token
126
137
  */
127
- async generateSftpToken(requestParameters: GenerateSftpTokenRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<SftpCredentials> {
128
- const response = await this.generateSftpTokenRaw(requestParameters, initOverrides);
138
+ async generateProjectSftpToken(requestParameters: GenerateProjectSftpTokenRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<SftpCredentials> {
139
+ const response = await this.generateProjectSftpTokenRaw(requestParameters, initOverrides);
129
140
  return await response.value();
130
141
  }
131
142
 
@@ -0,0 +1,39 @@
1
+ /* tslint:disable */
2
+ /* eslint-disable */
3
+ /**
4
+ * Cirro Data
5
+ * Cirro Data Platform service API
6
+ *
7
+ * The version of the OpenAPI document: latest
8
+ * Contact: support@cirro.bio
9
+ *
10
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
11
+ * https://openapi-generator.tech
12
+ * Do not edit the class manually.
13
+ */
14
+
15
+ /**
16
+ *
17
+ * @export
18
+ * @enum {string}
19
+ */
20
+ export enum AccessType {
21
+ DatasetUpload = 'DATASET_UPLOAD',
22
+ SamplesheetUpload = 'SAMPLESHEET_UPLOAD',
23
+ ReferenceUpload = 'REFERENCE_UPLOAD',
24
+ ProjectDownload = 'PROJECT_DOWNLOAD'
25
+ }
26
+
27
+
28
+ export function AccessTypeFromJSON(json: any): AccessType {
29
+ return AccessTypeFromJSONTyped(json, false);
30
+ }
31
+
32
+ export function AccessTypeFromJSONTyped(json: any, ignoreDiscriminator: boolean): AccessType {
33
+ return json as AccessType;
34
+ }
35
+
36
+ export function AccessTypeToJSON(value?: AccessType | null): any {
37
+ return value as any;
38
+ }
39
+
@@ -0,0 +1,91 @@
1
+ /* tslint:disable */
2
+ /* eslint-disable */
3
+ /**
4
+ * Cirro Data
5
+ * Cirro Data Platform service API
6
+ *
7
+ * The version of the OpenAPI document: latest
8
+ * Contact: support@cirro.bio
9
+ *
10
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
11
+ * https://openapi-generator.tech
12
+ * Do not edit the class manually.
13
+ */
14
+
15
+ import { exists, mapValues } from '../runtime';
16
+ import type { AccessType } from './AccessType';
17
+ import {
18
+ AccessTypeFromJSON,
19
+ AccessTypeFromJSONTyped,
20
+ AccessTypeToJSON,
21
+ } from './AccessType';
22
+
23
+ /**
24
+ *
25
+ * @export
26
+ * @interface FileAccessRequest
27
+ */
28
+ export interface FileAccessRequest {
29
+ /**
30
+ *
31
+ * @type {AccessType}
32
+ * @memberof FileAccessRequest
33
+ */
34
+ accessType: AccessType;
35
+ /**
36
+ *
37
+ * @type {string}
38
+ * @memberof FileAccessRequest
39
+ */
40
+ datasetId: string;
41
+ /**
42
+ *
43
+ * @type {number}
44
+ * @memberof FileAccessRequest
45
+ */
46
+ tokenLifetimeHours: number;
47
+ }
48
+
49
+ /**
50
+ * Check if a given object implements the FileAccessRequest interface.
51
+ */
52
+ export function instanceOfFileAccessRequest(value: object): boolean {
53
+ let isInstance = true;
54
+ isInstance = isInstance && "accessType" in value;
55
+ isInstance = isInstance && "datasetId" in value;
56
+ isInstance = isInstance && "tokenLifetimeHours" in value;
57
+
58
+ return isInstance;
59
+ }
60
+
61
+ export function FileAccessRequestFromJSON(json: any): FileAccessRequest {
62
+ return FileAccessRequestFromJSONTyped(json, false);
63
+ }
64
+
65
+ export function FileAccessRequestFromJSONTyped(json: any, ignoreDiscriminator: boolean): FileAccessRequest {
66
+ if ((json === undefined) || (json === null)) {
67
+ return json;
68
+ }
69
+ return {
70
+
71
+ 'accessType': AccessTypeFromJSON(json['accessType']),
72
+ 'datasetId': json['datasetId'],
73
+ 'tokenLifetimeHours': json['tokenLifetimeHours'],
74
+ };
75
+ }
76
+
77
+ export function FileAccessRequestToJSON(value?: FileAccessRequest | null): any {
78
+ if (value === undefined) {
79
+ return undefined;
80
+ }
81
+ if (value === null) {
82
+ return null;
83
+ }
84
+ return {
85
+
86
+ 'accessType': AccessTypeToJSON(value.accessType),
87
+ 'datasetId': value.datasetId,
88
+ 'tokenLifetimeHours': value.tokenLifetimeHours,
89
+ };
90
+ }
91
+
@@ -30,25 +30,25 @@ export interface S3Credentials {
30
30
  * @type {string}
31
31
  * @memberof S3Credentials
32
32
  */
33
- expiration: string;
33
+ secretAccessKey: string;
34
34
  /**
35
35
  *
36
36
  * @type {string}
37
37
  * @memberof S3Credentials
38
38
  */
39
- secretAccessKey: string;
39
+ sessionToken: string;
40
40
  /**
41
41
  *
42
- * @type {string}
42
+ * @type {Date}
43
43
  * @memberof S3Credentials
44
44
  */
45
- sessionToken: string;
45
+ expiration: Date;
46
46
  /**
47
- *
47
+ * Region of S3 Bucket
48
48
  * @type {string}
49
49
  * @memberof S3Credentials
50
50
  */
51
- region: string;
51
+ region?: string;
52
52
  }
53
53
 
54
54
  /**
@@ -57,10 +57,9 @@ export interface S3Credentials {
57
57
  export function instanceOfS3Credentials(value: object): boolean {
58
58
  let isInstance = true;
59
59
  isInstance = isInstance && "accessKeyId" in value;
60
- isInstance = isInstance && "expiration" in value;
61
60
  isInstance = isInstance && "secretAccessKey" in value;
62
61
  isInstance = isInstance && "sessionToken" in value;
63
- isInstance = isInstance && "region" in value;
62
+ isInstance = isInstance && "expiration" in value;
64
63
 
65
64
  return isInstance;
66
65
  }
@@ -76,10 +75,10 @@ export function S3CredentialsFromJSONTyped(json: any, ignoreDiscriminator: boole
76
75
  return {
77
76
 
78
77
  'accessKeyId': json['accessKeyId'],
79
- 'expiration': json['expiration'],
80
78
  'secretAccessKey': json['secretAccessKey'],
81
79
  'sessionToken': json['sessionToken'],
82
- 'region': json['region'],
80
+ 'expiration': (new Date(json['expiration'])),
81
+ 'region': !exists(json, 'region') ? undefined : json['region'],
83
82
  };
84
83
  }
85
84
 
@@ -93,9 +92,9 @@ export function S3CredentialsToJSON(value?: S3Credentials | null): any {
93
92
  return {
94
93
 
95
94
  'accessKeyId': value.accessKeyId,
96
- 'expiration': value.expiration,
97
95
  'secretAccessKey': value.secretAccessKey,
98
96
  'sessionToken': value.sessionToken,
97
+ 'expiration': (value.expiration.toISOString()),
99
98
  'region': value.region,
100
99
  };
101
100
  }
@@ -1,5 +1,6 @@
1
1
  /* tslint:disable */
2
2
  /* eslint-disable */
3
+ export * from './AccessType';
3
4
  export * from './AllowedDataType';
4
5
  export * from './BillingAccount';
5
6
  export * from './BillingAccountRequest';
@@ -20,6 +21,7 @@ export * from './DatasetDetail';
20
21
  export * from './DatasetViz';
21
22
  export * from './ErrorMessage';
22
23
  export * from './Executor';
24
+ export * from './FileAccessRequest';
23
25
  export * from './FileEntry';
24
26
  export * from './FileNamePattern';
25
27
  export * from './FileRequirements';