{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "title": "TokenTransferTransactionMetadata",
  "description": "Metadata associated with token-transfer type transactions",
  "type": "object",
  "required": ["tx_type", "token_transfer"],
  "additionalProperties": false,
  "properties": {
    "tx_type": {
      "type": "string",
      "enum": ["token_transfer"]
    },
    "token_transfer": {
      "type": "object",
      "required": ["recipient_address", "amount", "memo"],
      "additionalProperties": false,
      "properties": {
        "recipient_address": {
          "type": "string"
        },
        "amount": {
          "type": "string",
          "description": "Transfer amount as Integer string (64-bit unsigned integer)"
        },
        "memo": {
          "type": "string",
          "description": "Hex encoded arbitrary message, up to 34 bytes length (should try decoding to an ASCII string)"
        }
      }
    }
  }
}
