---
title: "Deploy Contract"
method: POST
path: "/v1/contracts"
tags: ["Wallets"]
---

# Deploy Contract

`POST /v1/contracts`

Deploy a new smart contract to a blockchain network using raw bytecode. This endpoint allows you to deploy contracts by providing the contract bytecode, ABI, constructor parameters, and optional salt for deterministic deployment.

**Authentication**: This endpoint requires backend authentication using the `x-secret-key` header. The secret key should never be exposed publicly.

## Request body

- object — Contract deployment specification for raw bytecode deployment.
  - `chainId` integer, required — The blockchain network identifier. Common values include: 1 (Ethereum), 8453 (Base), 137 (Polygon), 56 (BSC), 43114 (Avalanche), 42161 (Arbitrum), 10 (Optimism).
  - `from` string — The wallet address or ENS name that will deploy the contract. If omitted, the project wallet will be used if available.
  - `bytecode` string, required — The contract bytecode as a hex string.
  - `abi` unknown[], required — The contract ABI array.
    - unknown
  - `constructorParams` object — Object containing constructor parameters for the contract deployment (e.g., { param1: 'value1', param2: 123 }).
  - `salt` string — Optional salt value for deterministic contract deployment.

## Response `200`

Contract deployed successfully

- object
  - `result` object, required
    - `address` string, required — The deployed contract address.
    - `chainId` number, required — The chain ID where the contract was deployed.
    - `transactionId` string — The unique identifier for the transaction that deployed the contract. Will not be returned if the contract was already deployed at the predicted address.

## Other responses

- `400` — Invalid request parameters
- `401` — Authentication required. The request must include a valid `x-secret-key` header for backend authentication.
- `429` — Rate limit exceeded
- `500` — Internal server error

---

[API](https://skmtc.net/thirdweb/apis/thirdweb-api.md) · [All operations](https://skmtc.net/thirdweb/apis/thirdweb-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/thirdweb/thirdweb-api/revisions/fb4cb67da1c7/schema)
