Apify
Apify is the largest ecosystem where developers build, deploy, and publish data extraction and web automation tools.
Categories: Marketing Automation
Type: apify/v1
Connections
Version: 1
Bearer Token
Properties
| Name | Label | Type | Description | Required |
|---|---|---|---|---|
| token | Token | STRING | true |
Connection Setup
Find Token
- Navigate to your dashboard.
- Click on Settings.
- Click on API & Integrations.
- Click Create new token.
- Enter description.
- Click on Create.
- Click here to copy token.
Actions
Get Last Run
Name: getLastRun
Get Apify Actor last run.
Properties
| Name | Label | Type | Description | Required |
|---|---|---|---|---|
| actorId | Actor ID | STRING | ID of the actor that will be fetched. | true |
Example JSON Structure
{
"label" : "Get Last Run",
"name" : "getLastRun",
"parameters" : {
"actorId" : ""
},
"type" : "apify/v1/getLastRun"
}Output
Type: OBJECT
Properties
| Name | Type | Description |
|---|---|---|
| data | OBJECT Properties{STRING(id), STRING(actId), STRING(userId), STRING(actorTaskId), DATE_TIME(startedAt), DATE_TIME(finishedAt), STRING(status), STRING(statusMessage), BOOLEAN(isStatusMessageTerminal), {STRING(origin), STRING(clientIp), STRING(userAgent), STRING(scheduleId), DATE_TIME(scheduledAt)}(meta), {NUMBER(apifyMarginPercentage), DATE_TIME(createdAt), DATE_TIME(startedAt), DATE_TIME(notifiedAboutFutureChangeAt), DATE_TIME(notifiedAboutChangeAt), STRING(reasonForChange), STRING(pricingModel), {{}(actorChargeEvents)}(pricingPerEvent), NUMBER(minimalMaxTotalChargeUsd)}(pricingInfo), {INTEGER(inputBodyLen), INTEGER(migrationCount), INTEGER(rebootCount), INTEGER(restartCount), INTEGER(resurrectCount), NUMBER(memAvgBytes), NUMBER(memMaxBytes), NUMBER(memCurrentBytes), NUMBER(cpuAvgUsage), NUMBER(cpuMaxUsage), NUMBER(cpuCurrentUsage), NUMBER(netRxBytes), NUMBER(netTxBytes), INTEGER(durationMillis), NUMBER(runTimeSecs), INTEGER(metamorph), NUMBER(computeUnits)}(stats), {}(chargedEventCounts), {STRING(build), INTEGER(timeoutSecs), INTEGER(memoryMbytes), INTEGER(diskMbytes), INTEGER(maxItems), NUMBER(maxTotalChargeUsd)}(options), STRING(buildId), INTEGER(exitCode), STRING(generalAccess), STRING(defaultKeyValueStoreId), STRING(defaultDatasetId), STRING(defaultRequestQueueId), {{STRING(default)}(datasets), {STRING(default)}(keyValueStores), {STRING(default)}(requestQueues)}(storageIds), STRING(buildNumber), STRING(containerUrl), BOOLEAN(isContainerServerReady), STRING(gitBranchName), {}(usage), NUMBER(usageTotalUsd), {}(usageUsd), [{DATE_TIME(createdAt), STRING(actorId), STRING(buildId), STRING(inputKey)}](metamorphs)} | Main run object containing execution details |
Output Example
{
"data" : {
"id" : "",
"actId" : "",
"userId" : "",
"actorTaskId" : "",
"startedAt" : "2021-01-01T00:00:00",
"finishedAt" : "2021-01-01T00:00:00",
"status" : "",
"statusMessage" : "",
"isStatusMessageTerminal" : false,
"meta" : {
"origin" : "",
"clientIp" : "",
"userAgent" : "",
"scheduleId" : "",
"scheduledAt" : "2021-01-01T00:00:00"
},
"pricingInfo" : {
"apifyMarginPercentage" : 0.0,
"createdAt" : "2021-01-01T00:00:00",
"startedAt" : "2021-01-01T00:00:00",
"notifiedAboutFutureChangeAt" : "2021-01-01T00:00:00",
"notifiedAboutChangeAt" : "2021-01-01T00:00:00",
"reasonForChange" : "",
"pricingModel" : "",
"pricingPerEvent" : {
"actorChargeEvents" : { }
},
"minimalMaxTotalChargeUsd" : 0.0
},
"stats" : {
"inputBodyLen" : 1,
"migrationCount" : 1,
"rebootCount" : 1,
"restartCount" : 1,
"resurrectCount" : 1,
"memAvgBytes" : 0.0,
"memMaxBytes" : 0.0,
"memCurrentBytes" : 0.0,
"cpuAvgUsage" : 0.0,
"cpuMaxUsage" : 0.0,
"cpuCurrentUsage" : 0.0,
"netRxBytes" : 0.0,
"netTxBytes" : 0.0,
"durationMillis" : 1,
"runTimeSecs" : 0.0,
"metamorph" : 1,
"computeUnits" : 0.0
},
"chargedEventCounts" : { },
"options" : {
"build" : "",
"timeoutSecs" : 1,
"memoryMbytes" : 1,
"diskMbytes" : 1,
"maxItems" : 1,
"maxTotalChargeUsd" : 0.0
},
"buildId" : "",
"exitCode" : 1,
"generalAccess" : "",
"defaultKeyValueStoreId" : "",
"defaultDatasetId" : "",
"defaultRequestQueueId" : "",
"storageIds" : {
"datasets" : {
"default" : ""
},
"keyValueStores" : {
"default" : ""
},
"requestQueues" : {
"default" : ""
}
},
"buildNumber" : "",
"containerUrl" : "",
"isContainerServerReady" : false,
"gitBranchName" : "",
"usage" : { },
"usageTotalUsd" : 0.0,
"usageUsd" : { },
"metamorphs" : [ {
"createdAt" : "2021-01-01T00:00:00",
"actorId" : "",
"buildId" : "",
"inputKey" : ""
} ]
}
}Start Actor
Name: startActor
Starts an Apify Actor
Properties
| Name | Label | Type | Description | Required |
|---|---|---|---|---|
| actorId | Actor ID | STRING | ID of the actor that will be run. | true |
| body | Body | STRING | The JSON input to pass to the Actor [you can get the JSON from a run in your Apify account]. | true |
Example JSON Structure
{
"label" : "Start Actor",
"name" : "startActor",
"parameters" : {
"actorId" : "",
"body" : ""
},
"type" : "apify/v1/startActor"
}Output
Type: OBJECT
Properties
| Name | Type | Description |
|---|---|---|
| data | OBJECT Properties{STRING(id), STRING(actId), STRING(userId), STRING(actorTaskId), STRING(startedAt), STRING(finishedAt), STRING(status), STRING(statusMessage), BOOLEAN(isStatusMessageTerminal), {STRING(origin), STRING(clientIp), STRING(userAgent), STRING(scheduleId), STRING(scheduledAt)}(meta), {NUMBER(apifyMarginPercentage), STRING(createdAt), STRING(startedAt), STRING(notifiedAboutFutureChangeAt), STRING(notifiedAboutChangeAt), STRING(reasonForChange), STRING(pricingModel), {{}(actorChargeEvents)}(pricingPerEvent), NUMBER(minimalMaxTotalChargeUsd)}(pricingInfo), {INTEGER(inputBodyLen), INTEGER(migrationCount), INTEGER(rebootCount), INTEGER(restartCount), INTEGER(resurrectCount), NUMBER(memAvgBytes), NUMBER(memMaxBytes), NUMBER(memCurrentBytes), NUMBER(cpuAvgUsage), NUMBER(cpuMaxUsage), NUMBER(cpuCurrentUsage), NUMBER(netRxBytes), NUMBER(netTxBytes), INTEGER(durationMillis), NUMBER(runTimeSecs), INTEGER(metamorph), NUMBER(computeUnits)}(stats), {INTEGER(actor-start), INTEGER(page-crawled), INTEGER(data-extracted)}(chargedEventCounts), {STRING(build), INTEGER(timeoutSecs), INTEGER(memoryMbytes), INTEGER(diskMbytes), INTEGER(maxItems), NUMBER(maxTotalChargeUsd)}(options), STRING(buildId), INTEGER(exitCode), STRING(generalAccess), STRING(defaultKeyValueStoreId), STRING(defaultDatasetId), STRING(defaultRequestQueueId), {{STRING(default)}(datasets), {STRING(default)}(keyValueStores), {STRING(default)}(requestQueues)}(storageIds), STRING(buildNumber), STRING(containerUrl), BOOLEAN(isContainerServerReady), STRING(gitBranchName), {INTEGER(ACTOR_COMPUTE_UNITS), INTEGER(DATASET_READS), INTEGER(DATASET_WRITES), INTEGER(KEY_VALUE_STORE_READS), INTEGER(KEY_VALUE_STORE_WRITES), INTEGER(KEY_VALUE_STORE_LISTS), INTEGER(REQUEST_QUEUE_READS), INTEGER(REQUEST_QUEUE_WRITES), INTEGER(DATA_TRANSFER_INTERNAL_GBYTES), INTEGER(DATA_TRANSFER_EXTERNAL_GBYTES), INTEGER(PROXY_RESIDENTIAL_TRANSFER_GBYTES), INTEGER(PROXY_SERPS)}(usage), NUMBER(usageTotalUsd), {INTEGER(ACTOR_COMPUTE_UNITS), INTEGER(DATASET_READS), INTEGER(DATASET_WRITES), INTEGER(KEY_VALUE_STORE_READS), INTEGER(KEY_VALUE_STORE_WRITES), INTEGER(KEY_VALUE_STORE_LISTS), INTEGER(REQUEST_QUEUE_READS), INTEGER(REQUEST_QUEUE_WRITES), INTEGER(DATA_TRANSFER_INTERNAL_GBYTES), INTEGER(DATA_TRANSFER_EXTERNAL_GBYTES), INTEGER(PROXY_RESIDENTIAL_TRANSFER_GBYTES), INTEGER(PROXY_SERPS)}(usageUsd), [{STRING(createdAt), STRING(actorId), STRING(buildId), STRING(inputKey)}](metamorphs)} | Main run object containing execution details |
Output Example
{
"data" : {
"id" : "",
"actId" : "",
"userId" : "",
"actorTaskId" : "",
"startedAt" : "",
"finishedAt" : "",
"status" : "",
"statusMessage" : "",
"isStatusMessageTerminal" : false,
"meta" : {
"origin" : "",
"clientIp" : "",
"userAgent" : "",
"scheduleId" : "",
"scheduledAt" : ""
},
"pricingInfo" : {
"apifyMarginPercentage" : 0.0,
"createdAt" : "",
"startedAt" : "",
"notifiedAboutFutureChangeAt" : "",
"notifiedAboutChangeAt" : "",
"reasonForChange" : "",
"pricingModel" : "",
"pricingPerEvent" : {
"actorChargeEvents" : { }
},
"minimalMaxTotalChargeUsd" : 0.0
},
"stats" : {
"inputBodyLen" : 1,
"migrationCount" : 1,
"rebootCount" : 1,
"restartCount" : 1,
"resurrectCount" : 1,
"memAvgBytes" : 0.0,
"memMaxBytes" : 0.0,
"memCurrentBytes" : 0.0,
"cpuAvgUsage" : 0.0,
"cpuMaxUsage" : 0.0,
"cpuCurrentUsage" : 0.0,
"netRxBytes" : 0.0,
"netTxBytes" : 0.0,
"durationMillis" : 1,
"runTimeSecs" : 0.0,
"metamorph" : 1,
"computeUnits" : 0.0
},
"chargedEventCounts" : {
"actor-start" : 1,
"page-crawled" : 1,
"data-extracted" : 1
},
"options" : {
"build" : "",
"timeoutSecs" : 1,
"memoryMbytes" : 1,
"diskMbytes" : 1,
"maxItems" : 1,
"maxTotalChargeUsd" : 0.0
},
"buildId" : "",
"exitCode" : 1,
"generalAccess" : "",
"defaultKeyValueStoreId" : "",
"defaultDatasetId" : "",
"defaultRequestQueueId" : "",
"storageIds" : {
"datasets" : {
"default" : ""
},
"keyValueStores" : {
"default" : ""
},
"requestQueues" : {
"default" : ""
}
},
"buildNumber" : "",
"containerUrl" : "",
"isContainerServerReady" : false,
"gitBranchName" : "",
"usage" : {
"ACTOR_COMPUTE_UNITS" : 1,
"DATASET_READS" : 1,
"DATASET_WRITES" : 1,
"KEY_VALUE_STORE_READS" : 1,
"KEY_VALUE_STORE_WRITES" : 1,
"KEY_VALUE_STORE_LISTS" : 1,
"REQUEST_QUEUE_READS" : 1,
"REQUEST_QUEUE_WRITES" : 1,
"DATA_TRANSFER_INTERNAL_GBYTES" : 1,
"DATA_TRANSFER_EXTERNAL_GBYTES" : 1,
"PROXY_RESIDENTIAL_TRANSFER_GBYTES" : 1,
"PROXY_SERPS" : 1
},
"usageTotalUsd" : 0.0,
"usageUsd" : {
"ACTOR_COMPUTE_UNITS" : 1,
"DATASET_READS" : 1,
"DATASET_WRITES" : 1,
"KEY_VALUE_STORE_READS" : 1,
"KEY_VALUE_STORE_WRITES" : 1,
"KEY_VALUE_STORE_LISTS" : 1,
"REQUEST_QUEUE_READS" : 1,
"REQUEST_QUEUE_WRITES" : 1,
"DATA_TRANSFER_INTERNAL_GBYTES" : 1,
"DATA_TRANSFER_EXTERNAL_GBYTES" : 1,
"PROXY_RESIDENTIAL_TRANSFER_GBYTES" : 1,
"PROXY_SERPS" : 1
},
"metamorphs" : [ {
"createdAt" : "",
"actorId" : "",
"buildId" : "",
"inputKey" : ""
} ]
}
}Find Body of the Apify Actor
- Go to your Apify console
- Click on Actors
- Click on Actor you want to find Body JSON of
- In Source tab click on Input
- Fill out form with your desired inputs
- Click on JSON
- Copy JSON and paste it to the ByteChef
What to do if your action is not listed here?
If this component doesn't have the action you need, you can use Custom Action to create your own. Custom Actions empower you to define HTTP requests tailored to your specific requirements, allowing for greater flexibility in integrating with external services or APIs.
To create a Custom Action, simply specify the desired HTTP method, path, and any necessary parameters. This way, you can extend the functionality of your component beyond the predefined actions, ensuring that you can meet all your integration needs effectively.
How is this guide?
Last updated on
Anthropic
Anthropic is an AI safety and research company that's working to build reliable, interpretable, and steerable AI systems.
Apollo
Apollo.io is a sales intelligence and engagement platform that provides tools for prospecting, lead generation, and sales automation to help businesses improve their sales processes and outreach efforts.