# Bungie

> Look up Destiny 2 players, profiles, and definitions, and read the current public milestones and game manifest, from the Bungie API.

App · Gaming · 13 actions. Web page: https://docs.lodol.com/docs/integrations/bungie

## Actions

### Find a clan

Find a Destiny clan by its exact name.

**Inputs**

- Clan name (`name`, text, required): The clan's exact name.

**Outputs**

- `about` (text): The clan's description.
- `clan_callsign` (text): The clan's callsign (tag).
- `creation_date` (text): When the clan was created.
- `group_id` (text): The clan's group id. Use with Get a clan.
- `member_count` (number): Number of members.
- `motto` (text): The clan's motto.
- `name` (text): The clan's name.

**Example output**

```json
{
  "about": "A friendly clan for all Guardians.",
  "clan_callsign": "TLC",
  "creation_date": "2017-09-01T00:00:00Z",
  "group_id": "3011584",
  "member_count": 87,
  "motto": "Eyes up, Guardian.",
  "name": "The Last City"
}
```

### Find a player

Find a Destiny 2 player's platform memberships by their Bungie Name (e.g. 'Guardian#1234').

**Inputs**

- Bungie Name (`bungie_name`, text, required): The player's Bungie Name including the code, e.g. 'Guardian#1234'.
- Platform (`membership_type`, text): Which platform to search (default: all platforms). One of: `-1` (All platforms), `1` (Xbox), `2` (PlayStation), `3` (Steam), `4` (Blizzard), `5` (Stadia), `6` (Epic Games). Default: `-1`.

**Outputs**

- `players` (list): The player's platform memberships.

**Example output**

```json
{
  "players": [
    {
      "bungie_global_display_name": "Guardian",
      "bungie_global_display_name_code": 1234,
      "cross_save_override": 3,
      "display_name": "Guardian",
      "icon_url": "https://www.bungie.net/img/theme/bungienet/icons/steamLogo.png",
      "membership_id": "4611686018467284386",
      "membership_type": 3
    }
  ]
}
```

### Get a clan

Get a Destiny clan's details by its group id.

**Inputs**

- Clan group ID (`group_id`, text, required): The clan's group id, from Find a clan.

**Outputs**

- `about` (text): The clan's description.
- `clan_callsign` (text): The clan's callsign (tag).
- `creation_date` (text): When the clan was created.
- `group_id` (text): The clan's group id. Use with Get a clan.
- `member_count` (number): Number of members.
- `motto` (text): The clan's motto.
- `name` (text): The clan's name.

**Example output**

```json
{
  "about": "A friendly clan for all Guardians.",
  "clan_callsign": "TLC",
  "creation_date": "2017-09-01T00:00:00Z",
  "group_id": "3011584",
  "member_count": 87,
  "motto": "Eyes up, Guardian.",
  "name": "The Last City"
}
```

### Get a definition

Look up a single Destiny 2 definition (such as an item, class, or activity) by its hash.

**Inputs**

- Definition type (`entity_type`, text, required): Which kind of definition to look up. One of: `DestinyInventoryItemDefinition` (Item), `DestinyClassDefinition` (Class), `DestinyActivityDefinition` (Activity), `DestinyVendorDefinition` (Vendor), `DestinyRaceDefinition` (Race), `DestinyMilestoneDefinition` (Milestone).
- Hash (`hash_identifier`, text, required): The definition's numeric hash.

**Outputs**

- `definition` (object): The full definition object.
- `description` (text): Display description.
- `has_icon` (true/false): Whether it has an icon.
- `hash` (number): The definition's hash.
- `name` (text): Display name.

**Example output**

```json
{
  "definition": {
    "hash": 3655393761
  },
  "description": "Disciplined and proud, Titans are capable of both...",
  "has_icon": true,
  "hash": 3655393761,
  "name": "Titan"
}
```

### Get clan members

List the members of a Destiny clan.

**Inputs**

- Clan group ID (`group_id`, text, required): The clan's group id, from Find a clan.

**Outputs**

- `count` (number): Number of members returned.
- `members` (list): The clan's members.

**Example output**

```json
{
  "count": 1,
  "members": [
    {
      "display_name": "Guardian",
      "display_name_code": 1234,
      "is_online": false,
      "join_date": "2020-01-01T00:00:00Z",
      "member_type": 5,
      "membership_id": "4611686018467284386",
      "membership_type": 3
    }
  ]
}
```

### Get linked profiles

List all Destiny memberships linked to an account (useful for cross-save accounts).

**Inputs**

- Platform (`membership_type`, text, required): The player's platform, from Find a player. One of: `1` (Xbox), `2` (PlayStation), `3` (Steam), `4` (Blizzard), `5` (Stadia), `6` (Epic Games).
- Membership ID (`membership_id`, text, required): The player's Destiny membership id, from Find a player.

**Outputs**

- `count` (number): Number of linked profiles.
- `profiles` (list): The linked Destiny memberships.

**Example output**

```json
{
  "count": 1,
  "profiles": [
    {
      "bungie_global_display_name": "Guardian",
      "bungie_global_display_name_code": 1234,
      "cross_save_override": 3,
      "display_name": "Guardian",
      "icon_url": "https://www.bungie.net/img/theme/bungienet/icons/steamLogo.png",
      "membership_id": "4611686018467284386",
      "membership_type": 3
    }
  ]
}
```

### Get manifest

Get the current Destiny 2 manifest version and the paths to its content databases.

**Inputs**: None.

**Outputs**

- `json_world_content_paths` (object): Per-locale paths to the aggregate JSON content.
- `mobile_world_content_paths` (object): Per-locale paths to the SQLite content databases.
- `version` (text): The manifest version (use as a cache key).

**Example output**

```json
{
  "json_world_content_paths": {
    "en": "/common/destiny2_content/json/en/aggregate_7b.json"
  },
  "mobile_world_content_paths": {
    "en": "/common/destiny2_content/sqlite/en/world_sql_content_5f.content"
  },
  "version": "239055.24.08.09.1730-6-bnet.57226"
}
```

### Get match report

Get the Post Game Carnage Report (detailed match results) for a Destiny 2 activity.

**Inputs**

- Activity ID (`activity_id`, text, required): The activity (instance) id of the match.

**Outputs**

- `activity_hash` (number): The activity definition hash.
- `count` (number): Number of players in the report.
- `instance_id` (text): The activity instance id.
- `mode` (number): The activity mode code.
- `period` (text): When the match was played.
- `players` (list): Per-player results.

**Example output**

```json
{
  "activity_hash": 2229749170,
  "count": 1,
  "instance_id": "12345678901",
  "mode": 5,
  "period": "2026-08-01T12:00:00Z",
  "players": [
    {
      "assists": 7,
      "character_class": "Titan",
      "deaths": 12,
      "display_name": "Guardian",
      "kills": 25,
      "standing": 0
    }
  ]
}
```

### Get profile

Get a Destiny 2 player's public profile. Which parts are returned depends on the components you pick and the player's privacy settings.

**Inputs**

- Platform (`membership_type`, text, required): The player's platform, from Find a player. One of: `1` (Xbox), `2` (PlayStation), `3` (Steam), `4` (Blizzard), `5` (Stadia), `6` (Epic Games).
- Membership ID (`membership_id`, text, required): The player's Destiny membership id, from Find a player.
- Include (`components`, list): Which parts of the profile to fetch. One or more of: `100` (Profile), `200` (Characters), `202` (Character progressions), `204` (Character activities), `205` (Character equipment), `800` (Collectibles), `900` (Records (Triumphs)).

**Outputs**: A Destiny 2 profile response, keyed by the components requested (e.g. 'profile', 'characters'), each wrapped as {data, privacy}.

**Example output**

```json
{
  "profile": {
    "data": {
      "dateLastPlayed": "2026-08-01T12:00:00Z",
      "userInfo": {
        "bungieGlobalDisplayName": "Guardian",
        "bungieGlobalDisplayNameCode": 1234,
        "membershipId": "4611686018467284386",
        "membershipType": 3
      }
    },
    "privacy": 1
  }
}
```

### Get public milestones

List the currently active public Destiny 2 milestones (this week's rotating activities).

**Inputs**: None.

**Outputs**

- `milestones` (list): The active public milestones.

**Example output**

```json
{
  "milestones": [
    {
      "end_date": "2026-08-12T17:00:00Z",
      "milestone_hash": 3603098564,
      "order": 1,
      "start_date": "2026-08-05T17:00:00Z"
    }
  ]
}
```

### Get recent matches

List a character's recent activities (matches), most recent first. Each match's activity id can be fed to Get match report for full details.

**Inputs**

- Platform (`membership_type`, text, required): The player's platform, from Find a player. One of: `1` (Xbox), `2` (PlayStation), `3` (Steam), `4` (Blizzard), `5` (Stadia), `6` (Epic Games).
- Membership ID (`membership_id`, text, required): The player's Destiny membership id, from Find a player.
- Character ID (`character_id`, text, required): The character id, from List characters.
- Activity type (`mode`, text): Which activity type to include (default: all). One of: `0` (All activities), `2` (Story), `3` (Strike), `4` (Raid), `5` (All PvP (Crucible)), `7` (All PvE), `16` (Nightfall), `18` (All Strikes), `19` (Iron Banner), `63` (Gambit), `82` (Dungeon), `84` (Trials of Osiris). Default: `0`.
- How many (`count`, number): How many matches to return (1-250). From 1 to 250. Default: `25`.
- Page (`page`, number): Page of results (0 is the most recent). At least 0. Default: `0`.

**Outputs**

- `activities` (list): Recent activities, most recent first.
- `count` (number): Number of matches returned.

**Example output**

```json
{
  "activities": [
    {
      "assists": 7,
      "completed": 1,
      "deaths": 12,
      "duration_seconds": 612,
      "instance_id": "12345678901",
      "is_private": false,
      "kills": 25,
      "mode": 5,
      "period": "2026-08-01T12:00:00Z",
      "reference_id": 2229749170,
      "standing": 0
    }
  ],
  "count": 1
}
```

### List characters

List a Destiny 2 player's characters, each with its character id (needed to read that character's recent matches).

**Inputs**

- Platform (`membership_type`, text, required): The player's platform, from Find a player. One of: `1` (Xbox), `2` (PlayStation), `3` (Steam), `4` (Blizzard), `5` (Stadia), `6` (Epic Games).
- Membership ID (`membership_id`, text, required): The player's Destiny membership id, from Find a player.

**Outputs**

- `characters` (list): The player's characters.
- `count` (number): Number of characters.

**Example output**

```json
{
  "characters": [
    {
      "character_id": "2305843009300000001",
      "class_name": "Titan",
      "class_type": 0,
      "date_last_played": "2026-08-01T12:00:00Z",
      "emblem_path": "/common/destiny2_content/icons/emblem.jpg",
      "light": 1810,
      "minutes_played_total": "54321",
      "race_type": 0
    }
  ],
  "count": 1
}
```

### Search users

Search Bungie users by the start of their Bungie Name (returns several matches).

**Inputs**

- Name starts with (`name_prefix`, text, required): The beginning of the Bungie Name to search for, e.g. 'Guard'.
- Page (`page`, number): Result page (starts at 0). At least 0. Default: `0`.

**Outputs**

- `count` (number): Number of users on this page.
- `has_more` (true/false): Whether more pages exist.
- `results` (list): Matching users.

**Example output**

```json
{
  "count": 1,
  "has_more": false,
  "results": [
    {
      "bungie_global_display_name": "Guardian",
      "bungie_global_display_name_code": 1234,
      "bungie_net_membership_id": "19571657",
      "destiny_memberships": [
        {
          "bungie_global_display_name": "Guardian",
          "bungie_global_display_name_code": 1234,
          "cross_save_override": 3,
          "display_name": "Guardian",
          "icon_url": "https://www.bungie.net/img/theme/bungienet/icons/steamLogo.png",
          "membership_id": "4611686018467284386",
          "membership_type": 3
        }
      ]
    }
  ]
}
```
