published on Tuesday, Oct 27, 2026 by Pulumi
published on Tuesday, Oct 27, 2026 by Pulumi
Use this resource to manage the organisation-level settings that control how New Relic Teams works across your organisation:
- Entity discovery: Automatically assigns entities to teams based on tag values.
- Hierarchy levels: Define and rename the ordered tiers shown in the Teams UI.
- Sync group rules: Automatically creates teams from IdP groups that match name patterns.
NOTE: There is exactly one
TEAMS_ORGANIZATION_SETTINGSentity per New Relic organisation. This resource is import-optional — if you apply it without importing first, the provider automatically locates the singleton, applies your configuration, and emits a warning stating that the existing settings have been overridden.pulumi importis supported for an explicit workflow.
Example Usage
import * as pulumi from "@pulumi/pulumi";
import * as newrelic from "@pulumi/newrelic";
const all = newrelic.getTeamsHierarchyLevels({});
const org = new newrelic.TeamsOrganizationSettings("org", {
discoveryEnabled: true,
discoveryTagKeys: [
"team",
"teamId",
],
hierarchyLevels: [
{
id: all.then(all => all.levels?.[0]?.id),
name: "Division",
},
{
id: all.then(all => all.levels?.[1]?.id),
name: "Squad",
},
],
syncGroupsEnabled: true,
syncGroupRules: {
conditions: [
{
type: "CONTAINS",
value: "-engineering-",
},
{
type: "ENDS_WITH",
value: "-prod",
},
],
},
});
import pulumi
import pulumi_newrelic as newrelic
all = newrelic.get_teams_hierarchy_levels()
org = newrelic.TeamsOrganizationSettings("org",
discovery_enabled=True,
discovery_tag_keys=[
"team",
"teamId",
],
hierarchy_levels=[
{
"id": all.levels[0].id,
"name": "Division",
},
{
"id": all.levels[1].id,
"name": "Squad",
},
],
sync_groups_enabled=True,
sync_group_rules={
"conditions": [
{
"type": "CONTAINS",
"value": "-engineering-",
},
{
"type": "ENDS_WITH",
"value": "-prod",
},
],
})
package main
import (
"github.com/pulumi/pulumi-newrelic/sdk/v5/go/newrelic"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
all, err := newrelic.GetTeamsHierarchyLevels(ctx, map[string]interface{}{}, nil)
if err != nil {
return err
}
_, err = newrelic.NewTeamsOrganizationSettings(ctx, "org", &newrelic.TeamsOrganizationSettingsArgs{
DiscoveryEnabled: pulumi.Bool(true),
DiscoveryTagKeys: pulumi.StringArray{
pulumi.String("team"),
pulumi.String("teamId"),
},
HierarchyLevels: newrelic.TeamsOrganizationSettingsHierarchyLevelArray{
&newrelic.TeamsOrganizationSettingsHierarchyLevelArgs{
Id: pulumi.String(all.Levels[0].Id),
Name: pulumi.String("Division"),
},
&newrelic.TeamsOrganizationSettingsHierarchyLevelArgs{
Id: pulumi.String(all.Levels[1].Id),
Name: pulumi.String("Squad"),
},
},
SyncGroupsEnabled: pulumi.Bool(true),
SyncGroupRules: &newrelic.TeamsOrganizationSettingsSyncGroupRulesArgs{
Conditions: newrelic.TeamsOrganizationSettingsSyncGroupRulesConditionArray{
&newrelic.TeamsOrganizationSettingsSyncGroupRulesConditionArgs{
Type: pulumi.String("CONTAINS"),
Value: pulumi.String("-engineering-"),
},
&newrelic.TeamsOrganizationSettingsSyncGroupRulesConditionArgs{
Type: pulumi.String("ENDS_WITH"),
Value: pulumi.String("-prod"),
},
},
},
})
if err != nil {
return err
}
return nil
})
}
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using NewRelic = Pulumi.NewRelic;
return await Deployment.RunAsync(() =>
{
var all = NewRelic.GetTeamsHierarchyLevels.Invoke();
var org = new NewRelic.TeamsOrganizationSettings("org", new()
{
DiscoveryEnabled = true,
DiscoveryTagKeys = new[]
{
"team",
"teamId",
},
HierarchyLevels = new[]
{
new NewRelic.Inputs.TeamsOrganizationSettingsHierarchyLevelArgs
{
Id = all.Apply(getTeamsHierarchyLevelsResult => getTeamsHierarchyLevelsResult.Levels[0]?.Id),
Name = "Division",
},
new NewRelic.Inputs.TeamsOrganizationSettingsHierarchyLevelArgs
{
Id = all.Apply(getTeamsHierarchyLevelsResult => getTeamsHierarchyLevelsResult.Levels[1]?.Id),
Name = "Squad",
},
},
SyncGroupsEnabled = true,
SyncGroupRules = new NewRelic.Inputs.TeamsOrganizationSettingsSyncGroupRulesArgs
{
Conditions = new[]
{
new NewRelic.Inputs.TeamsOrganizationSettingsSyncGroupRulesConditionArgs
{
Type = "CONTAINS",
Value = "-engineering-",
},
new NewRelic.Inputs.TeamsOrganizationSettingsSyncGroupRulesConditionArgs
{
Type = "ENDS_WITH",
Value = "-prod",
},
},
},
});
});
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.newrelic.NewrelicFunctions;
import com.pulumi.newrelic.TeamsOrganizationSettings;
import com.pulumi.newrelic.TeamsOrganizationSettingsArgs;
import com.pulumi.newrelic.inputs.TeamsOrganizationSettingsHierarchyLevelArgs;
import com.pulumi.newrelic.inputs.TeamsOrganizationSettingsSyncGroupRulesArgs;
import com.pulumi.newrelic.inputs.TeamsOrganizationSettingsSyncGroupRulesConditionArgs;
import java.util.ArrayList;
import java.util.Arrays;
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) {
final var all = NewrelicFunctions.getTeamsHierarchyLevels(%!v(PANIC=Format method: runtime error: invalid memory address or nil pointer dereference);
var org = new TeamsOrganizationSettings("org", TeamsOrganizationSettingsArgs.builder()
.discoveryEnabled(true)
.discoveryTagKeys(
"team",
"teamId")
.hierarchyLevels(
TeamsOrganizationSettingsHierarchyLevelArgs.builder()
.id(all.levels()[0].id())
.name("Division")
.build(),
TeamsOrganizationSettingsHierarchyLevelArgs.builder()
.id(all.levels()[1].id())
.name("Squad")
.build())
.syncGroupsEnabled(true)
.syncGroupRules(TeamsOrganizationSettingsSyncGroupRulesArgs.builder()
.conditions(
TeamsOrganizationSettingsSyncGroupRulesConditionArgs.builder()
.type("CONTAINS")
.value("-engineering-")
.build(),
TeamsOrganizationSettingsSyncGroupRulesConditionArgs.builder()
.type("ENDS_WITH")
.value("-prod")
.build())
.build())
.build());
}
}
resources:
org:
type: newrelic:TeamsOrganizationSettings
properties:
discoveryEnabled: true
discoveryTagKeys:
- team
- teamId
hierarchyLevels:
- id: ${all.levels[0].id}
name: Division
- id: ${all.levels[1].id}
name: Squad
syncGroupsEnabled: true
syncGroupRules:
conditions:
- type: CONTAINS
value: -engineering-
- type: ENDS_WITH
value: -prod
variables:
all:
fn::invoke:
function: newrelic:getTeamsHierarchyLevels
arguments: {}
terraform {
required_providers {
newrelic = {
source = "pulumi/newrelic"
}
}
}
data "newrelic_teams_hierarchy_levels" "all" {
}
resource "newrelic_teams_organization_settings" "org" {
lifecycle {
create_before_destroy = true
}
discovery_enabled = true
discovery_tag_keys = ["team", "teamId"]
hierarchy_levels {
id = data.newrelic_teams_hierarchy_levels.all.levels[0].id
name = "Division"
}
hierarchy_levels {
id = data.newrelic_teams_hierarchy_levels.all.levels[1].id
name = "Squad"
}
sync_groups_enabled = true
sync_group_rules = {
conditions = [{
type = "CONTAINS"
value = "-engineering-"
}, {
type = "ENDS_WITH"
value = "-prod"
}]
}
}
See additional examples below.
Hierarchy Level IDs
Use the newrelic.getTeamsHierarchyLevels data source to discover level GUIDs programmatically:
import * as pulumi from "@pulumi/pulumi";
import * as newrelic from "@pulumi/newrelic";
const all = newrelic.getTeamsHierarchyLevels({});
export const divisionLevelId = all.then(all => all.levels?.[0]?.id);
import pulumi
import pulumi_newrelic as newrelic
all = newrelic.get_teams_hierarchy_levels()
pulumi.export("divisionLevelId", all.levels[0].id)
package main
import (
"github.com/pulumi/pulumi-newrelic/sdk/v5/go/newrelic"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
all, err := newrelic.GetTeamsHierarchyLevels(ctx, map[string]interface{}{}, nil)
if err != nil {
return err
}
ctx.Export("divisionLevelId", all.Levels[0].Id)
return nil
})
}
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using NewRelic = Pulumi.NewRelic;
return await Deployment.RunAsync(() =>
{
var all = NewRelic.GetTeamsHierarchyLevels.Invoke();
return new Dictionary<string, object?>
{
["divisionLevelId"] = all.Apply(getTeamsHierarchyLevelsResult => getTeamsHierarchyLevelsResult.Levels[0]?.Id),
};
});
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.newrelic.NewrelicFunctions;
import java.util.ArrayList;
import java.util.Arrays;
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) {
final var all = NewrelicFunctions.getTeamsHierarchyLevels(%!v(PANIC=Format method: runtime error: invalid memory address or nil pointer dereference);
ctx.export("divisionLevelId", all.levels()[0].id());
}
}
variables:
all:
fn::invoke:
function: newrelic:getTeamsHierarchyLevels
arguments: {}
outputs:
# Reference a level by index
divisionLevelId: ${all.levels[0].id}
terraform {
required_providers {
newrelic = {
source = "pulumi/newrelic"
}
}
}
data "newrelic_teams_hierarchy_levels" "all" {
}
# Reference a level by index
output "divisionLevelId" {
value = data.newrelic_teams_hierarchy_levels.all.levels[0].id
}
Alternatively, each newrelic.Team resource exports a hierarchyLevelId attribute that reflects the level the team is currently assigned to. You can use this to reference a specific level without the data source:
import * as pulumi from "@pulumi/pulumi";
import * as newrelic from "@pulumi/newrelic";
const division = new newrelic.Team("division", {name: "Engineering Division"});
const org = new newrelic.TeamsOrganizationSettings("org", {hierarchyLevels: [{
id: division.hierarchyLevelId,
name: "Division",
}]});
import pulumi
import pulumi_newrelic as newrelic
division = newrelic.Team("division", name="Engineering Division")
org = newrelic.TeamsOrganizationSettings("org", hierarchy_levels=[{
"id": division.hierarchy_level_id,
"name": "Division",
}])
package main
import (
"github.com/pulumi/pulumi-newrelic/sdk/v5/go/newrelic"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
division, err := newrelic.NewTeam(ctx, "division", &newrelic.TeamArgs{
Name: pulumi.String("Engineering Division"),
})
if err != nil {
return err
}
_, err = newrelic.NewTeamsOrganizationSettings(ctx, "org", &newrelic.TeamsOrganizationSettingsArgs{
HierarchyLevels: newrelic.TeamsOrganizationSettingsHierarchyLevelArray{
&newrelic.TeamsOrganizationSettingsHierarchyLevelArgs{
Id: division.HierarchyLevelId,
Name: pulumi.String("Division"),
},
},
})
if err != nil {
return err
}
return nil
})
}
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using NewRelic = Pulumi.NewRelic;
return await Deployment.RunAsync(() =>
{
var division = new NewRelic.Team("division", new()
{
Name = "Engineering Division",
});
var org = new NewRelic.TeamsOrganizationSettings("org", new()
{
HierarchyLevels = new[]
{
new NewRelic.Inputs.TeamsOrganizationSettingsHierarchyLevelArgs
{
Id = division.HierarchyLevelId,
Name = "Division",
},
},
});
});
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.newrelic.Team;
import com.pulumi.newrelic.TeamArgs;
import com.pulumi.newrelic.TeamsOrganizationSettings;
import com.pulumi.newrelic.TeamsOrganizationSettingsArgs;
import com.pulumi.newrelic.inputs.TeamsOrganizationSettingsHierarchyLevelArgs;
import java.util.ArrayList;
import java.util.Arrays;
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 division = new Team("division", TeamArgs.builder()
.name("Engineering Division")
.build());
var org = new TeamsOrganizationSettings("org", TeamsOrganizationSettingsArgs.builder()
.hierarchyLevels(TeamsOrganizationSettingsHierarchyLevelArgs.builder()
.id(division.hierarchyLevelId())
.name("Division")
.build())
.build());
}
}
resources:
division:
type: newrelic:Team
properties:
name: Engineering Division
org:
type: newrelic:TeamsOrganizationSettings
properties:
hierarchyLevels:
- id: ${division.hierarchyLevelId}
name: Division
terraform {
required_providers {
newrelic = {
source = "pulumi/newrelic"
}
}
}
resource "newrelic_team" "division" {
lifecycle {
create_before_destroy = true
}
name = "Engineering Division"
}
resource "newrelic_teams_organization_settings" "org" {
lifecycle {
create_before_destroy = true
}
hierarchy_levels {
id = newrelic_team.division.hierarchy_level_id
name = "Division"
}
}
Additional Examples
Discovery only — no hierarchy configuration
import * as pulumi from "@pulumi/pulumi";
import * as newrelic from "@pulumi/newrelic";
const org = new newrelic.TeamsOrganizationSettings("org", {
discoveryEnabled: true,
discoveryTagKeys: ["team"],
});
import pulumi
import pulumi_newrelic as newrelic
org = newrelic.TeamsOrganizationSettings("org",
discovery_enabled=True,
discovery_tag_keys=["team"])
package main
import (
"github.com/pulumi/pulumi-newrelic/sdk/v5/go/newrelic"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
_, err := newrelic.NewTeamsOrganizationSettings(ctx, "org", &newrelic.TeamsOrganizationSettingsArgs{
DiscoveryEnabled: pulumi.Bool(true),
DiscoveryTagKeys: pulumi.StringArray{
pulumi.String("team"),
},
})
if err != nil {
return err
}
return nil
})
}
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using NewRelic = Pulumi.NewRelic;
return await Deployment.RunAsync(() =>
{
var org = new NewRelic.TeamsOrganizationSettings("org", new()
{
DiscoveryEnabled = true,
DiscoveryTagKeys = new[]
{
"team",
},
});
});
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.newrelic.TeamsOrganizationSettings;
import com.pulumi.newrelic.TeamsOrganizationSettingsArgs;
import java.util.ArrayList;
import java.util.Arrays;
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 org = new TeamsOrganizationSettings("org", TeamsOrganizationSettingsArgs.builder()
.discoveryEnabled(true)
.discoveryTagKeys("team")
.build());
}
}
resources:
org:
type: newrelic:TeamsOrganizationSettings
properties:
discoveryEnabled: true
discoveryTagKeys:
- team
terraform {
required_providers {
newrelic = {
source = "pulumi/newrelic"
}
}
}
resource "newrelic_teams_organization_settings" "org" {
lifecycle {
create_before_destroy = true
}
discovery_enabled = true
discovery_tag_keys = ["team"]
}
Disable all discovery
import * as pulumi from "@pulumi/pulumi";
import * as newrelic from "@pulumi/newrelic";
const org = new newrelic.TeamsOrganizationSettings("org", {discoveryEnabled: false});
import pulumi
import pulumi_newrelic as newrelic
org = newrelic.TeamsOrganizationSettings("org", discovery_enabled=False)
package main
import (
"github.com/pulumi/pulumi-newrelic/sdk/v5/go/newrelic"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
_, err := newrelic.NewTeamsOrganizationSettings(ctx, "org", &newrelic.TeamsOrganizationSettingsArgs{
DiscoveryEnabled: pulumi.Bool(false),
})
if err != nil {
return err
}
return nil
})
}
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using NewRelic = Pulumi.NewRelic;
return await Deployment.RunAsync(() =>
{
var org = new NewRelic.TeamsOrganizationSettings("org", new()
{
DiscoveryEnabled = false,
});
});
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.newrelic.TeamsOrganizationSettings;
import com.pulumi.newrelic.TeamsOrganizationSettingsArgs;
import java.util.ArrayList;
import java.util.Arrays;
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 org = new TeamsOrganizationSettings("org", TeamsOrganizationSettingsArgs.builder()
.discoveryEnabled(false)
.build());
}
}
resources:
org:
type: newrelic:TeamsOrganizationSettings
properties:
discoveryEnabled: false
terraform {
required_providers {
newrelic = {
source = "pulumi/newrelic"
}
}
}
resource "newrelic_teams_organization_settings" "org" {
lifecycle {
create_before_destroy = true
}
discovery_enabled = false
}
Create TeamsOrganizationSettings Resource
Resources are created with functions called constructors. To learn more about declaring and configuring resources, see Resources.
Constructor syntax
new TeamsOrganizationSettings(name: string, args?: TeamsOrganizationSettingsArgs, opts?: CustomResourceOptions);@overload
def TeamsOrganizationSettings(resource_name: str,
args: Optional[TeamsOrganizationSettingsArgs] = None,
opts: Optional[ResourceOptions] = None)
@overload
def TeamsOrganizationSettings(resource_name: str,
opts: Optional[ResourceOptions] = None,
discovery_enabled: Optional[bool] = None,
discovery_tag_keys: Optional[Sequence[str]] = None,
hierarchy_levels: Optional[Sequence[TeamsOrganizationSettingsHierarchyLevelArgs]] = None,
sync_group_rules: Optional[TeamsOrganizationSettingsSyncGroupRulesArgs] = None,
sync_groups_enabled: Optional[bool] = None)func NewTeamsOrganizationSettings(ctx *Context, name string, args *TeamsOrganizationSettingsArgs, opts ...ResourceOption) (*TeamsOrganizationSettings, error)public TeamsOrganizationSettings(string name, TeamsOrganizationSettingsArgs? args = null, CustomResourceOptions? opts = null)
public TeamsOrganizationSettings(String name, TeamsOrganizationSettingsArgs args)
public TeamsOrganizationSettings(String name, TeamsOrganizationSettingsArgs args, CustomResourceOptions options)
type: newrelic:TeamsOrganizationSettings
properties: # The arguments to resource properties.
options: # Bag of options to control resource's behavior.
resource "newrelic_teams_organization_settings" "name" {
# resource properties
}Parameters
- name string
- The unique name of the resource.
- args TeamsOrganizationSettingsArgs
- 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 TeamsOrganizationSettingsArgs
- 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 TeamsOrganizationSettingsArgs
- The arguments to resource properties.
- opts ResourceOption
- Bag of options to control resource's behavior.
- name string
- The unique name of the resource.
- args TeamsOrganizationSettingsArgs
- The arguments to resource properties.
- opts CustomResourceOptions
- Bag of options to control resource's behavior.
- name String
- The unique name of the resource.
- args TeamsOrganizationSettingsArgs
- 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 teamsOrganizationSettingsResource = new NewRelic.TeamsOrganizationSettings("teamsOrganizationSettingsResource", new()
{
DiscoveryEnabled = false,
DiscoveryTagKeys = new[]
{
"string",
},
HierarchyLevels = new[]
{
new NewRelic.Inputs.TeamsOrganizationSettingsHierarchyLevelArgs
{
Id = "string",
Name = "string",
},
},
SyncGroupRules = new NewRelic.Inputs.TeamsOrganizationSettingsSyncGroupRulesArgs
{
Conditions = new[]
{
new NewRelic.Inputs.TeamsOrganizationSettingsSyncGroupRulesConditionArgs
{
Type = "string",
Value = "string",
},
},
},
SyncGroupsEnabled = false,
});
example, err := newrelic.NewTeamsOrganizationSettings(ctx, "teamsOrganizationSettingsResource", &newrelic.TeamsOrganizationSettingsArgs{
DiscoveryEnabled: pulumi.Bool(false),
DiscoveryTagKeys: pulumi.StringArray{
pulumi.String("string"),
},
HierarchyLevels: newrelic.TeamsOrganizationSettingsHierarchyLevelArray{
&newrelic.TeamsOrganizationSettingsHierarchyLevelArgs{
Id: pulumi.String("string"),
Name: pulumi.String("string"),
},
},
SyncGroupRules: &newrelic.TeamsOrganizationSettingsSyncGroupRulesArgs{
Conditions: newrelic.TeamsOrganizationSettingsSyncGroupRulesConditionArray{
&newrelic.TeamsOrganizationSettingsSyncGroupRulesConditionArgs{
Type: pulumi.String("string"),
Value: pulumi.String("string"),
},
},
},
SyncGroupsEnabled: pulumi.Bool(false),
})
resource "newrelic_teams_organization_settings" "teamsOrganizationSettingsResource" {
lifecycle {
create_before_destroy = true
}
discovery_enabled = false
discovery_tag_keys = ["string"]
hierarchy_levels {
id = "string"
name = "string"
}
sync_group_rules = {
conditions = [{
type = "string"
value = "string"
}]
}
sync_groups_enabled = false
}
var teamsOrganizationSettingsResource = new TeamsOrganizationSettings("teamsOrganizationSettingsResource", TeamsOrganizationSettingsArgs.builder()
.discoveryEnabled(false)
.discoveryTagKeys("string")
.hierarchyLevels(TeamsOrganizationSettingsHierarchyLevelArgs.builder()
.id("string")
.name("string")
.build())
.syncGroupRules(TeamsOrganizationSettingsSyncGroupRulesArgs.builder()
.conditions(TeamsOrganizationSettingsSyncGroupRulesConditionArgs.builder()
.type("string")
.value("string")
.build())
.build())
.syncGroupsEnabled(false)
.build());
teams_organization_settings_resource = newrelic.TeamsOrganizationSettings("teamsOrganizationSettingsResource",
discovery_enabled=False,
discovery_tag_keys=["string"],
hierarchy_levels=[{
"id": "string",
"name": "string",
}],
sync_group_rules={
"conditions": [{
"type": "string",
"value": "string",
}],
},
sync_groups_enabled=False)
const teamsOrganizationSettingsResource = new newrelic.TeamsOrganizationSettings("teamsOrganizationSettingsResource", {
discoveryEnabled: false,
discoveryTagKeys: ["string"],
hierarchyLevels: [{
id: "string",
name: "string",
}],
syncGroupRules: {
conditions: [{
type: "string",
value: "string",
}],
},
syncGroupsEnabled: false,
});
type: newrelic:TeamsOrganizationSettings
properties:
discoveryEnabled: false
discoveryTagKeys:
- string
hierarchyLevels:
- id: string
name: string
syncGroupRules:
conditions:
- type: string
value: string
syncGroupsEnabled: false
TeamsOrganizationSettings 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 TeamsOrganizationSettings resource accepts the following input properties:
- Discovery
Enabled bool - Whether tag-based entity discovery is enabled. When true, entities with a matching tag are automatically assigned to teams.
- Discovery
Tag List<string>Keys - Tag keys used for entity discovery (e.g. ["team"]). Entities with these tags are auto-assigned to the team whose name or alias matches the tag value. Must contain at least one key when declared.
- Hierarchy
Levels List<Pulumi.New Relic. Inputs. Teams Organization Settings Hierarchy Level> - Set of organisation hierarchy levels to manage. Order is not significant — the platform controls hierarchy depth ordering automatically. Use the newrelic.getTeamsHierarchyLevels data source to obtain level GUIDs.
- Sync
Group Pulumi.Rules New Relic. Inputs. Teams Organization Settings Sync Group Rules - Rules that control which IdP groups automatically create teams. Each rule specifies one or more match conditions. Omitting this block preserves existing rules; set to [] to remove all rules. The NGEP API currently allows at most one rule.
- Sync
Groups boolEnabled - Whether automatic team creation from IdP groups is enabled.
- Discovery
Enabled bool - Whether tag-based entity discovery is enabled. When true, entities with a matching tag are automatically assigned to teams.
- Discovery
Tag []stringKeys - Tag keys used for entity discovery (e.g. ["team"]). Entities with these tags are auto-assigned to the team whose name or alias matches the tag value. Must contain at least one key when declared.
- Hierarchy
Levels []TeamsOrganization Settings Hierarchy Level Args - Set of organisation hierarchy levels to manage. Order is not significant — the platform controls hierarchy depth ordering automatically. Use the newrelic.getTeamsHierarchyLevels data source to obtain level GUIDs.
- Sync
Group TeamsRules Organization Settings Sync Group Rules Args - Rules that control which IdP groups automatically create teams. Each rule specifies one or more match conditions. Omitting this block preserves existing rules; set to [] to remove all rules. The NGEP API currently allows at most one rule.
- Sync
Groups boolEnabled - Whether automatic team creation from IdP groups is enabled.
- discovery_
enabled bool - Whether tag-based entity discovery is enabled. When true, entities with a matching tag are automatically assigned to teams.
- discovery_
tag_ list(string)keys - Tag keys used for entity discovery (e.g. ["team"]). Entities with these tags are auto-assigned to the team whose name or alias matches the tag value. Must contain at least one key when declared.
- hierarchy_
levels list(object) - Set of organisation hierarchy levels to manage. Order is not significant — the platform controls hierarchy depth ordering automatically. Use the newrelic.getTeamsHierarchyLevels data source to obtain level GUIDs.
- sync_
group_ objectrules - Rules that control which IdP groups automatically create teams. Each rule specifies one or more match conditions. Omitting this block preserves existing rules; set to [] to remove all rules. The NGEP API currently allows at most one rule.
- sync_
groups_ boolenabled - Whether automatic team creation from IdP groups is enabled.
- discovery
Enabled Boolean - Whether tag-based entity discovery is enabled. When true, entities with a matching tag are automatically assigned to teams.
- discovery
Tag List<String>Keys - Tag keys used for entity discovery (e.g. ["team"]). Entities with these tags are auto-assigned to the team whose name or alias matches the tag value. Must contain at least one key when declared.
- hierarchy
Levels List<TeamsOrganization Settings Hierarchy Level> - Set of organisation hierarchy levels to manage. Order is not significant — the platform controls hierarchy depth ordering automatically. Use the newrelic.getTeamsHierarchyLevels data source to obtain level GUIDs.
- sync
Group TeamsRules Organization Settings Sync Group Rules - Rules that control which IdP groups automatically create teams. Each rule specifies one or more match conditions. Omitting this block preserves existing rules; set to [] to remove all rules. The NGEP API currently allows at most one rule.
- sync
Groups BooleanEnabled - Whether automatic team creation from IdP groups is enabled.
- discovery
Enabled boolean - Whether tag-based entity discovery is enabled. When true, entities with a matching tag are automatically assigned to teams.
- discovery
Tag string[]Keys - Tag keys used for entity discovery (e.g. ["team"]). Entities with these tags are auto-assigned to the team whose name or alias matches the tag value. Must contain at least one key when declared.
- hierarchy
Levels TeamsOrganization Settings Hierarchy Level[] - Set of organisation hierarchy levels to manage. Order is not significant — the platform controls hierarchy depth ordering automatically. Use the newrelic.getTeamsHierarchyLevels data source to obtain level GUIDs.
- sync
Group TeamsRules Organization Settings Sync Group Rules - Rules that control which IdP groups automatically create teams. Each rule specifies one or more match conditions. Omitting this block preserves existing rules; set to [] to remove all rules. The NGEP API currently allows at most one rule.
- sync
Groups booleanEnabled - Whether automatic team creation from IdP groups is enabled.
- discovery_
enabled bool - Whether tag-based entity discovery is enabled. When true, entities with a matching tag are automatically assigned to teams.
- discovery_
tag_ Sequence[str]keys - Tag keys used for entity discovery (e.g. ["team"]). Entities with these tags are auto-assigned to the team whose name or alias matches the tag value. Must contain at least one key when declared.
- hierarchy_
levels Sequence[TeamsOrganization Settings Hierarchy Level Args] - Set of organisation hierarchy levels to manage. Order is not significant — the platform controls hierarchy depth ordering automatically. Use the newrelic.getTeamsHierarchyLevels data source to obtain level GUIDs.
- sync_
group_ Teamsrules Organization Settings Sync Group Rules Args - Rules that control which IdP groups automatically create teams. Each rule specifies one or more match conditions. Omitting this block preserves existing rules; set to [] to remove all rules. The NGEP API currently allows at most one rule.
- sync_
groups_ boolenabled - Whether automatic team creation from IdP groups is enabled.
- discovery
Enabled Boolean - Whether tag-based entity discovery is enabled. When true, entities with a matching tag are automatically assigned to teams.
- discovery
Tag List<String>Keys - Tag keys used for entity discovery (e.g. ["team"]). Entities with these tags are auto-assigned to the team whose name or alias matches the tag value. Must contain at least one key when declared.
- hierarchy
Levels List<Property Map> - Set of organisation hierarchy levels to manage. Order is not significant — the platform controls hierarchy depth ordering automatically. Use the newrelic.getTeamsHierarchyLevels data source to obtain level GUIDs.
- sync
Group Property MapRules - Rules that control which IdP groups automatically create teams. Each rule specifies one or more match conditions. Omitting this block preserves existing rules; set to [] to remove all rules. The NGEP API currently allows at most one rule.
- sync
Groups BooleanEnabled - Whether automatic team creation from IdP groups is enabled.
Outputs
All input properties are implicitly available as output properties. Additionally, the TeamsOrganizationSettings resource produces the following output properties:
- Id string
- The provider-assigned unique ID for this managed resource.
- Id string
- The provider-assigned unique ID for this managed resource.
- id string
- The provider-assigned unique ID for this managed resource.
- id String
- The provider-assigned unique ID for this managed resource.
- id string
- The provider-assigned unique ID for this managed resource.
- id str
- The provider-assigned unique ID for this managed resource.
- id String
- The provider-assigned unique ID for this managed resource.
Look up Existing TeamsOrganizationSettings Resource
Get an existing TeamsOrganizationSettings 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?: TeamsOrganizationSettingsState, opts?: CustomResourceOptions): TeamsOrganizationSettings@staticmethod
def get(resource_name: str,
id: str,
opts: Optional[ResourceOptions] = None,
discovery_enabled: Optional[bool] = None,
discovery_tag_keys: Optional[Sequence[str]] = None,
hierarchy_levels: Optional[Sequence[TeamsOrganizationSettingsHierarchyLevelArgs]] = None,
sync_group_rules: Optional[TeamsOrganizationSettingsSyncGroupRulesArgs] = None,
sync_groups_enabled: Optional[bool] = None) -> TeamsOrganizationSettingsfunc GetTeamsOrganizationSettings(ctx *Context, name string, id IDInput, state *TeamsOrganizationSettingsState, opts ...ResourceOption) (*TeamsOrganizationSettings, error)public static TeamsOrganizationSettings Get(string name, Input<string> id, TeamsOrganizationSettingsState? state, CustomResourceOptions? opts = null)public static TeamsOrganizationSettings get(String name, Output<String> id, TeamsOrganizationSettingsState state, CustomResourceOptions options)resources: _: type: newrelic:TeamsOrganizationSettings get: id: ${id}import {
to = newrelic_teams_organization_settings.example
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.
- Discovery
Enabled bool - Whether tag-based entity discovery is enabled. When true, entities with a matching tag are automatically assigned to teams.
- Discovery
Tag List<string>Keys - Tag keys used for entity discovery (e.g. ["team"]). Entities with these tags are auto-assigned to the team whose name or alias matches the tag value. Must contain at least one key when declared.
- Hierarchy
Levels List<Pulumi.New Relic. Inputs. Teams Organization Settings Hierarchy Level> - Set of organisation hierarchy levels to manage. Order is not significant — the platform controls hierarchy depth ordering automatically. Use the newrelic.getTeamsHierarchyLevels data source to obtain level GUIDs.
- Sync
Group Pulumi.Rules New Relic. Inputs. Teams Organization Settings Sync Group Rules - Rules that control which IdP groups automatically create teams. Each rule specifies one or more match conditions. Omitting this block preserves existing rules; set to [] to remove all rules. The NGEP API currently allows at most one rule.
- Sync
Groups boolEnabled - Whether automatic team creation from IdP groups is enabled.
- Discovery
Enabled bool - Whether tag-based entity discovery is enabled. When true, entities with a matching tag are automatically assigned to teams.
- Discovery
Tag []stringKeys - Tag keys used for entity discovery (e.g. ["team"]). Entities with these tags are auto-assigned to the team whose name or alias matches the tag value. Must contain at least one key when declared.
- Hierarchy
Levels []TeamsOrganization Settings Hierarchy Level Args - Set of organisation hierarchy levels to manage. Order is not significant — the platform controls hierarchy depth ordering automatically. Use the newrelic.getTeamsHierarchyLevels data source to obtain level GUIDs.
- Sync
Group TeamsRules Organization Settings Sync Group Rules Args - Rules that control which IdP groups automatically create teams. Each rule specifies one or more match conditions. Omitting this block preserves existing rules; set to [] to remove all rules. The NGEP API currently allows at most one rule.
- Sync
Groups boolEnabled - Whether automatic team creation from IdP groups is enabled.
- discovery_
enabled bool - Whether tag-based entity discovery is enabled. When true, entities with a matching tag are automatically assigned to teams.
- discovery_
tag_ list(string)keys - Tag keys used for entity discovery (e.g. ["team"]). Entities with these tags are auto-assigned to the team whose name or alias matches the tag value. Must contain at least one key when declared.
- hierarchy_
levels list(object) - Set of organisation hierarchy levels to manage. Order is not significant — the platform controls hierarchy depth ordering automatically. Use the newrelic.getTeamsHierarchyLevels data source to obtain level GUIDs.
- sync_
group_ objectrules - Rules that control which IdP groups automatically create teams. Each rule specifies one or more match conditions. Omitting this block preserves existing rules; set to [] to remove all rules. The NGEP API currently allows at most one rule.
- sync_
groups_ boolenabled - Whether automatic team creation from IdP groups is enabled.
- discovery
Enabled Boolean - Whether tag-based entity discovery is enabled. When true, entities with a matching tag are automatically assigned to teams.
- discovery
Tag List<String>Keys - Tag keys used for entity discovery (e.g. ["team"]). Entities with these tags are auto-assigned to the team whose name or alias matches the tag value. Must contain at least one key when declared.
- hierarchy
Levels List<TeamsOrganization Settings Hierarchy Level> - Set of organisation hierarchy levels to manage. Order is not significant — the platform controls hierarchy depth ordering automatically. Use the newrelic.getTeamsHierarchyLevels data source to obtain level GUIDs.
- sync
Group TeamsRules Organization Settings Sync Group Rules - Rules that control which IdP groups automatically create teams. Each rule specifies one or more match conditions. Omitting this block preserves existing rules; set to [] to remove all rules. The NGEP API currently allows at most one rule.
- sync
Groups BooleanEnabled - Whether automatic team creation from IdP groups is enabled.
- discovery
Enabled boolean - Whether tag-based entity discovery is enabled. When true, entities with a matching tag are automatically assigned to teams.
- discovery
Tag string[]Keys - Tag keys used for entity discovery (e.g. ["team"]). Entities with these tags are auto-assigned to the team whose name or alias matches the tag value. Must contain at least one key when declared.
- hierarchy
Levels TeamsOrganization Settings Hierarchy Level[] - Set of organisation hierarchy levels to manage. Order is not significant — the platform controls hierarchy depth ordering automatically. Use the newrelic.getTeamsHierarchyLevels data source to obtain level GUIDs.
- sync
Group TeamsRules Organization Settings Sync Group Rules - Rules that control which IdP groups automatically create teams. Each rule specifies one or more match conditions. Omitting this block preserves existing rules; set to [] to remove all rules. The NGEP API currently allows at most one rule.
- sync
Groups booleanEnabled - Whether automatic team creation from IdP groups is enabled.
- discovery_
enabled bool - Whether tag-based entity discovery is enabled. When true, entities with a matching tag are automatically assigned to teams.
- discovery_
tag_ Sequence[str]keys - Tag keys used for entity discovery (e.g. ["team"]). Entities with these tags are auto-assigned to the team whose name or alias matches the tag value. Must contain at least one key when declared.
- hierarchy_
levels Sequence[TeamsOrganization Settings Hierarchy Level Args] - Set of organisation hierarchy levels to manage. Order is not significant — the platform controls hierarchy depth ordering automatically. Use the newrelic.getTeamsHierarchyLevels data source to obtain level GUIDs.
- sync_
group_ Teamsrules Organization Settings Sync Group Rules Args - Rules that control which IdP groups automatically create teams. Each rule specifies one or more match conditions. Omitting this block preserves existing rules; set to [] to remove all rules. The NGEP API currently allows at most one rule.
- sync_
groups_ boolenabled - Whether automatic team creation from IdP groups is enabled.
- discovery
Enabled Boolean - Whether tag-based entity discovery is enabled. When true, entities with a matching tag are automatically assigned to teams.
- discovery
Tag List<String>Keys - Tag keys used for entity discovery (e.g. ["team"]). Entities with these tags are auto-assigned to the team whose name or alias matches the tag value. Must contain at least one key when declared.
- hierarchy
Levels List<Property Map> - Set of organisation hierarchy levels to manage. Order is not significant — the platform controls hierarchy depth ordering automatically. Use the newrelic.getTeamsHierarchyLevels data source to obtain level GUIDs.
- sync
Group Property MapRules - Rules that control which IdP groups automatically create teams. Each rule specifies one or more match conditions. Omitting this block preserves existing rules; set to [] to remove all rules. The NGEP API currently allows at most one rule.
- sync
Groups BooleanEnabled - Whether automatic team creation from IdP groups is enabled.
Supporting Types
TeamsOrganizationSettingsHierarchyLevel, TeamsOrganizationSettingsHierarchyLevelArgs
TeamsOrganizationSettingsSyncGroupRules, TeamsOrganizationSettingsSyncGroupRulesArgs
- Conditions
List<Pulumi.
New Relic. Inputs. Teams Organization Settings Sync Group Rules Condition> - Conditions that a group name must satisfy for this rule to apply.
- Conditions
[]Teams
Organization Settings Sync Group Rules Condition - Conditions that a group name must satisfy for this rule to apply.
- conditions list(object)
- Conditions that a group name must satisfy for this rule to apply.
- conditions
List<Teams
Organization Settings Sync Group Rules Condition> - Conditions that a group name must satisfy for this rule to apply.
- conditions
Teams
Organization Settings Sync Group Rules Condition[] - Conditions that a group name must satisfy for this rule to apply.
- conditions
Sequence[Teams
Organization Settings Sync Group Rules Condition] - Conditions that a group name must satisfy for this rule to apply.
- conditions List<Property Map>
- Conditions that a group name must satisfy for this rule to apply.
TeamsOrganizationSettingsSyncGroupRulesCondition, TeamsOrganizationSettingsSyncGroupRulesConditionArgs
Import
The organisation settings singleton must be imported using its entity GUID. Discover the GUID with NerdGraph:
{
actor {
entityManagement {
entitySearch(query: "type = 'TEAMS_ORGANIZATION_SETTINGS'") {
entities { id name }
}
}
}
}
Then import:
$ pulumi import newrelic:index/teamsOrganizationSettings:TeamsOrganizationSettings org <guid>
To learn more about importing existing cloud resources, see Importing resources.
Package Details
- Repository
- New Relic pulumi/pulumi-newrelic
- License
- Apache-2.0
- Notes
- This Pulumi package is based on the
newrelicTerraform Provider.
published on Tuesday, Oct 27, 2026 by Pulumi