---
title: "Event by ID"
method: GET
path: "/v1/eventById"
tags: ["HubEvents"]
---

# Event by ID

`GET /v1/eventById`

Lookup an event by its ID.

## Query parameters

- `event_id` integer, required

## Response `200`

A successful response.

- union
  - HubEventMergeMessage
    - `type` string, required
    - `id` integer, required
    - `mergeMessageBody` MergeMessageBody, required
      - `message` Message, required — A Message is a delta operation on the Farcaster network that represents a state change. Messages are the fundamental unit of data in Farcaster and can represent various actions like: - Creating or removing casts (posts) - Adding or removing reactions - Following or unfollowing users - Updating profile data - Verifying Ethereum addresses Each message contains: - A MessageData object with the actual content - A hash of the content for integrity verification - A cryptographic signature to prove authenticity - The signer's public key for verification Messages are immutable once created and form an append-only log of all user actions on the network.
        - `data` union, required
          - MessageDataCastAdd — Common properties shared by all Farcaster message types. These properties provide essential metadata about the message's origin, timing, and network context.
            - `type` 'MESSAGE_TYPE_CAST_ADD' | 'MESSAGE_TYPE_CAST_REMOVE' | 'MESSAGE_TYPE_REACTION_ADD' | 'MESSAGE_TYPE_REACTION_REMOVE' | 'MESSAGE_TYPE_LINK_ADD' | 'MESSAGE_TYPE_LINK_REMOVE' | 'MESSAGE_TYPE_VERIFICATION_ADD_ETH_ADDRESS' | 'MESSAGE_TYPE_VERIFICATION_REMOVE' | 'MESSAGE_TYPE_USER_DATA_ADD' | 'MESSAGE_TYPE_USERNAME_PROOF' | 'MESSAGE_TYPE_FRAME_ACTION' — Type of the MessageBody. - MESSAGE_TYPE_CAST_ADD: Add a new Cast - MESSAGE_TYPE_CAST_REMOVE: Remove an existing Cast - MESSAGE_TYPE_REACTION_ADD: Add a Reaction to a Cast - MESSAGE_TYPE_REACTION_REMOVE: Remove a Reaction from a Cast - MESSAGE_TYPE_LINK_ADD: Add a new Link - MESSAGE_TYPE_LINK_REMOVE: Remove an existing Link - MESSAGE_TYPE_VERIFICATION_ADD_ETH_ADDRESS: Add a Verification of an Ethereum Address - MESSAGE_TYPE_VERIFICATION_REMOVE: Remove a Verification - MESSAGE_TYPE_USER_DATA_ADD: Add metadata about a user - MESSAGE_TYPE_USERNAME_PROOF: Add or replace a username proof - MESSAGE_TYPE_FRAME_ACTION: A Farcaster Frame action
            - `fid` integer, required — The unique identifier (FID) of the user who created this message. FIDs are assigned sequentially when users register on the network and cannot be changed.
            - `timestamp` integer, required — Seconds since Farcaster Epoch (2021-01-01T00:00:00Z). Used to order messages chronologically and determine the most recent state. Must be within 10 minutes of the current time when the message is created.
            - `network` 'FARCASTER_NETWORK_MAINNET' | 'FARCASTER_NETWORK_TESTNET' | 'FARCASTER_NETWORK_DEVNET', required — Farcaster network the message is intended for. - FARCASTER_NETWORK_MAINNET: Public primary network - FARCASTER_NETWORK_TESTNET: Public test network - FARCASTER_NETWORK_DEVNET: Private test network
            - `castAddBody` CastAddBody, required — Adds a new Cast
              - …
          - MessageDataCastRemove — Common properties shared by all Farcaster message types. These properties provide essential metadata about the message's origin, timing, and network context.
            - `type` 'MESSAGE_TYPE_CAST_ADD' | 'MESSAGE_TYPE_CAST_REMOVE' | 'MESSAGE_TYPE_REACTION_ADD' | 'MESSAGE_TYPE_REACTION_REMOVE' | 'MESSAGE_TYPE_LINK_ADD' | 'MESSAGE_TYPE_LINK_REMOVE' | 'MESSAGE_TYPE_VERIFICATION_ADD_ETH_ADDRESS' | 'MESSAGE_TYPE_VERIFICATION_REMOVE' | 'MESSAGE_TYPE_USER_DATA_ADD' | 'MESSAGE_TYPE_USERNAME_PROOF' | 'MESSAGE_TYPE_FRAME_ACTION' — Type of the MessageBody. - MESSAGE_TYPE_CAST_ADD: Add a new Cast - MESSAGE_TYPE_CAST_REMOVE: Remove an existing Cast - MESSAGE_TYPE_REACTION_ADD: Add a Reaction to a Cast - MESSAGE_TYPE_REACTION_REMOVE: Remove a Reaction from a Cast - MESSAGE_TYPE_LINK_ADD: Add a new Link - MESSAGE_TYPE_LINK_REMOVE: Remove an existing Link - MESSAGE_TYPE_VERIFICATION_ADD_ETH_ADDRESS: Add a Verification of an Ethereum Address - MESSAGE_TYPE_VERIFICATION_REMOVE: Remove a Verification - MESSAGE_TYPE_USER_DATA_ADD: Add metadata about a user - MESSAGE_TYPE_USERNAME_PROOF: Add or replace a username proof - MESSAGE_TYPE_FRAME_ACTION: A Farcaster Frame action
            - `fid` integer, required — The unique identifier (FID) of the user who created this message. FIDs are assigned sequentially when users register on the network and cannot be changed.
            - `timestamp` integer, required — Seconds since Farcaster Epoch (2021-01-01T00:00:00Z). Used to order messages chronologically and determine the most recent state. Must be within 10 minutes of the current time when the message is created.
            - `network` 'FARCASTER_NETWORK_MAINNET' | 'FARCASTER_NETWORK_TESTNET' | 'FARCASTER_NETWORK_DEVNET', required — Farcaster network the message is intended for. - FARCASTER_NETWORK_MAINNET: Public primary network - FARCASTER_NETWORK_TESTNET: Public test network - FARCASTER_NETWORK_DEVNET: Private test network
            - `targetHash` string, required — The unique hash identifier of the cast to be removed. Must be a cast that was previously created by the same FID specified in the message.
          - MessageDataReaction — Common properties shared by all Farcaster message types. These properties provide essential metadata about the message's origin, timing, and network context.
            - `type` 'MESSAGE_TYPE_CAST_ADD' | 'MESSAGE_TYPE_CAST_REMOVE' | 'MESSAGE_TYPE_REACTION_ADD' | 'MESSAGE_TYPE_REACTION_REMOVE' | 'MESSAGE_TYPE_LINK_ADD' | 'MESSAGE_TYPE_LINK_REMOVE' | 'MESSAGE_TYPE_VERIFICATION_ADD_ETH_ADDRESS' | 'MESSAGE_TYPE_VERIFICATION_REMOVE' | 'MESSAGE_TYPE_USER_DATA_ADD' | 'MESSAGE_TYPE_USERNAME_PROOF' | 'MESSAGE_TYPE_FRAME_ACTION' — Type of the MessageBody. - MESSAGE_TYPE_CAST_ADD: Add a new Cast - MESSAGE_TYPE_CAST_REMOVE: Remove an existing Cast - MESSAGE_TYPE_REACTION_ADD: Add a Reaction to a Cast - MESSAGE_TYPE_REACTION_REMOVE: Remove a Reaction from a Cast - MESSAGE_TYPE_LINK_ADD: Add a new Link - MESSAGE_TYPE_LINK_REMOVE: Remove an existing Link - MESSAGE_TYPE_VERIFICATION_ADD_ETH_ADDRESS: Add a Verification of an Ethereum Address - MESSAGE_TYPE_VERIFICATION_REMOVE: Remove a Verification - MESSAGE_TYPE_USER_DATA_ADD: Add metadata about a user - MESSAGE_TYPE_USERNAME_PROOF: Add or replace a username proof - MESSAGE_TYPE_FRAME_ACTION: A Farcaster Frame action
            - `fid` integer, required — The unique identifier (FID) of the user who created this message. FIDs are assigned sequentially when users register on the network and cannot be changed.
            - `timestamp` integer, required — Seconds since Farcaster Epoch (2021-01-01T00:00:00Z). Used to order messages chronologically and determine the most recent state. Must be within 10 minutes of the current time when the message is created.
            - `network` 'FARCASTER_NETWORK_MAINNET' | 'FARCASTER_NETWORK_TESTNET' | 'FARCASTER_NETWORK_DEVNET', required — Farcaster network the message is intended for. - FARCASTER_NETWORK_MAINNET: Public primary network - FARCASTER_NETWORK_TESTNET: Public test network - FARCASTER_NETWORK_DEVNET: Private test network
            - `reactionBody` ReactionBody, required — Specifies the details of a reaction to content on Farcaster. A reaction must specify its type (like/recast) and either a target cast ID or URL to react to. Only one target (either castId or URL) should be specified per reaction.
              - …
          - MessageDataLink — Common properties shared by all Farcaster message types. These properties provide essential metadata about the message's origin, timing, and network context.
            - `type` 'MESSAGE_TYPE_CAST_ADD' | 'MESSAGE_TYPE_CAST_REMOVE' | 'MESSAGE_TYPE_REACTION_ADD' | 'MESSAGE_TYPE_REACTION_REMOVE' | 'MESSAGE_TYPE_LINK_ADD' | 'MESSAGE_TYPE_LINK_REMOVE' | 'MESSAGE_TYPE_VERIFICATION_ADD_ETH_ADDRESS' | 'MESSAGE_TYPE_VERIFICATION_REMOVE' | 'MESSAGE_TYPE_USER_DATA_ADD' | 'MESSAGE_TYPE_USERNAME_PROOF' | 'MESSAGE_TYPE_FRAME_ACTION' — Type of the MessageBody. - MESSAGE_TYPE_CAST_ADD: Add a new Cast - MESSAGE_TYPE_CAST_REMOVE: Remove an existing Cast - MESSAGE_TYPE_REACTION_ADD: Add a Reaction to a Cast - MESSAGE_TYPE_REACTION_REMOVE: Remove a Reaction from a Cast - MESSAGE_TYPE_LINK_ADD: Add a new Link - MESSAGE_TYPE_LINK_REMOVE: Remove an existing Link - MESSAGE_TYPE_VERIFICATION_ADD_ETH_ADDRESS: Add a Verification of an Ethereum Address - MESSAGE_TYPE_VERIFICATION_REMOVE: Remove a Verification - MESSAGE_TYPE_USER_DATA_ADD: Add metadata about a user - MESSAGE_TYPE_USERNAME_PROOF: Add or replace a username proof - MESSAGE_TYPE_FRAME_ACTION: A Farcaster Frame action
            - `fid` integer, required — The unique identifier (FID) of the user who created this message. FIDs are assigned sequentially when users register on the network and cannot be changed.
            - `timestamp` integer, required — Seconds since Farcaster Epoch (2021-01-01T00:00:00Z). Used to order messages chronologically and determine the most recent state. Must be within 10 minutes of the current time when the message is created.
            - `network` 'FARCASTER_NETWORK_MAINNET' | 'FARCASTER_NETWORK_TESTNET' | 'FARCASTER_NETWORK_DEVNET', required — Farcaster network the message is intended for. - FARCASTER_NETWORK_MAINNET: Public primary network - FARCASTER_NETWORK_TESTNET: Public test network - FARCASTER_NETWORK_DEVNET: Private test network
            - `linkBody` LinkBody, required — Defines a social connection between users in the Farcaster network. Currently used to establish following relationships, allowing users to curate their content feed.
              - …
          - MessageDataVerificationAdd — Common properties shared by all Farcaster message types. These properties provide essential metadata about the message's origin, timing, and network context.
            - `type` 'MESSAGE_TYPE_CAST_ADD' | 'MESSAGE_TYPE_CAST_REMOVE' | 'MESSAGE_TYPE_REACTION_ADD' | 'MESSAGE_TYPE_REACTION_REMOVE' | 'MESSAGE_TYPE_LINK_ADD' | 'MESSAGE_TYPE_LINK_REMOVE' | 'MESSAGE_TYPE_VERIFICATION_ADD_ETH_ADDRESS' | 'MESSAGE_TYPE_VERIFICATION_REMOVE' | 'MESSAGE_TYPE_USER_DATA_ADD' | 'MESSAGE_TYPE_USERNAME_PROOF' | 'MESSAGE_TYPE_FRAME_ACTION' — Type of the MessageBody. - MESSAGE_TYPE_CAST_ADD: Add a new Cast - MESSAGE_TYPE_CAST_REMOVE: Remove an existing Cast - MESSAGE_TYPE_REACTION_ADD: Add a Reaction to a Cast - MESSAGE_TYPE_REACTION_REMOVE: Remove a Reaction from a Cast - MESSAGE_TYPE_LINK_ADD: Add a new Link - MESSAGE_TYPE_LINK_REMOVE: Remove an existing Link - MESSAGE_TYPE_VERIFICATION_ADD_ETH_ADDRESS: Add a Verification of an Ethereum Address - MESSAGE_TYPE_VERIFICATION_REMOVE: Remove a Verification - MESSAGE_TYPE_USER_DATA_ADD: Add metadata about a user - MESSAGE_TYPE_USERNAME_PROOF: Add or replace a username proof - MESSAGE_TYPE_FRAME_ACTION: A Farcaster Frame action
            - `fid` integer, required — The unique identifier (FID) of the user who created this message. FIDs are assigned sequentially when users register on the network and cannot be changed.
            - `timestamp` integer, required — Seconds since Farcaster Epoch (2021-01-01T00:00:00Z). Used to order messages chronologically and determine the most recent state. Must be within 10 minutes of the current time when the message is created.
            - `network` 'FARCASTER_NETWORK_MAINNET' | 'FARCASTER_NETWORK_TESTNET' | 'FARCASTER_NETWORK_DEVNET', required — Farcaster network the message is intended for. - FARCASTER_NETWORK_MAINNET: Public primary network - FARCASTER_NETWORK_TESTNET: Public test network - FARCASTER_NETWORK_DEVNET: Private test network
            - `verificationAddEthAddressBody` VerificationAddEthAddressBody, required — Contains the data required to verify ownership of an Ethereum or Solana address. The verification process requires a cryptographic signature from the blockchain address and includes the block hash at the time of signing for timestamp verification.
              - …
          - MessageDataVerificationRemove — Common properties shared by all Farcaster message types. These properties provide essential metadata about the message's origin, timing, and network context.
            - `type` 'MESSAGE_TYPE_CAST_ADD' | 'MESSAGE_TYPE_CAST_REMOVE' | 'MESSAGE_TYPE_REACTION_ADD' | 'MESSAGE_TYPE_REACTION_REMOVE' | 'MESSAGE_TYPE_LINK_ADD' | 'MESSAGE_TYPE_LINK_REMOVE' | 'MESSAGE_TYPE_VERIFICATION_ADD_ETH_ADDRESS' | 'MESSAGE_TYPE_VERIFICATION_REMOVE' | 'MESSAGE_TYPE_USER_DATA_ADD' | 'MESSAGE_TYPE_USERNAME_PROOF' | 'MESSAGE_TYPE_FRAME_ACTION' — Type of the MessageBody. - MESSAGE_TYPE_CAST_ADD: Add a new Cast - MESSAGE_TYPE_CAST_REMOVE: Remove an existing Cast - MESSAGE_TYPE_REACTION_ADD: Add a Reaction to a Cast - MESSAGE_TYPE_REACTION_REMOVE: Remove a Reaction from a Cast - MESSAGE_TYPE_LINK_ADD: Add a new Link - MESSAGE_TYPE_LINK_REMOVE: Remove an existing Link - MESSAGE_TYPE_VERIFICATION_ADD_ETH_ADDRESS: Add a Verification of an Ethereum Address - MESSAGE_TYPE_VERIFICATION_REMOVE: Remove a Verification - MESSAGE_TYPE_USER_DATA_ADD: Add metadata about a user - MESSAGE_TYPE_USERNAME_PROOF: Add or replace a username proof - MESSAGE_TYPE_FRAME_ACTION: A Farcaster Frame action
            - `fid` integer, required — The unique identifier (FID) of the user who created this message. FIDs are assigned sequentially when users register on the network and cannot be changed.
            - `timestamp` integer, required — Seconds since Farcaster Epoch (2021-01-01T00:00:00Z). Used to order messages chronologically and determine the most recent state. Must be within 10 minutes of the current time when the message is created.
            - `network` 'FARCASTER_NETWORK_MAINNET' | 'FARCASTER_NETWORK_TESTNET' | 'FARCASTER_NETWORK_DEVNET', required — Farcaster network the message is intended for. - FARCASTER_NETWORK_MAINNET: Public primary network - FARCASTER_NETWORK_TESTNET: Public test network - FARCASTER_NETWORK_DEVNET: Private test network
            - `verificationRemoveBody` VerificationRemoveBody, required — Contains the data required to remove a previously added blockchain address verification from a user's profile. This operation permanently removes the verification until explicitly re-added.
              - …
          - MessageDataUserDataAdd — Common properties shared by all Farcaster message types. These properties provide essential metadata about the message's origin, timing, and network context.
            - `type` 'MESSAGE_TYPE_CAST_ADD' | 'MESSAGE_TYPE_CAST_REMOVE' | 'MESSAGE_TYPE_REACTION_ADD' | 'MESSAGE_TYPE_REACTION_REMOVE' | 'MESSAGE_TYPE_LINK_ADD' | 'MESSAGE_TYPE_LINK_REMOVE' | 'MESSAGE_TYPE_VERIFICATION_ADD_ETH_ADDRESS' | 'MESSAGE_TYPE_VERIFICATION_REMOVE' | 'MESSAGE_TYPE_USER_DATA_ADD' | 'MESSAGE_TYPE_USERNAME_PROOF' | 'MESSAGE_TYPE_FRAME_ACTION' — Type of the MessageBody. - MESSAGE_TYPE_CAST_ADD: Add a new Cast - MESSAGE_TYPE_CAST_REMOVE: Remove an existing Cast - MESSAGE_TYPE_REACTION_ADD: Add a Reaction to a Cast - MESSAGE_TYPE_REACTION_REMOVE: Remove a Reaction from a Cast - MESSAGE_TYPE_LINK_ADD: Add a new Link - MESSAGE_TYPE_LINK_REMOVE: Remove an existing Link - MESSAGE_TYPE_VERIFICATION_ADD_ETH_ADDRESS: Add a Verification of an Ethereum Address - MESSAGE_TYPE_VERIFICATION_REMOVE: Remove a Verification - MESSAGE_TYPE_USER_DATA_ADD: Add metadata about a user - MESSAGE_TYPE_USERNAME_PROOF: Add or replace a username proof - MESSAGE_TYPE_FRAME_ACTION: A Farcaster Frame action
            - `fid` integer, required — The unique identifier (FID) of the user who created this message. FIDs are assigned sequentially when users register on the network and cannot be changed.
            - `timestamp` integer, required — Seconds since Farcaster Epoch (2021-01-01T00:00:00Z). Used to order messages chronologically and determine the most recent state. Must be within 10 minutes of the current time when the message is created.
            - `network` 'FARCASTER_NETWORK_MAINNET' | 'FARCASTER_NETWORK_TESTNET' | 'FARCASTER_NETWORK_DEVNET', required — Farcaster network the message is intended for. - FARCASTER_NETWORK_MAINNET: Public primary network - FARCASTER_NETWORK_TESTNET: Public test network - FARCASTER_NETWORK_DEVNET: Private test network
            - `userDataBody` UserDataBody, required — Contains the data for updating a specific field of a user's profile metadata. Each update operation modifies one profile field at a time, allowing granular control over profile information.
              - …
          - MessageDataUsernameProof — Common properties shared by all Farcaster message types. These properties provide essential metadata about the message's origin, timing, and network context.
            - `type` 'MESSAGE_TYPE_CAST_ADD' | 'MESSAGE_TYPE_CAST_REMOVE' | 'MESSAGE_TYPE_REACTION_ADD' | 'MESSAGE_TYPE_REACTION_REMOVE' | 'MESSAGE_TYPE_LINK_ADD' | 'MESSAGE_TYPE_LINK_REMOVE' | 'MESSAGE_TYPE_VERIFICATION_ADD_ETH_ADDRESS' | 'MESSAGE_TYPE_VERIFICATION_REMOVE' | 'MESSAGE_TYPE_USER_DATA_ADD' | 'MESSAGE_TYPE_USERNAME_PROOF' | 'MESSAGE_TYPE_FRAME_ACTION' — Type of the MessageBody. - MESSAGE_TYPE_CAST_ADD: Add a new Cast - MESSAGE_TYPE_CAST_REMOVE: Remove an existing Cast - MESSAGE_TYPE_REACTION_ADD: Add a Reaction to a Cast - MESSAGE_TYPE_REACTION_REMOVE: Remove a Reaction from a Cast - MESSAGE_TYPE_LINK_ADD: Add a new Link - MESSAGE_TYPE_LINK_REMOVE: Remove an existing Link - MESSAGE_TYPE_VERIFICATION_ADD_ETH_ADDRESS: Add a Verification of an Ethereum Address - MESSAGE_TYPE_VERIFICATION_REMOVE: Remove a Verification - MESSAGE_TYPE_USER_DATA_ADD: Add metadata about a user - MESSAGE_TYPE_USERNAME_PROOF: Add or replace a username proof - MESSAGE_TYPE_FRAME_ACTION: A Farcaster Frame action
            - `fid` integer, required — The unique identifier (FID) of the user who created this message. FIDs are assigned sequentially when users register on the network and cannot be changed.
            - `timestamp` integer, required — Seconds since Farcaster Epoch (2021-01-01T00:00:00Z). Used to order messages chronologically and determine the most recent state. Must be within 10 minutes of the current time when the message is created.
            - `network` 'FARCASTER_NETWORK_MAINNET' | 'FARCASTER_NETWORK_TESTNET' | 'FARCASTER_NETWORK_DEVNET', required — Farcaster network the message is intended for. - FARCASTER_NETWORK_MAINNET: Public primary network - FARCASTER_NETWORK_TESTNET: Public test network - FARCASTER_NETWORK_DEVNET: Private test network
            - `usernameProofBody` UserNameProof, required
              - …
          - MessageDataFrameAction — Common properties shared by all Farcaster message types. These properties provide essential metadata about the message's origin, timing, and network context.
            - `type` 'MESSAGE_TYPE_CAST_ADD' | 'MESSAGE_TYPE_CAST_REMOVE' | 'MESSAGE_TYPE_REACTION_ADD' | 'MESSAGE_TYPE_REACTION_REMOVE' | 'MESSAGE_TYPE_LINK_ADD' | 'MESSAGE_TYPE_LINK_REMOVE' | 'MESSAGE_TYPE_VERIFICATION_ADD_ETH_ADDRESS' | 'MESSAGE_TYPE_VERIFICATION_REMOVE' | 'MESSAGE_TYPE_USER_DATA_ADD' | 'MESSAGE_TYPE_USERNAME_PROOF' | 'MESSAGE_TYPE_FRAME_ACTION' — Type of the MessageBody. - MESSAGE_TYPE_CAST_ADD: Add a new Cast - MESSAGE_TYPE_CAST_REMOVE: Remove an existing Cast - MESSAGE_TYPE_REACTION_ADD: Add a Reaction to a Cast - MESSAGE_TYPE_REACTION_REMOVE: Remove a Reaction from a Cast - MESSAGE_TYPE_LINK_ADD: Add a new Link - MESSAGE_TYPE_LINK_REMOVE: Remove an existing Link - MESSAGE_TYPE_VERIFICATION_ADD_ETH_ADDRESS: Add a Verification of an Ethereum Address - MESSAGE_TYPE_VERIFICATION_REMOVE: Remove a Verification - MESSAGE_TYPE_USER_DATA_ADD: Add metadata about a user - MESSAGE_TYPE_USERNAME_PROOF: Add or replace a username proof - MESSAGE_TYPE_FRAME_ACTION: A Farcaster Frame action
            - `fid` integer, required — The unique identifier (FID) of the user who created this message. FIDs are assigned sequentially when users register on the network and cannot be changed.
            - `timestamp` integer, required — Seconds since Farcaster Epoch (2021-01-01T00:00:00Z). Used to order messages chronologically and determine the most recent state. Must be within 10 minutes of the current time when the message is created.
            - `network` 'FARCASTER_NETWORK_MAINNET' | 'FARCASTER_NETWORK_TESTNET' | 'FARCASTER_NETWORK_DEVNET', required — Farcaster network the message is intended for. - FARCASTER_NETWORK_MAINNET: Public primary network - FARCASTER_NETWORK_TESTNET: Public test network - FARCASTER_NETWORK_DEVNET: Private test network
            - `frameActionBody` FrameActionBody, required — Contains the data for a user's interaction with a Farcaster Frame. Frames are interactive elements within casts that can have up to 4 clickable buttons, allowing users to engage with content in predefined ways.
              - …
        - `hash` string, required
        - `hashScheme` 'HASH_SCHEME_BLAKE3', required — Type of hashing scheme used to produce a digest of MessageData. - HASH_SCHEME_BLAKE3: Default scheme for hashing MessageData
        - `signature` string, byte, required
        - `signatureScheme` 'SIGNATURE_SCHEME_ED25519' | 'SIGNATURE_SCHEME_EIP712', required — Type of signature scheme used to sign the Message hash - SIGNATURE_SCHEME_ED25519: Ed25519 signature (default) - SIGNATURE_SCHEME_EIP712: ECDSA signature using EIP-712 scheme
        - `signer` string, required
      - `deletedMessages` Message[], required
        - `data` union, required
          - MessageDataCastAdd — Common properties shared by all Farcaster message types. These properties provide essential metadata about the message's origin, timing, and network context.
            - `type` 'MESSAGE_TYPE_CAST_ADD' | 'MESSAGE_TYPE_CAST_REMOVE' | 'MESSAGE_TYPE_REACTION_ADD' | 'MESSAGE_TYPE_REACTION_REMOVE' | 'MESSAGE_TYPE_LINK_ADD' | 'MESSAGE_TYPE_LINK_REMOVE' | 'MESSAGE_TYPE_VERIFICATION_ADD_ETH_ADDRESS' | 'MESSAGE_TYPE_VERIFICATION_REMOVE' | 'MESSAGE_TYPE_USER_DATA_ADD' | 'MESSAGE_TYPE_USERNAME_PROOF' | 'MESSAGE_TYPE_FRAME_ACTION' — Type of the MessageBody. - MESSAGE_TYPE_CAST_ADD: Add a new Cast - MESSAGE_TYPE_CAST_REMOVE: Remove an existing Cast - MESSAGE_TYPE_REACTION_ADD: Add a Reaction to a Cast - MESSAGE_TYPE_REACTION_REMOVE: Remove a Reaction from a Cast - MESSAGE_TYPE_LINK_ADD: Add a new Link - MESSAGE_TYPE_LINK_REMOVE: Remove an existing Link - MESSAGE_TYPE_VERIFICATION_ADD_ETH_ADDRESS: Add a Verification of an Ethereum Address - MESSAGE_TYPE_VERIFICATION_REMOVE: Remove a Verification - MESSAGE_TYPE_USER_DATA_ADD: Add metadata about a user - MESSAGE_TYPE_USERNAME_PROOF: Add or replace a username proof - MESSAGE_TYPE_FRAME_ACTION: A Farcaster Frame action
            - `fid` integer, required — The unique identifier (FID) of the user who created this message. FIDs are assigned sequentially when users register on the network and cannot be changed.
            - `timestamp` integer, required — Seconds since Farcaster Epoch (2021-01-01T00:00:00Z). Used to order messages chronologically and determine the most recent state. Must be within 10 minutes of the current time when the message is created.
            - `network` 'FARCASTER_NETWORK_MAINNET' | 'FARCASTER_NETWORK_TESTNET' | 'FARCASTER_NETWORK_DEVNET', required — Farcaster network the message is intended for. - FARCASTER_NETWORK_MAINNET: Public primary network - FARCASTER_NETWORK_TESTNET: Public test network - FARCASTER_NETWORK_DEVNET: Private test network
            - `castAddBody` CastAddBody, required — Adds a new Cast
              - …
          - MessageDataCastRemove — Common properties shared by all Farcaster message types. These properties provide essential metadata about the message's origin, timing, and network context.
            - `type` 'MESSAGE_TYPE_CAST_ADD' | 'MESSAGE_TYPE_CAST_REMOVE' | 'MESSAGE_TYPE_REACTION_ADD' | 'MESSAGE_TYPE_REACTION_REMOVE' | 'MESSAGE_TYPE_LINK_ADD' | 'MESSAGE_TYPE_LINK_REMOVE' | 'MESSAGE_TYPE_VERIFICATION_ADD_ETH_ADDRESS' | 'MESSAGE_TYPE_VERIFICATION_REMOVE' | 'MESSAGE_TYPE_USER_DATA_ADD' | 'MESSAGE_TYPE_USERNAME_PROOF' | 'MESSAGE_TYPE_FRAME_ACTION' — Type of the MessageBody. - MESSAGE_TYPE_CAST_ADD: Add a new Cast - MESSAGE_TYPE_CAST_REMOVE: Remove an existing Cast - MESSAGE_TYPE_REACTION_ADD: Add a Reaction to a Cast - MESSAGE_TYPE_REACTION_REMOVE: Remove a Reaction from a Cast - MESSAGE_TYPE_LINK_ADD: Add a new Link - MESSAGE_TYPE_LINK_REMOVE: Remove an existing Link - MESSAGE_TYPE_VERIFICATION_ADD_ETH_ADDRESS: Add a Verification of an Ethereum Address - MESSAGE_TYPE_VERIFICATION_REMOVE: Remove a Verification - MESSAGE_TYPE_USER_DATA_ADD: Add metadata about a user - MESSAGE_TYPE_USERNAME_PROOF: Add or replace a username proof - MESSAGE_TYPE_FRAME_ACTION: A Farcaster Frame action
            - `fid` integer, required — The unique identifier (FID) of the user who created this message. FIDs are assigned sequentially when users register on the network and cannot be changed.
            - `timestamp` integer, required — Seconds since Farcaster Epoch (2021-01-01T00:00:00Z). Used to order messages chronologically and determine the most recent state. Must be within 10 minutes of the current time when the message is created.
            - `network` 'FARCASTER_NETWORK_MAINNET' | 'FARCASTER_NETWORK_TESTNET' | 'FARCASTER_NETWORK_DEVNET', required — Farcaster network the message is intended for. - FARCASTER_NETWORK_MAINNET: Public primary network - FARCASTER_NETWORK_TESTNET: Public test network - FARCASTER_NETWORK_DEVNET: Private test network
            - `targetHash` string, required — The unique hash identifier of the cast to be removed. Must be a cast that was previously created by the same FID specified in the message.
          - MessageDataReaction — Common properties shared by all Farcaster message types. These properties provide essential metadata about the message's origin, timing, and network context.
            - `type` 'MESSAGE_TYPE_CAST_ADD' | 'MESSAGE_TYPE_CAST_REMOVE' | 'MESSAGE_TYPE_REACTION_ADD' | 'MESSAGE_TYPE_REACTION_REMOVE' | 'MESSAGE_TYPE_LINK_ADD' | 'MESSAGE_TYPE_LINK_REMOVE' | 'MESSAGE_TYPE_VERIFICATION_ADD_ETH_ADDRESS' | 'MESSAGE_TYPE_VERIFICATION_REMOVE' | 'MESSAGE_TYPE_USER_DATA_ADD' | 'MESSAGE_TYPE_USERNAME_PROOF' | 'MESSAGE_TYPE_FRAME_ACTION' — Type of the MessageBody. - MESSAGE_TYPE_CAST_ADD: Add a new Cast - MESSAGE_TYPE_CAST_REMOVE: Remove an existing Cast - MESSAGE_TYPE_REACTION_ADD: Add a Reaction to a Cast - MESSAGE_TYPE_REACTION_REMOVE: Remove a Reaction from a Cast - MESSAGE_TYPE_LINK_ADD: Add a new Link - MESSAGE_TYPE_LINK_REMOVE: Remove an existing Link - MESSAGE_TYPE_VERIFICATION_ADD_ETH_ADDRESS: Add a Verification of an Ethereum Address - MESSAGE_TYPE_VERIFICATION_REMOVE: Remove a Verification - MESSAGE_TYPE_USER_DATA_ADD: Add metadata about a user - MESSAGE_TYPE_USERNAME_PROOF: Add or replace a username proof - MESSAGE_TYPE_FRAME_ACTION: A Farcaster Frame action
            - `fid` integer, required — The unique identifier (FID) of the user who created this message. FIDs are assigned sequentially when users register on the network and cannot be changed.
            - `timestamp` integer, required — Seconds since Farcaster Epoch (2021-01-01T00:00:00Z). Used to order messages chronologically and determine the most recent state. Must be within 10 minutes of the current time when the message is created.
            - `network` 'FARCASTER_NETWORK_MAINNET' | 'FARCASTER_NETWORK_TESTNET' | 'FARCASTER_NETWORK_DEVNET', required — Farcaster network the message is intended for. - FARCASTER_NETWORK_MAINNET: Public primary network - FARCASTER_NETWORK_TESTNET: Public test network - FARCASTER_NETWORK_DEVNET: Private test network
            - `reactionBody` ReactionBody, required — Specifies the details of a reaction to content on Farcaster. A reaction must specify its type (like/recast) and either a target cast ID or URL to react to. Only one target (either castId or URL) should be specified per reaction.
              - …
          - MessageDataLink — Common properties shared by all Farcaster message types. These properties provide essential metadata about the message's origin, timing, and network context.
            - `type` 'MESSAGE_TYPE_CAST_ADD' | 'MESSAGE_TYPE_CAST_REMOVE' | 'MESSAGE_TYPE_REACTION_ADD' | 'MESSAGE_TYPE_REACTION_REMOVE' | 'MESSAGE_TYPE_LINK_ADD' | 'MESSAGE_TYPE_LINK_REMOVE' | 'MESSAGE_TYPE_VERIFICATION_ADD_ETH_ADDRESS' | 'MESSAGE_TYPE_VERIFICATION_REMOVE' | 'MESSAGE_TYPE_USER_DATA_ADD' | 'MESSAGE_TYPE_USERNAME_PROOF' | 'MESSAGE_TYPE_FRAME_ACTION' — Type of the MessageBody. - MESSAGE_TYPE_CAST_ADD: Add a new Cast - MESSAGE_TYPE_CAST_REMOVE: Remove an existing Cast - MESSAGE_TYPE_REACTION_ADD: Add a Reaction to a Cast - MESSAGE_TYPE_REACTION_REMOVE: Remove a Reaction from a Cast - MESSAGE_TYPE_LINK_ADD: Add a new Link - MESSAGE_TYPE_LINK_REMOVE: Remove an existing Link - MESSAGE_TYPE_VERIFICATION_ADD_ETH_ADDRESS: Add a Verification of an Ethereum Address - MESSAGE_TYPE_VERIFICATION_REMOVE: Remove a Verification - MESSAGE_TYPE_USER_DATA_ADD: Add metadata about a user - MESSAGE_TYPE_USERNAME_PROOF: Add or replace a username proof - MESSAGE_TYPE_FRAME_ACTION: A Farcaster Frame action
            - `fid` integer, required — The unique identifier (FID) of the user who created this message. FIDs are assigned sequentially when users register on the network and cannot be changed.
            - `timestamp` integer, required — Seconds since Farcaster Epoch (2021-01-01T00:00:00Z). Used to order messages chronologically and determine the most recent state. Must be within 10 minutes of the current time when the message is created.
            - `network` 'FARCASTER_NETWORK_MAINNET' | 'FARCASTER_NETWORK_TESTNET' | 'FARCASTER_NETWORK_DEVNET', required — Farcaster network the message is intended for. - FARCASTER_NETWORK_MAINNET: Public primary network - FARCASTER_NETWORK_TESTNET: Public test network - FARCASTER_NETWORK_DEVNET: Private test network
            - `linkBody` LinkBody, required — Defines a social connection between users in the Farcaster network. Currently used to establish following relationships, allowing users to curate their content feed.
              - …
          - MessageDataVerificationAdd — Common properties shared by all Farcaster message types. These properties provide essential metadata about the message's origin, timing, and network context.
            - `type` 'MESSAGE_TYPE_CAST_ADD' | 'MESSAGE_TYPE_CAST_REMOVE' | 'MESSAGE_TYPE_REACTION_ADD' | 'MESSAGE_TYPE_REACTION_REMOVE' | 'MESSAGE_TYPE_LINK_ADD' | 'MESSAGE_TYPE_LINK_REMOVE' | 'MESSAGE_TYPE_VERIFICATION_ADD_ETH_ADDRESS' | 'MESSAGE_TYPE_VERIFICATION_REMOVE' | 'MESSAGE_TYPE_USER_DATA_ADD' | 'MESSAGE_TYPE_USERNAME_PROOF' | 'MESSAGE_TYPE_FRAME_ACTION' — Type of the MessageBody. - MESSAGE_TYPE_CAST_ADD: Add a new Cast - MESSAGE_TYPE_CAST_REMOVE: Remove an existing Cast - MESSAGE_TYPE_REACTION_ADD: Add a Reaction to a Cast - MESSAGE_TYPE_REACTION_REMOVE: Remove a Reaction from a Cast - MESSAGE_TYPE_LINK_ADD: Add a new Link - MESSAGE_TYPE_LINK_REMOVE: Remove an existing Link - MESSAGE_TYPE_VERIFICATION_ADD_ETH_ADDRESS: Add a Verification of an Ethereum Address - MESSAGE_TYPE_VERIFICATION_REMOVE: Remove a Verification - MESSAGE_TYPE_USER_DATA_ADD: Add metadata about a user - MESSAGE_TYPE_USERNAME_PROOF: Add or replace a username proof - MESSAGE_TYPE_FRAME_ACTION: A Farcaster Frame action
            - `fid` integer, required — The unique identifier (FID) of the user who created this message. FIDs are assigned sequentially when users register on the network and cannot be changed.
            - `timestamp` integer, required — Seconds since Farcaster Epoch (2021-01-01T00:00:00Z). Used to order messages chronologically and determine the most recent state. Must be within 10 minutes of the current time when the message is created.
            - `network` 'FARCASTER_NETWORK_MAINNET' | 'FARCASTER_NETWORK_TESTNET' | 'FARCASTER_NETWORK_DEVNET', required — Farcaster network the message is intended for. - FARCASTER_NETWORK_MAINNET: Public primary network - FARCASTER_NETWORK_TESTNET: Public test network - FARCASTER_NETWORK_DEVNET: Private test network
            - `verificationAddEthAddressBody` VerificationAddEthAddressBody, required — Contains the data required to verify ownership of an Ethereum or Solana address. The verification process requires a cryptographic signature from the blockchain address and includes the block hash at the time of signing for timestamp verification.
              - …
          - MessageDataVerificationRemove — Common properties shared by all Farcaster message types. These properties provide essential metadata about the message's origin, timing, and network context.
            - `type` 'MESSAGE_TYPE_CAST_ADD' | 'MESSAGE_TYPE_CAST_REMOVE' | 'MESSAGE_TYPE_REACTION_ADD' | 'MESSAGE_TYPE_REACTION_REMOVE' | 'MESSAGE_TYPE_LINK_ADD' | 'MESSAGE_TYPE_LINK_REMOVE' | 'MESSAGE_TYPE_VERIFICATION_ADD_ETH_ADDRESS' | 'MESSAGE_TYPE_VERIFICATION_REMOVE' | 'MESSAGE_TYPE_USER_DATA_ADD' | 'MESSAGE_TYPE_USERNAME_PROOF' | 'MESSAGE_TYPE_FRAME_ACTION' — Type of the MessageBody. - MESSAGE_TYPE_CAST_ADD: Add a new Cast - MESSAGE_TYPE_CAST_REMOVE: Remove an existing Cast - MESSAGE_TYPE_REACTION_ADD: Add a Reaction to a Cast - MESSAGE_TYPE_REACTION_REMOVE: Remove a Reaction from a Cast - MESSAGE_TYPE_LINK_ADD: Add a new Link - MESSAGE_TYPE_LINK_REMOVE: Remove an existing Link - MESSAGE_TYPE_VERIFICATION_ADD_ETH_ADDRESS: Add a Verification of an Ethereum Address - MESSAGE_TYPE_VERIFICATION_REMOVE: Remove a Verification - MESSAGE_TYPE_USER_DATA_ADD: Add metadata about a user - MESSAGE_TYPE_USERNAME_PROOF: Add or replace a username proof - MESSAGE_TYPE_FRAME_ACTION: A Farcaster Frame action
            - `fid` integer, required — The unique identifier (FID) of the user who created this message. FIDs are assigned sequentially when users register on the network and cannot be changed.
            - `timestamp` integer, required — Seconds since Farcaster Epoch (2021-01-01T00:00:00Z). Used to order messages chronologically and determine the most recent state. Must be within 10 minutes of the current time when the message is created.
            - `network` 'FARCASTER_NETWORK_MAINNET' | 'FARCASTER_NETWORK_TESTNET' | 'FARCASTER_NETWORK_DEVNET', required — Farcaster network the message is intended for. - FARCASTER_NETWORK_MAINNET: Public primary network - FARCASTER_NETWORK_TESTNET: Public test network - FARCASTER_NETWORK_DEVNET: Private test network
            - `verificationRemoveBody` VerificationRemoveBody, required — Contains the data required to remove a previously added blockchain address verification from a user's profile. This operation permanently removes the verification until explicitly re-added.
              - …
          - MessageDataUserDataAdd — Common properties shared by all Farcaster message types. These properties provide essential metadata about the message's origin, timing, and network context.
            - `type` 'MESSAGE_TYPE_CAST_ADD' | 'MESSAGE_TYPE_CAST_REMOVE' | 'MESSAGE_TYPE_REACTION_ADD' | 'MESSAGE_TYPE_REACTION_REMOVE' | 'MESSAGE_TYPE_LINK_ADD' | 'MESSAGE_TYPE_LINK_REMOVE' | 'MESSAGE_TYPE_VERIFICATION_ADD_ETH_ADDRESS' | 'MESSAGE_TYPE_VERIFICATION_REMOVE' | 'MESSAGE_TYPE_USER_DATA_ADD' | 'MESSAGE_TYPE_USERNAME_PROOF' | 'MESSAGE_TYPE_FRAME_ACTION' — Type of the MessageBody. - MESSAGE_TYPE_CAST_ADD: Add a new Cast - MESSAGE_TYPE_CAST_REMOVE: Remove an existing Cast - MESSAGE_TYPE_REACTION_ADD: Add a Reaction to a Cast - MESSAGE_TYPE_REACTION_REMOVE: Remove a Reaction from a Cast - MESSAGE_TYPE_LINK_ADD: Add a new Link - MESSAGE_TYPE_LINK_REMOVE: Remove an existing Link - MESSAGE_TYPE_VERIFICATION_ADD_ETH_ADDRESS: Add a Verification of an Ethereum Address - MESSAGE_TYPE_VERIFICATION_REMOVE: Remove a Verification - MESSAGE_TYPE_USER_DATA_ADD: Add metadata about a user - MESSAGE_TYPE_USERNAME_PROOF: Add or replace a username proof - MESSAGE_TYPE_FRAME_ACTION: A Farcaster Frame action
            - `fid` integer, required — The unique identifier (FID) of the user who created this message. FIDs are assigned sequentially when users register on the network and cannot be changed.
            - `timestamp` integer, required — Seconds since Farcaster Epoch (2021-01-01T00:00:00Z). Used to order messages chronologically and determine the most recent state. Must be within 10 minutes of the current time when the message is created.
            - `network` 'FARCASTER_NETWORK_MAINNET' | 'FARCASTER_NETWORK_TESTNET' | 'FARCASTER_NETWORK_DEVNET', required — Farcaster network the message is intended for. - FARCASTER_NETWORK_MAINNET: Public primary network - FARCASTER_NETWORK_TESTNET: Public test network - FARCASTER_NETWORK_DEVNET: Private test network
            - `userDataBody` UserDataBody, required — Contains the data for updating a specific field of a user's profile metadata. Each update operation modifies one profile field at a time, allowing granular control over profile information.
              - …
          - MessageDataUsernameProof — Common properties shared by all Farcaster message types. These properties provide essential metadata about the message's origin, timing, and network context.
            - `type` 'MESSAGE_TYPE_CAST_ADD' | 'MESSAGE_TYPE_CAST_REMOVE' | 'MESSAGE_TYPE_REACTION_ADD' | 'MESSAGE_TYPE_REACTION_REMOVE' | 'MESSAGE_TYPE_LINK_ADD' | 'MESSAGE_TYPE_LINK_REMOVE' | 'MESSAGE_TYPE_VERIFICATION_ADD_ETH_ADDRESS' | 'MESSAGE_TYPE_VERIFICATION_REMOVE' | 'MESSAGE_TYPE_USER_DATA_ADD' | 'MESSAGE_TYPE_USERNAME_PROOF' | 'MESSAGE_TYPE_FRAME_ACTION' — Type of the MessageBody. - MESSAGE_TYPE_CAST_ADD: Add a new Cast - MESSAGE_TYPE_CAST_REMOVE: Remove an existing Cast - MESSAGE_TYPE_REACTION_ADD: Add a Reaction to a Cast - MESSAGE_TYPE_REACTION_REMOVE: Remove a Reaction from a Cast - MESSAGE_TYPE_LINK_ADD: Add a new Link - MESSAGE_TYPE_LINK_REMOVE: Remove an existing Link - MESSAGE_TYPE_VERIFICATION_ADD_ETH_ADDRESS: Add a Verification of an Ethereum Address - MESSAGE_TYPE_VERIFICATION_REMOVE: Remove a Verification - MESSAGE_TYPE_USER_DATA_ADD: Add metadata about a user - MESSAGE_TYPE_USERNAME_PROOF: Add or replace a username proof - MESSAGE_TYPE_FRAME_ACTION: A Farcaster Frame action
            - `fid` integer, required — The unique identifier (FID) of the user who created this message. FIDs are assigned sequentially when users register on the network and cannot be changed.
            - `timestamp` integer, required — Seconds since Farcaster Epoch (2021-01-01T00:00:00Z). Used to order messages chronologically and determine the most recent state. Must be within 10 minutes of the current time when the message is created.
            - `network` 'FARCASTER_NETWORK_MAINNET' | 'FARCASTER_NETWORK_TESTNET' | 'FARCASTER_NETWORK_DEVNET', required — Farcaster network the message is intended for. - FARCASTER_NETWORK_MAINNET: Public primary network - FARCASTER_NETWORK_TESTNET: Public test network - FARCASTER_NETWORK_DEVNET: Private test network
            - `usernameProofBody` UserNameProof, required
              - …
          - MessageDataFrameAction — Common properties shared by all Farcaster message types. These properties provide essential metadata about the message's origin, timing, and network context.
            - `type` 'MESSAGE_TYPE_CAST_ADD' | 'MESSAGE_TYPE_CAST_REMOVE' | 'MESSAGE_TYPE_REACTION_ADD' | 'MESSAGE_TYPE_REACTION_REMOVE' | 'MESSAGE_TYPE_LINK_ADD' | 'MESSAGE_TYPE_LINK_REMOVE' | 'MESSAGE_TYPE_VERIFICATION_ADD_ETH_ADDRESS' | 'MESSAGE_TYPE_VERIFICATION_REMOVE' | 'MESSAGE_TYPE_USER_DATA_ADD' | 'MESSAGE_TYPE_USERNAME_PROOF' | 'MESSAGE_TYPE_FRAME_ACTION' — Type of the MessageBody. - MESSAGE_TYPE_CAST_ADD: Add a new Cast - MESSAGE_TYPE_CAST_REMOVE: Remove an existing Cast - MESSAGE_TYPE_REACTION_ADD: Add a Reaction to a Cast - MESSAGE_TYPE_REACTION_REMOVE: Remove a Reaction from a Cast - MESSAGE_TYPE_LINK_ADD: Add a new Link - MESSAGE_TYPE_LINK_REMOVE: Remove an existing Link - MESSAGE_TYPE_VERIFICATION_ADD_ETH_ADDRESS: Add a Verification of an Ethereum Address - MESSAGE_TYPE_VERIFICATION_REMOVE: Remove a Verification - MESSAGE_TYPE_USER_DATA_ADD: Add metadata about a user - MESSAGE_TYPE_USERNAME_PROOF: Add or replace a username proof - MESSAGE_TYPE_FRAME_ACTION: A Farcaster Frame action
            - `fid` integer, required — The unique identifier (FID) of the user who created this message. FIDs are assigned sequentially when users register on the network and cannot be changed.
            - `timestamp` integer, required — Seconds since Farcaster Epoch (2021-01-01T00:00:00Z). Used to order messages chronologically and determine the most recent state. Must be within 10 minutes of the current time when the message is created.
            - `network` 'FARCASTER_NETWORK_MAINNET' | 'FARCASTER_NETWORK_TESTNET' | 'FARCASTER_NETWORK_DEVNET', required — Farcaster network the message is intended for. - FARCASTER_NETWORK_MAINNET: Public primary network - FARCASTER_NETWORK_TESTNET: Public test network - FARCASTER_NETWORK_DEVNET: Private test network
            - `frameActionBody` FrameActionBody, required — Contains the data for a user's interaction with a Farcaster Frame. Frames are interactive elements within casts that can have up to 4 clickable buttons, allowing users to engage with content in predefined ways.
              - …
        - `hash` string, required
        - `hashScheme` 'HASH_SCHEME_BLAKE3', required — Type of hashing scheme used to produce a digest of MessageData. - HASH_SCHEME_BLAKE3: Default scheme for hashing MessageData
        - `signature` string, byte, required
        - `signatureScheme` 'SIGNATURE_SCHEME_ED25519' | 'SIGNATURE_SCHEME_EIP712', required — Type of signature scheme used to sign the Message hash - SIGNATURE_SCHEME_ED25519: Ed25519 signature (default) - SIGNATURE_SCHEME_EIP712: ECDSA signature using EIP-712 scheme
        - `signer` string, required
  - HubEventPruneMessage
    - `type` string, required
    - `id` integer, required
    - `pruneMessageBody` PruneMessageBody, required
      - `message` Message, required — A Message is a delta operation on the Farcaster network that represents a state change. Messages are the fundamental unit of data in Farcaster and can represent various actions like: - Creating or removing casts (posts) - Adding or removing reactions - Following or unfollowing users - Updating profile data - Verifying Ethereum addresses Each message contains: - A MessageData object with the actual content - A hash of the content for integrity verification - A cryptographic signature to prove authenticity - The signer's public key for verification Messages are immutable once created and form an append-only log of all user actions on the network.
        - `data` union, required
          - MessageDataCastAdd — Common properties shared by all Farcaster message types. These properties provide essential metadata about the message's origin, timing, and network context.
            - `type` 'MESSAGE_TYPE_CAST_ADD' | 'MESSAGE_TYPE_CAST_REMOVE' | 'MESSAGE_TYPE_REACTION_ADD' | 'MESSAGE_TYPE_REACTION_REMOVE' | 'MESSAGE_TYPE_LINK_ADD' | 'MESSAGE_TYPE_LINK_REMOVE' | 'MESSAGE_TYPE_VERIFICATION_ADD_ETH_ADDRESS' | 'MESSAGE_TYPE_VERIFICATION_REMOVE' | 'MESSAGE_TYPE_USER_DATA_ADD' | 'MESSAGE_TYPE_USERNAME_PROOF' | 'MESSAGE_TYPE_FRAME_ACTION' — Type of the MessageBody. - MESSAGE_TYPE_CAST_ADD: Add a new Cast - MESSAGE_TYPE_CAST_REMOVE: Remove an existing Cast - MESSAGE_TYPE_REACTION_ADD: Add a Reaction to a Cast - MESSAGE_TYPE_REACTION_REMOVE: Remove a Reaction from a Cast - MESSAGE_TYPE_LINK_ADD: Add a new Link - MESSAGE_TYPE_LINK_REMOVE: Remove an existing Link - MESSAGE_TYPE_VERIFICATION_ADD_ETH_ADDRESS: Add a Verification of an Ethereum Address - MESSAGE_TYPE_VERIFICATION_REMOVE: Remove a Verification - MESSAGE_TYPE_USER_DATA_ADD: Add metadata about a user - MESSAGE_TYPE_USERNAME_PROOF: Add or replace a username proof - MESSAGE_TYPE_FRAME_ACTION: A Farcaster Frame action
            - `fid` integer, required — The unique identifier (FID) of the user who created this message. FIDs are assigned sequentially when users register on the network and cannot be changed.
            - `timestamp` integer, required — Seconds since Farcaster Epoch (2021-01-01T00:00:00Z). Used to order messages chronologically and determine the most recent state. Must be within 10 minutes of the current time when the message is created.
            - `network` 'FARCASTER_NETWORK_MAINNET' | 'FARCASTER_NETWORK_TESTNET' | 'FARCASTER_NETWORK_DEVNET', required — Farcaster network the message is intended for. - FARCASTER_NETWORK_MAINNET: Public primary network - FARCASTER_NETWORK_TESTNET: Public test network - FARCASTER_NETWORK_DEVNET: Private test network
            - `castAddBody` CastAddBody, required — Adds a new Cast
              - …
          - MessageDataCastRemove — Common properties shared by all Farcaster message types. These properties provide essential metadata about the message's origin, timing, and network context.
            - `type` 'MESSAGE_TYPE_CAST_ADD' | 'MESSAGE_TYPE_CAST_REMOVE' | 'MESSAGE_TYPE_REACTION_ADD' | 'MESSAGE_TYPE_REACTION_REMOVE' | 'MESSAGE_TYPE_LINK_ADD' | 'MESSAGE_TYPE_LINK_REMOVE' | 'MESSAGE_TYPE_VERIFICATION_ADD_ETH_ADDRESS' | 'MESSAGE_TYPE_VERIFICATION_REMOVE' | 'MESSAGE_TYPE_USER_DATA_ADD' | 'MESSAGE_TYPE_USERNAME_PROOF' | 'MESSAGE_TYPE_FRAME_ACTION' — Type of the MessageBody. - MESSAGE_TYPE_CAST_ADD: Add a new Cast - MESSAGE_TYPE_CAST_REMOVE: Remove an existing Cast - MESSAGE_TYPE_REACTION_ADD: Add a Reaction to a Cast - MESSAGE_TYPE_REACTION_REMOVE: Remove a Reaction from a Cast - MESSAGE_TYPE_LINK_ADD: Add a new Link - MESSAGE_TYPE_LINK_REMOVE: Remove an existing Link - MESSAGE_TYPE_VERIFICATION_ADD_ETH_ADDRESS: Add a Verification of an Ethereum Address - MESSAGE_TYPE_VERIFICATION_REMOVE: Remove a Verification - MESSAGE_TYPE_USER_DATA_ADD: Add metadata about a user - MESSAGE_TYPE_USERNAME_PROOF: Add or replace a username proof - MESSAGE_TYPE_FRAME_ACTION: A Farcaster Frame action
            - `fid` integer, required — The unique identifier (FID) of the user who created this message. FIDs are assigned sequentially when users register on the network and cannot be changed.
            - `timestamp` integer, required — Seconds since Farcaster Epoch (2021-01-01T00:00:00Z). Used to order messages chronologically and determine the most recent state. Must be within 10 minutes of the current time when the message is created.
            - `network` 'FARCASTER_NETWORK_MAINNET' | 'FARCASTER_NETWORK_TESTNET' | 'FARCASTER_NETWORK_DEVNET', required — Farcaster network the message is intended for. - FARCASTER_NETWORK_MAINNET: Public primary network - FARCASTER_NETWORK_TESTNET: Public test network - FARCASTER_NETWORK_DEVNET: Private test network
            - `targetHash` string, required — The unique hash identifier of the cast to be removed. Must be a cast that was previously created by the same FID specified in the message.
          - MessageDataReaction — Common properties shared by all Farcaster message types. These properties provide essential metadata about the message's origin, timing, and network context.
            - `type` 'MESSAGE_TYPE_CAST_ADD' | 'MESSAGE_TYPE_CAST_REMOVE' | 'MESSAGE_TYPE_REACTION_ADD' | 'MESSAGE_TYPE_REACTION_REMOVE' | 'MESSAGE_TYPE_LINK_ADD' | 'MESSAGE_TYPE_LINK_REMOVE' | 'MESSAGE_TYPE_VERIFICATION_ADD_ETH_ADDRESS' | 'MESSAGE_TYPE_VERIFICATION_REMOVE' | 'MESSAGE_TYPE_USER_DATA_ADD' | 'MESSAGE_TYPE_USERNAME_PROOF' | 'MESSAGE_TYPE_FRAME_ACTION' — Type of the MessageBody. - MESSAGE_TYPE_CAST_ADD: Add a new Cast - MESSAGE_TYPE_CAST_REMOVE: Remove an existing Cast - MESSAGE_TYPE_REACTION_ADD: Add a Reaction to a Cast - MESSAGE_TYPE_REACTION_REMOVE: Remove a Reaction from a Cast - MESSAGE_TYPE_LINK_ADD: Add a new Link - MESSAGE_TYPE_LINK_REMOVE: Remove an existing Link - MESSAGE_TYPE_VERIFICATION_ADD_ETH_ADDRESS: Add a Verification of an Ethereum Address - MESSAGE_TYPE_VERIFICATION_REMOVE: Remove a Verification - MESSAGE_TYPE_USER_DATA_ADD: Add metadata about a user - MESSAGE_TYPE_USERNAME_PROOF: Add or replace a username proof - MESSAGE_TYPE_FRAME_ACTION: A Farcaster Frame action
            - `fid` integer, required — The unique identifier (FID) of the user who created this message. FIDs are assigned sequentially when users register on the network and cannot be changed.
            - `timestamp` integer, required — Seconds since Farcaster Epoch (2021-01-01T00:00:00Z). Used to order messages chronologically and determine the most recent state. Must be within 10 minutes of the current time when the message is created.
            - `network` 'FARCASTER_NETWORK_MAINNET' | 'FARCASTER_NETWORK_TESTNET' | 'FARCASTER_NETWORK_DEVNET', required — Farcaster network the message is intended for. - FARCASTER_NETWORK_MAINNET: Public primary network - FARCASTER_NETWORK_TESTNET: Public test network - FARCASTER_NETWORK_DEVNET: Private test network
            - `reactionBody` ReactionBody, required — Specifies the details of a reaction to content on Farcaster. A reaction must specify its type (like/recast) and either a target cast ID or URL to react to. Only one target (either castId or URL) should be specified per reaction.
              - …
          - MessageDataLink — Common properties shared by all Farcaster message types. These properties provide essential metadata about the message's origin, timing, and network context.
            - `type` 'MESSAGE_TYPE_CAST_ADD' | 'MESSAGE_TYPE_CAST_REMOVE' | 'MESSAGE_TYPE_REACTION_ADD' | 'MESSAGE_TYPE_REACTION_REMOVE' | 'MESSAGE_TYPE_LINK_ADD' | 'MESSAGE_TYPE_LINK_REMOVE' | 'MESSAGE_TYPE_VERIFICATION_ADD_ETH_ADDRESS' | 'MESSAGE_TYPE_VERIFICATION_REMOVE' | 'MESSAGE_TYPE_USER_DATA_ADD' | 'MESSAGE_TYPE_USERNAME_PROOF' | 'MESSAGE_TYPE_FRAME_ACTION' — Type of the MessageBody. - MESSAGE_TYPE_CAST_ADD: Add a new Cast - MESSAGE_TYPE_CAST_REMOVE: Remove an existing Cast - MESSAGE_TYPE_REACTION_ADD: Add a Reaction to a Cast - MESSAGE_TYPE_REACTION_REMOVE: Remove a Reaction from a Cast - MESSAGE_TYPE_LINK_ADD: Add a new Link - MESSAGE_TYPE_LINK_REMOVE: Remove an existing Link - MESSAGE_TYPE_VERIFICATION_ADD_ETH_ADDRESS: Add a Verification of an Ethereum Address - MESSAGE_TYPE_VERIFICATION_REMOVE: Remove a Verification - MESSAGE_TYPE_USER_DATA_ADD: Add metadata about a user - MESSAGE_TYPE_USERNAME_PROOF: Add or replace a username proof - MESSAGE_TYPE_FRAME_ACTION: A Farcaster Frame action
            - `fid` integer, required — The unique identifier (FID) of the user who created this message. FIDs are assigned sequentially when users register on the network and cannot be changed.
            - `timestamp` integer, required — Seconds since Farcaster Epoch (2021-01-01T00:00:00Z). Used to order messages chronologically and determine the most recent state. Must be within 10 minutes of the current time when the message is created.
            - `network` 'FARCASTER_NETWORK_MAINNET' | 'FARCASTER_NETWORK_TESTNET' | 'FARCASTER_NETWORK_DEVNET', required — Farcaster network the message is intended for. - FARCASTER_NETWORK_MAINNET: Public primary network - FARCASTER_NETWORK_TESTNET: Public test network - FARCASTER_NETWORK_DEVNET: Private test network
            - `linkBody` LinkBody, required — Defines a social connection between users in the Farcaster network. Currently used to establish following relationships, allowing users to curate their content feed.
              - …
          - MessageDataVerificationAdd — Common properties shared by all Farcaster message types. These properties provide essential metadata about the message's origin, timing, and network context.
            - `type` 'MESSAGE_TYPE_CAST_ADD' | 'MESSAGE_TYPE_CAST_REMOVE' | 'MESSAGE_TYPE_REACTION_ADD' | 'MESSAGE_TYPE_REACTION_REMOVE' | 'MESSAGE_TYPE_LINK_ADD' | 'MESSAGE_TYPE_LINK_REMOVE' | 'MESSAGE_TYPE_VERIFICATION_ADD_ETH_ADDRESS' | 'MESSAGE_TYPE_VERIFICATION_REMOVE' | 'MESSAGE_TYPE_USER_DATA_ADD' | 'MESSAGE_TYPE_USERNAME_PROOF' | 'MESSAGE_TYPE_FRAME_ACTION' — Type of the MessageBody. - MESSAGE_TYPE_CAST_ADD: Add a new Cast - MESSAGE_TYPE_CAST_REMOVE: Remove an existing Cast - MESSAGE_TYPE_REACTION_ADD: Add a Reaction to a Cast - MESSAGE_TYPE_REACTION_REMOVE: Remove a Reaction from a Cast - MESSAGE_TYPE_LINK_ADD: Add a new Link - MESSAGE_TYPE_LINK_REMOVE: Remove an existing Link - MESSAGE_TYPE_VERIFICATION_ADD_ETH_ADDRESS: Add a Verification of an Ethereum Address - MESSAGE_TYPE_VERIFICATION_REMOVE: Remove a Verification - MESSAGE_TYPE_USER_DATA_ADD: Add metadata about a user - MESSAGE_TYPE_USERNAME_PROOF: Add or replace a username proof - MESSAGE_TYPE_FRAME_ACTION: A Farcaster Frame action
            - `fid` integer, required — The unique identifier (FID) of the user who created this message. FIDs are assigned sequentially when users register on the network and cannot be changed.
            - `timestamp` integer, required — Seconds since Farcaster Epoch (2021-01-01T00:00:00Z). Used to order messages chronologically and determine the most recent state. Must be within 10 minutes of the current time when the message is created.
            - `network` 'FARCASTER_NETWORK_MAINNET' | 'FARCASTER_NETWORK_TESTNET' | 'FARCASTER_NETWORK_DEVNET', required — Farcaster network the message is intended for. - FARCASTER_NETWORK_MAINNET: Public primary network - FARCASTER_NETWORK_TESTNET: Public test network - FARCASTER_NETWORK_DEVNET: Private test network
            - `verificationAddEthAddressBody` VerificationAddEthAddressBody, required — Contains the data required to verify ownership of an Ethereum or Solana address. The verification process requires a cryptographic signature from the blockchain address and includes the block hash at the time of signing for timestamp verification.
              - …
          - MessageDataVerificationRemove — Common properties shared by all Farcaster message types. These properties provide essential metadata about the message's origin, timing, and network context.
            - `type` 'MESSAGE_TYPE_CAST_ADD' | 'MESSAGE_TYPE_CAST_REMOVE' | 'MESSAGE_TYPE_REACTION_ADD' | 'MESSAGE_TYPE_REACTION_REMOVE' | 'MESSAGE_TYPE_LINK_ADD' | 'MESSAGE_TYPE_LINK_REMOVE' | 'MESSAGE_TYPE_VERIFICATION_ADD_ETH_ADDRESS' | 'MESSAGE_TYPE_VERIFICATION_REMOVE' | 'MESSAGE_TYPE_USER_DATA_ADD' | 'MESSAGE_TYPE_USERNAME_PROOF' | 'MESSAGE_TYPE_FRAME_ACTION' — Type of the MessageBody. - MESSAGE_TYPE_CAST_ADD: Add a new Cast - MESSAGE_TYPE_CAST_REMOVE: Remove an existing Cast - MESSAGE_TYPE_REACTION_ADD: Add a Reaction to a Cast - MESSAGE_TYPE_REACTION_REMOVE: Remove a Reaction from a Cast - MESSAGE_TYPE_LINK_ADD: Add a new Link - MESSAGE_TYPE_LINK_REMOVE: Remove an existing Link - MESSAGE_TYPE_VERIFICATION_ADD_ETH_ADDRESS: Add a Verification of an Ethereum Address - MESSAGE_TYPE_VERIFICATION_REMOVE: Remove a Verification - MESSAGE_TYPE_USER_DATA_ADD: Add metadata about a user - MESSAGE_TYPE_USERNAME_PROOF: Add or replace a username proof - MESSAGE_TYPE_FRAME_ACTION: A Farcaster Frame action
            - `fid` integer, required — The unique identifier (FID) of the user who created this message. FIDs are assigned sequentially when users register on the network and cannot be changed.
            - `timestamp` integer, required — Seconds since Farcaster Epoch (2021-01-01T00:00:00Z). Used to order messages chronologically and determine the most recent state. Must be within 10 minutes of the current time when the message is created.
            - `network` 'FARCASTER_NETWORK_MAINNET' | 'FARCASTER_NETWORK_TESTNET' | 'FARCASTER_NETWORK_DEVNET', required — Farcaster network the message is intended for. - FARCASTER_NETWORK_MAINNET: Public primary network - FARCASTER_NETWORK_TESTNET: Public test network - FARCASTER_NETWORK_DEVNET: Private test network
            - `verificationRemoveBody` VerificationRemoveBody, required — Contains the data required to remove a previously added blockchain address verification from a user's profile. This operation permanently removes the verification until explicitly re-added.
              - …
          - MessageDataUserDataAdd — Common properties shared by all Farcaster message types. These properties provide essential metadata about the message's origin, timing, and network context.
            - `type` 'MESSAGE_TYPE_CAST_ADD' | 'MESSAGE_TYPE_CAST_REMOVE' | 'MESSAGE_TYPE_REACTION_ADD' | 'MESSAGE_TYPE_REACTION_REMOVE' | 'MESSAGE_TYPE_LINK_ADD' | 'MESSAGE_TYPE_LINK_REMOVE' | 'MESSAGE_TYPE_VERIFICATION_ADD_ETH_ADDRESS' | 'MESSAGE_TYPE_VERIFICATION_REMOVE' | 'MESSAGE_TYPE_USER_DATA_ADD' | 'MESSAGE_TYPE_USERNAME_PROOF' | 'MESSAGE_TYPE_FRAME_ACTION' — Type of the MessageBody. - MESSAGE_TYPE_CAST_ADD: Add a new Cast - MESSAGE_TYPE_CAST_REMOVE: Remove an existing Cast - MESSAGE_TYPE_REACTION_ADD: Add a Reaction to a Cast - MESSAGE_TYPE_REACTION_REMOVE: Remove a Reaction from a Cast - MESSAGE_TYPE_LINK_ADD: Add a new Link - MESSAGE_TYPE_LINK_REMOVE: Remove an existing Link - MESSAGE_TYPE_VERIFICATION_ADD_ETH_ADDRESS: Add a Verification of an Ethereum Address - MESSAGE_TYPE_VERIFICATION_REMOVE: Remove a Verification - MESSAGE_TYPE_USER_DATA_ADD: Add metadata about a user - MESSAGE_TYPE_USERNAME_PROOF: Add or replace a username proof - MESSAGE_TYPE_FRAME_ACTION: A Farcaster Frame action
            - `fid` integer, required — The unique identifier (FID) of the user who created this message. FIDs are assigned sequentially when users register on the network and cannot be changed.
            - `timestamp` integer, required — Seconds since Farcaster Epoch (2021-01-01T00:00:00Z). Used to order messages chronologically and determine the most recent state. Must be within 10 minutes of the current time when the message is created.
            - `network` 'FARCASTER_NETWORK_MAINNET' | 'FARCASTER_NETWORK_TESTNET' | 'FARCASTER_NETWORK_DEVNET', required — Farcaster network the message is intended for. - FARCASTER_NETWORK_MAINNET: Public primary network - FARCASTER_NETWORK_TESTNET: Public test network - FARCASTER_NETWORK_DEVNET: Private test network
            - `userDataBody` UserDataBody, required — Contains the data for updating a specific field of a user's profile metadata. Each update operation modifies one profile field at a time, allowing granular control over profile information.
              - …
          - MessageDataUsernameProof — Common properties shared by all Farcaster message types. These properties provide essential metadata about the message's origin, timing, and network context.
            - `type` 'MESSAGE_TYPE_CAST_ADD' | 'MESSAGE_TYPE_CAST_REMOVE' | 'MESSAGE_TYPE_REACTION_ADD' | 'MESSAGE_TYPE_REACTION_REMOVE' | 'MESSAGE_TYPE_LINK_ADD' | 'MESSAGE_TYPE_LINK_REMOVE' | 'MESSAGE_TYPE_VERIFICATION_ADD_ETH_ADDRESS' | 'MESSAGE_TYPE_VERIFICATION_REMOVE' | 'MESSAGE_TYPE_USER_DATA_ADD' | 'MESSAGE_TYPE_USERNAME_PROOF' | 'MESSAGE_TYPE_FRAME_ACTION' — Type of the MessageBody. - MESSAGE_TYPE_CAST_ADD: Add a new Cast - MESSAGE_TYPE_CAST_REMOVE: Remove an existing Cast - MESSAGE_TYPE_REACTION_ADD: Add a Reaction to a Cast - MESSAGE_TYPE_REACTION_REMOVE: Remove a Reaction from a Cast - MESSAGE_TYPE_LINK_ADD: Add a new Link - MESSAGE_TYPE_LINK_REMOVE: Remove an existing Link - MESSAGE_TYPE_VERIFICATION_ADD_ETH_ADDRESS: Add a Verification of an Ethereum Address - MESSAGE_TYPE_VERIFICATION_REMOVE: Remove a Verification - MESSAGE_TYPE_USER_DATA_ADD: Add metadata about a user - MESSAGE_TYPE_USERNAME_PROOF: Add or replace a username proof - MESSAGE_TYPE_FRAME_ACTION: A Farcaster Frame action
            - `fid` integer, required — The unique identifier (FID) of the user who created this message. FIDs are assigned sequentially when users register on the network and cannot be changed.
            - `timestamp` integer, required — Seconds since Farcaster Epoch (2021-01-01T00:00:00Z). Used to order messages chronologically and determine the most recent state. Must be within 10 minutes of the current time when the message is created.
            - `network` 'FARCASTER_NETWORK_MAINNET' | 'FARCASTER_NETWORK_TESTNET' | 'FARCASTER_NETWORK_DEVNET', required — Farcaster network the message is intended for. - FARCASTER_NETWORK_MAINNET: Public primary network - FARCASTER_NETWORK_TESTNET: Public test network - FARCASTER_NETWORK_DEVNET: Private test network
            - `usernameProofBody` UserNameProof, required
              - …
          - MessageDataFrameAction — Common properties shared by all Farcaster message types. These properties provide essential metadata about the message's origin, timing, and network context.
            - `type` 'MESSAGE_TYPE_CAST_ADD' | 'MESSAGE_TYPE_CAST_REMOVE' | 'MESSAGE_TYPE_REACTION_ADD' | 'MESSAGE_TYPE_REACTION_REMOVE' | 'MESSAGE_TYPE_LINK_ADD' | 'MESSAGE_TYPE_LINK_REMOVE' | 'MESSAGE_TYPE_VERIFICATION_ADD_ETH_ADDRESS' | 'MESSAGE_TYPE_VERIFICATION_REMOVE' | 'MESSAGE_TYPE_USER_DATA_ADD' | 'MESSAGE_TYPE_USERNAME_PROOF' | 'MESSAGE_TYPE_FRAME_ACTION' — Type of the MessageBody. - MESSAGE_TYPE_CAST_ADD: Add a new Cast - MESSAGE_TYPE_CAST_REMOVE: Remove an existing Cast - MESSAGE_TYPE_REACTION_ADD: Add a Reaction to a Cast - MESSAGE_TYPE_REACTION_REMOVE: Remove a Reaction from a Cast - MESSAGE_TYPE_LINK_ADD: Add a new Link - MESSAGE_TYPE_LINK_REMOVE: Remove an existing Link - MESSAGE_TYPE_VERIFICATION_ADD_ETH_ADDRESS: Add a Verification of an Ethereum Address - MESSAGE_TYPE_VERIFICATION_REMOVE: Remove a Verification - MESSAGE_TYPE_USER_DATA_ADD: Add metadata about a user - MESSAGE_TYPE_USERNAME_PROOF: Add or replace a username proof - MESSAGE_TYPE_FRAME_ACTION: A Farcaster Frame action
            - `fid` integer, required — The unique identifier (FID) of the user who created this message. FIDs are assigned sequentially when users register on the network and cannot be changed.
            - `timestamp` integer, required — Seconds since Farcaster Epoch (2021-01-01T00:00:00Z). Used to order messages chronologically and determine the most recent state. Must be within 10 minutes of the current time when the message is created.
            - `network` 'FARCASTER_NETWORK_MAINNET' | 'FARCASTER_NETWORK_TESTNET' | 'FARCASTER_NETWORK_DEVNET', required — Farcaster network the message is intended for. - FARCASTER_NETWORK_MAINNET: Public primary network - FARCASTER_NETWORK_TESTNET: Public test network - FARCASTER_NETWORK_DEVNET: Private test network
            - `frameActionBody` FrameActionBody, required — Contains the data for a user's interaction with a Farcaster Frame. Frames are interactive elements within casts that can have up to 4 clickable buttons, allowing users to engage with content in predefined ways.
              - …
        - `hash` string, required
        - `hashScheme` 'HASH_SCHEME_BLAKE3', required — Type of hashing scheme used to produce a digest of MessageData. - HASH_SCHEME_BLAKE3: Default scheme for hashing MessageData
        - `signature` string, byte, required
        - `signatureScheme` 'SIGNATURE_SCHEME_ED25519' | 'SIGNATURE_SCHEME_EIP712', required — Type of signature scheme used to sign the Message hash - SIGNATURE_SCHEME_ED25519: Ed25519 signature (default) - SIGNATURE_SCHEME_EIP712: ECDSA signature using EIP-712 scheme
        - `signer` string, required
  - HubEventRevokeMessage
    - `type` string, required
    - `id` integer, required
    - `revokeMessageBody` RevokeMessageBody, required
      - `message` Message, required — A Message is a delta operation on the Farcaster network that represents a state change. Messages are the fundamental unit of data in Farcaster and can represent various actions like: - Creating or removing casts (posts) - Adding or removing reactions - Following or unfollowing users - Updating profile data - Verifying Ethereum addresses Each message contains: - A MessageData object with the actual content - A hash of the content for integrity verification - A cryptographic signature to prove authenticity - The signer's public key for verification Messages are immutable once created and form an append-only log of all user actions on the network.
        - `data` union, required
          - MessageDataCastAdd — Common properties shared by all Farcaster message types. These properties provide essential metadata about the message's origin, timing, and network context.
            - `type` 'MESSAGE_TYPE_CAST_ADD' | 'MESSAGE_TYPE_CAST_REMOVE' | 'MESSAGE_TYPE_REACTION_ADD' | 'MESSAGE_TYPE_REACTION_REMOVE' | 'MESSAGE_TYPE_LINK_ADD' | 'MESSAGE_TYPE_LINK_REMOVE' | 'MESSAGE_TYPE_VERIFICATION_ADD_ETH_ADDRESS' | 'MESSAGE_TYPE_VERIFICATION_REMOVE' | 'MESSAGE_TYPE_USER_DATA_ADD' | 'MESSAGE_TYPE_USERNAME_PROOF' | 'MESSAGE_TYPE_FRAME_ACTION' — Type of the MessageBody. - MESSAGE_TYPE_CAST_ADD: Add a new Cast - MESSAGE_TYPE_CAST_REMOVE: Remove an existing Cast - MESSAGE_TYPE_REACTION_ADD: Add a Reaction to a Cast - MESSAGE_TYPE_REACTION_REMOVE: Remove a Reaction from a Cast - MESSAGE_TYPE_LINK_ADD: Add a new Link - MESSAGE_TYPE_LINK_REMOVE: Remove an existing Link - MESSAGE_TYPE_VERIFICATION_ADD_ETH_ADDRESS: Add a Verification of an Ethereum Address - MESSAGE_TYPE_VERIFICATION_REMOVE: Remove a Verification - MESSAGE_TYPE_USER_DATA_ADD: Add metadata about a user - MESSAGE_TYPE_USERNAME_PROOF: Add or replace a username proof - MESSAGE_TYPE_FRAME_ACTION: A Farcaster Frame action
            - `fid` integer, required — The unique identifier (FID) of the user who created this message. FIDs are assigned sequentially when users register on the network and cannot be changed.
            - `timestamp` integer, required — Seconds since Farcaster Epoch (2021-01-01T00:00:00Z). Used to order messages chronologically and determine the most recent state. Must be within 10 minutes of the current time when the message is created.
            - `network` 'FARCASTER_NETWORK_MAINNET' | 'FARCASTER_NETWORK_TESTNET' | 'FARCASTER_NETWORK_DEVNET', required — Farcaster network the message is intended for. - FARCASTER_NETWORK_MAINNET: Public primary network - FARCASTER_NETWORK_TESTNET: Public test network - FARCASTER_NETWORK_DEVNET: Private test network
            - `castAddBody` CastAddBody, required — Adds a new Cast
              - …
          - MessageDataCastRemove — Common properties shared by all Farcaster message types. These properties provide essential metadata about the message's origin, timing, and network context.
            - `type` 'MESSAGE_TYPE_CAST_ADD' | 'MESSAGE_TYPE_CAST_REMOVE' | 'MESSAGE_TYPE_REACTION_ADD' | 'MESSAGE_TYPE_REACTION_REMOVE' | 'MESSAGE_TYPE_LINK_ADD' | 'MESSAGE_TYPE_LINK_REMOVE' | 'MESSAGE_TYPE_VERIFICATION_ADD_ETH_ADDRESS' | 'MESSAGE_TYPE_VERIFICATION_REMOVE' | 'MESSAGE_TYPE_USER_DATA_ADD' | 'MESSAGE_TYPE_USERNAME_PROOF' | 'MESSAGE_TYPE_FRAME_ACTION' — Type of the MessageBody. - MESSAGE_TYPE_CAST_ADD: Add a new Cast - MESSAGE_TYPE_CAST_REMOVE: Remove an existing Cast - MESSAGE_TYPE_REACTION_ADD: Add a Reaction to a Cast - MESSAGE_TYPE_REACTION_REMOVE: Remove a Reaction from a Cast - MESSAGE_TYPE_LINK_ADD: Add a new Link - MESSAGE_TYPE_LINK_REMOVE: Remove an existing Link - MESSAGE_TYPE_VERIFICATION_ADD_ETH_ADDRESS: Add a Verification of an Ethereum Address - MESSAGE_TYPE_VERIFICATION_REMOVE: Remove a Verification - MESSAGE_TYPE_USER_DATA_ADD: Add metadata about a user - MESSAGE_TYPE_USERNAME_PROOF: Add or replace a username proof - MESSAGE_TYPE_FRAME_ACTION: A Farcaster Frame action
            - `fid` integer, required — The unique identifier (FID) of the user who created this message. FIDs are assigned sequentially when users register on the network and cannot be changed.
            - `timestamp` integer, required — Seconds since Farcaster Epoch (2021-01-01T00:00:00Z). Used to order messages chronologically and determine the most recent state. Must be within 10 minutes of the current time when the message is created.
            - `network` 'FARCASTER_NETWORK_MAINNET' | 'FARCASTER_NETWORK_TESTNET' | 'FARCASTER_NETWORK_DEVNET', required — Farcaster network the message is intended for. - FARCASTER_NETWORK_MAINNET: Public primary network - FARCASTER_NETWORK_TESTNET: Public test network - FARCASTER_NETWORK_DEVNET: Private test network
            - `targetHash` string, required — The unique hash identifier of the cast to be removed. Must be a cast that was previously created by the same FID specified in the message.
          - MessageDataReaction — Common properties shared by all Farcaster message types. These properties provide essential metadata about the message's origin, timing, and network context.
            - `type` 'MESSAGE_TYPE_CAST_ADD' | 'MESSAGE_TYPE_CAST_REMOVE' | 'MESSAGE_TYPE_REACTION_ADD' | 'MESSAGE_TYPE_REACTION_REMOVE' | 'MESSAGE_TYPE_LINK_ADD' | 'MESSAGE_TYPE_LINK_REMOVE' | 'MESSAGE_TYPE_VERIFICATION_ADD_ETH_ADDRESS' | 'MESSAGE_TYPE_VERIFICATION_REMOVE' | 'MESSAGE_TYPE_USER_DATA_ADD' | 'MESSAGE_TYPE_USERNAME_PROOF' | 'MESSAGE_TYPE_FRAME_ACTION' — Type of the MessageBody. - MESSAGE_TYPE_CAST_ADD: Add a new Cast - MESSAGE_TYPE_CAST_REMOVE: Remove an existing Cast - MESSAGE_TYPE_REACTION_ADD: Add a Reaction to a Cast - MESSAGE_TYPE_REACTION_REMOVE: Remove a Reaction from a Cast - MESSAGE_TYPE_LINK_ADD: Add a new Link - MESSAGE_TYPE_LINK_REMOVE: Remove an existing Link - MESSAGE_TYPE_VERIFICATION_ADD_ETH_ADDRESS: Add a Verification of an Ethereum Address - MESSAGE_TYPE_VERIFICATION_REMOVE: Remove a Verification - MESSAGE_TYPE_USER_DATA_ADD: Add metadata about a user - MESSAGE_TYPE_USERNAME_PROOF: Add or replace a username proof - MESSAGE_TYPE_FRAME_ACTION: A Farcaster Frame action
            - `fid` integer, required — The unique identifier (FID) of the user who created this message. FIDs are assigned sequentially when users register on the network and cannot be changed.
            - `timestamp` integer, required — Seconds since Farcaster Epoch (2021-01-01T00:00:00Z). Used to order messages chronologically and determine the most recent state. Must be within 10 minutes of the current time when the message is created.
            - `network` 'FARCASTER_NETWORK_MAINNET' | 'FARCASTER_NETWORK_TESTNET' | 'FARCASTER_NETWORK_DEVNET', required — Farcaster network the message is intended for. - FARCASTER_NETWORK_MAINNET: Public primary network - FARCASTER_NETWORK_TESTNET: Public test network - FARCASTER_NETWORK_DEVNET: Private test network
            - `reactionBody` ReactionBody, required — Specifies the details of a reaction to content on Farcaster. A reaction must specify its type (like/recast) and either a target cast ID or URL to react to. Only one target (either castId or URL) should be specified per reaction.
              - …
          - MessageDataLink — Common properties shared by all Farcaster message types. These properties provide essential metadata about the message's origin, timing, and network context.
            - `type` 'MESSAGE_TYPE_CAST_ADD' | 'MESSAGE_TYPE_CAST_REMOVE' | 'MESSAGE_TYPE_REACTION_ADD' | 'MESSAGE_TYPE_REACTION_REMOVE' | 'MESSAGE_TYPE_LINK_ADD' | 'MESSAGE_TYPE_LINK_REMOVE' | 'MESSAGE_TYPE_VERIFICATION_ADD_ETH_ADDRESS' | 'MESSAGE_TYPE_VERIFICATION_REMOVE' | 'MESSAGE_TYPE_USER_DATA_ADD' | 'MESSAGE_TYPE_USERNAME_PROOF' | 'MESSAGE_TYPE_FRAME_ACTION' — Type of the MessageBody. - MESSAGE_TYPE_CAST_ADD: Add a new Cast - MESSAGE_TYPE_CAST_REMOVE: Remove an existing Cast - MESSAGE_TYPE_REACTION_ADD: Add a Reaction to a Cast - MESSAGE_TYPE_REACTION_REMOVE: Remove a Reaction from a Cast - MESSAGE_TYPE_LINK_ADD: Add a new Link - MESSAGE_TYPE_LINK_REMOVE: Remove an existing Link - MESSAGE_TYPE_VERIFICATION_ADD_ETH_ADDRESS: Add a Verification of an Ethereum Address - MESSAGE_TYPE_VERIFICATION_REMOVE: Remove a Verification - MESSAGE_TYPE_USER_DATA_ADD: Add metadata about a user - MESSAGE_TYPE_USERNAME_PROOF: Add or replace a username proof - MESSAGE_TYPE_FRAME_ACTION: A Farcaster Frame action
            - `fid` integer, required — The unique identifier (FID) of the user who created this message. FIDs are assigned sequentially when users register on the network and cannot be changed.
            - `timestamp` integer, required — Seconds since Farcaster Epoch (2021-01-01T00:00:00Z). Used to order messages chronologically and determine the most recent state. Must be within 10 minutes of the current time when the message is created.
            - `network` 'FARCASTER_NETWORK_MAINNET' | 'FARCASTER_NETWORK_TESTNET' | 'FARCASTER_NETWORK_DEVNET', required — Farcaster network the message is intended for. - FARCASTER_NETWORK_MAINNET: Public primary network - FARCASTER_NETWORK_TESTNET: Public test network - FARCASTER_NETWORK_DEVNET: Private test network
            - `linkBody` LinkBody, required — Defines a social connection between users in the Farcaster network. Currently used to establish following relationships, allowing users to curate their content feed.
              - …
          - MessageDataVerificationAdd — Common properties shared by all Farcaster message types. These properties provide essential metadata about the message's origin, timing, and network context.
            - `type` 'MESSAGE_TYPE_CAST_ADD' | 'MESSAGE_TYPE_CAST_REMOVE' | 'MESSAGE_TYPE_REACTION_ADD' | 'MESSAGE_TYPE_REACTION_REMOVE' | 'MESSAGE_TYPE_LINK_ADD' | 'MESSAGE_TYPE_LINK_REMOVE' | 'MESSAGE_TYPE_VERIFICATION_ADD_ETH_ADDRESS' | 'MESSAGE_TYPE_VERIFICATION_REMOVE' | 'MESSAGE_TYPE_USER_DATA_ADD' | 'MESSAGE_TYPE_USERNAME_PROOF' | 'MESSAGE_TYPE_FRAME_ACTION' — Type of the MessageBody. - MESSAGE_TYPE_CAST_ADD: Add a new Cast - MESSAGE_TYPE_CAST_REMOVE: Remove an existing Cast - MESSAGE_TYPE_REACTION_ADD: Add a Reaction to a Cast - MESSAGE_TYPE_REACTION_REMOVE: Remove a Reaction from a Cast - MESSAGE_TYPE_LINK_ADD: Add a new Link - MESSAGE_TYPE_LINK_REMOVE: Remove an existing Link - MESSAGE_TYPE_VERIFICATION_ADD_ETH_ADDRESS: Add a Verification of an Ethereum Address - MESSAGE_TYPE_VERIFICATION_REMOVE: Remove a Verification - MESSAGE_TYPE_USER_DATA_ADD: Add metadata about a user - MESSAGE_TYPE_USERNAME_PROOF: Add or replace a username proof - MESSAGE_TYPE_FRAME_ACTION: A Farcaster Frame action
            - `fid` integer, required — The unique identifier (FID) of the user who created this message. FIDs are assigned sequentially when users register on the network and cannot be changed.
            - `timestamp` integer, required — Seconds since Farcaster Epoch (2021-01-01T00:00:00Z). Used to order messages chronologically and determine the most recent state. Must be within 10 minutes of the current time when the message is created.
            - `network` 'FARCASTER_NETWORK_MAINNET' | 'FARCASTER_NETWORK_TESTNET' | 'FARCASTER_NETWORK_DEVNET', required — Farcaster network the message is intended for. - FARCASTER_NETWORK_MAINNET: Public primary network - FARCASTER_NETWORK_TESTNET: Public test network - FARCASTER_NETWORK_DEVNET: Private test network
            - `verificationAddEthAddressBody` VerificationAddEthAddressBody, required — Contains the data required to verify ownership of an Ethereum or Solana address. The verification process requires a cryptographic signature from the blockchain address and includes the block hash at the time of signing for timestamp verification.
              - …
          - MessageDataVerificationRemove — Common properties shared by all Farcaster message types. These properties provide essential metadata about the message's origin, timing, and network context.
            - `type` 'MESSAGE_TYPE_CAST_ADD' | 'MESSAGE_TYPE_CAST_REMOVE' | 'MESSAGE_TYPE_REACTION_ADD' | 'MESSAGE_TYPE_REACTION_REMOVE' | 'MESSAGE_TYPE_LINK_ADD' | 'MESSAGE_TYPE_LINK_REMOVE' | 'MESSAGE_TYPE_VERIFICATION_ADD_ETH_ADDRESS' | 'MESSAGE_TYPE_VERIFICATION_REMOVE' | 'MESSAGE_TYPE_USER_DATA_ADD' | 'MESSAGE_TYPE_USERNAME_PROOF' | 'MESSAGE_TYPE_FRAME_ACTION' — Type of the MessageBody. - MESSAGE_TYPE_CAST_ADD: Add a new Cast - MESSAGE_TYPE_CAST_REMOVE: Remove an existing Cast - MESSAGE_TYPE_REACTION_ADD: Add a Reaction to a Cast - MESSAGE_TYPE_REACTION_REMOVE: Remove a Reaction from a Cast - MESSAGE_TYPE_LINK_ADD: Add a new Link - MESSAGE_TYPE_LINK_REMOVE: Remove an existing Link - MESSAGE_TYPE_VERIFICATION_ADD_ETH_ADDRESS: Add a Verification of an Ethereum Address - MESSAGE_TYPE_VERIFICATION_REMOVE: Remove a Verification - MESSAGE_TYPE_USER_DATA_ADD: Add metadata about a user - MESSAGE_TYPE_USERNAME_PROOF: Add or replace a username proof - MESSAGE_TYPE_FRAME_ACTION: A Farcaster Frame action
            - `fid` integer, required — The unique identifier (FID) of the user who created this message. FIDs are assigned sequentially when users register on the network and cannot be changed.
            - `timestamp` integer, required — Seconds since Farcaster Epoch (2021-01-01T00:00:00Z). Used to order messages chronologically and determine the most recent state. Must be within 10 minutes of the current time when the message is created.
            - `network` 'FARCASTER_NETWORK_MAINNET' | 'FARCASTER_NETWORK_TESTNET' | 'FARCASTER_NETWORK_DEVNET', required — Farcaster network the message is intended for. - FARCASTER_NETWORK_MAINNET: Public primary network - FARCASTER_NETWORK_TESTNET: Public test network - FARCASTER_NETWORK_DEVNET: Private test network
            - `verificationRemoveBody` VerificationRemoveBody, required — Contains the data required to remove a previously added blockchain address verification from a user's profile. This operation permanently removes the verification until explicitly re-added.
              - …
          - MessageDataUserDataAdd — Common properties shared by all Farcaster message types. These properties provide essential metadata about the message's origin, timing, and network context.
            - `type` 'MESSAGE_TYPE_CAST_ADD' | 'MESSAGE_TYPE_CAST_REMOVE' | 'MESSAGE_TYPE_REACTION_ADD' | 'MESSAGE_TYPE_REACTION_REMOVE' | 'MESSAGE_TYPE_LINK_ADD' | 'MESSAGE_TYPE_LINK_REMOVE' | 'MESSAGE_TYPE_VERIFICATION_ADD_ETH_ADDRESS' | 'MESSAGE_TYPE_VERIFICATION_REMOVE' | 'MESSAGE_TYPE_USER_DATA_ADD' | 'MESSAGE_TYPE_USERNAME_PROOF' | 'MESSAGE_TYPE_FRAME_ACTION' — Type of the MessageBody. - MESSAGE_TYPE_CAST_ADD: Add a new Cast - MESSAGE_TYPE_CAST_REMOVE: Remove an existing Cast - MESSAGE_TYPE_REACTION_ADD: Add a Reaction to a Cast - MESSAGE_TYPE_REACTION_REMOVE: Remove a Reaction from a Cast - MESSAGE_TYPE_LINK_ADD: Add a new Link - MESSAGE_TYPE_LINK_REMOVE: Remove an existing Link - MESSAGE_TYPE_VERIFICATION_ADD_ETH_ADDRESS: Add a Verification of an Ethereum Address - MESSAGE_TYPE_VERIFICATION_REMOVE: Remove a Verification - MESSAGE_TYPE_USER_DATA_ADD: Add metadata about a user - MESSAGE_TYPE_USERNAME_PROOF: Add or replace a username proof - MESSAGE_TYPE_FRAME_ACTION: A Farcaster Frame action
            - `fid` integer, required — The unique identifier (FID) of the user who created this message. FIDs are assigned sequentially when users register on the network and cannot be changed.
            - `timestamp` integer, required — Seconds since Farcaster Epoch (2021-01-01T00:00:00Z). Used to order messages chronologically and determine the most recent state. Must be within 10 minutes of the current time when the message is created.
            - `network` 'FARCASTER_NETWORK_MAINNET' | 'FARCASTER_NETWORK_TESTNET' | 'FARCASTER_NETWORK_DEVNET', required — Farcaster network the message is intended for. - FARCASTER_NETWORK_MAINNET: Public primary network - FARCASTER_NETWORK_TESTNET: Public test network - FARCASTER_NETWORK_DEVNET: Private test network
            - `userDataBody` UserDataBody, required — Contains the data for updating a specific field of a user's profile metadata. Each update operation modifies one profile field at a time, allowing granular control over profile information.
              - …
          - MessageDataUsernameProof — Common properties shared by all Farcaster message types. These properties provide essential metadata about the message's origin, timing, and network context.
            - `type` 'MESSAGE_TYPE_CAST_ADD' | 'MESSAGE_TYPE_CAST_REMOVE' | 'MESSAGE_TYPE_REACTION_ADD' | 'MESSAGE_TYPE_REACTION_REMOVE' | 'MESSAGE_TYPE_LINK_ADD' | 'MESSAGE_TYPE_LINK_REMOVE' | 'MESSAGE_TYPE_VERIFICATION_ADD_ETH_ADDRESS' | 'MESSAGE_TYPE_VERIFICATION_REMOVE' | 'MESSAGE_TYPE_USER_DATA_ADD' | 'MESSAGE_TYPE_USERNAME_PROOF' | 'MESSAGE_TYPE_FRAME_ACTION' — Type of the MessageBody. - MESSAGE_TYPE_CAST_ADD: Add a new Cast - MESSAGE_TYPE_CAST_REMOVE: Remove an existing Cast - MESSAGE_TYPE_REACTION_ADD: Add a Reaction to a Cast - MESSAGE_TYPE_REACTION_REMOVE: Remove a Reaction from a Cast - MESSAGE_TYPE_LINK_ADD: Add a new Link - MESSAGE_TYPE_LINK_REMOVE: Remove an existing Link - MESSAGE_TYPE_VERIFICATION_ADD_ETH_ADDRESS: Add a Verification of an Ethereum Address - MESSAGE_TYPE_VERIFICATION_REMOVE: Remove a Verification - MESSAGE_TYPE_USER_DATA_ADD: Add metadata about a user - MESSAGE_TYPE_USERNAME_PROOF: Add or replace a username proof - MESSAGE_TYPE_FRAME_ACTION: A Farcaster Frame action
            - `fid` integer, required — The unique identifier (FID) of the user who created this message. FIDs are assigned sequentially when users register on the network and cannot be changed.
            - `timestamp` integer, required — Seconds since Farcaster Epoch (2021-01-01T00:00:00Z). Used to order messages chronologically and determine the most recent state. Must be within 10 minutes of the current time when the message is created.
            - `network` 'FARCASTER_NETWORK_MAINNET' | 'FARCASTER_NETWORK_TESTNET' | 'FARCASTER_NETWORK_DEVNET', required — Farcaster network the message is intended for. - FARCASTER_NETWORK_MAINNET: Public primary network - FARCASTER_NETWORK_TESTNET: Public test network - FARCASTER_NETWORK_DEVNET: Private test network
            - `usernameProofBody` UserNameProof, required
              - …
          - MessageDataFrameAction — Common properties shared by all Farcaster message types. These properties provide essential metadata about the message's origin, timing, and network context.
            - `type` 'MESSAGE_TYPE_CAST_ADD' | 'MESSAGE_TYPE_CAST_REMOVE' | 'MESSAGE_TYPE_REACTION_ADD' | 'MESSAGE_TYPE_REACTION_REMOVE' | 'MESSAGE_TYPE_LINK_ADD' | 'MESSAGE_TYPE_LINK_REMOVE' | 'MESSAGE_TYPE_VERIFICATION_ADD_ETH_ADDRESS' | 'MESSAGE_TYPE_VERIFICATION_REMOVE' | 'MESSAGE_TYPE_USER_DATA_ADD' | 'MESSAGE_TYPE_USERNAME_PROOF' | 'MESSAGE_TYPE_FRAME_ACTION' — Type of the MessageBody. - MESSAGE_TYPE_CAST_ADD: Add a new Cast - MESSAGE_TYPE_CAST_REMOVE: Remove an existing Cast - MESSAGE_TYPE_REACTION_ADD: Add a Reaction to a Cast - MESSAGE_TYPE_REACTION_REMOVE: Remove a Reaction from a Cast - MESSAGE_TYPE_LINK_ADD: Add a new Link - MESSAGE_TYPE_LINK_REMOVE: Remove an existing Link - MESSAGE_TYPE_VERIFICATION_ADD_ETH_ADDRESS: Add a Verification of an Ethereum Address - MESSAGE_TYPE_VERIFICATION_REMOVE: Remove a Verification - MESSAGE_TYPE_USER_DATA_ADD: Add metadata about a user - MESSAGE_TYPE_USERNAME_PROOF: Add or replace a username proof - MESSAGE_TYPE_FRAME_ACTION: A Farcaster Frame action
            - `fid` integer, required — The unique identifier (FID) of the user who created this message. FIDs are assigned sequentially when users register on the network and cannot be changed.
            - `timestamp` integer, required — Seconds since Farcaster Epoch (2021-01-01T00:00:00Z). Used to order messages chronologically and determine the most recent state. Must be within 10 minutes of the current time when the message is created.
            - `network` 'FARCASTER_NETWORK_MAINNET' | 'FARCASTER_NETWORK_TESTNET' | 'FARCASTER_NETWORK_DEVNET', required — Farcaster network the message is intended for. - FARCASTER_NETWORK_MAINNET: Public primary network - FARCASTER_NETWORK_TESTNET: Public test network - FARCASTER_NETWORK_DEVNET: Private test network
            - `frameActionBody` FrameActionBody, required — Contains the data for a user's interaction with a Farcaster Frame. Frames are interactive elements within casts that can have up to 4 clickable buttons, allowing users to engage with content in predefined ways.
              - …
        - `hash` string, required
        - `hashScheme` 'HASH_SCHEME_BLAKE3', required — Type of hashing scheme used to produce a digest of MessageData. - HASH_SCHEME_BLAKE3: Default scheme for hashing MessageData
        - `signature` string, byte, required
        - `signatureScheme` 'SIGNATURE_SCHEME_ED25519' | 'SIGNATURE_SCHEME_EIP712', required — Type of signature scheme used to sign the Message hash - SIGNATURE_SCHEME_ED25519: Ed25519 signature (default) - SIGNATURE_SCHEME_EIP712: ECDSA signature using EIP-712 scheme
        - `signer` string, required
  - HubEventMergeUsernameProof
    - `type` string, required
    - `id` integer, required
    - `mergeUsernameProofBody` MergeUserNameProofBody, required
      - `usernameProof` UserNameProof
        - `timestamp` integer, required — Seconds since Unix Epoch which began on Jan 1, 1970 00:00:00 UTC
        - `name` string, required
        - `owner` string, required
        - `signature` string, byte, required
        - `fid` integer, required — Farcaster ID (FID). A unique identifier assigned to each user in the Farcaster network. This number is permanent and cannot be changed. FIDs are assigned sequentially when users register on the network.
        - `type` 'USERNAME_TYPE_FNAME' | 'USERNAME_TYPE_ENS_L1', required
      - `deletedUsernameProof` UserNameProof
        - `timestamp` integer, required — Seconds since Unix Epoch which began on Jan 1, 1970 00:00:00 UTC
        - `name` string, required
        - `owner` string, required
        - `signature` string, byte, required
        - `fid` integer, required — Farcaster ID (FID). A unique identifier assigned to each user in the Farcaster network. This number is permanent and cannot be changed. FIDs are assigned sequentially when users register on the network.
        - `type` 'USERNAME_TYPE_FNAME' | 'USERNAME_TYPE_ENS_L1', required
      - `usernameProofMessage` Message — A Message is a delta operation on the Farcaster network that represents a state change. Messages are the fundamental unit of data in Farcaster and can represent various actions like: - Creating or removing casts (posts) - Adding or removing reactions - Following or unfollowing users - Updating profile data - Verifying Ethereum addresses Each message contains: - A MessageData object with the actual content - A hash of the content for integrity verification - A cryptographic signature to prove authenticity - The signer's public key for verification Messages are immutable once created and form an append-only log of all user actions on the network.
        - `data` union, required
          - MessageDataCastAdd — Common properties shared by all Farcaster message types. These properties provide essential metadata about the message's origin, timing, and network context.
            - `type` 'MESSAGE_TYPE_CAST_ADD' | 'MESSAGE_TYPE_CAST_REMOVE' | 'MESSAGE_TYPE_REACTION_ADD' | 'MESSAGE_TYPE_REACTION_REMOVE' | 'MESSAGE_TYPE_LINK_ADD' | 'MESSAGE_TYPE_LINK_REMOVE' | 'MESSAGE_TYPE_VERIFICATION_ADD_ETH_ADDRESS' | 'MESSAGE_TYPE_VERIFICATION_REMOVE' | 'MESSAGE_TYPE_USER_DATA_ADD' | 'MESSAGE_TYPE_USERNAME_PROOF' | 'MESSAGE_TYPE_FRAME_ACTION' — Type of the MessageBody. - MESSAGE_TYPE_CAST_ADD: Add a new Cast - MESSAGE_TYPE_CAST_REMOVE: Remove an existing Cast - MESSAGE_TYPE_REACTION_ADD: Add a Reaction to a Cast - MESSAGE_TYPE_REACTION_REMOVE: Remove a Reaction from a Cast - MESSAGE_TYPE_LINK_ADD: Add a new Link - MESSAGE_TYPE_LINK_REMOVE: Remove an existing Link - MESSAGE_TYPE_VERIFICATION_ADD_ETH_ADDRESS: Add a Verification of an Ethereum Address - MESSAGE_TYPE_VERIFICATION_REMOVE: Remove a Verification - MESSAGE_TYPE_USER_DATA_ADD: Add metadata about a user - MESSAGE_TYPE_USERNAME_PROOF: Add or replace a username proof - MESSAGE_TYPE_FRAME_ACTION: A Farcaster Frame action
            - `fid` integer, required — The unique identifier (FID) of the user who created this message. FIDs are assigned sequentially when users register on the network and cannot be changed.
            - `timestamp` integer, required — Seconds since Farcaster Epoch (2021-01-01T00:00:00Z). Used to order messages chronologically and determine the most recent state. Must be within 10 minutes of the current time when the message is created.
            - `network` 'FARCASTER_NETWORK_MAINNET' | 'FARCASTER_NETWORK_TESTNET' | 'FARCASTER_NETWORK_DEVNET', required — Farcaster network the message is intended for. - FARCASTER_NETWORK_MAINNET: Public primary network - FARCASTER_NETWORK_TESTNET: Public test network - FARCASTER_NETWORK_DEVNET: Private test network
            - `castAddBody` CastAddBody, required — Adds a new Cast
              - …
          - MessageDataCastRemove — Common properties shared by all Farcaster message types. These properties provide essential metadata about the message's origin, timing, and network context.
            - `type` 'MESSAGE_TYPE_CAST_ADD' | 'MESSAGE_TYPE_CAST_REMOVE' | 'MESSAGE_TYPE_REACTION_ADD' | 'MESSAGE_TYPE_REACTION_REMOVE' | 'MESSAGE_TYPE_LINK_ADD' | 'MESSAGE_TYPE_LINK_REMOVE' | 'MESSAGE_TYPE_VERIFICATION_ADD_ETH_ADDRESS' | 'MESSAGE_TYPE_VERIFICATION_REMOVE' | 'MESSAGE_TYPE_USER_DATA_ADD' | 'MESSAGE_TYPE_USERNAME_PROOF' | 'MESSAGE_TYPE_FRAME_ACTION' — Type of the MessageBody. - MESSAGE_TYPE_CAST_ADD: Add a new Cast - MESSAGE_TYPE_CAST_REMOVE: Remove an existing Cast - MESSAGE_TYPE_REACTION_ADD: Add a Reaction to a Cast - MESSAGE_TYPE_REACTION_REMOVE: Remove a Reaction from a Cast - MESSAGE_TYPE_LINK_ADD: Add a new Link - MESSAGE_TYPE_LINK_REMOVE: Remove an existing Link - MESSAGE_TYPE_VERIFICATION_ADD_ETH_ADDRESS: Add a Verification of an Ethereum Address - MESSAGE_TYPE_VERIFICATION_REMOVE: Remove a Verification - MESSAGE_TYPE_USER_DATA_ADD: Add metadata about a user - MESSAGE_TYPE_USERNAME_PROOF: Add or replace a username proof - MESSAGE_TYPE_FRAME_ACTION: A Farcaster Frame action
            - `fid` integer, required — The unique identifier (FID) of the user who created this message. FIDs are assigned sequentially when users register on the network and cannot be changed.
            - `timestamp` integer, required — Seconds since Farcaster Epoch (2021-01-01T00:00:00Z). Used to order messages chronologically and determine the most recent state. Must be within 10 minutes of the current time when the message is created.
            - `network` 'FARCASTER_NETWORK_MAINNET' | 'FARCASTER_NETWORK_TESTNET' | 'FARCASTER_NETWORK_DEVNET', required — Farcaster network the message is intended for. - FARCASTER_NETWORK_MAINNET: Public primary network - FARCASTER_NETWORK_TESTNET: Public test network - FARCASTER_NETWORK_DEVNET: Private test network
            - `targetHash` string, required — The unique hash identifier of the cast to be removed. Must be a cast that was previously created by the same FID specified in the message.
          - MessageDataReaction — Common properties shared by all Farcaster message types. These properties provide essential metadata about the message's origin, timing, and network context.
            - `type` 'MESSAGE_TYPE_CAST_ADD' | 'MESSAGE_TYPE_CAST_REMOVE' | 'MESSAGE_TYPE_REACTION_ADD' | 'MESSAGE_TYPE_REACTION_REMOVE' | 'MESSAGE_TYPE_LINK_ADD' | 'MESSAGE_TYPE_LINK_REMOVE' | 'MESSAGE_TYPE_VERIFICATION_ADD_ETH_ADDRESS' | 'MESSAGE_TYPE_VERIFICATION_REMOVE' | 'MESSAGE_TYPE_USER_DATA_ADD' | 'MESSAGE_TYPE_USERNAME_PROOF' | 'MESSAGE_TYPE_FRAME_ACTION' — Type of the MessageBody. - MESSAGE_TYPE_CAST_ADD: Add a new Cast - MESSAGE_TYPE_CAST_REMOVE: Remove an existing Cast - MESSAGE_TYPE_REACTION_ADD: Add a Reaction to a Cast - MESSAGE_TYPE_REACTION_REMOVE: Remove a Reaction from a Cast - MESSAGE_TYPE_LINK_ADD: Add a new Link - MESSAGE_TYPE_LINK_REMOVE: Remove an existing Link - MESSAGE_TYPE_VERIFICATION_ADD_ETH_ADDRESS: Add a Verification of an Ethereum Address - MESSAGE_TYPE_VERIFICATION_REMOVE: Remove a Verification - MESSAGE_TYPE_USER_DATA_ADD: Add metadata about a user - MESSAGE_TYPE_USERNAME_PROOF: Add or replace a username proof - MESSAGE_TYPE_FRAME_ACTION: A Farcaster Frame action
            - `fid` integer, required — The unique identifier (FID) of the user who created this message. FIDs are assigned sequentially when users register on the network and cannot be changed.
            - `timestamp` integer, required — Seconds since Farcaster Epoch (2021-01-01T00:00:00Z). Used to order messages chronologically and determine the most recent state. Must be within 10 minutes of the current time when the message is created.
            - `network` 'FARCASTER_NETWORK_MAINNET' | 'FARCASTER_NETWORK_TESTNET' | 'FARCASTER_NETWORK_DEVNET', required — Farcaster network the message is intended for. - FARCASTER_NETWORK_MAINNET: Public primary network - FARCASTER_NETWORK_TESTNET: Public test network - FARCASTER_NETWORK_DEVNET: Private test network
            - `reactionBody` ReactionBody, required — Specifies the details of a reaction to content on Farcaster. A reaction must specify its type (like/recast) and either a target cast ID or URL to react to. Only one target (either castId or URL) should be specified per reaction.
              - …
          - MessageDataLink — Common properties shared by all Farcaster message types. These properties provide essential metadata about the message's origin, timing, and network context.
            - `type` 'MESSAGE_TYPE_CAST_ADD' | 'MESSAGE_TYPE_CAST_REMOVE' | 'MESSAGE_TYPE_REACTION_ADD' | 'MESSAGE_TYPE_REACTION_REMOVE' | 'MESSAGE_TYPE_LINK_ADD' | 'MESSAGE_TYPE_LINK_REMOVE' | 'MESSAGE_TYPE_VERIFICATION_ADD_ETH_ADDRESS' | 'MESSAGE_TYPE_VERIFICATION_REMOVE' | 'MESSAGE_TYPE_USER_DATA_ADD' | 'MESSAGE_TYPE_USERNAME_PROOF' | 'MESSAGE_TYPE_FRAME_ACTION' — Type of the MessageBody. - MESSAGE_TYPE_CAST_ADD: Add a new Cast - MESSAGE_TYPE_CAST_REMOVE: Remove an existing Cast - MESSAGE_TYPE_REACTION_ADD: Add a Reaction to a Cast - MESSAGE_TYPE_REACTION_REMOVE: Remove a Reaction from a Cast - MESSAGE_TYPE_LINK_ADD: Add a new Link - MESSAGE_TYPE_LINK_REMOVE: Remove an existing Link - MESSAGE_TYPE_VERIFICATION_ADD_ETH_ADDRESS: Add a Verification of an Ethereum Address - MESSAGE_TYPE_VERIFICATION_REMOVE: Remove a Verification - MESSAGE_TYPE_USER_DATA_ADD: Add metadata about a user - MESSAGE_TYPE_USERNAME_PROOF: Add or replace a username proof - MESSAGE_TYPE_FRAME_ACTION: A Farcaster Frame action
            - `fid` integer, required — The unique identifier (FID) of the user who created this message. FIDs are assigned sequentially when users register on the network and cannot be changed.
            - `timestamp` integer, required — Seconds since Farcaster Epoch (2021-01-01T00:00:00Z). Used to order messages chronologically and determine the most recent state. Must be within 10 minutes of the current time when the message is created.
            - `network` 'FARCASTER_NETWORK_MAINNET' | 'FARCASTER_NETWORK_TESTNET' | 'FARCASTER_NETWORK_DEVNET', required — Farcaster network the message is intended for. - FARCASTER_NETWORK_MAINNET: Public primary network - FARCASTER_NETWORK_TESTNET: Public test network - FARCASTER_NETWORK_DEVNET: Private test network
            - `linkBody` LinkBody, required — Defines a social connection between users in the Farcaster network. Currently used to establish following relationships, allowing users to curate their content feed.
              - …
          - MessageDataVerificationAdd — Common properties shared by all Farcaster message types. These properties provide essential metadata about the message's origin, timing, and network context.
            - `type` 'MESSAGE_TYPE_CAST_ADD' | 'MESSAGE_TYPE_CAST_REMOVE' | 'MESSAGE_TYPE_REACTION_ADD' | 'MESSAGE_TYPE_REACTION_REMOVE' | 'MESSAGE_TYPE_LINK_ADD' | 'MESSAGE_TYPE_LINK_REMOVE' | 'MESSAGE_TYPE_VERIFICATION_ADD_ETH_ADDRESS' | 'MESSAGE_TYPE_VERIFICATION_REMOVE' | 'MESSAGE_TYPE_USER_DATA_ADD' | 'MESSAGE_TYPE_USERNAME_PROOF' | 'MESSAGE_TYPE_FRAME_ACTION' — Type of the MessageBody. - MESSAGE_TYPE_CAST_ADD: Add a new Cast - MESSAGE_TYPE_CAST_REMOVE: Remove an existing Cast - MESSAGE_TYPE_REACTION_ADD: Add a Reaction to a Cast - MESSAGE_TYPE_REACTION_REMOVE: Remove a Reaction from a Cast - MESSAGE_TYPE_LINK_ADD: Add a new Link - MESSAGE_TYPE_LINK_REMOVE: Remove an existing Link - MESSAGE_TYPE_VERIFICATION_ADD_ETH_ADDRESS: Add a Verification of an Ethereum Address - MESSAGE_TYPE_VERIFICATION_REMOVE: Remove a Verification - MESSAGE_TYPE_USER_DATA_ADD: Add metadata about a user - MESSAGE_TYPE_USERNAME_PROOF: Add or replace a username proof - MESSAGE_TYPE_FRAME_ACTION: A Farcaster Frame action
            - `fid` integer, required — The unique identifier (FID) of the user who created this message. FIDs are assigned sequentially when users register on the network and cannot be changed.
            - `timestamp` integer, required — Seconds since Farcaster Epoch (2021-01-01T00:00:00Z). Used to order messages chronologically and determine the most recent state. Must be within 10 minutes of the current time when the message is created.
            - `network` 'FARCASTER_NETWORK_MAINNET' | 'FARCASTER_NETWORK_TESTNET' | 'FARCASTER_NETWORK_DEVNET', required — Farcaster network the message is intended for. - FARCASTER_NETWORK_MAINNET: Public primary network - FARCASTER_NETWORK_TESTNET: Public test network - FARCASTER_NETWORK_DEVNET: Private test network
            - `verificationAddEthAddressBody` VerificationAddEthAddressBody, required — Contains the data required to verify ownership of an Ethereum or Solana address. The verification process requires a cryptographic signature from the blockchain address and includes the block hash at the time of signing for timestamp verification.
              - …
          - MessageDataVerificationRemove — Common properties shared by all Farcaster message types. These properties provide essential metadata about the message's origin, timing, and network context.
            - `type` 'MESSAGE_TYPE_CAST_ADD' | 'MESSAGE_TYPE_CAST_REMOVE' | 'MESSAGE_TYPE_REACTION_ADD' | 'MESSAGE_TYPE_REACTION_REMOVE' | 'MESSAGE_TYPE_LINK_ADD' | 'MESSAGE_TYPE_LINK_REMOVE' | 'MESSAGE_TYPE_VERIFICATION_ADD_ETH_ADDRESS' | 'MESSAGE_TYPE_VERIFICATION_REMOVE' | 'MESSAGE_TYPE_USER_DATA_ADD' | 'MESSAGE_TYPE_USERNAME_PROOF' | 'MESSAGE_TYPE_FRAME_ACTION' — Type of the MessageBody. - MESSAGE_TYPE_CAST_ADD: Add a new Cast - MESSAGE_TYPE_CAST_REMOVE: Remove an existing Cast - MESSAGE_TYPE_REACTION_ADD: Add a Reaction to a Cast - MESSAGE_TYPE_REACTION_REMOVE: Remove a Reaction from a Cast - MESSAGE_TYPE_LINK_ADD: Add a new Link - MESSAGE_TYPE_LINK_REMOVE: Remove an existing Link - MESSAGE_TYPE_VERIFICATION_ADD_ETH_ADDRESS: Add a Verification of an Ethereum Address - MESSAGE_TYPE_VERIFICATION_REMOVE: Remove a Verification - MESSAGE_TYPE_USER_DATA_ADD: Add metadata about a user - MESSAGE_TYPE_USERNAME_PROOF: Add or replace a username proof - MESSAGE_TYPE_FRAME_ACTION: A Farcaster Frame action
            - `fid` integer, required — The unique identifier (FID) of the user who created this message. FIDs are assigned sequentially when users register on the network and cannot be changed.
            - `timestamp` integer, required — Seconds since Farcaster Epoch (2021-01-01T00:00:00Z). Used to order messages chronologically and determine the most recent state. Must be within 10 minutes of the current time when the message is created.
            - `network` 'FARCASTER_NETWORK_MAINNET' | 'FARCASTER_NETWORK_TESTNET' | 'FARCASTER_NETWORK_DEVNET', required — Farcaster network the message is intended for. - FARCASTER_NETWORK_MAINNET: Public primary network - FARCASTER_NETWORK_TESTNET: Public test network - FARCASTER_NETWORK_DEVNET: Private test network
            - `verificationRemoveBody` VerificationRemoveBody, required — Contains the data required to remove a previously added blockchain address verification from a user's profile. This operation permanently removes the verification until explicitly re-added.
              - …
          - MessageDataUserDataAdd — Common properties shared by all Farcaster message types. These properties provide essential metadata about the message's origin, timing, and network context.
            - `type` 'MESSAGE_TYPE_CAST_ADD' | 'MESSAGE_TYPE_CAST_REMOVE' | 'MESSAGE_TYPE_REACTION_ADD' | 'MESSAGE_TYPE_REACTION_REMOVE' | 'MESSAGE_TYPE_LINK_ADD' | 'MESSAGE_TYPE_LINK_REMOVE' | 'MESSAGE_TYPE_VERIFICATION_ADD_ETH_ADDRESS' | 'MESSAGE_TYPE_VERIFICATION_REMOVE' | 'MESSAGE_TYPE_USER_DATA_ADD' | 'MESSAGE_TYPE_USERNAME_PROOF' | 'MESSAGE_TYPE_FRAME_ACTION' — Type of the MessageBody. - MESSAGE_TYPE_CAST_ADD: Add a new Cast - MESSAGE_TYPE_CAST_REMOVE: Remove an existing Cast - MESSAGE_TYPE_REACTION_ADD: Add a Reaction to a Cast - MESSAGE_TYPE_REACTION_REMOVE: Remove a Reaction from a Cast - MESSAGE_TYPE_LINK_ADD: Add a new Link - MESSAGE_TYPE_LINK_REMOVE: Remove an existing Link - MESSAGE_TYPE_VERIFICATION_ADD_ETH_ADDRESS: Add a Verification of an Ethereum Address - MESSAGE_TYPE_VERIFICATION_REMOVE: Remove a Verification - MESSAGE_TYPE_USER_DATA_ADD: Add metadata about a user - MESSAGE_TYPE_USERNAME_PROOF: Add or replace a username proof - MESSAGE_TYPE_FRAME_ACTION: A Farcaster Frame action
            - `fid` integer, required — The unique identifier (FID) of the user who created this message. FIDs are assigned sequentially when users register on the network and cannot be changed.
            - `timestamp` integer, required — Seconds since Farcaster Epoch (2021-01-01T00:00:00Z). Used to order messages chronologically and determine the most recent state. Must be within 10 minutes of the current time when the message is created.
            - `network` 'FARCASTER_NETWORK_MAINNET' | 'FARCASTER_NETWORK_TESTNET' | 'FARCASTER_NETWORK_DEVNET', required — Farcaster network the message is intended for. - FARCASTER_NETWORK_MAINNET: Public primary network - FARCASTER_NETWORK_TESTNET: Public test network - FARCASTER_NETWORK_DEVNET: Private test network
            - `userDataBody` UserDataBody, required — Contains the data for updating a specific field of a user's profile metadata. Each update operation modifies one profile field at a time, allowing granular control over profile information.
              - …
          - MessageDataUsernameProof — Common properties shared by all Farcaster message types. These properties provide essential metadata about the message's origin, timing, and network context.
            - `type` 'MESSAGE_TYPE_CAST_ADD' | 'MESSAGE_TYPE_CAST_REMOVE' | 'MESSAGE_TYPE_REACTION_ADD' | 'MESSAGE_TYPE_REACTION_REMOVE' | 'MESSAGE_TYPE_LINK_ADD' | 'MESSAGE_TYPE_LINK_REMOVE' | 'MESSAGE_TYPE_VERIFICATION_ADD_ETH_ADDRESS' | 'MESSAGE_TYPE_VERIFICATION_REMOVE' | 'MESSAGE_TYPE_USER_DATA_ADD' | 'MESSAGE_TYPE_USERNAME_PROOF' | 'MESSAGE_TYPE_FRAME_ACTION' — Type of the MessageBody. - MESSAGE_TYPE_CAST_ADD: Add a new Cast - MESSAGE_TYPE_CAST_REMOVE: Remove an existing Cast - MESSAGE_TYPE_REACTION_ADD: Add a Reaction to a Cast - MESSAGE_TYPE_REACTION_REMOVE: Remove a Reaction from a Cast - MESSAGE_TYPE_LINK_ADD: Add a new Link - MESSAGE_TYPE_LINK_REMOVE: Remove an existing Link - MESSAGE_TYPE_VERIFICATION_ADD_ETH_ADDRESS: Add a Verification of an Ethereum Address - MESSAGE_TYPE_VERIFICATION_REMOVE: Remove a Verification - MESSAGE_TYPE_USER_DATA_ADD: Add metadata about a user - MESSAGE_TYPE_USERNAME_PROOF: Add or replace a username proof - MESSAGE_TYPE_FRAME_ACTION: A Farcaster Frame action
            - `fid` integer, required — The unique identifier (FID) of the user who created this message. FIDs are assigned sequentially when users register on the network and cannot be changed.
            - `timestamp` integer, required — Seconds since Farcaster Epoch (2021-01-01T00:00:00Z). Used to order messages chronologically and determine the most recent state. Must be within 10 minutes of the current time when the message is created.
            - `network` 'FARCASTER_NETWORK_MAINNET' | 'FARCASTER_NETWORK_TESTNET' | 'FARCASTER_NETWORK_DEVNET', required — Farcaster network the message is intended for. - FARCASTER_NETWORK_MAINNET: Public primary network - FARCASTER_NETWORK_TESTNET: Public test network - FARCASTER_NETWORK_DEVNET: Private test network
            - `usernameProofBody` UserNameProof, required
              - …
          - MessageDataFrameAction — Common properties shared by all Farcaster message types. These properties provide essential metadata about the message's origin, timing, and network context.
            - `type` 'MESSAGE_TYPE_CAST_ADD' | 'MESSAGE_TYPE_CAST_REMOVE' | 'MESSAGE_TYPE_REACTION_ADD' | 'MESSAGE_TYPE_REACTION_REMOVE' | 'MESSAGE_TYPE_LINK_ADD' | 'MESSAGE_TYPE_LINK_REMOVE' | 'MESSAGE_TYPE_VERIFICATION_ADD_ETH_ADDRESS' | 'MESSAGE_TYPE_VERIFICATION_REMOVE' | 'MESSAGE_TYPE_USER_DATA_ADD' | 'MESSAGE_TYPE_USERNAME_PROOF' | 'MESSAGE_TYPE_FRAME_ACTION' — Type of the MessageBody. - MESSAGE_TYPE_CAST_ADD: Add a new Cast - MESSAGE_TYPE_CAST_REMOVE: Remove an existing Cast - MESSAGE_TYPE_REACTION_ADD: Add a Reaction to a Cast - MESSAGE_TYPE_REACTION_REMOVE: Remove a Reaction from a Cast - MESSAGE_TYPE_LINK_ADD: Add a new Link - MESSAGE_TYPE_LINK_REMOVE: Remove an existing Link - MESSAGE_TYPE_VERIFICATION_ADD_ETH_ADDRESS: Add a Verification of an Ethereum Address - MESSAGE_TYPE_VERIFICATION_REMOVE: Remove a Verification - MESSAGE_TYPE_USER_DATA_ADD: Add metadata about a user - MESSAGE_TYPE_USERNAME_PROOF: Add or replace a username proof - MESSAGE_TYPE_FRAME_ACTION: A Farcaster Frame action
            - `fid` integer, required — The unique identifier (FID) of the user who created this message. FIDs are assigned sequentially when users register on the network and cannot be changed.
            - `timestamp` integer, required — Seconds since Farcaster Epoch (2021-01-01T00:00:00Z). Used to order messages chronologically and determine the most recent state. Must be within 10 minutes of the current time when the message is created.
            - `network` 'FARCASTER_NETWORK_MAINNET' | 'FARCASTER_NETWORK_TESTNET' | 'FARCASTER_NETWORK_DEVNET', required — Farcaster network the message is intended for. - FARCASTER_NETWORK_MAINNET: Public primary network - FARCASTER_NETWORK_TESTNET: Public test network - FARCASTER_NETWORK_DEVNET: Private test network
            - `frameActionBody` FrameActionBody, required — Contains the data for a user's interaction with a Farcaster Frame. Frames are interactive elements within casts that can have up to 4 clickable buttons, allowing users to engage with content in predefined ways.
              - …
        - `hash` string, required
        - `hashScheme` 'HASH_SCHEME_BLAKE3', required — Type of hashing scheme used to produce a digest of MessageData. - HASH_SCHEME_BLAKE3: Default scheme for hashing MessageData
        - `signature` string, byte, required
        - `signatureScheme` 'SIGNATURE_SCHEME_ED25519' | 'SIGNATURE_SCHEME_EIP712', required — Type of signature scheme used to sign the Message hash - SIGNATURE_SCHEME_ED25519: Ed25519 signature (default) - SIGNATURE_SCHEME_EIP712: ECDSA signature using EIP-712 scheme
        - `signer` string, required
      - `deletedUsernameProofMessage` Message — A Message is a delta operation on the Farcaster network that represents a state change. Messages are the fundamental unit of data in Farcaster and can represent various actions like: - Creating or removing casts (posts) - Adding or removing reactions - Following or unfollowing users - Updating profile data - Verifying Ethereum addresses Each message contains: - A MessageData object with the actual content - A hash of the content for integrity verification - A cryptographic signature to prove authenticity - The signer's public key for verification Messages are immutable once created and form an append-only log of all user actions on the network.
        - `data` union, required
          - MessageDataCastAdd — Common properties shared by all Farcaster message types. These properties provide essential metadata about the message's origin, timing, and network context.
            - `type` 'MESSAGE_TYPE_CAST_ADD' | 'MESSAGE_TYPE_CAST_REMOVE' | 'MESSAGE_TYPE_REACTION_ADD' | 'MESSAGE_TYPE_REACTION_REMOVE' | 'MESSAGE_TYPE_LINK_ADD' | 'MESSAGE_TYPE_LINK_REMOVE' | 'MESSAGE_TYPE_VERIFICATION_ADD_ETH_ADDRESS' | 'MESSAGE_TYPE_VERIFICATION_REMOVE' | 'MESSAGE_TYPE_USER_DATA_ADD' | 'MESSAGE_TYPE_USERNAME_PROOF' | 'MESSAGE_TYPE_FRAME_ACTION' — Type of the MessageBody. - MESSAGE_TYPE_CAST_ADD: Add a new Cast - MESSAGE_TYPE_CAST_REMOVE: Remove an existing Cast - MESSAGE_TYPE_REACTION_ADD: Add a Reaction to a Cast - MESSAGE_TYPE_REACTION_REMOVE: Remove a Reaction from a Cast - MESSAGE_TYPE_LINK_ADD: Add a new Link - MESSAGE_TYPE_LINK_REMOVE: Remove an existing Link - MESSAGE_TYPE_VERIFICATION_ADD_ETH_ADDRESS: Add a Verification of an Ethereum Address - MESSAGE_TYPE_VERIFICATION_REMOVE: Remove a Verification - MESSAGE_TYPE_USER_DATA_ADD: Add metadata about a user - MESSAGE_TYPE_USERNAME_PROOF: Add or replace a username proof - MESSAGE_TYPE_FRAME_ACTION: A Farcaster Frame action
            - `fid` integer, required — The unique identifier (FID) of the user who created this message. FIDs are assigned sequentially when users register on the network and cannot be changed.
            - `timestamp` integer, required — Seconds since Farcaster Epoch (2021-01-01T00:00:00Z). Used to order messages chronologically and determine the most recent state. Must be within 10 minutes of the current time when the message is created.
            - `network` 'FARCASTER_NETWORK_MAINNET' | 'FARCASTER_NETWORK_TESTNET' | 'FARCASTER_NETWORK_DEVNET', required — Farcaster network the message is intended for. - FARCASTER_NETWORK_MAINNET: Public primary network - FARCASTER_NETWORK_TESTNET: Public test network - FARCASTER_NETWORK_DEVNET: Private test network
            - `castAddBody` CastAddBody, required — Adds a new Cast
              - …
          - MessageDataCastRemove — Common properties shared by all Farcaster message types. These properties provide essential metadata about the message's origin, timing, and network context.
            - `type` 'MESSAGE_TYPE_CAST_ADD' | 'MESSAGE_TYPE_CAST_REMOVE' | 'MESSAGE_TYPE_REACTION_ADD' | 'MESSAGE_TYPE_REACTION_REMOVE' | 'MESSAGE_TYPE_LINK_ADD' | 'MESSAGE_TYPE_LINK_REMOVE' | 'MESSAGE_TYPE_VERIFICATION_ADD_ETH_ADDRESS' | 'MESSAGE_TYPE_VERIFICATION_REMOVE' | 'MESSAGE_TYPE_USER_DATA_ADD' | 'MESSAGE_TYPE_USERNAME_PROOF' | 'MESSAGE_TYPE_FRAME_ACTION' — Type of the MessageBody. - MESSAGE_TYPE_CAST_ADD: Add a new Cast - MESSAGE_TYPE_CAST_REMOVE: Remove an existing Cast - MESSAGE_TYPE_REACTION_ADD: Add a Reaction to a Cast - MESSAGE_TYPE_REACTION_REMOVE: Remove a Reaction from a Cast - MESSAGE_TYPE_LINK_ADD: Add a new Link - MESSAGE_TYPE_LINK_REMOVE: Remove an existing Link - MESSAGE_TYPE_VERIFICATION_ADD_ETH_ADDRESS: Add a Verification of an Ethereum Address - MESSAGE_TYPE_VERIFICATION_REMOVE: Remove a Verification - MESSAGE_TYPE_USER_DATA_ADD: Add metadata about a user - MESSAGE_TYPE_USERNAME_PROOF: Add or replace a username proof - MESSAGE_TYPE_FRAME_ACTION: A Farcaster Frame action
            - `fid` integer, required — The unique identifier (FID) of the user who created this message. FIDs are assigned sequentially when users register on the network and cannot be changed.
            - `timestamp` integer, required — Seconds since Farcaster Epoch (2021-01-01T00:00:00Z). Used to order messages chronologically and determine the most recent state. Must be within 10 minutes of the current time when the message is created.
            - `network` 'FARCASTER_NETWORK_MAINNET' | 'FARCASTER_NETWORK_TESTNET' | 'FARCASTER_NETWORK_DEVNET', required — Farcaster network the message is intended for. - FARCASTER_NETWORK_MAINNET: Public primary network - FARCASTER_NETWORK_TESTNET: Public test network - FARCASTER_NETWORK_DEVNET: Private test network
            - `targetHash` string, required — The unique hash identifier of the cast to be removed. Must be a cast that was previously created by the same FID specified in the message.
          - MessageDataReaction — Common properties shared by all Farcaster message types. These properties provide essential metadata about the message's origin, timing, and network context.
            - `type` 'MESSAGE_TYPE_CAST_ADD' | 'MESSAGE_TYPE_CAST_REMOVE' | 'MESSAGE_TYPE_REACTION_ADD' | 'MESSAGE_TYPE_REACTION_REMOVE' | 'MESSAGE_TYPE_LINK_ADD' | 'MESSAGE_TYPE_LINK_REMOVE' | 'MESSAGE_TYPE_VERIFICATION_ADD_ETH_ADDRESS' | 'MESSAGE_TYPE_VERIFICATION_REMOVE' | 'MESSAGE_TYPE_USER_DATA_ADD' | 'MESSAGE_TYPE_USERNAME_PROOF' | 'MESSAGE_TYPE_FRAME_ACTION' — Type of the MessageBody. - MESSAGE_TYPE_CAST_ADD: Add a new Cast - MESSAGE_TYPE_CAST_REMOVE: Remove an existing Cast - MESSAGE_TYPE_REACTION_ADD: Add a Reaction to a Cast - MESSAGE_TYPE_REACTION_REMOVE: Remove a Reaction from a Cast - MESSAGE_TYPE_LINK_ADD: Add a new Link - MESSAGE_TYPE_LINK_REMOVE: Remove an existing Link - MESSAGE_TYPE_VERIFICATION_ADD_ETH_ADDRESS: Add a Verification of an Ethereum Address - MESSAGE_TYPE_VERIFICATION_REMOVE: Remove a Verification - MESSAGE_TYPE_USER_DATA_ADD: Add metadata about a user - MESSAGE_TYPE_USERNAME_PROOF: Add or replace a username proof - MESSAGE_TYPE_FRAME_ACTION: A Farcaster Frame action
            - `fid` integer, required — The unique identifier (FID) of the user who created this message. FIDs are assigned sequentially when users register on the network and cannot be changed.
            - `timestamp` integer, required — Seconds since Farcaster Epoch (2021-01-01T00:00:00Z). Used to order messages chronologically and determine the most recent state. Must be within 10 minutes of the current time when the message is created.
            - `network` 'FARCASTER_NETWORK_MAINNET' | 'FARCASTER_NETWORK_TESTNET' | 'FARCASTER_NETWORK_DEVNET', required — Farcaster network the message is intended for. - FARCASTER_NETWORK_MAINNET: Public primary network - FARCASTER_NETWORK_TESTNET: Public test network - FARCASTER_NETWORK_DEVNET: Private test network
            - `reactionBody` ReactionBody, required — Specifies the details of a reaction to content on Farcaster. A reaction must specify its type (like/recast) and either a target cast ID or URL to react to. Only one target (either castId or URL) should be specified per reaction.
              - …
          - MessageDataLink — Common properties shared by all Farcaster message types. These properties provide essential metadata about the message's origin, timing, and network context.
            - `type` 'MESSAGE_TYPE_CAST_ADD' | 'MESSAGE_TYPE_CAST_REMOVE' | 'MESSAGE_TYPE_REACTION_ADD' | 'MESSAGE_TYPE_REACTION_REMOVE' | 'MESSAGE_TYPE_LINK_ADD' | 'MESSAGE_TYPE_LINK_REMOVE' | 'MESSAGE_TYPE_VERIFICATION_ADD_ETH_ADDRESS' | 'MESSAGE_TYPE_VERIFICATION_REMOVE' | 'MESSAGE_TYPE_USER_DATA_ADD' | 'MESSAGE_TYPE_USERNAME_PROOF' | 'MESSAGE_TYPE_FRAME_ACTION' — Type of the MessageBody. - MESSAGE_TYPE_CAST_ADD: Add a new Cast - MESSAGE_TYPE_CAST_REMOVE: Remove an existing Cast - MESSAGE_TYPE_REACTION_ADD: Add a Reaction to a Cast - MESSAGE_TYPE_REACTION_REMOVE: Remove a Reaction from a Cast - MESSAGE_TYPE_LINK_ADD: Add a new Link - MESSAGE_TYPE_LINK_REMOVE: Remove an existing Link - MESSAGE_TYPE_VERIFICATION_ADD_ETH_ADDRESS: Add a Verification of an Ethereum Address - MESSAGE_TYPE_VERIFICATION_REMOVE: Remove a Verification - MESSAGE_TYPE_USER_DATA_ADD: Add metadata about a user - MESSAGE_TYPE_USERNAME_PROOF: Add or replace a username proof - MESSAGE_TYPE_FRAME_ACTION: A Farcaster Frame action
            - `fid` integer, required — The unique identifier (FID) of the user who created this message. FIDs are assigned sequentially when users register on the network and cannot be changed.
            - `timestamp` integer, required — Seconds since Farcaster Epoch (2021-01-01T00:00:00Z). Used to order messages chronologically and determine the most recent state. Must be within 10 minutes of the current time when the message is created.
            - `network` 'FARCASTER_NETWORK_MAINNET' | 'FARCASTER_NETWORK_TESTNET' | 'FARCASTER_NETWORK_DEVNET', required — Farcaster network the message is intended for. - FARCASTER_NETWORK_MAINNET: Public primary network - FARCASTER_NETWORK_TESTNET: Public test network - FARCASTER_NETWORK_DEVNET: Private test network
            - `linkBody` LinkBody, required — Defines a social connection between users in the Farcaster network. Currently used to establish following relationships, allowing users to curate their content feed.
              - …
          - MessageDataVerificationAdd — Common properties shared by all Farcaster message types. These properties provide essential metadata about the message's origin, timing, and network context.
            - `type` 'MESSAGE_TYPE_CAST_ADD' | 'MESSAGE_TYPE_CAST_REMOVE' | 'MESSAGE_TYPE_REACTION_ADD' | 'MESSAGE_TYPE_REACTION_REMOVE' | 'MESSAGE_TYPE_LINK_ADD' | 'MESSAGE_TYPE_LINK_REMOVE' | 'MESSAGE_TYPE_VERIFICATION_ADD_ETH_ADDRESS' | 'MESSAGE_TYPE_VERIFICATION_REMOVE' | 'MESSAGE_TYPE_USER_DATA_ADD' | 'MESSAGE_TYPE_USERNAME_PROOF' | 'MESSAGE_TYPE_FRAME_ACTION' — Type of the MessageBody. - MESSAGE_TYPE_CAST_ADD: Add a new Cast - MESSAGE_TYPE_CAST_REMOVE: Remove an existing Cast - MESSAGE_TYPE_REACTION_ADD: Add a Reaction to a Cast - MESSAGE_TYPE_REACTION_REMOVE: Remove a Reaction from a Cast - MESSAGE_TYPE_LINK_ADD: Add a new Link - MESSAGE_TYPE_LINK_REMOVE: Remove an existing Link - MESSAGE_TYPE_VERIFICATION_ADD_ETH_ADDRESS: Add a Verification of an Ethereum Address - MESSAGE_TYPE_VERIFICATION_REMOVE: Remove a Verification - MESSAGE_TYPE_USER_DATA_ADD: Add metadata about a user - MESSAGE_TYPE_USERNAME_PROOF: Add or replace a username proof - MESSAGE_TYPE_FRAME_ACTION: A Farcaster Frame action
            - `fid` integer, required — The unique identifier (FID) of the user who created this message. FIDs are assigned sequentially when users register on the network and cannot be changed.
            - `timestamp` integer, required — Seconds since Farcaster Epoch (2021-01-01T00:00:00Z). Used to order messages chronologically and determine the most recent state. Must be within 10 minutes of the current time when the message is created.
            - `network` 'FARCASTER_NETWORK_MAINNET' | 'FARCASTER_NETWORK_TESTNET' | 'FARCASTER_NETWORK_DEVNET', required — Farcaster network the message is intended for. - FARCASTER_NETWORK_MAINNET: Public primary network - FARCASTER_NETWORK_TESTNET: Public test network - FARCASTER_NETWORK_DEVNET: Private test network
            - `verificationAddEthAddressBody` VerificationAddEthAddressBody, required — Contains the data required to verify ownership of an Ethereum or Solana address. The verification process requires a cryptographic signature from the blockchain address and includes the block hash at the time of signing for timestamp verification.
              - …
          - MessageDataVerificationRemove — Common properties shared by all Farcaster message types. These properties provide essential metadata about the message's origin, timing, and network context.
            - `type` 'MESSAGE_TYPE_CAST_ADD' | 'MESSAGE_TYPE_CAST_REMOVE' | 'MESSAGE_TYPE_REACTION_ADD' | 'MESSAGE_TYPE_REACTION_REMOVE' | 'MESSAGE_TYPE_LINK_ADD' | 'MESSAGE_TYPE_LINK_REMOVE' | 'MESSAGE_TYPE_VERIFICATION_ADD_ETH_ADDRESS' | 'MESSAGE_TYPE_VERIFICATION_REMOVE' | 'MESSAGE_TYPE_USER_DATA_ADD' | 'MESSAGE_TYPE_USERNAME_PROOF' | 'MESSAGE_TYPE_FRAME_ACTION' — Type of the MessageBody. - MESSAGE_TYPE_CAST_ADD: Add a new Cast - MESSAGE_TYPE_CAST_REMOVE: Remove an existing Cast - MESSAGE_TYPE_REACTION_ADD: Add a Reaction to a Cast - MESSAGE_TYPE_REACTION_REMOVE: Remove a Reaction from a Cast - MESSAGE_TYPE_LINK_ADD: Add a new Link - MESSAGE_TYPE_LINK_REMOVE: Remove an existing Link - MESSAGE_TYPE_VERIFICATION_ADD_ETH_ADDRESS: Add a Verification of an Ethereum Address - MESSAGE_TYPE_VERIFICATION_REMOVE: Remove a Verification - MESSAGE_TYPE_USER_DATA_ADD: Add metadata about a user - MESSAGE_TYPE_USERNAME_PROOF: Add or replace a username proof - MESSAGE_TYPE_FRAME_ACTION: A Farcaster Frame action
            - `fid` integer, required — The unique identifier (FID) of the user who created this message. FIDs are assigned sequentially when users register on the network and cannot be changed.
            - `timestamp` integer, required — Seconds since Farcaster Epoch (2021-01-01T00:00:00Z). Used to order messages chronologically and determine the most recent state. Must be within 10 minutes of the current time when the message is created.
            - `network` 'FARCASTER_NETWORK_MAINNET' | 'FARCASTER_NETWORK_TESTNET' | 'FARCASTER_NETWORK_DEVNET', required — Farcaster network the message is intended for. - FARCASTER_NETWORK_MAINNET: Public primary network - FARCASTER_NETWORK_TESTNET: Public test network - FARCASTER_NETWORK_DEVNET: Private test network
            - `verificationRemoveBody` VerificationRemoveBody, required — Contains the data required to remove a previously added blockchain address verification from a user's profile. This operation permanently removes the verification until explicitly re-added.
              - …
          - MessageDataUserDataAdd — Common properties shared by all Farcaster message types. These properties provide essential metadata about the message's origin, timing, and network context.
            - `type` 'MESSAGE_TYPE_CAST_ADD' | 'MESSAGE_TYPE_CAST_REMOVE' | 'MESSAGE_TYPE_REACTION_ADD' | 'MESSAGE_TYPE_REACTION_REMOVE' | 'MESSAGE_TYPE_LINK_ADD' | 'MESSAGE_TYPE_LINK_REMOVE' | 'MESSAGE_TYPE_VERIFICATION_ADD_ETH_ADDRESS' | 'MESSAGE_TYPE_VERIFICATION_REMOVE' | 'MESSAGE_TYPE_USER_DATA_ADD' | 'MESSAGE_TYPE_USERNAME_PROOF' | 'MESSAGE_TYPE_FRAME_ACTION' — Type of the MessageBody. - MESSAGE_TYPE_CAST_ADD: Add a new Cast - MESSAGE_TYPE_CAST_REMOVE: Remove an existing Cast - MESSAGE_TYPE_REACTION_ADD: Add a Reaction to a Cast - MESSAGE_TYPE_REACTION_REMOVE: Remove a Reaction from a Cast - MESSAGE_TYPE_LINK_ADD: Add a new Link - MESSAGE_TYPE_LINK_REMOVE: Remove an existing Link - MESSAGE_TYPE_VERIFICATION_ADD_ETH_ADDRESS: Add a Verification of an Ethereum Address - MESSAGE_TYPE_VERIFICATION_REMOVE: Remove a Verification - MESSAGE_TYPE_USER_DATA_ADD: Add metadata about a user - MESSAGE_TYPE_USERNAME_PROOF: Add or replace a username proof - MESSAGE_TYPE_FRAME_ACTION: A Farcaster Frame action
            - `fid` integer, required — The unique identifier (FID) of the user who created this message. FIDs are assigned sequentially when users register on the network and cannot be changed.
            - `timestamp` integer, required — Seconds since Farcaster Epoch (2021-01-01T00:00:00Z). Used to order messages chronologically and determine the most recent state. Must be within 10 minutes of the current time when the message is created.
            - `network` 'FARCASTER_NETWORK_MAINNET' | 'FARCASTER_NETWORK_TESTNET' | 'FARCASTER_NETWORK_DEVNET', required — Farcaster network the message is intended for. - FARCASTER_NETWORK_MAINNET: Public primary network - FARCASTER_NETWORK_TESTNET: Public test network - FARCASTER_NETWORK_DEVNET: Private test network
            - `userDataBody` UserDataBody, required — Contains the data for updating a specific field of a user's profile metadata. Each update operation modifies one profile field at a time, allowing granular control over profile information.
              - …
          - MessageDataUsernameProof — Common properties shared by all Farcaster message types. These properties provide essential metadata about the message's origin, timing, and network context.
            - `type` 'MESSAGE_TYPE_CAST_ADD' | 'MESSAGE_TYPE_CAST_REMOVE' | 'MESSAGE_TYPE_REACTION_ADD' | 'MESSAGE_TYPE_REACTION_REMOVE' | 'MESSAGE_TYPE_LINK_ADD' | 'MESSAGE_TYPE_LINK_REMOVE' | 'MESSAGE_TYPE_VERIFICATION_ADD_ETH_ADDRESS' | 'MESSAGE_TYPE_VERIFICATION_REMOVE' | 'MESSAGE_TYPE_USER_DATA_ADD' | 'MESSAGE_TYPE_USERNAME_PROOF' | 'MESSAGE_TYPE_FRAME_ACTION' — Type of the MessageBody. - MESSAGE_TYPE_CAST_ADD: Add a new Cast - MESSAGE_TYPE_CAST_REMOVE: Remove an existing Cast - MESSAGE_TYPE_REACTION_ADD: Add a Reaction to a Cast - MESSAGE_TYPE_REACTION_REMOVE: Remove a Reaction from a Cast - MESSAGE_TYPE_LINK_ADD: Add a new Link - MESSAGE_TYPE_LINK_REMOVE: Remove an existing Link - MESSAGE_TYPE_VERIFICATION_ADD_ETH_ADDRESS: Add a Verification of an Ethereum Address - MESSAGE_TYPE_VERIFICATION_REMOVE: Remove a Verification - MESSAGE_TYPE_USER_DATA_ADD: Add metadata about a user - MESSAGE_TYPE_USERNAME_PROOF: Add or replace a username proof - MESSAGE_TYPE_FRAME_ACTION: A Farcaster Frame action
            - `fid` integer, required — The unique identifier (FID) of the user who created this message. FIDs are assigned sequentially when users register on the network and cannot be changed.
            - `timestamp` integer, required — Seconds since Farcaster Epoch (2021-01-01T00:00:00Z). Used to order messages chronologically and determine the most recent state. Must be within 10 minutes of the current time when the message is created.
            - `network` 'FARCASTER_NETWORK_MAINNET' | 'FARCASTER_NETWORK_TESTNET' | 'FARCASTER_NETWORK_DEVNET', required — Farcaster network the message is intended for. - FARCASTER_NETWORK_MAINNET: Public primary network - FARCASTER_NETWORK_TESTNET: Public test network - FARCASTER_NETWORK_DEVNET: Private test network
            - `usernameProofBody` UserNameProof, required
              - …
          - MessageDataFrameAction — Common properties shared by all Farcaster message types. These properties provide essential metadata about the message's origin, timing, and network context.
            - `type` 'MESSAGE_TYPE_CAST_ADD' | 'MESSAGE_TYPE_CAST_REMOVE' | 'MESSAGE_TYPE_REACTION_ADD' | 'MESSAGE_TYPE_REACTION_REMOVE' | 'MESSAGE_TYPE_LINK_ADD' | 'MESSAGE_TYPE_LINK_REMOVE' | 'MESSAGE_TYPE_VERIFICATION_ADD_ETH_ADDRESS' | 'MESSAGE_TYPE_VERIFICATION_REMOVE' | 'MESSAGE_TYPE_USER_DATA_ADD' | 'MESSAGE_TYPE_USERNAME_PROOF' | 'MESSAGE_TYPE_FRAME_ACTION' — Type of the MessageBody. - MESSAGE_TYPE_CAST_ADD: Add a new Cast - MESSAGE_TYPE_CAST_REMOVE: Remove an existing Cast - MESSAGE_TYPE_REACTION_ADD: Add a Reaction to a Cast - MESSAGE_TYPE_REACTION_REMOVE: Remove a Reaction from a Cast - MESSAGE_TYPE_LINK_ADD: Add a new Link - MESSAGE_TYPE_LINK_REMOVE: Remove an existing Link - MESSAGE_TYPE_VERIFICATION_ADD_ETH_ADDRESS: Add a Verification of an Ethereum Address - MESSAGE_TYPE_VERIFICATION_REMOVE: Remove a Verification - MESSAGE_TYPE_USER_DATA_ADD: Add metadata about a user - MESSAGE_TYPE_USERNAME_PROOF: Add or replace a username proof - MESSAGE_TYPE_FRAME_ACTION: A Farcaster Frame action
            - `fid` integer, required — The unique identifier (FID) of the user who created this message. FIDs are assigned sequentially when users register on the network and cannot be changed.
            - `timestamp` integer, required — Seconds since Farcaster Epoch (2021-01-01T00:00:00Z). Used to order messages chronologically and determine the most recent state. Must be within 10 minutes of the current time when the message is created.
            - `network` 'FARCASTER_NETWORK_MAINNET' | 'FARCASTER_NETWORK_TESTNET' | 'FARCASTER_NETWORK_DEVNET', required — Farcaster network the message is intended for. - FARCASTER_NETWORK_MAINNET: Public primary network - FARCASTER_NETWORK_TESTNET: Public test network - FARCASTER_NETWORK_DEVNET: Private test network
            - `frameActionBody` FrameActionBody, required — Contains the data for a user's interaction with a Farcaster Frame. Frames are interactive elements within casts that can have up to 4 clickable buttons, allowing users to engage with content in predefined ways.
              - …
        - `hash` string, required
        - `hashScheme` 'HASH_SCHEME_BLAKE3', required — Type of hashing scheme used to produce a digest of MessageData. - HASH_SCHEME_BLAKE3: Default scheme for hashing MessageData
        - `signature` string, byte, required
        - `signatureScheme` 'SIGNATURE_SCHEME_ED25519' | 'SIGNATURE_SCHEME_EIP712', required — Type of signature scheme used to sign the Message hash - SIGNATURE_SCHEME_ED25519: Ed25519 signature (default) - SIGNATURE_SCHEME_EIP712: ECDSA signature using EIP-712 scheme
        - `signer` string, required
  - HubEventMergeOnChainEvent
    - `type` string, required
    - `id` integer, required
    - `mergeOnChainEventBody` MergeOnChainEventBody, required
      - `onChainEvent` union, required
        - OnChainEventSigner
          - `type` string, required
          - `chainId` integer, required
          - `blockNumber` integer, required
          - `blockHash` string, required
          - `blockTimestamp` integer, required
          - `transactionHash` string, required
          - `logIndex` integer, required
          - `txIndex` integer, required
          - `fid` integer, required
          - `signerEventBody` SignerEventBody, required
            - `key` string, required
            - `keyType` integer, required
            - `eventType` 'SIGNER_EVENT_TYPE_ADD' | 'SIGNER_EVENT_TYPE_REMOVE' | 'SIGNER_EVENT_TYPE_ADMIN_RESET', required
            - `metadata` string, byte, required
            - `metadataType` integer, required
        - OnChainEventSignerMigrated
          - `type` string, required
          - `chainId` integer, required
          - `blockNumber` integer, required
          - `blockHash` string, required
          - `blockTimestamp` integer, required
          - `transactionHash` string, required
          - `logIndex` integer, required
          - `txIndex` integer, required
          - `fid` integer, required
          - `signerMigratedEventBody` SignerMigratedEventBody, required
            - `migratedAt` integer, required
        - OnChainEventIdRegister
          - `type` string, required
          - `chainId` integer, required
          - `blockNumber` integer, required
          - `blockHash` string, required
          - `blockTimestamp` integer, required
          - `transactionHash` string, required
          - `logIndex` integer, required
          - `txIndex` integer, required
          - `fid` integer, required
          - `idRegisterEventBody` IdRegisterEventBody, required
            - `to` string, required
            - `eventType` 'ID_REGISTER_EVENT_TYPE_REGISTER' | 'ID_REGISTER_EVENT_TYPE_TRANSFER' | 'ID_REGISTER_EVENT_TYPE_CHANGE_RECOVERY', required
            - `from` string, required
            - `recoveryAddress` string, required
        - OnChainEventStorageRent
          - `type` string, required
          - `chainId` integer, required
          - `blockNumber` integer, required
          - `blockHash` string, required
          - `blockTimestamp` integer, required
          - `transactionHash` string, required
          - `logIndex` integer, required
          - `txIndex` integer, required
          - `fid` integer, required
          - `storageRentEventBody` StorageRentEventBody, required
            - `payer` string, byte, required
            - `units` integer, required
            - `expiry` integer, required

## Other responses

- `default` — An unexpected error response.

---

[API](https://skmtc.dev/neynar/apis/neynar-api.md) · [All operations](https://skmtc.dev/neynar/apis/neynar-api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/neynar/neynar-api/revisions/dbb91bfb0d1a/schema)
