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

# Token transfers for a wallet

> Transferencias de un token hacia o desde una wallet. Sala: `transfer:{mint}:{wallet}`. Cada transferencia tiene `direction` relativa a la wallet, y `balances` lista los cambios de saldo de ese token en la wallet. Funciona para SOL con el mint de wrapped SOL. Añade `:enriched` para obtener metadatos del token, valores en USD e identidades de wallets. Los eventos son provisionales con compromiso processed.

## WebSocket example

```javascript theme={null}
const mint = "So11111111111111111111111111111111111111112"; // SOL works here
const wallet = "GachaNgyXTU3zFogQ8Z5jR2BLXs8215X2AtEH18VxJq3";
const room = `transfer:${mint}:${wallet}`; // or `${...}:enriched` for token metadata, USD values and wallet identities
const ws = new WebSocket("wss://datastream.solanatracker.io/YOUR_API_KEY");

ws.addEventListener("open", () => {
  ws.send(JSON.stringify({ type: "join", room }));
});

ws.addEventListener("message", (event) => {
  const msg = JSON.parse(event.data);
  if (msg.type === "ping") return ws.send(JSON.stringify({ type: "pong" }));
  if (msg.type !== "message") return;

  const { signature, transfers, balances } = msg.data;
  for (const t of transfers) {
    console.log(signature, t.direction ?? "", t.uiAmount, t.mint, t.from.owner, "->", t.to.owner);
  }
});
```

Se envía un mensaje por transacción. Las cantidades son cadenas de enteros en bruto con un `uiAmount` exacto. Una transferencia que forma parte de un swap ya emitido en las salas de trades no se vuelve a enviar; lo que queda de un swap (comisiones de plataforma, propinas, pagos) llega con `swapTx: true`. Consulta la [guía de transferencias](https://docs.solanatracker.io/es/guides/transfers.md) para combinar el historial con las actualizaciones en vivo.

## SDK Example

```typescript theme={null}
import { Datastream } from '@solana-tracker/data-api';

const dataStream = new Datastream({
  wsUrl: 'wss://datastream.solanatracker.io/YOUR_API_KEY',
});

dataStream.on('error', console.error);
await dataStream.connect();

const sub = dataStream.subscribe.transfers.tokenWallet('EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v', 'FbMxP3GVq8TQ36nbYgx4NP9iygMpwAwFWJwW81ioCiSF', { enriched: true }).on((data) => {
  console.log(data);
});

// sub.unsubscribe();
```


## AsyncAPI

````yaml es/datastream/transfers.json transferMintWallet
id: transferMintWallet
title: Transfer mint wallet
description: >-
  Transferencias de un token hacia o desde una wallet. Sala:
  `transfer:{mint}:{wallet}`. Cada transferencia tiene `direction` relativa a la
  wallet, y `balances` lista los cambios de saldo de ese token en la wallet.
  Funciona para SOL con el mint de wrapped SOL. Añade `:enriched` para obtener
  metadatos del token, valores en USD e identidades de wallets. Los eventos son
  provisionales con compromiso processed.
servers:
  - id: production
    protocol: wss
    host: datastream.solanatracker.io
    bindings: []
    variables:
      - id: apiKey
        description: Su clave API única de la suscripción a Data API
        defaultValue: YOUR_DATASTREAM_KEY
        allowedValues: []
        examples: []
address: /
parameters: []
bindings: []
operations:
  - &ref_21
    id: subscribeTokenWalletTransfers
    title: Subscribe token wallet transfers
    description: Subscribe to token transfers for a wallet
    type: receive
    messages:
      - &ref_24
        id: join
        payload:
          - name: Subscribe to token transfers for a wallet
            type: object
            properties:
              - name: type
                type: string
                description: join
                required: true
              - name: room
                type: string
                description: >-
                  transfer:{mint}:{wallet} (añade :enriched para metadatos del
                  token, valores en USD e identidades de wallets)
                required: true
        headers: []
        jsonPayloadSchema:
          type: object
          required:
            - type
            - room
          properties:
            type:
              type: string
              const: join
              default: join
              x-parser-schema-id: <anonymous-schema-87>
            room:
              type: string
              default: >-
                transfer:EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v:GachaNgyXTU3zFogQ8Z5jR2BLXs8215X2AtEH18VxJq3
              description: >-
                transfer:{mint}:{wallet} (añade :enriched para metadatos del
                token, valores en USD e identidades de wallets)
              x-parser-schema-id: <anonymous-schema-88>
          examples:
            - type: join
              room: >-
                transfer:EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v:GachaNgyXTU3zFogQ8Z5jR2BLXs8215X2AtEH18VxJq3
          x-parser-schema-id: <anonymous-schema-86>
        title: Subscribe to token transfers for a wallet
        example: |-
          {
            "type": "join",
            "room": "transfer:EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v:GachaNgyXTU3zFogQ8Z5jR2BLXs8215X2AtEH18VxJq3"
          }
        bindings: []
        extensions:
          - id: x-parser-unique-object-id
            value: join
          - id: x-parser-message-name
            value: join
    bindings: []
    extensions: &ref_20
      - id: x-codeSamples
        value: &ref_27
          - lang: typescript
            label: SDK
            source: >
              import { Datastream } from '@solana-tracker/data-api';


              const dataStream = new Datastream({
                wsUrl: 'wss://datastream.solanatracker.io/YOUR_API_KEY',
              });


              dataStream.on('error', console.error);

              await dataStream.connect();


              const sub =
              dataStream.subscribe.transfers.tokenWallet('EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v',
              'FbMxP3GVq8TQ36nbYgx4NP9iygMpwAwFWJwW81ioCiSF', { enriched: true
              }).on((data) => {
                console.log(data);
              });


              // sub.unsubscribe();
      - id: x-parser-unique-object-id
        value: transferMintWallet
  - &ref_23
    id: receiveTokenWalletTransfers
    title: Receive token wallet transfers
    description: Token transfers for a wallet notification
    type: send
    messages:
      - &ref_26
        id: message
        payload:
          - name: Token transfers for a wallet notification
            type: object
            properties:
              - name: type
                type: string
                description: message
                required: true
              - name: room
                type: string
                required: true
              - name: data
                type: object
                required: true
                properties:
                  - name: signature
                    type: string
                    required: true
                  - name: slot
                    type: integer
                    required: true
                  - name: timestamp
                    type: &ref_6
                      - integer
                      - 'null'
                    description: >-
                      Segundos Unix: hora del bloque, o la hora en que el stream
                      vio la transacción mientras se desconoce la hora del
                      bloque
                    required: true
                  - name: commitment
                    type: string
                    enumValues:
                      - processed
                    required: true
                  - name: swapTx
                    type: boolean
                    description: >-
                      La transacción es un swap. Sus tramos negociados están en
                      las salas de trades, no aquí; lo que queda (comisiones,
                      propinas, pagos) sí.
                    required: true
                  - name: transfers
                    type: array
                    description: >-
                      Las transferencias de la transacción para esta sala, en
                      orden de instrucción
                    required: true
                    properties:
                      - name: id
                        type: string
                        description: signature:instruction:inner, único por transferencia
                        required: true
                      - name: signature
                        type: string
                        required: true
                      - name: slot
                        type: integer
                        required: true
                      - name: timestamp
                        type: &ref_7
                          - integer
                          - 'null'
                        description: >-
                          Segundos Unix: hora del bloque, o la hora en que el
                          stream vio la transacción mientras se desconoce la
                          hora del bloque
                        required: true
                      - name: commitment
                        type: string
                        enumValues:
                          - processed
                        required: true
                      - name: instruction
                        type: integer
                        description: Índice de la instrucción externa
                        required: true
                      - name: inner
                        type: integer
                        description: >-
                          Índice de la instrucción interna; -1 para la propia
                          instrucción externa
                        required: true
                      - name: type
                        type: string
                        enumValues:
                          - sol
                          - spl
                        required: true
                      - name: program
                        type: string
                        enumValues:
                          - system
                          - spl-token
                          - token-2022
                        required: true
                      - name: mint
                        type: string
                        description: Mint de wrapped SOL para SOL
                        required: true
                      - name: decimals
                        type: &ref_8
                          - integer
                          - 'null'
                        description: >-
                          null cuando no se pudieron resolver los decimales del
                          mint
                        required: true
                      - name: amount
                        type: string
                        description: >-
                          Cantidad bruta, antes de cualquier comisión de
                          transferencia de Token-2022
                        required: true
                      - name: uiAmount
                        type: &ref_9
                          - string
                          - 'null'
                        description: >-
                          Cantidad decimal exacta como cadena; null cuando se
                          desconocen los decimales
                        required: true
                      - name: fee
                        type: string
                        description: >-
                          Comisión de transferencia de Token-2022 retenida, en
                          bruto
                        required: false
                      - name: from
                        type: object
                        required: true
                        properties:
                          - name: address
                            type: string
                            description: >-
                              La cuenta debitada o acreditada: una wallet para
                              SOL, una token account para SPL
                            required: true
                          - name: owner
                            type: &ref_0
                              - string
                              - 'null'
                            description: >-
                              La wallet propietaria de address (la propia
                              address para SOL)
                            required: true
                          - name: postBalance
                            type: &ref_1
                              - string
                              - 'null'
                            description: Saldo bruto de address después de la transacción
                            required: false
                          - name: identity
                            type: &ref_2
                              - object
                              - 'null'
                            description: >-
                              La identidad de la wallet, igual que en las
                              variantes :enriched de las salas de trades: lista
                              de KOLs, bots conocidos, arbitraje, etiquetas de
                              wallet y plataformas de trading, perfiles de
                              plataforma, el desarrollador o un pool del token,
                              dominio SNS. null si la wallet no tiene o no llegó
                              a tiempo. Solo salas :enriched.
                            required: false
                            properties:
                              - name: type
                                type: string
                                description: La primera de tags
                                required: false
                              - name: tags
                                type: array
                                description: >-
                                  kol, bot, arbitrage, potential_bot, hacker,
                                  spam_dusting, una plataforma (axiom, photon,
                                  …), developer, pool, exchange, sns
                                required: false
                                properties:
                                  - name: item
                                    type: string
                                    required: false
                              - name: name
                                type: string
                                required: false
                              - name: twitter
                                type: string
                                required: false
                              - name: avatar
                                type: string
                                required: false
                              - name: platforms
                                type: array
                                required: false
                                properties:
                                  - name: item
                                    type: string
                                    required: false
                              - name: platformProfiles
                                type: object
                                required: false
                              - name: developer
                                type: object
                                description: >-
                                  El desarrollador del token: el token y cómo
                                  (creador, desplegador del pool)
                                required: false
                              - name: pool
                                type: object
                                description: Un pool del token
                                required: false
                              - name: sns
                                type: object
                                required: false
                                properties:
                                  - name: domain
                                    type: string
                                    required: false
                      - name: to
                        type: object
                        required: true
                        properties:
                          - name: address
                            type: string
                            description: >-
                              La cuenta debitada o acreditada: una wallet para
                              SOL, una token account para SPL
                            required: true
                          - name: owner
                            type: *ref_0
                            description: >-
                              La wallet propietaria de address (la propia
                              address para SOL)
                            required: true
                          - name: postBalance
                            type: *ref_1
                            description: Saldo bruto de address después de la transacción
                            required: false
                          - name: identity
                            type: *ref_2
                            description: >-
                              La identidad de la wallet, igual que en las
                              variantes :enriched de las salas de trades: lista
                              de KOLs, bots conocidos, arbitraje, etiquetas de
                              wallet y plataformas de trading, perfiles de
                              plataforma, el desarrollador o un pool del token,
                              dominio SNS. null si la wallet no tiene o no llegó
                              a tiempo. Solo salas :enriched.
                            required: false
                            properties:
                              - name: type
                                type: string
                                description: La primera de tags
                                required: false
                              - name: tags
                                type: array
                                description: >-
                                  kol, bot, arbitrage, potential_bot, hacker,
                                  spam_dusting, una plataforma (axiom, photon,
                                  …), developer, pool, exchange, sns
                                required: false
                                properties:
                                  - name: item
                                    type: string
                                    required: false
                              - name: name
                                type: string
                                required: false
                              - name: twitter
                                type: string
                                required: false
                              - name: avatar
                                type: string
                                required: false
                              - name: platforms
                                type: array
                                required: false
                                properties:
                                  - name: item
                                    type: string
                                    required: false
                              - name: platformProfiles
                                type: object
                                required: false
                              - name: developer
                                type: object
                                description: >-
                                  El desarrollador del token: el token y cómo
                                  (creador, desplegador del pool)
                                required: false
                              - name: pool
                                type: object
                                description: Un pool del token
                                required: false
                              - name: sns
                                type: object
                                required: false
                                properties:
                                  - name: domain
                                    type: string
                                    required: false
                      - name: swapTx
                        type: boolean
                        description: >-
                          La transacción es un swap. Sus tramos negociados están
                          en las salas de trades, no aquí; lo que queda
                          (comisiones, propinas, pagos) sí.
                        required: true
                      - name: direction
                        type: string
                        description: 'Solo salas de wallet: relativa a la wallet de la sala'
                        enumValues:
                          - in
                          - out
                        required: false
                      - name: token
                        type: object
                        required: false
                        properties:
                          - name: mint
                            type: string
                            required: true
                          - name: name
                            type: &ref_3
                              - string
                              - 'null'
                            required: true
                          - name: symbol
                            type: &ref_4
                              - string
                              - 'null'
                            required: true
                          - name: image
                            type: &ref_5
                              - string
                              - 'null'
                            required: true
                          - name: decimals
                            type: integer
                            required: true
                      - name: price
                        type: object
                        description: >-
                          Precio actual en USD del pool principal del token; 1
                          para USDC/USDT/USD1. Solo salas :enriched.
                        required: false
                        properties:
                          - name: usd
                            type: &ref_11
                              - number
                              - 'null'
                            required: true
                      - name: value
                        type: object
                        description: uiAmount x price. Solo salas :enriched.
                        required: false
                        properties:
                          - name: usd
                            type: &ref_12
                              - number
                              - 'null'
                            required: true
                      - name: marketCap
                        type: object
                        description: >-
                          Capitalización de mercado en USD. SOL: precio ×
                          suministro circulante; null para USDC, USDT y USD1.
                          Solo salas :enriched.
                        required: false
                        properties:
                          - name: usd
                            type: &ref_13
                              - number
                              - 'null'
                            required: true
                  - name: balances
                    type: array
                    description: >-
                      Los cambios de saldo de la transacción para esta sala: de
                      su wallet (salas de wallet), de su mint (salas de mint) o
                      de ambos
                    required: true
                    properties:
                      - name: owner
                        type: string
                        description: Wallet propietaria de la cuenta
                        required: true
                      - name: account
                        type: string
                        description: Token account, o la propia wallet para SOL
                        required: true
                      - name: mint
                        type: string
                        description: Mint de wrapped SOL para SOL
                        required: true
                      - name: program
                        type: string
                        enumValues:
                          - system
                          - spl-token
                          - token-2022
                        required: true
                      - name: decimals
                        type: &ref_14
                          - integer
                          - 'null'
                        required: true
                      - name: pre
                        type: string
                        description: Saldo bruto antes de la transacción
                        required: true
                      - name: post
                        type: string
                        description: Saldo bruto después de la transacción
                        required: true
                      - name: change
                        type: string
                        description: post - pre, en bruto
                        required: true
                      - name: cause
                        type: string
                        description: >-
                          swap: los mints negociados por el trader; transfer:
                          una cuenta de alguna de las transferencias de la
                          transacción; other: todo lo demás (pools, programas,
                          rent, una comisión sola)
                        enumValues:
                          - swap
                          - transfer
                          - other
                        required: true
                      - name: fee
                        type: string
                        description: >-
                          Solo la entrada de SOL del pagador de la comisión: la
                          comisión de la transacción en lamports, incluida en
                          change
                        required: false
                      - name: identity
                        type: *ref_2
                        description: >-
                          La identidad de la wallet, igual que en las variantes
                          :enriched de las salas de trades: lista de KOLs, bots
                          conocidos, arbitraje, etiquetas de wallet y
                          plataformas de trading, perfiles de plataforma, el
                          desarrollador o un pool del token, dominio SNS. null
                          si la wallet no tiene o no llegó a tiempo. Solo salas
                          :enriched.
                        required: false
                        properties:
                          - name: type
                            type: string
                            description: La primera de tags
                            required: false
                          - name: tags
                            type: array
                            description: >-
                              kol, bot, arbitrage, potential_bot, hacker,
                              spam_dusting, una plataforma (axiom, photon, …),
                              developer, pool, exchange, sns
                            required: false
                            properties:
                              - name: item
                                type: string
                                required: false
                          - name: name
                            type: string
                            required: false
                          - name: twitter
                            type: string
                            required: false
                          - name: avatar
                            type: string
                            required: false
                          - name: platforms
                            type: array
                            required: false
                            properties:
                              - name: item
                                type: string
                                required: false
                          - name: platformProfiles
                            type: object
                            required: false
                          - name: developer
                            type: object
                            description: >-
                              El desarrollador del token: el token y cómo
                              (creador, desplegador del pool)
                            required: false
                          - name: pool
                            type: object
                            description: Un pool del token
                            required: false
                          - name: sns
                            type: object
                            required: false
                            properties:
                              - name: domain
                                type: string
                                required: false
                      - name: token
                        type: object
                        required: false
                        properties:
                          - name: mint
                            type: string
                            required: true
                          - name: name
                            type: *ref_3
                            required: true
                          - name: symbol
                            type: *ref_4
                            required: true
                          - name: image
                            type: *ref_5
                            required: true
                          - name: decimals
                            type: integer
                            required: true
                      - name: price
                        type: object
                        description: >-
                          Precio actual en USD del pool principal del token; 1
                          para USDC/USDT/USD1. Solo salas :enriched.
                        required: false
                        properties:
                          - name: usd
                            type: &ref_17
                              - number
                              - 'null'
                            required: true
                      - name: value
                        type: object
                        description: >-
                          change en unidades del token x price; negativo para
                          salidas. Solo salas :enriched.
                        required: false
                        properties:
                          - name: usd
                            type: &ref_18
                              - number
                              - 'null'
                            required: true
                      - name: marketCap
                        type: object
                        description: >-
                          Capitalización de mercado en USD. SOL: precio ×
                          suministro circulante; null para USDC, USDT y USD1.
                          Solo salas :enriched.
                        required: false
                        properties:
                          - name: usd
                            type: &ref_19
                              - number
                              - 'null'
                            required: true
                  - name: enrichmentStatus
                    type: string
                    description: >-
                      Solo salas :enriched. Aparece cuando una consulta superó
                      el plazo de 250 ms; los valores que faltan son null.
                    enumValues:
                      - partial
                    required: false
        headers: []
        jsonPayloadSchema:
          type: object
          required:
            - type
            - room
            - data
          properties:
            type:
              type: string
              const: message
              x-parser-schema-id: <anonymous-schema-93>
            room:
              type: string
              x-parser-schema-id: <anonymous-schema-94>
            data:
              type: object
              required:
                - signature
                - slot
                - timestamp
                - commitment
                - swapTx
                - transfers
                - balances
              properties:
                signature:
                  type: string
                  x-parser-schema-id: <anonymous-schema-10>
                slot:
                  type: integer
                  x-parser-schema-id: <anonymous-schema-11>
                timestamp:
                  type: *ref_6
                  description: >-
                    Segundos Unix: hora del bloque, o la hora en que el stream
                    vio la transacción mientras se desconoce la hora del bloque
                  x-parser-schema-id: <anonymous-schema-12>
                commitment:
                  type: string
                  enum:
                    - processed
                  x-parser-schema-id: <anonymous-schema-13>
                swapTx:
                  type: boolean
                  description: >-
                    La transacción es un swap. Sus tramos negociados están en
                    las salas de trades, no aquí; lo que queda (comisiones,
                    propinas, pagos) sí.
                  x-parser-schema-id: <anonymous-schema-14>
                transfers:
                  type: array
                  minItems: 1
                  items:
                    type: object
                    required:
                      - id
                      - signature
                      - slot
                      - timestamp
                      - commitment
                      - instruction
                      - inner
                      - type
                      - program
                      - mint
                      - decimals
                      - amount
                      - uiAmount
                      - from
                      - to
                      - swapTx
                    properties:
                      id:
                        type: string
                        description: signature:instruction:inner, único por transferencia
                        x-parser-schema-id: <anonymous-schema-16>
                      signature:
                        type: string
                        x-parser-schema-id: <anonymous-schema-17>
                      slot:
                        type: integer
                        x-parser-schema-id: <anonymous-schema-18>
                      timestamp:
                        type: *ref_7
                        description: >-
                          Segundos Unix: hora del bloque, o la hora en que el
                          stream vio la transacción mientras se desconoce la
                          hora del bloque
                        x-parser-schema-id: <anonymous-schema-19>
                      commitment:
                        type: string
                        enum:
                          - processed
                        x-parser-schema-id: <anonymous-schema-20>
                      instruction:
                        type: integer
                        description: Índice de la instrucción externa
                        x-parser-schema-id: <anonymous-schema-21>
                      inner:
                        type: integer
                        description: >-
                          Índice de la instrucción interna; -1 para la propia
                          instrucción externa
                        x-parser-schema-id: <anonymous-schema-22>
                      type:
                        type: string
                        enum:
                          - sol
                          - spl
                        x-parser-schema-id: <anonymous-schema-23>
                      program:
                        type: string
                        enum:
                          - system
                          - spl-token
                          - token-2022
                        x-parser-schema-id: <anonymous-schema-24>
                      mint:
                        type: string
                        description: Mint de wrapped SOL para SOL
                        x-parser-schema-id: <anonymous-schema-25>
                      decimals:
                        type: *ref_8
                        description: >-
                          null cuando no se pudieron resolver los decimales del
                          mint
                        x-parser-schema-id: <anonymous-schema-26>
                      amount:
                        type: string
                        pattern: ^[0-9]+$
                        description: >-
                          Cantidad bruta, antes de cualquier comisión de
                          transferencia de Token-2022
                        x-parser-schema-id: <anonymous-schema-27>
                      uiAmount:
                        type: *ref_9
                        description: >-
                          Cantidad decimal exacta como cadena; null cuando se
                          desconocen los decimales
                        x-parser-schema-id: <anonymous-schema-28>
                      fee:
                        type: string
                        pattern: ^[0-9]+$
                        description: >-
                          Comisión de transferencia de Token-2022 retenida, en
                          bruto
                        x-parser-schema-id: <anonymous-schema-29>
                      from: &ref_10
                        type: object
                        required:
                          - address
                          - owner
                        properties:
                          address:
                            type: string
                            description: >-
                              La cuenta debitada o acreditada: una wallet para
                              SOL, una token account para SPL
                            x-parser-schema-id: <anonymous-schema-30>
                          owner:
                            type: *ref_0
                            description: >-
                              La wallet propietaria de address (la propia
                              address para SOL)
                            x-parser-schema-id: <anonymous-schema-31>
                          postBalance:
                            type: *ref_1
                            pattern: ^[0-9]+$
                            description: Saldo bruto de address después de la transacción
                            x-parser-schema-id: <anonymous-schema-32>
                          identity: &ref_15
                            type: *ref_2
                            description: >-
                              La identidad de la wallet, igual que en las
                              variantes :enriched de las salas de trades: lista
                              de KOLs, bots conocidos, arbitraje, etiquetas de
                              wallet y plataformas de trading, perfiles de
                              plataforma, el desarrollador o un pool del token,
                              dominio SNS. null si la wallet no tiene o no llegó
                              a tiempo. Solo salas :enriched.
                            properties:
                              type:
                                type: string
                                description: La primera de tags
                                x-parser-schema-id: <anonymous-schema-33>
                              tags:
                                type: array
                                items:
                                  type: string
                                  x-parser-schema-id: <anonymous-schema-35>
                                description: >-
                                  kol, bot, arbitrage, potential_bot, hacker,
                                  spam_dusting, una plataforma (axiom, photon,
                                  …), developer, pool, exchange, sns
                                x-parser-schema-id: <anonymous-schema-34>
                              name:
                                type: string
                                x-parser-schema-id: <anonymous-schema-36>
                              twitter:
                                type: string
                                x-parser-schema-id: <anonymous-schema-37>
                              avatar:
                                type: string
                                x-parser-schema-id: <anonymous-schema-38>
                              platforms:
                                type: array
                                items:
                                  type: string
                                  x-parser-schema-id: <anonymous-schema-40>
                                x-parser-schema-id: <anonymous-schema-39>
                              platformProfiles:
                                type: object
                                x-parser-schema-id: <anonymous-schema-41>
                              developer:
                                type: object
                                description: >-
                                  El desarrollador del token: el token y cómo
                                  (creador, desplegador del pool)
                                x-parser-schema-id: <anonymous-schema-42>
                              pool:
                                type: object
                                description: Un pool del token
                                x-parser-schema-id: <anonymous-schema-43>
                              sns:
                                type: object
                                properties:
                                  domain:
                                    type: string
                                    x-parser-schema-id: <anonymous-schema-45>
                                x-parser-schema-id: <anonymous-schema-44>
                            additionalProperties: true
                            x-parser-schema-id: WalletIdentity
                        x-parser-schema-id: TransferParty
                      to: *ref_10
                      swapTx:
                        type: boolean
                        description: >-
                          La transacción es un swap. Sus tramos negociados están
                          en las salas de trades, no aquí; lo que queda
                          (comisiones, propinas, pagos) sí.
                        x-parser-schema-id: <anonymous-schema-46>
                      direction:
                        type: string
                        enum:
                          - in
                          - out
                        description: 'Solo salas de wallet: relativa a la wallet de la sala'
                        x-parser-schema-id: <anonymous-schema-47>
                      token: &ref_16
                        type: object
                        required:
                          - mint
                          - name
                          - symbol
                          - image
                          - decimals
                        properties:
                          mint:
                            type: string
                            x-parser-schema-id: <anonymous-schema-48>
                          name:
                            type: *ref_3
                            x-parser-schema-id: <anonymous-schema-49>
                          symbol:
                            type: *ref_4
                            x-parser-schema-id: <anonymous-schema-50>
                          image:
                            type: *ref_5
                            x-parser-schema-id: <anonymous-schema-51>
                          decimals:
                            type: integer
                            x-parser-schema-id: <anonymous-schema-52>
                        x-parser-schema-id: TransferToken
                      price:
                        type: object
                        required:
                          - usd
                        properties:
                          usd:
                            type: *ref_11
                            x-parser-schema-id: <anonymous-schema-54>
                        description: >-
                          Precio actual en USD del pool principal del token; 1
                          para USDC/USDT/USD1. Solo salas :enriched.
                        x-parser-schema-id: <anonymous-schema-53>
                      value:
                        type: object
                        required:
                          - usd
                        properties:
                          usd:
                            type: *ref_12
                            x-parser-schema-id: <anonymous-schema-56>
                        description: uiAmount x price. Solo salas :enriched.
                        x-parser-schema-id: <anonymous-schema-55>
                      marketCap:
                        type: object
                        required:
                          - usd
                        properties:
                          usd:
                            type: *ref_13
                            x-parser-schema-id: <anonymous-schema-58>
                        description: >-
                          Capitalización de mercado en USD. SOL: precio ×
                          suministro circulante; null para USDC, USDT y USD1.
                          Solo salas :enriched.
                        x-parser-schema-id: <anonymous-schema-57>
                    x-parser-schema-id: Transfer
                  description: >-
                    Las transferencias de la transacción para esta sala, en
                    orden de instrucción
                  x-parser-schema-id: <anonymous-schema-15>
                balances:
                  type: array
                  items:
                    type: object
                    required:
                      - owner
                      - account
                      - mint
                      - program
                      - decimals
                      - pre
                      - post
                      - change
                      - cause
                    properties:
                      owner:
                        type: string
                        description: Wallet propietaria de la cuenta
                        x-parser-schema-id: <anonymous-schema-60>
                      account:
                        type: string
                        description: Token account, o la propia wallet para SOL
                        x-parser-schema-id: <anonymous-schema-61>
                      mint:
                        type: string
                        description: Mint de wrapped SOL para SOL
                        x-parser-schema-id: <anonymous-schema-62>
                      program:
                        type: string
                        enum:
                          - system
                          - spl-token
                          - token-2022
                        x-parser-schema-id: <anonymous-schema-63>
                      decimals:
                        type: *ref_14
                        x-parser-schema-id: <anonymous-schema-64>
                      pre:
                        type: string
                        pattern: ^[0-9]+$
                        description: Saldo bruto antes de la transacción
                        x-parser-schema-id: <anonymous-schema-65>
                      post:
                        type: string
                        pattern: ^[0-9]+$
                        description: Saldo bruto después de la transacción
                        x-parser-schema-id: <anonymous-schema-66>
                      change:
                        type: string
                        pattern: ^-?[0-9]+$
                        description: post - pre, en bruto
                        x-parser-schema-id: <anonymous-schema-67>
                      cause:
                        type: string
                        enum:
                          - swap
                          - transfer
                          - other
                        description: >-
                          swap: los mints negociados por el trader; transfer:
                          una cuenta de alguna de las transferencias de la
                          transacción; other: todo lo demás (pools, programas,
                          rent, una comisión sola)
                        x-parser-schema-id: <anonymous-schema-68>
                      fee:
                        type: string
                        pattern: ^[0-9]+$
                        description: >-
                          Solo la entrada de SOL del pagador de la comisión: la
                          comisión de la transacción en lamports, incluida en
                          change
                        x-parser-schema-id: <anonymous-schema-69>
                      identity: *ref_15
                      token: *ref_16
                      price:
                        type: object
                        required:
                          - usd
                        properties:
                          usd:
                            type: *ref_17
                            x-parser-schema-id: <anonymous-schema-71>
                        description: >-
                          Precio actual en USD del pool principal del token; 1
                          para USDC/USDT/USD1. Solo salas :enriched.
                        x-parser-schema-id: <anonymous-schema-70>
                      value:
                        type: object
                        required:
                          - usd
                        properties:
                          usd:
                            type: *ref_18
                            x-parser-schema-id: <anonymous-schema-73>
                        description: >-
                          change en unidades del token x price; negativo para
                          salidas. Solo salas :enriched.
                        x-parser-schema-id: <anonymous-schema-72>
                      marketCap:
                        type: object
                        required:
                          - usd
                        properties:
                          usd:
                            type: *ref_19
                            x-parser-schema-id: <anonymous-schema-75>
                        description: >-
                          Capitalización de mercado en USD. SOL: precio ×
                          suministro circulante; null para USDC, USDT y USD1.
                          Solo salas :enriched.
                        x-parser-schema-id: <anonymous-schema-74>
                    x-parser-schema-id: BalanceChange
                  description: >-
                    Los cambios de saldo de la transacción para esta sala: de su
                    wallet (salas de wallet), de su mint (salas de mint) o de
                    ambos
                  x-parser-schema-id: <anonymous-schema-59>
                enrichmentStatus:
                  type: string
                  enum:
                    - partial
                  description: >-
                    Solo salas :enriched. Aparece cuando una consulta superó el
                    plazo de 250 ms; los valores que faltan son null.
                  x-parser-schema-id: <anonymous-schema-76>
              x-parser-schema-id: TransferTransaction
          examples:
            - type: message
              room: >-
                transfer:EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v:GachaNgyXTU3zFogQ8Z5jR2BLXs8215X2AtEH18VxJq3
              data:
                signature: >-
                  2VxcHt8HKSt2T2EuUZLyWPsEKz4H4BPreWV28aZDEzoaHG4Fsu232oKKeQqpVqsSYaf3vv8KN7UoZ4MPJA8vw9EF
                slot: 459159504
                timestamp: 1792483949
                commitment: processed
                swapTx: false
                transfers:
                  - id: >-
                      2VxcHt8HKSt2T2EuUZLyWPsEKz4H4BPreWV28aZDEzoaHG4Fsu232oKKeQqpVqsSYaf3vv8KN7UoZ4MPJA8vw9EF:2:-1
                    signature: >-
                      2VxcHt8HKSt2T2EuUZLyWPsEKz4H4BPreWV28aZDEzoaHG4Fsu232oKKeQqpVqsSYaf3vv8KN7UoZ4MPJA8vw9EF
                    slot: 459159504
                    timestamp: 1792483949
                    commitment: processed
                    instruction: 2
                    inner: -1
                    type: spl
                    program: spl-token
                    mint: EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v
                    decimals: 6
                    amount: '25000000'
                    uiAmount: '25'
                    from:
                      address: C2RjaMN2NeYAErS6KiBjPQhHCt95J8mCmmLiQqZXPisR
                      owner: BfG7WYmravgBhNdWpGoiFmF8L1duw2vdqdDHiZid2hoJ
                      postBalance: '71035743'
                    to:
                      address: D9CEogjHA6CpS12F8St9zpSco7pQKJB5uR1RqDsuzQZk
                      owner: GachaNgyXTU3zFogQ8Z5jR2BLXs8215X2AtEH18VxJq3
                      postBalance: '656987841913'
                    swapTx: false
                    direction: in
                balances:
                  - owner: GachaNgyXTU3zFogQ8Z5jR2BLXs8215X2AtEH18VxJq3
                    account: D9CEogjHA6CpS12F8St9zpSco7pQKJB5uR1RqDsuzQZk
                    mint: EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v
                    program: spl-token
                    decimals: 6
                    pre: '656962841913'
                    post: '656987841913'
                    change: '25000000'
                    cause: transfer
          x-parser-schema-id: <anonymous-schema-92>
        title: Token transfers for a wallet notification
        example: |-
          {
            "type": "message",
            "room": "transfer:EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v:GachaNgyXTU3zFogQ8Z5jR2BLXs8215X2AtEH18VxJq3",
            "data": {
              "signature": "2VxcHt8HKSt2T2EuUZLyWPsEKz4H4BPreWV28aZDEzoaHG4Fsu232oKKeQqpVqsSYaf3vv8KN7UoZ4MPJA8vw9EF",
              "slot": 459159504,
              "timestamp": 1792483949,
              "commitment": "processed",
              "swapTx": false,
              "transfers": [
                {
                  "id": "2VxcHt8HKSt2T2EuUZLyWPsEKz4H4BPreWV28aZDEzoaHG4Fsu232oKKeQqpVqsSYaf3vv8KN7UoZ4MPJA8vw9EF:2:-1",
                  "signature": "2VxcHt8HKSt2T2EuUZLyWPsEKz4H4BPreWV28aZDEzoaHG4Fsu232oKKeQqpVqsSYaf3vv8KN7UoZ4MPJA8vw9EF",
                  "slot": 459159504,
                  "timestamp": 1792483949,
                  "commitment": "processed",
                  "instruction": 2,
                  "inner": -1,
                  "type": "spl",
                  "program": "spl-token",
                  "mint": "EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v",
                  "decimals": 6,
                  "amount": "25000000",
                  "uiAmount": "25",
                  "from": {
                    "address": "C2RjaMN2NeYAErS6KiBjPQhHCt95J8mCmmLiQqZXPisR",
                    "owner": "BfG7WYmravgBhNdWpGoiFmF8L1duw2vdqdDHiZid2hoJ",
                    "postBalance": "71035743"
                  },
                  "to": {
                    "address": "D9CEogjHA6CpS12F8St9zpSco7pQKJB5uR1RqDsuzQZk",
                    "owner": "GachaNgyXTU3zFogQ8Z5jR2BLXs8215X2AtEH18VxJq3",
                    "postBalance": "656987841913"
                  },
                  "swapTx": false,
                  "direction": "in"
                }
              ],
              "balances": [
                {
                  "owner": "GachaNgyXTU3zFogQ8Z5jR2BLXs8215X2AtEH18VxJq3",
                  "account": "D9CEogjHA6CpS12F8St9zpSco7pQKJB5uR1RqDsuzQZk",
                  "mint": "EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v",
                  "program": "spl-token",
                  "decimals": 6,
                  "pre": "656962841913",
                  "post": "656987841913",
                  "change": "25000000",
                  "cause": "transfer"
                }
              ]
            }
          }
        bindings: []
        extensions:
          - id: x-parser-unique-object-id
            value: message
          - id: x-parser-message-name
            value: message
    bindings: []
    extensions: *ref_20
  - &ref_22
    id: unsubscribeTokenWalletTransfers
    title: Unsubscribe token wallet transfers
    description: Unsubscribe from token transfers for a wallet
    type: receive
    messages:
      - &ref_25
        id: leave
        payload:
          - name: Unsubscribe from token transfers for a wallet
            type: object
            properties:
              - name: type
                type: string
                description: leave
                required: true
              - name: room
                type: string
                description: >-
                  transfer:{mint}:{wallet} (añade :enriched para metadatos del
                  token, valores en USD e identidades de wallets)
                required: true
        headers: []
        jsonPayloadSchema:
          type: object
          required:
            - type
            - room
          properties:
            type:
              type: string
              const: leave
              default: leave
              x-parser-schema-id: <anonymous-schema-90>
            room:
              type: string
              default: >-
                transfer:EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v:GachaNgyXTU3zFogQ8Z5jR2BLXs8215X2AtEH18VxJq3
              description: >-
                transfer:{mint}:{wallet} (añade :enriched para metadatos del
                token, valores en USD e identidades de wallets)
              x-parser-schema-id: <anonymous-schema-91>
          examples:
            - type: leave
              room: >-
                transfer:EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v:GachaNgyXTU3zFogQ8Z5jR2BLXs8215X2AtEH18VxJq3
          x-parser-schema-id: <anonymous-schema-89>
        title: Unsubscribe from token transfers for a wallet
        example: |-
          {
            "type": "leave",
            "room": "transfer:EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v:GachaNgyXTU3zFogQ8Z5jR2BLXs8215X2AtEH18VxJq3"
          }
        bindings: []
        extensions:
          - id: x-parser-unique-object-id
            value: leave
          - id: x-parser-message-name
            value: leave
    bindings: []
    extensions: *ref_20
sendOperations:
  - *ref_21
  - *ref_22
receiveOperations:
  - *ref_23
sendMessages:
  - *ref_24
  - *ref_25
receiveMessages:
  - *ref_26
extensions:
  - id: x-codeSamples
    value: *ref_27
  - id: x-parser-unique-object-id
    value: transferMintWallet
securitySchemes:
  - id: apiKeyAuth
    name: apiKey
    type: httpApiKey
    description: >-
      API key for authentication. Include your Datastream key in the connection
      URL: wss://datastream.solanatracker.io/{DATASTREAM_KEY}
    in: header
    extensions: []

````

This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.