bungieapi.generated.components.schemas.destiny.components package

Submodules

bungieapi.generated.components.schemas.destiny.components.collectibles module

class bungieapi.generated.components.schemas.destiny.components.collectibles.DestinyCollectibleComponent(state: Optional[ForwardRef('DestinyCollectibleState')] = None)[source]

Bases: object

state: Optional[bungieapi.generated.components.schemas.destiny.DestinyCollectibleState] = None
to_json() Mapping[str, Any][source]
class bungieapi.generated.components.schemas.destiny.components.collectibles.DestinyCollectiblesComponent(collectibles: Optional[Mapping[str, ForwardRef('DestinyCollectibleComponent')]] = None, collection_badges_root_node_hash: Optional[int] = None, collection_categories_root_node_hash: Optional[int] = None)[source]

Bases: object

collectibles: Optional[Mapping[str, bungieapi.generated.components.schemas.destiny.components.collectibles.DestinyCollectibleComponent]] = None
collection_badges_root_node_hash: Optional[int] = None
collection_categories_root_node_hash: Optional[int] = None
to_json() Mapping[str, Any][source]
class bungieapi.generated.components.schemas.destiny.components.collectibles.DestinyProfileCollectiblesComponent(collectibles: Optional[Mapping[str, ForwardRef('DestinyCollectibleComponent')]] = None, collection_badges_root_node_hash: Optional[int] = None, collection_categories_root_node_hash: Optional[int] = None, newness_flagged_collectible_hashes: Optional[Sequence[int]] = None, recent_collectible_hashes: Optional[Sequence[int]] = None)[source]

Bases: object

collectibles: Optional[Mapping[str, bungieapi.generated.components.schemas.destiny.components.collectibles.DestinyCollectibleComponent]] = None
collection_badges_root_node_hash: Optional[int] = None
collection_categories_root_node_hash: Optional[int] = None
newness_flagged_collectible_hashes: Optional[Sequence[int]] = None
recent_collectible_hashes: Optional[Sequence[int]] = None
to_json() Mapping[str, Any][source]

bungieapi.generated.components.schemas.destiny.components.inventory module

class bungieapi.generated.components.schemas.destiny.components.inventory.DestinyCurrenciesComponent(item_quantities: Optional[Mapping[str, int]] = None)[source]

Bases: object

This component provides a quick lookup of every item the requested character has and how much of that item they have.

Requesting this component will allow you to circumvent manually putting together the list of which currencies you have for the purpose of testing currency requirements on an item being purchased, or operations that have costs. You could figure this out yourself by doing a GetCharacter or GetProfile request and forming your own lookup table, but that is inconvenient enough that this feels like a worthwhile (and optional) redundency. Don’t bother requesting it if you have already created your own lookup from prior GetCharacter/GetProfile calls.

item_quantities: Optional[Mapping[str, int]] = None
to_json() Mapping[str, Any][source]
class bungieapi.generated.components.schemas.destiny.components.inventory.DestinyPlatformSilverComponent(platform_silver: Optional[Mapping[str, ForwardRef('DestinyItemComponent')]] = None)[source]

Bases: object

platform_silver: Optional[Mapping[str, bungieapi.generated.components.schemas.destiny.entities.items.DestinyItemComponent]] = None
to_json() Mapping[str, Any][source]

bungieapi.generated.components.schemas.destiny.components.items module

class bungieapi.generated.components.schemas.destiny.components.items.DestinyItemPlugComponent(can_insert: Optional[bool] = None, enable_fail_indexes: Optional[Sequence[int]] = None, enabled: Optional[bool] = None, insert_fail_indexes: Optional[Sequence[int]] = None, plug_item_hash: Optional[int] = None, plug_objectives: Optional[Sequence[bungieapi.generated.components.schemas.destiny.quests.DestinyObjectiveProgress]] = None)[source]

Bases: object

Plugs are non-instanced items that can provide Stat and Perk benefits when socketed into an instanced item.

Items have Sockets, and Plugs are inserted into Sockets. This component finds all items that are considered “Plugs” in your inventory, and return information about the plug aside from any specific Socket into which it could be inserted.

can_insert: Optional[bool] = None
enable_fail_indexes: Optional[Sequence[int]] = None
enabled: Optional[bool] = None
insert_fail_indexes: Optional[Sequence[int]] = None
plug_item_hash: Optional[int] = None
plug_objectives: Optional[Sequence[bungieapi.generated.components.schemas.destiny.quests.DestinyObjectiveProgress]] = None
to_json() Mapping[str, Any][source]
class bungieapi.generated.components.schemas.destiny.components.items.DestinyItemPlugObjectivesComponent(objectives_per_plug: Optional[Mapping[str, Sequence[ForwardRef('DestinyObjectiveProgress')]]] = None)[source]

Bases: object

objectives_per_plug: Optional[Mapping[str, Sequence[bungieapi.generated.components.schemas.destiny.quests.DestinyObjectiveProgress]]] = None
to_json() Mapping[str, Any][source]
class bungieapi.generated.components.schemas.destiny.components.items.DestinyItemReusablePlugsComponent(plugs: Optional[Mapping[str, Sequence[ForwardRef('DestinyItemPlugBase')]]] = None)[source]

Bases: object

plugs: Optional[Mapping[str, Sequence[bungieapi.generated.components.schemas.destiny.sockets.DestinyItemPlugBase]]] = None
to_json() Mapping[str, Any][source]

bungieapi.generated.components.schemas.destiny.components.kiosks module

class bungieapi.generated.components.schemas.destiny.components.kiosks.DestinyKioskItem(can_acquire: Optional[bool] = None, failure_indexes: Optional[Sequence[int]] = None, flavor_objective: Optional[ForwardRef('DestinyObjectiveProgress')] = None, index: Optional[int] = None)[source]

Bases: object

can_acquire: Optional[bool] = None
failure_indexes: Optional[Sequence[int]] = None
flavor_objective: Optional[bungieapi.generated.components.schemas.destiny.quests.DestinyObjectiveProgress] = None
index: Optional[int] = None
to_json() Mapping[str, Any][source]
class bungieapi.generated.components.schemas.destiny.components.kiosks.DestinyKiosksComponent(kiosk_items: Optional[Mapping[str, Sequence[bungieapi.generated.components.schemas.destiny.components.kiosks.DestinyKioskItem]]] = None)[source]

Bases: object

A Kiosk is a Vendor (DestinyVendorDefinition) that sells items based on whether you have already acquired that item before.

This component returns information about what Kiosk items are available to you on a Profile level. It is theoretically possible for Kiosks to have items gated by specific Character as well. If you ever have those, you will find them on the individual character’s DestinyCharacterKiosksComponent. Note that, because this component returns vendorItemIndexes (that is to say, indexes into the Kiosk Vendor’s itemList property), these results are necessarily content version dependent. Make sure that you have the latest version of the content manifest databases before using this data.

kiosk_items: Optional[Mapping[str, Sequence[bungieapi.generated.components.schemas.destiny.components.kiosks.DestinyKioskItem]]] = None
to_json() Mapping[str, Any][source]

bungieapi.generated.components.schemas.destiny.components.metrics module

class bungieapi.generated.components.schemas.destiny.components.metrics.DestinyMetricComponent(invisible: Optional[bool] = None, objective_progress: Optional[ForwardRef('DestinyObjectiveProgress')] = None)[source]

Bases: object

invisible: Optional[bool] = None
objective_progress: Optional[bungieapi.generated.components.schemas.destiny.quests.DestinyObjectiveProgress] = None
to_json() Mapping[str, Any][source]
class bungieapi.generated.components.schemas.destiny.components.metrics.DestinyMetricsComponent(metrics: Optional[Mapping[str, ForwardRef('DestinyMetricComponent')]] = None, metrics_root_node_hash: Optional[int] = None)[source]

Bases: object

metrics: Optional[Mapping[str, bungieapi.generated.components.schemas.destiny.components.metrics.DestinyMetricComponent]] = None
metrics_root_node_hash: Optional[int] = None
to_json() Mapping[str, Any][source]

bungieapi.generated.components.schemas.destiny.components.plug_sets module

class bungieapi.generated.components.schemas.destiny.components.plug_sets.DestinyPlugSetsComponent(plugs: Optional[Mapping[str, Sequence[bungieapi.generated.components.schemas.destiny.sockets.DestinyItemPlug]]] = None)[source]

Bases: object

Sockets may refer to a “Plug Set”: a set of reusable plugs that may be shared across multiple sockets (or even, in theory, multiple sockets over multiple items).

This is the set of those plugs that we came across in the users’ inventory, along with the values for plugs in the set. Any given set in this component may be represented in Character and Profile-level, as some plugs may be Profile-level restricted, and some character- level restricted. (note that the ones that are even more specific will remain on the actual socket component itself, as they cannot be reused)

plugs: Optional[Mapping[str, Sequence[bungieapi.generated.components.schemas.destiny.sockets.DestinyItemPlug]]] = None
to_json() Mapping[str, Any][source]

bungieapi.generated.components.schemas.destiny.components.presentation module

class bungieapi.generated.components.schemas.destiny.components.presentation.DestinyPresentationNodeComponent(completion_value: Optional[int] = None, objective: Optional[ForwardRef('DestinyObjectiveProgress')] = None, progress_value: Optional[int] = None, record_category_score: Optional[int] = None, state: Optional[ForwardRef('DestinyPresentationNodeState')] = None)[source]

Bases: object

completion_value: Optional[int] = None
objective: Optional[bungieapi.generated.components.schemas.destiny.quests.DestinyObjectiveProgress] = None
progress_value: Optional[int] = None
record_category_score: Optional[int] = None
state: Optional[bungieapi.generated.components.schemas.destiny.DestinyPresentationNodeState] = None
to_json() Mapping[str, Any][source]
class bungieapi.generated.components.schemas.destiny.components.presentation.DestinyPresentationNodesComponent(nodes: Optional[Mapping[str, ForwardRef('DestinyPresentationNodeComponent')]] = None)[source]

Bases: object

nodes: Optional[Mapping[str, bungieapi.generated.components.schemas.destiny.components.presentation.DestinyPresentationNodeComponent]] = None
to_json() Mapping[str, Any][source]

bungieapi.generated.components.schemas.destiny.components.profiles module

class bungieapi.generated.components.schemas.destiny.components.profiles.DestinyProfileProgressionComponent(checklists: Optional[Mapping[str, Mapping[str, bool]]] = None, seasonal_artifact: Optional[bungieapi.generated.components.schemas.destiny.artifacts.DestinyArtifactProfileScoped] = None)[source]

Bases: object

The set of progression-related information that applies at a Profile- wide level for your Destiny experience.

This differs from the Jimi Hendrix Experience because there’s less guitars on fire. Yet. #spoileralert? This will include information such as Checklist info.

checklists: Optional[Mapping[str, Mapping[str, bool]]] = None
seasonal_artifact: Optional[bungieapi.generated.components.schemas.destiny.artifacts.DestinyArtifactProfileScoped] = None
to_json() Mapping[str, Any][source]
class bungieapi.generated.components.schemas.destiny.components.profiles.DestinyProfileTransitoryComponent(current_activity: Optional[bungieapi.generated.components.schemas.destiny.components.profiles.DestinyProfileTransitoryCurrentActivity] = None, joinability: Optional[bungieapi.generated.components.schemas.destiny.components.profiles.DestinyProfileTransitoryJoinability] = None, last_orbited_destination_hash: Optional[int] = None, party_members: Optional[Sequence[bungieapi.generated.components.schemas.destiny.components.profiles.DestinyProfileTransitoryPartyMember]] = None, tracking: Optional[Sequence[bungieapi.generated.components.schemas.destiny.components.profiles.DestinyProfileTransitoryTrackingEntry]] = None)[source]

Bases: object

This is an experimental set of data that Bungie considers to be “transitory” - information that may be useful for API users, but that is coming from a non-authoritative data source about information that could potentially change at a more frequent pace than Bungie.net will receive updates about it. This information is provided exclusively for convenience should any of it be useful to users: we provide no guarantees to the accuracy or timeliness of data that comes from this source. Know that this data can potentially be out-of-date or even wrong entirely if the user disconnected from the game or suddenly changed their status before we can receive refreshed data.

current_activity: Optional[bungieapi.generated.components.schemas.destiny.components.profiles.DestinyProfileTransitoryCurrentActivity] = None
joinability: Optional[bungieapi.generated.components.schemas.destiny.components.profiles.DestinyProfileTransitoryJoinability] = None
last_orbited_destination_hash: Optional[int] = None
party_members: Optional[Sequence[bungieapi.generated.components.schemas.destiny.components.profiles.DestinyProfileTransitoryPartyMember]] = None
to_json() Mapping[str, Any][source]
tracking: Optional[Sequence[bungieapi.generated.components.schemas.destiny.components.profiles.DestinyProfileTransitoryTrackingEntry]] = None
class bungieapi.generated.components.schemas.destiny.components.profiles.DestinyProfileTransitoryCurrentActivity(end_time: Optional[str] = None, highest_opposing_faction_score: Optional[float] = None, number_of_opponents: Optional[int] = None, number_of_players: Optional[int] = None, score: Optional[float] = None, start_time: Optional[str] = None)[source]

Bases: object

If you are playing in an activity, this is some information about it.

Note that we cannot guarantee any of this resembles what ends up in the PGCR in any way. They are sourced by two entirely separate systems with their own logic, and the one we source this data from should be considered non-authoritative in comparison.

end_time: Optional[str] = None
highest_opposing_faction_score: Optional[float] = None
number_of_opponents: Optional[int] = None
number_of_players: Optional[int] = None
score: Optional[float] = None
start_time: Optional[str] = None
to_json() Mapping[str, Any][source]
class bungieapi.generated.components.schemas.destiny.components.profiles.DestinyProfileTransitoryJoinability(closed_reasons: Optional[bungieapi.generated.components.schemas.destiny.DestinyJoinClosedReasons] = None, open_slots: Optional[int] = None, privacy_setting: Optional[bungieapi.generated.components.schemas.destiny.DestinyGamePrivacySetting] = None)[source]

Bases: object

Some basic information about whether you can be joined, how many slots are left etc.

Note that this can change quickly, so it may not actually be useful. But perhaps it will be in some use cases?

closed_reasons: Optional[bungieapi.generated.components.schemas.destiny.DestinyJoinClosedReasons] = None
open_slots: Optional[int] = None
privacy_setting: Optional[bungieapi.generated.components.schemas.destiny.DestinyGamePrivacySetting] = None
to_json() Mapping[str, Any][source]
class bungieapi.generated.components.schemas.destiny.components.profiles.DestinyProfileTransitoryPartyMember(display_name: Optional[str] = None, emblem_hash: Optional[int] = None, membership_id: Optional[int] = None, status: Optional[bungieapi.generated.components.schemas.destiny.DestinyPartyMemberStates] = None)[source]

Bases: object

This is some bare minimum information about a party member in a Fireteam.

Unfortunately, without great computational expense on our side we can only get at the data contained here. I’d like to give you a character ID for example, but we don’t have it. But we do have these three pieces of information. May they help you on your quest to show meaningful data about current Fireteams. Notably, we don’t and can’t feasibly return info on characters. If you can, try to use just the data below for your UI and purposes. Only hit us with further queries if you absolutely must know the character ID of the currently playing character. Pretty please with sugar on top.

display_name: Optional[str] = None
emblem_hash: Optional[int] = None
membership_id: Optional[int] = None
status: Optional[bungieapi.generated.components.schemas.destiny.DestinyPartyMemberStates] = None
to_json() Mapping[str, Any][source]
class bungieapi.generated.components.schemas.destiny.components.profiles.DestinyProfileTransitoryTrackingEntry(activity_hash: Optional[int] = None, item_hash: Optional[int] = None, location_hash: Optional[int] = None, objective_hash: Optional[int] = None, questline_item_hash: Optional[int] = None, tracked_date: Optional[str] = None)[source]

Bases: object

This represents a single “thing” being tracked by the player.

This can point to many types of entities, but only a subset of them will actually have a valid hash identifier for whatever it is being pointed to. It’s up to you to interpret what it means when various combinations of these entries have values being tracked.

activity_hash: Optional[int] = None
item_hash: Optional[int] = None
location_hash: Optional[int] = None
objective_hash: Optional[int] = None
questline_item_hash: Optional[int] = None
to_json() Mapping[str, Any][source]
tracked_date: Optional[str] = None

bungieapi.generated.components.schemas.destiny.components.records module

class bungieapi.generated.components.schemas.destiny.components.records.DestinyCharacterRecordsComponent(featured_record_hashes: Optional[Sequence[int]] = None, record_categories_root_node_hash: Optional[int] = None, record_seals_root_node_hash: Optional[int] = None, records: Optional[Mapping[str, ForwardRef('DestinyRecordComponent')]] = None)[source]

Bases: object

featured_record_hashes: Optional[Sequence[int]] = None
record_categories_root_node_hash: Optional[int] = None
record_seals_root_node_hash: Optional[int] = None
records: Optional[Mapping[str, bungieapi.generated.components.schemas.destiny.components.records.DestinyRecordComponent]] = None
to_json() Mapping[str, Any][source]
class bungieapi.generated.components.schemas.destiny.components.records.DestinyProfileRecordsComponent(active_score: Optional[int] = None, legacy_score: Optional[int] = None, lifetime_score: Optional[int] = None, record_categories_root_node_hash: Optional[int] = None, record_seals_root_node_hash: Optional[int] = None, records: Optional[Mapping[str, ForwardRef('DestinyRecordComponent')]] = None, score: Optional[int] = None, tracked_record_hash: Optional[int] = None)[source]

Bases: object

active_score: Optional[int] = None
legacy_score: Optional[int] = None
lifetime_score: Optional[int] = None
record_categories_root_node_hash: Optional[int] = None
record_seals_root_node_hash: Optional[int] = None
records: Optional[Mapping[str, bungieapi.generated.components.schemas.destiny.components.records.DestinyRecordComponent]] = None
score: Optional[int] = None
to_json() Mapping[str, Any][source]
tracked_record_hash: Optional[int] = None
class bungieapi.generated.components.schemas.destiny.components.records.DestinyRecordComponent(completed_count: Optional[int] = None, interval_objectives: Optional[Sequence[ForwardRef('DestinyObjectiveProgress')]] = None, intervals_redeemed_count: Optional[int] = None, objectives: Optional[Sequence[ForwardRef('DestinyObjectiveProgress')]] = None, reward_visibilty: Optional[Sequence[bool]] = None, state: Optional[ForwardRef('DestinyRecordState')] = None)[source]

Bases: object

completed_count: Optional[int] = None
interval_objectives: Optional[Sequence[bungieapi.generated.components.schemas.destiny.quests.DestinyObjectiveProgress]] = None
intervals_redeemed_count: Optional[int] = None
objectives: Optional[Sequence[bungieapi.generated.components.schemas.destiny.quests.DestinyObjectiveProgress]] = None
reward_visibilty: Optional[Sequence[bool]] = None
state: Optional[bungieapi.generated.components.schemas.destiny.DestinyRecordState] = None
to_json() Mapping[str, Any][source]
class bungieapi.generated.components.schemas.destiny.components.records.DestinyRecordsComponent(record_categories_root_node_hash: Optional[int] = None, record_seals_root_node_hash: Optional[int] = None, records: Optional[Mapping[str, ForwardRef('DestinyRecordComponent')]] = None)[source]

Bases: object

record_categories_root_node_hash: Optional[int] = None
record_seals_root_node_hash: Optional[int] = None
records: Optional[Mapping[str, bungieapi.generated.components.schemas.destiny.components.records.DestinyRecordComponent]] = None
to_json() Mapping[str, Any][source]

bungieapi.generated.components.schemas.destiny.components.string_variables module

class bungieapi.generated.components.schemas.destiny.components.string_variables.DestinyStringVariablesComponent(integer_values_by_hash: Optional[Mapping[str, int]] = None)[source]

Bases: object

integer_values_by_hash: Optional[Mapping[str, int]] = None
to_json() Mapping[str, Any][source]

bungieapi.generated.components.schemas.destiny.components.vendors module

class bungieapi.generated.components.schemas.destiny.components.vendors.DestinyPublicVendorComponent(enabled: Optional[bool] = None, next_refresh_date: Optional[str] = None, vendor_hash: Optional[int] = None)[source]

Bases: object

This component contains essential/summary information about the vendor from the perspective of a character-agnostic view.

enabled: Optional[bool] = None
next_refresh_date: Optional[str] = None
to_json() Mapping[str, Any][source]
vendor_hash: Optional[int] = None
class bungieapi.generated.components.schemas.destiny.components.vendors.DestinyPublicVendorSaleItemComponent(api_purchasable: Optional[bool] = None, costs: Optional[Sequence[bungieapi.generated.components.schemas.destiny.DestinyItemQuantity]] = None, item_hash: Optional[int] = None, override_next_refresh_date: Optional[str] = None, override_style_item_hash: Optional[int] = None, quantity: Optional[int] = None, vendor_item_index: Optional[int] = None)[source]

Bases: object

Has character-agnostic information about an item being sold by a vendor.

Note that if you want instance, stats, etc… data for the item, you’ll have to request additional components such as ItemInstances, ItemPerks etc… and acquire them from the DestinyVendorResponse’s “items” property. For most of these, however, you’ll have to ask for it in context of a specific character.

api_purchasable: Optional[bool] = None
costs: Optional[Sequence[bungieapi.generated.components.schemas.destiny.DestinyItemQuantity]] = None
item_hash: Optional[int] = None
override_next_refresh_date: Optional[str] = None
override_style_item_hash: Optional[int] = None
quantity: Optional[int] = None
to_json() Mapping[str, Any][source]
vendor_item_index: Optional[int] = None
class bungieapi.generated.components.schemas.destiny.components.vendors.DestinyVendorBaseComponent(enabled: Optional[bool] = None, next_refresh_date: Optional[str] = None, vendor_hash: Optional[int] = None)[source]

Bases: object

This component contains essential/summary information about the vendor.

enabled: Optional[bool] = None
next_refresh_date: Optional[str] = None
to_json() Mapping[str, Any][source]
vendor_hash: Optional[int] = None
class bungieapi.generated.components.schemas.destiny.components.vendors.DestinyVendorGroup(vendor_group_hash: Optional[int] = None, vendor_hashes: Optional[Sequence[int]] = None)[source]

Bases: object

Represents a specific group of vendors that can be rendered in the recommended order.

How do we figure out this order? It’s a long story, and will likely get more complicated over time.

to_json() Mapping[str, Any][source]
vendor_group_hash: Optional[int] = None
vendor_hashes: Optional[Sequence[int]] = None
class bungieapi.generated.components.schemas.destiny.components.vendors.DestinyVendorGroupComponent(groups: Optional[Sequence[bungieapi.generated.components.schemas.destiny.components.vendors.DestinyVendorGroup]] = None)[source]

Bases: object

This component returns references to all of the Vendors in the response, grouped by categorizations that Bungie has deemed to be interesting, in the order in which both the groups and the vendors within that group should be rendered.

groups: Optional[Sequence[bungieapi.generated.components.schemas.destiny.components.vendors.DestinyVendorGroup]] = None
to_json() Mapping[str, Any][source]
class bungieapi.generated.components.schemas.destiny.components.vendors.DestinyVendorSaleItemBaseComponent(api_purchasable: Optional[bool] = None, costs: Optional[Sequence[bungieapi.generated.components.schemas.destiny.DestinyItemQuantity]] = None, item_hash: Optional[int] = None, override_next_refresh_date: Optional[str] = None, override_style_item_hash: Optional[int] = None, quantity: Optional[int] = None, vendor_item_index: Optional[int] = None)[source]

Bases: object

The base class for Vendor Sale Item data.

Has a bunch of character-agnostic state about the item being sold. Note that if you want instance, stats, etc… data for the item, you’ll have to request additional components such as ItemInstances, ItemPerks etc… and acquire them from the DestinyVendorResponse’s “items” property.

api_purchasable: Optional[bool] = None
costs: Optional[Sequence[bungieapi.generated.components.schemas.destiny.DestinyItemQuantity]] = None
item_hash: Optional[int] = None
override_next_refresh_date: Optional[str] = None
override_style_item_hash: Optional[int] = None
quantity: Optional[int] = None
to_json() Mapping[str, Any][source]
vendor_item_index: Optional[int] = None

Module contents