Apify integration for AI agents.
Apify integration for AI agents with secure authentication and server-side credential injection. Open Connector runs the OAuth, seals the token in an encrypted vault, and serves Apify tools to your agent over MCP or a typed API — credentials injected server-side, every call audited, nothing leaving your infrastructure. Open source (AGPL-3.0) and self-hostable.
Real Apify actions, managed and audited.
Your user connects Apify once; your agent can then run actors and manage Apify datasets, key-value stores, schedules, crawlers, and automation resources — scoped to the OAuth permissions you grant and the tool allowlist you configure. Every action is least-privilege and written to a tamper-evident audit trail.
- 1
Your user grants Apify access once (OAuth) — the token lands in the vault.
- 2
Your agent calls a tool over MCP or the typed API; Open Connector injects the credential server-side.
- 3
Every routed call appends a hash-chained audit record — nothing leaves your infra.
Supported Apify tools.
229 tools are generated from the published Apify catalog. Descriptions are plain text; each action remains subject to its configured authentication and tool allowlist.
Showing 229 tools. All published catalog entries are included in this page's server-rendered HTML.
- Abort build
- **[DEPRECATED]** API endpoints related to build of the Actor were moved under new namespace [`actor-builds`](#/reference/actor-builds). Aborts an Actor build and returns an object that contains all the details about the build. Only builds that are starting or running are aborted. For builds with status `FINISHED`, `FAILED`, `ABORTING` and `TIMED-OUT` this call does nothing.
- Actors/Actor builds
- Get default build
- Get the default build for an Actor. Use the optional `waitForFinish` parameter to synchronously wait for the build to finish. This avoids the need for periodic polling when waiting for the build to complete. This endpoint does not require an authentication token. Instead, calls are authenticated using the Actor's unique ID. However, if you access the endpoint without a token, certain attributes (e.g., `usageUsd` and `usageTotalUsd`) will be hidden.
- Actors/Actor builds
- Get build
- By passing the optional `waitForFinish` parameter the API endpoint will synchronously wait for the build to finish. This is useful to avoid periodic polling when waiting for an Actor build to finish. This endpoint does not require the authentication token. Instead, calls are authenticated using a hard-to-guess ID of the build. However, if you access the endpoint without the token, certain attributes, such as `usageUsd` and `usageTotalUsd`, will be hidden.
- Actors/Actor builds
- Get list of builds
- Gets the list of builds of a specific Actor. The response is a JSON with the list of objects, where each object contains basic information about a single build. The endpoint supports pagination using the `limit` and `offset` parameters and it will not return more than 1000 records. By default, the records are sorted by the `startedAt` field in ascending order, therefore you can use pagination to incrementally fetch all builds while new ones are still being started. To sort the records in descending order, use the `desc=1` parameter.
- Actors/Actor builds
- Build Actor
- Builds an Actor. The response is the build object as returned by the [Get build](#/reference/actors/build-object/get-build) endpoint.
- Actors/Actor builds
- Delete Actor
- Deletes an Actor with the specified ID.
- Actors
- Get Actor
- Gets an object that contains all the details about a specific Actor.
- Actors
- Get OpenAPI definition
- Get the OpenAPI definition for Actor builds. Two similar endpoints are available: - [First endpoint](/api/v2/act-openapi-json-get): Requires both `actorId` and `buildId`. Use `default` as the `buildId` to get the OpenAPI schema for the default Actor build. - [Second endpoint](/api/v2/actor-build-openapi-json-get): Requires only `buildId`. Get the OpenAPI definition for a specific Actor build. To fetch the default Actor build, simply pass `default` as the `buildId`. Authentication is based on the build's unique ID. No authentication token is required. :::note You can also use the [`/api/v2/actor-build-openapi-json-get`](/api/v2/actor-build-openapi-json-get) endpoint to get the OpenAPI definition for a build. :::
- Actors/Actor builds
- Update Actor
- Updates an Actor's settings with the values specified in an `Actor` object passed as JSON in the POST payload. Only the fields specified in the request body are updated. Returns the full `Actor` object, the same as the [Get Actor](/api/v2/act-get) endpoint. In the HTTP request, set the `Content-Type` header to `application/json`. ### Authentication To provide the authentication token, we recommend using the request's `Authorization` header, rather than the URL. For details, see [Authentication](/api/v2/getting-started#authentication). ### Make an Actor public To make your Actor [public](https://docs.apify.com/platform/actors/publishing): - Set `isPublic` to `true`. - Provide `title` and `categories`. For reference, see [constants from the `apify-shared-js` package](https://github.com/apify/apify-shared-js/blob/2d43ebc41ece9ad31cd6525bd523fb86939bf860/packages/consts/src/consts.ts#L452-L471) ### Update build tags To change tags assigned to Actor builds, use the `taggedBuilds` object. It's a dictionary that maps tag names to specific builds, where: - the key is the tag name, for example `latest` or `beta` - the value is either `null` or an object with a build ID Changing tags is a patch operation. Only the tags that you provide in this object are updated. Note that you can assign multiple tags to a single build, but you can't assign the same tag to multiple builds. - To create or reassign a tag, provide the tag name with a build ID. For example, to assign the `latest` tag to a build, use: ```json { "latest": { "buildId": "z2EryhbfhgSyqj6Hn" } } ``` - To remove a tag from a build, provide the tag name with a `null` value. For example, to remove the `beta` tag, use: ```json { "beta": null } ``` - You can perform multiple actions at once. The following example reassigns `latest` and removes `beta`, while preserving other existing tags: ```json { "latest": { "buildId": "z2EryhbfhgSyqj6Hn" }, "beta": null } ```
- Actors
- Abort run
- **[DEPRECATED]** API endpoints related to run of the Actor were moved under new namespace [`actor-runs`](#/reference/actor-runs). Aborts an Actor run and returns an object that contains all the details about the run. Only runs that are starting or running are aborted. For runs with status `FINISHED`, `FAILED`, `ABORTING` and `TIMED-OUT` this call does nothing.
- Actors/Actor runs
- Get run
- **[DEPRECATED]** API endpoints related to run of the Actor were moved under new namespace [`actor-runs`](#/reference/actor-runs). Gets an object that contains all the details about a specific run of an Actor. By passing the optional `waitForFinish` parameter the API endpoint will synchronously wait for the run to finish. This is useful to avoid periodic polling when waiting for Actor run to complete. This endpoint does not require the authentication token. Instead, calls are authenticated using a hard-to-guess ID of the run. However, if you access the endpoint without the token, certain attributes, such as `usageUsd` and `usageTotalUsd`, will be hidden.
- Actors/Actor runs
- Metamorph run
- **[DEPRECATED]** API endpoints related to run of the Actor were moved under new namespace [`actor-runs`](#/reference/actor-runs). Transforms an Actor run into a run of another Actor with a new input. This is useful if you want to use another Actor to finish the work of your current Actor run, without the need to create a completely new run and waiting for its finish. For the users of your Actors, the metamorph operation is transparent, they will just see your Actor got the work done. There is a limit on how many times you can metamorph a single run. You can check the limit in [the Actor runtime limits](https://docs.apify.com/platform/limits#actor-limits). Internally, the system stops the Docker container corresponding to the Actor run and starts a new container using a different Docker image. All the default storages are preserved and the new input is stored under the `INPUT-METAMORPH-1` key in the same default key-value store. For more information, see the [Actor docs](https://docs.apify.com/platform/actors/development/programming-interface/metamorph).
- Actors/Actor runs
- Resurrect run
- **[DEPRECATED]** API endpoints related to run of the Actor were moved under new namespace [`actor-runs`](#/reference/actor-runs).Resurrects a finished Actor run and returns an object that contains all the details about the resurrected run. Only finished runs, i.e. runs with status `FINISHED`, `FAILED`, `ABORTED` and `TIMED-OUT` can be resurrected. Run status will be updated to RUNNING and its container will be restarted with the same storages (the same behaviour as when the run gets migrated to the new server). For more information, see the [Actor docs](https://docs.apify.com/platform/actors/running/runs-and-builds#resurrection-of-finished-run).
- Actors/Actor runs
- Run Actor synchronously without input
- Runs a specific Actor and returns a key-value store record. The response contains the record stored under the `OUTPUT` key in the run's default key-value store. This is a legacy approach that has been replaced by the Actor [output object](https://docs.apify.com/platform/actors/development/actor-definition/output-schema#output-object-definition); the record may not exist, in which case the response contains no data. Use the `outputRecordKey` query parameter to return a different record. The run must finish in 300<!-- MAX_ACTOR_JOB_SYNC_WAIT_SECS --> seconds otherwise the API endpoint returns a timeout error. The Actor is not passed any input. Beware that it might be impossible to maintain an idle HTTP connection for a long period of time, due to client timeout or network conditions. Make sure your HTTP client is configured to have a long enough connection timeout. If the connection breaks, you will not receive any information about the run and its status. To run the Actor asynchronously, use the [Run Actor](#/reference/actors/run-collection/run-actor) API endpoint instead.
- Actors/Actor runs
- Run Actor synchronously without input and get dataset items
- Runs a specific Actor and returns its dataset items. The run must finish in 300<!-- MAX_ACTOR_JOB_SYNC_WAIT_SECS --> seconds otherwise the API endpoint returns a timeout error. The Actor is not passed any input. It allows to send all possible options in parameters from [Get Dataset Items](#/reference/datasets/item-collection/get-items) API endpoint. Beware that it might be impossible to maintain an idle HTTP connection for a long period of time, due to client timeout or network conditions. Make sure your HTTP client is configured to have a long enough connection timeout. If the connection breaks, you will not receive any information about the run and its status. To run the Actor asynchronously, use the [Run Actor](#/reference/actors/run-collection/run-actor) API endpoint instead.
- Actors/Actor runs
- Run Actor synchronously and get dataset items
- Runs a specific Actor and returns its dataset items. The POST payload including its `Content-Type` header is passed as `INPUT` to the Actor (usually `application/json`). The HTTP response contains the Actors dataset items, while the format of items depends on specifying dataset items' `format` parameter. You can send all the same options in parameters as the [Get Dataset Items](#/reference/datasets/item-collection/get-items) API endpoint. The Actor is started with the default options; you can override them using URL query parameters. If the Actor run exceeds 300<!-- MAX_ACTOR_JOB_SYNC_WAIT_SECS --> seconds, the HTTP response will return the 408 status code (Request Timeout). Beware that it might be impossible to maintain an idle HTTP connection for a long period of time, due to client timeout or network conditions. Make sure your HTTP client is configured to have a long enough connection timeout. If the connection breaks, you will not receive any information about the run and its status. To run the Actor asynchronously, use the [Run Actor](#/reference/actors/run-collection/run-actor) API endpoint instead.
- Actors/Actor runs
- Run Actor synchronously and return key-value store record
- Runs a specific Actor and returns a key-value store record. The POST payload including its `Content-Type` header is passed as `INPUT` to the Actor (usually <code>application/json</code>). The response contains the record stored under the `OUTPUT` key in the run's default key-value store. This is a legacy approach that has been replaced by the Actor [output object](https://docs.apify.com/platform/actors/development/actor-definition/output-schema#output-object-definition); Actors aren't required to store a record under this key, so the response may not contain any data. Use the `outputRecordKey` query parameter to return a different record. The Actor is started with the default options; you can override them using various URL query parameters. If the Actor run exceeds 300<!-- MAX_ACTOR_JOB_SYNC_WAIT_SECS --> seconds, the HTTP response will have status 408 (Request Timeout). Beware that it might be impossible to maintain an idle HTTP connection for a long period of time, due to client timeout or network conditions. Make sure your HTTP client is configured to have a long enough connection timeout. If the connection breaks, you will not receive any information about the run and its status. To run the Actor asynchronously, use the [Run Actor](#/reference/actors/run-collection/run-actor) API endpoint instead.
- Actors/Actor runs
- Get list of runs
- Gets the list of runs of a specific Actor. The response is a list of objects, where each object contains basic information about a single Actor run. The endpoint supports pagination using the `limit` and `offset` parameters and it will not return more than 1000 array elements. By default, the records are sorted by the `startedAt` field in ascending order, therefore you can use pagination to incrementally fetch all records while new ones are still being created. To sort the records in descending order, use `desc=1` parameter. You can also filter runs by status ([available statuses](https://docs.apify.com/platform/actors/running/runs-and-builds#lifecycle)).
- Actors/Actor runs
- Abort Actor's last run
- Aborts the last run of the specified Actor and returns an object that contains all the details about the run. This endpoint is a shortcut for [Abort run](#/reference/actor-runs/abort-run/abort-run) on the Actor's last run. Only runs that are starting or running are aborted. For runs with status `FINISHED`, `FAILED`, `ABORTING` and `TIMED-OUT` this call does nothing.
- Last Actor run's abort
- Delete last run's default dataset
- Deletes the default dataset associated with the last Actor run. This endpoint is a shortcut for getting the last run's `defaultDatasetId` and then using the [Delete dataset](/api/v2/dataset-delete) endpoint.
- Last Actor run's default dataset
- Get last run's default dataset
- Returns the default dataset associated with the last Actor run. This endpoint is a shortcut for getting the last run's `defaultDatasetId` and then using the [Get dataset](/api/v2/dataset-get) endpoint.
- Last Actor run's default dataset
- Get last run's dataset items
- Returns data stored in the default dataset of the last Actor run in the desired format. This endpoint is a shortcut that resolves the last run's `defaultDatasetId` and proxies to the [Get dataset items](/api/v2/dataset-items-get) endpoint.
- Last Actor run's default dataset
- Store items in last run's dataset
- Appends an item or an array of items to the end of the last Actor run's default dataset. This endpoint is a shortcut that resolves the last run's `defaultDatasetId` and proxies to the [Store items](/api/v2/dataset-items-post) endpoint.
- Last Actor run's default dataset
- Update last run's default dataset
- Updates the default dataset associated with the last Actor run. This endpoint is a shortcut for getting the last run's `defaultDatasetId` and then using the [Update dataset](/api/v2/dataset-put) endpoint.
- Last Actor run's default dataset
- Get last run's dataset statistics
- Returns statistics for the last Actor run's default dataset. This endpoint is a shortcut that resolves the last run's `defaultDatasetId` and proxies to the [Get dataset statistics](/api/v2/dataset-statistics-get) endpoint.
- Last Actor run's default dataset
- Get last run
- This is not a single endpoint, but an entire group of endpoints that lets you to retrieve and manage the last run of given Actor or any of its default storages. All the endpoints require an authentication token. The base path represents the last Actor run object is: `/v2/actors/{actorId}/runs/last{?token,status,origin}` Using the `status` query parameter you can ensure to only get a run with a certain status (e.g. `status=SUCCEEDED`). Similarly, the `origin` query parameter filters runs by the means by which they were started (e.g. `origin=API`). The output of this endpoint and other query parameters are the same as in the [Run object](#/reference/actors/run-object) endpoint. ##### Convenience endpoints for last Actor run * [Dataset](/api/v2/last-actor-runs-default-dataset) * [Key-value store](/api/v2/last-actor-runs-default-key-value-store) * [Request queue](/api/v2/last-actor-runs-default-request-queue) * [Log](/api/v2/last-actor-runs-log)
- Actors/Actor runs
- Delete last run's default store
- Deletes the last Actor run key-value store. This endpoint is a shortcut for getting the run's `defaultKeyValueStoreId` and then using the [Delete store](/api/v2/key-value-store-delete) endpoint.
- Last Actor run's default key-value store
- Get last run's default store
- Gets an object that contains all the details about the default key-value store associated with the last Actor run. This endpoint is a shortcut for getting the run's `defaultKeyValueStoreId` and then using the [Get store](/api/v2/key-value-store-get) endpoint.
- Last Actor run's default key-value store
- Get last run's default store's list of keys
- Returns a list of keys for the default key-value store of the last Actor run. This endpoint is a shortcut for getting the last run's `defaultKeyValueStoreId` and then using the [Get list of keys](/api/v2/key-value-store-keys-get) endpoint.
- Last Actor run's default key-value store
- Update last run's default store
- Updates the last Actor run key-value store's name and general resource access level using a value specified by a JSON object passed in the PUT payload. This endpoint is a shortcut for getting the run's `defaultKeyValueStoreId` and then using the [Update store](/api/v2/key-value-store-put) endpoint.
- Last Actor run's default key-value store
- Delete last run's default store's record
- Removes a record specified by a key from the default key-value store of the last Actor run. This endpoint is a shortcut for getting the last run's `defaultKeyValueStoreId` and then using the [Delete record](/api/v2/key-value-store-record-delete) endpoint.
- Last Actor run's default key-value store
- Get last run's default store's record
- Gets a value stored under a specific key in the default key-value store of the last Actor run. This endpoint is a shortcut for getting the last run's `defaultKeyValueStoreId` and then using the [Get record](/api/v2/key-value-store-record-get) endpoint.
- Last Actor run's default key-value store
- Store record in last run's default store (POST)
- Stores a value under a specific key in the default key-value store of the last Actor run. This endpoint is a shortcut for getting the last run's `defaultKeyValueStoreId` and then using the [Store record](/api/v2/key-value-store-record-post) endpoint.
- Last Actor run's default key-value store
- Store record in last run's default store
- Stores a value under a specific key in the default key-value store of the last Actor run. This endpoint is a shortcut for getting the last run's `defaultKeyValueStoreId` and then using the [Store record](/api/v2/key-value-store-record-put) endpoint.
- Last Actor run's default key-value store
- Download last run's default store's records
- Downloads all records from the default key-value store of the last Actor run as a ZIP archive. This endpoint is a shortcut for getting the last run's `defaultKeyValueStoreId` and then using the [Download records](/api/v2/key-value-store-records-get) endpoint.
- Last Actor run's default key-value store
- Get last Actor run's log
- Retrieves last Actor run's logs. This endpoint is a shortcut for getting last Actor run's log. Same as [Get log](/api/v2/log-get) endpoint.
- Last Actor run's log
- Metamorph Actor's last run
- Transforms the last run of the specified Actor into a run of another Actor with a new input. This endpoint is a shortcut for [Metamorph run](#/reference/actor-runs/metamorph-run/metamorph-run) on the Actor's last run.
- Last Actor run's metamorph
- Reboot Actor's last run
- Reboots the last run of the specified Actor and returns an object that contains all the details about the rebooted run. This endpoint is a shortcut for [Reboot run](#/reference/actor-runs/reboot-run/reboot-run) on the Actor's last run. Only runs with status `RUNNING` can be rebooted. The run's container will be restarted, so any data not persisted in the key-value store, dataset, or request queue will be lost.
- Last Actor run's reboot
- Delete last run's default request queue
- Deletes the default request queue associated with the last Actor run. This endpoint is a shortcut for getting the last run's `defaultRequestQueueId` and then using the [Delete request queue](/api/v2/request-queue-delete) endpoint.
- Last Actor run's default request queue
- Get last run's default request queue
- Returns the default request queue associated with the last Actor run. This endpoint is a shortcut for getting the last run's `defaultRequestQueueId` and then using the [Get request queue](/api/v2/request-queue-get) endpoint.
- Last Actor run's default request queue
- Get last run's default request queue head
- Returns the given number of first requests from the default request queue of the last Actor run. This endpoint is a shortcut for getting the last run's `defaultRequestQueueId` and then using the [Get head](/api/v2/request-queue-head-get) endpoint.
- Last Actor run's default request queue
- Get and lock last run's default request queue head
- Returns the given number of first requests from the default request queue of the last Actor run and locks them for the given time. This endpoint is a shortcut for getting the last run's `defaultRequestQueueId` and then using the [Get head and lock](/api/v2/request-queue-head-lock-post) endpoint.
- Last Actor run's default request queue
- Update last run's default request queue
- Updates the default request queue associated with the last Actor run. This endpoint is a shortcut for getting the last run's `defaultRequestQueueId` and then using the [Update request queue](/api/v2/request-queue-put) endpoint.
- Last Actor run's default request queue
- Delete request from last run's default request queue
- Deletes a request from the default request queue of the last Actor run. This endpoint is a shortcut for getting the last run's `defaultRequestQueueId` and then using the [Delete request](/api/v2/request-queue-request-delete) endpoint.
- Last Actor run's default request queue
- Get request from last run's default request queue
- Returns a request from the default request queue of the last Actor run. This endpoint is a shortcut for getting the last run's `defaultRequestQueueId` and then using the [Get request](/api/v2/request-queue-request-get) endpoint.
- Last Actor run's default request queue
- Delete lock on request in last run's default request queue
- Deletes a request lock in the default request queue of the last Actor run. This endpoint is a shortcut for getting the last run's `defaultRequestQueueId` and then using the [Delete request lock](/api/v2/request-queue-request-lock-delete) endpoint.
- Last Actor run's default request queue
- Prolong lock on request in last run's default request queue
- Prolongs a request lock in the default request queue of the last Actor run. This endpoint is a shortcut for getting the last run's `defaultRequestQueueId` and then using the [Prolong request lock](/api/v2/request-queue-request-lock-put) endpoint.
- Last Actor run's default request queue
- Update request in last run's default request queue
- Updates a request in the default request queue of the last Actor run. This endpoint is a shortcut for getting the last run's `defaultRequestQueueId` and then using the [Update request](/api/v2/request-queue-request-put) endpoint.
- Last Actor run's default request queue
- Batch delete requests from last run's default request queue
- Batch-deletes requests from the default request queue of the last Actor run. This endpoint is a shortcut for getting the last run's `defaultRequestQueueId` and then using the [Delete requests](/api/v2/request-queue-requests-batch-delete) endpoint.
- Last Actor run's default request queue
- Batch add requests to last run's default request queue
- Adds requests to the default request queue of the last Actor run in batch. This endpoint is a shortcut for getting the last run's `defaultRequestQueueId` and then using the [Add requests](/api/v2/request-queue-requests-batch-post) endpoint.
- Last Actor run's default request queue
- List last run's default request queue's requests
- Returns a list of requests from the default request queue of the last Actor run. This endpoint is a shortcut for getting the last run's `defaultRequestQueueId` and then using the [List requests](/api/v2/request-queue-requests-get) endpoint.
- Last Actor run's default request queue
- Add request to last run's default request queue
- Adds a request to the default request queue of the last Actor run. This endpoint is a shortcut for getting the last run's `defaultRequestQueueId` and then using the [Add request](/api/v2/request-queue-requests-post) endpoint.
- Last Actor run's default request queue
- Unlock requests in last run's default request queue
- Unlocks requests in the default request queue of the last Actor run that are currently locked by the client. This endpoint is a shortcut for getting the last run's `defaultRequestQueueId` and then using the [Unlock requests](/api/v2/request-queue-requests-unlock-post) endpoint.
- Last Actor run's default request queue
- Run Actor
- Runs an Actor and immediately returns without waiting for the run to finish. The POST payload including its `Content-Type` header is passed as `INPUT` to the Actor (usually `application/json`). The Actor is started with the default options; you can override them using various URL query parameters. The response is the Run object as returned by the [Get run](#/reference/actor-runs/run-object-and-its-storages/get-run) API endpoint. If you want to wait for the run to finish and receive the actual output of the Actor as the response, please use one of the [Run Actor synchronously](#/reference/actors/run-actor-synchronously) API endpoints instead. To fetch the Actor run results that are typically stored in the default dataset, you'll need to pass the ID received in the `defaultDatasetId` field received in the response JSON to the [Get dataset items](#/reference/datasets/item-collection/get-items) API endpoint.
- Actors/Actor runs
- Validate Actor input
- Validates the provided input against the Actor's input schema for the specified build. The endpoint checks whether the JSON payload conforms to the input schema defined in the Actor's build. If no `build` query parameter is provided, the `latest` build tag is used by default.
- Actors
- Delete version
- Deletes a specific version of Actor's source code.
- Actors/Actor versions
- Delete environment variable
- Deletes a specific environment variable.
- Actors/Actor versions
- Get environment variable
- Gets a [EnvVar object](#/reference/actors/environment-variable-object) that contains all the details about a specific environment variable of an Actor. If `isSecret` is set to `true`, then `value` will never be returned.
- Actors/Actor versions
- Update environment variable (POST)
- Updates Actor environment variable using values specified by a [EnvVar object](#/reference/actors/environment-variable-object) passed as JSON in the POST payload. This endpoint is an alias for the [`PUT` update environment variable](#tag/ActorsEnvironment-variable-object/operation/act_version_envVar_put) method and behaves identically.
- Actors/Actor versions
- Update environment variable
- Updates Actor environment variable using values specified by a [EnvVar object](#/reference/actors/environment-variable-object) passed as JSON in the POST payload. If the object does not define a specific property, its value will not be updated. The request needs to specify the `Content-Type: application/json` HTTP header! When providing your API authentication token, we recommend using the request's `Authorization` header, rather than the URL. ([More info](#/introduction/authentication)). The response is the [EnvVar object](#/reference/actors/environment-variable-object) as returned by the [Get environment variable](#/reference/actors/environment-variable-object/get-environment-variable) endpoint.
- Actors/Actor versions
- Get list of environment variables
- Gets the list of environment variables for a specific version of an Actor. The response is a JSON object with the list of [EnvVar objects](#/reference/actors/environment-variable-object), where each contains basic information about a single environment variable.
- Actors/Actor versions
- Create environment variable
- Creates an environment variable of an Actor using values specified in a [EnvVar object](#/reference/actors/environment-variable-object) passed as JSON in the POST payload. The request must specify `name` and `value` parameters (as strings) in the JSON payload and a `Content-Type: application/json` HTTP header. ``` { "name": "ENV_VAR_NAME", "value": "my-env-var" } ``` The response is the [EnvVar object](#/reference/actors/environment-variable-object) as returned by the [Get environment variable](#/reference/actors/environment-variable-object/get-environment-variable) endpoint.
- Actors/Actor versions
- Get version
- Gets a [Version object](#/reference/actors/version-object) that contains all the details about a specific version of an Actor.
- Actors/Actor versions
- Update version (POST)
- Updates Actor version using values specified by a [Version object](#/reference/actors/version-object) passed as JSON in the POST payload. This endpoint is an alias for the [`PUT` update version](#tag/ActorsVersion-object/operation/act_version_put) method and behaves identically.
- Actors/Actor versions
- Update version
- Updates Actor version using values specified by a [Version object](#/reference/actors/version-object) passed as JSON in the POST payload. If the object does not define a specific property, its value will not be updated. The request needs to specify the `Content-Type: application/json` HTTP header! When providing your API authentication token, we recommend using the request's `Authorization` header, rather than the URL. ([More info](#/introduction/authentication)). The response is the [Version object](#/reference/actors/version-object) as returned by the [Get version](#/reference/actors/version-object/get-version) endpoint.
- Actors/Actor versions
- Get list of versions
- Gets the list of versions of a specific Actor. The response is a JSON object with the list of [Version objects](#/reference/actors/version-object), where each contains basic information about a single version.
- Actors/Actor versions
- Create version
- Creates a version of an Actor using values specified in a [Version object](#/reference/actors/version-object) passed as JSON in the POST payload. The request must specify `versionNumber` and `sourceType` parameters (as strings) in the JSON payload and a `Content-Type: application/json` HTTP header. Each `sourceType` requires its own additional properties to be passed to the JSON payload object. These are outlined in the [Version object](#/reference/actors/version-object) table below and in more detail in the [Apify documentation](https://docs.apify.com/platform/actors/development/deployment/source-types). For example, if an Actor's source code is stored in a [GitHub repository](https://docs.apify.com/platform/actors/development/deployment/source-types#git-repository), you will set the `sourceType` to `GIT_REPO` and pass the repository's URL in the `gitRepoUrl` property. ``` { "versionNumber": "0.1", "sourceType": "GIT_REPO", "gitRepoUrl": "https://github.com/my-github-account/actor-repo" } ``` The response is the [Version object](#/reference/actors/version-object) as returned by the [Get version](#/reference/actors/version-object/get-version) endpoint.
- Actors/Actor versions
- Get list of webhooks
- Gets the list of webhooks of a specific Actor. The response is a JSON with the list of objects, where each object contains basic information about a single webhook. The endpoint supports pagination using the `limit` and `offset` parameters and it will not return more than 1000 records. By default, the records are sorted by the `createdAt` field in ascending order, to sort the records in descending order, use the `desc=1` parameter.
- Actors/Webhook collection
- Abort build
- Aborts an Actor build and returns an object that contains all the details about the build. Only builds that are starting or running are aborted. For builds with status `FINISHED`, `FAILED`, `ABORTING` and `TIMED-OUT` this call does nothing.
- Actor builds
- Delete build
- Delete the build. The build that is the current default build for the Actor cannot be deleted. Only users with build permissions for the Actor can delete builds.
- Actor builds
- Get build
- Gets an object that contains all the details about a specific build of an Actor. By passing the optional `waitForFinish` parameter the API endpoint will synchronously wait for the build to finish. This is useful to avoid periodic polling when waiting for an Actor build to finish. This endpoint does not require the authentication token. Instead, calls are authenticated using a hard-to-guess ID of the build. However, if you access the endpoint without the token, certain attributes, such as `usageUsd` and `usageTotalUsd`, will be hidden.
- Actor builds
- Get build's Log
- Retrieves Actor build's logs. This endpoint is a shortcut for getting the build's log. Same as [Get log](/api/v2/log-get) endpoint.
- Actor builds
- Get OpenAPI definition
- Get the OpenAPI definition for Actor builds. Two similar endpoints are available: - [First endpoint](/api/v2/act-openapi-json-get): Requires both `actorId` and `buildId`. Use `default` as the `buildId` to get the OpenAPI schema for the default Actor build. - [Second endpoint](/api/v2/actor-build-openapi-json-get): Requires only `buildId`. Get the OpenAPI definition for a specific Actor build. Authentication is based on the build's unique ID. No authentication token is required. :::note You can also use the [`/api/v2/act-openapi-json-get`](/api/v2/act-openapi-json-get) endpoint to get the OpenAPI definition for a build. :::
- Actor builds
- Get user builds list
- Gets a list of all builds for a user. The response is a JSON array of objects, where each object contains basic information about a single build. The endpoint supports pagination using the `limit` and `offset` parameters and it will not return more than 1000 records. By default, the records are sorted by the `startedAt` field in ascending order. Therefore, you can use pagination to incrementally fetch all builds while new ones are still being started. To sort the records in descending order, use the `desc=1` parameter.
- Actor builds
- Abort run
- Aborts an Actor run and returns an object that contains all the details about the run. Only runs that are starting or running are aborted. For runs with status `FINISHED`, `FAILED`, `ABORTING` and `TIMED-OUT` this call does nothing.
- Actor runs
- Delete default dataset
- Deletes default dataset associated with an Actor run. This endpoint is a shortcut for getting the last run's `defaultDatasetId` and then using the [ Delete dataset ](/api/v2/dataset-delete) endpoint.
- Default dataset
- Get default dataset
- Returns the default dataset associated with an Actor run. This endpoint is a shortcut for getting the run's `defaultDatasetId` and then using the [Get dataset](/api/v2/dataset-get) endpoint.
- Default dataset
- Get default dataset items
- Returns data stored in the default dataset of the Actor run in the desired format. This endpoint is a shortcut that resolves the run's `defaultDatasetId` and proxies to the [Get dataset items](/api/v2/dataset-items-get) endpoint.
- Default dataset
- Store items
- Appends an item or an array of items to the end of the Actor run's default dataset. This endpoint is a shortcut that resolves the run's `defaultDatasetId` and proxies to the [Store items](/api/v2/dataset-items-post) endpoint.
- Default dataset
- Update default dataset
- Updates the default dataset associated with an Actor run. This endpoint is a shortcut for getting the run's `defaultDatasetId` and then using the [Put dataset](/api/v2/dataset-put) endpoint.
- Default dataset
- Get default dataset statistics
- Returns statistics for the Actor run's default dataset. This endpoint is a shortcut that resolves the run's `defaultDatasetId` and proxies to the [Get dataset statistics](/api/v2/dataset-statistics-get) endpoint.
- Default dataset
- Delete run
- Delete the run. Only finished runs can be deleted. Only the person or organization that initiated the run can delete it.
- Actor runs
- Get run
- This is not a single endpoint, but an entire group of endpoints that lets you retrieve the run or any of its default storages. ##### Convenience endpoints for Actor run default storages * [Dataset](/api/v2/default-dataset) * [Key-value store](/api/v2/default-key-value-store) * [Request queue](/api/v2/default-request-queue) Gets an object that contains all the details about a specific run of an Actor. By passing the optional `waitForFinish` parameter the API endpoint will synchronously wait for the run to finish. This is useful to avoid periodic polling when waiting for Actor run to complete. Note that the first response after completion can still show preliminary `stats`, costs, and event counts. For stable figures, wait about 10 seconds and call the endpoint again. This endpoint does not require the authentication token. Instead, calls are authenticated using a hard-to-guess ID of the run. However, if you access the endpoint without the token, certain attributes, such as `usageUsd` and `usageTotalUsd`, will be hidden.
- Actor runs
- Delete default store
- Delete the default key-value store. This endpoint is a shortcut for getting the run's `defaultKeyValueStoreId` and then using the [Delete store](/api/v2/key-value-store-delete) endpoint.
- Default key-value store
- Get default store
- Gets an object that contains all the details about the default key-value store. This endpoint is a shortcut for getting the run's `defaultKeyValueStoreId` and then using the [Get store](/api/v2/key-value-store-get) endpoint.
- Default key-value store
- Get default store's list of keys
- Returns a list of keys for the default key-value store of the Actor run. This endpoint is a shortcut for getting the run's `defaultKeyValueStoreId` and then using the [Get list of keys](/api/v2/key-value-store-keys-get) endpoint.
- Default key-value store
- Update default store
- Updates the default key-value store's name and general resource access level using a value specified by a JSON object passed in the PUT payload. This endpoint is a shortcut for getting the run's `defaultKeyValueStoreId` and then using the [Update store](/api/v2/key-value-store-put) endpoint.
- Default key-value store
- Delete default store's record
- Removes a record specified by a key from the default key-value store of the Actor run. This endpoint is a shortcut for getting the run's `defaultKeyValueStoreId` and then using the [Delete record](/api/v2/key-value-store-record-delete) endpoint.
- Default key-value store
- Get default store's record
- Gets a value stored under a specific key in the default key-value store of the Actor run. This endpoint is a shortcut for getting the run's `defaultKeyValueStoreId` and then using the [Get record](/api/v2/key-value-store-record-get) endpoint.
- Default key-value store
- Store record in default store (POST)
- Stores a value under a specific key in the default key-value store of the Actor run. This endpoint is a shortcut for getting the run's `defaultKeyValueStoreId` and then using the [Store record](/api/v2/key-value-store-record-post) endpoint.
- Default key-value store
- Store record in default store
- Stores a value under a specific key in the default key-value store of the Actor run. This endpoint is a shortcut for getting the run's `defaultKeyValueStoreId` and then using the [Store record](/api/v2/key-value-store-record-put) endpoint.
- Default key-value store
- Download default store's records
- Downloads all records from the default key-value store of the Actor run as a ZIP archive. This endpoint is a shortcut for getting the run's `defaultKeyValueStoreId` and then using the [Download records](/api/v2/key-value-store-records-get) endpoint.
- Default key-value store
- Get run's log
- Retrieves Actor run's logs. This endpoint is a shortcut for getting the run's log. Same as [Get log](/api/v2/log-get) endpoint.
- Actor runs
- Metamorph run
- Transforms an Actor run into a run of another Actor with a new input. This is useful if you want to use another Actor to finish the work of your current Actor run, without the need to create a completely new run and waiting for its finish. For the users of your Actors, the metamorph operation is transparent, they will just see your Actor got the work done. Internally, the system stops the Docker container corresponding to the Actor run and starts a new container using a different Docker image. All the default storages are preserved and the new input is stored under the `INPUT-METAMORPH-1` key in the same default key-value store. For more information, see the [Actor docs](https://docs.apify.com/platform/actors/development/programming-interface/metamorph).
- Actor runs
- Update run
- This endpoint can be used to update both the run's status message and to configure its general resource access level. **Status message:** You can set a single status message on your run that will be displayed in the Apify Console UI. During an Actor run, you will typically do this in order to inform users of your Actor about the Actor's progress. The request body must contain `runId` and `statusMessage` properties. The `isStatusMessageTerminal` property is optional and it indicates if the status message is the very last one. In the absence of a status message, the platform will try to substitute sensible defaults. **General resource access:** You can also update the run's general resource access setting, which determines who can view the run and its related data. Allowed values: * `FOLLOW_USER_SETTING` - The run inherits the general access setting from the account level. * `ANYONE_WITH_ID_CAN_READ` - The run can be viewed anonymously by anyone who has its ID. * `RESTRICTED` - Only users with explicit access to the resource can access the run. When a run is accessible anonymously, all of the run's default storages and logs also become accessible anonymously.
- Actor runs
- Reboot run
- Reboots an Actor run and returns an object that contains all the details about the rebooted run. Only runs that are running, i.e. runs with status `RUNNING` can be rebooted. The run's container will be restarted, so any data not persisted in the key-value store, dataset, or request queue will be lost.
- Actor runs
- Delete default request queue
- Deletes the default request queue associated with an Actor run. This endpoint is a shortcut for getting the run's `defaultRequestQueueId` and then using the [Delete request queue](/api/v2/request-queue-delete) endpoint.
- Default request queue
- Get default request queue
- Returns the default request queue associated with an Actor run. This endpoint is a shortcut for getting the run's `defaultRequestQueueId` and then using the [Get request queue](/api/v2/request-queue-get) endpoint.
- Default request queue
- Get default request queue head
- Returns the given number of first requests from the default request queue of the Actor run. This endpoint is a shortcut for getting the run's `defaultRequestQueueId` and then using the [Get head](/api/v2/request-queue-head-get) endpoint.
- Default request queue
- Get and lock default request queue head
- Returns the given number of first requests from the default request queue of the Actor run and locks them for the given time. This endpoint is a shortcut for getting the run's `defaultRequestQueueId` and then using the [Get head and lock](/api/v2/request-queue-head-lock-post) endpoint.
- Default request queue
- Update default request queue
- Updates the default request queue associated with an Actor run. This endpoint is a shortcut for getting the run's `defaultRequestQueueId` and then using the [Update request queue](/api/v2/request-queue-put) endpoint.
- Default request queue
- Delete request from default request queue
- Deletes a request from the default request queue of the Actor run. This endpoint is a shortcut for getting the run's `defaultRequestQueueId` and then using the [Delete request](/api/v2/request-queue-request-delete) endpoint.
- Default request queue
- Get request from default request queue
- Returns a request from the default request queue of the Actor run. This endpoint is a shortcut for getting the run's `defaultRequestQueueId` and then using the [Get request](/api/v2/request-queue-request-get) endpoint.
- Default request queue
- Delete lock on request in default request queue
- Deletes a request lock in the default request queue of the Actor run. This endpoint is a shortcut for getting the run's `defaultRequestQueueId` and then using the [Delete request lock](/api/v2/request-queue-request-lock-delete) endpoint.
- Default request queue
- Prolong lock on request in default request queue
- Prolongs a request lock in the default request queue of the Actor run. This endpoint is a shortcut for getting the run's `defaultRequestQueueId` and then using the [Prolong request lock](/api/v2/request-queue-request-lock-put) endpoint.
- Default request queue
- Update request in default request queue
- Updates a request in the default request queue of the Actor run. This endpoint is a shortcut for getting the run's `defaultRequestQueueId` and then using the [Update request](/api/v2/request-queue-request-put) endpoint.
- Default request queue
- Batch delete requests from default request queue
- Batch-deletes requests from the default request queue of the Actor run. This endpoint is a shortcut for getting the run's `defaultRequestQueueId` and then using the [Delete requests](/api/v2/request-queue-requests-batch-delete) endpoint.
- Default request queue
- Batch add requests to default request queue
- Adds requests to the default request queue of the Actor run in batch. This endpoint is a shortcut for getting the run's `defaultRequestQueueId` and then using the [Add requests](/api/v2/request-queue-requests-batch-post) endpoint.
- Default request queue
- List default request queue's requests
- Returns a list of requests from the default request queue of the Actor run. This endpoint is a shortcut for getting the run's `defaultRequestQueueId` and then using the [List requests](/api/v2/request-queue-requests-get) endpoint.
- Default request queue
- Add request to default request queue
- Adds a request to the default request queue of the Actor run. This endpoint is a shortcut for getting the run's `defaultRequestQueueId` and then using the [Add request](/api/v2/request-queue-requests-post) endpoint.
- Default request queue
- Unlock requests in default request queue
- Unlocks requests in the default request queue of the Actor run that are currently locked by the client. This endpoint is a shortcut for getting the run's `defaultRequestQueueId` and then using the [Unlock requests](/api/v2/request-queue-requests-unlock-post) endpoint.
- Default request queue
- Get user runs list
- Gets a list of all runs for a user. The response is a list of objects, where each object contains basic information about a single Actor run. The endpoint supports pagination using the `limit` and `offset` parameters and it will not return more than 1000 array elements. By default, the records are sorted by the `startedAt` field in ascending order. Therefore, you can use pagination to incrementally fetch all records while new ones are still being created. To sort the records in descending order, use `desc=1` parameter. You can also filter runs by `startedAt`` and `status`` fields ([available statuses](https://docs.apify.com/platform/actors/running/runs-and-builds#lifecycle)).
- Actor runs
- Delete task
- Delete the task specified through the `actorTaskId` parameter.
- Actor tasks
- Get task
- Get an object that contains all the details about a task.
- Actor tasks
- Get task input
- Returns the input of a given task.
- Actor tasks
- Update task input
- Updates the input of a task using values specified by an object passed as JSON in the PUT payload. If the object does not define a specific property, its value is not updated. The response is the full task input as returned by the [Get task input](#/reference/tasks/task-input-object/get-task-input) endpoint. The request needs to specify the `Content-Type: application/json` HTTP header! When providing your API authentication token, we recommend using the request's `Authorization` header, rather than the URL. ([More info](#/introduction/authentication)).
- Actor tasks
- Get last Actor task run's log
- Retrieves last Actor task run's logs. This endpoint is a shortcut for getting last Actor task run's log. Same as [Get log](/api/v2/log-get) endpoint.
- Last Actor task run's log
- Update task
- Update settings of a task using values specified by an object passed as JSON in the POST payload. If the object does not define a specific property, its value is not updated. The response is the full task object as returned by the [Get task](/api/v2/actor-task-get) endpoint. The request needs to specify the `Content-Type: application/json` HTTP header! When providing your API authentication token, we recommend using the request's `Authorization` header, rather than the URL.
- Actor tasks
- Run task synchronously
- Runs an Actor task and synchronously returns a key-value store record. The response contains the record stored under the `OUTPUT` key in the run's default key-value store. This is a legacy approach that has been replaced by the Actor [output object](https://docs.apify.com/platform/actors/development/actor-definition/output-schema#output-object-definition); Actors aren't required to store a record under this key, so the response may not contain any data. Use the `outputRecordKey` query parameter to return a different record. The run must finish in 300<!-- MAX_ACTOR_JOB_SYNC_WAIT_SECS --> seconds otherwise the HTTP request fails with a timeout error (this won't abort the run itself). Beware that it might be impossible to maintain an idle HTTP connection for an extended period, due to client timeout or network conditions. Make sure your HTTP client is configured to have a long enough connection timeout. If the connection breaks, you will not receive any information about the run and its status. To run the Task asynchronously, use the [Run task asynchronously](#/reference/actor-tasks/run-collection/run-task) endpoint instead.
- Actor tasks
- Run task synchronously and get dataset items
- Run a specific task and return its dataset items. The run must finish in 300<!-- MAX_ACTOR_JOB_SYNC_WAIT_SECS --> seconds otherwise the HTTP request fails with a timeout error (this won't abort the run itself). You can send all the same options in parameters as the [Get Dataset Items](#/reference/datasets/item-collection/get-items) API endpoint. Beware that it might be impossible to maintain an idle HTTP connection for an extended period, due to client timeout or network conditions. Make sure your HTTP client is configured to have a long enough connection timeout. If the connection breaks, you will not receive any information about the run and its status. To run the Task asynchronously, use the [Run task asynchronously](#/reference/actor-tasks/run-collection/run-task) endpoint instead.
- Actor tasks
- Run task synchronously and get dataset items
- Runs an Actor task and synchronously returns its dataset items. The run must finish in 300<!-- MAX_ACTOR_JOB_SYNC_WAIT_SECS --> seconds otherwise the HTTP request fails with a timeout error (this won't abort the run itself). Optionally, you can override the Actor input configuration by passing a JSON object as the POST payload and setting the `Content-Type: application/json` HTTP header. Note that if the object in the POST payload does not define a particular input property, the Actor run uses the default value defined by the task (or the Actor's input schema if not defined by the task). You can send all the same options in parameters as the [Get Dataset Items](#/reference/datasets/item-collection/get-items) API endpoint. Beware that it might be impossible to maintain an idle HTTP connection for an extended period, due to client timeout or network conditions. Make sure your HTTP client is configured to have a long enough connection timeout. If the connection breaks, you will not receive any information about the run and its status. Input fields from Actor task configuration can be overloaded with values passed as the POST payload. Just make sure to specify the `Content-Type` header as `application/json` and that the input is an object. To run the task asynchronously, use the [Run task](#/reference/actor-tasks/run-collection/run-task) API endpoint instead.
- Actor tasks
- Run task synchronously
- Runs an Actor task and synchronously returns a key-value store record. The response contains the record stored under the `OUTPUT` key in the run's default key-value store. This is a legacy approach that has been replaced by the Actor [output object](https://docs.apify.com/platform/actors/development/actor-definition/output-schema#output-object-definition); Actors aren't required to store a record under this key, so the response may not contain any data. Use the `outputRecordKey` query parameter to return a different record. The run must finish in 300<!-- MAX_ACTOR_JOB_SYNC_WAIT_SECS --> seconds otherwise the HTTP request fails with a timeout error (this won't abort the run itself). Optionally, you can override the Actor input configuration by passing a JSON object as the POST payload and setting the `Content-Type: application/json` HTTP header. Note that if the object in the POST payload does not define a particular input property, the Actor run uses the default value defined by the task (or Actor's input schema if not defined by the task). Beware that it might be impossible to maintain an idle HTTP connection for an extended period, due to client timeout or network conditions. Make sure your HTTP client is configured to have a long enough connection timeout. If the connection breaks, you will not receive any information about the run and its status. Input fields from Actor task configuration can be overloaded with values passed as the POST payload. Just make sure to specify `Content-Type` header to be `application/json` and input to be an object. To run the task asynchronously, use the [Run task](#/reference/actor-tasks/run-collection/run-task) API endpoint instead.
- Actor tasks
- Get list of task runs
- Get a list of runs of a specific task. The response is a list of objects, where each object contains essential information about a single task run. The endpoint supports pagination using the `limit` and `offset` parameters, and it does not return more than a 1000 array elements. By default, the records are sorted by the `startedAt` field in ascending order; therefore you can use pagination to incrementally fetch all records while new ones are still being created. To sort the records in descending order, use the `desc=1` parameter. You can also filter runs by status ([available statuses](https://docs.apify.com/platform/actors/running/runs-and-builds#lifecycle)).
- Actor tasks
- Abort Actor task's last run
- Aborts the last run of the specified Actor task and returns an object that contains all the details about the run. This endpoint is a shortcut for [Abort run](#/reference/actor-runs/abort-run/abort-run) on the Actor task's last run. Only runs that are starting or running are aborted. For runs with status `FINISHED`, `FAILED`, `ABORTING` and `TIMED-OUT` this call does nothing.
- Last Actor task run's abort
- Delete last task run's default dataset
- Deletes the default dataset associated with the last Actor task run. This endpoint is a shortcut for getting the last task run's `defaultDatasetId` and then using the [Delete dataset](/api/v2/dataset-delete) endpoint.
- Last Actor task run's default dataset
- Get last task run's default dataset
- Returns the default dataset associated with the last Actor task run. This endpoint is a shortcut for getting the last task run's `defaultDatasetId` and then using the [Get dataset](/api/v2/dataset-get) endpoint.
- Last Actor task run's default dataset
- Get last task run's dataset items
- Returns data stored in the default dataset of the last Actor task run in the desired format. This endpoint is a shortcut that resolves the last task run's `defaultDatasetId` and proxies to the [Get dataset items](/api/v2/dataset-items-get) endpoint.
- Last Actor task run's default dataset
- Store items in last task run's dataset
- Appends an item or an array of items to the end of the last Actor task run's default dataset. This endpoint is a shortcut that resolves the last task run's `defaultDatasetId` and proxies to the [Store items](/api/v2/dataset-items-post) endpoint.
- Last Actor task run's default dataset
- Update last task run's default dataset
- Updates the default dataset associated with the last Actor task run. This endpoint is a shortcut for getting the last task run's `defaultDatasetId` and then using the [Update dataset](/api/v2/dataset-put) endpoint.
- Last Actor task run's default dataset
- Get last task run's dataset statistics
- Returns statistics for the last Actor task run's default dataset. This endpoint is a shortcut that resolves the last task run's `defaultDatasetId` and proxies to the [Get dataset statistics](/api/v2/dataset-statistics-get) endpoint.
- Last Actor task run's default dataset
- Get last run
- This is not a single endpoint, but an entire group of endpoints that lets you to retrieve and manage the last run of given actor task or any of its default storages. All the endpoints require an authentication token. The base path represents the last actor task run object is: `/v2/actor-tasks/{actorTaskId}/runs/last{?token,status,origin}` Using the `status` query parameter you can ensure to only get a run with a certain status (e.g. `status=SUCCEEDED`). Similarly, the `origin` query parameter filters runs by the means by which they were started (e.g. `origin=API`). The output of this endpoint and other query parameters are the same as in the [Run object](/api/v2/actor-run-get) endpoint. ##### Convenience endpoints for last Actor task run * [Dataset](/api/v2/last-actor-task-runs-default-dataset) * [Key-value store](/api/v2/last-actor-task-runs-default-key-value-store) * [Request queue](/api/v2/last-actor-task-runs-default-request-queue) * [Log](/api/v2/last-actor-task-runs-log)
- Actor tasks
- Delete last task run's default store
- Deletes the default key-value store of the last Actor task run. This endpoint is a shortcut for getting the last task run's `defaultKeyValueStoreId` and then using the [Delete store](/api/v2/key-value-store-delete) endpoint.
- Last Actor task run's default key-value store
- Get last task run's default store
- Gets an object that contains all the details about the default key-value store of the last Actor task run. This endpoint is a shortcut for getting the last task run's `defaultKeyValueStoreId` and then using the [Get store](/api/v2/key-value-store-get) endpoint.
- Last Actor task run's default key-value store
- Get last task run's default store's list of keys
- Returns a list of keys for the default key-value store of the last Actor task run. This endpoint is a shortcut for getting the last task run's `defaultKeyValueStoreId` and then using the [Get list of keys](/api/v2/key-value-store-keys-get) endpoint.
- Last Actor task run's default key-value store
- Update last task run's default store
- Updates the default key-value store associated with the last Actor task run. This endpoint is a shortcut for getting the last task run's `defaultKeyValueStoreId` and then using the [Update store](/api/v2/key-value-store-put) endpoint.
- Last Actor task run's default key-value store
- Delete last task run's default store's record
- Removes a record specified by a key from the default key-value store of the last Actor task run. This endpoint is a shortcut for getting the last task run's `defaultKeyValueStoreId` and then using the [Delete record](/api/v2/key-value-store-record-delete) endpoint.
- Last Actor task run's default key-value store
- Get last task run's default store's record
- Gets a value stored under a specific key in the default key-value store of the last Actor task run. This endpoint is a shortcut for getting the last task run's `defaultKeyValueStoreId` and then using the [Get record](/api/v2/key-value-store-record-get) endpoint.
- Last Actor task run's default key-value store
- Store record in last task run's default store (POST)
- Stores a value under a specific key in the default key-value store of the last Actor task run. This endpoint is a shortcut for getting the last task run's `defaultKeyValueStoreId` and then using the [Store record](/api/v2/key-value-store-record-post) endpoint.
- Last Actor task run's default key-value store
- Store record in last task run's default store
- Stores a value under a specific key in the default key-value store of the last Actor task run. This endpoint is a shortcut for getting the last task run's `defaultKeyValueStoreId` and then using the [Store record](/api/v2/key-value-store-record-put) endpoint.
- Last Actor task run's default key-value store
- Download last task run's default store's records
- Downloads all records from the default key-value store of the last Actor task run as a ZIP archive. This endpoint is a shortcut for getting the last task run's `defaultKeyValueStoreId` and then using the [Download records](/api/v2/key-value-store-records-get) endpoint.
- Last Actor task run's default key-value store
- Metamorph Actor task's last run
- Transforms the last run of the specified Actor task into a run of another Actor with a new input. This endpoint is a shortcut for [Metamorph run](#/reference/actor-runs/metamorph-run/metamorph-run) on the Actor task's last run.
- Last Actor task run's metamorph
- Reboot Actor task's last run
- Reboots the last run of the specified Actor task and returns an object that contains all the details about the rebooted run. This endpoint is a shortcut for [Reboot run](#/reference/actor-runs/reboot-run/reboot-run) on the Actor task's last run. Only runs with status `RUNNING` can be rebooted. The run's container will be restarted, so any data not persisted in the key-value store, dataset, or request queue will be lost.
- Last Actor task run's reboot
- Delete last task run's default request queue
- Deletes the default request queue associated with the last Actor task run. This endpoint is a shortcut for getting the last task run's `defaultRequestQueueId` and then using the [Delete request queue](/api/v2/request-queue-delete) endpoint.
- Last Actor task run's default request queue
- Get last task run's default request queue
- Returns the default request queue associated with the last Actor task run. This endpoint is a shortcut for getting the last task run's `defaultRequestQueueId` and then using the [Get request queue](/api/v2/request-queue-get) endpoint.
- Last Actor task run's default request queue
- Get last task run's default request queue head
- Returns the given number of first requests from the default request queue of the last Actor task run. This endpoint is a shortcut for getting the last task run's `defaultRequestQueueId` and then using the [Get head](/api/v2/request-queue-head-get) endpoint.
- Last Actor task run's default request queue
- Get and lock last task run's default request queue head
- Returns the given number of first requests from the default request queue of the last Actor task run and locks them for the given time. This endpoint is a shortcut for getting the last task run's `defaultRequestQueueId` and then using the [Get head and lock](/api/v2/request-queue-head-lock-post) endpoint.
- Last Actor task run's default request queue
- Update last task run's default request queue
- Updates the default request queue associated with the last Actor task run. This endpoint is a shortcut for getting the last task run's `defaultRequestQueueId` and then using the [Update request queue](/api/v2/request-queue-put) endpoint.
- Last Actor task run's default request queue
- Delete request from last task run's default request queue
- Deletes a request from the default request queue of the last Actor task run. This endpoint is a shortcut for getting the last task run's `defaultRequestQueueId` and then using the [Delete request](/api/v2/request-queue-request-delete) endpoint.
- Last Actor task run's default request queue
- Get request from last task run's default request queue
- Returns a request from the default request queue of the last Actor task run. This endpoint is a shortcut for getting the last task run's `defaultRequestQueueId` and then using the [Get request](/api/v2/request-queue-request-get) endpoint.
- Last Actor task run's default request queue
- Delete lock on request in last task run's default request queue
- Deletes a request lock in the default request queue of the last Actor task run. This endpoint is a shortcut for getting the last task run's `defaultRequestQueueId` and then using the [Delete request lock](/api/v2/request-queue-request-lock-delete) endpoint.
- Last Actor task run's default request queue
- Prolong lock on request in last task run's default request queue
- Prolongs a request lock in the default request queue of the last Actor task run. This endpoint is a shortcut for getting the last task run's `defaultRequestQueueId` and then using the [Prolong request lock](/api/v2/request-queue-request-lock-put) endpoint.
- Last Actor task run's default request queue
- Update request in last task run's default request queue
- Updates a request in the default request queue of the last Actor task run. This endpoint is a shortcut for getting the last task run's `defaultRequestQueueId` and then using the [Update request](/api/v2/request-queue-request-put) endpoint.
- Last Actor task run's default request queue
- Batch delete requests from last task run's default request queue
- Batch-deletes requests from the default request queue of the last Actor task run. This endpoint is a shortcut for getting the last task run's `defaultRequestQueueId` and then using the [Delete requests](/api/v2/request-queue-requests-batch-delete) endpoint.
- Last Actor task run's default request queue
- Batch add requests to last task run's default request queue
- Adds requests to the default request queue of the last Actor task run in batch. This endpoint is a shortcut for getting the last task run's `defaultRequestQueueId` and then using the [Add requests](/api/v2/request-queue-requests-batch-post) endpoint.
- Last Actor task run's default request queue
- List last task run's default request queue's requests
- Returns a list of requests from the default request queue of the last Actor task run. This endpoint is a shortcut for getting the last task run's `defaultRequestQueueId` and then using the [List requests](/api/v2/request-queue-requests-get) endpoint.
- Last Actor task run's default request queue
- Add request to last task run's default request queue
- Adds a request to the default request queue of the last Actor task run. This endpoint is a shortcut for getting the last task run's `defaultRequestQueueId` and then using the [Add request](/api/v2/request-queue-requests-post) endpoint.
- Last Actor task run's default request queue
- Unlock requests in last task run's default request queue
- Unlocks requests in the default request queue of the last Actor task run that are currently locked by the client. This endpoint is a shortcut for getting the last task run's `defaultRequestQueueId` and then using the [Unlock requests](/api/v2/request-queue-requests-unlock-post) endpoint.
- Last Actor task run's default request queue
- Run task
- Runs an Actor task and immediately returns without waiting for the run to finish. Optionally, you can override the Actor input configuration by passing a JSON object as the POST payload and setting the `Content-Type: application/json` HTTP header. Note that if the object in the POST payload does not define a particular input property, the Actor run uses the default value defined by the task (or Actor's input schema if not defined by the task). The response is the Actor Run object as returned by the [Get run](#/reference/actor-runs/run-object-and-its-storages/get-run) endpoint. If you want to wait for the run to finish and receive the actual output of the Actor run as the response, use one of the [Run task synchronously](#/reference/actor-tasks/run-task-synchronously) API endpoints instead. To fetch the Actor run results that are typically stored in the default dataset, you'll need to pass the ID received in the `defaultDatasetId` field received in the response JSON to the [Get dataset items](#/reference/datasets/item-collection/get-items) API endpoint.
- Actor tasks
- Get list of webhooks
- Gets the list of webhooks of a specific Actor task. The response is a JSON with the list of objects, where each object contains basic information about a single webhook. The endpoint supports pagination using the `limit` and `offset` parameters and it will not return more than 1000 records. By default, the records are sorted by the `createdAt` field in ascending order, to sort the records in descending order, use the `desc=1` parameter.
- Actor tasks
- Get list of tasks
- Gets the complete list of tasks that a user has created or used. The response is a list of objects in which each object contains essential information about a single task. The endpoint supports pagination using the `limit` and `offset` parameters, and it does not return more than a 1000 records. By default, the records are sorted by the `createdAt` field in ascending order; therefore you can use pagination to incrementally fetch all tasks while new ones are still being created. To sort the records in descending order, use the `desc=1` parameter.
- Actor tasks
- Create task
- Create a new task with settings specified by the object passed as JSON in the POST payload. The response is the full task object as returned by the [Get task](/api/v2/actor-task-get) endpoint. The request needs to specify the `Content-Type: application/json` HTTP header! When providing your API authentication token, we recommend using the request's `Authorization` header, rather than the URL.
- Actor tasks
- Get list of Actors
- Gets the list of all Actors that the user created or used. The response is a list of objects, where each object contains a basic information about a single Actor. To only get Actors created by the user, add the `my=1` query parameter. The endpoint supports pagination using the `limit` and `offset` parameters and it will not return more than 1000 records. By default, the records are sorted by the `createdAt` field in ascending order, therefore you can use pagination to incrementally fetch all Actors while new ones are still being created. To sort the records in descending order, use the `desc=1` parameter. You can also sort by your last run by using the `sortBy=stats.lastRunStartedAt` query parameter. In this case, descending order means the most recently run Actor appears first.
- Actors
- Create Actor
- Creates an Actor with the settings specified in an `Actor` object passed as JSON in the POST payload. Returns the full `Actor` object, the same as the [Get Actor](/api/v2/act-get) endpoint. In the HTTP request, set the `Content-Type` header to `application/json`. ### Define a source code version An Actor must specify at least one version of the source code. For details, see [Actor versions](/api/v2/actors-actor-versions). ### Create a public Actor To make your Actor [public](https://docs.apify.com/platform/actors/publishing): - Set `isPublic` to `true`. - Provide `title` and `categories`. For reference, see [constants from the `apify-shared-js` package](https://github.com/apify/apify-shared-js/blob/2d43ebc41ece9ad31cd6525bd523fb86939bf860/packages/consts/src/consts.ts#L452-L471)
- Actors
- Delete dataset
- Deletes a specific dataset.
- Storage/Datasets
- Get dataset
- Returns dataset object for given dataset ID. This does not return dataset items, only information about the storage itself. To retrieve dataset items, use the [List dataset items](/api/v2/dataset-items-get) endpoint. :::note Keep in mind that attributes `itemCount` and `cleanItemCount` are not propagated right away after data are pushed into a dataset. ::: There is a short period (up to 5 seconds) during which these counters may not match with exact counts in dataset items.
- Storage/Datasets
- Get dataset items
- Returns data stored in the dataset in a desired format. ### Response format The format of the response depends on <code>format</code> query parameter. The <code>format</code> parameter can have one of the following values: <code>json</code>, <code>jsonl</code>, <code>xml</code>, <code>html</code>, <code>csv</code>, <code>xlsx</code> and <code>rss</code>. The following table describes how each format is treated. <table> <tr> <th>Format</th> <th>Items</th> </tr> <tr> <td><code>json</code></td> <td rowspan="3">The response is a JSON, JSONL or XML array of raw item objects.</td> </tr> <tr> <td><code>jsonl</code></td> </tr> <tr> <td><code>xml</code></td> </tr> <tr> <td><code>html</code></td> <td rowspan="3">The response is a HTML, CSV or XLSX table, where columns correspond to the properties of the item and rows correspond to each dataset item.</td> </tr> <tr> <td><code>csv</code></td> </tr> <tr> <td><code>xlsx</code></td> </tr> <tr> <td><code>rss</code></td> <td colspan="2">The response is a RSS file. Each item is displayed as child elements of one <code><item></code>.</td> </tr> </table> Note that CSV, XLSX and HTML tables are limited to 2000 columns and the column names cannot be longer than 200 characters. JSON, XML and RSS formats do not have such restrictions. ### Hidden fields The top-level fields starting with the `#` character are considered hidden. These are useful to store debugging information and can be omitted from the output by providing the `skipHidden=1` or `clean=1` query parameters. For example, if you store the following object to the dataset: ``` { productName: "iPhone Xs", description: "Welcome to the big screens." #debug: { url: "https://www.apple.com/lae/iphone-xs/", crawledAt: "2019-01-21T16:06:03.683Z" } } ``` The `#debug` field will be considered as hidden and can be omitted from the results. This is useful to provide nice cleaned data to end users, while keeping debugging info available if needed. The Dataset object returned by the API contains the number of such clean items in the`dataset.cleanItemCount` property. ### XML format extension When exporting results to XML or RSS formats, the names of object properties become XML tags and the corresponding values become tag's children. For example, the following JavaScript object: ``` { name: "Paul Newman", address: [ { type: "home", street: "21st", city: "Chicago" }, { type: "office", street: null, city: null } ] } ``` will be transformed to the following XML snippet: ``` <name>Paul Newman</name> <address> <type>home</type> <street>21st</street> <city>Chicago</city> </address> <address> <type>office</type> <street/> <city/> </address> ``` If the JavaScript object contains a property named `@` then its sub-properties are exported as attributes of the parent XML element. If the parent XML element does not have any child elements then its value is taken from a JavaScript object property named `#`. For example, the following JavaScript object: ``` { "address": [{ "@": { "type": "home" }, "street": "21st", "city": "Chicago" }, { "@": { "type": "office" }, "#": 'unknown' }] } ``` will be transformed to the following XML snippet: ``` <address type="home"> <street>21st</street> <city>Chicago</city> </address> <address type="office">unknown</address> ``` This feature is also useful to customize your RSS feeds generated for various websites. By default the whole result is wrapped in a `<items>` element and each page object is wrapped in a `<item>` element. You can change this using <code>xmlRoot</code> and <code>xmlRow</code> url parameters. ### Pagination The generated response supports [pagination](#/introduction/pagination). The pagination is always performed with the granularity of a single item, regardless whether <code>unwind</code> parameter was provided. By default, the **Items** in the response are sorted by the time they were stored to the database, therefore you can use pagination to incrementally fetch the items as they are being added. No limit exists to how many items can be returned in one response. If you specify `desc=1` query parameter, the results are returned in the reverse order than they were stored (i.e. from newest to oldest items). Note that only the order of **Items** is reversed, but not the order of the `unwind` array elements.
- Storage/Datasets
- Store items
- Appends an item or an array of items to the end of the dataset. The POST payload is a JSON object or a JSON array of objects to save into the dataset. If the data you attempt to store in the dataset is invalid (meaning any of the items received by the API fails the validation), the whole request is discarded and the API will return a response with status code 400. For more information about dataset schema validation, see [Dataset schema](https://docs.apify.com/platform/actors/development/actor-definition/dataset-schema/validation). **IMPORTANT:** The limit of request payload size for the dataset is 5 MB. If the array exceeds the size, you'll need to split it into a number of smaller arrays.
- Storage/Datasets
- Update dataset
- Updates a dataset's name and general resource access level using a value specified by a JSON object passed in the PUT payload. The response is the updated dataset object, as returned by the [Get dataset](/api/v2/dataset-get) API endpoint.
- Storage/Datasets
- Get dataset statistics
- Returns statistics for given dataset. Provides only [field statistics](https://docs.apify.com/platform/actors/development/actor-definition/dataset-schema/validation#dataset-field-statistics).
- Storage/Datasets
- Get list of datasets
- Lists all of a user's datasets. The response is a JSON array of objects, where each object contains basic information about one dataset. By default, the objects are sorted by the `createdAt` field in ascending order, therefore you can use pagination to incrementally fetch all datasets while new ones are still being created. To sort them in descending order, use `desc=1` parameter. The endpoint supports pagination using `limit` and `offset` parameters and it will not return more than 1000 array elements.
- Storage/Datasets
- Create dataset
- Creates a dataset and returns its object. Keep in mind that data stored under unnamed dataset follows [data retention period](https://docs.apify.com/platform/storage#data-retention). It creates a dataset with the given name if the parameter name is used. If a dataset with the given name already exists then returns its object.
- Storage/Datasets
- Delete store
- Deletes a key-value store.
- Storage/Key-value stores
- Get store
- Gets an object that contains all the details about a specific key-value store.
- Storage/Key-value stores
- Get list of keys
- Returns a list of objects describing keys of a given key-value store, as well as some information about the values (e.g. size). This endpoint is paginated using `exclusiveStartKey` and `limit` parameters - see [Pagination](/api/v2#using-key) for more details.
- Storage/Key-value stores
- Update store
- Updates a key-value store's name and general resource access level using a value specified by a JSON object passed in the PUT payload. The response is the updated key-value store object, as returned by the [Get store](#/reference/key-value-stores/store-object/get-store) API endpoint.
- Storage/Key-value stores
- Delete record
- Removes a record specified by a key from the key-value store.
- Storage/Key-value stores
- Get record
- Gets a value stored in the key-value store under a specific key. The response body has the same `Content-Encoding` header as it was set in [Put record](#tag/Key-value-storesRecord/operation/keyValueStore_record_put). If the request does not define the `Accept-Encoding` HTTP header with the right encoding, the record will be decompressed. Most HTTP clients support decompression by default. After using the HTTP client with decompression support, the `Accept-Encoding` header is set by the client and body is decompressed automatically. Please note that for security reasons, Apify API can perform small modifications to HTML documents before they are served via this endpoint. To fetch the raw HTML content without any modifications, use the `attachment` query parameter.
- Storage/Key-value stores
- Store record (POST)
- Stores a value under a specific key to the key-value store. This endpoint is an alias for the [`PUT` record](#tag/Key-value-storesRecord/operation/keyValueStore_record_put) method and behaves identically.
- Storage/Key-value stores
- Store record
- Stores a value under a specific key to the key-value store. The value is passed as the PUT payload and it is stored with a MIME content type defined by the `Content-Type` header and with encoding defined by the `Content-Encoding` header. To save bandwidth, storage, and speed up your upload, send the request payload compressed with Gzip compression and add the `Content-Encoding: gzip` header. It is possible to set up another compression type with `Content-Encoding` request header. Below is a list of supported `Content-Encoding` types. * Gzip compression: `Content-Encoding: gzip` * Deflate compression: `Content-Encoding: deflate` * Brotli compression: `Content-Encoding: br`
- Storage/Key-value stores
- Download records
- Downloads all records from the key-value store as a ZIP archive. Each record is stored as a separate file in the archive, with the filename equal to the record key. You can optionally filter the records by `collection` or `prefix` to download only a subset of the store.
- Storage/Key-value stores
- Get list of key-value stores
- Gets the list of key-value stores owned by the user. The response is a list of objects, where each objects contains a basic information about a single key-value store. The endpoint supports pagination using the `limit` and `offset` parameters and it will not return more than 1000 array elements. By default, the records are sorted by the `createdAt` field in ascending order, therefore you can use pagination to incrementally fetch all key-value stores while new ones are still being created. To sort the records in descending order, use the `desc=1` parameter.
- Storage/Key-value stores
- Create key-value store
- Creates a key-value store and returns its object. The response is the same object as returned by the [Get store](#/reference/key-value-stores/store-object/get-store) endpoint. Keep in mind that data stored under unnamed store follows [data retention period](https://docs.apify.com/platform/storage#data-retention). It creates a store with the given name if the parameter name is used. If there is another store with the same name, the endpoint does not create a new one and returns the existing object instead.
- Storage/Key-value stores
- Get log
- Retrieves logs for a specific Actor build or run.
- Logs
- Charge events in run
- Charge for events in the run of your [pay per event Actor](https://docs.apify.com/platform/actors/running/actors-in-store#pay-per-event). The event you are charging for must be one of the configured events in your Actor. If the Actor is not set up as pay per event, or if the event is not configured, the endpoint will return an error. The endpoint must be called from the Actor run itself, with the same API token that the run was started with. :::info Learn more about pay-per-event pricing For more details about pay-per-event (PPE) pricing, refer to our [PPE documentation](/actors/publishing/monetize/pay-per-event). :::
- Actor runs
- Resurrect run
- Resurrects a finished Actor run and returns an object that contains all the details about the resurrected run. Only finished runs, i.e. runs with status `FINISHED`, `FAILED`, `ABORTED` and `TIMED-OUT` can be resurrected. Run status will be updated to RUNNING and its container will be restarted with the same storages (the same behaviour as when the run gets migrated to the new server). For more information, see the [Actor docs](https://docs.apify.com/platform/actors/running/runs-and-builds#resurrection-of-finished-run).
- Actor runs
- Delete request queue
- Deletes given queue.
- Storage/Request queues
- Get request queue
- Returns queue object for given queue ID.
- Storage/Request queues
- Get head
- Returns given number of first requests from the queue. The response contains the `hadMultipleClients` boolean field which indicates that the queue was accessed by more than one client (with unique or empty `clientKey`). This field is used by [Apify SDK](https://sdk.apify.com) to determine whether the local cache is consistent with the request queue, and thus optimize performance of certain operations.
- Storage/Request queues/Requests locks
- Get head and lock
- Returns the given number of first requests from the queue and locks them for the given time. If this endpoint locks the request, no other client or run will be able to get and lock these requests. The response contains the `hadMultipleClients` boolean field which indicates that the queue was accessed by more than one client (with unique or empty `clientKey`).
- Storage/Request queues/Requests locks
- Update request queue
- Updates a request queue's name and general resource access level using a value specified by a JSON object passed in the PUT payload. The response is the updated request queue object, as returned by the [Get request queue](#/reference/request-queues/queue-collection/get-request-queue) API endpoint.
- Storage/Request queues
- Delete request
- Deletes given request from queue.
- Storage/Request queues/Requests
- Get request
- Returns request from queue.
- Storage/Request queues/Requests
- Delete request lock
- Deletes a request lock. The request lock can be deleted only by the client that has locked it using [Get and lock head operation](#/request-queue-head-lock-post). The clientKey identifier is used for locking and unlocking requests. You can delete or prolong the lock only for requests that were locked by the same client key or from the same Actor run.
- Storage/Request queues/Requests locks
- Prolong request lock
- Prolongs request lock. The request lock can be prolonged only by the client that has locked it using [Get and lock head operation](#/request-queue-head-lock-post). The clientKey identifier is used for locking and unlocking requests. You can delete or prolong the lock only for requests that were locked by the same client key or from the same Actor run.
- Storage/Request queues/Requests locks
- Update request
- Updates a request in a queue. Mark request as handled by setting `request.handledAt = new Date()`. If `handledAt` is set, the request will be removed from head of the queue (and unlocked, if applicable).
- Storage/Request queues/Requests
- Delete requests
- Batch-deletes given requests from the queue. The number of requests in a batch is limited to 25. The response contains an array of unprocessed and processed requests. If any delete operation fails because the request queue rate limit is exceeded or an internal failure occurs, the failed request is returned in the `unprocessedRequests` response parameter. You can re-send these delete requests. It is recommended to use an exponential backoff algorithm for these retries. Each request is identified by its ID or uniqueKey parameter. You can use either of them to identify the request.
- Storage/Request queues
- Add requests
- Adds requests to the queue in batch. The maximum requests in batch is limited to 25. The response contains an array of unprocessed and processed requests. If any add operation fails because the request queue rate limit is exceeded or an internal failure occurs, the failed request is returned in the unprocessedRequests response parameter. You can resend these requests to add. It is recommended to use an exponential backoff algorithm for these retries. If a request with the same `uniqueKey` was already present in the queue, then it returns an ID of the existing request.
- Storage/Request queues
- List requests
- Returns a list of requests. This endpoint is paginated using cursor (pagination by `exclusiveStartId` is deprecated) and limit parameters.
- Storage/Request queues/Requests
- Add request
- Adds request to the queue. Response contains ID of the request and info if request was already present in the queue or handled. If request with same `uniqueKey` was already present in the queue then returns an ID of existing request.
- Storage/Request queues/Requests
- Unlock requests
- Unlocks requests in the queue that are currently locked by the client. * If the client is within an Actor run, it unlocks all requests locked by that specific run plus all requests locked by the same clientKey. * If the client is outside of an Actor run, it unlocks all requests locked using the same clientKey.
- Storage/Request queues/Requests locks
- Get list of request queues
- Lists all of a user's request queues. The response is a JSON array of objects, where each object contains basic information about one queue. By default, the objects are sorted by the `createdAt` field in ascending order, therefore you can use pagination to incrementally fetch all queues while new ones are still being created. To sort them in descending order, use `desc=1` parameter. The endpoint supports pagination using `limit` and `offset` parameters and it will not return more than 1000 array elements.
- Storage/Request queues
- Create request queue
- Creates a request queue and returns its object. Keep in mind that requests stored under unnamed queue follows [data retention period](https://docs.apify.com/platform/storage#data-retention). It creates a queue of given name if the parameter name is used. If a queue with the given name already exists then the endpoint returns its object.
- Storage/Request queues
- Delete schedule
- Deletes a schedule.
- Schedules
- Get schedule
- Gets the schedule object with all details.
- Schedules
- Get schedule log
- Gets the schedule log as a JSON array containing information about up to a 1000 invocations of the schedule.
- Schedules
- Update schedule
- Updates a schedule using values specified by a schedule object passed as JSON in the POST payload. If the object does not define a specific property, its value will not be updated. The response is the full schedule object as returned by the [Get schedule](#/reference/schedules/schedule-object/get-schedule) endpoint. **The request needs to specify the `Content-Type: application/json` HTTP header!** When providing your API authentication token, we recommend using the request's `Authorization` header, rather than the URL. ([More info](#/introduction/authentication)).
- Schedules
- Get list of schedules
- Gets the list of schedules that the user created. The endpoint supports pagination using the `limit` and `offset` parameters. It will not return more than 1000 records. By default, the records are sorted by the `createdAt` field in ascending order. To sort the records in descending order, use the `desc=1` parameter.
- Schedules
- Create schedule
- Creates a new schedule with settings provided by the schedule object passed as JSON in the payload. The response is the created schedule object. The request needs to specify the `Content-Type: application/json` HTTP header! When providing your API authentication token, we recommend using the request's `Authorization` header, rather than the URL. ([More info](#/introduction/authentication)).
- Schedules
- Get list of Actors in Store
- Gets the list of public Actors in Apify Store. You can use `search` parameter to search Actors by string in title, name, description, username and readme. If you need detailed info about a specific Actor, use the [Get Actor](#/reference/actors/actor-object/get-actor) endpoint. The endpoint supports pagination using the `limit` and `offset` parameters. It will not return more than 1,000 records.
- Store
- Get browser info
- Returns information about the HTTP request, including the client IP address, country code, request headers, and body length. This endpoint is designed for proxy testing. It accepts any HTTP method so you can verify that your proxy correctly forwards requests of any type and that client IP addresses are anonymized.
- Tools
- Get browser info
- Returns information about the HTTP request, including the client IP address, country code, request headers, and body length. This endpoint is designed for proxy testing. It accepts any HTTP method so you can verify that your proxy correctly forwards requests of any type and that client IP addresses are anonymized.
- Tools
- Get browser info
- Returns information about the HTTP request, including the client IP address, country code, request headers, and body length. This endpoint is designed for proxy testing. It accepts any HTTP method so you can verify that your proxy correctly forwards requests of any type and that client IP addresses are anonymized.
- Tools
- Get browser info
- Returns information about the HTTP request, including the client IP address, country code, request headers, and body length. This endpoint is designed for proxy testing. It accepts any HTTP method so you can verify that your proxy correctly forwards requests of any type and that client IP addresses are anonymized.
- Tools
- Decode and verify object
- Decodes and verifies an encoded value previously created by the encode-and-sign endpoint. Returns the original decoded object along with information about the user who encoded it and whether that user is verified. **Important**: The request must specify the `Content-Type: application/json` HTTP header.
- Tools
- Encode and sign object
- Encodes and signs any JSON object. The encoded value includes a signature tied to the authenticated user's ID, which can later be verified using the decode-and-verify endpoint. **Important**: The request must specify the `Content-Type: application/json` HTTP header.
- Tools
- Get public user data
- Returns public information about a specific user account, similar to what can be seen on public profile pages (e.g. https://apify.com/apify). This operation requires no authentication token.
- Users
- Get private user data
- Returns information about the current user account, including both public and private information. The user account is identified by the provided authentication token. The fields `plan`, `email` and `profile` are omitted when this endpoint is accessed from Actor run.
- Users
- Get limits
- Returns a complete summary of your account's limits. It is the same information you will see on your account's [Limits page](https://console.apify.com/billing#/limits). The returned data includes the current usage cycle, a summary of your limits, and your current usage.
- Users
- Update limits
- Updates the account's limits manageable on your account's [Limits page](https://console.apify.com/billing#/limits). Specifically the: `maxMonthlyUsageUsd` and `dataRetentionDays` limits (see request body schema for more details).
- Users
- Get monthly usage
- Returns a complete summary of your usage for the current monthly usage cycle, an overall sum, as well as a daily breakdown of usage. It is the same information you will see on your account's [Billing > Historical usage page](https://console.apify.com/billing/historical-usage). The information includes your use of Actors, compute, data transfer, and storage. Using the `date` parameter will show your usage in the monthly usage cycle that includes that date.
- Users
- Delete webhook
- Deletes a webhook.
- Webhooks/Webhooks
- Get webhook dispatch
- Gets webhook dispatch object with all details.
- Webhooks/Webhook dispatches
- Get list of webhook dispatches
- Gets the list of webhook dispatches that the user have. The endpoint supports pagination using the `limit` and `offset` parameters and it will not return more than 1000 records. By default, the records are sorted by the `createdAt` field in ascending order. To sort the records in descending order, use the `desc=1` parameter.
- Webhooks/Webhook dispatches
- Get webhook
- Gets webhook object with all details.
- Webhooks/Webhooks
- Update webhook
- Updates a webhook using values specified by a webhook object passed as JSON in the POST payload. If the object does not define a specific property, its value will not be updated. The response is the full webhook object as returned by the [Get webhook](#/reference/webhooks/webhook-object/get-webhook) endpoint. The request needs to specify the `Content-Type: application/json` HTTP header! When providing your API authentication token, we recommend using the request's `Authorization` header, rather than the URL. ([More info](#/introduction/authentication)).
- Webhooks/Webhooks
- Test webhook
- Tests a webhook. Creates a webhook dispatch with a dummy payload.
- Webhooks/Webhooks
- Get collection
- Gets a given webhook's list of dispatches.
- Webhooks/Webhooks
- Get list of webhooks
- Gets the list of webhooks that the user created. The endpoint supports pagination using the `limit` and `offset` parameters and it will not return more than 1000 records. By default, the records are sorted by the `createdAt` field in ascending order. To sort the records in descending order, use the `desc=1` parameter.
- Webhooks/Webhooks
- Create webhook
- Creates a new webhook with settings provided by the webhook object passed as JSON in the payload. The response is the created webhook object. To avoid duplicating a webhook, use the `idempotencyKey` parameter in the request body. Multiple calls to create a webhook with the same `idempotencyKey` will only create the webhook with the first call and return the existing webhook on subsequent calls. Idempotency keys must be unique, so use a UUID or another random string with enough entropy. To assign the new webhook to an Actor or task, the request body must contain `requestUrl`, `eventTypes`, and `condition` properties. * `requestUrl` is the webhook's target URL, to which data is sent as a POST request with a JSON payload. * `eventTypes` is a list of events that will trigger the webhook, e.g. when the Actor run succeeds. * `condition` should be an object containing the ID of the Actor or task to which the webhook will be assigned. * `payloadTemplate` is a JSON-like string, whose syntax is extended with the use of variables. * `headersTemplate` is a JSON-like string, whose syntax is extended with the use of variables. Following values will be re-written to defaults: "host", "Content-Type", "X-Apify-Webhook", "X-Apify-Webhook-Dispatch-Id", "X-Apify-Request-Origin" * `description` is an optional string. * `shouldInterpolateStrings` is a boolean indicating whether to interpolate variables contained inside strings in the `payloadTemplate` ``` "isAdHoc" : false, "requestUrl" : "https://example.com", "eventTypes" : [ "ACTOR.RUN.SUCCEEDED", "ACTOR.RUN.ABORTED" ], "condition" : { "actorId": "5sTMwDQywwsLzKRRh", "actorTaskId" : "W9bs9JE9v7wprjAnJ" }, "payloadTemplate": "", "headersTemplate": "", "description": "my awesome webhook", "shouldInterpolateStrings": false, ``` **Important**: The request must specify the `Content-Type: application/json` HTTP header.
- Webhooks/Webhooks
Apify integration, answered
- How do AI agents use Apify through Open Connector?
- Your user connects Apify once with one of its cataloged authentication methods. Open Connector stores the credential in an encrypted vault and exposes Apify tools to your agent over MCP or a typed API, with credentials injected server-side on each call.
- Is this a Apify MCP server?
- Yes. Open Connector can serve Apify as a named MCP server with a scoped allowlist and a per-user connection URL, so any MCP client can call Apify actions with credentials injected server-side.
- Where do Apify credentials live?
- In your own infrastructure. Open Connector keeps credentials in its own vault and injects them at call time, so they never leave your environment.
Give your agents Apify — keep the keys.
Open source, self-hostable, with Apify credentials that never leave your infrastructure. Run it from source today.