# LaunchDarkly

> Create, toggle, target and clean up LaunchDarkly feature flags and segments, and manage account members.

App · Cloud Computing · 20 actions. Web page: https://docs.lodol.com/docs/integrations/launchdarkly

## Actions

### Add or remove flag targets

Serve one variation of a flag to specific contexts in one environment, or stop doing so.

**Inputs**

- Project (`project_key`, text, required): The project, or its key (the default project's key is 'default').
- Flag key (`flag_key`, text, required): The flag's key (not its name), or the address of the flag's page in LaunchDarkly. Use List flags to find one.
- Environment (`environment_key`, text, required): The environment, or its key (for example 'production' or 'test').
- Add or remove (`operation`, text, required): Whether to add the context keys or remove them. One of: `add`, `remove`. Default: `add`.
- Context keys (`context_keys`, list, required): The context keys, as a list or separated by commas or new lines.
- Variation (`variation_id`, text, required): The variation to serve them: pick it, or give the variation's _id from Get a flag (not its position).
- Context kind (`context_kind`, text): The context kind the keys belong to. Leave blank for 'user'. Default: `user`.
- Comment (`comment`, text): Optional note recorded in the flag's change history.

**Outputs**

- `_version` (number)
- `archived` (true/false)
- `archivedDate` (number)
- `clientSideAvailability` (object)
- `creationDate` (number)
- `defaults` (object)
- `deprecated` (true/false)
- `description` (text)
- `environments` (object)
- `key` (text)
- `kind` (text)
- `maintainerId` (text)
- `name` (text)
- `tags` (list)
- `temporary` (true/false)
- `variations` (list)

**Example output**

```json
{
  "_version": 1,
  "archived": false,
  "creationDate": 1759920000000,
  "defaults": {
    "offVariation": 1,
    "onVariation": 0
  },
  "deprecated": false,
  "description": "Routes shoppers to the new checkout.",
  "environments": {
    "production": {
      "archived": false,
      "on": false,
      "version": 1
    }
  },
  "key": "new-checkout",
  "kind": "boolean",
  "name": "New checkout",
  "tags": [
    "checkout"
  ],
  "temporary": true,
  "variations": [
    {
      "_id": "e432f62b-55f6-49dd-a02f-eb24acf39d05",
      "value": true
    },
    {
      "_id": "a00bf58d-d252-476c-b915-15a74becacb4",
      "value": false
    }
  ]
}
```

### Archive or restore a flag

Archive a flag (retire it in every environment without deleting it) or restore an archived one. A flag that other flags depend on as a prerequisite cannot be archived.

**Inputs**

- Project (`project_key`, text, required): The project, or its key (the default project's key is 'default').
- Flag key (`flag_key`, text, required): The flag's key (not its name), or the address of the flag's page in LaunchDarkly. Use List flags to find one.
- Archive or restore (`operation`, text, required): Whether to archive the flag or restore it. One of: `archive`, `restore`. Default: `archive`.
- Comment (`comment`, text): Optional note recorded in the flag's change history.

**Outputs**

- `_version` (number)
- `archived` (true/false)
- `archivedDate` (number)
- `clientSideAvailability` (object)
- `creationDate` (number)
- `defaults` (object)
- `deprecated` (true/false)
- `description` (text)
- `environments` (object)
- `key` (text)
- `kind` (text)
- `maintainerId` (text)
- `name` (text)
- `tags` (list)
- `temporary` (true/false)
- `variations` (list)

**Example output**

```json
{
  "_version": 1,
  "archived": true,
  "creationDate": 1759920000000,
  "defaults": {
    "offVariation": 1,
    "onVariation": 0
  },
  "deprecated": false,
  "description": "Routes shoppers to the new checkout.",
  "environments": {
    "production": {
      "archived": false,
      "on": false,
      "version": 1
    }
  },
  "key": "new-checkout",
  "kind": "boolean",
  "name": "New checkout",
  "tags": [
    "checkout"
  ],
  "temporary": true,
  "variations": [
    {
      "_id": "e432f62b-55f6-49dd-a02f-eb24acf39d05",
      "value": true
    },
    {
      "_id": "a00bf58d-d252-476c-b915-15a74becacb4",
      "value": false
    }
  ]
}
```

### Change segment targets

Add context keys to a segment's included or excluded list, or remove them. Up to 1,500 keys per step.

**Inputs**

- Project (`project_key`, text, required): The project, or its key (the default project's key is 'default').
- Environment (`environment_key`, text, required): The environment, or its key (for example 'production' or 'test').
- Segment key (`segment_key`, text, required): The segment's key, or the address of the segment's page in LaunchDarkly. Use List segments to find one.
- List (`target_list`, text, required): Included contexts are in the segment; excluded ones never are. One of: `included`, `excluded`. Default: `included`.
- Add or remove (`operation`, text, required): Whether to add the context keys or remove them. One of: `add`, `remove`. Default: `add`.
- Context keys (`context_keys`, list, required): The context keys, as a list or separated by commas or new lines.
- Context kind (`context_kind`, text): The context kind the keys belong to. Leave blank for 'user'. Default: `user`.
- Comment (`comment`, text): Optional note recorded in the segment's change history.

**Outputs**

- `creationDate` (number)
- `deleted` (true/false)
- `description` (text)
- `excluded` (list)
- `excludedContexts` (list)
- `included` (list)
- `includedContexts` (list)
- `key` (text)
- `lastModifiedDate` (number)
- `name` (text)
- `rules` (list)
- `tags` (list)
- `unbounded` (true/false)
- `version` (number)

**Example output**

```json
{
  "creationDate": 1759920000000,
  "deleted": false,
  "description": "People trying features early.",
  "excluded": [],
  "excludedContexts": [],
  "included": [],
  "includedContexts": [
    {
      "contextKind": "user",
      "values": [
        "user-123"
      ]
    }
  ],
  "key": "beta-testers",
  "lastModifiedDate": 1759920000000,
  "name": "Beta testers",
  "rules": [],
  "tags": [],
  "version": 1
}
```

### Create a flag

Create a feature flag in a project. It starts switched off in every environment; use Toggle a flag to turn it on.

**Inputs**

- Project (`project_key`, text, required): The project, or its key (the default project's key is 'default').
- Name (`name`, text, required): A human-friendly name for the flag.
- Key (`key`, text, required): The key your code uses: letters, numbers, '.', '_' and '-'. It cannot be changed later.
- Flag type (`flag_type`, text): What the flag serves. One of: `boolean` (Boolean (true / false)), `string`, `number`, `json`. Default: `boolean`.
- Variation values (`variations`, list): At least two different values. The first is served when the flag is on, the last when it is off. For JSON, give one JSON value per item. Only when Flag type is String, Number or JSON.
- Description (`description`, text): Optional description.
- Lifetime (`lifetime`, text): Temporary flags are meant to be removed after a release; LaunchDarkly makes new flags temporary unless told otherwise. One of: `temporary`, `permanent`.
- Tags (`tags`, list): Optional tags, as a list or separated by commas.
- Available to client-side SDKs (`client_side_available`, true/false): Optional: make the flag available to client-side and mobile SDKs. Leave unset to use the project's default.

**Outputs**

- `_version` (number)
- `archived` (true/false)
- `archivedDate` (number)
- `clientSideAvailability` (object)
- `creationDate` (number)
- `defaults` (object)
- `deprecated` (true/false)
- `description` (text)
- `environments` (object)
- `key` (text)
- `kind` (text)
- `maintainerId` (text)
- `name` (text)
- `tags` (list)
- `temporary` (true/false)
- `variations` (list)

**Example output**

```json
{
  "_version": 1,
  "archived": false,
  "creationDate": 1759920000000,
  "defaults": {
    "offVariation": 1,
    "onVariation": 0
  },
  "deprecated": false,
  "description": "Routes shoppers to the new checkout.",
  "environments": {
    "production": {
      "archived": false,
      "on": false,
      "version": 1
    }
  },
  "key": "new-checkout",
  "kind": "boolean",
  "name": "New checkout",
  "tags": [
    "checkout"
  ],
  "temporary": true,
  "variations": [
    {
      "_id": "e432f62b-55f6-49dd-a02f-eb24acf39d05",
      "value": true
    },
    {
      "_id": "a00bf58d-d252-476c-b915-15a74becacb4",
      "value": false
    }
  ]
}
```

### Create a segment

Create a segment in one environment. Add contexts to it with Change segment targets.

**Inputs**

- Project (`project_key`, text, required): The project, or its key (the default project's key is 'default').
- Environment (`environment_key`, text, required): The environment, or its key (for example 'production' or 'test').
- Name (`name`, text, required): A human-friendly name for the segment.
- Key (`key`, text, required): Letters, numbers, '.', '_' and '-'. It cannot be changed later.
- Description (`description`, text): Optional description.
- Tags (`tags`, list): Optional tags, as a list or separated by commas.

**Outputs**

- `creationDate` (number)
- `deleted` (true/false)
- `description` (text)
- `excluded` (list)
- `excludedContexts` (list)
- `included` (list)
- `includedContexts` (list)
- `key` (text)
- `lastModifiedDate` (number)
- `name` (text)
- `rules` (list)
- `tags` (list)
- `unbounded` (true/false)
- `version` (number)

**Example output**

```json
{
  "creationDate": 1759920000000,
  "deleted": false,
  "description": "People trying features early.",
  "excluded": [],
  "excludedContexts": [],
  "included": [],
  "includedContexts": [
    {
      "contextKind": "user",
      "values": [
        "user-123"
      ]
    }
  ],
  "key": "beta-testers",
  "lastModifiedDate": 1759920000000,
  "name": "Beta testers",
  "rules": [],
  "tags": [],
  "version": 1
}
```

### Delete a flag

Permanently delete a flag from every environment. Consider archiving instead: a deleted flag cannot be restored.

**Inputs**

- Project (`project_key`, text, required): The project, or its key (the default project's key is 'default').
- Flag key (`flag_key`, text, required): The flag's key (not its name), or the address of the flag's page in LaunchDarkly. Use List flags to find one.

**Outputs**

- `deleted` (true/false)
- `key` (text)
- `project_key` (text)

**Example output**

```json
{
  "deleted": true,
  "key": "new-checkout",
  "project_key": "default"
}
```

### Delete a segment

Permanently delete a segment from one environment.

**Inputs**

- Project (`project_key`, text, required): The project, or its key (the default project's key is 'default').
- Environment (`environment_key`, text, required): The environment, or its key (for example 'production' or 'test').
- Segment key (`segment_key`, text, required): The segment's key, or the address of the segment's page in LaunchDarkly. Use List segments to find one.

**Outputs**

- `deleted` (true/false)
- `environment_key` (text)
- `key` (text)
- `project_key` (text)

**Example output**

```json
{
  "deleted": true,
  "environment_key": "production",
  "key": "beta-testers",
  "project_key": "default"
}
```

### Evaluate flags for a context

See what every flag in an environment serves one context, and why. Meant for checks and debugging: applications should evaluate flags with a LaunchDarkly SDK.

**Inputs**

- Project (`project_key`, text, required): The project, or its key (the default project's key is 'default').
- Environment (`environment_key`, text, required): The environment, or its key (for example 'production' or 'test').
- Context key (`context_key`, text, required): The context's key, for example a user id.
- Context kind (`context_kind`, text): The context kind the keys belong to. Leave blank for 'user'. Default: `user`.
- Attributes (`attributes`, object): Optional extra attributes your targeting rules read, for example {"country": "NZ", "plan": "pro"}.

**Outputs**

- `count` (number)
- `has_more` (true/false)
- `items` (list)
- `next_offset` (number)
- `total_count` (number)

**Example output**

```json
{
  "count": 1,
  "has_more": false,
  "items": [
    {
      "_value": true,
      "key": "new-checkout",
      "name": "New checkout",
      "reason": {
        "kind": "TARGET_MATCH"
      }
    }
  ],
  "next_offset": null,
  "total_count": 1
}
```

### Get a flag

Get one feature flag, with its variations and its settings in every environment (or only the one chosen).

**Inputs**

- Project (`project_key`, text, required): The project, or its key (the default project's key is 'default').
- Flag key (`flag_key`, text, required): The flag's key (not its name), or the address of the flag's page in LaunchDarkly. Use List flags to find one.
- Environment (`environment_key`, text): Optional: only include settings for this environment.

**Outputs**

- `_version` (number)
- `archived` (true/false)
- `archivedDate` (number)
- `clientSideAvailability` (object)
- `creationDate` (number)
- `defaults` (object)
- `deprecated` (true/false)
- `description` (text)
- `environments` (object)
- `key` (text)
- `kind` (text)
- `maintainerId` (text)
- `name` (text)
- `tags` (list)
- `temporary` (true/false)
- `variations` (list)

**Example output**

```json
{
  "_version": 1,
  "archived": false,
  "creationDate": 1759920000000,
  "defaults": {
    "offVariation": 1,
    "onVariation": 0
  },
  "deprecated": false,
  "description": "Routes shoppers to the new checkout.",
  "environments": {
    "production": {
      "archived": false,
      "on": false,
      "version": 1
    }
  },
  "key": "new-checkout",
  "kind": "boolean",
  "name": "New checkout",
  "tags": [
    "checkout"
  ],
  "temporary": true,
  "variations": [
    {
      "_id": "e432f62b-55f6-49dd-a02f-eb24acf39d05",
      "value": true
    },
    {
      "_id": "a00bf58d-d252-476c-b915-15a74becacb4",
      "value": false
    }
  ]
}
```

### Get a project

Get one LaunchDarkly project by key.

**Inputs**

- Project (`project_key`, text, required): The project, or its key (the default project's key is 'default').

**Outputs**

- `_id` (text)
- `defaultClientSideAvailability` (object)
- `defaultReleasePipelineKey` (text)
- `includeInSnippetByDefault` (true/false)
- `key` (text)
- `name` (text)
- `tags` (list)

**Example output**

```json
{
  "_id": "6512f0a4b1c2d3e4f5a6b7c8",
  "defaultClientSideAvailability": {
    "usingEnvironmentId": false,
    "usingMobileKey": true
  },
  "includeInSnippetByDefault": false,
  "key": "default",
  "name": "Default project",
  "tags": []
}
```

### Get a segment

Get one segment, with its targets and rules.

**Inputs**

- Project (`project_key`, text, required): The project, or its key (the default project's key is 'default').
- Environment (`environment_key`, text, required): The environment, or its key (for example 'production' or 'test').
- Segment key (`segment_key`, text, required): The segment's key, or the address of the segment's page in LaunchDarkly. Use List segments to find one.

**Outputs**

- `creationDate` (number)
- `deleted` (true/false)
- `description` (text)
- `excluded` (list)
- `excludedContexts` (list)
- `included` (list)
- `includedContexts` (list)
- `key` (text)
- `lastModifiedDate` (number)
- `name` (text)
- `rules` (list)
- `tags` (list)
- `unbounded` (true/false)
- `version` (number)

**Example output**

```json
{
  "creationDate": 1759920000000,
  "deleted": false,
  "description": "People trying features early.",
  "excluded": [],
  "excludedContexts": [],
  "included": [],
  "includedContexts": [
    {
      "contextKind": "user",
      "values": [
        "user-123"
      ]
    }
  ],
  "key": "beta-testers",
  "lastModifiedDate": 1759920000000,
  "name": "Beta testers",
  "rules": [],
  "tags": [],
  "version": 1
}
```

### Get the connected token's identity

Show which LaunchDarkly account, member and token this connection acts as. Useful to check the connection works.

**Inputs**: None.

**Outputs**

- `accountId` (text)
- `authKind` (text)
- `clientId` (text)
- `environmentId` (text)
- `environmentName` (text)
- `memberId` (text)
- `projectId` (text)
- `projectName` (text)
- `scopes` (list)
- `serviceToken` (true/false)
- `tokenId` (text)
- `tokenKind` (text)
- `tokenName` (text)

**Example output**

```json
{
  "accountId": "6512f0a4b1c2d3e4f5a6b7c0",
  "authKind": "token",
  "memberId": "569f183514f4432160000007",
  "scopes": [],
  "serviceToken": false,
  "tokenId": "6512f0a4b1c2d3e4f5a6b7c1",
  "tokenKind": "personal",
  "tokenName": "Lodol"
}
```

### Invite a member

Invite someone to the LaunchDarkly account. LaunchDarkly emails them an invitation. Needs a token with the Admin role.

**Inputs**

- Email (`email`, text, required): The address to send the invitation to.
- Role (`role`, text): What they may do in LaunchDarkly. One of: `reader` (Reader (view only)), `writer` (Writer (change flags and segments)), `admin` (Admin (also manage members)). Default: `reader`.
- First name (`first_name`, text): Optional.
- Last name (`last_name`, text): Optional.

**Outputs**

- `_id` (text)
- `_lastSeen` (number)
- `_pendingInvite` (true/false)
- `_verified` (true/false)
- `creationDate` (number)
- `customRoles` (list)
- `email` (text)
- `firstName` (text)
- `lastName` (text)
- `mfa` (text)
- `role` (text)

**Example output**

```json
{
  "_id": "569f183514f4432160000007",
  "_lastSeen": 0,
  "_pendingInvite": true,
  "_verified": false,
  "creationDate": 1759920000000,
  "customRoles": [],
  "email": "ada@example.com",
  "firstName": "Ada",
  "lastName": "Lovelace",
  "mfa": "disabled",
  "role": "reader"
}
```

### List environments

List a project's environments. Each environment's SDK key and mobile key are redacted.

**Inputs**

- Project (`project_key`, text, required): The project, or its key (the default project's key is 'default').
- Limit (`limit`, number): How many to return (1 to 100). From 1 to 100. Default: `20`.
- Offset (`offset`, number): How many to skip, for the next page: use the previous next_offset. At least 0. Default: `0`.

**Outputs**

- `count` (number)
- `has_more` (true/false)
- `items` (list)
- `next_offset` (number)
- `total_count` (number)

**Example output**

```json
{
  "count": 1,
  "has_more": false,
  "items": [
    {
      "_id": "6512f0a4b1c2d3e4f5a6b7c9",
      "apiKey": "<redacted>",
      "color": "417505",
      "confirmChanges": false,
      "critical": true,
      "defaultTrackEvents": false,
      "defaultTtl": 0,
      "key": "production",
      "mobileKey": "<redacted>",
      "name": "Production",
      "requireComments": false,
      "secureMode": false,
      "tags": []
    }
  ],
  "next_offset": null,
  "total_count": 1
}
```

### List flags

List a project's feature flags. Choose an environment to include each flag's settings there (whether it is on, its targets) under environments.

**Inputs**

- Project (`project_key`, text, required): The project, or its key (the default project's key is 'default').
- Environment (`environment_key`, text): Optional: include each flag's settings in this environment.
- Search (`query`, text): Optional text to find in a flag's key or name.
- State (`state`, text): Optional: only flags in this state. One of: `live`, `deprecated`, `archived`.
- Lifetime (`lifetime`, text): Optional: only temporary or only permanent flags. One of: `temporary`, `permanent`.
- Tags (`tags`, list): Optional: only flags carrying all of these tags.
- Sort by (`sort`, text): Optional sort order. One of: `creationDate` (Oldest first), `-creationDate` (Newest first), `key` (Key (A-Z)), `-key` (Key (Z-A)), `name` (Name (A-Z)), `-name` (Name (Z-A)).
- Limit (`limit`, number): How many to return (1 to 100). From 1 to 100. Default: `20`.
- Offset (`offset`, number): How many to skip, for the next page: use the previous next_offset. At least 0. Default: `0`.

**Outputs**

- `count` (number)
- `has_more` (true/false)
- `items` (list)
- `next_offset` (number)
- `total_count` (number)

**Example output**

```json
{
  "count": 1,
  "has_more": false,
  "items": [
    {
      "_version": 1,
      "archived": false,
      "creationDate": 1759920000000,
      "defaults": {
        "offVariation": 1,
        "onVariation": 0
      },
      "deprecated": false,
      "description": "Routes shoppers to the new checkout.",
      "environments": {
        "production": {
          "archived": false,
          "on": false,
          "version": 1
        }
      },
      "key": "new-checkout",
      "kind": "boolean",
      "name": "New checkout",
      "tags": [
        "checkout"
      ],
      "temporary": true,
      "variations": [
        {
          "_id": "e432f62b-55f6-49dd-a02f-eb24acf39d05",
          "value": true
        },
        {
          "_id": "a00bf58d-d252-476c-b915-15a74becacb4",
          "value": false
        }
      ]
    }
  ],
  "next_offset": null,
  "total_count": 1
}
```

### List members

List the members of the LaunchDarkly account.

**Inputs**

- Search (`query`, text): Optional text to find in a member's name or email.
- Roles (`roles`, list): Optional: only members with these roles (owners count as admin). One or more of: `reader`, `writer`, `admin`.
- Sort by (`sort`, text): Optional sort order. One of: `displayName` (Name), `lastSeen` (Last seen).
- Limit (`limit`, number): How many to return (1 to 100). From 1 to 100. Default: `20`.
- Offset (`offset`, number): How many to skip, for the next page: use the previous next_offset. At least 0. Default: `0`.

**Outputs**

- `count` (number)
- `has_more` (true/false)
- `items` (list)
- `next_offset` (number)
- `total_count` (number)

**Example output**

```json
{
  "count": 1,
  "has_more": false,
  "items": [
    {
      "_id": "569f183514f4432160000007",
      "_lastSeen": 0,
      "_pendingInvite": true,
      "_verified": false,
      "creationDate": 1759920000000,
      "customRoles": [],
      "email": "ada@example.com",
      "firstName": "Ada",
      "lastName": "Lovelace",
      "mfa": "disabled",
      "role": "reader"
    }
  ],
  "next_offset": null,
  "total_count": 1
}
```

### List projects

List the projects in the LaunchDarkly account.

**Inputs**

- Search (`query`, text): Optional text to search for (not case-sensitive).
- Limit (`limit`, number): How many to return (1 to 100). From 1 to 100. Default: `20`.
- Offset (`offset`, number): How many to skip, for the next page: use the previous next_offset. At least 0. Default: `0`.

**Outputs**

- `count` (number)
- `has_more` (true/false)
- `items` (list)
- `next_offset` (number)
- `total_count` (number)

**Example output**

```json
{
  "count": 1,
  "has_more": false,
  "items": [
    {
      "_id": "6512f0a4b1c2d3e4f5a6b7c8",
      "defaultClientSideAvailability": {
        "usingEnvironmentId": false,
        "usingMobileKey": true
      },
      "includeInSnippetByDefault": false,
      "key": "default",
      "name": "Default project",
      "tags": []
    }
  ],
  "next_offset": null,
  "total_count": 1
}
```

### List segments

List the segments in one environment of a project.

**Inputs**

- Project (`project_key`, text, required): The project, or its key (the default project's key is 'default').
- Environment (`environment_key`, text, required): The environment, or its key (for example 'production' or 'test').
- Search (`query`, text): Optional text to find in a segment's key or name.
- Sort by (`sort`, text): Optional sort order. One of: `creationDate` (Creation date), `name`, `lastModified` (Last modified).
- Limit (`limit`, number): How many to return (1 to 100). From 1 to 100. Default: `20`.
- Offset (`offset`, number): How many to skip, for the next page: use the previous next_offset. At least 0. Default: `0`.

**Outputs**

- `count` (number)
- `has_more` (true/false)
- `items` (list)
- `next_offset` (number)
- `total_count` (number)

**Example output**

```json
{
  "count": 1,
  "has_more": false,
  "items": [
    {
      "creationDate": 1759920000000,
      "deleted": false,
      "description": "People trying features early.",
      "excluded": [],
      "excludedContexts": [],
      "included": [],
      "includedContexts": [
        {
          "contextKind": "user",
          "values": [
            "user-123"
          ]
        }
      ],
      "key": "beta-testers",
      "lastModifiedDate": 1759920000000,
      "name": "Beta testers",
      "rules": [],
      "tags": [],
      "version": 1
    }
  ],
  "next_offset": null,
  "total_count": 1
}
```

### Toggle a flag

Turn a flag's targeting on or off in one environment.

**Inputs**

- Project (`project_key`, text, required): The project, or its key (the default project's key is 'default').
- Flag key (`flag_key`, text, required): The flag's key (not its name), or the address of the flag's page in LaunchDarkly. Use List flags to find one.
- Environment (`environment_key`, text, required): The environment, or its key (for example 'production' or 'test').
- Turn (`state`, text, required): On serves the flag's targeting; off serves its off variation. One of: `on`, `off`. Default: `on`.
- Comment (`comment`, text): Optional note recorded in the flag's change history.

**Outputs**

- `environment_key` (text)
- `flag` (object)
- `key` (text)
- `on` (true/false)

**Example output**

```json
{
  "environment_key": "production",
  "flag": {
    "_version": 1,
    "archived": false,
    "creationDate": 1759920000000,
    "defaults": {
      "offVariation": 1,
      "onVariation": 0
    },
    "deprecated": false,
    "description": "Routes shoppers to the new checkout.",
    "environments": {
      "production": {
        "archived": false,
        "on": false,
        "version": 1
      }
    },
    "key": "new-checkout",
    "kind": "boolean",
    "name": "New checkout",
    "tags": [
      "checkout"
    ],
    "temporary": true,
    "variations": [
      {
        "_id": "e432f62b-55f6-49dd-a02f-eb24acf39d05",
        "value": true
      },
      {
        "_id": "a00bf58d-d252-476c-b915-15a74becacb4",
        "value": false
      }
    ]
  },
  "key": "new-checkout",
  "on": true
}
```

### Update a flag

Change a flag's name, description, tags, lifetime or maintainer. Only the fields you fill in change, and either all of them are applied or none is.

**Inputs**

- Project (`project_key`, text, required): The project, or its key (the default project's key is 'default').
- Flag key (`flag_key`, text, required): The flag's key (not its name), or the address of the flag's page in LaunchDarkly. Use List flags to find one.
- New name (`name`, text): Optional new name.
- New description (`description`, text): Optional new description.
- Tags to add (`add_tags`, list): Optional tags to add.
- Tags to remove (`remove_tags`, list): Optional tags to remove.
- Lifetime (`lifetime`, text): Optional: make the flag temporary or permanent. One of: `temporary`, `permanent`.
- Maintainer (`maintainer_id`, text): Optional: the account member who maintains the flag.
- Comment (`comment`, text): Optional note recorded in the flag's change history.

**Outputs**

- `_version` (number)
- `archived` (true/false)
- `archivedDate` (number)
- `clientSideAvailability` (object)
- `creationDate` (number)
- `defaults` (object)
- `deprecated` (true/false)
- `description` (text)
- `environments` (object)
- `key` (text)
- `kind` (text)
- `maintainerId` (text)
- `name` (text)
- `tags` (list)
- `temporary` (true/false)
- `variations` (list)

**Example output**

```json
{
  "_version": 1,
  "archived": false,
  "creationDate": 1759920000000,
  "defaults": {
    "offVariation": 1,
    "onVariation": 0
  },
  "deprecated": false,
  "description": "Routes shoppers to the new checkout.",
  "environments": {
    "production": {
      "archived": false,
      "on": false,
      "version": 1
    }
  },
  "key": "new-checkout",
  "kind": "boolean",
  "name": "New checkout",
  "tags": [
    "checkout"
  ],
  "temporary": true,
  "variations": [
    {
      "_id": "e432f62b-55f6-49dd-a02f-eb24acf39d05",
      "value": true
    },
    {
      "_id": "a00bf58d-d252-476c-b915-15a74becacb4",
      "value": false
    }
  ]
}
```
