---
version: 1
interactions:
- request:
    body: '{"cluster":"us-east-1","label":"go-bucket-test-def"}'
    form: {}
    headers:
      Accept:
      - application/json
      Content-Type:
      - application/json
      User-Agent:
      - linodego/dev https://github.com/linode/linodego
    url: https://api.linode.com/v4beta/object-storage/buckets
    method: POST
  response:
    body: '{"hostname": "go-bucket-test-def.us-east-1.linodeobjects.com", "label":
      "go-bucket-test-def", "created": "2018-01-02T03:04:05", "region": "us-east",
      "cluster": "us-east-1", "size": 0, "objects": 0}'
    headers:
      Access-Control-Allow-Credentials:
      - "true"
      Access-Control-Allow-Headers:
      - Authorization, Origin, X-Requested-With, Content-Type, Accept, X-Filter
      Access-Control-Allow-Methods:
      - HEAD, GET, OPTIONS, POST, PUT, DELETE
      Access-Control-Allow-Origin:
      - '*'
      Access-Control-Expose-Headers:
      - X-OAuth-Scopes, X-Accepted-OAuth-Scopes, X-Status
      Akamai-Internal-Account:
      - '*'
      Cache-Control:
      - max-age=0, no-cache, no-store
      Connection:
      - keep-alive
      Content-Length:
      - "197"
      Content-Security-Policy:
      - default-src 'none'
      Content-Type:
      - application/json
      Expires:
      - Wed, 10 Jul 2024 18:07:33 GMT
      Pragma:
      - no-cache
      Strict-Transport-Security:
      - max-age=31536000
      Vary:
      - Authorization, X-Filter
      X-Accepted-Oauth-Scopes:
      - object_storage:read_write
      X-Content-Type-Options:
      - nosniff
      X-Frame-Options:
      - DENY
      - DENY
      X-Oauth-Scopes:
      - '*'
      X-Ratelimit-Limit:
      - "400"
      X-Xss-Protection:
      - 1; mode=block
    status: 200 OK
    code: 200
    duration: ""
- request:
    body: '{"name":"test","method":"PUT","content_type":"text/plain","expires_in":360}'
    form: {}
    headers:
      Accept:
      - application/json
      Content-Type:
      - application/json
      User-Agent:
      - linodego/dev https://github.com/linode/linodego
    url: https://api.linode.com/v4beta/object-storage/buckets/us-east-1/go-bucket-test-def/object-url
    method: POST
  response:
    body: '{"url": "https://us-east-1.linodeobjects.com:443/go-bucket-test-def/test?Signature=GShs5R09JONsfP%2Fb5k802GBEQjA%3D&Expires=1720635214&AWSAccessKeyID=SANITIZED",
      "exists": false}'
    headers:
      Access-Control-Allow-Credentials:
      - "true"
      Access-Control-Allow-Headers:
      - Authorization, Origin, X-Requested-With, Content-Type, Accept, X-Filter
      Access-Control-Allow-Methods:
      - HEAD, GET, OPTIONS, POST, PUT, DELETE
      Access-Control-Allow-Origin:
      - '*'
      Access-Control-Expose-Headers:
      - X-OAuth-Scopes, X-Accepted-OAuth-Scopes, X-Status
      Akamai-Internal-Account:
      - '*'
      Cache-Control:
      - max-age=0, no-cache, no-store
      Connection:
      - keep-alive
      Content-Length:
      - "189"
      Content-Security-Policy:
      - default-src 'none'
      Content-Type:
      - application/json
      Expires:
      - Wed, 10 Jul 2024 18:07:34 GMT
      Pragma:
      - no-cache
      Strict-Transport-Security:
      - max-age=31536000
      Vary:
      - Authorization, X-Filter
      X-Accepted-Oauth-Scopes:
      - object_storage:read_write
      X-Content-Type-Options:
      - nosniff
      X-Frame-Options:
      - DENY
      - DENY
      X-Oauth-Scopes:
      - '*'
      X-Ratelimit-Limit:
      - "400"
      X-Xss-Protection:
      - 1; mode=block
    status: 200 OK
    code: 200
    duration: ""
- request:
    body: ""
    form: {}
    headers:
      Accept:
      - application/json
      Content-Type:
      - application/json
      User-Agent:
      - linodego/dev https://github.com/linode/linodego
    url: https://api.linode.com/v4beta/object-storage/buckets/us-east-1/go-bucket-test-def/object-acl?name=test
    method: GET
  response:
    body: '{"acl": "private", "acl_xml": "<AccessControlPolicy xmlns=\"http://s3.amazonaws.com/doc/2006-03-01/\"><Owner><ID>640757b5-ebe9-45b1-abd5-581f215ef89e</ID><DisplayName>640757b5-ebe9-45b1-abd5-581f215ef89e</DisplayName></Owner><AccessControlList><Grant><Grantee
      xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\" xsi:type=\"CanonicalUser\"><ID>640757b5-ebe9-45b1-abd5-581f215ef89e</ID><DisplayName>640757b5-ebe9-45b1-abd5-581f215ef89e</DisplayName></Grantee><Permission>FULL_CONTROL</Permission></Grant></AccessControlList></AccessControlPolicy>"}'
    headers:
      Access-Control-Allow-Credentials:
      - "true"
      Access-Control-Allow-Headers:
      - Authorization, Origin, X-Requested-With, Content-Type, Accept, X-Filter
      Access-Control-Allow-Methods:
      - HEAD, GET, OPTIONS, POST, PUT, DELETE
      Access-Control-Allow-Origin:
      - '*'
      Access-Control-Expose-Headers:
      - X-OAuth-Scopes, X-Accepted-OAuth-Scopes, X-Status
      Akamai-Internal-Account:
      - '*'
      Cache-Control:
      - max-age=0, no-cache, no-store
      Connection:
      - keep-alive
      Content-Length:
      - "550"
      Content-Security-Policy:
      - default-src 'none'
      Content-Type:
      - application/json
      Expires:
      - Wed, 10 Jul 2024 18:07:36 GMT
      Pragma:
      - no-cache
      Strict-Transport-Security:
      - max-age=31536000
      Vary:
      - Authorization, X-Filter
      - Authorization, X-Filter
      X-Accepted-Oauth-Scopes:
      - object_storage:read_only
      X-Content-Type-Options:
      - nosniff
      X-Frame-Options:
      - DENY
      - DENY
      X-Oauth-Scopes:
      - '*'
      X-Ratelimit-Limit:
      - "400"
      X-Xss-Protection:
      - 1; mode=block
    status: 200 OK
    code: 200
    duration: ""
- request:
    body: '{"name":"test","acl":"public-read"}'
    form: {}
    headers:
      Accept:
      - application/json
      Content-Type:
      - application/json
      User-Agent:
      - linodego/dev https://github.com/linode/linodego
    url: https://api.linode.com/v4beta/object-storage/buckets/us-east-1/go-bucket-test-def/object-acl
    method: PUT
  response:
    body: '{}'
    headers:
      Access-Control-Allow-Credentials:
      - "true"
      Access-Control-Allow-Headers:
      - Authorization, Origin, X-Requested-With, Content-Type, Accept, X-Filter
      Access-Control-Allow-Methods:
      - HEAD, GET, OPTIONS, POST, PUT, DELETE
      Access-Control-Allow-Origin:
      - '*'
      Access-Control-Expose-Headers:
      - X-OAuth-Scopes, X-Accepted-OAuth-Scopes, X-Status
      Akamai-Internal-Account:
      - '*'
      Cache-Control:
      - max-age=0, no-cache, no-store
      Connection:
      - keep-alive
      Content-Length:
      - "2"
      Content-Security-Policy:
      - default-src 'none'
      Content-Type:
      - application/json
      Expires:
      - Wed, 10 Jul 2024 18:07:39 GMT
      Pragma:
      - no-cache
      Strict-Transport-Security:
      - max-age=31536000
      Vary:
      - Authorization, X-Filter
      X-Accepted-Oauth-Scopes:
      - object_storage:read_write
      X-Content-Type-Options:
      - nosniff
      X-Frame-Options:
      - DENY
      - DENY
      X-Oauth-Scopes:
      - '*'
      X-Ratelimit-Limit:
      - "400"
      X-Xss-Protection:
      - 1; mode=block
    status: 200 OK
    code: 200
    duration: ""
- request:
    body: ""
    form: {}
    headers:
      Accept:
      - application/json
      Content-Type:
      - application/json
      User-Agent:
      - linodego/dev https://github.com/linode/linodego
    url: https://api.linode.com/v4beta/object-storage/buckets/us-east-1/go-bucket-test-def/object-acl?name=test
    method: GET
  response:
    body: '{"acl": "public-read", "acl_xml": "<AccessControlPolicy xmlns=\"http://s3.amazonaws.com/doc/2006-03-01/\"><Owner><ID>640757b5-ebe9-45b1-abd5-581f215ef89e</ID><DisplayName>640757b5-ebe9-45b1-abd5-581f215ef89e</DisplayName></Owner><AccessControlList><Grant><Grantee
      xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\" xsi:type=\"Group\"><URI>http://acs.amazonaws.com/groups/global/AllUsers</URI></Grantee><Permission>READ</Permission></Grant><Grant><Grantee
      xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\" xsi:type=\"CanonicalUser\"><ID>640757b5-ebe9-45b1-abd5-581f215ef89e</ID><DisplayName>640757b5-ebe9-45b1-abd5-581f215ef89e</DisplayName></Grantee><Permission>FULL_CONTROL</Permission></Grant></AccessControlList></AccessControlPolicy>"}'
    headers:
      Access-Control-Allow-Credentials:
      - "true"
      Access-Control-Allow-Headers:
      - Authorization, Origin, X-Requested-With, Content-Type, Accept, X-Filter
      Access-Control-Allow-Methods:
      - HEAD, GET, OPTIONS, POST, PUT, DELETE
      Access-Control-Allow-Origin:
      - '*'
      Access-Control-Expose-Headers:
      - X-OAuth-Scopes, X-Accepted-OAuth-Scopes, X-Status
      Akamai-Internal-Account:
      - '*'
      Cache-Control:
      - max-age=0, no-cache, no-store
      Connection:
      - keep-alive
      Content-Length:
      - "750"
      Content-Security-Policy:
      - default-src 'none'
      Content-Type:
      - application/json
      Expires:
      - Wed, 10 Jul 2024 18:07:41 GMT
      Pragma:
      - no-cache
      Strict-Transport-Security:
      - max-age=31536000
      Vary:
      - Authorization, X-Filter
      - Authorization, X-Filter
      X-Accepted-Oauth-Scopes:
      - object_storage:read_only
      X-Content-Type-Options:
      - nosniff
      X-Frame-Options:
      - DENY
      - DENY
      X-Oauth-Scopes:
      - '*'
      X-Ratelimit-Limit:
      - "400"
      X-Xss-Protection:
      - 1; mode=block
    status: 200 OK
    code: 200
    duration: ""
- request:
    body: '{"name":"test","method":"DELETE","expires_in":360}'
    form: {}
    headers:
      Accept:
      - application/json
      Content-Type:
      - application/json
      User-Agent:
      - linodego/dev https://github.com/linode/linodego
    url: https://api.linode.com/v4beta/object-storage/buckets/us-east-1/go-bucket-test-def/object-url
    method: POST
  response:
    body: '{"url": "https://us-east-1.linodeobjects.com:443/go-bucket-test-def/test?Signature=RbVnqyWJd6OMpr7Sn7kQOBezqfU%3D&Expires=1720635223&AWSAccessKeyID=SANITIZED",
      "exists": true}'
    headers:
      Access-Control-Allow-Credentials:
      - "true"
      Access-Control-Allow-Headers:
      - Authorization, Origin, X-Requested-With, Content-Type, Accept, X-Filter
      Access-Control-Allow-Methods:
      - HEAD, GET, OPTIONS, POST, PUT, DELETE
      Access-Control-Allow-Origin:
      - '*'
      Access-Control-Expose-Headers:
      - X-OAuth-Scopes, X-Accepted-OAuth-Scopes, X-Status
      Akamai-Internal-Account:
      - '*'
      Cache-Control:
      - max-age=0, no-cache, no-store
      Connection:
      - keep-alive
      Content-Length:
      - "186"
      Content-Security-Policy:
      - default-src 'none'
      Content-Type:
      - application/json
      Expires:
      - Wed, 10 Jul 2024 18:07:43 GMT
      Pragma:
      - no-cache
      Strict-Transport-Security:
      - max-age=31536000
      Vary:
      - Authorization, X-Filter
      X-Accepted-Oauth-Scopes:
      - object_storage:read_write
      X-Content-Type-Options:
      - nosniff
      X-Frame-Options:
      - DENY
      - DENY
      X-Oauth-Scopes:
      - '*'
      X-Ratelimit-Limit:
      - "400"
      X-Xss-Protection:
      - 1; mode=block
    status: 200 OK
    code: 200
    duration: ""
- request:
    body: ""
    form: {}
    headers:
      Accept:
      - application/json
      Content-Type:
      - application/json
      User-Agent:
      - linodego/dev https://github.com/linode/linodego
    url: https://api.linode.com/v4beta/object-storage/buckets/us-east-1/go-bucket-test-def
    method: DELETE
  response:
    body: '{}'
    headers:
      Access-Control-Allow-Credentials:
      - "true"
      Access-Control-Allow-Headers:
      - Authorization, Origin, X-Requested-With, Content-Type, Accept, X-Filter
      Access-Control-Allow-Methods:
      - HEAD, GET, OPTIONS, POST, PUT, DELETE
      Access-Control-Allow-Origin:
      - '*'
      Access-Control-Expose-Headers:
      - X-OAuth-Scopes, X-Accepted-OAuth-Scopes, X-Status
      Akamai-Internal-Account:
      - '*'
      Cache-Control:
      - max-age=0, no-cache, no-store
      Connection:
      - keep-alive
      Content-Length:
      - "2"
      Content-Security-Policy:
      - default-src 'none'
      Content-Type:
      - application/json
      Expires:
      - Wed, 10 Jul 2024 18:07:48 GMT
      Pragma:
      - no-cache
      Strict-Transport-Security:
      - max-age=31536000
      Vary:
      - Authorization, X-Filter
      X-Accepted-Oauth-Scopes:
      - object_storage:read_write
      X-Content-Type-Options:
      - nosniff
      X-Frame-Options:
      - DENY
      - DENY
      X-Oauth-Scopes:
      - '*'
      X-Ratelimit-Limit:
      - "400"
      X-Xss-Protection:
      - 1; mode=block
    status: 200 OK
    code: 200
    duration: ""
