diff --git a/go.mod b/go.mod
index e1d741aa4..7febcbe57 100644
--- a/go.mod
+++ b/go.mod
@@ -4,7 +4,7 @@ go 1.20
 
 require (
 	github.com/bflad/tfproviderlint v0.30.0
-	github.com/fastly/go-fastly/v9 v9.7.0
+	github.com/fastly/go-fastly/v9 v9.8.0
 	github.com/google/go-cmp v0.6.0
 	github.com/hashicorp/go-cty v1.4.1-0.20200414143053-d3edf31b6320
 	github.com/hashicorp/terraform-plugin-docs v0.19.4
diff --git a/go.sum b/go.sum
index 734e3a880..d2ab3f100 100644
--- a/go.sum
+++ b/go.sum
@@ -36,8 +36,8 @@ github.com/davecgh/go-spew v1.1.1 h1:vj9j/u1bqnvCEfJOwUhtlOARqs3+rkHYY13jYWTU97c
 github.com/davecgh/go-spew v1.1.1/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
 github.com/dnaeon/go-vcr v1.2.0 h1:zHCHvJYTMh1N7xnV7zf1m1GPBF9Ad0Jk/whtQ1663qI=
 github.com/emirpasic/gods v1.18.1 h1:FXtiHYKDGKCW2KzwZKx0iC0PQmdlorYgdFG9jPXJ1Bc=
-github.com/fastly/go-fastly/v9 v9.7.0 h1:RIHKQcsUT6n5kZHeDES47FsUWtoJm69/40tk5P8fi8Q=
-github.com/fastly/go-fastly/v9 v9.7.0/go.mod h1:5w2jgJBZqQEebOwM/rRg7wutAcpDTziiMYWb/6qdM7U=
+github.com/fastly/go-fastly/v9 v9.8.0 h1:15dtV3fmLlS/8wbdU3tBsW3Tb0Tj/gQrdS4v5mhtDDE=
+github.com/fastly/go-fastly/v9 v9.8.0/go.mod h1:5w2jgJBZqQEebOwM/rRg7wutAcpDTziiMYWb/6qdM7U=
 github.com/fatih/color v1.13.0/go.mod h1:kLAiJbzzSOZDVNGyDpeOxJ47H46qBXwg5ILebYFFOfk=
 github.com/fatih/color v1.16.0 h1:zmkK9Ngbjj+K0yRhTVONQh1p/HknKYSlNT+vZCzyokM=
 github.com/fatih/color v1.16.0/go.mod h1:fL2Sau1YI5c0pdGEVCbKQbLXB6edEj1ZgiY4NijnWvE=
diff --git a/vendor/github.com/fastly/go-fastly/v9/fastly/backend.go b/vendor/github.com/fastly/go-fastly/v9/fastly/backend.go
index 49d08d15e..6015ed81a 100644
--- a/vendor/github.com/fastly/go-fastly/v9/fastly/backend.go
+++ b/vendor/github.com/fastly/go-fastly/v9/fastly/backend.go
@@ -38,6 +38,10 @@ type Backend struct {
 	ServiceID           *string    `mapstructure:"service_id"`
 	ServiceVersion      *int       `mapstructure:"version"`
 	Shield              *string    `mapstructure:"shield"`
+	TCPKeepAliveEnable  *bool      `mapstructure:"tcp_keepalive_enable"`
+	TCPKeepAliveIntvl   *int       `mapstructure:"tcp_keepalive_interval"`
+	TCPKeepAliveProbes  *int       `mapstructure:"tcp_keepalive_probes"`
+	TCPKeepAliveTime    *int       `mapstructure:"tcp_keepalive_time"`
 	UpdatedAt           *time.Time `mapstructure:"updated_at"`
 	UseSSL              *bool      `mapstructure:"use_ssl"`
 	Weight              *int       `mapstructure:"weight"`
@@ -130,6 +134,14 @@ type CreateBackendInput struct {
 	ServiceVersion int `url:"-"`
 	// Shield is an identifier of the POP to use as a shield.
 	Shield *string `url:"shield,omitempty"`
+	// TCPKeepAliveEnable is whether to enable TCP keepalives to this backend.
+	TCPKeepAliveEnable *bool `url:"tcp_keepalive_enable,omitempty"`
+	// TCPKeepAliveIntvl is how long to wait between each TCP keepalive probe sent to this backend.
+	TCPKeepAliveIntvl *int `url:"tcp_keepalive_interval,omitempty"`
+	// TCPKeepAliveProbes is how many unacknowledged TCP keepalive probes to send to this backend before it's considered dead.
+	TCPKeepAliveProbes *int `url:"tcp_keepalive_probes,omitempty"`
+	// TCPKeepAliveTime is how long to wait after the last sent data before sending TCP keepalive probes.
+	TCPKeepAliveTime *int `url:"tcp_keepalive_time,omitempty"`
 	// UseSSL indicates whether or not to require TLS for connections to this backend.
 	UseSSL *Compatibool `url:"use_ssl,omitempty"`
 	// Weight is the weight used to load balance this backend against others.
@@ -253,6 +265,14 @@ type UpdateBackendInput struct {
 	ServiceVersion int `url:"-"`
 	// Shield is an identifier of the POP to use as a shield.
 	Shield *string `url:"shield,omitempty"`
+	// TCPKeepAliveEnable is whether to enable TCP keepalives to this backend.
+	TCPKeepAliveEnable *bool `url:"tcp_keepalive_enable,omitempty"`
+	// TCPKeepAliveIntvl is how long to wait between each TCP keepalive probe sent to this backend.
+	TCPKeepAliveIntvl *int `url:"tcp_keepalive_interval,omitempty"`
+	// TCPKeepAliveProbes is how many unacknowledged TCP keepalive probes to send to this backend before it's considered dead.
+	TCPKeepAliveProbes *int `url:"tcp_keepalive_probes,omitempty"`
+	// TCPKeepAliveTime is how long to wait after the last sent data before sending TCP keepalive probes.
+	TCPKeepAliveTime *int `url:"tcp_keepalive_time,omitempty"`
 	// UseSSL indicates whether or not to require TLS for connections to this backend.
 	UseSSL *Compatibool `url:"use_ssl,omitempty"`
 	// Weight is the weight used to load balance this backend against others.
diff --git a/vendor/github.com/fastly/go-fastly/v9/fastly/client.go b/vendor/github.com/fastly/go-fastly/v9/fastly/client.go
index 21cd26fe8..81a86db9a 100644
--- a/vendor/github.com/fastly/go-fastly/v9/fastly/client.go
+++ b/vendor/github.com/fastly/go-fastly/v9/fastly/client.go
@@ -62,7 +62,7 @@ const UserAgentEnvVar = "FASTLY_USER_AGENT"
 var ProjectURL = "github.com/fastly/go-fastly"
 
 // ProjectVersion is the version of this library.
-var ProjectVersion = "9.7.0"
+var ProjectVersion = "9.8.0"
 
 // UserAgent is the user agent for this particular client.
 var UserAgent = fmt.Sprintf("FastlyGo/%s (+%s; %s)",
diff --git a/vendor/modules.txt b/vendor/modules.txt
index 83a25ad9c..735a88b0b 100644
--- a/vendor/modules.txt
+++ b/vendor/modules.txt
@@ -214,7 +214,7 @@ github.com/cloudflare/circl/sign/ed448
 # github.com/davecgh/go-spew v1.1.1
 ## explicit
 github.com/davecgh/go-spew/spew
-# github.com/fastly/go-fastly/v9 v9.7.0
+# github.com/fastly/go-fastly/v9 v9.8.0
 ## explicit; go 1.20
 github.com/fastly/go-fastly/v9/fastly
 # github.com/fatih/color v1.16.0