
Fastly Usage
CertifiedFetch Fastly bandwidth and request usage
Fastly Usage
Fetch Fastly bandwidth and request usage
Retrieves bandwidth and request usage from /stats/usage (aggregated by region) or
/stats/usage_by_service (per-service breakdown) depending on byService.
Usage data is keyed by region in the response.
type: io.kestra.plugin.fastly.stats.UsageExamples
Fetch usage aggregated by region for the past day
id: fastly_usage
namespace: company.analytics
tasks:
- id: fetch_usage
type: io.kestra.plugin.fastly.stats.Usage
apiToken: "{{ secret('FASTLY_API_TOKEN') }}"
from: "yesterday"
to: "now"
Fetch per-service usage breakdown
id: fastly_usage_by_service
namespace: company.analytics
tasks:
- id: fetch_service_usage
type: io.kestra.plugin.fastly.stats.Usage
apiToken: "{{ secret('FASTLY_API_TOKEN') }}"
from: "1 week ago"
to: "now"
byService: true
Properties
apiToken *string
Fastly API token
Your Fastly API token. Create one in the Fastly console under Account > API tokens.
Required scopes depend on the operation: URL and surrogate key purges require purge_select;
purge-all requires purge_all; stats endpoints require global: read.
assets
Assets this task consumes as inputs or produces as outputs, for lineage tracking and the asset graph (Enterprise Edition). A flow declaring this property on a task is rejected in the open-source edition.
io.kestra.core.models.assets.AssetsDeclaration
IGNOREFAILWARNAsset failure behavior
Behavior applied to the task state when a declared asset fails to render, emit, or be persisted (e.g. a lock conflict): FAIL escalates it to FAILED, WARN (default) warns it if it would otherwise succeed, IGNORE leaves the state untouched.
Whether to auto-register assets referenced dynamically at runtime that are not statically declared in inputs or outputs.
The assets consumed as inputs.
io.kestra.core.models.assets.AssetIdentifier
1The assets produced as outputs.
io.kestra.plugin.ee.assets.Dataset
1150{}1150io.kestra.plugin.ee.assets.File
1150{}1150io.kestra.plugin.ee.assets.Table
1150{}1150io.kestra.plugin.ee.assets.VM
1150{}1150io.kestra.core.models.assets.External
1150{}1150io.kestra.core.models.assets.Custom
11501Custom asset type
{}1150baseUrl string
https://api.fastly.comFastly API base URL
Base URL for the Fastly API. Override this only for testing.
byService booleanstring
falseBreak down usage per service
When true, calls /stats/usage_by_service which returns usage broken down by service.
When false (default), calls /stats/usage which returns usage aggregated by region.
from string
Start of the time window
Beginning of the reporting window. Accepts Unix timestamps (seconds) or
Fastly natural-language strings such as "1 hour ago" or "yesterday".
options
HTTP client options
Optional advanced HTTP settings such as timeouts or proxy configuration.
io.kestra.core.http.client.configurations.HttpConfiguration
falseIf true, allow a failed response code (response code >= 400)
List of response code allowed for this request
The authentication to use.
io.kestra.core.http.client.configurations.BasicAuthConfiguration
The password for HTTP basic authentication.
The username for HTTP basic authentication.
io.kestra.core.http.client.configurations.BearerAuthConfiguration
The token for bearer token authentication.
io.kestra.core.http.client.configurations.DigestAuthConfiguration
The password for HTTP Digest authentication.
The username for HTTP Digest authentication.
UTF-8The default charset for the request.
java.nio.charset.Charset
trueWhether to enable TCP Keep-Alive extended socket options (TCP_KEEPIDLE, TCP_KEEPINTERVAL, TCP_KEEPCOUNT).
Set to false when running on Windows workers, as these extended socket options are not supported by the Windows JDK and will cause connection failures.
trueWhether redirects should be followed automatically.
REQUEST_HEADERSREQUEST_BODYRESPONSE_HEADERSRESPONSE_BODYThe enabled log.
The proxy configuration.
io.kestra.core.http.client.configurations.ProxyConfiguration
The address of the proxy server.
The password for proxy authentication.
The port of the proxy server.
DIRECTDIRECTHTTPSOCKSThe type of proxy to use.
The username for proxy authentication.
The SSL request options
io.kestra.core.http.client.configurations.SslOptions
Whether to disable checking of the remote SSL certificate.
Only applies if no trust store is configured. Note: This makes the SSL connection insecure and should only be used for testing. If you are using a self-signed certificate, set up a trust store instead.
The timeout configuration.
io.kestra.core.http.client.configurations.TimeoutConfiguration
The time allowed to establish a connection to the server before failing.
PT5MThe time allowed for a read connection to remain idle before closing it.
to string
End of the time window
End of the reporting window. Accepts Unix timestamps (seconds) or
Fastly natural-language strings such as "now".
Outputs
data object
Usage data
Usage data keyed by region. When byService is true, each region value contains a
per-service breakdown. Otherwise, each region holds aggregated request and bandwidth counts.
meta object
Response metadata
Metadata returned by Fastly, including pagination info and request parameters.
status string
Response status
Status field from the Fastly API envelope, typically ok.