---
title: "Add contract to project"
method: POST
path: "/v1/account/{accountSlug}/project/{projectSlug}/address"
tags: ["Contracts"]
---

# Add contract to project

`POST /v1/account/{accountSlug}/project/{projectSlug}/address`

Add a smart contract to a Tenderly project.

**Note**: If a contract is unverified on both Tenderly and external providers like Etherscan, Blockscout, or Routescan, it will be added to the project as **unverified**. However, if the contract is verified on an external provider, Tenderly will retrieve and apply the verification, subsequently adding the verified contract to the project.

## Path parameters

- `accountSlug` string, required
- `projectSlug` string, required

## Request body

- AddContractPayload
  - `network_id` string, required — ID of the network.
  - `address` string, required — A verified smart contract address.
  - `display_name` string — Optional name of the contract to be displayed.

## Response `200`

A successful response.

- AddContractPostResponse — An object with details about added contract.

## Other responses

- `400` — Bad Request
- `401` — Unauthorized
- `403` — Forbidden
- `404` — The resource was not found.
- `429` — The request was rate limited. See the [rate limits](#section/Introduction/Rate-limits) section for the current limits and how request counts expire.
- `500` — Server error.

---

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