aws-sdk-s3 1.136.0 → 1.176.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (86) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +250 -1
  3. data/VERSION +1 -1
  4. data/lib/aws-sdk-s3/access_grants_credentials.rb +57 -0
  5. data/lib/aws-sdk-s3/access_grants_credentials_provider.rb +250 -0
  6. data/lib/aws-sdk-s3/bucket.rb +671 -139
  7. data/lib/aws-sdk-s3/bucket_acl.rb +12 -12
  8. data/lib/aws-sdk-s3/bucket_cors.rb +16 -16
  9. data/lib/aws-sdk-s3/bucket_lifecycle.rb +21 -16
  10. data/lib/aws-sdk-s3/bucket_lifecycle_configuration.rb +74 -17
  11. data/lib/aws-sdk-s3/bucket_logging.rb +19 -12
  12. data/lib/aws-sdk-s3/bucket_notification.rb +6 -6
  13. data/lib/aws-sdk-s3/bucket_policy.rb +62 -18
  14. data/lib/aws-sdk-s3/bucket_region_cache.rb +9 -5
  15. data/lib/aws-sdk-s3/bucket_request_payment.rb +12 -12
  16. data/lib/aws-sdk-s3/bucket_tagging.rb +16 -16
  17. data/lib/aws-sdk-s3/bucket_versioning.rb +32 -32
  18. data/lib/aws-sdk-s3/bucket_website.rb +16 -16
  19. data/lib/aws-sdk-s3/client.rb +7597 -2823
  20. data/lib/aws-sdk-s3/client_api.rb +288 -22
  21. data/lib/aws-sdk-s3/customizations/bucket.rb +1 -1
  22. data/lib/aws-sdk-s3/customizations/errors.rb +15 -2
  23. data/lib/aws-sdk-s3/customizations/object.rb +11 -5
  24. data/lib/aws-sdk-s3/customizations/object_summary.rb +5 -0
  25. data/lib/aws-sdk-s3/customizations/object_version.rb +13 -0
  26. data/lib/aws-sdk-s3/customizations.rb +25 -31
  27. data/lib/aws-sdk-s3/encryption/client.rb +2 -2
  28. data/lib/aws-sdk-s3/encryption/kms_cipher_provider.rb +2 -2
  29. data/lib/aws-sdk-s3/encryptionV2/client.rb +2 -2
  30. data/lib/aws-sdk-s3/encryptionV2/kms_cipher_provider.rb +2 -2
  31. data/lib/aws-sdk-s3/endpoint_parameters.rb +53 -18
  32. data/lib/aws-sdk-s3/endpoint_provider.rb +125 -6
  33. data/lib/aws-sdk-s3/endpoints.rb +545 -1261
  34. data/lib/aws-sdk-s3/errors.rb +47 -0
  35. data/lib/aws-sdk-s3/express_credentials.rb +55 -0
  36. data/lib/aws-sdk-s3/express_credentials_provider.rb +59 -0
  37. data/lib/aws-sdk-s3/file_downloader.rb +1 -2
  38. data/lib/aws-sdk-s3/file_uploader.rb +1 -1
  39. data/lib/aws-sdk-s3/multipart_file_uploader.rb +4 -4
  40. data/lib/aws-sdk-s3/multipart_stream_uploader.rb +6 -5
  41. data/lib/aws-sdk-s3/multipart_upload.rb +139 -36
  42. data/lib/aws-sdk-s3/multipart_upload_part.rb +175 -54
  43. data/lib/aws-sdk-s3/object.rb +1923 -313
  44. data/lib/aws-sdk-s3/object_acl.rb +34 -22
  45. data/lib/aws-sdk-s3/object_copier.rb +1 -1
  46. data/lib/aws-sdk-s3/object_multipart_copier.rb +10 -8
  47. data/lib/aws-sdk-s3/object_summary.rb +1690 -250
  48. data/lib/aws-sdk-s3/object_version.rb +397 -67
  49. data/lib/aws-sdk-s3/plugins/access_grants.rb +178 -0
  50. data/lib/aws-sdk-s3/plugins/endpoints.rb +32 -208
  51. data/lib/aws-sdk-s3/plugins/express_session_auth.rb +97 -0
  52. data/lib/aws-sdk-s3/plugins/http_200_errors.rb +55 -18
  53. data/lib/aws-sdk-s3/plugins/location_constraint.rb +3 -1
  54. data/lib/aws-sdk-s3/plugins/md5s.rb +2 -1
  55. data/lib/aws-sdk-s3/plugins/s3_signer.rb +7 -2
  56. data/lib/aws-sdk-s3/presigner.rb +5 -2
  57. data/lib/aws-sdk-s3/resource.rb +121 -22
  58. data/lib/aws-sdk-s3/types.rb +5960 -1526
  59. data/lib/aws-sdk-s3.rb +35 -31
  60. data/sig/bucket.rbs +221 -0
  61. data/sig/bucket_acl.rbs +78 -0
  62. data/sig/bucket_cors.rbs +69 -0
  63. data/sig/bucket_lifecycle.rbs +88 -0
  64. data/sig/bucket_lifecycle_configuration.rbs +115 -0
  65. data/sig/bucket_logging.rbs +76 -0
  66. data/sig/bucket_notification.rbs +114 -0
  67. data/sig/bucket_policy.rbs +59 -0
  68. data/sig/bucket_request_payment.rbs +54 -0
  69. data/sig/bucket_tagging.rbs +65 -0
  70. data/sig/bucket_versioning.rbs +77 -0
  71. data/sig/bucket_website.rbs +93 -0
  72. data/sig/client.rbs +2450 -0
  73. data/sig/customizations/bucket.rbs +19 -0
  74. data/sig/customizations/object.rbs +38 -0
  75. data/sig/customizations/object_summary.rbs +35 -0
  76. data/sig/errors.rbs +42 -0
  77. data/sig/multipart_upload.rbs +113 -0
  78. data/sig/multipart_upload_part.rbs +105 -0
  79. data/sig/object.rbs +448 -0
  80. data/sig/object_acl.rbs +86 -0
  81. data/sig/object_summary.rbs +340 -0
  82. data/sig/object_version.rbs +140 -0
  83. data/sig/resource.rbs +132 -0
  84. data/sig/types.rbs +2682 -0
  85. data/sig/waiters.rbs +95 -0
  86. metadata +44 -11
@@ -54,7 +54,7 @@ module Aws::S3
54
54
  #
55
55
  # @return [self]
56
56
  def load
57
- resp = Aws::Plugins::UserAgent.feature('resource') do
57
+ resp = Aws::Plugins::UserAgent.metric('RESOURCE_MODEL') do
58
58
  @client.get_bucket_request_payment(bucket: @bucket_name)
59
59
  end
60
60
  @data = resp.data
@@ -171,7 +171,7 @@ module Aws::S3
171
171
  :retry
172
172
  end
173
173
  end
174
- Aws::Plugins::UserAgent.feature('resource') do
174
+ Aws::Plugins::UserAgent.metric('RESOURCE_MODEL') do
175
175
  Aws::Waiters::Waiter.new(options).wait({})
176
176
  end
177
177
  end
@@ -203,12 +203,12 @@ module Aws::S3
203
203
  # [1]: http://www.ietf.org/rfc/rfc1864.txt
204
204
  # @option options [String] :checksum_algorithm
205
205
  # Indicates the algorithm used to create the checksum for the object
206
- # when using the SDK. This header will not provide any additional
207
- # functionality if not using the SDK. When sending this header, there
208
- # must be a corresponding `x-amz-checksum` or `x-amz-trailer` header
209
- # sent. Otherwise, Amazon S3 fails the request with the HTTP status code
210
- # `400 Bad Request`. For more information, see [Checking object
211
- # integrity][1] in the *Amazon S3 User Guide*.
206
+ # when you use the SDK. This header will not provide any additional
207
+ # functionality if you don't use the SDK. When you send this header,
208
+ # there must be a corresponding `x-amz-checksum` or `x-amz-trailer`
209
+ # header sent. Otherwise, Amazon S3 fails the request with the HTTP
210
+ # status code `400 Bad Request`. For more information, see [Checking
211
+ # object integrity][1] in the *Amazon S3 User Guide*.
212
212
  #
213
213
  # If you provide an individual checksum, Amazon S3 ignores any provided
214
214
  # `ChecksumAlgorithm` parameter.
@@ -219,13 +219,13 @@ module Aws::S3
219
219
  # @option options [required, Types::RequestPaymentConfiguration] :request_payment_configuration
220
220
  # Container for Payer.
221
221
  # @option options [String] :expected_bucket_owner
222
- # The account ID of the expected bucket owner. If the bucket is owned by
223
- # a different account, the request fails with the HTTP status code `403
224
- # Forbidden` (access denied).
222
+ # The account ID of the expected bucket owner. If the account ID that
223
+ # you provide does not match the actual owner of the bucket, the request
224
+ # fails with the HTTP status code `403 Forbidden` (access denied).
225
225
  # @return [EmptyStructure]
226
226
  def put(options = {})
227
227
  options = options.merge(bucket: @bucket_name)
228
- resp = Aws::Plugins::UserAgent.feature('resource') do
228
+ resp = Aws::Plugins::UserAgent.metric('RESOURCE_MODEL') do
229
229
  @client.put_bucket_request_payment(options)
230
230
  end
231
231
  resp.data
@@ -54,7 +54,7 @@ module Aws::S3
54
54
  #
55
55
  # @return [self]
56
56
  def load
57
- resp = Aws::Plugins::UserAgent.feature('resource') do
57
+ resp = Aws::Plugins::UserAgent.metric('RESOURCE_MODEL') do
58
58
  @client.get_bucket_tagging(bucket: @bucket_name)
59
59
  end
60
60
  @data = resp.data
@@ -171,7 +171,7 @@ module Aws::S3
171
171
  :retry
172
172
  end
173
173
  end
174
- Aws::Plugins::UserAgent.feature('resource') do
174
+ Aws::Plugins::UserAgent.metric('RESOURCE_MODEL') do
175
175
  Aws::Waiters::Waiter.new(options).wait({})
176
176
  end
177
177
  end
@@ -185,13 +185,13 @@ module Aws::S3
185
185
  # })
186
186
  # @param [Hash] options ({})
187
187
  # @option options [String] :expected_bucket_owner
188
- # The account ID of the expected bucket owner. If the bucket is owned by
189
- # a different account, the request fails with the HTTP status code `403
190
- # Forbidden` (access denied).
188
+ # The account ID of the expected bucket owner. If the account ID that
189
+ # you provide does not match the actual owner of the bucket, the request
190
+ # fails with the HTTP status code `403 Forbidden` (access denied).
191
191
  # @return [EmptyStructure]
192
192
  def delete(options = {})
193
193
  options = options.merge(bucket: @bucket_name)
194
- resp = Aws::Plugins::UserAgent.feature('resource') do
194
+ resp = Aws::Plugins::UserAgent.metric('RESOURCE_MODEL') do
195
195
  @client.delete_bucket_tagging(options)
196
196
  end
197
197
  resp.data
@@ -227,12 +227,12 @@ module Aws::S3
227
227
  # [1]: http://www.ietf.org/rfc/rfc1864.txt
228
228
  # @option options [String] :checksum_algorithm
229
229
  # Indicates the algorithm used to create the checksum for the object
230
- # when using the SDK. This header will not provide any additional
231
- # functionality if not using the SDK. When sending this header, there
232
- # must be a corresponding `x-amz-checksum` or `x-amz-trailer` header
233
- # sent. Otherwise, Amazon S3 fails the request with the HTTP status code
234
- # `400 Bad Request`. For more information, see [Checking object
235
- # integrity][1] in the *Amazon S3 User Guide*.
230
+ # when you use the SDK. This header will not provide any additional
231
+ # functionality if you don't use the SDK. When you send this header,
232
+ # there must be a corresponding `x-amz-checksum` or `x-amz-trailer`
233
+ # header sent. Otherwise, Amazon S3 fails the request with the HTTP
234
+ # status code `400 Bad Request`. For more information, see [Checking
235
+ # object integrity][1] in the *Amazon S3 User Guide*.
236
236
  #
237
237
  # If you provide an individual checksum, Amazon S3 ignores any provided
238
238
  # `ChecksumAlgorithm` parameter.
@@ -243,13 +243,13 @@ module Aws::S3
243
243
  # @option options [required, Types::Tagging] :tagging
244
244
  # Container for the `TagSet` and `Tag` elements.
245
245
  # @option options [String] :expected_bucket_owner
246
- # The account ID of the expected bucket owner. If the bucket is owned by
247
- # a different account, the request fails with the HTTP status code `403
248
- # Forbidden` (access denied).
246
+ # The account ID of the expected bucket owner. If the account ID that
247
+ # you provide does not match the actual owner of the bucket, the request
248
+ # fails with the HTTP status code `403 Forbidden` (access denied).
249
249
  # @return [EmptyStructure]
250
250
  def put(options = {})
251
251
  options = options.merge(bucket: @bucket_name)
252
- resp = Aws::Plugins::UserAgent.feature('resource') do
252
+ resp = Aws::Plugins::UserAgent.metric('RESOURCE_MODEL') do
253
253
  @client.put_bucket_tagging(options)
254
254
  end
255
255
  resp.data
@@ -63,7 +63,7 @@ module Aws::S3
63
63
  #
64
64
  # @return [self]
65
65
  def load
66
- resp = Aws::Plugins::UserAgent.feature('resource') do
66
+ resp = Aws::Plugins::UserAgent.metric('RESOURCE_MODEL') do
67
67
  @client.get_bucket_versioning(bucket: @bucket_name)
68
68
  end
69
69
  @data = resp.data
@@ -180,7 +180,7 @@ module Aws::S3
180
180
  :retry
181
181
  end
182
182
  end
183
- Aws::Plugins::UserAgent.feature('resource') do
183
+ Aws::Plugins::UserAgent.metric('RESOURCE_MODEL') do
184
184
  Aws::Waiters::Waiter.new(options).wait({})
185
185
  end
186
186
  end
@@ -211,12 +211,12 @@ module Aws::S3
211
211
  # [1]: http://www.ietf.org/rfc/rfc1864.txt
212
212
  # @option options [String] :checksum_algorithm
213
213
  # Indicates the algorithm used to create the checksum for the object
214
- # when using the SDK. This header will not provide any additional
215
- # functionality if not using the SDK. When sending this header, there
216
- # must be a corresponding `x-amz-checksum` or `x-amz-trailer` header
217
- # sent. Otherwise, Amazon S3 fails the request with the HTTP status code
218
- # `400 Bad Request`. For more information, see [Checking object
219
- # integrity][1] in the *Amazon S3 User Guide*.
214
+ # when you use the SDK. This header will not provide any additional
215
+ # functionality if you don't use the SDK. When you send this header,
216
+ # there must be a corresponding `x-amz-checksum` or `x-amz-trailer`
217
+ # header sent. Otherwise, Amazon S3 fails the request with the HTTP
218
+ # status code `400 Bad Request`. For more information, see [Checking
219
+ # object integrity][1] in the *Amazon S3 User Guide*.
220
220
  #
221
221
  # If you provide an individual checksum, Amazon S3 ignores any provided
222
222
  # `ChecksumAlgorithm` parameter.
@@ -228,9 +228,9 @@ module Aws::S3
228
228
  # The concatenation of the authentication device's serial number, a
229
229
  # space, and the value that is displayed on your authentication device.
230
230
  # @option options [String] :expected_bucket_owner
231
- # The account ID of the expected bucket owner. If the bucket is owned by
232
- # a different account, the request fails with the HTTP status code `403
233
- # Forbidden` (access denied).
231
+ # The account ID of the expected bucket owner. If the account ID that
232
+ # you provide does not match the actual owner of the bucket, the request
233
+ # fails with the HTTP status code `403 Forbidden` (access denied).
234
234
  # @return [EmptyStructure]
235
235
  def enable(options = {})
236
236
  options = Aws::Util.deep_merge(options,
@@ -239,7 +239,7 @@ module Aws::S3
239
239
  status: "Enabled"
240
240
  }
241
241
  )
242
- resp = Aws::Plugins::UserAgent.feature('resource') do
242
+ resp = Aws::Plugins::UserAgent.metric('RESOURCE_MODEL') do
243
243
  @client.put_bucket_versioning(options)
244
244
  end
245
245
  resp.data
@@ -273,12 +273,12 @@ module Aws::S3
273
273
  # [1]: http://www.ietf.org/rfc/rfc1864.txt
274
274
  # @option options [String] :checksum_algorithm
275
275
  # Indicates the algorithm used to create the checksum for the object
276
- # when using the SDK. This header will not provide any additional
277
- # functionality if not using the SDK. When sending this header, there
278
- # must be a corresponding `x-amz-checksum` or `x-amz-trailer` header
279
- # sent. Otherwise, Amazon S3 fails the request with the HTTP status code
280
- # `400 Bad Request`. For more information, see [Checking object
281
- # integrity][1] in the *Amazon S3 User Guide*.
276
+ # when you use the SDK. This header will not provide any additional
277
+ # functionality if you don't use the SDK. When you send this header,
278
+ # there must be a corresponding `x-amz-checksum` or `x-amz-trailer`
279
+ # header sent. Otherwise, Amazon S3 fails the request with the HTTP
280
+ # status code `400 Bad Request`. For more information, see [Checking
281
+ # object integrity][1] in the *Amazon S3 User Guide*.
282
282
  #
283
283
  # If you provide an individual checksum, Amazon S3 ignores any provided
284
284
  # `ChecksumAlgorithm` parameter.
@@ -292,13 +292,13 @@ module Aws::S3
292
292
  # @option options [required, Types::VersioningConfiguration] :versioning_configuration
293
293
  # Container for setting the versioning state.
294
294
  # @option options [String] :expected_bucket_owner
295
- # The account ID of the expected bucket owner. If the bucket is owned by
296
- # a different account, the request fails with the HTTP status code `403
297
- # Forbidden` (access denied).
295
+ # The account ID of the expected bucket owner. If the account ID that
296
+ # you provide does not match the actual owner of the bucket, the request
297
+ # fails with the HTTP status code `403 Forbidden` (access denied).
298
298
  # @return [EmptyStructure]
299
299
  def put(options = {})
300
300
  options = options.merge(bucket: @bucket_name)
301
- resp = Aws::Plugins::UserAgent.feature('resource') do
301
+ resp = Aws::Plugins::UserAgent.metric('RESOURCE_MODEL') do
302
302
  @client.put_bucket_versioning(options)
303
303
  end
304
304
  resp.data
@@ -328,12 +328,12 @@ module Aws::S3
328
328
  # [1]: http://www.ietf.org/rfc/rfc1864.txt
329
329
  # @option options [String] :checksum_algorithm
330
330
  # Indicates the algorithm used to create the checksum for the object
331
- # when using the SDK. This header will not provide any additional
332
- # functionality if not using the SDK. When sending this header, there
333
- # must be a corresponding `x-amz-checksum` or `x-amz-trailer` header
334
- # sent. Otherwise, Amazon S3 fails the request with the HTTP status code
335
- # `400 Bad Request`. For more information, see [Checking object
336
- # integrity][1] in the *Amazon S3 User Guide*.
331
+ # when you use the SDK. This header will not provide any additional
332
+ # functionality if you don't use the SDK. When you send this header,
333
+ # there must be a corresponding `x-amz-checksum` or `x-amz-trailer`
334
+ # header sent. Otherwise, Amazon S3 fails the request with the HTTP
335
+ # status code `400 Bad Request`. For more information, see [Checking
336
+ # object integrity][1] in the *Amazon S3 User Guide*.
337
337
  #
338
338
  # If you provide an individual checksum, Amazon S3 ignores any provided
339
339
  # `ChecksumAlgorithm` parameter.
@@ -345,9 +345,9 @@ module Aws::S3
345
345
  # The concatenation of the authentication device's serial number, a
346
346
  # space, and the value that is displayed on your authentication device.
347
347
  # @option options [String] :expected_bucket_owner
348
- # The account ID of the expected bucket owner. If the bucket is owned by
349
- # a different account, the request fails with the HTTP status code `403
350
- # Forbidden` (access denied).
348
+ # The account ID of the expected bucket owner. If the account ID that
349
+ # you provide does not match the actual owner of the bucket, the request
350
+ # fails with the HTTP status code `403 Forbidden` (access denied).
351
351
  # @return [EmptyStructure]
352
352
  def suspend(options = {})
353
353
  options = Aws::Util.deep_merge(options,
@@ -356,7 +356,7 @@ module Aws::S3
356
356
  status: "Suspended"
357
357
  }
358
358
  )
359
- resp = Aws::Plugins::UserAgent.feature('resource') do
359
+ resp = Aws::Plugins::UserAgent.metric('RESOURCE_MODEL') do
360
360
  @client.put_bucket_versioning(options)
361
361
  end
362
362
  resp.data
@@ -76,7 +76,7 @@ module Aws::S3
76
76
  #
77
77
  # @return [self]
78
78
  def load
79
- resp = Aws::Plugins::UserAgent.feature('resource') do
79
+ resp = Aws::Plugins::UserAgent.metric('RESOURCE_MODEL') do
80
80
  @client.get_bucket_website(bucket: @bucket_name)
81
81
  end
82
82
  @data = resp.data
@@ -193,7 +193,7 @@ module Aws::S3
193
193
  :retry
194
194
  end
195
195
  end
196
- Aws::Plugins::UserAgent.feature('resource') do
196
+ Aws::Plugins::UserAgent.metric('RESOURCE_MODEL') do
197
197
  Aws::Waiters::Waiter.new(options).wait({})
198
198
  end
199
199
  end
@@ -207,13 +207,13 @@ module Aws::S3
207
207
  # })
208
208
  # @param [Hash] options ({})
209
209
  # @option options [String] :expected_bucket_owner
210
- # The account ID of the expected bucket owner. If the bucket is owned by
211
- # a different account, the request fails with the HTTP status code `403
212
- # Forbidden` (access denied).
210
+ # The account ID of the expected bucket owner. If the account ID that
211
+ # you provide does not match the actual owner of the bucket, the request
212
+ # fails with the HTTP status code `403 Forbidden` (access denied).
213
213
  # @return [EmptyStructure]
214
214
  def delete(options = {})
215
215
  options = options.merge(bucket: @bucket_name)
216
- resp = Aws::Plugins::UserAgent.feature('resource') do
216
+ resp = Aws::Plugins::UserAgent.metric('RESOURCE_MODEL') do
217
217
  @client.delete_bucket_website(options)
218
218
  end
219
219
  resp.data
@@ -268,12 +268,12 @@ module Aws::S3
268
268
  # [1]: http://www.ietf.org/rfc/rfc1864.txt
269
269
  # @option options [String] :checksum_algorithm
270
270
  # Indicates the algorithm used to create the checksum for the object
271
- # when using the SDK. This header will not provide any additional
272
- # functionality if not using the SDK. When sending this header, there
273
- # must be a corresponding `x-amz-checksum` or `x-amz-trailer` header
274
- # sent. Otherwise, Amazon S3 fails the request with the HTTP status code
275
- # `400 Bad Request`. For more information, see [Checking object
276
- # integrity][1] in the *Amazon S3 User Guide*.
271
+ # when you use the SDK. This header will not provide any additional
272
+ # functionality if you don't use the SDK. When you send this header,
273
+ # there must be a corresponding `x-amz-checksum` or `x-amz-trailer`
274
+ # header sent. Otherwise, Amazon S3 fails the request with the HTTP
275
+ # status code `400 Bad Request`. For more information, see [Checking
276
+ # object integrity][1] in the *Amazon S3 User Guide*.
277
277
  #
278
278
  # If you provide an individual checksum, Amazon S3 ignores any provided
279
279
  # `ChecksumAlgorithm` parameter.
@@ -284,13 +284,13 @@ module Aws::S3
284
284
  # @option options [required, Types::WebsiteConfiguration] :website_configuration
285
285
  # Container for the request.
286
286
  # @option options [String] :expected_bucket_owner
287
- # The account ID of the expected bucket owner. If the bucket is owned by
288
- # a different account, the request fails with the HTTP status code `403
289
- # Forbidden` (access denied).
287
+ # The account ID of the expected bucket owner. If the account ID that
288
+ # you provide does not match the actual owner of the bucket, the request
289
+ # fails with the HTTP status code `403 Forbidden` (access denied).
290
290
  # @return [EmptyStructure]
291
291
  def put(options = {})
292
292
  options = options.merge(bucket: @bucket_name)
293
- resp = Aws::Plugins::UserAgent.feature('resource') do
293
+ resp = Aws::Plugins::UserAgent.metric('RESOURCE_MODEL') do
294
294
  @client.put_bucket_website(options)
295
295
  end
296
296
  resp.data