Viewing docs for PagerDuty v4.30.4
published on Friday, Mar 13, 2026 by Pulumi
published on Friday, Mar 13, 2026 by Pulumi
Pagerduty Provider
Viewing docs for PagerDuty v4.30.4
published on Friday, Mar 13, 2026 by Pulumi
published on Friday, Mar 13, 2026 by Pulumi
Installation
The Pagerduty provider is available as a package in all Pulumi languages:
- JavaScript/TypeScript:
@pulumi/pagerduty - Python:
pulumi-pagerduty - Go:
github.com/pulumi/pulumi-pagerduty/sdk/v4/go/pagerduty - .NET:
Pulumi.Pagerduty - Java:
com.pulumi/pagerduty
Overview
PagerDuty is an incident management platform that provides reliable notifications, automatic escalations, on-call scheduling, and other functionality to help teams detect and address unplanned work in real-time.
Use the navigation to the left to read about the available resources.
Example Usage
# Pulumi.yaml provider configuration file
name: configuration-example
runtime: nodejs
config:
pagerduty:token:
value: 'TODO: var.pagerduty_token'
import * as pulumi from "@pulumi/pulumi";
import * as pagerduty from "@pulumi/pagerduty";
// Create a PagerDuty team
const engineering = new pagerduty.Team("engineering", {
name: "Engineering",
description: "All engineering",
});
// Create a PagerDuty user
const earline = new pagerduty.User("earline", {
name: "Earline Greenholt",
email: "125.greenholt.earline@graham.name",
});
// Create a team membership
const earlineEngineering = new pagerduty.TeamMembership("earline_engineering", {
userId: earline.id,
teamId: engineering.id,
});
# Pulumi.yaml provider configuration file
name: configuration-example
runtime: python
config:
pagerduty:token:
value: 'TODO: var.pagerduty_token'
import pulumi
import pulumi_pagerduty as pagerduty
# Create a PagerDuty team
engineering = pagerduty.Team("engineering",
name="Engineering",
description="All engineering")
# Create a PagerDuty user
earline = pagerduty.User("earline",
name="Earline Greenholt",
email="125.greenholt.earline@graham.name")
# Create a team membership
earline_engineering = pagerduty.TeamMembership("earline_engineering",
user_id=earline.id,
team_id=engineering.id)
# Pulumi.yaml provider configuration file
name: configuration-example
runtime: dotnet
config:
pagerduty:token:
value: 'TODO: var.pagerduty_token'
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Pagerduty = Pulumi.Pagerduty;
return await Deployment.RunAsync(() =>
{
// Create a PagerDuty team
var engineering = new Pagerduty.Team("engineering", new()
{
Name = "Engineering",
Description = "All engineering",
});
// Create a PagerDuty user
var earline = new Pagerduty.User("earline", new()
{
Name = "Earline Greenholt",
Email = "125.greenholt.earline@graham.name",
});
// Create a team membership
var earlineEngineering = new Pagerduty.TeamMembership("earline_engineering", new()
{
UserId = earline.Id,
TeamId = engineering.Id,
});
});
# Pulumi.yaml provider configuration file
name: configuration-example
runtime: go
config:
pagerduty:token:
value: 'TODO: var.pagerduty_token'
package main
import (
"github.com/pulumi/pulumi-pagerduty/sdk/v4/go/pagerduty"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
// Create a PagerDuty team
engineering, err := pagerduty.NewTeam(ctx, "engineering", &pagerduty.TeamArgs{
Name: pulumi.String("Engineering"),
Description: pulumi.String("All engineering"),
})
if err != nil {
return err
}
// Create a PagerDuty user
earline, err := pagerduty.NewUser(ctx, "earline", &pagerduty.UserArgs{
Name: pulumi.String("Earline Greenholt"),
Email: pulumi.String("125.greenholt.earline@graham.name"),
})
if err != nil {
return err
}
// Create a team membership
_, err = pagerduty.NewTeamMembership(ctx, "earline_engineering", &pagerduty.TeamMembershipArgs{
UserId: earline.ID(),
TeamId: engineering.ID(),
})
if err != nil {
return err
}
return nil
})
}
# Pulumi.yaml provider configuration file
name: configuration-example
runtime: yaml
config:
pagerduty:token:
value: 'TODO: var.pagerduty_token'
resources:
# Create a PagerDuty team
engineering:
type: pagerduty:Team
properties:
name: Engineering
description: All engineering
# Create a PagerDuty user
earline:
type: pagerduty:User
properties:
name: Earline Greenholt
email: 125.greenholt.earline@graham.name
# Create a team membership
earlineEngineering:
type: pagerduty:TeamMembership
name: earline_engineering
properties:
userId: ${earline.id}
teamId: ${engineering.id}
# Pulumi.yaml provider configuration file
name: configuration-example
runtime: java
config:
pagerduty:token:
value: 'TODO: var.pagerduty_token'
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.pagerduty.Team;
import com.pulumi.pagerduty.TeamArgs;
import com.pulumi.pagerduty.User;
import com.pulumi.pagerduty.UserArgs;
import com.pulumi.pagerduty.TeamMembership;
import com.pulumi.pagerduty.TeamMembershipArgs;
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) {
// Create a PagerDuty team
var engineering = new Team("engineering", TeamArgs.builder()
.name("Engineering")
.description("All engineering")
.build());
// Create a PagerDuty user
var earline = new User("earline", UserArgs.builder()
.name("Earline Greenholt")
.email("125.greenholt.earline@graham.name")
.build());
// Create a team membership
var earlineEngineering = new TeamMembership("earlineEngineering", TeamMembershipArgs.builder()
.userId(earline.id())
.teamId(engineering.id())
.build());
}
}
Configuration Reference
The following configuration inputs are supported:
token- (Optional) The v2 authorization token. It can also be sourced from thePAGERDUTY_TOKENenvironment variable. See API Documentationfor more information.userToken- (Optional) The v2 user level authorization token. It can also be sourced from thePAGERDUTY_USER_TOKENenvironment variable. See API Documentation for more information.useAppOauthScopedToken- (Optional) Defines the configuration needed for making use of App Oauth Scoped API token for authenticating API calls.skipCredentialsValidation- (Optional) Skip validation of the token against the PagerDuty API.serviceRegion- (Optional) The PagerDuty service region to use. Default to empty (uses US region). Supported value:eu. This setting also affects configuration ofuseAppOauthScopedTokenfor setting Region of App Oauth token credentials. It can also be sourced from thePAGERDUTY_SERVICE_REGIONenvironment variable.apiUrlOverride- (Optional) It can be used to set a custom proxy endpoint as PagerDuty client api url overridingserviceRegionsetup.insecureTls- (Optional) Can be used to disable TLS certificate checking when calling the PagerDuty API. This can be useful if you’re behind a corporate proxy.
The useAppOauthScopedToken input has the following nested fields:
pdClientId- (Required) An identifier issued when the Scoped OAuth client was added to a PagerDuty App. It can also be sourced from thePAGERDUTY_CLIENT_IDenvironment variable.pdClientSecret- (Required) A secret issued when the Scoped OAuth client was added to a PagerDuty App. It can also be sourced from thePAGERDUTY_CLIENT_SECRETenvironment variable.pdSubdomain- (Required) Your PagerDuty account subdomain; i.e: If the URL shown by the Browser when you are in your PagerDuty account is some like: https://acme.pagerduty.com, then your PagerDuty subdomain isacme. It can also be sourced from thePAGERDUTY_SUBDOMAINenvironment variable.
Example using App Oauth scoped token
# Pulumi.yaml provider configuration file
name: configuration-example
runtime: nodejs
import * as pulumi from "@pulumi/pulumi";
import * as pagerduty from "@pulumi/pagerduty";
// Create a PagerDuty team
const engineering = new pagerduty.Team("engineering", {
name: "Engineering",
description: "All engineering",
});
// Create a PagerDuty user
const earline = new pagerduty.User("earline", {
name: "Earline Greenholt",
email: "125.greenholt.earline@graham.name",
});
// Create a team membership
const earlineEngineering = new pagerduty.TeamMembership("earline_engineering", {
userId: earline.id,
teamId: engineering.id,
});
# Pulumi.yaml provider configuration file
name: configuration-example
runtime: python
import pulumi
import pulumi_pagerduty as pagerduty
# Create a PagerDuty team
engineering = pagerduty.Team("engineering",
name="Engineering",
description="All engineering")
# Create a PagerDuty user
earline = pagerduty.User("earline",
name="Earline Greenholt",
email="125.greenholt.earline@graham.name")
# Create a team membership
earline_engineering = pagerduty.TeamMembership("earline_engineering",
user_id=earline.id,
team_id=engineering.id)
# Pulumi.yaml provider configuration file
name: configuration-example
runtime: dotnet
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Pagerduty = Pulumi.Pagerduty;
return await Deployment.RunAsync(() =>
{
// Create a PagerDuty team
var engineering = new Pagerduty.Team("engineering", new()
{
Name = "Engineering",
Description = "All engineering",
});
// Create a PagerDuty user
var earline = new Pagerduty.User("earline", new()
{
Name = "Earline Greenholt",
Email = "125.greenholt.earline@graham.name",
});
// Create a team membership
var earlineEngineering = new Pagerduty.TeamMembership("earline_engineering", new()
{
UserId = earline.Id,
TeamId = engineering.Id,
});
});
# Pulumi.yaml provider configuration file
name: configuration-example
runtime: go
package main
import (
"github.com/pulumi/pulumi-pagerduty/sdk/v4/go/pagerduty"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
// Create a PagerDuty team
engineering, err := pagerduty.NewTeam(ctx, "engineering", &pagerduty.TeamArgs{
Name: pulumi.String("Engineering"),
Description: pulumi.String("All engineering"),
})
if err != nil {
return err
}
// Create a PagerDuty user
earline, err := pagerduty.NewUser(ctx, "earline", &pagerduty.UserArgs{
Name: pulumi.String("Earline Greenholt"),
Email: pulumi.String("125.greenholt.earline@graham.name"),
})
if err != nil {
return err
}
// Create a team membership
_, err = pagerduty.NewTeamMembership(ctx, "earline_engineering", &pagerduty.TeamMembershipArgs{
UserId: earline.ID(),
TeamId: engineering.ID(),
})
if err != nil {
return err
}
return nil
})
}
# Pulumi.yaml provider configuration file
name: configuration-example
runtime: yaml
resources:
# Create a PagerDuty team
engineering:
type: pagerduty:Team
properties:
name: Engineering
description: All engineering
# Create a PagerDuty user
earline:
type: pagerduty:User
properties:
name: Earline Greenholt
email: 125.greenholt.earline@graham.name
# Create a team membership
earlineEngineering:
type: pagerduty:TeamMembership
name: earline_engineering
properties:
userId: ${earline.id}
teamId: ${engineering.id}
# Pulumi.yaml provider configuration file
name: configuration-example
runtime: java
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.pagerduty.Team;
import com.pulumi.pagerduty.TeamArgs;
import com.pulumi.pagerduty.User;
import com.pulumi.pagerduty.UserArgs;
import com.pulumi.pagerduty.TeamMembership;
import com.pulumi.pagerduty.TeamMembershipArgs;
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) {
// Create a PagerDuty team
var engineering = new Team("engineering", TeamArgs.builder()
.name("Engineering")
.description("All engineering")
.build());
// Create a PagerDuty user
var earline = new User("earline", UserArgs.builder()
.name("Earline Greenholt")
.email("125.greenholt.earline@graham.name")
.build());
// Create a team membership
var earlineEngineering = new TeamMembership("earlineEngineering", TeamMembershipArgs.builder()
.userId(earline.id())
.teamId(engineering.id())
.build());
}
}
Viewing docs for PagerDuty v4.30.4
published on Friday, Mar 13, 2026 by Pulumi
published on Friday, Mar 13, 2026 by Pulumi
