Skip to main content
GET
/
v1
/
account
/
{accountSlug}
/
project
/
{projectSlug}
/
actions
/
action
/
{actionId}
Get Web3 Action details
curl --request GET \
  --url https://api.tenderly.co/api/v1/account/{accountSlug}/project/{projectSlug}/actions/action/{actionId} \
  --header 'X-Access-Key: <api-key>'
{
  "id": "be048c73-41c3-4fcd-b0c6-d286af7155fe",
  "projectId": "cbb49e29-24ad-4cf9-8b2d-1f34a3019582",
  "name": "instadapp-implementation",
  "description": "Track these 3 proposal events: add, remove & setDefault.",
  "status": "DEPLOYED",
  "stopped": false,
  "version": {
    "id": "34655755-771f-4da7-989e-ec2b27e8f13b",
    "index": 3,
    "actionId": "be048c73-41c3-4fcd-b0c6-d286af7155fe",
    "parentActionId": "",
    "runtime": "V1",
    "function": "instadappImplementation:implementationFn",
    "triggerType": "TRANSACTION",
    "trigger": {
      "type": "transaction",
      "transaction": {
        "status": [
          "MINED"
        ],
        "filter": {
          "any": [
            {
              "network": [
                "1"
              ],
              "status": [],
              "value": [],
              "gasLimit": [],
              "gasUsed": [],
              "fee": [],
              "from": [],
              "to": [],
              "function": [],
              "eventEmitted": [
                {
                  "contract": {
                    "address": "0xcba828153d3a85b30b5b912e1f2dacac5816ae9d",
                    "invocationType": "ANY"
                  },
                  "id": null,
                  "name": "LogSetDefaultImplementation"
                },
                {
                  "contract": {
                    "address": "0xcba828153d3a85b30b5b912e1f2dacac5816ae9d",
                    "invocationType": "ANY"
                  },
                  "id": null,
                  "name": "LogAddImplementation"
                },
                {
                  "contract": {
                    "address": "0xcba828153d3a85b30b5b912e1f2dacac5816ae9d",
                    "invocationType": "ANY"
                  },
                  "id": null,
                  "name": "LogRemoveImplementation"
                }
              ],
              "logEmmitted": []
            }
          ],
          "and": null
        }
      }
    },
    "commitish": null,
    "source": "import {\n  ActionFn,\n  Context,\n  Event,\n  TransactionEvent,\n} from '@tenderly/actions';\n\n// TEST: Try manual trigger with this tx hash on Mainnet: 0x3bdf5a48174f7f8f7bfb2f43dbe399c47405bba1cea3480aa0c199270f262f7e\nexport const implementationFn: ActionFn = async (context: Context, event: Event) => {\n  let txEvent = event as TransactionEvent;\n  console.log('InstaDapp Implementation Event is detected');\n  // Shorten logs because it's too large to print\n  console.log({ ...txEvent, logs: txEvent.logs.splice(0, 5) });\n};\n",
    "createdAt": "2022-10-18T12:37:10.392964Z",
    "deployRequested": false,
    "deployError": null,
    "invocationType": "SYNC"
  },
  "editable": false,
  "createdAt": "2022-10-18T12:24:51.187849Z",
  "deliveryChannels": null
}

Authorizations

X-Access-Key
string
header
required

An API key is a token that a client provides when making API calls. The key can be sent as a request header:

curl 'https://api.tenderly.co/api/v1/account/${TENDERLY_ACCOUNT_SLUG}/project/${TENDERLY_PROJECT_SLUG}/simulate' \
-H 'X-Access-Key: ${TENDERLY_ACCESS_KEY}' \
...

Learn how to generate API access tokens at Tenderly Docs.

Path Parameters

accountSlug
string
required

Account slug of the user

projectSlug
string
required

Project slug of the account

actionId
string
required

Web3 Action Id to get info for

Response

A successful response.

id
string
required

ID of the Web3 Action.

Example:

"4cc3ee95-6bc5-4c85-83d0-26d4b89d5c25"

projectId
string
required

ID of the project where Web3 Action is created.

Example:

"dfdc391a-a15d-4590-9aef-8691259c7df4"

name
string
required

Web3 Action name.

Example:

"periodic-cron"

description
string
required

Web3 Action description.

Example:

"Triggers every 1 hour"

status
enum<string>
required

Status of the Web3 Action.

Available options:
DEPLOYED,
PUBLISHED
Example:

"DEPLOYED"

stopped
boolean
required

Flag showing if Web3 Action is stopped or not.

Example:

false

editable
boolean
required

Flag showing if Web3 Action is editable or not.

Example:

true

createdAt
string
required

When Web3 Action is created.

Example:

"2023-12-14T16:20:36.078679Z"

version
object
required
Example:
{
"id": "65f4e0e8-4b67-4f0c-815f-1a08cd418f1a",
"index": 1,
"actionId": "4cc3ee95-6bc5-4c85-83d0-26d4b89d5c25",
"parentActionId": "",
"runtime": "V2",
"function": "implementation:actionFn",
"triggerType": "PERIODIC",
"trigger": {
"type": "periodic",
"periodic": { "cron": "0 * * * *", "interval": "1h" }
},
"commitish": null,
"source": "// Do not change function name.\nconst actionFn = async (context, periodicEvent) => {\n console.log(periodicEvent)\n\n // To access project's secret\n // let secret = await context.secrets.get('MY-SECRET')\n\n // To access project's storage\n // let value = await context.storage.getStr('MY-KEY')\n // await context.storage.putStr('MY-KEY', 'MY-VALUE')\n\n // Your logic goes here :)\n}\n// Do not change this.\nmodule.exports = { actionFn }",
"createdAt": "2023-12-14T16:20:36.078679Z",
"deployRequested": false,
"deployError": null,
"invocationType": "SYNC"
}
deliveryChannels
any[]

Shows delivery channels for given Web3 Action.

Example:
[]