Inventory - Transfer Inventory Items
Transfer inventory items. When transferring across collections, a 202 response indicates that the transfer did not complete within the timeframe of the request. You can identify the pending operations by looking for OperationStatus = 'InProgress'. You can check on the operation status at anytime within 1 day of the request by passing the TransactionToken to the GetInventoryOperationStatus API. More information about item transfer scenarios can be found here: https://learn.microsoft.com/en-us/gaming/playfab/features/economy-v2/inventory/?tabs=inventory-game-manager#transfer-inventory-items
POST https://titleId.playfabapi.com/Inventory/TransferInventoryItems
Request Header
Name | Required | Type | Description |
---|---|---|---|
X-EntityToken | True |
string |
This API requires an Entity Session Token, available from the Entity GetEntityToken method. |
Request Body
Name | Required | Type | Description |
---|---|---|---|
DeleteEmptyStacks | True |
boolean |
Indicates whether stacks reduced to an amount of 0 during the request should be deleted from the inventory. (Default = false) |
Amount |
number |
The amount to transfer . |
|
CustomTags |
object |
The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). |
|
GivingCollectionId |
string |
The inventory collection id the request is transferring from. (Default="default") |
|
GivingETag |
string |
ETags are used for concurrency checking when updating resources (before transferring from). More information about using ETags can be found here: https://learn.microsoft.com/en-us/gaming/playfab/features/economy-v2/catalog/etags |
|
GivingEntity |
The entity the request is transferring from. Set to the caller by default. |
||
GivingItem |
The inventory item the request is transferring from. |
||
IdempotencyId |
string |
The idempotency id for the request. |
|
NewStackValues |
The values to apply to a stack newly created by this request. |
||
ReceivingCollectionId |
string |
The inventory collection id the request is transferring to. (Default="default") |
|
ReceivingEntity |
The entity the request is transferring to. Set to the caller by default. |
||
ReceivingItem |
The inventory item the request is transferring to. |
Responses
Name | Type | Description |
---|---|---|
200 OK | ||
400 Bad Request |
This is the outer wrapper for all responses with errors |
Security
X-EntityToken
This API requires an Entity Session Token, available from the Entity GetEntityToken method.
Type:
apiKey
In:
header
Definitions
Name | Description |
---|---|
Alternate |
|
Api |
The basic wrapper around every failed API response |
Entity |
Combined entity type and ID structure which uniquely identifies a single entity. |
Initial |
|
Inventory |
|
Transfer |
Transfer the specified inventory items of an entity's container Id to another entity's container Id. |
Transfer |
AlternateId
Name | Type | Description |
---|---|---|
Type |
string |
Type of the alternate ID. |
Value |
string |
Value of the alternate ID. |
ApiErrorWrapper
The basic wrapper around every failed API response
Name | Type | Description |
---|---|---|
code |
integer |
Numerical HTTP code |
error |
string |
Playfab error code |
errorCode |
integer |
Numerical PlayFab error code |
errorDetails |
object |
Detailed description of individual issues with the request object |
errorMessage |
string |
Description for the PlayFab errorCode |
status |
string |
String HTTP code |
EntityKey
Combined entity type and ID structure which uniquely identifies a single entity.
Name | Type | Description |
---|---|---|
Id |
string |
Unique ID of the entity. |
Type |
string |
Entity type. See https://docs.microsoft.com/gaming/playfab/features/data/entities/available-built-in-entity-types |
InitialValues
Name | Type | Description |
---|---|---|
DisplayProperties |
object |
Game specific properties for display purposes. The Display Properties field has a 1000 byte limit. |
InventoryItemReference
Name | Type | Description |
---|---|---|
AlternateId |
The inventory item alternate id the request applies to. |
|
Id |
string |
The inventory item id the request applies to. |
StackId |
string |
The inventory stack id the request should redeem to. (Default="default") |
TransferInventoryItemsRequest
Transfer the specified inventory items of an entity's container Id to another entity's container Id.
Name | Type | Description |
---|---|---|
Amount |
number |
The amount to transfer . |
CustomTags |
object |
The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). |
DeleteEmptyStacks |
boolean |
Indicates whether stacks reduced to an amount of 0 during the request should be deleted from the inventory. (Default = false) |
GivingCollectionId |
string |
The inventory collection id the request is transferring from. (Default="default") |
GivingETag |
string |
ETags are used for concurrency checking when updating resources (before transferring from). More information about using ETags can be found here: https://learn.microsoft.com/en-us/gaming/playfab/features/economy-v2/catalog/etags |
GivingEntity |
The entity the request is transferring from. Set to the caller by default. |
|
GivingItem |
The inventory item the request is transferring from. |
|
IdempotencyId |
string |
The idempotency id for the request. |
NewStackValues |
The values to apply to a stack newly created by this request. |
|
ReceivingCollectionId |
string |
The inventory collection id the request is transferring to. (Default="default") |
ReceivingEntity |
The entity the request is transferring to. Set to the caller by default. |
|
ReceivingItem |
The inventory item the request is transferring to. |
TransferInventoryItemsResponse
Name | Type | Description |
---|---|---|
GivingETag |
string |
ETags are used for concurrency checking when updating resources (after transferring from). More information about using ETags can be found here: https://learn.microsoft.com/en-us/gaming/playfab/features/economy-v2/catalog/etags |
GivingTransactionIds |
string[] |
The ids of transactions that occurred as a result of the request's giving action. |
IdempotencyId |
string |
The idempotency id for the request. |
OperationStatus |
string |
The transfer operation status. Possible values are 'InProgress' or 'Completed'. If the operation has completed, the response code will be 200. Otherwise, it will be 202. |
OperationToken |
string |
The token that can be used to get the status of the transfer operation. This will only have a value if OperationStatus is 'InProgress'. |
ReceivingTransactionIds |
string[] |
The ids of transactions that occurred as a result of the request's receiving action. |
Error Codes
Name | Code |
---|---|
DatabaseThroughputExceeded | 1113 |
InsufficientFunds | 1059 |
ItemNotFound | 1047 |