diff --git a/nodebalancer_firewalls.go b/nodebalancer_firewalls.go
index d2b339c7d..2e0337848 100644
--- a/nodebalancer_firewalls.go
+++ b/nodebalancer_firewalls.go
@@ -2,40 +2,14 @@ package linodego
import (
"context"
- "fmt"
-
- "github.com/go-resty/resty/v2"
)
-// NodeBalancerFirewallsPagedResponse represents a Linode API response for listing of Cloud Firewalls
-type NodeBalancerFirewallsPagedResponse struct {
- *PageOptions
- Data []Firewall `json:"data"`
-}
-
-func (NodeBalancerFirewallsPagedResponse) endpoint(ids ...any) string {
- id := ids[0].(int)
- return fmt.Sprintf("nodebalancers/%d/firewalls", id)
-}
-
-func (resp *NodeBalancerFirewallsPagedResponse) castResult(r *resty.Request, e string) (int, int, error) {
- res, err := coupleAPIErrors(r.SetResult(NodeBalancerFirewallsPagedResponse{}).Get(e))
- if err != nil {
- return 0, 0, err
- }
- castedRes := res.Result().(*NodeBalancerFirewallsPagedResponse)
- resp.Data = append(resp.Data, castedRes.Data...)
- return castedRes.Pages, castedRes.Results, nil
-}
-
// ListNodeBalancerFirewalls returns a paginated list of Cloud Firewalls for nodebalancerID
func (c *Client) ListNodeBalancerFirewalls(ctx context.Context, nodebalancerID int, opts *ListOptions) ([]Firewall, error) {
- response := NodeBalancerFirewallsPagedResponse{}
-
- err := c.listHelper(ctx, &response, opts, nodebalancerID)
+ response, err := getPaginatedResults[Firewall](ctx, c, formatAPIPath("nodebalancers/%d/firewalls", nodebalancerID), opts)
if err != nil {
return nil, err
}
- return response.Data, nil
+ return response, nil
}
diff --git a/nodebalancer_stats.go b/nodebalancer_stats.go
index 39a055cb5..e1ae39b30 100644
--- a/nodebalancer_stats.go
+++ b/nodebalancer_stats.go
@@ -2,7 +2,6 @@ package linodego
import (
"context"
- "fmt"
)
// NodeBalancerStats represents a nodebalancer stats object
@@ -25,12 +24,11 @@ type StatsTraffic struct {
// GetNodeBalancerStats gets the template with the provided ID
func (c *Client) GetNodeBalancerStats(ctx context.Context, nodebalancerID int) (*NodeBalancerStats, error) {
- e := fmt.Sprintf("nodebalancers/%d/stats", nodebalancerID)
- req := c.R(ctx).SetResult(&NodeBalancerStats{})
- r, err := coupleAPIErrors(req.Get(e))
+ e := formatAPIPath("nodebalancers/%d/stats", nodebalancerID)
+ response, err := doGETRequest[NodeBalancerStats](ctx, c, e)
if err != nil {
return nil, err
}
- return r.Result().(*NodeBalancerStats), nil
+ return response, nil
}
diff --git a/object_storage.go b/object_storage.go
index 743bfa62d..7e9c51796 100644
--- a/object_storage.go
+++ b/object_storage.go
@@ -12,18 +12,17 @@ type ObjectStorageTransfer struct {
// CancelObjectStorage cancels and removes all object storage from the Account
func (c *Client) CancelObjectStorage(ctx context.Context) error {
e := "object-storage/cancel"
- _, err := coupleAPIErrors(c.R(ctx).Post(e))
+ _, err := doPOSTRequest[any, any](ctx, c, e)
return err
}
// GetObjectStorageTransfer returns the amount of outbound data transferred used by the Account
func (c *Client) GetObjectStorageTransfer(ctx context.Context) (*ObjectStorageTransfer, error) {
e := "object-storage/transfer"
- req := c.R(ctx).SetResult(&ObjectStorageTransfer{})
- r, err := coupleAPIErrors(req.Get(e))
+ response, err := doGETRequest[ObjectStorageTransfer](ctx, c, e)
if err != nil {
return nil, err
}
- return r.Result().(*ObjectStorageTransfer), nil
+ return response, nil
}
diff --git a/object_storage_bucket_certs.go b/object_storage_bucket_certs.go
index 36a1d44b5..e09d2337c 100644
--- a/object_storage_bucket_certs.go
+++ b/object_storage_bucket_certs.go
@@ -2,9 +2,6 @@ package linodego
import (
"context"
- "encoding/json"
- "fmt"
- "net/url"
)
type ObjectStorageBucketCert struct {
@@ -18,40 +15,29 @@ type ObjectStorageBucketCertUploadOptions struct {
// UploadObjectStorageBucketCert uploads a TLS/SSL Cert to be used with an Object Storage Bucket.
func (c *Client) UploadObjectStorageBucketCert(ctx context.Context, clusterOrRegionID, bucket string, opts ObjectStorageBucketCertUploadOptions) (*ObjectStorageBucketCert, error) {
- body, err := json.Marshal(opts)
+ e := formatAPIPath("object-storage/buckets/%s/%s/ssl", clusterOrRegionID, bucket)
+ response, err := doPOSTRequest[ObjectStorageBucketCert](ctx, c, e, opts)
if err != nil {
return nil, err
}
- clusterOrRegionID = url.PathEscape(clusterOrRegionID)
- bucket = url.PathEscape(bucket)
- e := fmt.Sprintf("object-storage/buckets/%s/%s/ssl", clusterOrRegionID, bucket)
- req := c.R(ctx).SetResult(&ObjectStorageBucketCert{}).SetBody(string(body))
- r, err := coupleAPIErrors(req.Post(e))
- if err != nil {
- return nil, err
- }
- return r.Result().(*ObjectStorageBucketCert), nil
+ return response, nil
}
// GetObjectStorageBucketCert gets an ObjectStorageBucketCert
func (c *Client) GetObjectStorageBucketCert(ctx context.Context, clusterOrRegionID, bucket string) (*ObjectStorageBucketCert, error) {
- clusterOrRegionID = url.PathEscape(clusterOrRegionID)
- bucket = url.PathEscape(bucket)
- e := fmt.Sprintf("object-storage/buckets/%s/%s/ssl", clusterOrRegionID, bucket)
- req := c.R(ctx).SetResult(&ObjectStorageBucketCert{})
- r, err := coupleAPIErrors(req.Get(e))
+ e := formatAPIPath("object-storage/buckets/%s/%s/ssl", clusterOrRegionID, bucket)
+ response, err := doGETRequest[ObjectStorageBucketCert](ctx, c, e)
if err != nil {
return nil, err
}
- return r.Result().(*ObjectStorageBucketCert), nil
+
+ return response, nil
}
// DeleteObjectStorageBucketCert deletes an ObjectStorageBucketCert
func (c *Client) DeleteObjectStorageBucketCert(ctx context.Context, clusterOrRegionID, bucket string) error {
- clusterOrRegionID = url.PathEscape(clusterOrRegionID)
- bucket = url.PathEscape(bucket)
- e := fmt.Sprintf("object-storage/buckets/%s/%s/ssl", clusterOrRegionID, bucket)
- _, err := coupleAPIErrors(c.R(ctx).Delete(e))
+ e := formatAPIPath("object-storage/buckets/%s/%s/ssl", clusterOrRegionID, bucket)
+ err := doDELETERequest(ctx, c, e)
return err
}
diff --git a/object_storage_buckets.go b/object_storage_buckets.go
index 7c78613f1..f5e5cd084 100644
--- a/object_storage_buckets.go
+++ b/object_storage_buckets.go
@@ -3,11 +3,8 @@ package linodego
import (
"context"
"encoding/json"
- "fmt"
- "net/url"
"time"
- "github.com/go-resty/resty/v2"
"github.com/linode/linodego/internal/parseabletime"
)
@@ -90,116 +87,70 @@ const (
ACLPublicReadWrite ObjectStorageACL = "public-read-write"
)
-// ObjectStorageBucketsPagedResponse represents a paginated ObjectStorageBucket API response
-type ObjectStorageBucketsPagedResponse struct {
- *PageOptions
- Data []ObjectStorageBucket `json:"data"`
-}
-
-// endpoint gets the endpoint URL for ObjectStorageBucket
-func (ObjectStorageBucketsPagedResponse) endpoint(args ...any) string {
- endpoint := "object-storage/buckets"
- if len(args) > 0 {
- endpoint = fmt.Sprintf(endpoint+"/%s", url.PathEscape(args[0].(string)))
- }
- return endpoint
-}
-
-func (resp *ObjectStorageBucketsPagedResponse) castResult(r *resty.Request, e string) (int, int, error) {
- res, err := coupleAPIErrors(r.SetResult(ObjectStorageBucketsPagedResponse{}).Get(e))
- if err != nil {
- return 0, 0, err
- }
- castedRes := res.Result().(*ObjectStorageBucketsPagedResponse)
- resp.Data = append(resp.Data, castedRes.Data...)
- return castedRes.Pages, castedRes.Results, nil
-}
-
// ListObjectStorageBuckets lists ObjectStorageBuckets
func (c *Client) ListObjectStorageBuckets(ctx context.Context, opts *ListOptions) ([]ObjectStorageBucket, error) {
- response := ObjectStorageBucketsPagedResponse{}
- err := c.listHelper(ctx, &response, opts)
+ response, err := getPaginatedResults[ObjectStorageBucket](ctx, c, "object-storage/buckets", opts)
if err != nil {
return nil, err
}
- return response.Data, nil
+
+ return response, nil
}
// ListObjectStorageBucketsInCluster lists all ObjectStorageBuckets of a cluster
func (c *Client) ListObjectStorageBucketsInCluster(ctx context.Context, opts *ListOptions, clusterOrRegionID string) ([]ObjectStorageBucket, error) {
- response := ObjectStorageBucketsPagedResponse{}
- err := c.listHelper(ctx, &response, opts, clusterOrRegionID)
+ response, err := getPaginatedResults[ObjectStorageBucket](ctx, c, formatAPIPath("object-storage/buckets/%s", clusterOrRegionID), opts)
if err != nil {
return nil, err
}
- return response.Data, nil
+
+ return response, nil
}
// GetObjectStorageBucket gets the ObjectStorageBucket with the provided label
func (c *Client) GetObjectStorageBucket(ctx context.Context, clusterOrRegionID, label string) (*ObjectStorageBucket, error) {
- label = url.PathEscape(label)
- clusterOrRegionID = url.PathEscape(clusterOrRegionID)
- e := fmt.Sprintf("object-storage/buckets/%s/%s", clusterOrRegionID, label)
- req := c.R(ctx).SetResult(&ObjectStorageBucket{})
- r, err := coupleAPIErrors(req.Get(e))
+ e := formatAPIPath("object-storage/buckets/%s/%s", clusterOrRegionID, label)
+ response, err := doGETRequest[ObjectStorageBucket](ctx, c, e)
if err != nil {
return nil, err
}
- return r.Result().(*ObjectStorageBucket), nil
+
+ return response, nil
}
// CreateObjectStorageBucket creates an ObjectStorageBucket
func (c *Client) CreateObjectStorageBucket(ctx context.Context, opts ObjectStorageBucketCreateOptions) (*ObjectStorageBucket, error) {
- body, err := json.Marshal(opts)
- if err != nil {
- return nil, err
- }
-
e := "object-storage/buckets"
- req := c.R(ctx).SetResult(&ObjectStorageBucket{}).SetBody(string(body))
- r, err := coupleAPIErrors(req.Post(e))
+ response, err := doPOSTRequest[ObjectStorageBucket](ctx, c, e, opts)
if err != nil {
return nil, err
}
- return r.Result().(*ObjectStorageBucket), nil
+
+ return response, nil
}
// GetObjectStorageBucketAccess gets the current access config for a bucket
func (c *Client) GetObjectStorageBucketAccess(ctx context.Context, clusterOrRegionID, label string) (*ObjectStorageBucketAccess, error) {
- label = url.PathEscape(label)
- clusterOrRegionID = url.PathEscape(clusterOrRegionID)
- e := fmt.Sprintf("object-storage/buckets/%s/%s/access", clusterOrRegionID, label)
- req := c.R(ctx).SetResult(&ObjectStorageBucketAccess{})
- r, err := coupleAPIErrors(req.Get(e))
+ e := formatAPIPath("object-storage/buckets/%s/%s/access", clusterOrRegionID, label)
+ response, err := doGETRequest[ObjectStorageBucketAccess](ctx, c, e)
if err != nil {
return nil, err
}
- return r.Result().(*ObjectStorageBucketAccess), nil
+ return response, nil
}
// UpdateObjectStorageBucketAccess updates the access configuration for an ObjectStorageBucket
func (c *Client) UpdateObjectStorageBucketAccess(ctx context.Context, clusterOrRegionID, label string, opts ObjectStorageBucketUpdateAccessOptions) error {
- body, err := json.Marshal(opts)
- if err != nil {
- return err
- }
+ e := formatAPIPath("object-storage/buckets/%s/%s/access", clusterOrRegionID, label)
+ _, err := doPOSTRequest[ObjectStorageBucketAccess](ctx, c, e, opts)
- label = url.PathEscape(label)
- clusterOrRegionID = url.PathEscape(clusterOrRegionID)
- e := fmt.Sprintf("object-storage/buckets/%s/%s/access", clusterOrRegionID, label)
- _, err = coupleAPIErrors(c.R(ctx).SetBody(string(body)).Post(e))
- if err != nil {
- return err
- }
-
- return nil
+ return err
}
// DeleteObjectStorageBucket deletes the ObjectStorageBucket with the specified label
func (c *Client) DeleteObjectStorageBucket(ctx context.Context, clusterOrRegionID, label string) error {
- label = url.PathEscape(label)
- e := fmt.Sprintf("object-storage/buckets/%s/%s", clusterOrRegionID, label)
- _, err := coupleAPIErrors(c.R(ctx).Delete(e))
+ e := formatAPIPath("object-storage/buckets/%s/%s", clusterOrRegionID, label)
+ err := doDELETERequest(ctx, c, e)
return err
}
diff --git a/object_storage_clusters.go b/object_storage_clusters.go
index cd9c446fa..f1d2c498d 100644
--- a/object_storage_clusters.go
+++ b/object_storage_clusters.go
@@ -2,10 +2,6 @@ package linodego
import (
"context"
- "fmt"
- "net/url"
-
- "github.com/go-resty/resty/v2"
)
// ObjectStorageCluster represents a linode object storage cluster object
@@ -17,47 +13,24 @@ type ObjectStorageCluster struct {
StaticSiteDomain string `json:"static_site_domain"`
}
-// ObjectStorageClustersPagedResponse represents a linode API response for listing
-type ObjectStorageClustersPagedResponse struct {
- *PageOptions
- Data []ObjectStorageCluster `json:"data"`
-}
-
-// endpoint gets the endpoint URL for ObjectStorageCluster
-func (ObjectStorageClustersPagedResponse) endpoint(_ ...any) string {
- return "object-storage/clusters"
-}
-
-func (resp *ObjectStorageClustersPagedResponse) castResult(r *resty.Request, e string) (int, int, error) {
- res, err := coupleAPIErrors(r.SetResult(ObjectStorageClustersPagedResponse{}).Get(e))
- if err != nil {
- return 0, 0, err
- }
- castedRes := res.Result().(*ObjectStorageClustersPagedResponse)
- resp.Data = append(resp.Data, castedRes.Data...)
- return castedRes.Pages, castedRes.Results, nil
-}
-
-// Deprecated: ListObjectStorageClusters uses a deprecated API endpoint.
// ListObjectStorageClusters lists ObjectStorageClusters
func (c *Client) ListObjectStorageClusters(ctx context.Context, opts *ListOptions) ([]ObjectStorageCluster, error) {
- response := ObjectStorageClustersPagedResponse{}
- err := c.listHelper(ctx, &response, opts)
+ response, err := getPaginatedResults[ObjectStorageCluster](ctx, c, "object-storage/clusters", opts)
if err != nil {
return nil, err
}
- return response.Data, nil
+
+ return response, nil
}
// Deprecated: GetObjectStorageCluster uses a deprecated API endpoint.
// GetObjectStorageCluster gets the template with the provided ID
func (c *Client) GetObjectStorageCluster(ctx context.Context, clusterID string) (*ObjectStorageCluster, error) {
- clusterID = url.PathEscape(clusterID)
- e := fmt.Sprintf("object-storage/clusters/%s", clusterID)
- req := c.R(ctx).SetResult(&ObjectStorageCluster{})
- r, err := coupleAPIErrors(req.Get(e))
+ e := formatAPIPath("object-storage/clusters/%s", clusterID)
+ response, err := doGETRequest[ObjectStorageCluster](ctx, c, e)
if err != nil {
return nil, err
}
- return r.Result().(*ObjectStorageCluster), nil
+
+ return response, nil
}
diff --git a/paged_response_structs.go b/paged_response_structs.go
index 73b3c6b86..9fcafde54 100644
--- a/paged_response_structs.go
+++ b/paged_response_structs.go
@@ -109,12 +109,21 @@ type NodeBalancerConfigsPagedResponse legacyPagedResponse[NodeBalancerConfig]
// Deprecated: NodeBalancerNodesPagedResponse exists for historical compatibility and should not be used.
type NodeBalancerNodesPagedResponse legacyPagedResponse[NodeBalancerNode]
+// Deprecated: NodeBalancerFirewallsPagedResponse exists for historical compatibility and should not be used.
+type NodeBalancerFirewallsPagedResponse legacyPagedResponse[Firewall]
+
// Deprecated: NotificationsPagedResponse exists for historical compatibility and should not be used.
type NotificationsPagedResponse legacyPagedResponse[Notification]
// Deprecated: OAuthClientsPagedResponse exists for historical compatibility and should not be used.
type OAuthClientsPagedResponse legacyPagedResponse[OAuthClient]
+// Deprecated: ObjectStorageBucketsPagedResponse exists for historical compatibility and should not be used.
+type ObjectStorageBucketsPagedResponse legacyPagedResponse[ObjectStorageBucket]
+
+// Deprecated: ObjectStorageClustersPagedResponse exists for historical compatibility and should not be used.
+type ObjectStorageClustersPagedResponse legacyPagedResponse[ObjectStorageCluster]
+
// Deprecated: PaymentsPagedResponse exists for historical compatibility and should not be used.
type PaymentsPagedResponse legacyPagedResponse[Payment]
diff --git a/test/integration/fixtures/TestNodeBalancerFirewalls_List.yaml b/test/integration/fixtures/TestNodeBalancerFirewalls_List.yaml
index edcd5baff..da205b1e0 100644
--- a/test/integration/fixtures/TestNodeBalancerFirewalls_List.yaml
+++ b/test/integration/fixtures/TestNodeBalancerFirewalls_List.yaml
@@ -57,10 +57,10 @@ interactions:
5}, "site_type": "core"}, {"id": "us-ord", "label": "Chicago, IL", "country":
"us", "capabilities": ["Linodes", "Backups", "NodeBalancers", "Block Storage",
"Object Storage", "GPU Linodes", "Kubernetes", "Cloud Firewall", "Vlans", "VPCs",
- "Managed Databases", "Metadata", "Premium Plans"], "status": "ok", "resolvers":
- {"ipv4": "172.232.0.17, 172.232.0.16, 172.232.0.21, 172.232.0.13, 172.232.0.22,
- 172.232.0.9, 172.232.0.19, 172.232.0.20, 172.232.0.15, 172.232.0.18", "ipv6":
- "1234::5678, 1234::5678, 1234::5678,
+ "Managed Databases", "Metadata", "Premium Plans", "Placement Group"], "status":
+ "ok", "resolvers": {"ipv4": "172.232.0.17, 172.232.0.16, 172.232.0.21, 172.232.0.13,
+ 172.232.0.22, 172.232.0.9, 172.232.0.19, 172.232.0.20, 172.232.0.15, 172.232.0.18",
+ "ipv6": "1234::5678, 1234::5678, 1234::5678,
1234::5678, 1234::5678, 1234::5678,
1234::5678, 1234::5678, 1234::5678,
1234::5678"}, "placement_group_limits": {"maximum_pgs_per_customer":
@@ -156,8 +156,8 @@ interactions:
100, "maximum_linodes_per_pg": 5}, "site_type": "core"}, {"id": "us-mia", "label":
"Miami, FL", "country": "us", "capabilities": ["Linodes", "Backups", "NodeBalancers",
"Block Storage", "Object Storage", "Kubernetes", "Cloud Firewall", "Vlans",
- "VPCs", "Metadata", "Premium Plans"], "status": "ok", "resolvers": {"ipv4":
- "172.233.160.34, 172.233.160.27, 172.233.160.30, 172.233.160.29, 172.233.160.32,
+ "VPCs", "Metadata", "Premium Plans", "Placement Group"], "status": "ok", "resolvers":
+ {"ipv4": "172.233.160.34, 172.233.160.27, 172.233.160.30, 172.233.160.29, 172.233.160.32,
172.233.160.28, 172.233.160.33, 172.233.160.26, 172.233.160.25, 172.233.160.31",
"ipv6": "1234::5678, 1234::5678, 1234::5678,
1234::5678, 1234::5678, 1234::5678,
@@ -183,6 +183,25 @@ interactions:
1234::5678, 1234::5678, 1234::5678,
1234::5678, 1234::5678, 1234::5678,
1234::5678"}, "placement_group_limits": {"maximum_pgs_per_customer":
+ 100, "maximum_linodes_per_pg": 5}, "site_type": "core"}, {"id": "gb-lon", "label":
+ "London 2, UK", "country": "gb", "capabilities": ["Linodes", "Backups", "NodeBalancers",
+ "Block Storage", "Kubernetes", "Cloud Firewall", "Vlans", "VPCs", "Metadata",
+ "Premium Plans"], "status": "ok", "resolvers": {"ipv4": "172.236.0.46, 172.236.0.50,
+ 172.236.0.47, 172.236.0.53, 172.236.0.52, 172.236.0.45, 172.236.0.49, 172.236.0.51,
+ 172.236.0.54, 172.236.0.48", "ipv6": "1234::5678, 1234::5678,
+ 1234::5678, 1234::5678, 1234::5678,
+ 1234::5678, 1234::5678, 1234::5678,
+ 1234::5678, 1234::5678"}, "placement_group_limits":
+ {"maximum_pgs_per_customer": 100, "maximum_linodes_per_pg": 5}, "site_type":
+ "core"}, {"id": "au-mel", "label": "Melbourne, AU", "country": "au", "capabilities":
+ ["Linodes", "Backups", "NodeBalancers", "Block Storage", "Kubernetes", "Cloud
+ Firewall", "Vlans", "VPCs", "Metadata", "Premium Plans"], "status": "ok", "resolvers":
+ {"ipv4": "172.236.32.23, 172.236.32.35, 172.236.32.30, 172.236.32.28, 172.236.32.32,
+ 172.236.32.33, 172.236.32.27, 172.236.32.37, 172.236.32.29, 172.236.32.34",
+ "ipv6": "1234::5678, 1234::5678, 1234::5678,
+ 1234::5678, 1234::5678, 1234::5678,
+ 1234::5678, 1234::5678, 1234::5678,
+ 1234::5678"}, "placement_group_limits": {"maximum_pgs_per_customer":
100, "maximum_linodes_per_pg": 5}, "site_type": "core"}, {"id": "us-central",
"label": "Dallas, TX", "country": "us", "capabilities": ["Linodes", "Backups",
"NodeBalancers", "Block Storage", "Kubernetes", "Cloud Firewall", "Vlans", "Block
@@ -251,7 +270,7 @@ interactions:
"1234::5678, 1234::5678, 1234::5678, 1234::5678, 1234::5678, 1234::5678,
1234::5678, 1234::5678, 1234::5678, 1234::5678"}, "placement_group_limits":
{"maximum_pgs_per_customer": 100, "maximum_linodes_per_pg": 5}, "site_type":
- "core"}], "page": 1, "pages": 1, "results": 25}'
+ "core"}], "page": 1, "pages": 1, "results": 27}'
headers:
Access-Control-Allow-Credentials:
- "true"
@@ -272,7 +291,7 @@ interactions:
Content-Type:
- application/json
Expires:
- - Fri, 31 May 2024 17:28:41 GMT
+ - Mon, 08 Jul 2024 15:11:47 GMT
Pragma:
- no-cache
Strict-Transport-Security:
@@ -289,10 +308,7 @@ interactions:
- DENY
- DENY
X-Oauth-Scopes:
- - account:read_write databases:read_write domains:read_write events:read_write
- firewall:read_write images:read_write ips:read_write linodes:read_write lke:read_write
- longview:read_write nodebalancers:read_write object_storage:read_write stackscripts:read_write
- volumes:read_write vpc:read_write
+ - '*'
X-Ratelimit-Limit:
- "400"
X-Xss-Protection:
@@ -301,7 +317,7 @@ interactions:
code: 200
duration: ""
- request:
- body: '{"label":"go-test-def","region":"ap-west","client_conn_throttle":20,"tags":null,"firewall_id":501400}'
+ body: '{"label":"go-test-def","region":"ap-west","client_conn_throttle":20,"tags":null,"firewall_id":640501}'
form: {}
headers:
Accept:
@@ -313,10 +329,11 @@ interactions:
url: https://api.linode.com/v4beta/nodebalancers
method: POST
response:
- body: '{"id": 694197, "label": "go-test-def", "region": "ap-west", "hostname":
- "172-232-86-45.ip.linodeusercontent.com", "ipv4": "172.232.86.45", "ipv6": "1234::5678",
- "created": "2018-01-02T03:04:05", "updated": "2018-01-02T03:04:05", "client_conn_throttle":
- 20, "tags": [], "transfer": {"in": null, "out": null, "total": null}}'
+ body: '{"id": 768105, "label": "go-test-def", "region": "ap-west", "hostname":
+ "172-105-44-152.ip.linodeusercontent.com", "ipv4": "172.105.44.152", "ipv6":
+ "1234::5678", "created": "2018-01-02T03:04:05", "updated": "2018-01-02T03:04:05",
+ "client_conn_throttle": 20, "tags": [], "transfer": {"in": null, "out": null,
+ "total": null}}'
headers:
Access-Control-Allow-Credentials:
- "true"
@@ -333,13 +350,13 @@ interactions:
Connection:
- keep-alive
Content-Length:
- - "334"
+ - "336"
Content-Security-Policy:
- default-src 'none'
Content-Type:
- application/json
Expires:
- - Fri, 31 May 2024 17:28:42 GMT
+ - Mon, 08 Jul 2024 15:11:47 GMT
Pragma:
- no-cache
Strict-Transport-Security:
@@ -354,10 +371,7 @@ interactions:
- DENY
- DENY
X-Oauth-Scopes:
- - account:read_write databases:read_write domains:read_write events:read_write
- firewall:read_write images:read_write ips:read_write linodes:read_write lke:read_write
- longview:read_write nodebalancers:read_write object_storage:read_write stackscripts:read_write
- volumes:read_write vpc:read_write
+ - '*'
X-Ratelimit-Limit:
- "400"
X-Xss-Protection:
@@ -375,16 +389,16 @@ interactions:
- application/json
User-Agent:
- linodego/dev https://github.com/linode/linodego
- url: https://api.linode.com/v4beta/nodebalancers/694197/firewalls
+ url: https://api.linode.com/v4beta/nodebalancers/768105/firewalls?page=1
method: GET
response:
- body: '{"data": [{"id": 501400, "label": "cloudfw-1717176495111377000", "created":
+ body: '{"data": [{"id": 640501, "label": "cloudfw-1720451506635377000", "created":
"2018-01-02T03:04:05", "updated": "2018-01-02T03:04:05", "status": "enabled",
"rules": {"inbound": [{"action": "ACCEPT", "label": "ssh-inbound-accept-local",
- "ports": "22", "protocol": "TCP", "addresses": {"ipv4": ["66.183.56.141/32"]}}],
+ "ports": "22", "protocol": "TCP", "addresses": {"ipv4": ["24.193.170.156/32"]}}],
"inbound_policy": "DROP", "outbound": [], "outbound_policy": "ACCEPT", "version":
- 1, "fingerprint": "34cf15cc"}, "tags": [], "entities": [{"id": 694197, "type":
- "nodebalancer", "label": "go-test-def", "url": "/v4/nodebalancers/694197"}]}],
+ 1, "fingerprint": "1c7e6183"}, "tags": [], "entities": [{"id": 768105, "type":
+ "nodebalancer", "label": "go-test-def", "url": "/v4/nodebalancers/768105"}]}],
"page": 1, "pages": 1, "results": 1}'
headers:
Access-Control-Allow-Credentials:
@@ -402,13 +416,13 @@ interactions:
Connection:
- keep-alive
Content-Length:
- - "591"
+ - "592"
Content-Security-Policy:
- default-src 'none'
Content-Type:
- application/json
Expires:
- - Fri, 31 May 2024 17:28:42 GMT
+ - Mon, 08 Jul 2024 15:11:47 GMT
Pragma:
- no-cache
Strict-Transport-Security:
@@ -424,10 +438,7 @@ interactions:
- DENY
- DENY
X-Oauth-Scopes:
- - account:read_write databases:read_write domains:read_write events:read_write
- firewall:read_write images:read_write ips:read_write linodes:read_write lke:read_write
- longview:read_write nodebalancers:read_write object_storage:read_write stackscripts:read_write
- volumes:read_write vpc:read_write
+ - '*'
X-Ratelimit-Limit:
- "400"
X-Xss-Protection:
@@ -445,7 +456,7 @@ interactions:
- application/json
User-Agent:
- linodego/dev https://github.com/linode/linodego
- url: https://api.linode.com/v4beta/nodebalancers/694197
+ url: https://api.linode.com/v4beta/nodebalancers/768105
method: DELETE
response:
body: '{}'
@@ -471,7 +482,7 @@ interactions:
Content-Type:
- application/json
Expires:
- - Fri, 31 May 2024 17:28:42 GMT
+ - Mon, 08 Jul 2024 15:11:47 GMT
Pragma:
- no-cache
Strict-Transport-Security:
@@ -486,10 +497,7 @@ interactions:
- DENY
- DENY
X-Oauth-Scopes:
- - account:read_write databases:read_write domains:read_write events:read_write
- firewall:read_write images:read_write ips:read_write linodes:read_write lke:read_write
- longview:read_write nodebalancers:read_write object_storage:read_write stackscripts:read_write
- volumes:read_write vpc:read_write
+ - '*'
X-Ratelimit-Limit:
- "400"
X-Xss-Protection:
diff --git a/test/integration/fixtures/TestNodeBalancerStats_Get.yaml b/test/integration/fixtures/TestNodeBalancerStats_Get.yaml
index 75e3d68a4..31cf46de6 100644
--- a/test/integration/fixtures/TestNodeBalancerStats_Get.yaml
+++ b/test/integration/fixtures/TestNodeBalancerStats_Get.yaml
@@ -57,10 +57,10 @@ interactions:
5}, "site_type": "core"}, {"id": "us-ord", "label": "Chicago, IL", "country":
"us", "capabilities": ["Linodes", "Backups", "NodeBalancers", "Block Storage",
"Object Storage", "GPU Linodes", "Kubernetes", "Cloud Firewall", "Vlans", "VPCs",
- "Managed Databases", "Metadata", "Premium Plans"], "status": "ok", "resolvers":
- {"ipv4": "172.232.0.17, 172.232.0.16, 172.232.0.21, 172.232.0.13, 172.232.0.22,
- 172.232.0.9, 172.232.0.19, 172.232.0.20, 172.232.0.15, 172.232.0.18", "ipv6":
- "1234::5678, 1234::5678, 1234::5678,
+ "Managed Databases", "Metadata", "Premium Plans", "Placement Group"], "status":
+ "ok", "resolvers": {"ipv4": "172.232.0.17, 172.232.0.16, 172.232.0.21, 172.232.0.13,
+ 172.232.0.22, 172.232.0.9, 172.232.0.19, 172.232.0.20, 172.232.0.15, 172.232.0.18",
+ "ipv6": "1234::5678, 1234::5678, 1234::5678,
1234::5678, 1234::5678, 1234::5678,
1234::5678, 1234::5678, 1234::5678,
1234::5678"}, "placement_group_limits": {"maximum_pgs_per_customer":
@@ -156,8 +156,8 @@ interactions:
100, "maximum_linodes_per_pg": 5}, "site_type": "core"}, {"id": "us-mia", "label":
"Miami, FL", "country": "us", "capabilities": ["Linodes", "Backups", "NodeBalancers",
"Block Storage", "Object Storage", "Kubernetes", "Cloud Firewall", "Vlans",
- "VPCs", "Metadata", "Premium Plans"], "status": "ok", "resolvers": {"ipv4":
- "172.233.160.34, 172.233.160.27, 172.233.160.30, 172.233.160.29, 172.233.160.32,
+ "VPCs", "Metadata", "Premium Plans", "Placement Group"], "status": "ok", "resolvers":
+ {"ipv4": "172.233.160.34, 172.233.160.27, 172.233.160.30, 172.233.160.29, 172.233.160.32,
172.233.160.28, 172.233.160.33, 172.233.160.26, 172.233.160.25, 172.233.160.31",
"ipv6": "1234::5678, 1234::5678, 1234::5678,
1234::5678, 1234::5678, 1234::5678,
@@ -183,6 +183,25 @@ interactions:
1234::5678, 1234::5678, 1234::5678,
1234::5678, 1234::5678, 1234::5678,
1234::5678"}, "placement_group_limits": {"maximum_pgs_per_customer":
+ 100, "maximum_linodes_per_pg": 5}, "site_type": "core"}, {"id": "gb-lon", "label":
+ "London 2, UK", "country": "gb", "capabilities": ["Linodes", "Backups", "NodeBalancers",
+ "Block Storage", "Kubernetes", "Cloud Firewall", "Vlans", "VPCs", "Metadata",
+ "Premium Plans"], "status": "ok", "resolvers": {"ipv4": "172.236.0.46, 172.236.0.50,
+ 172.236.0.47, 172.236.0.53, 172.236.0.52, 172.236.0.45, 172.236.0.49, 172.236.0.51,
+ 172.236.0.54, 172.236.0.48", "ipv6": "1234::5678, 1234::5678,
+ 1234::5678, 1234::5678, 1234::5678,
+ 1234::5678, 1234::5678, 1234::5678,
+ 1234::5678, 1234::5678"}, "placement_group_limits":
+ {"maximum_pgs_per_customer": 100, "maximum_linodes_per_pg": 5}, "site_type":
+ "core"}, {"id": "au-mel", "label": "Melbourne, AU", "country": "au", "capabilities":
+ ["Linodes", "Backups", "NodeBalancers", "Block Storage", "Kubernetes", "Cloud
+ Firewall", "Vlans", "VPCs", "Metadata", "Premium Plans"], "status": "ok", "resolvers":
+ {"ipv4": "172.236.32.23, 172.236.32.35, 172.236.32.30, 172.236.32.28, 172.236.32.32,
+ 172.236.32.33, 172.236.32.27, 172.236.32.37, 172.236.32.29, 172.236.32.34",
+ "ipv6": "1234::5678, 1234::5678, 1234::5678,
+ 1234::5678, 1234::5678, 1234::5678,
+ 1234::5678, 1234::5678, 1234::5678,
+ 1234::5678"}, "placement_group_limits": {"maximum_pgs_per_customer":
100, "maximum_linodes_per_pg": 5}, "site_type": "core"}, {"id": "us-central",
"label": "Dallas, TX", "country": "us", "capabilities": ["Linodes", "Backups",
"NodeBalancers", "Block Storage", "Kubernetes", "Cloud Firewall", "Vlans", "Block
@@ -251,7 +270,7 @@ interactions:
"1234::5678, 1234::5678, 1234::5678, 1234::5678, 1234::5678, 1234::5678,
1234::5678, 1234::5678, 1234::5678, 1234::5678"}, "placement_group_limits":
{"maximum_pgs_per_customer": 100, "maximum_linodes_per_pg": 5}, "site_type":
- "core"}], "page": 1, "pages": 1, "results": 25}'
+ "core"}], "page": 1, "pages": 1, "results": 27}'
headers:
Access-Control-Allow-Credentials:
- "true"
@@ -272,7 +291,7 @@ interactions:
Content-Type:
- application/json
Expires:
- - Fri, 31 May 2024 17:28:42 GMT
+ - Mon, 08 Jul 2024 15:10:56 GMT
Pragma:
- no-cache
Strict-Transport-Security:
@@ -289,10 +308,7 @@ interactions:
- DENY
- DENY
X-Oauth-Scopes:
- - account:read_write databases:read_write domains:read_write events:read_write
- firewall:read_write images:read_write ips:read_write linodes:read_write lke:read_write
- longview:read_write nodebalancers:read_write object_storage:read_write stackscripts:read_write
- volumes:read_write vpc:read_write
+ - '*'
X-Ratelimit-Limit:
- "400"
X-Xss-Protection:
@@ -301,7 +317,7 @@ interactions:
code: 200
duration: ""
- request:
- body: '{"label":"go-test-def","region":"ap-west","client_conn_throttle":20,"tags":null,"firewall_id":501400}'
+ body: '{"label":"go-test-def","region":"ap-west","client_conn_throttle":20,"tags":null,"firewall_id":640498}'
form: {}
headers:
Accept:
@@ -313,8 +329,8 @@ interactions:
url: https://api.linode.com/v4beta/nodebalancers
method: POST
response:
- body: '{"id": 694198, "label": "go-test-def", "region": "ap-west", "hostname":
- "172-105-45-147.ip.linodeusercontent.com", "ipv4": "172.105.45.147", "ipv6":
+ body: '{"id": 768104, "label": "go-test-def", "region": "ap-west", "hostname":
+ "172-232-86-106.ip.linodeusercontent.com", "ipv4": "172.232.86.106", "ipv6":
"1234::5678", "created": "2018-01-02T03:04:05", "updated": "2018-01-02T03:04:05",
"client_conn_throttle": 20, "tags": [], "transfer": {"in": null, "out": null,
"total": null}}'
@@ -340,7 +356,7 @@ interactions:
Content-Type:
- application/json
Expires:
- - Fri, 31 May 2024 17:28:42 GMT
+ - Mon, 08 Jul 2024 15:10:56 GMT
Pragma:
- no-cache
Strict-Transport-Security:
@@ -355,10 +371,7 @@ interactions:
- DENY
- DENY
X-Oauth-Scopes:
- - account:read_write databases:read_write domains:read_write events:read_write
- firewall:read_write images:read_write ips:read_write linodes:read_write lke:read_write
- longview:read_write nodebalancers:read_write object_storage:read_write stackscripts:read_write
- volumes:read_write vpc:read_write
+ - '*'
X-Ratelimit-Limit:
- "400"
X-Xss-Protection:
@@ -376,7 +389,7 @@ interactions:
- application/json
User-Agent:
- linodego/dev https://github.com/linode/linodego
- url: https://api.linode.com/v4beta/nodebalancers/694198/stats
+ url: https://api.linode.com/v4beta/nodebalancers/768104/stats
method: GET
response:
body: '{"errors": [{"reason": "Stats are unavailable at this time."}]}'
@@ -396,7 +409,7 @@ interactions:
Content-Type:
- application/json
Expires:
- - Fri, 31 May 2024 17:28:53 GMT
+ - Mon, 08 Jul 2024 15:11:07 GMT
Pragma:
- no-cache
Vary:
@@ -406,10 +419,7 @@ interactions:
X-Frame-Options:
- DENY
X-Oauth-Scopes:
- - account:read_write databases:read_write domains:read_write events:read_write
- firewall:read_write images:read_write ips:read_write linodes:read_write lke:read_write
- longview:read_write nodebalancers:read_write object_storage:read_write stackscripts:read_write
- volumes:read_write vpc:read_write
+ - '*'
X-Ratelimit-Limit:
- "50"
status: 400 Bad Request
@@ -425,7 +435,7 @@ interactions:
- application/json
User-Agent:
- linodego/dev https://github.com/linode/linodego
- url: https://api.linode.com/v4beta/nodebalancers/694198
+ url: https://api.linode.com/v4beta/nodebalancers/768104
method: DELETE
response:
body: '{}'
@@ -451,7 +461,7 @@ interactions:
Content-Type:
- application/json
Expires:
- - Fri, 31 May 2024 17:28:53 GMT
+ - Mon, 08 Jul 2024 15:11:07 GMT
Pragma:
- no-cache
Strict-Transport-Security:
@@ -466,10 +476,7 @@ interactions:
- DENY
- DENY
X-Oauth-Scopes:
- - account:read_write databases:read_write domains:read_write events:read_write
- firewall:read_write images:read_write ips:read_write linodes:read_write lke:read_write
- longview:read_write nodebalancers:read_write object_storage:read_write stackscripts:read_write
- volumes:read_write vpc:read_write
+ - '*'
X-Ratelimit-Limit:
- "400"
X-Xss-Protection:
diff --git a/test/integration/fixtures/TestObjectStorageBucketCert.yaml b/test/integration/fixtures/TestObjectStorageBucketCert.yaml
index d34a38aa0..21ad4a17c 100644
--- a/test/integration/fixtures/TestObjectStorageBucketCert.yaml
+++ b/test/integration/fixtures/TestObjectStorageBucketCert.yaml
@@ -16,7 +16,7 @@ interactions:
response:
body: '{"hostname": "linode-obj-bucket-cert-test.xyz.us-east-1.linodeobjects.com",
"label": "linode-obj-bucket-cert-test.xyz", "created": "2018-01-02T03:04:05",
- "cluster": "us-east-1", "size": 0, "objects": 0}'
+ "region": "us-east", "cluster": "us-east-1", "size": 0, "objects": 0}'
headers:
Access-Control-Allow-Credentials:
- "true"
@@ -29,15 +29,19 @@ interactions:
Access-Control-Expose-Headers:
- X-OAuth-Scopes, X-Accepted-OAuth-Scopes, X-Status
Cache-Control:
- - private, max-age=60, s-maxage=60
+ - max-age=0, no-cache, no-store
+ Connection:
+ - keep-alive
Content-Length:
- - "202"
+ - "223"
Content-Security-Policy:
- default-src 'none'
Content-Type:
- application/json
- Server:
- - nginx
+ Expires:
+ - Mon, 08 Jul 2024 15:13:23 GMT
+ Pragma:
+ - no-cache
Strict-Transport-Security:
- max-age=31536000
Vary:
@@ -52,7 +56,7 @@ interactions:
X-Oauth-Scopes:
- '*'
X-Ratelimit-Limit:
- - "800"
+ - "400"
X-Xss-Protection:
- 1; mode=block
status: 200 OK
@@ -86,15 +90,19 @@ interactions:
Access-Control-Expose-Headers:
- X-OAuth-Scopes, X-Accepted-OAuth-Scopes, X-Status
Cache-Control:
- - private, max-age=60, s-maxage=60
+ - max-age=0, no-cache, no-store
+ Connection:
+ - keep-alive
Content-Length:
- "13"
Content-Security-Policy:
- default-src 'none'
Content-Type:
- application/json
- Server:
- - nginx
+ Expires:
+ - Mon, 08 Jul 2024 15:13:24 GMT
+ Pragma:
+ - no-cache
Strict-Transport-Security:
- max-age=31536000
Vary:
@@ -109,7 +117,7 @@ interactions:
X-Oauth-Scopes:
- '*'
X-Ratelimit-Limit:
- - "800"
+ - "400"
X-Xss-Protection:
- 1; mode=block
status: 200 OK
@@ -141,16 +149,19 @@ interactions:
Access-Control-Expose-Headers:
- X-OAuth-Scopes, X-Accepted-OAuth-Scopes, X-Status
Cache-Control:
- - private, max-age=0, s-maxage=0, no-cache, no-store
- - private, max-age=60, s-maxage=60
+ - max-age=0, no-cache, no-store
+ Connection:
+ - keep-alive
Content-Length:
- "13"
Content-Security-Policy:
- default-src 'none'
Content-Type:
- application/json
- Server:
- - nginx
+ Expires:
+ - Mon, 08 Jul 2024 15:13:25 GMT
+ Pragma:
+ - no-cache
Strict-Transport-Security:
- max-age=31536000
Vary:
@@ -166,7 +177,7 @@ interactions:
X-Oauth-Scopes:
- '*'
X-Ratelimit-Limit:
- - "800"
+ - "400"
X-Xss-Protection:
- 1; mode=block
status: 200 OK
@@ -198,15 +209,19 @@ interactions:
Access-Control-Expose-Headers:
- X-OAuth-Scopes, X-Accepted-OAuth-Scopes, X-Status
Cache-Control:
- - private, max-age=60, s-maxage=60
+ - max-age=0, no-cache, no-store
+ Connection:
+ - keep-alive
Content-Length:
- "2"
Content-Security-Policy:
- default-src 'none'
Content-Type:
- application/json
- Server:
- - nginx
+ Expires:
+ - Mon, 08 Jul 2024 15:13:26 GMT
+ Pragma:
+ - no-cache
Strict-Transport-Security:
- max-age=31536000
Vary:
@@ -221,7 +236,7 @@ interactions:
X-Oauth-Scopes:
- '*'
X-Ratelimit-Limit:
- - "800"
+ - "400"
X-Xss-Protection:
- 1; mode=block
status: 200 OK
@@ -253,15 +268,19 @@ interactions:
Access-Control-Expose-Headers:
- X-OAuth-Scopes, X-Accepted-OAuth-Scopes, X-Status
Cache-Control:
- - private, max-age=60, s-maxage=60
+ - max-age=0, no-cache, no-store
+ Connection:
+ - keep-alive
Content-Length:
- "2"
Content-Security-Policy:
- default-src 'none'
Content-Type:
- application/json
- Server:
- - nginx
+ Expires:
+ - Mon, 08 Jul 2024 15:13:28 GMT
+ Pragma:
+ - no-cache
Strict-Transport-Security:
- max-age=31536000
Vary:
@@ -276,7 +295,7 @@ interactions:
X-Oauth-Scopes:
- '*'
X-Ratelimit-Limit:
- - "800"
+ - "400"
X-Xss-Protection:
- 1; mode=block
status: 200 OK
diff --git a/test/integration/fixtures/TestObjectStorageBucket_Access_Get.yaml b/test/integration/fixtures/TestObjectStorageBucket_Access_Get.yaml
index 0ea9abc45..8c72c1fb2 100644
--- a/test/integration/fixtures/TestObjectStorageBucket_Access_Get.yaml
+++ b/test/integration/fixtures/TestObjectStorageBucket_Access_Get.yaml
@@ -15,8 +15,8 @@ interactions:
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", "cluster": "us-east-1",
- "size": 0, "objects": 0}'
+ "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"
@@ -29,15 +29,19 @@ interactions:
Access-Control-Expose-Headers:
- X-OAuth-Scopes, X-Accepted-OAuth-Scopes, X-Status
Cache-Control:
- - private, max-age=60, s-maxage=60
+ - max-age=0, no-cache, no-store
+ Connection:
+ - keep-alive
Content-Length:
- - "176"
+ - "197"
Content-Security-Policy:
- default-src 'none'
Content-Type:
- application/json
- Server:
- - nginx
+ Expires:
+ - Mon, 08 Jul 2024 15:14:08 GMT
+ Pragma:
+ - no-cache
Strict-Transport-Security:
- max-age=31536000
Vary:
@@ -52,7 +56,7 @@ interactions:
X-Oauth-Scopes:
- '*'
X-Ratelimit-Limit:
- - "800"
+ - "400"
X-Xss-Protection:
- 1; mode=block
status: 200 OK
@@ -71,9 +75,9 @@ interactions:
url: https://api.linode.com/v4beta/object-storage/buckets/us-east-1/go-bucket-test-def/access
method: GET
response:
- body: '{"acl": "authenticated-read", "acl_xml": "fa25bc43-2cb0-43c7-b8bd-994243d8a697fa25bc43-2cb0-43c7-b8bd-994243d8a697640757b5-ebe9-45b1-abd5-581f215ef89e640757b5-ebe9-45b1-abd5-581f215ef89ehttp://acs.amazonaws.com/groups/global/AuthenticatedUsersREADfa25bc43-2cb0-43c7-b8bd-994243d8a697fa25bc43-2cb0-43c7-b8bd-994243d8a697FULL_CONTROL",
+ xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\" xsi:type=\"CanonicalUser\">640757b5-ebe9-45b1-abd5-581f215ef89e640757b5-ebe9-45b1-abd5-581f215ef89eFULL_CONTROL",
"cors_enabled": false, "cors_xml": null}'
headers:
Access-Control-Allow-Credentials:
@@ -87,16 +91,19 @@ interactions:
Access-Control-Expose-Headers:
- X-OAuth-Scopes, X-Accepted-OAuth-Scopes, X-Status
Cache-Control:
- - private, max-age=0, s-maxage=0, no-cache, no-store
- - private, max-age=60, s-maxage=60
+ - max-age=0, no-cache, no-store
+ Connection:
+ - keep-alive
Content-Length:
- "808"
Content-Security-Policy:
- default-src 'none'
Content-Type:
- application/json
- Server:
- - nginx
+ Expires:
+ - Mon, 08 Jul 2024 15:14:09 GMT
+ Pragma:
+ - no-cache
Strict-Transport-Security:
- max-age=31536000
Vary:
@@ -112,7 +119,7 @@ interactions:
X-Oauth-Scopes:
- '*'
X-Ratelimit-Limit:
- - "800"
+ - "400"
X-Xss-Protection:
- 1; mode=block
status: 200 OK
@@ -144,15 +151,19 @@ interactions:
Access-Control-Expose-Headers:
- X-OAuth-Scopes, X-Accepted-OAuth-Scopes, X-Status
Cache-Control:
- - private, max-age=60, s-maxage=60
+ - max-age=0, no-cache, no-store
+ Connection:
+ - keep-alive
Content-Length:
- "2"
Content-Security-Policy:
- default-src 'none'
Content-Type:
- application/json
- Server:
- - nginx
+ Expires:
+ - Mon, 08 Jul 2024 15:14:13 GMT
+ Pragma:
+ - no-cache
Strict-Transport-Security:
- max-age=31536000
Vary:
@@ -167,7 +178,7 @@ interactions:
X-Oauth-Scopes:
- '*'
X-Ratelimit-Limit:
- - "800"
+ - "400"
X-Xss-Protection:
- 1; mode=block
status: 200 OK
diff --git a/test/integration/fixtures/TestObjectStorageBucket_Access_Update.yaml b/test/integration/fixtures/TestObjectStorageBucket_Access_Update.yaml
index e0a33b0d8..ceed13b48 100644
--- a/test/integration/fixtures/TestObjectStorageBucket_Access_Update.yaml
+++ b/test/integration/fixtures/TestObjectStorageBucket_Access_Update.yaml
@@ -15,8 +15,8 @@ interactions:
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", "cluster": "us-east-1",
- "size": 0, "objects": 0}'
+ "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"
@@ -29,15 +29,19 @@ interactions:
Access-Control-Expose-Headers:
- X-OAuth-Scopes, X-Accepted-OAuth-Scopes, X-Status
Cache-Control:
- - private, max-age=60, s-maxage=60
+ - max-age=0, no-cache, no-store
+ Connection:
+ - keep-alive
Content-Length:
- - "176"
+ - "197"
Content-Security-Policy:
- default-src 'none'
Content-Type:
- application/json
- Server:
- - nginx
+ Expires:
+ - Mon, 08 Jul 2024 15:14:14 GMT
+ Pragma:
+ - no-cache
Strict-Transport-Security:
- max-age=31536000
Vary:
@@ -52,7 +56,7 @@ interactions:
X-Oauth-Scopes:
- '*'
X-Ratelimit-Limit:
- - "800"
+ - "400"
X-Xss-Protection:
- 1; mode=block
status: 200 OK
@@ -84,15 +88,19 @@ interactions:
Access-Control-Expose-Headers:
- X-OAuth-Scopes, X-Accepted-OAuth-Scopes, X-Status
Cache-Control:
- - private, max-age=60, s-maxage=60
+ - max-age=0, no-cache, no-store
+ Connection:
+ - keep-alive
Content-Length:
- "2"
Content-Security-Policy:
- default-src 'none'
Content-Type:
- application/json
- Server:
- - nginx
+ Expires:
+ - Mon, 08 Jul 2024 15:14:16 GMT
+ Pragma:
+ - no-cache
Strict-Transport-Security:
- max-age=31536000
Vary:
@@ -107,7 +115,7 @@ interactions:
X-Oauth-Scopes:
- '*'
X-Ratelimit-Limit:
- - "800"
+ - "400"
X-Xss-Protection:
- 1; mode=block
status: 200 OK
@@ -126,8 +134,8 @@ interactions:
url: https://api.linode.com/v4beta/object-storage/buckets/us-east-1/go-bucket-test-def/access
method: GET
response:
- body: '{"acl": "private", "acl_xml": "fa25bc43-2cb0-43c7-b8bd-994243d8a697fa25bc43-2cb0-43c7-b8bd-994243d8a697fa25bc43-2cb0-43c7-b8bd-994243d8a697fa25bc43-2cb0-43c7-b8bd-994243d8a697FULL_CONTROL",
+ body: '{"acl": "private", "acl_xml": "640757b5-ebe9-45b1-abd5-581f215ef89e640757b5-ebe9-45b1-abd5-581f215ef89e640757b5-ebe9-45b1-abd5-581f215ef89e640757b5-ebe9-45b1-abd5-581f215ef89eFULL_CONTROL",
"cors_enabled": false, "cors_xml": null}'
headers:
Access-Control-Allow-Credentials:
@@ -141,16 +149,19 @@ interactions:
Access-Control-Expose-Headers:
- X-OAuth-Scopes, X-Accepted-OAuth-Scopes, X-Status
Cache-Control:
- - private, max-age=0, s-maxage=0, no-cache, no-store
- - private, max-age=60, s-maxage=60
+ - max-age=0, no-cache, no-store
+ Connection:
+ - keep-alive
Content-Length:
- "591"
Content-Security-Policy:
- default-src 'none'
Content-Type:
- application/json
- Server:
- - nginx
+ Expires:
+ - Mon, 08 Jul 2024 15:14:17 GMT
+ Pragma:
+ - no-cache
Strict-Transport-Security:
- max-age=31536000
Vary:
@@ -166,7 +177,7 @@ interactions:
X-Oauth-Scopes:
- '*'
X-Ratelimit-Limit:
- - "800"
+ - "400"
X-Xss-Protection:
- 1; mode=block
status: 200 OK
@@ -198,15 +209,19 @@ interactions:
Access-Control-Expose-Headers:
- X-OAuth-Scopes, X-Accepted-OAuth-Scopes, X-Status
Cache-Control:
- - private, max-age=60, s-maxage=60
+ - max-age=0, no-cache, no-store
+ Connection:
+ - keep-alive
Content-Length:
- "2"
Content-Security-Policy:
- default-src 'none'
Content-Type:
- application/json
- Server:
- - nginx
+ Expires:
+ - Mon, 08 Jul 2024 15:14:19 GMT
+ Pragma:
+ - no-cache
Strict-Transport-Security:
- max-age=31536000
Vary:
@@ -221,7 +236,7 @@ interactions:
X-Oauth-Scopes:
- '*'
X-Ratelimit-Limit:
- - "800"
+ - "400"
X-Xss-Protection:
- 1; mode=block
status: 200 OK
diff --git a/test/integration/fixtures/TestObjectStorageBucket_Create.yaml b/test/integration/fixtures/TestObjectStorageBucket_Create.yaml
index b9aeb622e..545774bd0 100644
--- a/test/integration/fixtures/TestObjectStorageBucket_Create.yaml
+++ b/test/integration/fixtures/TestObjectStorageBucket_Create.yaml
@@ -15,8 +15,8 @@ interactions:
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", "cluster": "us-east-1",
- "size": 0, "objects": 0}'
+ "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"
@@ -29,15 +29,19 @@ interactions:
Access-Control-Expose-Headers:
- X-OAuth-Scopes, X-Accepted-OAuth-Scopes, X-Status
Cache-Control:
- - private, max-age=60, s-maxage=60
+ - max-age=0, no-cache, no-store
+ Connection:
+ - keep-alive
Content-Length:
- - "176"
+ - "197"
Content-Security-Policy:
- default-src 'none'
Content-Type:
- application/json
- Server:
- - nginx
+ Expires:
+ - Mon, 08 Jul 2024 15:13:32 GMT
+ Pragma:
+ - no-cache
Strict-Transport-Security:
- max-age=31536000
Vary:
@@ -52,7 +56,7 @@ interactions:
X-Oauth-Scopes:
- '*'
X-Ratelimit-Limit:
- - "800"
+ - "400"
X-Xss-Protection:
- 1; mode=block
status: 200 OK
@@ -84,15 +88,19 @@ interactions:
Access-Control-Expose-Headers:
- X-OAuth-Scopes, X-Accepted-OAuth-Scopes, X-Status
Cache-Control:
- - private, max-age=60, s-maxage=60
+ - max-age=0, no-cache, no-store
+ Connection:
+ - keep-alive
Content-Length:
- "2"
Content-Security-Policy:
- default-src 'none'
Content-Type:
- application/json
- Server:
- - nginx
+ Expires:
+ - Mon, 08 Jul 2024 15:13:34 GMT
+ Pragma:
+ - no-cache
Strict-Transport-Security:
- max-age=31536000
Vary:
@@ -107,7 +115,7 @@ interactions:
X-Oauth-Scopes:
- '*'
X-Ratelimit-Limit:
- - "800"
+ - "400"
X-Xss-Protection:
- 1; mode=block
status: 200 OK
diff --git a/test/integration/fixtures/TestObjectStorageBucket_GetFound.yaml b/test/integration/fixtures/TestObjectStorageBucket_GetFound.yaml
index 75e6a6997..02fbb1ad2 100644
--- a/test/integration/fixtures/TestObjectStorageBucket_GetFound.yaml
+++ b/test/integration/fixtures/TestObjectStorageBucket_GetFound.yaml
@@ -15,8 +15,8 @@ interactions:
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", "cluster": "us-east-1",
- "size": 0, "objects": 0}'
+ "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"
@@ -29,15 +29,19 @@ interactions:
Access-Control-Expose-Headers:
- X-OAuth-Scopes, X-Accepted-OAuth-Scopes, X-Status
Cache-Control:
- - private, max-age=60, s-maxage=60
+ - max-age=0, no-cache, no-store
+ Connection:
+ - keep-alive
Content-Length:
- - "176"
+ - "197"
Content-Security-Policy:
- default-src 'none'
Content-Type:
- application/json
- Server:
- - nginx
+ Expires:
+ - Mon, 08 Jul 2024 15:13:40 GMT
+ Pragma:
+ - no-cache
Strict-Transport-Security:
- max-age=31536000
Vary:
@@ -52,7 +56,7 @@ interactions:
X-Oauth-Scopes:
- '*'
X-Ratelimit-Limit:
- - "800"
+ - "400"
X-Xss-Protection:
- 1; mode=block
status: 200 OK
@@ -72,8 +76,8 @@ interactions:
method: GET
response:
body: '{"hostname": "go-bucket-test-def.us-east-1.linodeobjects.com", "label":
- "go-bucket-test-def", "created": "2018-01-02T03:04:05", "cluster": "us-east-1",
- "size": 0, "objects": 0}'
+ "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"
@@ -86,16 +90,19 @@ interactions:
Access-Control-Expose-Headers:
- X-OAuth-Scopes, X-Accepted-OAuth-Scopes, X-Status
Cache-Control:
- - private, max-age=0, s-maxage=0, no-cache, no-store
- - private, max-age=60, s-maxage=60
+ - max-age=0, no-cache, no-store
+ Connection:
+ - keep-alive
Content-Length:
- - "176"
+ - "197"
Content-Security-Policy:
- default-src 'none'
Content-Type:
- application/json
- Server:
- - nginx
+ Expires:
+ - Mon, 08 Jul 2024 15:13:41 GMT
+ Pragma:
+ - no-cache
Strict-Transport-Security:
- max-age=31536000
Vary:
@@ -111,7 +118,7 @@ interactions:
X-Oauth-Scopes:
- '*'
X-Ratelimit-Limit:
- - "800"
+ - "400"
X-Xss-Protection:
- 1; mode=block
status: 200 OK
@@ -143,15 +150,19 @@ interactions:
Access-Control-Expose-Headers:
- X-OAuth-Scopes, X-Accepted-OAuth-Scopes, X-Status
Cache-Control:
- - private, max-age=60, s-maxage=60
+ - max-age=0, no-cache, no-store
+ Connection:
+ - keep-alive
Content-Length:
- "2"
Content-Security-Policy:
- default-src 'none'
Content-Type:
- application/json
- Server:
- - nginx
+ Expires:
+ - Mon, 08 Jul 2024 15:13:43 GMT
+ Pragma:
+ - no-cache
Strict-Transport-Security:
- max-age=31536000
Vary:
@@ -166,7 +177,7 @@ interactions:
X-Oauth-Scopes:
- '*'
X-Ratelimit-Limit:
- - "800"
+ - "400"
X-Xss-Protection:
- 1; mode=block
status: 200 OK
diff --git a/test/integration/fixtures/TestObjectStorageBucket_GetMissing.yaml b/test/integration/fixtures/TestObjectStorageBucket_GetMissing.yaml
index 07c671eb9..8ebab68ed 100644
--- a/test/integration/fixtures/TestObjectStorageBucket_GetMissing.yaml
+++ b/test/integration/fixtures/TestObjectStorageBucket_GetMissing.yaml
@@ -15,8 +15,8 @@ interactions:
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", "cluster": "us-east-1",
- "size": 0, "objects": 0}'
+ "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"
@@ -29,15 +29,19 @@ interactions:
Access-Control-Expose-Headers:
- X-OAuth-Scopes, X-Accepted-OAuth-Scopes, X-Status
Cache-Control:
- - private, max-age=60, s-maxage=60
+ - max-age=0, no-cache, no-store
+ Connection:
+ - keep-alive
Content-Length:
- - "176"
+ - "197"
Content-Security-Policy:
- default-src 'none'
Content-Type:
- application/json
- Server:
- - nginx
+ Expires:
+ - Mon, 08 Jul 2024 15:13:36 GMT
+ Pragma:
+ - no-cache
Strict-Transport-Security:
- max-age=31536000
Vary:
@@ -52,7 +56,7 @@ interactions:
X-Oauth-Scopes:
- '*'
X-Ratelimit-Limit:
- - "800"
+ - "400"
X-Xss-Protection:
- 1; mode=block
status: 200 OK
@@ -80,13 +84,17 @@ interactions:
Access-Control-Allow-Origin:
- '*'
Cache-Control:
- - private, max-age=0, s-maxage=0, no-cache, no-store
+ - max-age=0, no-cache, no-store
+ Connection:
+ - keep-alive
Content-Length:
- "37"
Content-Type:
- application/json
- Server:
- - nginx
+ Expires:
+ - Mon, 08 Jul 2024 15:13:36 GMT
+ Pragma:
+ - no-cache
Vary:
- Authorization, X-Filter
X-Accepted-Oauth-Scopes:
@@ -96,7 +104,7 @@ interactions:
X-Oauth-Scopes:
- '*'
X-Ratelimit-Limit:
- - "800"
+ - "400"
status: 404 Not Found
code: 404
duration: ""
@@ -126,15 +134,19 @@ interactions:
Access-Control-Expose-Headers:
- X-OAuth-Scopes, X-Accepted-OAuth-Scopes, X-Status
Cache-Control:
- - private, max-age=60, s-maxage=60
+ - max-age=0, no-cache, no-store
+ Connection:
+ - keep-alive
Content-Length:
- "2"
Content-Security-Policy:
- default-src 'none'
Content-Type:
- application/json
- Server:
- - nginx
+ Expires:
+ - Mon, 08 Jul 2024 15:13:38 GMT
+ Pragma:
+ - no-cache
Strict-Transport-Security:
- max-age=31536000
Vary:
@@ -149,7 +161,7 @@ interactions:
X-Oauth-Scopes:
- '*'
X-Ratelimit-Limit:
- - "800"
+ - "400"
X-Xss-Protection:
- 1; mode=block
status: 200 OK
diff --git a/test/integration/fixtures/TestObjectStorageBucketsInCluster_List.yaml b/test/integration/fixtures/TestObjectStorageBucketsInCluster_List.yaml
index eae8659d9..20dfdc732 100644
--- a/test/integration/fixtures/TestObjectStorageBucketsInCluster_List.yaml
+++ b/test/integration/fixtures/TestObjectStorageBucketsInCluster_List.yaml
@@ -15,8 +15,8 @@ interactions:
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", "cluster": "us-east-1",
- "size": 0, "objects": 0}'
+ "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"
@@ -29,15 +29,19 @@ interactions:
Access-Control-Expose-Headers:
- X-OAuth-Scopes, X-Accepted-OAuth-Scopes, X-Status
Cache-Control:
- - private, max-age=60, s-maxage=60
+ - max-age=0, no-cache, no-store
+ Connection:
+ - keep-alive
Content-Length:
- - "176"
+ - "197"
Content-Security-Policy:
- default-src 'none'
Content-Type:
- application/json
- Server:
- - nginx
+ Expires:
+ - Mon, 08 Jul 2024 15:14:03 GMT
+ Pragma:
+ - no-cache
Strict-Transport-Security:
- max-age=31536000
Vary:
@@ -52,7 +56,7 @@ interactions:
X-Oauth-Scopes:
- '*'
X-Ratelimit-Limit:
- - "800"
+ - "400"
X-Xss-Protection:
- 1; mode=block
status: 200 OK
@@ -68,12 +72,13 @@ interactions:
- application/json
User-Agent:
- linodego/dev https://github.com/linode/linodego
- url: https://api.linode.com/v4beta/object-storage/buckets/us-east-1
+ url: https://api.linode.com/v4beta/object-storage/buckets/us-east-1?page=1
method: GET
response:
- body: '{"page": 1, "pages": 1, "results": 1, "data": [{"hostname": "go-bucket-test-def.us-east-1.linodeobjects.com",
- "label": "go-bucket-test-def", "created": "2018-01-02T03:04:05", "cluster":
- "us-east-1", "size": 0, "objects": 0}]}'
+ body: '{"data": [{"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}], "page": 1, "pages": 1, "results":
+ 1}'
headers:
Access-Control-Allow-Credentials:
- "true"
@@ -86,16 +91,19 @@ interactions:
Access-Control-Expose-Headers:
- X-OAuth-Scopes, X-Accepted-OAuth-Scopes, X-Status
Cache-Control:
- - private, max-age=0, s-maxage=0, no-cache, no-store
- - private, max-age=60, s-maxage=60
+ - max-age=0, no-cache, no-store
+ Connection:
+ - keep-alive
Content-Length:
- - "225"
+ - "246"
Content-Security-Policy:
- default-src 'none'
Content-Type:
- application/json
- Server:
- - nginx
+ Expires:
+ - Mon, 08 Jul 2024 15:14:04 GMT
+ Pragma:
+ - no-cache
Strict-Transport-Security:
- max-age=31536000
Vary:
@@ -111,7 +119,7 @@ interactions:
X-Oauth-Scopes:
- '*'
X-Ratelimit-Limit:
- - "800"
+ - "400"
X-Xss-Protection:
- 1; mode=block
status: 200 OK
@@ -143,15 +151,19 @@ interactions:
Access-Control-Expose-Headers:
- X-OAuth-Scopes, X-Accepted-OAuth-Scopes, X-Status
Cache-Control:
- - private, max-age=60, s-maxage=60
+ - max-age=0, no-cache, no-store
+ Connection:
+ - keep-alive
Content-Length:
- "2"
Content-Security-Policy:
- default-src 'none'
Content-Type:
- application/json
- Server:
- - nginx
+ Expires:
+ - Mon, 08 Jul 2024 15:14:06 GMT
+ Pragma:
+ - no-cache
Strict-Transport-Security:
- max-age=31536000
Vary:
@@ -166,7 +178,7 @@ interactions:
X-Oauth-Scopes:
- '*'
X-Ratelimit-Limit:
- - "800"
+ - "400"
X-Xss-Protection:
- 1; mode=block
status: 200 OK
diff --git a/test/integration/fixtures/TestObjectStorageBuckets_List.yaml b/test/integration/fixtures/TestObjectStorageBuckets_List.yaml
index ad85b9302..7a2f035af 100644
--- a/test/integration/fixtures/TestObjectStorageBuckets_List.yaml
+++ b/test/integration/fixtures/TestObjectStorageBuckets_List.yaml
@@ -15,8 +15,8 @@ interactions:
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", "cluster": "us-east-1",
- "size": 0, "objects": 0}'
+ "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"
@@ -29,15 +29,19 @@ interactions:
Access-Control-Expose-Headers:
- X-OAuth-Scopes, X-Accepted-OAuth-Scopes, X-Status
Cache-Control:
- - private, max-age=60, s-maxage=60
+ - max-age=0, no-cache, no-store
+ Connection:
+ - keep-alive
Content-Length:
- - "176"
+ - "197"
Content-Security-Policy:
- default-src 'none'
Content-Type:
- application/json
- Server:
- - nginx
+ Expires:
+ - Mon, 08 Jul 2024 15:13:45 GMT
+ Pragma:
+ - no-cache
Strict-Transport-Security:
- max-age=31536000
Vary:
@@ -52,7 +56,7 @@ interactions:
X-Oauth-Scopes:
- '*'
X-Ratelimit-Limit:
- - "800"
+ - "400"
X-Xss-Protection:
- 1; mode=block
status: 200 OK
@@ -68,12 +72,13 @@ interactions:
- application/json
User-Agent:
- linodego/dev https://github.com/linode/linodego
- url: https://api.linode.com/v4beta/object-storage/buckets
+ url: https://api.linode.com/v4beta/object-storage/buckets?page=1
method: GET
response:
- body: '{"page": 1, "pages": 1, "results": 1, "data": [{"hostname": "go-bucket-test-def.us-east-1.linodeobjects.com",
- "label": "go-bucket-test-def", "created": "2018-01-02T03:04:05", "cluster":
- "us-east-1", "size": 0, "objects": 0}]}'
+ body: '{"data": [{"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}], "page": 1, "pages": 1, "results":
+ 1}'
headers:
Access-Control-Allow-Credentials:
- "true"
@@ -86,16 +91,19 @@ interactions:
Access-Control-Expose-Headers:
- X-OAuth-Scopes, X-Accepted-OAuth-Scopes, X-Status
Cache-Control:
- - private, max-age=0, s-maxage=0, no-cache, no-store
- - private, max-age=60, s-maxage=60
+ - max-age=0, no-cache, no-store
+ Connection:
+ - keep-alive
Content-Length:
- - "225"
+ - "246"
Content-Security-Policy:
- default-src 'none'
Content-Type:
- application/json
- Server:
- - nginx
+ Expires:
+ - Mon, 08 Jul 2024 15:13:59 GMT
+ Pragma:
+ - no-cache
Strict-Transport-Security:
- max-age=31536000
Vary:
@@ -111,7 +119,7 @@ interactions:
X-Oauth-Scopes:
- '*'
X-Ratelimit-Limit:
- - "800"
+ - "400"
X-Xss-Protection:
- 1; mode=block
status: 200 OK
@@ -143,15 +151,19 @@ interactions:
Access-Control-Expose-Headers:
- X-OAuth-Scopes, X-Accepted-OAuth-Scopes, X-Status
Cache-Control:
- - private, max-age=60, s-maxage=60
+ - max-age=0, no-cache, no-store
+ Connection:
+ - keep-alive
Content-Length:
- "2"
Content-Security-Policy:
- default-src 'none'
Content-Type:
- application/json
- Server:
- - nginx
+ Expires:
+ - Mon, 08 Jul 2024 15:14:01 GMT
+ Pragma:
+ - no-cache
Strict-Transport-Security:
- max-age=31536000
Vary:
@@ -166,7 +178,7 @@ interactions:
X-Oauth-Scopes:
- '*'
X-Ratelimit-Limit:
- - "800"
+ - "400"
X-Xss-Protection:
- 1; mode=block
status: 200 OK
diff --git a/test/integration/fixtures/TestObjectStorageClusters_List.yaml b/test/integration/fixtures/TestObjectStorageClusters_List.yaml
index 363283d4a..9b221313b 100644
--- a/test/integration/fixtures/TestObjectStorageClusters_List.yaml
+++ b/test/integration/fixtures/TestObjectStorageClusters_List.yaml
@@ -11,7 +11,7 @@ interactions:
- application/json
User-Agent:
- linodego/dev https://github.com/linode/linodego
- url: https://api.linode.com/v4beta/object-storage/clusters
+ url: https://api.linode.com/v4beta/object-storage/clusters?page=1
method: GET
response:
body: '{"data": [{"id": "us-east-1", "region": "us-east", "status": "available",
@@ -21,8 +21,36 @@ interactions:
{"id": "ap-south-1", "region": "ap-south", "status": "available", "domain":
"ap-south-1.linodeobjects.com", "static_site_domain": "website-ap-south-1.linodeobjects.com"},
{"id": "us-southeast-1", "region": "us-southeast", "status": "available", "domain":
- "us-southeast-1.linodeobjects.com", "static_site_domain": "website-us-southeast-1.linodeobjects.com"}],
- "page": 1, "pages": 1, "results": 4}'
+ "us-southeast-1.linodeobjects.com", "static_site_domain": "website-us-southeast-1.linodeobjects.com"},
+ {"id": "us-iad-1", "region": "us-iad", "status": "available", "domain": "us-iad-1.linodeobjects.com",
+ "static_site_domain": "website-us-iad-1.linodeobjects.com"}, {"id": "fr-par-1",
+ "region": "fr-par", "status": "available", "domain": "fr-par-1.linodeobjects.com",
+ "static_site_domain": "website-fr-par-1.linodeobjects.com"}, {"id": "us-ord-1",
+ "region": "us-ord", "status": "available", "domain": "us-ord-1.linodeobjects.com",
+ "static_site_domain": "website-us-ord-1.linodeobjects.com"}, {"id": "in-maa-1",
+ "region": "in-maa", "status": "available", "domain": "in-maa-1.linodeobjects.com",
+ "static_site_domain": "website-in-maa-1.linodeobjects.com"}, {"id": "se-sto-1",
+ "region": "se-sto", "status": "available", "domain": "se-sto-1.linodeobjects.com",
+ "static_site_domain": "website-se-sto-1.linodeobjects.com"}, {"id": "it-mil-1",
+ "region": "it-mil", "status": "available", "domain": "it-mil-1.linodeobjects.com",
+ "static_site_domain": "website-it-mil-1.linodeobjects.com"}, {"id": "us-sea-1",
+ "region": "us-sea", "status": "available", "domain": "us-sea-1.linodeobjects.com",
+ "static_site_domain": "website-us-sea-1.linodeobjects.com"}, {"id": "id-cgk-1",
+ "region": "id-cgk", "status": "available", "domain": "id-cgk-1.linodeobjects.com",
+ "static_site_domain": "website-id-cgk-1.linodeobjects.com"}, {"id": "jp-osa-1",
+ "region": "jp-osa", "status": "available", "domain": "jp-osa-1.linodeobjects.com",
+ "static_site_domain": "website-jp-osa-1.linodeobjects.com"}, {"id": "br-gru-1",
+ "region": "br-gru", "status": "available", "domain": "br-gru-1.linodeobjects.com",
+ "static_site_domain": "website-br-gru-1.linodeobjects.com"}, {"id": "us-lax-1",
+ "region": "us-lax", "status": "available", "domain": "us-lax-1.linodeobjects.com",
+ "static_site_domain": "website-us-lax-1.linodeobjects.com"}, {"id": "nl-ams-1",
+ "region": "nl-ams", "status": "available", "domain": "nl-ams-1.linodeobjects.com",
+ "static_site_domain": "website-nl-ams-1.linodeobjects.com"}, {"id": "us-mia-1",
+ "region": "us-mia", "status": "available", "domain": "us-mia-1.linodeobjects.com",
+ "static_site_domain": "website-us-mia-1.linodeobjects.com"}, {"id": "es-mad-1",
+ "region": "es-mad", "status": "available", "domain": "es-mad-1.linodeobjects.com",
+ "static_site_domain": "website-es-mad-1.linodeobjects.com"}], "page": 1, "pages":
+ 1, "results": 18}'
headers:
Access-Control-Allow-Credentials:
- "true"
@@ -35,21 +63,23 @@ interactions:
Access-Control-Expose-Headers:
- X-OAuth-Scopes, X-Accepted-OAuth-Scopes, X-Status
Cache-Control:
- - private, max-age=0, s-maxage=0, no-cache, no-store
- - private, max-age=60, s-maxage=60
- Content-Length:
- - "751"
+ - max-age=0, no-cache, no-store
+ Connection:
+ - keep-alive
Content-Security-Policy:
- default-src 'none'
Content-Type:
- application/json
- Server:
- - nginx
+ Expires:
+ - Mon, 08 Jul 2024 15:14:20 GMT
+ Pragma:
+ - no-cache
Strict-Transport-Security:
- max-age=31536000
Vary:
- Authorization, X-Filter
- Authorization, X-Filter
+ - Accept-Encoding
X-Accepted-Oauth-Scopes:
- object_storage:read_only
X-Content-Type-Options:
@@ -60,7 +90,7 @@ interactions:
X-Oauth-Scopes:
- '*'
X-Ratelimit-Limit:
- - "800"
+ - "400"
X-Xss-Protection:
- 1; mode=block
status: 200 OK