aspera-cli 4.27.2 → 4.27.4
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.
- checksums.yaml +4 -4
- checksums.yaml.gz.sig +0 -0
- data/CHANGELOG.md +133 -0
- data/CONTRIBUTING.md +5 -2
- data/bin/ascli +3 -1
- data/docs/README.md +1006 -766
- data/lib/aspera/agent/base.rb +7 -2
- data/lib/aspera/agent/connect.rb +6 -8
- data/lib/aspera/agent/desktop.rb +2 -6
- data/lib/aspera/agent/direct.rb +52 -22
- data/lib/aspera/agent/node.rb +9 -8
- data/lib/aspera/agent/transferd.rb +2 -2
- data/lib/aspera/api/alee.rb +1 -1
- data/lib/aspera/api/aoc.rb +14 -12
- data/lib/aspera/api/ats.rb +1 -1
- data/lib/aspera/api/cos_node.rb +2 -2
- data/lib/aspera/api/faspex.rb +11 -7
- data/lib/aspera/api/httpgw.rb +38 -35
- data/lib/aspera/api/node.rb +39 -34
- data/lib/aspera/ascmd.rb +3 -1
- data/lib/aspera/ascp/installation.rb +63 -28
- data/lib/aspera/ascp/management.rb +1 -0
- data/lib/aspera/assert.rb +4 -0
- data/lib/aspera/cli/ascp_actions.rb +20 -41
- data/lib/aspera/cli/async_transfer_store.rb +12 -11
- data/lib/aspera/cli/bootstrapper.rb +14 -16
- data/lib/aspera/cli/command_line.rb +252 -0
- data/lib/aspera/cli/command_registry.rb +215 -37
- data/lib/aspera/cli/command_spec.rb +104 -15
- data/lib/aspera/cli/completion/ascli.bash +12 -0
- data/lib/aspera/cli/completion/ascli.fish +16 -0
- data/lib/aspera/cli/completion/ascli.zsh +19 -0
- data/lib/aspera/cli/context.rb +3 -0
- data/lib/aspera/cli/deprecation.rb +37 -0
- data/lib/aspera/cli/extended_value.rb +6 -3
- data/lib/aspera/cli/formatter.rb +94 -80
- data/lib/aspera/cli/gem_checker.rb +1 -1
- data/lib/aspera/cli/hints.rb +7 -6
- data/lib/aspera/cli/http.rb +22 -34
- data/lib/aspera/cli/info.rb +3 -0
- data/lib/aspera/cli/mcp_tool.rb +47 -83
- data/lib/aspera/cli/option_declarator.rb +33 -42
- data/lib/aspera/cli/option_registry.rb +69 -0
- data/lib/aspera/cli/option_types.rb +105 -0
- data/lib/aspera/cli/option_value.rb +278 -0
- data/lib/aspera/cli/options.schema.yaml +124 -15
- data/lib/aspera/cli/parser.rb +333 -862
- data/lib/aspera/cli/plugins/alee.rb +7 -4
- data/lib/aspera/cli/plugins/aoc.rb +545 -518
- data/lib/aspera/cli/plugins/ats.rb +59 -80
- data/lib/aspera/cli/plugins/base.rb +221 -265
- data/lib/aspera/cli/plugins/basic_auth.rb +2 -10
- data/lib/aspera/cli/plugins/config.rb +263 -184
- data/lib/aspera/cli/plugins/console.rb +103 -39
- data/lib/aspera/cli/plugins/cos.rb +6 -23
- data/lib/aspera/cli/plugins/factory.rb +3 -0
- data/lib/aspera/cli/plugins/faspex5.rb +204 -182
- data/lib/aspera/cli/plugins/faspio.rb +6 -11
- data/lib/aspera/cli/plugins/httpgw.rb +8 -11
- data/lib/aspera/cli/plugins/mcp.rb +20 -55
- data/lib/aspera/cli/plugins/node.rb +300 -327
- data/lib/aspera/cli/plugins/orchestrator.rb +152 -110
- data/lib/aspera/cli/plugins/preview.rb +96 -105
- data/lib/aspera/cli/plugins/server.rb +78 -53
- data/lib/aspera/cli/plugins/shares.rb +80 -131
- data/lib/aspera/cli/preset_actions.rb +44 -27
- data/lib/aspera/cli/preset_manager.rb +44 -19
- data/lib/aspera/cli/prompt.rb +36 -0
- data/lib/aspera/cli/result.rb +42 -36
- data/lib/aspera/cli/runner.rb +32 -59
- data/lib/aspera/cli/special_values.rb +5 -0
- data/lib/aspera/cli/sync_actions.rb +51 -46
- data/lib/aspera/cli/terminal_formatter.rb +9 -3
- data/lib/aspera/cli/transfer_actions.rb +14 -9
- data/lib/aspera/cli/transfer_agent.rb +34 -38
- data/lib/aspera/cli/transfer_progress.rb +290 -55
- data/lib/aspera/cli/vault_manager.rb +0 -17
- data/lib/aspera/cli/version.rb +1 -1
- data/lib/aspera/cli/wizard.rb +5 -3
- data/lib/aspera/coverage.rb +1 -1
- data/lib/aspera/environment.rb +35 -5
- data/lib/aspera/faspex_gw.rb +2 -1
- data/lib/aspera/faspex_postproc.rb +1 -0
- data/lib/aspera/graphql.rb +5 -5
- data/lib/aspera/json_rpc/client.rb +5 -5
- data/lib/aspera/keychain/encrypted_hash.rb +2 -2
- data/lib/aspera/keychain/factory.rb +2 -1
- data/lib/aspera/keychain/one_password_api.rb +1 -1
- data/lib/aspera/link_header.rb +2 -2
- data/lib/aspera/log.rb +47 -27
- data/lib/aspera/markdown.rb +2 -0
- data/lib/aspera/mime.rb +25 -0
- data/lib/aspera/node_emulator.rb +759 -0
- data/lib/aspera/oauth/base.rb +37 -26
- data/lib/aspera/oauth/factory.rb +7 -3
- data/lib/aspera/oauth/generic.rb +1 -1
- data/lib/aspera/oauth/json_credentials.rb +34 -0
- data/lib/aspera/oauth/jwt.rb +4 -5
- data/lib/aspera/oauth/web.rb +9 -8
- data/lib/aspera/oauth.rb +1 -0
- data/lib/aspera/persistency_folder.rb +1 -3
- data/lib/aspera/preview/file_types.rb +4 -4
- data/lib/aspera/preview/generator.rb +11 -1
- data/lib/aspera/preview/options.schema.yaml +119 -0
- data/lib/aspera/preview/terminal.rb +4 -3
- data/lib/aspera/preview/utils.rb +9 -6
- data/lib/aspera/products/connect.rb +1 -1
- data/lib/aspera/rainbow.rb +7 -0
- data/lib/aspera/rest/aspera_errors.rb +72 -0
- data/lib/aspera/rest/call_error.rb +27 -0
- data/lib/aspera/rest/client.rb +523 -0
- data/lib/aspera/rest/error_analyzer.rb +113 -0
- data/lib/aspera/rest/list.rb +149 -0
- data/lib/aspera/rest/parameters.rb +55 -0
- data/lib/aspera/rest/util.rb +176 -0
- data/lib/aspera/rest.rb +7 -621
- data/lib/aspera/schema/IBM Aspera Console-enhanced.yaml +1125 -0
- data/lib/aspera/schema/IBM Aspera Faspex API-5.0-enhanced.yaml +0 -20
- data/lib/aspera/schema/IBM Aspera Orchestrator API-v1.yaml +1784 -0
- data/lib/aspera/schema/IBM Aspera on Cloud API-0.2.6-enhanced.yaml +1230 -137
- data/lib/aspera/schema/IBM Aspera on Cloud Automation API-1.0.5-enhanced.yaml +2395 -0
- data/lib/aspera/schema/IBM_Aspera_Shares.yaml +14 -13
- data/lib/aspera/schema/documentation.rb +13 -3
- data/lib/aspera/schema/reader.rb +12 -18
- data/lib/aspera/schema/registry.rb +23 -1
- data/lib/aspera/schema/validator.rb +92 -0
- data/lib/aspera/secret_hider.rb +36 -25
- data/lib/aspera/string_ext.rb +15 -0
- data/lib/aspera/temp_file_manager.rb +6 -5
- data/lib/aspera/transfer/parameters.rb +2 -0
- data/lib/aspera/transfer/spec.rb +1 -0
- data/lib/aspera/uri_reader.rb +11 -11
- data/lib/aspera/web_auth/index.html +147 -0
- data/lib/aspera/web_auth/server.rb +81 -0
- data.tar.gz.sig +0 -0
- metadata +43 -9
- metadata.gz.sig +0 -0
- data/lib/aspera/colors.rb +0 -79
- data/lib/aspera/node_simulator.rb +0 -344
- data/lib/aspera/preview/options.rb +0 -45
- data/lib/aspera/rest_call_error.rb +0 -25
- data/lib/aspera/rest_error_analyzer.rb +0 -111
- data/lib/aspera/rest_errors_aspera.rb +0 -58
- data/lib/aspera/rest_list.rb +0 -136
- data/lib/aspera/web_auth.rb +0 -211
|
@@ -0,0 +1,1125 @@
|
|
|
1
|
+
# DO NOT EDIT THIS FILE MANUALLY
|
|
2
|
+
# This file is automatically downloaded from:
|
|
3
|
+
# https://raw.githubusercontent.com/laurent-martin/aspera-api-examples/refs/heads/main/openapi/IBM%20Aspera%20Console-enhanced.yaml
|
|
4
|
+
# Use 'rake tools:openapi' to update this file
|
|
5
|
+
|
|
6
|
+
openapi: 3.1.0
|
|
7
|
+
info:
|
|
8
|
+
title: Aspera Console REST API
|
|
9
|
+
description: |-
|
|
10
|
+
Submit, control, and monitor Aspera FASP transfers through the Aspera Console web application.
|
|
11
|
+
All calls are made over HTTPS using HTTP Basic Auth with a valid Console account;
|
|
12
|
+
the operations a caller can perform are limited by that account's permission level in Console.
|
|
13
|
+
|
|
14
|
+
## Version compatibility
|
|
15
|
+
The Console API is available for Console version 2.0.1 and newer; older versions do not
|
|
16
|
+
support it. Console 2.0.1 currently supports API version 1.0.
|
|
17
|
+
|
|
18
|
+
## Token authorization
|
|
19
|
+
Console 3.2.0 and later supports token authorization: admins can submit an authorization
|
|
20
|
+
token in the JSON payload when creating a simple (or smart) transfer with the Node API.
|
|
21
|
+
In the most common case, the remote (destination) server is configured to require tokens in
|
|
22
|
+
order to allow transfers.
|
|
23
|
+
See the [Aspera Node API "Upload Setup" guide](https://developer.ibm.com/apis/catalog/aspera--aspera-node-api/api/API--aspera--aspera-node-api)
|
|
24
|
+
for an example of how to submit the token.
|
|
25
|
+
|
|
26
|
+
## Common response codes
|
|
27
|
+
All responses use standard HTTP response codes. The commonly used codes for this API are:
|
|
28
|
+
- `200` - Success
|
|
29
|
+
- `401` - Bad, missing, or locked username/password
|
|
30
|
+
- `403` - The specific operation allows the current user to know the item exists, but
|
|
31
|
+
they cannot change it
|
|
32
|
+
- `422` - Used for other errors; a JSON body is normally returned with details, but if
|
|
33
|
+
none is returned, check the mongrel logs
|
|
34
|
+
|
|
35
|
+
## Response content
|
|
36
|
+
If a response contains content, it is returned in JSON format with UTF-8 encoding. All
|
|
37
|
+
times are in UTC.
|
|
38
|
+
version: 1.0.0
|
|
39
|
+
x-console-api-version: "1.0"
|
|
40
|
+
x-console-minimum-version: 2.0.1
|
|
41
|
+
license:
|
|
42
|
+
url: https://ibm.com
|
|
43
|
+
name: (c) IBM. All rights reserved
|
|
44
|
+
contact:
|
|
45
|
+
name: IBM Aspera
|
|
46
|
+
url: https://developer.ibm.com/apis/catalog/aspera--aspera-console-rest-api/Developer+Guides
|
|
47
|
+
servers:
|
|
48
|
+
- url: https://{host}/aspera/console/api
|
|
49
|
+
description: Aspera Console server
|
|
50
|
+
variables:
|
|
51
|
+
host:
|
|
52
|
+
default: console.example.com
|
|
53
|
+
paths:
|
|
54
|
+
/transfers:
|
|
55
|
+
get:
|
|
56
|
+
operationId: getTransfers
|
|
57
|
+
summary: List transfers (TransferList)
|
|
58
|
+
description: Nearly identical to the Activity view in the Console UI. Multi-step Smart Transfers appear as multiple individual items, each with its own id.
|
|
59
|
+
parameters:
|
|
60
|
+
- name: from
|
|
61
|
+
in: query
|
|
62
|
+
description: UTC date/time, e.g. "2013-02-28 12:00:00"
|
|
63
|
+
required: true
|
|
64
|
+
schema:
|
|
65
|
+
type: string
|
|
66
|
+
- name: to
|
|
67
|
+
in: query
|
|
68
|
+
description: UTC date/time. Optional if `from` is less than 24 hours ago, otherwise required and must be no later than `from` + 24 hours. Defaults to the current time if omitted.
|
|
69
|
+
required: false
|
|
70
|
+
schema:
|
|
71
|
+
type: string
|
|
72
|
+
- name: filter1
|
|
73
|
+
in: query
|
|
74
|
+
schema:
|
|
75
|
+
$ref: "#/components/schemas/FilterField"
|
|
76
|
+
- name: comp1
|
|
77
|
+
in: query
|
|
78
|
+
schema:
|
|
79
|
+
$ref: "#/components/schemas/Comparator"
|
|
80
|
+
- name: val1
|
|
81
|
+
in: query
|
|
82
|
+
schema:
|
|
83
|
+
type: string
|
|
84
|
+
- name: filter2
|
|
85
|
+
in: query
|
|
86
|
+
description: Additional filters are joined by AND.
|
|
87
|
+
schema:
|
|
88
|
+
$ref: "#/components/schemas/FilterField"
|
|
89
|
+
- name: comp2
|
|
90
|
+
in: query
|
|
91
|
+
schema:
|
|
92
|
+
$ref: "#/components/schemas/Comparator"
|
|
93
|
+
- name: val2
|
|
94
|
+
in: query
|
|
95
|
+
schema:
|
|
96
|
+
type: string
|
|
97
|
+
responses:
|
|
98
|
+
"200":
|
|
99
|
+
description: Array of transfer summaries
|
|
100
|
+
content:
|
|
101
|
+
application/json:
|
|
102
|
+
schema:
|
|
103
|
+
type: array
|
|
104
|
+
items:
|
|
105
|
+
$ref: "#/components/schemas/TransferSummary"
|
|
106
|
+
"401":
|
|
107
|
+
$ref: "#/components/responses/Unauthorized"
|
|
108
|
+
"422":
|
|
109
|
+
$ref: "#/components/responses/UnprocessableEntity"
|
|
110
|
+
tags:
|
|
111
|
+
- transfers
|
|
112
|
+
post:
|
|
113
|
+
operationId: postTransfers
|
|
114
|
+
summary: Submit a simple transfer (SimpleTransferSubmit)
|
|
115
|
+
description: Equivalent to starting a simple transfer in the Console interface.
|
|
116
|
+
requestBody:
|
|
117
|
+
required: true
|
|
118
|
+
content:
|
|
119
|
+
application/json:
|
|
120
|
+
schema:
|
|
121
|
+
$ref: "#/components/schemas/SimpleTransferSubmitRequest"
|
|
122
|
+
responses:
|
|
123
|
+
"200":
|
|
124
|
+
description: New transfer created
|
|
125
|
+
content:
|
|
126
|
+
application/json:
|
|
127
|
+
schema:
|
|
128
|
+
$ref: "#/components/schemas/IdResponse"
|
|
129
|
+
"401":
|
|
130
|
+
$ref: "#/components/responses/Unauthorized"
|
|
131
|
+
"422":
|
|
132
|
+
$ref: "#/components/responses/UnprocessableEntity"
|
|
133
|
+
tags:
|
|
134
|
+
- transfers
|
|
135
|
+
/transfers/{id}:
|
|
136
|
+
get:
|
|
137
|
+
operationId: getTransfersId
|
|
138
|
+
summary: Get transfer details (TransferDetails)
|
|
139
|
+
description: Nearly identical to the drill-down detail screen for a transfer.
|
|
140
|
+
parameters:
|
|
141
|
+
- $ref: "#/components/parameters/JobStepId"
|
|
142
|
+
responses:
|
|
143
|
+
"200":
|
|
144
|
+
description: Transfer detail
|
|
145
|
+
content:
|
|
146
|
+
application/json:
|
|
147
|
+
schema:
|
|
148
|
+
$ref: "#/components/schemas/TransferDetail"
|
|
149
|
+
"401":
|
|
150
|
+
$ref: "#/components/responses/Unauthorized"
|
|
151
|
+
"422":
|
|
152
|
+
$ref: "#/components/responses/UnprocessableEntity"
|
|
153
|
+
tags:
|
|
154
|
+
- transfers
|
|
155
|
+
/transfers/{id}/files:
|
|
156
|
+
get:
|
|
157
|
+
operationId: getTransfersIdFiles
|
|
158
|
+
summary: List files in a transfer (TransferFileList)
|
|
159
|
+
description: Nearly identical to the file list at the bottom of the transfer details page.
|
|
160
|
+
parameters:
|
|
161
|
+
- $ref: "#/components/parameters/JobStepId"
|
|
162
|
+
- name: offset
|
|
163
|
+
in: query
|
|
164
|
+
description: How many files to skip (for pagination).
|
|
165
|
+
schema:
|
|
166
|
+
type: integer
|
|
167
|
+
- name: limit
|
|
168
|
+
in: query
|
|
169
|
+
description: Max number of items to return. Max value is currently 100.
|
|
170
|
+
required: true
|
|
171
|
+
schema:
|
|
172
|
+
type: integer
|
|
173
|
+
maximum: 100
|
|
174
|
+
- name: errors_only
|
|
175
|
+
in: query
|
|
176
|
+
description: Return only files with errors.
|
|
177
|
+
schema:
|
|
178
|
+
type: boolean
|
|
179
|
+
- name: path_match
|
|
180
|
+
in: query
|
|
181
|
+
description: String to match anywhere in the file path.
|
|
182
|
+
schema:
|
|
183
|
+
type: string
|
|
184
|
+
responses:
|
|
185
|
+
"200":
|
|
186
|
+
description: Array of files
|
|
187
|
+
content:
|
|
188
|
+
application/json:
|
|
189
|
+
schema:
|
|
190
|
+
type: array
|
|
191
|
+
items:
|
|
192
|
+
$ref: "#/components/schemas/TransferFile"
|
|
193
|
+
"401":
|
|
194
|
+
$ref: "#/components/responses/Unauthorized"
|
|
195
|
+
"422":
|
|
196
|
+
$ref: "#/components/responses/UnprocessableEntity"
|
|
197
|
+
tags:
|
|
198
|
+
- transfers
|
|
199
|
+
/transfers/{id}/start:
|
|
200
|
+
put:
|
|
201
|
+
operationId: putTransfersIdStart
|
|
202
|
+
summary: Start a scheduled transfer (TransferStart)
|
|
203
|
+
description: Equivalent to clicking "start" for a scheduled transfer on the Activity page.
|
|
204
|
+
parameters:
|
|
205
|
+
- $ref: "#/components/parameters/JobStepId"
|
|
206
|
+
responses:
|
|
207
|
+
"200":
|
|
208
|
+
$ref: "#/components/responses/Ok"
|
|
209
|
+
"401":
|
|
210
|
+
$ref: "#/components/responses/Unauthorized"
|
|
211
|
+
"403":
|
|
212
|
+
$ref: "#/components/responses/Forbidden"
|
|
213
|
+
"422":
|
|
214
|
+
$ref: "#/components/responses/UnprocessableEntity"
|
|
215
|
+
tags:
|
|
216
|
+
- transfers
|
|
217
|
+
/transfers/{id}/pause:
|
|
218
|
+
put:
|
|
219
|
+
operationId: putTransfersIdPause
|
|
220
|
+
summary: Pause a transfer (TransferPause)
|
|
221
|
+
description: Equivalent to clicking "pause" for a transfer on the Activity page.
|
|
222
|
+
parameters:
|
|
223
|
+
- $ref: "#/components/parameters/JobStepId"
|
|
224
|
+
responses:
|
|
225
|
+
"200":
|
|
226
|
+
$ref: "#/components/responses/Ok"
|
|
227
|
+
"401":
|
|
228
|
+
$ref: "#/components/responses/Unauthorized"
|
|
229
|
+
"403":
|
|
230
|
+
$ref: "#/components/responses/Forbidden"
|
|
231
|
+
"422":
|
|
232
|
+
$ref: "#/components/responses/UnprocessableEntity"
|
|
233
|
+
tags:
|
|
234
|
+
- transfers
|
|
235
|
+
/transfers/{id}/resume:
|
|
236
|
+
put:
|
|
237
|
+
operationId: putTransfersIdResume
|
|
238
|
+
summary: Resume a transfer (TransferResume)
|
|
239
|
+
description: Equivalent to clicking "resume" for a transfer on the Activity page.
|
|
240
|
+
parameters:
|
|
241
|
+
- $ref: "#/components/parameters/JobStepId"
|
|
242
|
+
responses:
|
|
243
|
+
"200":
|
|
244
|
+
$ref: "#/components/responses/Ok"
|
|
245
|
+
"401":
|
|
246
|
+
$ref: "#/components/responses/Unauthorized"
|
|
247
|
+
"403":
|
|
248
|
+
$ref: "#/components/responses/Forbidden"
|
|
249
|
+
"422":
|
|
250
|
+
$ref: "#/components/responses/UnprocessableEntity"
|
|
251
|
+
tags:
|
|
252
|
+
- transfers
|
|
253
|
+
/transfers/{id}/cancel:
|
|
254
|
+
put:
|
|
255
|
+
operationId: putTransfersIdCancel
|
|
256
|
+
summary: Cancel a transfer (TransferCancel)
|
|
257
|
+
description: Equivalent to clicking "cancel" for a transfer on the Activity page.
|
|
258
|
+
parameters:
|
|
259
|
+
- $ref: "#/components/parameters/JobStepId"
|
|
260
|
+
responses:
|
|
261
|
+
"200":
|
|
262
|
+
$ref: "#/components/responses/Ok"
|
|
263
|
+
"401":
|
|
264
|
+
$ref: "#/components/responses/Unauthorized"
|
|
265
|
+
"403":
|
|
266
|
+
$ref: "#/components/responses/Forbidden"
|
|
267
|
+
"422":
|
|
268
|
+
$ref: "#/components/responses/UnprocessableEntity"
|
|
269
|
+
tags:
|
|
270
|
+
- transfers
|
|
271
|
+
/transfers/{id}/rerun:
|
|
272
|
+
post:
|
|
273
|
+
operationId: postTransfersIdRerun
|
|
274
|
+
summary: Rerun a transfer (TransferRerun)
|
|
275
|
+
description: Equivalent to clicking "rerun" for a transfer on the Activity page.
|
|
276
|
+
parameters:
|
|
277
|
+
- $ref: "#/components/parameters/JobStepId"
|
|
278
|
+
responses:
|
|
279
|
+
"200":
|
|
280
|
+
description: New transfer created from the rerun
|
|
281
|
+
content:
|
|
282
|
+
application/json:
|
|
283
|
+
schema:
|
|
284
|
+
$ref: "#/components/schemas/IdResponse"
|
|
285
|
+
"401":
|
|
286
|
+
$ref: "#/components/responses/Unauthorized"
|
|
287
|
+
"422":
|
|
288
|
+
$ref: "#/components/responses/UnprocessableEntity"
|
|
289
|
+
tags:
|
|
290
|
+
- transfers
|
|
291
|
+
/transfers/{id}/change_rate:
|
|
292
|
+
put:
|
|
293
|
+
operationId: putTransfersIdChangeRate
|
|
294
|
+
summary: Change transfer rate (TransferChangeRate)
|
|
295
|
+
description: Equivalent to entering a new target rate in the chart on the transfer's Detail page.
|
|
296
|
+
parameters:
|
|
297
|
+
- $ref: "#/components/parameters/JobStepId"
|
|
298
|
+
requestBody:
|
|
299
|
+
required: true
|
|
300
|
+
content:
|
|
301
|
+
application/json:
|
|
302
|
+
schema:
|
|
303
|
+
$ref: "#/components/schemas/ChangeRateRequest"
|
|
304
|
+
responses:
|
|
305
|
+
"200":
|
|
306
|
+
$ref: "#/components/responses/Ok"
|
|
307
|
+
"401":
|
|
308
|
+
$ref: "#/components/responses/Unauthorized"
|
|
309
|
+
"422":
|
|
310
|
+
$ref: "#/components/responses/UnprocessableEntity"
|
|
311
|
+
tags:
|
|
312
|
+
- transfers
|
|
313
|
+
/transfers/{id}/change_policy:
|
|
314
|
+
put:
|
|
315
|
+
operationId: putTransfersIdChangePolicy
|
|
316
|
+
summary: Change transfer policy (TransferChangePolicy)
|
|
317
|
+
description: Equivalent to choosing a new policy in the chart on the transfer's Detail page.
|
|
318
|
+
parameters:
|
|
319
|
+
- $ref: "#/components/parameters/JobStepId"
|
|
320
|
+
requestBody:
|
|
321
|
+
required: true
|
|
322
|
+
content:
|
|
323
|
+
application/json:
|
|
324
|
+
schema:
|
|
325
|
+
$ref: "#/components/schemas/ChangePolicyRequest"
|
|
326
|
+
responses:
|
|
327
|
+
"200":
|
|
328
|
+
$ref: "#/components/responses/Ok"
|
|
329
|
+
"401":
|
|
330
|
+
$ref: "#/components/responses/Unauthorized"
|
|
331
|
+
"422":
|
|
332
|
+
$ref: "#/components/responses/UnprocessableEntity"
|
|
333
|
+
tags:
|
|
334
|
+
- transfers
|
|
335
|
+
/endpoints:
|
|
336
|
+
get:
|
|
337
|
+
operationId: getEndpoints
|
|
338
|
+
summary: List endpoints (EndPointList)
|
|
339
|
+
description: Retrieves the list of endpoints available for SimpleTransferSubmit.
|
|
340
|
+
responses:
|
|
341
|
+
"200":
|
|
342
|
+
description: Array of endpoints
|
|
343
|
+
content:
|
|
344
|
+
application/json:
|
|
345
|
+
schema:
|
|
346
|
+
type: array
|
|
347
|
+
items:
|
|
348
|
+
$ref: "#/components/schemas/Endpoint"
|
|
349
|
+
"401":
|
|
350
|
+
$ref: "#/components/responses/Unauthorized"
|
|
351
|
+
tags:
|
|
352
|
+
- endpoints
|
|
353
|
+
/ssh_keys:
|
|
354
|
+
get:
|
|
355
|
+
operationId: getSshKeys
|
|
356
|
+
summary: List SSH keys (SshKeyList)
|
|
357
|
+
description: Retrieves the list of SSH keys available for use with SimpleTransferSubmit.
|
|
358
|
+
responses:
|
|
359
|
+
"200":
|
|
360
|
+
description: Array of SSH keys
|
|
361
|
+
content:
|
|
362
|
+
application/json:
|
|
363
|
+
schema:
|
|
364
|
+
type: array
|
|
365
|
+
items:
|
|
366
|
+
$ref: "#/components/schemas/SshKey"
|
|
367
|
+
"401":
|
|
368
|
+
$ref: "#/components/responses/Unauthorized"
|
|
369
|
+
tags:
|
|
370
|
+
- endpoints
|
|
371
|
+
/smart_transfers:
|
|
372
|
+
get:
|
|
373
|
+
operationId: getSmartTransfers
|
|
374
|
+
summary: List Smart Transfers (SmartTransferList)
|
|
375
|
+
description: Retrieves the list of Smart Transfers the user is allowed to start.
|
|
376
|
+
responses:
|
|
377
|
+
"200":
|
|
378
|
+
description: Array of Smart Transfers
|
|
379
|
+
content:
|
|
380
|
+
application/json:
|
|
381
|
+
schema:
|
|
382
|
+
type: array
|
|
383
|
+
items:
|
|
384
|
+
$ref: "#/components/schemas/SmartTransfer"
|
|
385
|
+
"401":
|
|
386
|
+
$ref: "#/components/responses/Unauthorized"
|
|
387
|
+
tags:
|
|
388
|
+
- smart-transfers
|
|
389
|
+
/smart_transfers/{id}:
|
|
390
|
+
post:
|
|
391
|
+
operationId: postSmartTransfersId
|
|
392
|
+
summary: Submit a Smart Transfer (SmartTransferSubmit)
|
|
393
|
+
description: Nearly identical to starting a simple transfer in the Console interface, but with fewer overridable settings. If the Smart Transfer does not allow selecting source items at start, including a `source` section returns an error. Multi-step Smart Transfers create multiple transfers.
|
|
394
|
+
parameters:
|
|
395
|
+
- name: id
|
|
396
|
+
in: path
|
|
397
|
+
description: Smart Transfer id
|
|
398
|
+
required: true
|
|
399
|
+
schema:
|
|
400
|
+
type: integer
|
|
401
|
+
requestBody:
|
|
402
|
+
required: true
|
|
403
|
+
content:
|
|
404
|
+
application/json:
|
|
405
|
+
schema:
|
|
406
|
+
$ref: "#/components/schemas/SmartTransferSubmitRequest"
|
|
407
|
+
responses:
|
|
408
|
+
"200":
|
|
409
|
+
description: One id per transfer created (multiple for a multi-step Smart Transfer)
|
|
410
|
+
content:
|
|
411
|
+
application/json:
|
|
412
|
+
schema:
|
|
413
|
+
type: array
|
|
414
|
+
items:
|
|
415
|
+
$ref: "#/components/schemas/IdResponse"
|
|
416
|
+
"401":
|
|
417
|
+
$ref: "#/components/responses/Unauthorized"
|
|
418
|
+
"422":
|
|
419
|
+
$ref: "#/components/responses/UnprocessableEntity"
|
|
420
|
+
tags:
|
|
421
|
+
- smart-transfers
|
|
422
|
+
/smart_transfers/{id}/pause:
|
|
423
|
+
put:
|
|
424
|
+
operationId: putSmartTransfersIdPause
|
|
425
|
+
summary: Pause a Smart Transfer
|
|
426
|
+
description: Present in routes.rb (`api#pause_smart_transfer`) but not described in the public API guide. Assumed to behave like TransferPause, scoped to a Smart Transfer id. Verify against the controller before relying on this.
|
|
427
|
+
parameters:
|
|
428
|
+
- name: id
|
|
429
|
+
in: path
|
|
430
|
+
description: Smart Transfer id
|
|
431
|
+
required: true
|
|
432
|
+
schema:
|
|
433
|
+
type: integer
|
|
434
|
+
responses:
|
|
435
|
+
"200":
|
|
436
|
+
$ref: "#/components/responses/Ok"
|
|
437
|
+
"401":
|
|
438
|
+
$ref: "#/components/responses/Unauthorized"
|
|
439
|
+
"422":
|
|
440
|
+
$ref: "#/components/responses/UnprocessableEntity"
|
|
441
|
+
tags:
|
|
442
|
+
- smart-transfers
|
|
443
|
+
x-undocumented: true
|
|
444
|
+
/queues/{queue_id}/items:
|
|
445
|
+
get:
|
|
446
|
+
operationId: getQueuesQueueIdItems
|
|
447
|
+
summary: Get queue contents (QueueContents)
|
|
448
|
+
description: Returns a list of items in the queue, frontmost item first.
|
|
449
|
+
parameters:
|
|
450
|
+
- name: queue_id
|
|
451
|
+
in: path
|
|
452
|
+
required: true
|
|
453
|
+
schema:
|
|
454
|
+
type: integer
|
|
455
|
+
responses:
|
|
456
|
+
"200":
|
|
457
|
+
description: Array of queue items
|
|
458
|
+
content:
|
|
459
|
+
application/json:
|
|
460
|
+
schema:
|
|
461
|
+
type: array
|
|
462
|
+
items:
|
|
463
|
+
$ref: "#/components/schemas/QueueItem"
|
|
464
|
+
"401":
|
|
465
|
+
$ref: "#/components/responses/Unauthorized"
|
|
466
|
+
tags:
|
|
467
|
+
- queues
|
|
468
|
+
/queues/{queue_id}/items/{id}/move_forwards:
|
|
469
|
+
put:
|
|
470
|
+
operationId: putQueuesQueueIdItemsIdMoveForwards
|
|
471
|
+
summary: Move a queued transfer forward (QueuedTransferMoveForward)
|
|
472
|
+
description: Equivalent to clicking "Move Up" on a transfer in the displayed queue.
|
|
473
|
+
parameters:
|
|
474
|
+
- name: queue_id
|
|
475
|
+
in: path
|
|
476
|
+
required: true
|
|
477
|
+
schema:
|
|
478
|
+
type: integer
|
|
479
|
+
- $ref: "#/components/parameters/JobStepId"
|
|
480
|
+
responses:
|
|
481
|
+
"200":
|
|
482
|
+
$ref: "#/components/responses/Ok"
|
|
483
|
+
"401":
|
|
484
|
+
$ref: "#/components/responses/Unauthorized"
|
|
485
|
+
"403":
|
|
486
|
+
description: The current user does not have permission to reorder the queue.
|
|
487
|
+
"422":
|
|
488
|
+
$ref: "#/components/responses/UnprocessableEntity"
|
|
489
|
+
tags:
|
|
490
|
+
- queues
|
|
491
|
+
/queues/{queue_id}/items/{id}/move_back:
|
|
492
|
+
put:
|
|
493
|
+
operationId: putQueuesQueueIdItemsIdMoveBack
|
|
494
|
+
summary: Move a queued transfer back (QueuedTransferMoveBack)
|
|
495
|
+
description: Equivalent to clicking "Move Down" on a transfer in the displayed queue.
|
|
496
|
+
parameters:
|
|
497
|
+
- name: queue_id
|
|
498
|
+
in: path
|
|
499
|
+
required: true
|
|
500
|
+
schema:
|
|
501
|
+
type: integer
|
|
502
|
+
- $ref: "#/components/parameters/JobStepId"
|
|
503
|
+
responses:
|
|
504
|
+
"200":
|
|
505
|
+
$ref: "#/components/responses/Ok"
|
|
506
|
+
"401":
|
|
507
|
+
$ref: "#/components/responses/Unauthorized"
|
|
508
|
+
"403":
|
|
509
|
+
description: The current user does not have permission to reorder the queue.
|
|
510
|
+
"422":
|
|
511
|
+
$ref: "#/components/responses/UnprocessableEntity"
|
|
512
|
+
tags:
|
|
513
|
+
- queues
|
|
514
|
+
/email_server_update:
|
|
515
|
+
post:
|
|
516
|
+
operationId: postEmailServerUpdate
|
|
517
|
+
summary: Update email server configuration
|
|
518
|
+
description: Present in routes.rb (`api#email_server_update`) but not described in the public API guide. Payload shape is unknown; likely mirrors the "Email Server" admin settings screen. Confirm against `Api::EmailServerUpdate` / the corresponding controller action before use.
|
|
519
|
+
requestBody:
|
|
520
|
+
content:
|
|
521
|
+
application/json:
|
|
522
|
+
schema:
|
|
523
|
+
type: object
|
|
524
|
+
additionalProperties: true
|
|
525
|
+
responses:
|
|
526
|
+
"200":
|
|
527
|
+
$ref: "#/components/responses/Ok"
|
|
528
|
+
"401":
|
|
529
|
+
$ref: "#/components/responses/Unauthorized"
|
|
530
|
+
"422":
|
|
531
|
+
$ref: "#/components/responses/UnprocessableEntity"
|
|
532
|
+
tags:
|
|
533
|
+
- admin
|
|
534
|
+
x-undocumented: true
|
|
535
|
+
/nodeapi_credentials_update:
|
|
536
|
+
post:
|
|
537
|
+
operationId: postNodeapiCredentialsUpdate
|
|
538
|
+
summary: Update Node API credentials
|
|
539
|
+
description: Present in routes.rb (`api#nodeapi_credentials_update`) but not described in the public API guide. Payload shape is unknown; likely updates stored Node API credentials for a node. Confirm against the controller action before use.
|
|
540
|
+
requestBody:
|
|
541
|
+
content:
|
|
542
|
+
application/json:
|
|
543
|
+
schema:
|
|
544
|
+
type: object
|
|
545
|
+
additionalProperties: true
|
|
546
|
+
responses:
|
|
547
|
+
"200":
|
|
548
|
+
$ref: "#/components/responses/Ok"
|
|
549
|
+
"401":
|
|
550
|
+
$ref: "#/components/responses/Unauthorized"
|
|
551
|
+
"422":
|
|
552
|
+
$ref: "#/components/responses/UnprocessableEntity"
|
|
553
|
+
tags:
|
|
554
|
+
- admin
|
|
555
|
+
x-undocumented: true
|
|
556
|
+
/health/up:
|
|
557
|
+
servers:
|
|
558
|
+
- url: https://{host}/aspera/console
|
|
559
|
+
description: Aspera Console server (root scope, outside the /api prefix)
|
|
560
|
+
variables:
|
|
561
|
+
host:
|
|
562
|
+
default: console.example.com
|
|
563
|
+
get:
|
|
564
|
+
operationId: getHealthUp
|
|
565
|
+
summary: Health check
|
|
566
|
+
description: >-
|
|
567
|
+
Load-balancer / uptime probe. Unauthenticated;
|
|
568
|
+
returns success if Aspera Console process is up and responding.
|
|
569
|
+
security: []
|
|
570
|
+
responses:
|
|
571
|
+
"200":
|
|
572
|
+
description: Console is up
|
|
573
|
+
"422":
|
|
574
|
+
$ref: "#/components/responses/UnprocessableEntity"
|
|
575
|
+
"503":
|
|
576
|
+
description: Console is not healthy
|
|
577
|
+
tags:
|
|
578
|
+
- health
|
|
579
|
+
x-undocumented: true
|
|
580
|
+
components:
|
|
581
|
+
parameters:
|
|
582
|
+
JobStepId:
|
|
583
|
+
name: id
|
|
584
|
+
in: path
|
|
585
|
+
required: true
|
|
586
|
+
description: Console's numeric id for the transfer (job step id).
|
|
587
|
+
schema:
|
|
588
|
+
type: integer
|
|
589
|
+
schemas:
|
|
590
|
+
FilterField:
|
|
591
|
+
type: string
|
|
592
|
+
enum:
|
|
593
|
+
- started_at
|
|
594
|
+
- stopped_at
|
|
595
|
+
- status
|
|
596
|
+
- transfer_name
|
|
597
|
+
- contact
|
|
598
|
+
- filename
|
|
599
|
+
Comparator:
|
|
600
|
+
type: string
|
|
601
|
+
enum:
|
|
602
|
+
- contain
|
|
603
|
+
- eq
|
|
604
|
+
- gt
|
|
605
|
+
- gte
|
|
606
|
+
- in
|
|
607
|
+
- lt
|
|
608
|
+
- lte
|
|
609
|
+
- is_not_null
|
|
610
|
+
- is_null
|
|
611
|
+
- match_re
|
|
612
|
+
- neq
|
|
613
|
+
- start_with
|
|
614
|
+
Error:
|
|
615
|
+
description: Error details; exact shape varies by endpoint.
|
|
616
|
+
type: object
|
|
617
|
+
additionalProperties: true
|
|
618
|
+
IdResponse:
|
|
619
|
+
type: object
|
|
620
|
+
properties:
|
|
621
|
+
id:
|
|
622
|
+
type: integer
|
|
623
|
+
required:
|
|
624
|
+
- id
|
|
625
|
+
TransferSummary:
|
|
626
|
+
type: object
|
|
627
|
+
properties:
|
|
628
|
+
bytes_transferred:
|
|
629
|
+
description: Total bytes actually transferred over the network. Bytes already present at the destination at transfer start are not counted if 'resume' was enabled.
|
|
630
|
+
type: integer
|
|
631
|
+
bytes_written:
|
|
632
|
+
description: Total bytes completed and written to disk at the destination. May exceed bytes_transferred (includes pre-existing bytes).
|
|
633
|
+
type: integer
|
|
634
|
+
contact:
|
|
635
|
+
type:
|
|
636
|
+
- string
|
|
637
|
+
- "null"
|
|
638
|
+
destination:
|
|
639
|
+
description: IP address of destination machine
|
|
640
|
+
type: string
|
|
641
|
+
error_description:
|
|
642
|
+
type:
|
|
643
|
+
- string
|
|
644
|
+
- "null"
|
|
645
|
+
eta:
|
|
646
|
+
type:
|
|
647
|
+
- string
|
|
648
|
+
- "null"
|
|
649
|
+
id:
|
|
650
|
+
type: integer
|
|
651
|
+
name:
|
|
652
|
+
type: string
|
|
653
|
+
queued_at:
|
|
654
|
+
type:
|
|
655
|
+
- string
|
|
656
|
+
- "null"
|
|
657
|
+
format: date-time
|
|
658
|
+
scheduled_start_at:
|
|
659
|
+
type:
|
|
660
|
+
- string
|
|
661
|
+
- "null"
|
|
662
|
+
format: date-time
|
|
663
|
+
source:
|
|
664
|
+
description: IP address of the source machine
|
|
665
|
+
type: string
|
|
666
|
+
started_at:
|
|
667
|
+
type:
|
|
668
|
+
- string
|
|
669
|
+
- "null"
|
|
670
|
+
format: date-time
|
|
671
|
+
started_via:
|
|
672
|
+
type: string
|
|
673
|
+
status:
|
|
674
|
+
type: string
|
|
675
|
+
stopped_at:
|
|
676
|
+
type:
|
|
677
|
+
- string
|
|
678
|
+
- "null"
|
|
679
|
+
format: date-time
|
|
680
|
+
submitted_at:
|
|
681
|
+
type:
|
|
682
|
+
- string
|
|
683
|
+
- "null"
|
|
684
|
+
format: date-time
|
|
685
|
+
total_bytes:
|
|
686
|
+
description: '"unknown" or numeric, per source node reporting'
|
|
687
|
+
oneOf:
|
|
688
|
+
- type: integer
|
|
689
|
+
- type: string
|
|
690
|
+
QueueRef:
|
|
691
|
+
type: object
|
|
692
|
+
properties:
|
|
693
|
+
queue_id:
|
|
694
|
+
type: integer
|
|
695
|
+
description:
|
|
696
|
+
type: string
|
|
697
|
+
position:
|
|
698
|
+
type: integer
|
|
699
|
+
waiting:
|
|
700
|
+
type: boolean
|
|
701
|
+
TransferDetail:
|
|
702
|
+
allOf:
|
|
703
|
+
- $ref: "#/components/schemas/TransferSummary"
|
|
704
|
+
- type: object
|
|
705
|
+
properties:
|
|
706
|
+
bytes_lost:
|
|
707
|
+
type: integer
|
|
708
|
+
comment:
|
|
709
|
+
type:
|
|
710
|
+
- string
|
|
711
|
+
- "null"
|
|
712
|
+
destination_description:
|
|
713
|
+
type:
|
|
714
|
+
- string
|
|
715
|
+
- "null"
|
|
716
|
+
destination_endpoint_id:
|
|
717
|
+
type: integer
|
|
718
|
+
destination_path:
|
|
719
|
+
type: string
|
|
720
|
+
files_completed:
|
|
721
|
+
type: integer
|
|
722
|
+
files_failed:
|
|
723
|
+
type: integer
|
|
724
|
+
files_skipped:
|
|
725
|
+
type: integer
|
|
726
|
+
initiator:
|
|
727
|
+
type: string
|
|
728
|
+
enum:
|
|
729
|
+
- source
|
|
730
|
+
- destination
|
|
731
|
+
last_calculated_rate_bps:
|
|
732
|
+
description: Periodic estimate of actual throughput. Null for short transfers where Console had no chance to compute it.
|
|
733
|
+
type:
|
|
734
|
+
- integer
|
|
735
|
+
- "null"
|
|
736
|
+
min_rate_kbps:
|
|
737
|
+
type: integer
|
|
738
|
+
network_delay_ms:
|
|
739
|
+
type: integer
|
|
740
|
+
policy:
|
|
741
|
+
type: string
|
|
742
|
+
queues:
|
|
743
|
+
type: array
|
|
744
|
+
items:
|
|
745
|
+
$ref: "#/components/schemas/QueueRef"
|
|
746
|
+
session_uuid:
|
|
747
|
+
type: string
|
|
748
|
+
source_description:
|
|
749
|
+
type:
|
|
750
|
+
- string
|
|
751
|
+
- "null"
|
|
752
|
+
source_endpoint_id:
|
|
753
|
+
type: integer
|
|
754
|
+
source_paths:
|
|
755
|
+
description: Specified source items from the ascp command. Truncated to approximately 4KB, so may not contain the full list.
|
|
756
|
+
type: array
|
|
757
|
+
items:
|
|
758
|
+
type: string
|
|
759
|
+
target_rate_kbps:
|
|
760
|
+
type: integer
|
|
761
|
+
total_files:
|
|
762
|
+
type: integer
|
|
763
|
+
transport:
|
|
764
|
+
type: string
|
|
765
|
+
transport_encryption:
|
|
766
|
+
type: string
|
|
767
|
+
TransferFile:
|
|
768
|
+
type: object
|
|
769
|
+
properties:
|
|
770
|
+
bytes_transferred:
|
|
771
|
+
type: integer
|
|
772
|
+
bytes_written:
|
|
773
|
+
type: integer
|
|
774
|
+
error_description:
|
|
775
|
+
type:
|
|
776
|
+
- string
|
|
777
|
+
- "null"
|
|
778
|
+
id:
|
|
779
|
+
type: integer
|
|
780
|
+
path:
|
|
781
|
+
type: string
|
|
782
|
+
size:
|
|
783
|
+
type: integer
|
|
784
|
+
started_at:
|
|
785
|
+
type: string
|
|
786
|
+
status:
|
|
787
|
+
type: string
|
|
788
|
+
stopped_at:
|
|
789
|
+
type: string
|
|
790
|
+
Endpoint:
|
|
791
|
+
type: object
|
|
792
|
+
properties:
|
|
793
|
+
credential_type:
|
|
794
|
+
type:
|
|
795
|
+
- string
|
|
796
|
+
- "null"
|
|
797
|
+
enum:
|
|
798
|
+
- password
|
|
799
|
+
- ssh_key
|
|
800
|
+
- none
|
|
801
|
+
- null
|
|
802
|
+
description:
|
|
803
|
+
type:
|
|
804
|
+
- string
|
|
805
|
+
- "null"
|
|
806
|
+
dest:
|
|
807
|
+
type: boolean
|
|
808
|
+
endpoint_type:
|
|
809
|
+
type: string
|
|
810
|
+
enum:
|
|
811
|
+
- Personal
|
|
812
|
+
- Node
|
|
813
|
+
id:
|
|
814
|
+
type: integer
|
|
815
|
+
ip_address:
|
|
816
|
+
type: string
|
|
817
|
+
login:
|
|
818
|
+
type: string
|
|
819
|
+
source:
|
|
820
|
+
type: boolean
|
|
821
|
+
ssh_key_id:
|
|
822
|
+
type:
|
|
823
|
+
- integer
|
|
824
|
+
- "null"
|
|
825
|
+
ssh_port:
|
|
826
|
+
type: integer
|
|
827
|
+
SshKey:
|
|
828
|
+
type: object
|
|
829
|
+
properties:
|
|
830
|
+
filename_on_node:
|
|
831
|
+
type: string
|
|
832
|
+
id:
|
|
833
|
+
type: integer
|
|
834
|
+
name:
|
|
835
|
+
type: string
|
|
836
|
+
SmartTransfer:
|
|
837
|
+
type: object
|
|
838
|
+
properties:
|
|
839
|
+
id:
|
|
840
|
+
type: integer
|
|
841
|
+
name:
|
|
842
|
+
type: string
|
|
843
|
+
owner:
|
|
844
|
+
type: string
|
|
845
|
+
QueueItem:
|
|
846
|
+
type: object
|
|
847
|
+
properties:
|
|
848
|
+
item_id:
|
|
849
|
+
type: integer
|
|
850
|
+
waiting:
|
|
851
|
+
type: boolean
|
|
852
|
+
ChangeRateRequest:
|
|
853
|
+
type: object
|
|
854
|
+
properties:
|
|
855
|
+
min_rate_kbps:
|
|
856
|
+
description: Normally "0". String type per API, despite the numeric value.
|
|
857
|
+
type: string
|
|
858
|
+
target_rate_kbps:
|
|
859
|
+
type: string
|
|
860
|
+
required:
|
|
861
|
+
- min_rate_kbps
|
|
862
|
+
- target_rate_kbps
|
|
863
|
+
ChangePolicyRequest:
|
|
864
|
+
type: object
|
|
865
|
+
properties:
|
|
866
|
+
policy:
|
|
867
|
+
type: string
|
|
868
|
+
enum:
|
|
869
|
+
- Fair
|
|
870
|
+
- Fixed
|
|
871
|
+
- Trickle
|
|
872
|
+
required:
|
|
873
|
+
- policy
|
|
874
|
+
RetriesSpec:
|
|
875
|
+
type: object
|
|
876
|
+
properties:
|
|
877
|
+
enable:
|
|
878
|
+
type: boolean
|
|
879
|
+
attempts:
|
|
880
|
+
type: integer
|
|
881
|
+
interval_seconds:
|
|
882
|
+
type: integer
|
|
883
|
+
ContentProtectionSpec:
|
|
884
|
+
type: object
|
|
885
|
+
properties:
|
|
886
|
+
enable:
|
|
887
|
+
type: boolean
|
|
888
|
+
password:
|
|
889
|
+
type: string
|
|
890
|
+
ResumeSpec:
|
|
891
|
+
type: object
|
|
892
|
+
properties:
|
|
893
|
+
enable:
|
|
894
|
+
type: boolean
|
|
895
|
+
comparison_method:
|
|
896
|
+
type: string
|
|
897
|
+
enum:
|
|
898
|
+
- Attributes
|
|
899
|
+
- Sparse Checksum
|
|
900
|
+
- Full Checksum
|
|
901
|
+
DeleteSourceFilesSpec:
|
|
902
|
+
type: object
|
|
903
|
+
properties:
|
|
904
|
+
enable:
|
|
905
|
+
type: boolean
|
|
906
|
+
also_delete_empty_directories:
|
|
907
|
+
type: boolean
|
|
908
|
+
NotificationSpec:
|
|
909
|
+
type: object
|
|
910
|
+
properties:
|
|
911
|
+
email_address:
|
|
912
|
+
type: string
|
|
913
|
+
format: email
|
|
914
|
+
start_template_id:
|
|
915
|
+
type: integer
|
|
916
|
+
success_template_id:
|
|
917
|
+
type: integer
|
|
918
|
+
error_template_id:
|
|
919
|
+
type: integer
|
|
920
|
+
TransferSourceSpec:
|
|
921
|
+
description: If the referenced endpoint has credential_type null, password or ssh_key_id is required. If its ip_address is "*", ip_address is required here. If its user is "*", user is required here.
|
|
922
|
+
type: object
|
|
923
|
+
properties:
|
|
924
|
+
endpoint_id:
|
|
925
|
+
type:
|
|
926
|
+
- integer
|
|
927
|
+
- "null"
|
|
928
|
+
ip_address:
|
|
929
|
+
type: string
|
|
930
|
+
port:
|
|
931
|
+
type: integer
|
|
932
|
+
user:
|
|
933
|
+
type: string
|
|
934
|
+
authentication_method:
|
|
935
|
+
type: string
|
|
936
|
+
enum:
|
|
937
|
+
- password
|
|
938
|
+
- ssh_key
|
|
939
|
+
password:
|
|
940
|
+
type: string
|
|
941
|
+
ssh_key_id:
|
|
942
|
+
type:
|
|
943
|
+
- integer
|
|
944
|
+
- "null"
|
|
945
|
+
paths:
|
|
946
|
+
type: array
|
|
947
|
+
items:
|
|
948
|
+
type: string
|
|
949
|
+
source_base:
|
|
950
|
+
description: Path prefix to remove from source paths.
|
|
951
|
+
type:
|
|
952
|
+
- string
|
|
953
|
+
- "null"
|
|
954
|
+
TransferDestinationSpec:
|
|
955
|
+
type: object
|
|
956
|
+
properties:
|
|
957
|
+
endpoint_id:
|
|
958
|
+
type:
|
|
959
|
+
- integer
|
|
960
|
+
- "null"
|
|
961
|
+
ip_address:
|
|
962
|
+
type: string
|
|
963
|
+
port:
|
|
964
|
+
type: integer
|
|
965
|
+
user:
|
|
966
|
+
type: string
|
|
967
|
+
authentication_method:
|
|
968
|
+
type: string
|
|
969
|
+
enum:
|
|
970
|
+
- password
|
|
971
|
+
- ssh_key
|
|
972
|
+
password:
|
|
973
|
+
type: string
|
|
974
|
+
ssh_key_id:
|
|
975
|
+
type:
|
|
976
|
+
- integer
|
|
977
|
+
- "null"
|
|
978
|
+
path:
|
|
979
|
+
type: string
|
|
980
|
+
SimpleTransferSubmitRequest:
|
|
981
|
+
type: object
|
|
982
|
+
properties:
|
|
983
|
+
name:
|
|
984
|
+
type: string
|
|
985
|
+
comment:
|
|
986
|
+
type: string
|
|
987
|
+
source:
|
|
988
|
+
$ref: "#/components/schemas/TransferSourceSpec"
|
|
989
|
+
destination:
|
|
990
|
+
$ref: "#/components/schemas/TransferDestinationSpec"
|
|
991
|
+
udp_port:
|
|
992
|
+
type: integer
|
|
993
|
+
target_rate_kbps:
|
|
994
|
+
type: integer
|
|
995
|
+
minimum_rate_kbps:
|
|
996
|
+
type: integer
|
|
997
|
+
policy:
|
|
998
|
+
type: string
|
|
999
|
+
enum:
|
|
1000
|
+
- low
|
|
1001
|
+
- fair
|
|
1002
|
+
- high
|
|
1003
|
+
- fixed
|
|
1004
|
+
retries:
|
|
1005
|
+
$ref: "#/components/schemas/RetriesSpec"
|
|
1006
|
+
content_protection:
|
|
1007
|
+
$ref: "#/components/schemas/ContentProtectionSpec"
|
|
1008
|
+
transport_encryption:
|
|
1009
|
+
type: string
|
|
1010
|
+
enum:
|
|
1011
|
+
- none
|
|
1012
|
+
- aes-128
|
|
1013
|
+
resume:
|
|
1014
|
+
$ref: "#/components/schemas/ResumeSpec"
|
|
1015
|
+
overwrite_policy:
|
|
1016
|
+
type: string
|
|
1017
|
+
enum:
|
|
1018
|
+
- Always
|
|
1019
|
+
- Diff
|
|
1020
|
+
- DiffAndOlder
|
|
1021
|
+
- Never
|
|
1022
|
+
preserve_file_timestamps:
|
|
1023
|
+
type: boolean
|
|
1024
|
+
delete_source_files_after_transfer:
|
|
1025
|
+
$ref: "#/components/schemas/DeleteSourceFilesSpec"
|
|
1026
|
+
exclude_file_filter:
|
|
1027
|
+
type:
|
|
1028
|
+
- string
|
|
1029
|
+
- "null"
|
|
1030
|
+
symbolic_links:
|
|
1031
|
+
type:
|
|
1032
|
+
- string
|
|
1033
|
+
- "null"
|
|
1034
|
+
enum:
|
|
1035
|
+
- follow
|
|
1036
|
+
- copy
|
|
1037
|
+
- copy+force
|
|
1038
|
+
- skip
|
|
1039
|
+
- null
|
|
1040
|
+
mtu_size:
|
|
1041
|
+
type:
|
|
1042
|
+
- integer
|
|
1043
|
+
- "null"
|
|
1044
|
+
read_block_size:
|
|
1045
|
+
type:
|
|
1046
|
+
- integer
|
|
1047
|
+
- "null"
|
|
1048
|
+
write_block_size:
|
|
1049
|
+
type:
|
|
1050
|
+
- integer
|
|
1051
|
+
- "null"
|
|
1052
|
+
notifications:
|
|
1053
|
+
type: array
|
|
1054
|
+
items:
|
|
1055
|
+
$ref: "#/components/schemas/NotificationSpec"
|
|
1056
|
+
scheduled_start:
|
|
1057
|
+
type:
|
|
1058
|
+
- string
|
|
1059
|
+
- "null"
|
|
1060
|
+
format: date-time
|
|
1061
|
+
required:
|
|
1062
|
+
- source
|
|
1063
|
+
- destination
|
|
1064
|
+
SmartTransferSourceOverride:
|
|
1065
|
+
type: object
|
|
1066
|
+
properties:
|
|
1067
|
+
paths:
|
|
1068
|
+
type: array
|
|
1069
|
+
items:
|
|
1070
|
+
type: string
|
|
1071
|
+
source_base:
|
|
1072
|
+
type:
|
|
1073
|
+
- string
|
|
1074
|
+
- "null"
|
|
1075
|
+
SmartTransferSubmitRequest:
|
|
1076
|
+
type: object
|
|
1077
|
+
properties:
|
|
1078
|
+
name:
|
|
1079
|
+
type:
|
|
1080
|
+
- string
|
|
1081
|
+
- "null"
|
|
1082
|
+
comment:
|
|
1083
|
+
type: string
|
|
1084
|
+
source:
|
|
1085
|
+
description: Omit entirely if the Smart Transfer does not allow selecting source items at start — including this section in that case returns an error.
|
|
1086
|
+
allOf:
|
|
1087
|
+
- $ref: "#/components/schemas/SmartTransferSourceOverride"
|
|
1088
|
+
scheduled_start:
|
|
1089
|
+
type:
|
|
1090
|
+
- string
|
|
1091
|
+
- "null"
|
|
1092
|
+
format: date-time
|
|
1093
|
+
responses:
|
|
1094
|
+
Ok:
|
|
1095
|
+
description: Success
|
|
1096
|
+
Unauthorized:
|
|
1097
|
+
description: Bad, missing, or locked username/password
|
|
1098
|
+
Forbidden:
|
|
1099
|
+
description: The operation lets the current user know the item exists, but they do not have permission to change it.
|
|
1100
|
+
UnprocessableEntity:
|
|
1101
|
+
description: Error. A JSON body with details is normally returned; if absent, check the mongrel logs.
|
|
1102
|
+
content:
|
|
1103
|
+
application/json:
|
|
1104
|
+
schema:
|
|
1105
|
+
$ref: "#/components/schemas/Error"
|
|
1106
|
+
securitySchemes:
|
|
1107
|
+
basicAuth:
|
|
1108
|
+
type: http
|
|
1109
|
+
scheme: basic
|
|
1110
|
+
description: Username and password of a valid Console account.
|
|
1111
|
+
tags:
|
|
1112
|
+
- name: transfers
|
|
1113
|
+
description: Submit, control, and monitor individual transfers
|
|
1114
|
+
- name: smart-transfers
|
|
1115
|
+
description: Pre-configured Smart Transfer templates
|
|
1116
|
+
- name: queues
|
|
1117
|
+
description: Reorder items on transfer queues
|
|
1118
|
+
- name: endpoints
|
|
1119
|
+
description: Source/destination endpoints and SSH keys available to the account
|
|
1120
|
+
- name: admin
|
|
1121
|
+
description: Undocumented administrative actions
|
|
1122
|
+
- name: health
|
|
1123
|
+
description: Unauthenticated liveness/health-check endpoint for load balancers
|
|
1124
|
+
security:
|
|
1125
|
+
- basicAuth: []
|