---
updatedAt: 2026-05-27T08:52:35.000Z
agentTools:
  projectIndex: https://docs.tatum.io/llms.txt
---

# Broadcast signed Avalanche transaction

<p style="display: none">/v3/avalanche/broadcast</p>
<p><b>2 credits per API call</b></p>
<p>Broadcast signed transaction to Avalanche blockchain. This method is used internally from Tatum KMS or Tatum client libraries.
It is possible to create custom signing mechanism and use this method only for broadcasting data to the blockchain.</p>


# OpenAPI definition

```json
{
  "openapi": "3.1.0",
  "servers": [
    {
      "url": "https://api.tatum.io"
    }
  ],
  "info": {
    "version": "3.18.3",
    "title": "Blockchain"
  },
  "tags": [
    {
      "description": "<p>Avalanche is an EVM-based blockchain which gives developers secure decentralized access to high-integrity data from other chains and the internet.\n    <br/>\n    Tatum supports 4 chains:\n    <ul>\n      <li>Avalanche Mainnet is a regular live chain. The explorer can be found at <a target=\"_blank\" href=\"https://avalanche-explorer.avalanche.network/\">https://avalanche-explorer.avalanche.network/</a>.</li>\n    </ul>\n</p>\n",
      "name": "Avalanche - Tatum API"
    }
  ],
  "paths": {
    "/v3/avalanche/broadcast": {
      "post": {
        "description": "<p style=\"display: none\">/v3/avalanche/broadcast</p>\n<p><b>2 credits per API call</b></p>\n<p>Broadcast signed transaction to Avalanche blockchain. This method is used internally from Tatum KMS or Tatum client libraries.\nIt is possible to create custom signing mechanism and use this method only for broadcasting data to the blockchain.</p>\n",
        "operationId": "AvalancheBroadcast",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/BroadcastKMS"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/TransactionHash"
                }
              }
            },
            "description": "OK"
          },
          "400": {
            "$ref": "#/components/responses/Error400"
          },
          "401": {
            "$ref": "#/components/responses/Error401"
          },
          "403": {
            "description": "Forbidden. The request is authenticated, but it is not possible to required perform operation due to logical error or invalid permissions.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error403AvalancheBroadcast"
                }
              }
            }
          },
          "500": {
            "$ref": "#/components/responses/Error500"
          }
        },
        "security": [
          {
            "X-API-Key": []
          }
        ],
        "x-codeSamples": [],
        "summary": "Broadcast signed Avalanche transaction",
        "tags": [
          "Avalanche - Tatum API"
        ]
      }
    }
  },
  "components": {
    "schemas": {
      "BroadcastKMS": {
        "properties": {
          "txData": {
            "description": "Raw signed transaction to be published to network.",
            "example": "62BD544D1B9031EFC330A3E855CC3A0D51CA5131455C1AB3BCAC6D243F65460D",
            "maxLength": 500000,
            "minLength": 1,
            "type": "string"
          },
          "signatureId": {
            "description": "ID of prepared payment template to sign. Required only, when broadcasting transaction signed by Tatum KMS.",
            "format": "uuid",
            "example": "1f7f7c0c-3906-4aa1-9dfe-4b67c43918f6",
            "type": "string"
          },
          "index": {
            "description": "(Only if the signature ID is mnemonic-based and you run KMS v6.2 or later) The index of the address to send the assets from that was generated from the mnemonic",
            "type": "number",
            "minimum": 0,
            "maximum": 2147483647
          }
        },
        "required": [
          "txData"
        ],
        "type": "object"
      },
      "Error400": {
        "properties": {
          "errorCode": {
            "example": "validation.failed",
            "description": "validation.failed",
            "type": "string"
          },
          "message": {
            "example": "Request validation failed. Please see data for additional information.",
            "description": "Request validation failed. Please see data for additional information.",
            "type": "string"
          },
          "statusCode": {
            "example": 400,
            "description": "400",
            "type": "number"
          },
          "data": {
            "type": "array",
            "items": {
              "type": "object",
              "required": [
                "target"
              ],
              "properties": {
                "target": {
                  "type": "object",
                  "additionalProperties": true,
                  "description": "Request object present in the body of the HTTP request",
                  "example": {
                    "property": 12345
                  }
                },
                "value": {
                  "type": "number",
                  "description": "Value of the target object which validation is wrong. Can be of any data type, example here is using type number.",
                  "example": 12345
                },
                "property": {
                  "type": "string",
                  "description": "Property name of the target object which validation is wrong",
                  "example": "property1"
                },
                "constraints": {
                  "type": "object",
                  "additionalProperties": true,
                  "description": "Object of failed constraints for the target object. Key is the constraint, value is detailed description of the failed constraint.",
                  "example": {
                    "min": "property1 must not be less than 50000"
                  }
                }
              }
            }
          }
        },
        "required": [
          "errorCode",
          "message",
          "statusCode",
          "data"
        ],
        "type": "object"
      },
      "Error401Invalid": {
        "properties": {
          "errorCode": {
            "example": "subscription.invalid",
            "description": "subscription.invalid",
            "type": "string"
          },
          "message": {
            "example": "Unable to find valid subscription for '${apiKey}'",
            "description": "Unable to find valid subscription for '${apiKey}'",
            "type": "string"
          },
          "statusCode": {
            "example": 401,
            "description": "401",
            "type": "number"
          }
        },
        "required": [
          "errorCode",
          "message",
          "statusCode"
        ],
        "type": "object"
      },
      "Error401NotActive": {
        "properties": {
          "errorCode": {
            "example": "subscription.not.active",
            "description": "subscription.not.active",
            "type": "string"
          },
          "message": {
            "example": "Subscription not active anymore.",
            "description": "Subscription not active anymore.",
            "type": "string"
          },
          "statusCode": {
            "example": 401,
            "description": "401",
            "type": "number"
          }
        },
        "required": [
          "errorCode",
          "message",
          "statusCode"
        ],
        "type": "object"
      },
      "Error500": {
        "properties": {
          "message": {
            "example": "Internal server error",
            "description": "Internal server error",
            "type": "string"
          },
          "statusCode": {
            "example": 500,
            "description": "500",
            "type": "number"
          }
        },
        "required": [
          "statusCode",
          "message"
        ],
        "type": "object"
      },
      "TransactionHash": {
        "type": "object",
        "properties": {
          "txId": {
            "description": "The hash (ID) of the transaction",
            "example": "c83f8818db43d9ba4accfe454aa44fc33123d47a4f89d47b314d6748eb0e9bc9",
            "type": "string"
          }
        },
        "required": [
          "txId"
        ]
      },
      "Error403AvalancheBroadcast": {
        "properties": {
          "errorCode": {
            "description": "avalanche.broadcast.failed",
            "example": "avalanche.broadcast.failed",
            "type": "string"
          },
          "message": {
            "description": "Unable to broadcast transaction due to ${error}.",
            "example": "Unable to broadcast transaction due to ${error}.",
            "type": "string"
          },
          "statusCode": {
            "description": "403",
            "example": 403,
            "type": "number"
          }
        },
        "required": [
          "errorCode",
          "message",
          "statusCode"
        ],
        "type": "object"
      }
    },
    "responses": {
      "Error400": {
        "description": "Bad Request",
        "content": {
          "application/json": {
            "schema": {
              "$ref": "#/components/schemas/Error400"
            }
          }
        }
      },
      "Error401": {
        "description": "Unauthorized. Not valid or inactive subscription key present in the HTTP Header.",
        "content": {
          "application/json": {
            "schema": {
              "oneOf": [
                {
                  "$ref": "#/components/schemas/Error401NotActive"
                },
                {
                  "$ref": "#/components/schemas/Error401Invalid"
                }
              ]
            }
          }
        }
      },
      "Error500": {
        "description": "Internal server error. There was an error on the server during the processing of the request.",
        "content": {
          "application/json": {
            "schema": {
              "$ref": "#/components/schemas/Error500"
            }
          }
        }
      }
    },
    "securitySchemes": {
      "X-API-Key": {
        "type": "apiKey",
        "name": "x-api-key",
        "in": "header",
        "description": "Your **API key** is used to identify your account & your plan, including the number of API calls per second and total monthly calls you have.\n\nEach key is for individual use only.\n\nIf you don't have a key already you can [Sign up for a Free Tatum account](https://co.tatum.io/signup) to get two keys (testnet and mainnet), allowing up to 5 API calls per second and 1,000,000 Credits.\n\nFor testing purposes, you can use the following key which only works inside docs and has limited functionality (e.g. you cannot create virtual accounts or notification subscriptions with it):\n* t-66a730ccccfd17001c479705-2f597d14ad7543f289a03418\n\nFor more details on limits and plans, [click here](https://docs.tatum.io/docs/plans-limits).\n"
      }
    }
  }
}
```