BungieNet.Platform.Destiny2Services Documentation

This page describes the service operations available at https://www.bungie.net/Platform/Destiny2.

Uri Method Scope Description
/Awa/GetActionToken/{correlationId}/ GET AdvancedWriteActions Returns the action token if user approves the request.
/Awa/Initialize/ POST AdvancedWriteActions Initialize a request to perform an advanced write action.
/Awa/AwaProvideAuthorizationResult/ POST Provide the result of the user interaction. Called by the Bungie Destiny App to approve or reject a request.
/Actions/Seasons/ClaimReward/ POST BnetWrite Allows you to claim Season Pass rewards from seasons that have ended. You must have a valid Destiny account.
/Actions/Loadouts/ClearLoadout/ POST MoveEquipDestinyItems Clear the identifiers and items of a loadout.
/Actions/Items/EquipItem/ POST MoveEquipDestinyItems Equip an item. You must have a valid Destiny Account, and either be in a social space, in orbit, or offline.
/Actions/Items/EquipItems/ POST MoveEquipDestinyItems Equip a list of items by itemInstanceIds. You must have a valid Destiny Account, and either be in a social space, in orbit, or offline. Any items not found on your character will be ignored.
/Actions/Loadouts/EquipLoadout/ POST MoveEquipDestinyItems Equip a loadout. You must have a valid Destiny Account, and either be in a social space, in orbit, or offline.
/{membershipType}/Account/{destinyMembershipId}/Character/{characterId}/Stats/Activities/ GET Gets activity history stats for indicated character.
/{membershipType}/Profile/{destinyMembershipId}/Character/{characterId}/ GET Returns character information for the supplied character.
/Stats/AggregateClanStats/{groupId}/ GET Gets aggregated stats for a clan using the same categories as the clan leaderboards. PREVIEW: This endpoint is still in beta, and may experience rough edges. The schema is in final form, but there may be bugs that prevent desirable operation.
/Clan/ClanBannerDictionary/ GET Returns the dictionary of values for the Clan Banner
/Stats/Leaderboards/Clans/{groupId}/ GET Gets leaderboards with the signed in user's friends and the supplied destinyMembershipId as the focus. PREVIEW: This endpoint is still in beta, and may experience rough edges. The schema is in final form, but there may be bugs that prevent desirable operation.
/Clan/{groupId}/WeeklyRewardState/ GET Returns information on the weekly clan rewards and if the clan has earned them or not. Note that this will always report rewards as not redeemed.
/{membershipType}/Profile/{destinyMembershipId}/Character/{characterId}/Collectibles/{collectiblePresentationNodeHash}/ GET Given a Presentation Node that has Collectibles as direct descendants, this will return item details about those descendants in the context of the requesting character.
/{membershipType}/Account/{destinyMembershipId}/Character/{characterId}/Stats/AggregateActivityStats/ GET Gets all activities the character has participated in together with aggregate statistics for those activities.
/Manifest/{entityType}/{hashIdentifier}/ GET Returns the static definition of an entity of the given Type and hash identifier. Examine the API Documentation for the Type Names of entities that have their own definitions. Note that the return type will always *inherit from* DestinyDefinition, but the specific type returned will be the requested entity type if it can be found. Please don't use this as a chatty alternative to the Manifest database if you require large sets of data, but for simple and one-off accesses this should be handy.
/Manifest/ GET Returns the current version of the manifest as a json object.
/{membershipType}/Account/{destinyMembershipId}/Character/{characterId}/Stats/ GET Gets historical stats for indicated character.
/Stats/Definition/ GET Gets historical stats definitions.
/{membershipType}/Account/{destinyMembershipId}/Stats/ GET Gets aggregate historical stats organized around each character for a given account.
/{membershipType}/Profile/{destinyMembershipId}/Item/{itemInstanceId}/ GET Retrieve the details of an instanced Destiny Item. An instanced Destiny item is one with an ItemInstanceId. Non-instanced items, such as materials, have no useful instance-specific details and thus are not queryable here.
/{membershipType}/Account/{destinyMembershipId}/Stats/Leaderboards/ GET Gets leaderboards with the signed in user's friends and the supplied destinyMembershipId as the focus. PREVIEW: This endpoint has not yet been implemented. It is being returned for a preview of future functionality, and for public comment/suggestion/preparation.
/Stats/Leaderboards/{membershipType}/{destinyMembershipId}/{characterId}/ GET Gets leaderboards with the signed in user's friends and the supplied destinyMembershipId as the focus. PREVIEW: This endpoint is still in beta, and may experience rough edges. The schema is in final form, but there may be bugs that prevent desirable operation.
/{membershipType}/Profile/{membershipId}/LinkedProfiles/ GET Returns a summary information about all profiles linked to the requesting membership type/membership ID that have valid Destiny information. The passed-in Membership Type/Membership ID may be a Bungie.Net membership or a Destiny membership. It only returns the minimal amount of data to begin making more substantive requests, but will hopefully serve as a useful alternative to UserServices for people who just care about Destiny data. Note that it will only return linked accounts whose linkages you are allowed to view.
/Stats/PostGameCarnageReport/{activityId}/ GET Gets the available post game carnage report for the activity ID.
/{membershipType}/Profile/{destinyMembershipId}/ GET Returns Destiny Profile information for the supplied membership.
/Milestones/{milestoneHash}/Content/ GET Gets custom localized content for the milestone of the given hash, if it exists.
/Milestones/ GET Gets public information about currently available Milestones.
/Vendors/ GET Get items available from vendors where the vendors have items for sale that are common for everyone. If any portion of the Vendor's available inventory is character or account specific, we will be unable to return their data from this endpoint due to the way that available inventory is computed. As I am often guilty of saying: 'It's a long story...'
/{membershipType}/Triumphs/Reward/ POST BnetWrite Did you have a summah? If you did, call this endpoint to get your reward.
/{membershipType}/Account/{destinyMembershipId}/Character/{characterId}/Stats/UniqueWeapons/ GET Gets details about unique weapon usage, including all exotic weapons.
/{membershipType}/Profile/{destinyMembershipId}/Character/{characterId}/Vendors/{vendorHash}/ GET Get the details of a specific Vendor.
/{membershipType}/Profile/{destinyMembershipId}/Character/{characterId}/Vendors/ GET Get currently available vendors from the list of vendors that can possibly have rotating inventory. Note that this does not include things like preview vendors and vendors-as-kiosks, neither of whom have rotating/dynamic inventories. Use their definitions as-is for those.
/Actions/Items/InsertSocketPlug/ POST AdvancedWriteActions Insert a plug into a socketed item. I know how it sounds, but I assure you it's much more G-rated than you might be guessing. We haven't decided yet whether this will be able to insert plugs that have side effects, but if we do it will require special scope permission for an application attempting to do so. You must have a valid Destiny Account, and either be in a social space, in orbit, or offline. Request must include proof of permission for 'InsertPlugs' from the account owner.
/Actions/Items/InsertSocketPlugFree/ POST MoveEquipDestinyItems Insert a 'free' plug into an item's socket. This does not require 'Advanced Write Action' authorization and is available to 3rd-party apps, but will only work on 'free and reversible' socket actions (Perks, Armor Mods, Shaders, Ornaments, etc.). You must have a valid Destiny Account, and the character must either be in a social space, in orbit, or offline.
/Actions/Items/PullFromPostmaster/ POST MoveEquipDestinyItems Extract an item from the Postmaster, with whatever implications that may entail. You must have a valid Destiny account. You must also pass BOTH a reference AND an instance ID if it's an instanced item.
/{membershipType}/Profile/{destinyMembershipId}/Unlocks/ POST DestinyUnlockValueQuery Given a json of unlock flag/value hashes as input, returns the current state of each flag/value.
/Stats/PostGameCarnageReport/{activityId}/Report/ POST BnetWrite Report a player that you met in an activity that was engaging in ToS-violating activities. Both you and the offending player must have played in the activityId passed in. Please use this judiciously and only when you have strong suspicions of violation, pretty please.
/Armory/Search/{type}/{searchTerm}/ GET Gets a page list of Destiny items.
/SearchDestinyPlayerByBungieName/{membershipType}/ POST Returns a list of Destiny memberships given a global Bungie Display Name. This method will hide overridden memberships due to cross save.
/Actions/Items/SetLockState/ POST MoveEquipDestinyItems Set the Lock State for an instanced item. You must have a valid Destiny Account.
/Actions/Items/SetTrackedState/ POST MoveEquipDestinyItems Set the Tracking State for an instanced item, if that item is a Quest or Bounty. You must have a valid Destiny Account. Yeah, it's an item.
/Actions/Loadouts/SnapshotLoadout/ POST MoveEquipDestinyItems Snapshot a loadout with the currently equipped items.
/Actions/Items/TransferItem/ POST MoveEquipDestinyItems Transfer an item to/from your vault. You must have a valid Destiny account. You must also pass BOTH a reference AND an instance ID if it's an instanced item. itshappening.gif
/Actions/Loadouts/UpdateLoadoutIdentifiers/ POST MoveEquipDestinyItems Update the color, icon, and name of a loadout.