• /
  • EnglishEspañolFrançais日本語한국어Português
  • Se connecterDémarrer

Cette traduction automatique est fournie pour votre commodité.

En cas d'incohérence entre la version anglaise et la version traduite, la version anglaise prévaudra. Veuillez visiter cette page pour plus d'informations.

Créer un problème

Tutoriel NerdGraph : créer des équipes

Comme alternative à la configuration des équipes New Relic dans l'UI, vous pouvez les configurer par programmation avec notre API NerdGraph.

Pour démarrer facilement, utilisez notre explorateur d'API NerdGraph pour créer et modifier les informations des équipes. Des définitions sont disponibles dans NerdGraph pour chacun des champs dans les exemples ci-dessous. Si vous avez besoin d'aide pour utiliser l'IDE GraphiQL, consultez notre didacticiel sur l'explorateur d'API NerdGraph.

Créer une équipe

Voici un exemple d’appel NerdGraph qui crée une équipe à l’aide de la requête de mutation entityManagementCreateTeam .

mutation {
entityManagementCreateTeam(
teamEntity: {
name: "INSERT_YOUR_TEAM_NAME",
description: "this is a description of a team",
aliases: ["tn", "tName"],
externalIntegration: {
externalId: "INSERT_THE_EXTERNAL_ID",
type: IAM_GROUP
},
resources: [
{content: "email@mail.com", title: "email", type: "EMAIL"},
{content: "https://slack.com/channels/team", title: "Team slack", type: "SLACK"}
],
scope: {
id: "INSERT_YOUR_ORGANIZATION_ID",
type: ORGANIZATION
}
) {
entity {
id
ownership {
id
}
membership {
id
}
}
}
}

Lorsque vous utilisez cette mutation, n'oubliez pas que :

  • Les seuls champs obligatoires sont teamName et scope.

  • Si vous avez besoin d'aide pour comprendre organizationID, consultez Récupérer les informations d'identification de l'organisation ci-dessous.

  • externalIntegration fait référence à une connexion avec un système externe pour maintenir l'équipe synchronisée.

    • externalId:Identifiant dans le système externe
    • type:Le type de système externe
  • Lorsque vous créez une équipe, deux entités de collections sont automatiquement créées et liées à celle-ci. Pour plus d'informations sur l'ajout d'entité, reportez-vous à Gérer les collections.

    • ownership:Cette collection gère l'entité appartenant à l'équipe.
    • membership:Cette collection gère les membres de l'équipe. Pour plus d'informations sur userID, reportez-vous à Récupérer l'ID utilisateur.

Récupérer l'organisation id

Pour créer une équipe, vous devez fournir l’ID de l’organisation dans la portée.

{
actor {
organization {
name
id
}
}
}

Gérer les collections

Pour ajouter un utilisateur ou une entité à une équipe, vous devez ajouter des membres aux collections associées à l'équipe. Utilisez la mutation appropriée avec l’ID de collection correspondant. Utilisez la collection membership pour utilisateur et la collection ownership pour entité. Vous pouvez ajouter jusqu'à 100 entités à une collection par demande.

mutation {
entityManagementAddCollectionMembers(
collectionId: "INSERT_YOUR_COLLECTION_ID"
ids: ["ENTITY_ID"]
)
}

Pour supprimer un utilisateur ou une entité d'une équipe, vous devrez supprimer les membres de la collection entité attachée à l'équipe à l'aide de la requête suivante.

mutation {
entityManagementRemoveCollectionMembers(
collectionId: "INSERT_YOUR_COLLECTION_ID"
ids: ["ENTITY_ID"]
)
}

Récupérer l'utilisateur id

Pour ajouter un utilisateur à une équipe, vous avez besoin de l'identifiant unique de l'entité utilisateur (également appelé GUID).

Un certain nombre de requêtes sont disponibles pour vous aider à trouver le GUID.

Conseil

Dans les exemples ci-dessous, n'oubliez pas que tous les types sont sensibles à la casse. Par exemple, vous devez utiliser USER et TEAM.

Trouver un domaine d'utilisateur id

Tout d’abord, vous devez trouver l’ID de domaine de l’utilisateur. Vous pouvez le faire en interrogeant et en filtrant avec le nom ou l'e-mail de l'utilisateur :

{
actor {
users {
userSearch(query: { scope: { email: "INSERT_PARTIAL_EMAIL" } }) {
users {
userId
}
}
}
}
}
{
actor {
users {
userSearch(query: { scope: { name: "INSERT_PARTIAL_NAME" } }) {
users {
userId
}
}
}
}
}

Trouver l'identifiant ayant le domaine id

Une fois que vous avez le domaine id vous pouvez rechercher le GUID avec la requête suivante :

{
actor {
entitySearch(query: "type='USER' AND tags.userId = 'INSERT_DOMAIN_ID'") {
results {
entities {
guid
}
}
}
}
}

Pour ce type de requête, l'opérateur in est également valide, par exemple :

...
entitySearch(query: "type = 'USER' AND tags.userId IN ('domainId1', 'domainId2')") {
...

Récupérer les informations de l'équipe

Vous disposez de plusieurs options pour récupérer les informations de l'équipe.

Par équipe id

Utilisez la requête suivante pour récupérer les informations sur une équipe si vous avez l'équipe id:

{
actor {
entityManagement {
entity(id = 'INSERT_TEAM_ENTITY_ID'") {
... on EntityManagementTeamEntity {
id
name
}
}
}
}
}

Toutes les équipes

Si vous n'avez pas le team id, vous pouvez également vérifier toutes les équipes existantes :

{
actor {
entityManagement {
entitySearch(query: "type = 'TEAM'") {
entities {
... on EntityManagementTeamEntity {
id
name
description
aliases
}
}
}
}
}
}

Mettre à jour une équipe

Utilisez la mutation entityManagementUpdateTeam pour mettre à jour une équipe. Utilisez la requête ci-dessus pour trouver le id de l'équipe :

mutation {
entityManagementUpdateTeam(
id: "INSERT_YOUR_TEAM_ID",
teamEntity: {
...
}) {
entity {
id
}
}
}

Afficher les éléments d'une collection

Utilisez la requête collectionElements pour afficher l'utilisateur dans la collection d'adhésion ou l'entité dans la collection de propriété.

{
actor {
entityManagement {
collectionElements(
filter: { collectionId: { eq: "INSERT_YOUR_COLLECTION_ID" } }
) {
items {
id
name
type
}
nextCursor
}
}
}
}

Afficher et mettre à jour les paramètres d'organisation de l'équipe

Les équipes sont des entités à l’échelle de l’organisation et, en tant que telles, elles disposent de certains paramètres qui sont appliqués au niveau de l’organisation. Pour interroger les paramètres de votre organisation, vous pouvez utiliser les éléments suivants :

{
actor {
entityManagement {
entity(id:INSERT_TEAMS_SETTINGS_ID) {
... on EntityManagementTeamsOrganizationSettingsEntity {
discovery {
enabled
tagKeys
}
syncGroups {
rules {
conditions {
value
type
}
}
enabled
}
}
}
}
}
}

Gardez les points suivants à l’esprit lorsque vous utilisez cette requête :

  • discovery:Il s'agit d'une fonctionnalité qui permet d'attribuer des entités à des équipes via leur tag.
  • enabled: Ceci spécifie si la fonctionnalité discovery est activée pour l'organisation.
  • tagKeys:Les clés tag utilisées pour rechercher les noms d'équipe et les alias. La valeur par défaut est Team. Ainsi, toute entité avec la tag Team: teamName serait attribuée à l’équipe portant ce nom ou à tout alias correspondant à ce nom.
  • syncGroups:Cette fonctionnalité vous permet de définir des règles de reconnaissance des groupes d'utilisateurs, permettant l'automatisation complète des opérations CRUD pour les équipes des fournisseurs d'identité (IdP). Cela garantit que la création, la mise à jour et la gestion des membres des équipes sont toujours à jour sans nécessiter d'intervention manuelle.
  • enabled: Ceci spécifie si la fonctionnalité syncGroups est activée pour l'organisation.
  • rules:Une liste de conditions.
  • conditions:Une liste de value et type.
  • value: La chaîne à faire correspondre pour identifier les noms des groupes de fournisseurs.
  • type: Le type de valeur qui doit correspondre au nom du groupe. Les valeurs possibles sont STARTS_WITH, CONTAINS et ENDS_WITH.

Seuls certains membres d’une organisation sont autorisés à modifier les paramètres de l’organisation. Cela se fait avec la requête suivante :

mutation {
entityManagementUpdateTeamsOrganizationSettings(
id: "0bf6d7b0-e1f3-4172-a26a-6e4e0asample"
teamsOrganizationSettingsEntity: {
discovery: { enabled: true, tagKeys: ["Owner", "OwningTeam"] }
syncGroups: {
enabled: true
rules: [{ conditions: [{ type: "STARTS_WITH", value: "testing" }] }]
}
}
)
}

Retour à la configuration UI des équipes

Présentation des équipes New Relic

Droits d'auteur © 2025 New Relic Inc.

This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.