• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

supabase / supabase-swift / 29018885975

09 Jul 2026 12:40PM UTC coverage: 77.87% (-5.2%) from 83.062%
29018885975

Pull #1099

github

web-flow
Merge 2bab4f734 into 27f31bfb7
Pull Request #1099: feat(storage): OpenAPI codegen tool + generated Storage HTTP client

428 of 1233 new or added lines in 18 files covered. (34.71%)

6 existing lines in 2 files now uncovered.

8322 of 10687 relevant lines covered (77.87%)

33.72 hits per line

Source File
Press 'n' to go to next uncovered line, 'b' for previous

5.49
/Sources/Storage/Generated/StorageGeneratedClient.swift
1
// Code generated by openapi-codegen. DO NOT EDIT.
2

3
import Foundation
4
import HTTPRuntime
5

6
internal struct StorageGeneratedClient: Sendable {
7
  private let baseURL: URL
8
  private let transport: any HTTPTransport
9

10
  internal init(baseURL: URL, transport: any HTTPTransport = URLSessionTransport()) {
126✔
11
    self.baseURL = baseURL
126✔
12
    self.transport = transport
126✔
13
  }
126✔
14

15
  internal func bucketCreate(payload: BucketCreateRequestBody) async throws
16
    -> BucketCreateResponse200
NEW
17
  {
×
NEW
18
    var builder = HTTPRequestBuilder(method: .post, baseURL: baseURL, path: "/bucket")
×
NEW
19
    builder.setHeader("Content-Type", "application/json")
×
NEW
20
    builder.setBody(.data(try JSONCoding.encoder.encode(payload)))
×
NEW
21
    let response = try await transport.send(try builder.build())
×
NEW
22
    try response.checkStatus(errorTypes: [403: ErrorSchema.self])
×
NEW
23
    return try JSONCoding.decoder.decode(BucketCreateResponse200.self, from: response.body)
×
NEW
24
  }
×
25

NEW
26
  internal func bucketDelete(bucketId: String) async throws -> BucketDeleteResponse200 {
×
NEW
27
    var builder = HTTPRequestBuilder(
×
NEW
28
      method: .delete, baseURL: baseURL, path: "/bucket/\(PathEncoding.segment(bucketId))")
×
NEW
29
    let response = try await transport.send(try builder.build())
×
NEW
30
    try response.checkStatus(errorTypes: [403: ErrorSchema.self])
×
NEW
31
    return try JSONCoding.decoder.decode(BucketDeleteResponse200.self, from: response.body)
×
NEW
32
  }
×
33

NEW
34
  internal func bucketEmpty(bucketId: String) async throws -> BucketEmptyResponse200 {
×
NEW
35
    var builder = HTTPRequestBuilder(
×
NEW
36
      method: .post, baseURL: baseURL, path: "/bucket/\(PathEncoding.segment(bucketId))/empty")
×
NEW
37
    let response = try await transport.send(try builder.build())
×
NEW
38
    try response.checkStatus(errorTypes: [403: ErrorSchema.self])
×
NEW
39
    return try JSONCoding.decoder.decode(BucketEmptyResponse200.self, from: response.body)
×
NEW
40
  }
×
41

42
  internal func bucketGet(bucketId: String) async throws -> BucketSchema {
4✔
43
    var builder = HTTPRequestBuilder(
4✔
44
      method: .get, baseURL: baseURL, path: "/bucket/\(PathEncoding.segment(bucketId))")
4✔
45
    let response = try await transport.send(try builder.build())
4✔
46
    try response.checkStatus(errorTypes: [403: ErrorSchema.self])
4✔
47
    return try JSONCoding.decoder.decode(BucketSchema.self, from: response.body)
2✔
48
  }
4✔
49

NEW
50
  internal func bucketGetHead(bucketId: String) async throws -> BucketSchema {
×
NEW
51
    var builder = HTTPRequestBuilder(
×
NEW
52
      method: .head, baseURL: baseURL, path: "/bucket/\(PathEncoding.segment(bucketId))")
×
NEW
53
    let response = try await transport.send(try builder.build())
×
NEW
54
    try response.checkStatus(errorTypes: [403: ErrorSchema.self])
×
NEW
55
    return try JSONCoding.decoder.decode(BucketSchema.self, from: response.body)
×
NEW
56
  }
×
57

58
  internal func bucketList(
59
    limit: Int? = nil, offset: Int? = nil, search: String? = nil,
60
    sortColumn: BucketListSortColumn? = nil, sortOrder: BucketListSortOrder? = nil
61
  ) async throws -> [BucketSchema] {
1✔
62
    var builder = HTTPRequestBuilder(method: .get, baseURL: baseURL, path: "/bucket")
1✔
63
    builder.addQuery("limit", limit.map(String.init))
1✔
64
    builder.addQuery("offset", offset.map(String.init))
1✔
65
    builder.addQuery("search", search)
1✔
66
    builder.addQuery("sortColumn", sortColumn?.rawValue)
1✔
67
    builder.addQuery("sortOrder", sortOrder?.rawValue)
1✔
68
    let response = try await transport.send(try builder.build())
1✔
69
    try response.checkStatus(errorTypes: [403: ErrorSchema.self])
1✔
70
    return try JSONCoding.decoder.decode([BucketSchema].self, from: response.body)
1✔
71
  }
1✔
72

73
  internal func bucketListHead(
74
    limit: Int? = nil, offset: Int? = nil, search: String? = nil,
75
    sortColumn: BucketListHeadSortColumn? = nil, sortOrder: BucketListHeadSortOrder? = nil
NEW
76
  ) async throws -> [BucketSchema] {
×
NEW
77
    var builder = HTTPRequestBuilder(method: .head, baseURL: baseURL, path: "/bucket")
×
NEW
78
    builder.addQuery("limit", limit.map(String.init))
×
NEW
79
    builder.addQuery("offset", offset.map(String.init))
×
NEW
80
    builder.addQuery("search", search)
×
NEW
81
    builder.addQuery("sortColumn", sortColumn?.rawValue)
×
NEW
82
    builder.addQuery("sortOrder", sortOrder?.rawValue)
×
NEW
83
    let response = try await transport.send(try builder.build())
×
NEW
84
    try response.checkStatus(errorTypes: [403: ErrorSchema.self])
×
NEW
85
    return try JSONCoding.decoder.decode([BucketSchema].self, from: response.body)
×
NEW
86
  }
×
87

88
  internal func bucketUpdate(bucketId: String, payload: BucketUpdateRequestBody) async throws
89
    -> BucketUpdateResponse200
NEW
90
  {
×
NEW
91
    var builder = HTTPRequestBuilder(
×
NEW
92
      method: .put, baseURL: baseURL, path: "/bucket/\(PathEncoding.segment(bucketId))")
×
NEW
93
    builder.setHeader("Content-Type", "application/json")
×
NEW
94
    builder.setBody(.data(try JSONCoding.encoder.encode(payload)))
×
NEW
95
    let response = try await transport.send(try builder.build())
×
NEW
96
    try response.checkStatus(errorTypes: [403: ErrorSchema.self])
×
NEW
97
    return try JSONCoding.decoder.decode(BucketUpdateResponse200.self, from: response.body)
×
NEW
98
  }
×
99

100
  internal func cdnPurgeBucketCache(bucketName: String, transformations: Bool? = nil) async throws
101
    -> CdnPurgeBucketCacheResponse200
NEW
102
  {
×
NEW
103
    var builder = HTTPRequestBuilder(
×
NEW
104
      method: .delete, baseURL: baseURL, path: "/cdn/\(PathEncoding.segment(bucketName))")
×
NEW
105
    builder.addQuery("transformations", transformations.map(String.init))
×
NEW
106
    let response = try await transport.send(try builder.build())
×
NEW
107
    try response.checkStatus(errorTypes: [403: ErrorSchema.self])
×
NEW
108
    return try JSONCoding.decoder.decode(CdnPurgeBucketCacheResponse200.self, from: response.body)
×
NEW
109
  }
×
110

111
  internal func cdnPurgeObjectCache(
112
    bucketName: String, wildcard: String, transformations: Bool? = nil
NEW
113
  ) async throws -> CdnPurgeObjectCacheResponse200 {
×
NEW
114
    var builder = HTTPRequestBuilder(
×
NEW
115
      method: .delete, baseURL: baseURL,
×
NEW
116
      path: "/cdn/\(PathEncoding.segment(bucketName))/\(PathEncoding.segment(wildcard))")
×
NEW
117
    builder.addQuery("transformations", transformations.map(String.init))
×
NEW
118
    let response = try await transport.send(try builder.build())
×
NEW
119
    try response.checkStatus(errorTypes: [403: ErrorSchema.self])
×
NEW
120
    return try JSONCoding.decoder.decode(CdnPurgeObjectCacheResponse200.self, from: response.body)
×
NEW
121
  }
×
122

123
  internal func cdnPurgeTenantCache(transformations: Bool? = nil) async throws
124
    -> CdnPurgeTenantCacheResponse200
NEW
125
  {
×
NEW
126
    var builder = HTTPRequestBuilder(method: .delete, baseURL: baseURL, path: "/cdn/")
×
NEW
127
    builder.addQuery("transformations", transformations.map(String.init))
×
NEW
128
    let response = try await transport.send(try builder.build())
×
NEW
129
    try response.checkStatus(errorTypes: [403: ErrorSchema.self])
×
NEW
130
    return try JSONCoding.decoder.decode(CdnPurgeTenantCacheResponse200.self, from: response.body)
×
NEW
131
  }
×
132

NEW
133
  internal func healthcheck() async throws -> [String: JSONValue] {
×
NEW
134
    var builder = HTTPRequestBuilder(method: .get, baseURL: baseURL, path: "/health")
×
NEW
135
    let response = try await transport.send(try builder.build())
×
NEW
136
    try response.checkStatus(errorTypes: [403: ErrorSchema.self])
×
NEW
137
    return try JSONCoding.decoder.decode([String: JSONValue].self, from: response.body)
×
NEW
138
  }
×
139

NEW
140
  internal func healthcheckHead() async throws -> [String: JSONValue] {
×
NEW
141
    var builder = HTTPRequestBuilder(method: .head, baseURL: baseURL, path: "/health")
×
NEW
142
    let response = try await transport.send(try builder.build())
×
NEW
143
    try response.checkStatus(errorTypes: [403: ErrorSchema.self])
×
NEW
144
    return try JSONCoding.decoder.decode([String: JSONValue].self, from: response.body)
×
NEW
145
  }
×
146

NEW
147
  internal func objectCopy(payload: ObjectCopyRequestBody) async throws -> ObjectCopyResponse200 {
×
NEW
148
    var builder = HTTPRequestBuilder(method: .post, baseURL: baseURL, path: "/object/copy")
×
NEW
149
    builder.setHeader("Content-Type", "application/json")
×
NEW
150
    builder.setBody(.data(try JSONCoding.encoder.encode(payload)))
×
NEW
151
    let response = try await transport.send(try builder.build())
×
NEW
152
    try response.checkStatus(errorTypes: [403: ErrorSchema.self])
×
NEW
153
    return try JSONCoding.decoder.decode(ObjectCopyResponse200.self, from: response.body)
×
NEW
154
  }
×
155

156
  internal func objectDelete(bucketName: String, wildcard: String) async throws
157
    -> ObjectDeleteResponse200
NEW
158
  {
×
NEW
159
    var builder = HTTPRequestBuilder(
×
NEW
160
      method: .delete, baseURL: baseURL,
×
NEW
161
      path: "/object/\(PathEncoding.segment(bucketName))/\(PathEncoding.segment(wildcard))")
×
NEW
162
    let response = try await transport.send(try builder.build())
×
NEW
163
    try response.checkStatus(errorTypes: [403: ErrorSchema.self])
×
NEW
164
    return try JSONCoding.decoder.decode(ObjectDeleteResponse200.self, from: response.body)
×
NEW
165
  }
×
166

167
  internal func objectDeleteMany(bucketName: String, payload: ObjectDeleteManyRequestBody)
168
    async throws -> [ObjectSchema]
NEW
169
  {
×
NEW
170
    var builder = HTTPRequestBuilder(
×
NEW
171
      method: .delete, baseURL: baseURL, path: "/object/\(PathEncoding.segment(bucketName))")
×
NEW
172
    builder.setHeader("Content-Type", "application/json")
×
NEW
173
    builder.setBody(.data(try JSONCoding.encoder.encode(payload)))
×
NEW
174
    let response = try await transport.send(try builder.build())
×
NEW
175
    try response.checkStatus(errorTypes: [403: ErrorSchema.self])
×
NEW
176
    return try JSONCoding.decoder.decode([ObjectSchema].self, from: response.body)
×
NEW
177
  }
×
178

179
  internal func objectGetAuthenticated(
180
    bucketName: String, wildcard: String, download: String? = nil
NEW
181
  ) async throws {
×
NEW
182
    var builder = HTTPRequestBuilder(
×
NEW
183
      method: .get, baseURL: baseURL,
×
NEW
184
      path:
×
NEW
185
        "/object/authenticated/\(PathEncoding.segment(bucketName))/\(PathEncoding.segment(wildcard))"
×
NEW
186
    )
×
NEW
187
    builder.addQuery("download", download)
×
NEW
188
    let response = try await transport.send(try builder.build())
×
NEW
189
    try response.checkStatus(errorTypes: [403: ErrorSchema.self])
×
NEW
190
  }
×
191

NEW
192
  internal func objectGetAuthenticatedGet(bucketName: String, wildcard: String) async throws {
×
NEW
193
    var builder = HTTPRequestBuilder(
×
NEW
194
      method: .get, baseURL: baseURL,
×
NEW
195
      path: "/object/\(PathEncoding.segment(bucketName))/\(PathEncoding.segment(wildcard))")
×
NEW
196
    let response = try await transport.send(try builder.build())
×
NEW
197
    try response.checkStatus(errorTypes: [403: ErrorSchema.self])
×
NEW
198
  }
×
199

200
  internal func objectGetAuthenticatedInfo(
201
    bucketName: String, wildcard: String, format: ObjectGetAuthenticatedInfoFormat? = nil,
202
    height: Int? = nil, quality: Int? = nil, resize: ObjectGetAuthenticatedInfoResize? = nil,
203
    width: Int? = nil
NEW
204
  ) async throws {
×
NEW
205
    var builder = HTTPRequestBuilder(
×
NEW
206
      method: .get, baseURL: baseURL,
×
NEW
207
      path:
×
NEW
208
        "/object/info/authenticated/\(PathEncoding.segment(bucketName))/\(PathEncoding.segment(wildcard))"
×
NEW
209
    )
×
NEW
210
    builder.addQuery("format", format?.rawValue)
×
NEW
211
    builder.addQuery("height", height.map(String.init))
×
NEW
212
    builder.addQuery("quality", quality.map(String.init))
×
NEW
213
    builder.addQuery("resize", resize?.rawValue)
×
NEW
214
    builder.addQuery("width", width.map(String.init))
×
NEW
215
    let response = try await transport.send(try builder.build())
×
NEW
216
    try response.checkStatus(errorTypes: [403: ErrorSchema.self])
×
NEW
217
  }
×
218

219
  internal func objectGetAuthenticatedInfo2(
220
    bucketName: String, wildcard: String, format: ObjectGetAuthenticatedInfo2Format? = nil,
221
    height: Int? = nil, quality: Int? = nil, resize: ObjectGetAuthenticatedInfo2Resize? = nil,
222
    width: Int? = nil
NEW
223
  ) async throws {
×
NEW
224
    var builder = HTTPRequestBuilder(
×
NEW
225
      method: .head, baseURL: baseURL,
×
NEW
226
      path: "/object/info/\(PathEncoding.segment(bucketName))/\(PathEncoding.segment(wildcard))")
×
NEW
227
    builder.addQuery("format", format?.rawValue)
×
NEW
228
    builder.addQuery("height", height.map(String.init))
×
NEW
229
    builder.addQuery("quality", quality.map(String.init))
×
NEW
230
    builder.addQuery("resize", resize?.rawValue)
×
NEW
231
    builder.addQuery("width", width.map(String.init))
×
NEW
232
    let response = try await transport.send(try builder.build())
×
NEW
233
    try response.checkStatus(errorTypes: [403: ErrorSchema.self])
×
NEW
234
  }
×
235

236
  internal func objectGetAuthenticatedInfoGet(
237
    bucketName: String, wildcard: String, format: ObjectGetAuthenticatedInfoGetFormat? = nil,
238
    height: Int? = nil, quality: Int? = nil, resize: ObjectGetAuthenticatedInfoGetResize? = nil,
239
    width: Int? = nil
NEW
240
  ) async throws {
×
NEW
241
    var builder = HTTPRequestBuilder(
×
NEW
242
      method: .get, baseURL: baseURL,
×
NEW
243
      path: "/object/info/\(PathEncoding.segment(bucketName))/\(PathEncoding.segment(wildcard))")
×
NEW
244
    builder.addQuery("format", format?.rawValue)
×
NEW
245
    builder.addQuery("height", height.map(String.init))
×
NEW
246
    builder.addQuery("quality", quality.map(String.init))
×
NEW
247
    builder.addQuery("resize", resize?.rawValue)
×
NEW
248
    builder.addQuery("width", width.map(String.init))
×
NEW
249
    let response = try await transport.send(try builder.build())
×
NEW
250
    try response.checkStatus(errorTypes: [403: ErrorSchema.self])
×
NEW
251
  }
×
252

253
  internal func objectGetAuthenticatedInfoHead(
254
    bucketName: String, wildcard: String, format: ObjectGetAuthenticatedInfoHeadFormat? = nil,
255
    height: Int? = nil, quality: Int? = nil, resize: ObjectGetAuthenticatedInfoHeadResize? = nil,
256
    width: Int? = nil
NEW
257
  ) async throws {
×
NEW
258
    var builder = HTTPRequestBuilder(
×
NEW
259
      method: .head, baseURL: baseURL,
×
NEW
260
      path:
×
NEW
261
        "/object/info/authenticated/\(PathEncoding.segment(bucketName))/\(PathEncoding.segment(wildcard))"
×
NEW
262
    )
×
NEW
263
    builder.addQuery("format", format?.rawValue)
×
NEW
264
    builder.addQuery("height", height.map(String.init))
×
NEW
265
    builder.addQuery("quality", quality.map(String.init))
×
NEW
266
    builder.addQuery("resize", resize?.rawValue)
×
NEW
267
    builder.addQuery("width", width.map(String.init))
×
NEW
268
    let response = try await transport.send(try builder.build())
×
NEW
269
    try response.checkStatus(errorTypes: [403: ErrorSchema.self])
×
NEW
270
  }
×
271

272
  internal func objectGetPublic(bucketName: String, wildcard: String, download: String? = nil)
273
    async throws
NEW
274
  {
×
NEW
275
    var builder = HTTPRequestBuilder(
×
NEW
276
      method: .get, baseURL: baseURL,
×
NEW
277
      path: "/object/public/\(PathEncoding.segment(bucketName))/\(PathEncoding.segment(wildcard))")
×
NEW
278
    builder.addQuery("download", download)
×
NEW
279
    let response = try await transport.send(try builder.build())
×
NEW
280
    try response.checkStatus(errorTypes: [:])
×
NEW
281
  }
×
282

283
  internal func objectGetSigned(
284
    bucketName: String, token: String, wildcard: String, download: String? = nil
NEW
285
  ) async throws {
×
NEW
286
    var builder = HTTPRequestBuilder(
×
NEW
287
      method: .get, baseURL: baseURL,
×
NEW
288
      path: "/object/sign/\(PathEncoding.segment(bucketName))/\(PathEncoding.segment(wildcard))")
×
NEW
289
    builder.addQuery("token", token)
×
NEW
290
    builder.addQuery("download", download)
×
NEW
291
    let response = try await transport.send(try builder.build())
×
NEW
292
    try response.checkStatus(errorTypes: [:])
×
NEW
293
  }
×
294

295
  internal func objectGetSignedHead(
296
    bucketName: String, token: String, wildcard: String, download: String? = nil
NEW
297
  ) async throws {
×
NEW
298
    var builder = HTTPRequestBuilder(
×
NEW
299
      method: .head, baseURL: baseURL,
×
NEW
300
      path: "/object/sign/\(PathEncoding.segment(bucketName))/\(PathEncoding.segment(wildcard))")
×
NEW
301
    builder.addQuery("token", token)
×
NEW
302
    builder.addQuery("download", download)
×
NEW
303
    let response = try await transport.send(try builder.build())
×
NEW
304
    try response.checkStatus(errorTypes: [:])
×
NEW
305
  }
×
306

307
  internal func objectHeadAuthenticatedInfo(
308
    bucketName: String, wildcard: String, format: ObjectHeadAuthenticatedInfoFormat? = nil,
309
    height: Int? = nil, quality: Int? = nil, resize: ObjectHeadAuthenticatedInfoResize? = nil,
310
    width: Int? = nil
NEW
311
  ) async throws {
×
NEW
312
    var builder = HTTPRequestBuilder(
×
NEW
313
      method: .head, baseURL: baseURL,
×
NEW
314
      path:
×
NEW
315
        "/object/authenticated/\(PathEncoding.segment(bucketName))/\(PathEncoding.segment(wildcard))"
×
NEW
316
    )
×
NEW
317
    builder.addQuery("format", format?.rawValue)
×
NEW
318
    builder.addQuery("height", height.map(String.init))
×
NEW
319
    builder.addQuery("quality", quality.map(String.init))
×
NEW
320
    builder.addQuery("resize", resize?.rawValue)
×
NEW
321
    builder.addQuery("width", width.map(String.init))
×
NEW
322
    let response = try await transport.send(try builder.build())
×
NEW
323
    try response.checkStatus(errorTypes: [403: ErrorSchema.self])
×
NEW
324
  }
×
325

326
  internal func objectHeadAuthenticatedInfoHead(
327
    bucketName: String, wildcard: String, format: ObjectHeadAuthenticatedInfoHeadFormat? = nil,
328
    height: Int? = nil, quality: Int? = nil, resize: ObjectHeadAuthenticatedInfoHeadResize? = nil,
329
    width: Int? = nil
NEW
330
  ) async throws {
×
NEW
331
    var builder = HTTPRequestBuilder(
×
NEW
332
      method: .head, baseURL: baseURL,
×
NEW
333
      path: "/object/\(PathEncoding.segment(bucketName))/\(PathEncoding.segment(wildcard))")
×
NEW
334
    builder.addQuery("format", format?.rawValue)
×
NEW
335
    builder.addQuery("height", height.map(String.init))
×
NEW
336
    builder.addQuery("quality", quality.map(String.init))
×
NEW
337
    builder.addQuery("resize", resize?.rawValue)
×
NEW
338
    builder.addQuery("width", width.map(String.init))
×
NEW
339
    let response = try await transport.send(try builder.build())
×
NEW
340
    try response.checkStatus(errorTypes: [403: ErrorSchema.self])
×
NEW
341
  }
×
342

343
  internal func objectInfoPublic(
344
    bucketName: String, wildcard: String, format: ObjectInfoPublicFormat? = nil, height: Int? = nil,
345
    quality: Int? = nil, resize: ObjectInfoPublicResize? = nil, width: Int? = nil
NEW
346
  ) async throws {
×
NEW
347
    var builder = HTTPRequestBuilder(
×
NEW
348
      method: .head, baseURL: baseURL,
×
NEW
349
      path: "/object/public/\(PathEncoding.segment(bucketName))/\(PathEncoding.segment(wildcard))")
×
NEW
350
    builder.addQuery("format", format?.rawValue)
×
NEW
351
    builder.addQuery("height", height.map(String.init))
×
NEW
352
    builder.addQuery("quality", quality.map(String.init))
×
NEW
353
    builder.addQuery("resize", resize?.rawValue)
×
NEW
354
    builder.addQuery("width", width.map(String.init))
×
NEW
355
    let response = try await transport.send(try builder.build())
×
NEW
356
    try response.checkStatus(errorTypes: [:])
×
NEW
357
  }
×
358

359
  internal func objectInfoPublicGet(
360
    bucketName: String, wildcard: String, format: ObjectInfoPublicGetFormat? = nil,
361
    height: Int? = nil, quality: Int? = nil, resize: ObjectInfoPublicGetResize? = nil,
362
    width: Int? = nil
NEW
363
  ) async throws {
×
NEW
364
    var builder = HTTPRequestBuilder(
×
NEW
365
      method: .get, baseURL: baseURL,
×
NEW
366
      path:
×
NEW
367
        "/object/info/public/\(PathEncoding.segment(bucketName))/\(PathEncoding.segment(wildcard))")
×
NEW
368
    builder.addQuery("format", format?.rawValue)
×
NEW
369
    builder.addQuery("height", height.map(String.init))
×
NEW
370
    builder.addQuery("quality", quality.map(String.init))
×
NEW
371
    builder.addQuery("resize", resize?.rawValue)
×
NEW
372
    builder.addQuery("width", width.map(String.init))
×
NEW
373
    let response = try await transport.send(try builder.build())
×
NEW
374
    try response.checkStatus(errorTypes: [:])
×
NEW
375
  }
×
376

377
  internal func objectList(bucketName: String, payload: ObjectListRequestBody) async throws
378
    -> [ObjectSchema]
NEW
379
  {
×
NEW
380
    var builder = HTTPRequestBuilder(
×
NEW
381
      method: .post, baseURL: baseURL, path: "/object/list/\(PathEncoding.segment(bucketName))")
×
NEW
382
    builder.setHeader("Content-Type", "application/json")
×
NEW
383
    builder.setBody(.data(try JSONCoding.encoder.encode(payload)))
×
NEW
384
    let response = try await transport.send(try builder.build())
×
NEW
385
    try response.checkStatus(errorTypes: [403: ErrorSchema.self])
×
NEW
386
    return try JSONCoding.decoder.decode([ObjectSchema].self, from: response.body)
×
NEW
387
  }
×
388

389
  internal func objectListV2(bucketName: String, payload: ObjectListV2RequestBody) async throws
390
    -> [String: JSONValue]
NEW
391
  {
×
NEW
392
    var builder = HTTPRequestBuilder(
×
NEW
393
      method: .post, baseURL: baseURL, path: "/object/list-v2/\(PathEncoding.segment(bucketName))")
×
NEW
394
    builder.setHeader("Content-Type", "application/json")
×
NEW
395
    builder.setBody(.data(try JSONCoding.encoder.encode(payload)))
×
NEW
396
    let response = try await transport.send(try builder.build())
×
NEW
397
    try response.checkStatus(errorTypes: [403: ErrorSchema.self])
×
NEW
398
    return try JSONCoding.decoder.decode([String: JSONValue].self, from: response.body)
×
NEW
399
  }
×
400

NEW
401
  internal func objectMove(payload: ObjectMoveRequestBody) async throws -> ObjectMoveResponse200 {
×
NEW
402
    var builder = HTTPRequestBuilder(method: .post, baseURL: baseURL, path: "/object/move")
×
NEW
403
    builder.setHeader("Content-Type", "application/json")
×
NEW
404
    builder.setBody(.data(try JSONCoding.encoder.encode(payload)))
×
NEW
405
    let response = try await transport.send(try builder.build())
×
NEW
406
    try response.checkStatus(errorTypes: [403: ErrorSchema.self])
×
NEW
407
    return try JSONCoding.decoder.decode(ObjectMoveResponse200.self, from: response.body)
×
NEW
408
  }
×
409

410
  internal func objectSign(bucketName: String, wildcard: String, payload: ObjectSignRequestBody)
411
    async throws -> ObjectSignResponse200
NEW
412
  {
×
NEW
413
    var builder = HTTPRequestBuilder(
×
NEW
414
      method: .post, baseURL: baseURL,
×
NEW
415
      path: "/object/sign/\(PathEncoding.segment(bucketName))/\(PathEncoding.segment(wildcard))")
×
NEW
416
    builder.setHeader("Content-Type", "application/json")
×
NEW
417
    builder.setBody(.data(try JSONCoding.encoder.encode(payload)))
×
NEW
418
    let response = try await transport.send(try builder.build())
×
NEW
419
    try response.checkStatus(errorTypes: [403: ErrorSchema.self])
×
NEW
420
    return try JSONCoding.decoder.decode(ObjectSignResponse200.self, from: response.body)
×
NEW
421
  }
×
422

423
  internal func objectSignMany(bucketName: String, payload: ObjectSignManyRequestBody) async throws
424
    -> [ObjectSignManyResponse200Item]
NEW
425
  {
×
NEW
426
    var builder = HTTPRequestBuilder(
×
NEW
427
      method: .post, baseURL: baseURL, path: "/object/sign/\(PathEncoding.segment(bucketName))")
×
NEW
428
    builder.setHeader("Content-Type", "application/json")
×
NEW
429
    builder.setBody(.data(try JSONCoding.encoder.encode(payload)))
×
NEW
430
    let response = try await transport.send(try builder.build())
×
NEW
431
    try response.checkStatus(errorTypes: [403: ErrorSchema.self])
×
NEW
432
    return try JSONCoding.decoder.decode([ObjectSignManyResponse200Item].self, from: response.body)
×
NEW
433
  }
×
434

435
  internal func objectSignUploadUrl(bucketName: String, wildcard: String) async throws
436
    -> ObjectSignUploadUrlResponse200
NEW
437
  {
×
NEW
438
    var builder = HTTPRequestBuilder(
×
NEW
439
      method: .post, baseURL: baseURL,
×
NEW
440
      path:
×
NEW
441
        "/object/upload/sign/\(PathEncoding.segment(bucketName))/\(PathEncoding.segment(wildcard))")
×
NEW
442
    let response = try await transport.send(try builder.build())
×
NEW
443
    try response.checkStatus(errorTypes: [403: ErrorSchema.self])
×
NEW
444
    return try JSONCoding.decoder.decode(ObjectSignUploadUrlResponse200.self, from: response.body)
×
NEW
445
  }
×
446

447
  internal func objectUpload(bucketName: String, wildcard: String) async throws
448
    -> ObjectUploadResponse200
449
  {
1✔
450
    var builder = HTTPRequestBuilder(
1✔
451
      method: .post, baseURL: baseURL,
1✔
452
      path: "/object/\(PathEncoding.segment(bucketName))/\(PathEncoding.segment(wildcard))")
1✔
453
    let response = try await transport.send(try builder.build())
1✔
454
    try response.checkStatus(errorTypes: [403: ErrorSchema.self])
1✔
455
    return try JSONCoding.decoder.decode(ObjectUploadResponse200.self, from: response.body)
1✔
456
  }
1✔
457

458
  internal func objectUploadSigned(bucketName: String, token: String, wildcard: String) async throws
459
    -> ObjectUploadSignedResponse200
NEW
460
  {
×
NEW
461
    var builder = HTTPRequestBuilder(
×
NEW
462
      method: .put, baseURL: baseURL,
×
NEW
463
      path:
×
NEW
464
        "/object/upload/sign/\(PathEncoding.segment(bucketName))/\(PathEncoding.segment(wildcard))")
×
NEW
465
    builder.addQuery("token", token)
×
NEW
466
    let response = try await transport.send(try builder.build())
×
NEW
467
    try response.checkStatus(errorTypes: [:])
×
NEW
468
    return try JSONCoding.decoder.decode(ObjectUploadSignedResponse200.self, from: response.body)
×
NEW
469
  }
×
470

471
  internal func objectUploadUpdate(bucketName: String, wildcard: String) async throws
472
    -> ObjectUploadUpdateResponse200
NEW
473
  {
×
NEW
474
    var builder = HTTPRequestBuilder(
×
NEW
475
      method: .put, baseURL: baseURL,
×
NEW
476
      path: "/object/\(PathEncoding.segment(bucketName))/\(PathEncoding.segment(wildcard))")
×
NEW
477
    let response = try await transport.send(try builder.build())
×
NEW
478
    try response.checkStatus(errorTypes: [403: ErrorSchema.self])
×
NEW
479
    return try JSONCoding.decoder.decode(ObjectUploadUpdateResponse200.self, from: response.body)
×
NEW
480
  }
×
481

482
  internal func renderImageAuthenticated(
483
    bucketName: String, wildcard: String, download: String? = nil,
484
    format: RenderImageAuthenticatedFormat? = nil, height: Int? = nil, quality: Int? = nil,
485
    resize: RenderImageAuthenticatedResize? = nil, width: Int? = nil
NEW
486
  ) async throws {
×
NEW
487
    var builder = HTTPRequestBuilder(
×
NEW
488
      method: .get, baseURL: baseURL,
×
NEW
489
      path:
×
NEW
490
        "/render/image/authenticated/\(PathEncoding.segment(bucketName))/\(PathEncoding.segment(wildcard))"
×
NEW
491
    )
×
NEW
492
    builder.addQuery("download", download)
×
NEW
493
    builder.addQuery("format", format?.rawValue)
×
NEW
494
    builder.addQuery("height", height.map(String.init))
×
NEW
495
    builder.addQuery("quality", quality.map(String.init))
×
NEW
496
    builder.addQuery("resize", resize?.rawValue)
×
NEW
497
    builder.addQuery("width", width.map(String.init))
×
NEW
498
    let response = try await transport.send(try builder.build())
×
NEW
499
    try response.checkStatus(errorTypes: [403: ErrorSchema.self])
×
NEW
500
  }
×
501

502
  internal func renderImageAuthenticatedHead(
503
    bucketName: String, wildcard: String, download: String? = nil,
504
    format: RenderImageAuthenticatedHeadFormat? = nil, height: Int? = nil, quality: Int? = nil,
505
    resize: RenderImageAuthenticatedHeadResize? = nil, width: Int? = nil
NEW
506
  ) async throws {
×
NEW
507
    var builder = HTTPRequestBuilder(
×
NEW
508
      method: .head, baseURL: baseURL,
×
NEW
509
      path:
×
NEW
510
        "/render/image/authenticated/\(PathEncoding.segment(bucketName))/\(PathEncoding.segment(wildcard))"
×
NEW
511
    )
×
NEW
512
    builder.addQuery("download", download)
×
NEW
513
    builder.addQuery("format", format?.rawValue)
×
NEW
514
    builder.addQuery("height", height.map(String.init))
×
NEW
515
    builder.addQuery("quality", quality.map(String.init))
×
NEW
516
    builder.addQuery("resize", resize?.rawValue)
×
NEW
517
    builder.addQuery("width", width.map(String.init))
×
NEW
518
    let response = try await transport.send(try builder.build())
×
NEW
519
    try response.checkStatus(errorTypes: [403: ErrorSchema.self])
×
NEW
520
  }
×
521

522
  internal func renderImagePublic(
523
    bucketName: String, wildcard: String, download: String? = nil,
524
    format: RenderImagePublicFormat? = nil, height: Int? = nil, quality: Int? = nil,
525
    resize: RenderImagePublicResize? = nil, width: Int? = nil
NEW
526
  ) async throws {
×
NEW
527
    var builder = HTTPRequestBuilder(
×
NEW
528
      method: .get, baseURL: baseURL,
×
NEW
529
      path:
×
NEW
530
        "/render/image/public/\(PathEncoding.segment(bucketName))/\(PathEncoding.segment(wildcard))"
×
NEW
531
    )
×
NEW
532
    builder.addQuery("download", download)
×
NEW
533
    builder.addQuery("format", format?.rawValue)
×
NEW
534
    builder.addQuery("height", height.map(String.init))
×
NEW
535
    builder.addQuery("quality", quality.map(String.init))
×
NEW
536
    builder.addQuery("resize", resize?.rawValue)
×
NEW
537
    builder.addQuery("width", width.map(String.init))
×
NEW
538
    let response = try await transport.send(try builder.build())
×
NEW
539
    try response.checkStatus(errorTypes: [:])
×
NEW
540
  }
×
541

542
  internal func renderImagePublicHead(
543
    bucketName: String, wildcard: String, download: String? = nil,
544
    format: RenderImagePublicHeadFormat? = nil, height: Int? = nil, quality: Int? = nil,
545
    resize: RenderImagePublicHeadResize? = nil, width: Int? = nil
NEW
546
  ) async throws {
×
NEW
547
    var builder = HTTPRequestBuilder(
×
NEW
548
      method: .head, baseURL: baseURL,
×
NEW
549
      path:
×
NEW
550
        "/render/image/public/\(PathEncoding.segment(bucketName))/\(PathEncoding.segment(wildcard))"
×
NEW
551
    )
×
NEW
552
    builder.addQuery("download", download)
×
NEW
553
    builder.addQuery("format", format?.rawValue)
×
NEW
554
    builder.addQuery("height", height.map(String.init))
×
NEW
555
    builder.addQuery("quality", quality.map(String.init))
×
NEW
556
    builder.addQuery("resize", resize?.rawValue)
×
NEW
557
    builder.addQuery("width", width.map(String.init))
×
NEW
558
    let response = try await transport.send(try builder.build())
×
NEW
559
    try response.checkStatus(errorTypes: [:])
×
NEW
560
  }
×
561

562
  internal func renderImageSign(
563
    bucketName: String, token: String, wildcard: String, download: String? = nil
NEW
564
  ) async throws {
×
NEW
565
    var builder = HTTPRequestBuilder(
×
NEW
566
      method: .get, baseURL: baseURL,
×
NEW
567
      path:
×
NEW
568
        "/render/image/sign/\(PathEncoding.segment(bucketName))/\(PathEncoding.segment(wildcard))")
×
NEW
569
    builder.addQuery("token", token)
×
NEW
570
    builder.addQuery("download", download)
×
NEW
571
    let response = try await transport.send(try builder.build())
×
NEW
572
    try response.checkStatus(errorTypes: [:])
×
NEW
573
  }
×
574

575
  internal func renderImageSignHead(
576
    bucketName: String, token: String, wildcard: String, download: String? = nil
NEW
577
  ) async throws {
×
NEW
578
    var builder = HTTPRequestBuilder(
×
NEW
579
      method: .head, baseURL: baseURL,
×
NEW
580
      path:
×
NEW
581
        "/render/image/sign/\(PathEncoding.segment(bucketName))/\(PathEncoding.segment(wildcard))")
×
NEW
582
    builder.addQuery("token", token)
×
NEW
583
    builder.addQuery("download", download)
×
NEW
584
    let response = try await transport.send(try builder.build())
×
NEW
585
    try response.checkStatus(errorTypes: [:])
×
NEW
586
  }
×
587

NEW
588
  internal func tusOptions() async throws {
×
NEW
589
    var builder = HTTPRequestBuilder(method: .options, baseURL: baseURL, path: "/upload/resumable/")
×
NEW
590
    let response = try await transport.send(try builder.build())
×
NEW
591
    try response.checkStatus(errorTypes: [:])
×
NEW
592
  }
×
593

NEW
594
  internal func tusOptionsOptions(wildcard: String) async throws {
×
NEW
595
    var builder = HTTPRequestBuilder(
×
NEW
596
      method: .options, baseURL: baseURL,
×
NEW
597
      path: "/upload/resumable/\(PathEncoding.segment(wildcard))")
×
NEW
598
    let response = try await transport.send(try builder.build())
×
NEW
599
    try response.checkStatus(errorTypes: [:])
×
NEW
600
  }
×
601

NEW
602
  internal func tusOptionsSigned() async throws {
×
NEW
603
    var builder = HTTPRequestBuilder(
×
NEW
604
      method: .options, baseURL: baseURL, path: "/upload/resumable/sign/")
×
NEW
605
    let response = try await transport.send(try builder.build())
×
NEW
606
    try response.checkStatus(errorTypes: [:])
×
NEW
607
  }
×
608

NEW
609
  internal func tusOptionsSignedOptions(wildcard: String) async throws {
×
NEW
610
    var builder = HTTPRequestBuilder(
×
NEW
611
      method: .options, baseURL: baseURL,
×
NEW
612
      path: "/upload/resumable/sign/\(PathEncoding.segment(wildcard))")
×
NEW
613
    let response = try await transport.send(try builder.build())
×
NEW
614
    try response.checkStatus(errorTypes: [:])
×
NEW
615
  }
×
616

NEW
617
  internal func tusUploadCreate() async throws -> [String: JSONValue] {
×
NEW
618
    var builder = HTTPRequestBuilder(method: .post, baseURL: baseURL, path: "/upload/resumable/")
×
NEW
619
    let response = try await transport.send(try builder.build())
×
NEW
620
    try response.checkStatus(errorTypes: [403: ErrorSchema.self])
×
NEW
621
    return try JSONCoding.decoder.decode([String: JSONValue].self, from: response.body)
×
NEW
622
  }
×
623

NEW
624
  internal func tusUploadCreatePost(wildcard: String) async throws -> [String: JSONValue] {
×
NEW
625
    var builder = HTTPRequestBuilder(
×
NEW
626
      method: .post, baseURL: baseURL, path: "/upload/resumable/\(PathEncoding.segment(wildcard))")
×
NEW
627
    let response = try await transport.send(try builder.build())
×
NEW
628
    try response.checkStatus(errorTypes: [403: ErrorSchema.self])
×
NEW
629
    return try JSONCoding.decoder.decode([String: JSONValue].self, from: response.body)
×
NEW
630
  }
×
631

NEW
632
  internal func tusUploadCreateSigned() async throws {
×
NEW
633
    var builder = HTTPRequestBuilder(
×
NEW
634
      method: .post, baseURL: baseURL, path: "/upload/resumable/sign/")
×
NEW
635
    let response = try await transport.send(try builder.build())
×
NEW
636
    try response.checkStatus(errorTypes: [:])
×
NEW
637
  }
×
638

NEW
639
  internal func tusUploadCreateSignedPost(wildcard: String) async throws {
×
NEW
640
    var builder = HTTPRequestBuilder(
×
NEW
641
      method: .post, baseURL: baseURL,
×
NEW
642
      path: "/upload/resumable/sign/\(PathEncoding.segment(wildcard))")
×
NEW
643
    let response = try await transport.send(try builder.build())
×
NEW
644
    try response.checkStatus(errorTypes: [:])
×
NEW
645
  }
×
646

NEW
647
  internal func tusUploadDelete(wildcard: String) async throws -> [String: JSONValue] {
×
NEW
648
    var builder = HTTPRequestBuilder(
×
NEW
649
      method: .delete, baseURL: baseURL, path: "/upload/resumable/\(PathEncoding.segment(wildcard))"
×
NEW
650
    )
×
NEW
651
    let response = try await transport.send(try builder.build())
×
NEW
652
    try response.checkStatus(errorTypes: [403: ErrorSchema.self])
×
NEW
653
    return try JSONCoding.decoder.decode([String: JSONValue].self, from: response.body)
×
NEW
654
  }
×
655

NEW
656
  internal func tusUploadDeleteSigned(wildcard: String) async throws {
×
NEW
657
    var builder = HTTPRequestBuilder(
×
NEW
658
      method: .delete, baseURL: baseURL,
×
NEW
659
      path: "/upload/resumable/sign/\(PathEncoding.segment(wildcard))")
×
NEW
660
    let response = try await transport.send(try builder.build())
×
NEW
661
    try response.checkStatus(errorTypes: [:])
×
NEW
662
  }
×
663

NEW
664
  internal func tusUploadGet(wildcard: String) async throws -> [String: JSONValue] {
×
NEW
665
    var builder = HTTPRequestBuilder(
×
NEW
666
      method: .head, baseURL: baseURL, path: "/upload/resumable/\(PathEncoding.segment(wildcard))")
×
NEW
667
    let response = try await transport.send(try builder.build())
×
NEW
668
    try response.checkStatus(errorTypes: [403: ErrorSchema.self])
×
NEW
669
    return try JSONCoding.decoder.decode([String: JSONValue].self, from: response.body)
×
NEW
670
  }
×
671

NEW
672
  internal func tusUploadGetSigned(wildcard: String) async throws {
×
NEW
673
    var builder = HTTPRequestBuilder(
×
NEW
674
      method: .head, baseURL: baseURL,
×
NEW
675
      path: "/upload/resumable/sign/\(PathEncoding.segment(wildcard))")
×
NEW
676
    let response = try await transport.send(try builder.build())
×
NEW
677
    try response.checkStatus(errorTypes: [:])
×
NEW
678
  }
×
679

NEW
680
  internal func tusUploadPart(wildcard: String) async throws -> [String: JSONValue] {
×
NEW
681
    var builder = HTTPRequestBuilder(
×
NEW
682
      method: .put, baseURL: baseURL, path: "/upload/resumable/\(PathEncoding.segment(wildcard))")
×
NEW
683
    let response = try await transport.send(try builder.build())
×
NEW
684
    try response.checkStatus(errorTypes: [403: ErrorSchema.self])
×
NEW
685
    return try JSONCoding.decoder.decode([String: JSONValue].self, from: response.body)
×
NEW
686
  }
×
687

NEW
688
  internal func tusUploadPartPatch(wildcard: String) async throws -> [String: JSONValue] {
×
NEW
689
    var builder = HTTPRequestBuilder(
×
NEW
690
      method: .patch, baseURL: baseURL, path: "/upload/resumable/\(PathEncoding.segment(wildcard))")
×
NEW
691
    let response = try await transport.send(try builder.build())
×
NEW
692
    try response.checkStatus(errorTypes: [403: ErrorSchema.self])
×
NEW
693
    return try JSONCoding.decoder.decode([String: JSONValue].self, from: response.body)
×
NEW
694
  }
×
695

NEW
696
  internal func tusUploadPartSigned(wildcard: String) async throws {
×
NEW
697
    var builder = HTTPRequestBuilder(
×
NEW
698
      method: .put, baseURL: baseURL,
×
NEW
699
      path: "/upload/resumable/sign/\(PathEncoding.segment(wildcard))")
×
NEW
700
    let response = try await transport.send(try builder.build())
×
NEW
701
    try response.checkStatus(errorTypes: [:])
×
NEW
702
  }
×
703

NEW
704
  internal func tusUploadPartSignedPatch(wildcard: String) async throws {
×
NEW
705
    var builder = HTTPRequestBuilder(
×
NEW
706
      method: .patch, baseURL: baseURL,
×
NEW
707
      path: "/upload/resumable/sign/\(PathEncoding.segment(wildcard))")
×
NEW
708
    let response = try await transport.send(try builder.build())
×
NEW
709
    try response.checkStatus(errorTypes: [:])
×
NEW
710
  }
×
711
}
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc