> ## Documentation Index
> Fetch the complete documentation index at: https://devdocs.xbox.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Colecciones de inventario

> Use las colecciones de inventario de PlayFab Economy v2 para particionar el inventario del jugador en grupos con nombre para personajes, equipamientos o contenedores de almacenamiento.

# Colecciones

<Info>
  Economy v2 ya está disponible con carácter general. Para obtener soporte técnico y enviar comentarios, vaya al [foro de PlayFab](https://community.playfab.com).
</Info>

El servicio de inventario de Economy v2 introduce el concepto de colecciones, que puede agregar mayor flexibilidad y compatibilidad para sus necesidades de inventario. Las colecciones son el mecanismo que permite que un único jugador/PlayerId tenga varios inventarios. Esta característica se puede usar para administrar varios inventarios para diferentes personajes del mismo jugador, tener inventarios independientes para distintas plataformas, ¡y mucho más!

Las llamadas a la API de inventario pueden aceptar un parámetro `CollectionId` que especifica la colección o el inventario en el que se realizará la acción. Para crear una colección nueva, se agrega un artículo o una pila a un CollectionId sin usar.

## Administración de las colecciones de inventario

### GetInventoryCollectionIds

Con la API `GetInventoryCollectionIds`, puede obtener una lista de `CollectionId` de un jugador determinado. Los jugadores solo pueden acceder a su propia lista de identificadores. Las entidades de título pueden pasar un parámetro `Entity` para indicar a qué inventario de jugador quieren acceder.

Un ejemplo de solicitud `GetInventoryCollectionIds`:

```json theme={null}
{
  "Entity": {
    "Type": "title_player_account",
    "Id": "ABCD12345678"
  },
  "Count": 15,
  "ContinuationToken": "abc="
}
```

Esta solicitud devolvería la siguiente respuesta:

```json theme={null}
{
  "data": {
  "CollectionIds": [
    "default",
    "main_character"
    ]
  }
}
```

#### Tokens de continuación

El campo `ContinuationToken` que se devuelve en una respuesta de búsqueda se puede pasar en una solicitud de inventario para paginar entre varios conjuntos de resultados.

### Adición de una nueva colección de inventario

Para crear una colección nueva para un jugador, se realiza cualquier solicitud de escritura con un CollectionId nuevo.

Por ejemplo, la siguiente solicitud `AddInventoryItems` usa el collectionId `main_character`

```json theme={null}
{
    "Entity": {
        "Type": "title_player_account",
        "Id": "ABCD12345678"
    },
    "CollectionId": "main_character",
    "Item": {
        "Id": "0b440353-bdbc-48d8-8873-f0988c1f9d8b",
    },
    "Amount": 10,
}
```

La solicitud anterior crearía una colección de inventario completamente nueva y agregaría 10 unidades del artículo, o bien agregaría 10 a la colección de inventario `main_character` existente si ya existiera.

### DeleteInventoryCollection

En la API `DeleteInventoryCollectionId`, puede definir el `CollectionId`
que quiere eliminar. La eliminación es una operación asincrónica y puede tardar más en el caso de colecciones grandes. La colección no se podrá volver a crear hasta que se complete la operación de eliminación.

Un ejemplo de solicitud `DeleteInventoryCollectionIds`:

```json theme={null}
{
  "Entity": {
    "Type": "title_player_account",
    "Id": "ABCD12345678"
  },
  "CollectionId": "main_character"
}
```

<Note>
  Actualmente, las API son la única forma de eliminar colecciones de inventario. Por ahora, Game Manager solo se puede usar para ver y agregar artículos a colecciones nuevas y existentes. En el futuro se agregará más funcionalidad.
</Note>

### API ExecuteInventoryOperations

Puede establecer un parámetro `CollectionId` en la API `ExecuteInventoryOperations`. Este parámetro le permite definir la colección en la que quiere que se realicen las operaciones.

Un ejemplo de solicitud `ExecuteInventoryOperations` con pilas:

```json theme={null}
{
    "Entity": {
        "Type": "title_player_account",
        "Id": "ABCD12345678"
    },
    "CollectionId": "main_character",
    "Operations": [
        {
            "Update": {
                "Item" {
                    "Id": "0b440353-bdbc-48d8-8873-f0988c1f9d8b",
                    "Amount": 10
                }
            }
        },
        {
            "Subtract": {
                "Item" {
                    "Id": "0b440353-bdbc-48d8-8873-f0988c1f9d8b",
                },
                "Amount": 5
            }
        }
    ]
}
```


## Related topics

- [Límites de Economy V2](/es/services/playfab/economy-monetization/economy-v2/limits.md)
- [API de inventario de PlayFab](/es/services/playfab/economy-monetization/economy-v2/inventory/index.md)
- [Información general sobre artículos e inventario](/es/services/playfab/economy-monetization/economy-v2/inventory/items-and-inventory-overview.md)
- [PFInventoryDeleteInventoryCollectionAsync](/es/services/playfab/api-references/c/pfinventory/functions/pfinventorydeleteinventorycollectionasync.md)
- [PFInventoryGetInventoryCollectionIdsRequest](/es/services/playfab/api-references/c/pfinventorytypes/structs/pfinventorygetinventorycollectionidsrequest.md)
