published on Monday, Mar 9, 2026 by Pulumi
published on Monday, Mar 9, 2026 by Pulumi
Access Service Tokens are used for service-to-service communication when an application is behind Cloudflare Access.
Example Usage
using System.Collections.Generic;
using Pulumi;
using Cloudflare = Pulumi.Cloudflare;
return await Deployment.RunAsync(() =>
{
// Generate a service token that will renew if terraform is ran within 30 days of expiration
var myApp = new Cloudflare.AccessServiceToken("myApp", new()
{
AccountId = "f037e56e89293a057740de681ac9abbe",
MinDaysForRenewal = 30,
Name = "CI/CD app renewed",
});
});
package main
import (
"github.com/pulumi/pulumi-cloudflare/sdk/v4/go/cloudflare"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
_, err := cloudflare.NewAccessServiceToken(ctx, "myApp", &cloudflare.AccessServiceTokenArgs{
AccountId: pulumi.String("f037e56e89293a057740de681ac9abbe"),
MinDaysForRenewal: pulumi.Int(30),
Name: pulumi.String("CI/CD app renewed"),
})
if err != nil {
return err
}
return nil
})
}
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.cloudflare.AccessServiceToken;
import com.pulumi.cloudflare.AccessServiceTokenArgs;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;
public class App {
public static void main(String[] args) {
Pulumi.run(App::stack);
}
public static void stack(Context ctx) {
var myApp = new AccessServiceToken("myApp", AccessServiceTokenArgs.builder()
.accountId("f037e56e89293a057740de681ac9abbe")
.minDaysForRenewal(30)
.name("CI/CD app renewed")
.build());
}
}
import * as pulumi from "@pulumi/pulumi";
import * as cloudflare from "@pulumi/cloudflare";
// Generate a service token that will renew if terraform is ran within 30 days of expiration
const myApp = new cloudflare.AccessServiceToken("myApp", {
accountId: "f037e56e89293a057740de681ac9abbe",
minDaysForRenewal: 30,
name: "CI/CD app renewed",
});
import pulumi
import pulumi_cloudflare as cloudflare
# Generate a service token that will renew if terraform is ran within 30 days of expiration
my_app = cloudflare.AccessServiceToken("myApp",
account_id="f037e56e89293a057740de681ac9abbe",
min_days_for_renewal=30,
name="CI/CD app renewed")
resources:
# Generate a service token that will renew if terraform is ran within 30 days of expiration
myApp:
type: cloudflare:AccessServiceToken
properties:
accountId: f037e56e89293a057740de681ac9abbe
minDaysForRenewal: 30
name: CI/CD app renewed
Create AccessServiceToken Resource
Resources are created with functions called constructors. To learn more about declaring and configuring resources, see Resources.
Constructor syntax
new AccessServiceToken(name: string, args: AccessServiceTokenArgs, opts?: CustomResourceOptions);@overload
def AccessServiceToken(resource_name: str,
args: AccessServiceTokenArgs,
opts: Optional[ResourceOptions] = None)
@overload
def AccessServiceToken(resource_name: str,
opts: Optional[ResourceOptions] = None,
name: Optional[str] = None,
account_id: Optional[str] = None,
min_days_for_renewal: Optional[int] = None,
zone_id: Optional[str] = None)func NewAccessServiceToken(ctx *Context, name string, args AccessServiceTokenArgs, opts ...ResourceOption) (*AccessServiceToken, error)public AccessServiceToken(string name, AccessServiceTokenArgs args, CustomResourceOptions? opts = null)
public AccessServiceToken(String name, AccessServiceTokenArgs args)
public AccessServiceToken(String name, AccessServiceTokenArgs args, CustomResourceOptions options)
type: cloudflare:AccessServiceToken
properties: # The arguments to resource properties.
options: # Bag of options to control resource's behavior.
Parameters
- name string
- The unique name of the resource.
- args AccessServiceTokenArgs
- The arguments to resource properties.
- opts CustomResourceOptions
- Bag of options to control resource's behavior.
- resource_name str
- The unique name of the resource.
- args AccessServiceTokenArgs
- The arguments to resource properties.
- opts ResourceOptions
- Bag of options to control resource's behavior.
- ctx Context
- Context object for the current deployment.
- name string
- The unique name of the resource.
- args AccessServiceTokenArgs
- The arguments to resource properties.
- opts ResourceOption
- Bag of options to control resource's behavior.
- name string
- The unique name of the resource.
- args AccessServiceTokenArgs
- The arguments to resource properties.
- opts CustomResourceOptions
- Bag of options to control resource's behavior.
- name String
- The unique name of the resource.
- args AccessServiceTokenArgs
- The arguments to resource properties.
- options CustomResourceOptions
- Bag of options to control resource's behavior.
Constructor example
The following reference example uses placeholder values for all input properties.
var accessServiceTokenResource = new Cloudflare.AccessServiceToken("accessServiceTokenResource", new()
{
Name = "string",
AccountId = "string",
MinDaysForRenewal = 0,
ZoneId = "string",
});
example, err := cloudflare.NewAccessServiceToken(ctx, "accessServiceTokenResource", &cloudflare.AccessServiceTokenArgs{
Name: pulumi.String("string"),
AccountId: pulumi.String("string"),
MinDaysForRenewal: pulumi.Int(0),
ZoneId: pulumi.String("string"),
})
var accessServiceTokenResource = new AccessServiceToken("accessServiceTokenResource", AccessServiceTokenArgs.builder()
.name("string")
.accountId("string")
.minDaysForRenewal(0)
.zoneId("string")
.build());
access_service_token_resource = cloudflare.AccessServiceToken("accessServiceTokenResource",
name="string",
account_id="string",
min_days_for_renewal=0,
zone_id="string")
const accessServiceTokenResource = new cloudflare.AccessServiceToken("accessServiceTokenResource", {
name: "string",
accountId: "string",
minDaysForRenewal: 0,
zoneId: "string",
});
type: cloudflare:AccessServiceToken
properties:
accountId: string
minDaysForRenewal: 0
name: string
zoneId: string
AccessServiceToken Resource Properties
To learn more about resource properties and how to use them, see Inputs and Outputs in the Architecture and Concepts docs.
Inputs
In Python, inputs that are objects can be passed either as argument classes or as dictionary literals.
The AccessServiceToken resource accepts the following input properties:
- Name string
- Friendly name of the token's intent.
- Account
Id string - The account identifier to target for the resource. Conflicts with
zone_id. - Min
Days intFor Renewal - Refresh the token if terraform is run within the specified amount of days before expiration
- Zone
Id string - The zone identifier to target for the resource. Conflicts with
account_id.
- Name string
- Friendly name of the token's intent.
- Account
Id string - The account identifier to target for the resource. Conflicts with
zone_id. - Min
Days intFor Renewal - Refresh the token if terraform is run within the specified amount of days before expiration
- Zone
Id string - The zone identifier to target for the resource. Conflicts with
account_id.
- name String
- Friendly name of the token's intent.
- account
Id String - The account identifier to target for the resource. Conflicts with
zone_id. - min
Days IntegerFor Renewal - Refresh the token if terraform is run within the specified amount of days before expiration
- zone
Id String - The zone identifier to target for the resource. Conflicts with
account_id.
- name string
- Friendly name of the token's intent.
- account
Id string - The account identifier to target for the resource. Conflicts with
zone_id. - min
Days numberFor Renewal - Refresh the token if terraform is run within the specified amount of days before expiration
- zone
Id string - The zone identifier to target for the resource. Conflicts with
account_id.
- name str
- Friendly name of the token's intent.
- account_
id str - The account identifier to target for the resource. Conflicts with
zone_id. - min_
days_ intfor_ renewal - Refresh the token if terraform is run within the specified amount of days before expiration
- zone_
id str - The zone identifier to target for the resource. Conflicts with
account_id.
- name String
- Friendly name of the token's intent.
- account
Id String - The account identifier to target for the resource. Conflicts with
zone_id. - min
Days NumberFor Renewal - Refresh the token if terraform is run within the specified amount of days before expiration
- zone
Id String - The zone identifier to target for the resource. Conflicts with
account_id.
Outputs
All input properties are implicitly available as output properties. Additionally, the AccessServiceToken resource produces the following output properties:
- Client
Id string - UUID client ID associated with the Service Token. Modifying this attribute will force creation of a new resource.
- Client
Secret string - A secret for interacting with Access protocols. Modifying this attribute will force creation of a new resource.
- Expires
At string - Date when the token expires.
- Id string
- The provider-assigned unique ID for this managed resource.
- Client
Id string - UUID client ID associated with the Service Token. Modifying this attribute will force creation of a new resource.
- Client
Secret string - A secret for interacting with Access protocols. Modifying this attribute will force creation of a new resource.
- Expires
At string - Date when the token expires.
- Id string
- The provider-assigned unique ID for this managed resource.
- client
Id String - UUID client ID associated with the Service Token. Modifying this attribute will force creation of a new resource.
- client
Secret String - A secret for interacting with Access protocols. Modifying this attribute will force creation of a new resource.
- expires
At String - Date when the token expires.
- id String
- The provider-assigned unique ID for this managed resource.
- client
Id string - UUID client ID associated with the Service Token. Modifying this attribute will force creation of a new resource.
- client
Secret string - A secret for interacting with Access protocols. Modifying this attribute will force creation of a new resource.
- expires
At string - Date when the token expires.
- id string
- The provider-assigned unique ID for this managed resource.
- client_
id str - UUID client ID associated with the Service Token. Modifying this attribute will force creation of a new resource.
- client_
secret str - A secret for interacting with Access protocols. Modifying this attribute will force creation of a new resource.
- expires_
at str - Date when the token expires.
- id str
- The provider-assigned unique ID for this managed resource.
- client
Id String - UUID client ID associated with the Service Token. Modifying this attribute will force creation of a new resource.
- client
Secret String - A secret for interacting with Access protocols. Modifying this attribute will force creation of a new resource.
- expires
At String - Date when the token expires.
- id String
- The provider-assigned unique ID for this managed resource.
Look up Existing AccessServiceToken Resource
Get an existing AccessServiceToken resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.
public static get(name: string, id: Input<ID>, state?: AccessServiceTokenState, opts?: CustomResourceOptions): AccessServiceToken@staticmethod
def get(resource_name: str,
id: str,
opts: Optional[ResourceOptions] = None,
account_id: Optional[str] = None,
client_id: Optional[str] = None,
client_secret: Optional[str] = None,
expires_at: Optional[str] = None,
min_days_for_renewal: Optional[int] = None,
name: Optional[str] = None,
zone_id: Optional[str] = None) -> AccessServiceTokenfunc GetAccessServiceToken(ctx *Context, name string, id IDInput, state *AccessServiceTokenState, opts ...ResourceOption) (*AccessServiceToken, error)public static AccessServiceToken Get(string name, Input<string> id, AccessServiceTokenState? state, CustomResourceOptions? opts = null)public static AccessServiceToken get(String name, Output<String> id, AccessServiceTokenState state, CustomResourceOptions options)resources: _: type: cloudflare:AccessServiceToken get: id: ${id}- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- resource_name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- Account
Id string - The account identifier to target for the resource. Conflicts with
zone_id. - Client
Id string - UUID client ID associated with the Service Token. Modifying this attribute will force creation of a new resource.
- Client
Secret string - A secret for interacting with Access protocols. Modifying this attribute will force creation of a new resource.
- Expires
At string - Date when the token expires.
- Min
Days intFor Renewal - Refresh the token if terraform is run within the specified amount of days before expiration
- Name string
- Friendly name of the token's intent.
- Zone
Id string - The zone identifier to target for the resource. Conflicts with
account_id.
- Account
Id string - The account identifier to target for the resource. Conflicts with
zone_id. - Client
Id string - UUID client ID associated with the Service Token. Modifying this attribute will force creation of a new resource.
- Client
Secret string - A secret for interacting with Access protocols. Modifying this attribute will force creation of a new resource.
- Expires
At string - Date when the token expires.
- Min
Days intFor Renewal - Refresh the token if terraform is run within the specified amount of days before expiration
- Name string
- Friendly name of the token's intent.
- Zone
Id string - The zone identifier to target for the resource. Conflicts with
account_id.
- account
Id String - The account identifier to target for the resource. Conflicts with
zone_id. - client
Id String - UUID client ID associated with the Service Token. Modifying this attribute will force creation of a new resource.
- client
Secret String - A secret for interacting with Access protocols. Modifying this attribute will force creation of a new resource.
- expires
At String - Date when the token expires.
- min
Days IntegerFor Renewal - Refresh the token if terraform is run within the specified amount of days before expiration
- name String
- Friendly name of the token's intent.
- zone
Id String - The zone identifier to target for the resource. Conflicts with
account_id.
- account
Id string - The account identifier to target for the resource. Conflicts with
zone_id. - client
Id string - UUID client ID associated with the Service Token. Modifying this attribute will force creation of a new resource.
- client
Secret string - A secret for interacting with Access protocols. Modifying this attribute will force creation of a new resource.
- expires
At string - Date when the token expires.
- min
Days numberFor Renewal - Refresh the token if terraform is run within the specified amount of days before expiration
- name string
- Friendly name of the token's intent.
- zone
Id string - The zone identifier to target for the resource. Conflicts with
account_id.
- account_
id str - The account identifier to target for the resource. Conflicts with
zone_id. - client_
id str - UUID client ID associated with the Service Token. Modifying this attribute will force creation of a new resource.
- client_
secret str - A secret for interacting with Access protocols. Modifying this attribute will force creation of a new resource.
- expires_
at str - Date when the token expires.
- min_
days_ intfor_ renewal - Refresh the token if terraform is run within the specified amount of days before expiration
- name str
- Friendly name of the token's intent.
- zone_
id str - The zone identifier to target for the resource. Conflicts with
account_id.
- account
Id String - The account identifier to target for the resource. Conflicts with
zone_id. - client
Id String - UUID client ID associated with the Service Token. Modifying this attribute will force creation of a new resource.
- client
Secret String - A secret for interacting with Access protocols. Modifying this attribute will force creation of a new resource.
- expires
At String - Date when the token expires.
- min
Days NumberFor Renewal - Refresh the token if terraform is run within the specified amount of days before expiration
- name String
- Friendly name of the token's intent.
- zone
Id String - The zone identifier to target for the resource. Conflicts with
account_id.
Import
If you are importing an Access Service Token you will not have the client_secret available in the state for use. The client_secret is only available once, at creation. In most cases, it is better to just create a new resource should you need to reference it in other resources.
$ pulumi import cloudflare:index/accessServiceToken:AccessServiceToken example <account_id>/<service_token_id>
To learn more about importing existing cloud resources, see Importing resources.
Package Details
- Repository
- Cloudflare pulumi/pulumi-cloudflare
- License
- Apache-2.0
- Notes
- This Pulumi package is based on the
cloudflareTerraform Provider.
published on Monday, Mar 9, 2026 by Pulumi
