@adactiveasia/apify-client
v0.0.4
Published
Apify API client for JavaScript
Downloads
11
Maintainers
Readme
fork from apify client for javascript fixing error on build
Apify API client for JavaScript
apify-client
is the official library to access Apify API from your
JavaScript applications. It runs both in Node.js and browser and provides useful features like
automatic retries and convenience functions that improve the experience of using the Apify API.
Quick Start
const ApifyClient = require('apify-client');
const client = new ApifyClient({
token: 'MY-APIFY-TOKEN',
});
// Starts an actor and waits for it to finish.
const { defaultDatasetId } = await client.actor('john-doe/my-cool-actor').call();
// Fetches results from the actor's dataset.
const { items } = await client.dataset(defaultDatasetId).listItems();
Features
Besides greatly simplifying the process of querying the Apify API, the client provides other useful features.
Automatic parsing and error handling
Based on the endpoint, the client automatically extracts the relevant data and returns it in the
expected format. Date strings are automatically converted to Date
objects. For exceptions,
we throw an ApifyApiError
, which wraps the plain JSON errors returned by API and enriches
them with other context for easier debugging.
Retries with exponential backoff
Network communication sometimes fails, that's a given. The client will automatically retry requests that
failed due to a network error, an internal error of the Apify API (HTTP 500+) or rate limit error (HTTP 429).
By default, it will retry up to 8 times. First retry will be attempted after ~500ms, second after ~1000ms
and so on. You can configure those parameters using the maxRetries
and minDelayBetweenRetriesMillis
options of the ApifyClient
constructor.
Convenience functions and options
Some actions can't be performed by the API itself, such as indefinite waiting for an actor run to finish
(because of network timeouts). The client provides convenient call()
and waitForFinish()
functions that do that.
Key-value store records can be retrieved as objects, buffers or streams via the respective options, dataset items
can be fetched as individual objects or serialized data and we plan to add better stream support and async iterators.
Usage concepts
The ApifyClient
interface follows a generic pattern that is applicable to all of its components.
By calling individual methods of ApifyClient
, specific clients which target individual API
resources are created. There are two types of those clients. A client for management of a single
resource and a client for a collection of resources.
const ApifyClient = require('apify-client');
const apifyClient = new ApifyClient({ token: 'my-token' });
// Collection clients do not require a parameter.
const actorCollectionClient = apifyClient.actors();
// Creates an actor with the name: my-actor.
const myActor = await actorCollectionClient.create({ name: 'my-actor' });
// Lists all of your actors.
const { items } = await actorCollectionClient.list();
// Collection clients do not require a parameter.
const datasetCollectionClient = apifyClient.datasets();
// Gets (or creates, if it doesn't exist) a dataset with the name of my-dataset.
const myDataset = await datasetCollectionClient.getOrCreate('my-dataset');
// Resource clients accept an ID of the resource.
const actorClient = apifyClient.actor('john-doe/my-actor');
// Fetches the john-doe/my-actor object from the API.
const myActor = await actorClient.get();
// Starts the run of john-doe/my-actor and returns the Run object.
const myActorRun = await actorClient.start();
// Resource clients accept an ID of the resource.
const datasetClient = apifyClient.dataset('john-doe/my-dataset');
// Appends items to the end of john-doe/my-dataset.
await datasetClient.pushItems([{ foo: 1 }, { bar: 2 }]);
The ID of the resource can be either the
id
of the said resource, or a combination of yourusername/resource-name
.
This is really all you need to remember, because all resource clients follow the pattern you see above.
Nested clients
Sometimes clients return other clients. That's to simplify working with nested collections, such as runs of a given actor.
const actorClient = apifyClient.actor('john-doe/hello-world');
const runsClient = actorClient.runs();
// Lists the last 10 runs of the john-doe/hello-world actor.
const { items } = await runsClient.list({ limit: 10, desc: true })
// Selects the last run of the john-doe/hello-world actor that finished
// with a SUCCEEDED status.
const lastSucceededRunClient = actorClient.lastRun({ status: 'SUCCEEDED' });
// Fetches items from the run's dataset.
const { items } = await lastSucceededRunClient.dataset().listItems();
The quick access to
dataset
and other storages directly from the run client can now only be used with thelastRun()
method, but the feature will be available to all runs in the future.
Pagination
Most methods named list
or listSomething
return a Promise.<PaginationList>.
There are some exceptions though, like listKeys
or listHead
which paginate differently.
The results you're looking for are always stored under items
and you can use the limit
property to get only a subset of results. Other props are also available, depending on the method.
API Reference
All public classes, methods and their parameters can be inspected in this API reference.
ApifyClient
ApifyClient is the official library to access Apify API from your JavaScript applications. It runs both in Node.js and browser.
- ApifyClient
new ApifyClient([options])
.actors()
⇒ ActorCollectionClient.actor(id)
⇒ ActorClient.build(id)
⇒ BuildClient.datasets()
⇒ DatasetCollectionClient.dataset(id)
⇒ DatasetClient.keyValueStores()
⇒ KeyValueStoreCollectionClient.keyValueStore(id)
⇒ KeyValueStoreClient.log(buildOrRunId)
⇒ LogClient.requestQueues()
⇒ RequestQueueCollection.requestQueue(id, [options])
⇒ RequestQueueClient.run(id)
⇒ RunClient.tasks()
⇒ TaskCollectionClient.task(id)
⇒ TaskClient.schedules()
⇒ ScheduleCollectionClient.schedule(id)
⇒ ScheduleClient.user(id)
⇒ UserClient.webhooks()
⇒ WebhookCollectionClient.webhook(id)
⇒ WebhookClient.webhookDispatches()
⇒ WebhookDispatchCollectionClient.webhookDispatch(id)
⇒ WebhookDispatchClient
new ApifyClient([options])
| Param | Type | Default | | --- | --- | --- | | [options] | object | | | [options.baseUrl] | string | "https://api.apify.com" | | [options.maxRetries] | number | 8 | | [options.minDelayBetweenRetriesMillis] | number | 500 | | [options.requestInterceptors] | Array.<function()> | | | [options.timeoutSecs] | number | | | [options.token] | string | |
apifyClient.actors()
⇒ ActorCollectionClient
https://docs.apify.com/api/v2#/reference/actors/actor-collection
apifyClient.actor(id)
⇒ ActorClient
https://docs.apify.com/api/v2#/reference/actors/actor-object
| Param | Type | | --- | --- | | id | string |
apifyClient.build(id)
⇒ BuildClient
https://docs.apify.com/api/v2#/reference/actor-builds/build-object
| Param | Type | | --- | --- | | id | string |
apifyClient.datasets()
⇒ DatasetCollectionClient
https://docs.apify.com/api/v2#/reference/datasets/dataset-collection
apifyClient.dataset(id)
⇒ DatasetClient
https://docs.apify.com/api/v2#/reference/datasets/dataset
| Param | Type | | --- | --- | | id | string |
apifyClient.keyValueStores()
⇒ KeyValueStoreCollectionClient
https://docs.apify.com/api/v2#/reference/key-value-stores/store-collection
apifyClient.keyValueStore(id)
⇒ KeyValueStoreClient
https://docs.apify.com/api/v2#/reference/key-value-stores/store-object
| Param | Type | | --- | --- | | id | string |
apifyClient.log(buildOrRunId)
⇒ LogClient
https://docs.apify.com/api/v2#/reference/logs
| Param | Type | | --- | --- | | buildOrRunId | string |
apifyClient.requestQueues()
⇒ RequestQueueCollection
https://docs.apify.com/api/v2#/reference/request-queues/queue-collection
apifyClient.requestQueue(id, [options])
⇒ RequestQueueClient
https://docs.apify.com/api/v2#/reference/request-queues/queue
| Param | Type | | --- | --- | | id | string | | [options] | object | | [options.clientKey] | object |
apifyClient.run(id)
⇒ RunClient
https://docs.apify.com/api/v2#/reference/actor-runs/run-object-and-its-storages
| Param | Type | | --- | --- | | id | string |
apifyClient.tasks()
⇒ TaskCollectionClient
https://docs.apify.com/api/v2#/reference/actor-tasks/task-collection
apifyClient.task(id)
⇒ TaskClient
https://docs.apify.com/api/v2#/reference/actor-tasks/task-object
| Param | Type | | --- | --- | | id | string |
apifyClient.schedules()
⇒ ScheduleCollectionClient
https://docs.apify.com/api/v2#/reference/schedules/schedules-collection
apifyClient.schedule(id)
⇒ ScheduleClient
https://docs.apify.com/api/v2#/reference/schedules/schedule-object
| Param | Type | | --- | --- | | id | string |
apifyClient.user(id)
⇒ UserClient
https://docs.apify.com/api/v2#/reference/users
| Param | Type | | --- | --- | | id | string |
apifyClient.webhooks()
⇒ WebhookCollectionClient
https://docs.apify.com/api/v2#/reference/webhooks/webhook-collection
apifyClient.webhook(id)
⇒ WebhookClient
https://docs.apify.com/api/v2#/reference/webhooks/webhook-object
| Param | Type | | --- | --- | | id | string |
apifyClient.webhookDispatches()
⇒ WebhookDispatchCollectionClient
https://docs.apify.com/api/v2#/reference/webhook-dispatches
apifyClient.webhookDispatch(id)
⇒ WebhookDispatchClient
https://docs.apify.com/api/v2#/reference/webhook-dispatches/webhook-dispatch-object
| Param | Type | | --- | --- | | id | string |
ApifyApiError
An ApifyApiError
is thrown for successful HTTP requests that reach the API,
but the API responds with an error response. Typically, those are rate limit
errors and internal errors, which are automatically retried, or validation
errors, which are thrown immediately, because a correction by the user is
needed.
Properties
| Name | Type | Description | | --- | --- | --- | | message | string | Error message returned by the API. | | clientMethod | string | The invoked resource client and the method. Known issue: Sometimes it displays as undefined because it can't be parsed from a stack trace. | | statusCode | number | HTTP status code of the error. | | type | string | The type of the error, as returned by the API. | | attempt | number | Number of the API call attempt. | | httpMethod | string | HTTP method of the API call. | | path | string | Full path of the API endpoint (URL excluding origin). | | originalStack | string | Original stack trace of the exception. It is replaced by a more informative stack with API call information. |
ActorClient
- ActorClient
.build(versionNumber, [options])
⇒ Promise.<Build>.builds()
⇒ BuildCollectionClient.call([input], [options])
⇒ Promise.<Run>.delete()
⇒ Promise.<void>.get()
⇒ Promise.<?Actor>.lastRun([options])
⇒ RunClient.runs()
⇒ RunCollectionClient.start([input], [options])
⇒ Promise.<Run>.update(newFields)
⇒ Promise.<Actor>.version(versionNumber)
⇒ ActorVersionClient.versions()
⇒ ActorVersionCollectionClient.webhooks()
⇒ WebhookCollectionClient
actorClient.build(versionNumber, [options])
⇒ Promise.<Build>
https://docs.apify.com/api/v2#/reference/actors/build-collection/build-actor
| Param | Type | | --- | --- | | versionNumber | string | | [options] | object | | [options.betaPackages] | boolean | | [options.tag] | string | | [options.useCache] | boolean | | [options.waitForFinish] | number |
actorClient.builds()
⇒ BuildCollectionClient
https://docs.apify.com/api/v2#/reference/actors/build-collection
actorClient.call([input], [options])
⇒ Promise.<Run>
Starts an actor and waits for it to finish before returning the Run object.
It waits indefinitely, unless the waitSecs
option is provided.
https://docs.apify.com/api/v2#/reference/actors/run-collection/run-actor
| Param | Type | | --- | --- | | [input] | * | | [options] | object | | [options.build] | string | | [options.contentType] | string | | [options.memory] | number | | [options.timeout] | number | | [options.waitSecs] | number | | [options.webhooks] | Array.<object> |
actorClient.delete()
⇒ Promise.<void>
https://docs.apify.com/api/v2#/reference/actors/actor-object/delete-actor
actorClient.get()
⇒ Promise.<?Actor>
https://docs.apify.com/api/v2#/reference/actors/actor-object/get-actor
actorClient.lastRun([options])
⇒ RunClient
https://docs.apify.com/api/v2#/reference/actors/last-run-object-and-its-storages
| Param | Type | | --- | --- | | [options] | object | | [options.status] | string |
actorClient.runs()
⇒ RunCollectionClient
https://docs.apify.com/api/v2#/reference/actors/run-collection
actorClient.start([input], [options])
⇒ Promise.<Run>
Starts an actor and immediately returns the Run object. https://docs.apify.com/api/v2#/reference/actors/run-collection/run-actor
| Param | Type | | --- | --- | | [input] | * | | [options] | object | | [options.build] | string | | [options.contentType] | string | | [options.memory] | number | | [options.timeout] | number | | [options.waitForFinish] | number | | [options.webhooks] | Array.<object> |
actorClient.update(newFields)
⇒ Promise.<Actor>
https://docs.apify.com/api/v2#/reference/actors/actor-object/update-actor
| Param | Type | | --- | --- | | newFields | object |
actorClient.version(versionNumber)
⇒ ActorVersionClient
https://docs.apify.com/api/v2#/reference/actors/version-object
| Param | Type | | --- | --- | | versionNumber | string |
actorClient.versions()
⇒ ActorVersionCollectionClient
https://docs.apify.com/api/v2#/reference/actors/version-collection
actorClient.webhooks()
⇒ WebhookCollectionClient
https://docs.apify.com/api/v2#/reference/actors/webhook-collection
ActorCollectionClient
- ActorCollectionClient
.create([actor])
⇒ Promise.<Actor>.list([options])
⇒ Promise.<PaginationList>
actorCollectionClient.create([actor])
⇒ Promise.<Actor>
https://docs.apify.com/api/v2#/reference/actors/actor-collection/create-actor
| Param | Type | | --- | --- | | [actor] | object |
actorCollectionClient.list([options])
⇒ Promise.<PaginationList>
https://docs.apify.com/api/v2#/reference/actors/actor-collection/get-list-of-actors
| Param | Type | | --- | --- | | [options] | object | | [options.my] | boolean | | [options.limit] | number | | [options.offset] | number | | [options.desc] | boolean |
ActorVersionClient
- ActorVersionClient
.delete()
⇒ Promise.<void>.get()
⇒ Promise.<ActorVersion>.update(newFields)
⇒ Promise.<ActorVersion>
actorVersionClient.delete()
⇒ Promise.<void>
https://docs.apify.com/api/v2#/reference/actors/version-object/delete-version
actorVersionClient.get()
⇒ Promise.<ActorVersion>
https://docs.apify.com/api/v2#/reference/actors/version-object/get-version
actorVersionClient.update(newFields)
⇒ Promise.<ActorVersion>
https://docs.apify.com/api/v2#/reference/actors/version-object/update-version
| Param | Type | | --- | --- | | newFields | object |
ActorVersionCollectionClient
- ActorVersionCollectionClient
.create([actorVersion])
⇒ Promise.<object>.list([options])
⇒ Promise.<PaginationList>
actorVersionCollectionClient.create([actorVersion])
⇒ Promise.<object>
https://docs.apify.com/api/v2#/reference/actors/version-collection/create-version
| Param | Type | | --- | --- | | [actorVersion] | object |
actorVersionCollectionClient.list([options])
⇒ Promise.<PaginationList>
https://docs.apify.com/api/v2#/reference/actors/version-collection/get-list-of-versions
| Param | Type | | --- | --- | | [options] | object | | [options.limit] | number | | [options.offset] | number | | [options.desc] | boolean |
BuildClient
- BuildClient
.abort()
⇒ Promise.<Build>.get([options])
⇒ Promise.<Build>.waitForFinish([options])
⇒ Promise.<Build>
buildClient.abort()
⇒ Promise.<Build>
https://docs.apify.com/api/v2#/reference/actor-builds/abort-build/abort-build
buildClient.get([options])
⇒ Promise.<Build>
https://docs.apify.com/api/v2#/reference/actor-builds/build-object/get-build
| Param | Type | | --- | --- | | [options] | object | | [options.waitForFinish] | number |
buildClient.waitForFinish([options])
⇒ Promise.<Build>
Returns a promise that resolves with the finished Build object when the provided actor build finishes
or with the unfinished Build object when the waitSecs
timeout lapses. The promise is NOT rejected
based on run status. You can inspect the status
property of the Build object to find out its status.
The difference between this function and the waitForFinish
parameter of the get
method
is the fact that this function can wait indefinitely. Its use is preferable to the
waitForFinish
parameter alone, which it uses internally.
This is useful when you need to immediately start a run after a build finishes.
| Param | Type | Description |
| --- | --- | --- |
| [options] | object | |
| [options.waitSecs] | number | Maximum time to wait for the build to finish, in seconds. If the limit is reached, the returned promise is resolved to a build object that will have status READY
or RUNNING
. If waitSecs
omitted, the function waits indefinitely. |
BuildCollectionClient
buildCollectionClient.list([options])
⇒ Promise.<PaginationList>
https://docs.apify.com/api/v2#/reference/actors/build-collection/get-list-of-builds
| Param | Type | | --- | --- | | [options] | object | | [options.limit] | number | | [options.offset] | number | | [options.desc] | boolean |
DatasetClient
- DatasetClient
.delete()
⇒ Promise.<void>.downloadItems(format, [options])
⇒ Promise.<Buffer>.get()
⇒ Promise.<Dataset>.listItems([options])
⇒ Promise.<PaginationList>.pushItems(items)
⇒ Promise.<void>.update(newFields)
⇒ Promise.<Dataset>
datasetClient.delete()
⇒ Promise.<void>
https://docs.apify.com/api/v2#/reference/datasets/dataset/delete-dataset
datasetClient.downloadItems(format, [options])
⇒ Promise.<Buffer>
Unlike listItems
which returns a PaginationList with an array of individual
dataset items, downloadItems
returns the items serialized to the provided format.
https://docs.apify.com/api/v2#/reference/datasets/item-collection/get-items
| Param | Type | Description | | --- | --- | --- | | format | string | One of json, jsonl, xml, html, csv, xlsx, rss | | [options] | object | | | [options.attachment] | boolean | | | [options.bom] | boolean | | | [options.clean] | boolean | | | [options.delimiter] | string | | | [options.desc] | boolean | | | [options.fields] | Array.<string> | | | [options.omit] | Array.<string> | | | [options.limit] | number | | | [options.offset] | number | | | [options.skipEmpty] | boolean | | | [options.skipHeaderRow] | boolean | | | [options.skipHidden] | boolean | | | [options.unwind] | string | | | [options.xmlRoot] | string | | | [options.xmlRow] | string | |
datasetClient.get()
⇒ Promise.<Dataset>
https://docs.apify.com/api/v2#/reference/datasets/dataset/get-dataset
datasetClient.listItems([options])
⇒ Promise.<PaginationList>
https://docs.apify.com/api/v2#/reference/datasets/item-collection/get-items
| Param | Type | | --- | --- | | [options] | object | | [options.clean] | boolean | | [options.desc] | boolean | | [options.fields] | Array.<string> | | [options.omit] | Array.<string> | | [options.limit] | number | | [options.offset] | number | | [options.skipEmpty] | boolean | | [options.skipHidden] | boolean | | [options.unwind] | string |
datasetClient.pushItems(items)
⇒ Promise.<void>
https://docs.apify.com/api/v2#/reference/datasets/item-collection/put-items
| Param | Type | | --- | --- | | items | object | string | Array.<(object|string)> |
datasetClient.update(newFields)
⇒ Promise.<Dataset>
https://docs.apify.com/api/v2#/reference/datasets/dataset/update-dataset
| Param | Type | | --- | --- | | newFields | object |
DatasetCollectionClient
- DatasetCollectionClient
.getOrCreate([name])
⇒ Promise.<object>.list([options])
⇒ Promise.<PaginationList>
datasetCollectionClient.getOrCreate([name])
⇒ Promise.<object>
https://docs.apify.com/api/v2#/reference/datasets/dataset-collection/create-dataset
| Param | Type | | --- | --- | | [name] | string |
datasetCollectionClient.list([options])
⇒ Promise.<PaginationList>
https://docs.apify.com/api/v2#/reference/datasets/dataset-collection/get-list-of-datasets
| Param | Type | | --- | --- | | [options] | object | | [options.unnamed] | boolean | | [options.limit] | number | | [options.offset] | number | | [options.desc] | boolean |
KeyValueStoreClient
- KeyValueStoreClient
.delete()
⇒ Promise.<void>.deleteRecord(key)
⇒ Promise.<void>.get()
⇒ Promise.<KeyValueStore>.getRecord(key, [options])
⇒ Promise.<(KeyValueStoreRecord|undefined)>.listKeys([options])
⇒ Promise.<object>.setRecord(record)
⇒ Promise.<void>.update(newFields)
⇒ Promise.<KeyValueStore>
keyValueStoreClient.delete()
⇒ Promise.<void>
https://docs.apify.com/api/v2#/reference/key-value-stores/store-object/delete-store
keyValueStoreClient.deleteRecord(key)
⇒ Promise.<void>
https://docs.apify.com/api/v2#/reference/key-value-stores/record/delete-record
| Param | Type | | --- | --- | | key | string |
keyValueStoreClient.get()
⇒ Promise.<KeyValueStore>
https://docs.apify.com/api/v2#/reference/key-value-stores/store-object/get-store
keyValueStoreClient.getRecord(key, [options])
⇒ Promise.<(KeyValueStoreRecord|undefined)>
You can use the buffer
option to get the value in a Buffer (Node.js)
or ArrayBuffer (browser) format. In Node.js (not in browser) you can also
use the stream
option to get a Readable stream.
When the record does not exist, the function resolves to undefined
. It does
NOT resolve to a KeyValueStore
record with an undefined
value.
https://docs.apify.com/api/v2#/reference/key-value-stores/record/get-record
| Param | Type | | --- | --- | | key | string | | [options] | object | | [options.buffer] | boolean | | [options.stream] | boolean |
keyValueStoreClient.listKeys([options])
⇒ Promise.<object>
https://docs.apify.com/api/v2#/reference/key-value-stores/key-collection/get-list-of-keys
| Param | Type | | --- | --- | | [options] | object | | [options.limit] | object | | [options.exclusiveStartKey] | string |
keyValueStoreClient.setRecord(record)
⇒ Promise.<void>
https://docs.apify.com/api/v2#/reference/key-value-stores/record/put-record
| Param | Type | | --- | --- | | record | KeyValueStoreRecord |
keyValueStoreClient.update(newFields)
⇒ Promise.<KeyValueStore>
https://docs.apify.com/api/v2#/reference/key-value-stores/store-object/update-store
| Param | Type | | --- | --- | | newFields | object |
KeyValueStoreCollectionClient
- KeyValueStoreCollectionClient
.getOrCreate([name])
⇒ Promise.<object>.list([options])
⇒ Promise.<PaginationList>
keyValueStoreCollectionClient.getOrCreate([name])
⇒ Promise.<object>
https://docs.apify.com/api/v2#/reference/key-value-stores/store-collection/create-key-value-store
| Param | Type | | --- | --- | | [name] | string |
keyValueStoreCollectionClient.list([options])
⇒ Promise.<PaginationList>
https://docs.apify.com/api/v2#/reference/key-value-stores/store-collection/get-list-of-key-value-stores
| Param | Type | | --- | --- | | [options] | object | | [options.unnamed] | boolean | | [options.limit] | number | | [options.offset] | number | | [options.desc] | boolean |
KeyValueStoreRecord
: object
Properties
| Name | Type | | --- | --- | | key | string | | value | null | string | number | object | | [contentType] | string |
LogClient
logClient.get()
⇒ Promise.<?string>
https://docs.apify.com/api/v2#/reference/logs/log/get-log
logClient.stream()
⇒ Promise.<?Readable>
Gets the log in a Readable stream format. Only works in Node.js. https://docs.apify.com/api/v2#/reference/logs/log/get-log
PaginationList
: object
Properties
| Name | Type | Description | | --- | --- | --- | | items | Array.<object> | List of returned objects | | total | number | Total number of objects | | offset | number | Number of objects that were skipped | | count | number | Number of returned objects | | limit | number | Requested limit |
RequestQueueClient
- RequestQueueClient
.addRequest(request, [options])
⇒ Promise.<object>.delete()
⇒ Promise.<void>.deleteRequest(id)
⇒ Promise.<void>.get()
⇒ Promise.<RequestQueue>.getRequest(id)
⇒ Promise.<?object>.listHead([options])
⇒ Promise.<object>.update(newFields)
⇒ Promise.<RequestQueue>.updateRequest(request, [options])
⇒ Promise.<*>
requestQueueClient.addRequest(request, [options])
⇒ Promise.<object>
https://docs.apify.com/api/v2#/reference/request-queues/request-collection/add-request
| Param | Type | | --- | --- | | request | object | | [options] | object | | [options.forefront] | boolean |
requestQueueClient.delete()
⇒ Promise.<void>
https://docs.apify.com/api/v2#/reference/request-queues/queue/delete-request-queue
requestQueueClient.deleteRequest(id)
⇒ Promise.<void>
| Param | Type | | --- | --- | | id | string |
requestQueueClient.get()
⇒ Promise.<RequestQueue>
https://docs.apify.com/api/v2#/reference/request-queues/queue/get-request-queue
requestQueueClient.getRequest(id)
⇒ Promise.<?object>
https://docs.apify.com/api/v2#/reference/request-queues/request/get-request
| Param | Type | | --- | --- | | id | string |
requestQueueClient.listHead([options])
⇒ Promise.<object>
https://docs.apify.com/api/v2#/reference/request-queues/queue-head/get-head
| Param | Type | | --- | --- | | [options] | object | | [options.limit] | number |
requestQueueClient.update(newFields)
⇒ Promise.<RequestQueue>
https://docs.apify.com/api/v2#/reference/request-queues/queue/update-request-queue
| Param | Type | | --- | --- | | newFields | object |
requestQueueClient.updateRequest(request, [options])
⇒ Promise.<*>
https://docs.apify.com/api/v2#/reference/request-queues/request/update-request
| Param | Type | | --- | --- | | request | object | | [options] | object | | [options.forefront] | boolean |
RequestQueueCollection
- RequestQueueCollection
.getOrCreate([name])
⇒ Promise.<RequestQueue>.list([options])
⇒ Promise.<PaginationList>
requestQueueCollection.getOrCreate([name])
⇒ Promise.<RequestQueue>
https://docs.apify.com/api/v2#/reference/request-queues/queue-collection/create-request-queue
| Param | Type | | --- | --- | | [name] | string |
requestQueueCollection.list([options])
⇒ Promise.<PaginationList>
https://docs.apify.com/api/v2#/reference/request-queues/queue-collection/get-list-of-request-queues
| Param | Type | | --- | --- | | [options] | object | | [options.unnamed] | boolean | | [options.limit] | number | | [options.offset] | number | | [options.desc] | boolean |
RunClient
- RunClient
.abort()
⇒ Promise.<Run>.dataset()
⇒ DatasetClient.get([options])
⇒ Promise.<Run>.keyValueStore()
⇒ KeyValueStoreClient.log()
⇒ LogClient.metamorph(targetActorId, [input], [options])
⇒ Promise.<Run>.requestQueue()
⇒ RequestQueueClient.resurrect([options])
⇒ Promise.<Run>.waitForFinish([options])
⇒ Promise.<Run>
runClient.abort()
⇒ Promise.<Run>
https://docs.apify.com/api/v2#/reference/actor-runs/abort-run/abort-run
runClient.dataset()
⇒ DatasetClient
https://docs.apify.com/api/v2#/reference/actor-runs/run-object-and-its-storages
This also works through actorClient.lastRun().dataset()
.
https://docs.apify.com/api/v2#/reference/actors/last-run-object-and-its-storages
runClient.get([options])
⇒ Promise.<Run>
https://docs.apify.com/api/v2#/reference/actor-runs/run-object/get-run
| Param | Type | | --- | --- | | [options] | object | | [options.waitForFinish] | number |
runClient.keyValueStore()
⇒ KeyValueStoreClient
https://docs.apify.com/api/v2#/reference/actor-runs/run-object-and-its-storages
This also works through actorClient.lastRun().keyValueStore()
.
https://docs.apify.com/api/v2#/reference/actors/last-run-object-and-its-storages
runClient.log()
⇒ LogClient
https://docs.apify.com/api/v2#/reference/actor-runs/run-object-and-its-storages
This also works through actorClient.lastRun().log()
.
https://docs.apify.com/api/v2#/reference/actors/last-run-object-and-its-storages
runClient.metamorph(targetActorId, [input], [options])
⇒ Promise.<Run>
https://docs.apify.com/api/v2#/reference/actor-runs/metamorph-run/metamorph-run
| Param | Type | | --- | --- | | targetActorId | string | | [input] | * | | [options] | object | | [options.contentType] | object | | [options.build] | object |
runClient.requestQueue()
⇒ RequestQueueClient
https://docs.apify.com/api/v2#/reference/actor-runs/run-object-and-its-storages
This also works through actorClient.lastRun().requestQueue()
.
https://docs.apify.com/api/v2#/reference/actors/last-run-object-and-its-storages
runClient.resurrect([options])
⇒ Promise.<Run>
https://docs.apify.com/api/v2#/reference/actor-runs/resurrect-run/resurrect-run
| Param | Type | | --- | --- | | [options] | object | | [options.build] | string | | [options.memory] | number | | [options.timeout] | number |
runClient.waitForFinish([options])
⇒ Promise.<Run>
Returns a promise that resolves with the finished Run object when the provided actor run finishes
or with the unfinished Run object when the waitSecs
timeout lapses. The promise is NOT rejected
based on run status. You can inspect the status
property of the Run object to find out its status.
The difference between this function and the waitForFinish
parameter of the get
method
is the fact that this function can wait indefinitely. Its use is preferable to the
waitForFinish
parameter alone, which it uses internally.
This is useful when you need to chain actor executions. Similar effect can be achieved by using webhooks, so be sure to review which technique fits your use-case better.
| Param | Type | Description |
| --- | --- | --- |
| [options] | object | |
| [options.waitSecs] | number | Maximum time to wait for the run to finish, in seconds. If the limit is reached, the returned promise is resolved to a run object that will have status READY
or RUNNING
. If waitSecs
omitted, the function waits indefinitely. |
RunCollectionClient
runCollectionClient.list([options])
⇒ Promise.<PaginationList>
https://docs.apify.com/api/v2#/reference/actors/run-collection/get-list-of-runs
| Param | Type | | --- | --- | | [options] | object | | [options.limit] | number | | [options.offset] | number | | [options.desc] | boolean | | [options.status] | boolean |
ScheduleClient
- ScheduleClient
.delete()
⇒ Promise.<void>.get()
⇒ Promise.<?Schedule>.getLog()
⇒ Promise.<?string>.update(newFields)
⇒ Promise.<Schedule>
scheduleClient.delete()
⇒ Promise.<void>
https://docs.apify.com/api/v2#/reference/schedules/schedule-object/delete-schedule
scheduleClient.get()
⇒ Promise.<?Schedule>
https://docs.apify.com/api/v2#/reference/schedules/schedule-object/get-schedule
scheduleClient.getLog()
⇒ Promise.<?string>
https://docs.apify.com/api/v2#/reference/schedules/schedule-log/get-schedule-log
scheduleClient.update(newFields)
⇒ Promise.<Schedule>
https://docs.apify.com/api/v2#/reference/schedules/schedule-object/update-schedule
| Param | Type | | --- | --- | | newFields | object |
ScheduleCollectionClient
- ScheduleCollectionClient
.create([schedule])
⇒ Promise.<Schedule>.list([options])
⇒ Promise.<PaginationList>
scheduleCollectionClient.create([schedule])
⇒ Promise.<Schedule>
https://docs.apify.com/api/v2#/reference/schedules/schedules-collection/create-schedule
| Param | Type | | --- | --- | | [schedule] | object |
scheduleCollectionClient.list([options])
⇒ Promise.<PaginationList>
https://docs.apify.com/api/v2#/reference/schedules/schedules-collection/get-list-of-schedules
| Param | Type | | --- | --- | | [options] | object | | [options.limit] | number | | [options.offset] | number | | [options.desc] | boolean |
TaskClient
- TaskClient
.call([input], [options])
⇒ Promise.<Run>.delete()
⇒ Promise.<void>.get()
⇒ Promise.<?Task>.getInput()
⇒ Promise.<?object>.lastRun(options)
⇒ RunClient.runs()
⇒ RunCollectionClient.start([input], [options])
⇒ Promise.<Run>.update(newFields)
⇒ Promise.<Task>.updateInput()
⇒ Promise.<object>.webhooks()
⇒ WebhookCollectionClient
taskClient.call([input], [options])
⇒ Promise.<Run>
Starts a task and waits for it to finish before returning the Run object.
It waits indefinitely, unless the waitSecs
option is provided.
https://docs.apify.com/api/v2#/reference/actor-tasks/run-collection/run-task
| Param | Type | | --- | --- | | [input] | object | | [options] | object | | [options.build] | string | | [options.memory] | number | | [options.timeout] | number | | [options.waitSecs] | number | | [options.webhooks] | Array.<object> |
taskClient.delete()
⇒ Promise.<void>
https://docs.apify.com/api/v2#/reference/actor-tasks/task-object/delete-task
taskClient.get()
⇒ Promise.<?Task>
https://docs.apify.com/api/v2#/reference/actor-tasks/task-object/get-task
taskClient.getInput()
⇒ Promise.<?object>
https://docs.apify.com/api/v2#/reference/actor-tasks/task-input-object/get-task-input
taskClient.lastRun(options)
⇒ RunClient
https://docs.apify.com/api/v2#/reference/actor-tasks/last-run-object-and-its-storages
| Param | Type | | --- | --- | | options | object | | options.status | string |
taskClient.runs()
⇒ RunCollectionClient
https://docs.apify.com/api/v2#/reference/actor-tasks/run-collection
taskClient.start([input], [options])
⇒ Promise.<Run>
Starts a task and immediately returns the Run object. https://docs.apify.com/api/v2#/reference/actor-tasks/run-collection/run-task
| Param | Type | | --- | --- | | [input] | object | | [options] | object | | [options.build] | string | | [options.memory] | number | | [options.timeout] | number | | [options.waitForFinish] | number | | [options.webhooks] | Array.<object> |
taskClient.update(newFields)
⇒ Promise.<Task>
https://docs.apify.com/api/v2#/reference/actor-tasks/task-object/update-task
| Param | Type | | --- | --- | | newFields | object |
taskClient.updateInput()
⇒ Promise.<object>
https://docs.apify.com/api/v2#/reference/actor-tasks/task-input-object/update-task-input
taskClient.webhooks()
⇒ WebhookCollectionClient
https://docs.apify.com/api/v2#/reference/actor-tasks/webhook-collection
TaskCollectionClient
- TaskCollectionClient
.create([task])
⇒ Promise.<Task>.list([options])
⇒ Promise.<PaginationList>
taskCollectionClient.create([task])
⇒ Promise.<Task>
https://docs.apify.com/api/v2#/reference/actor-tasks/task-collection/create-task
| Param | Type | | --- | --- | | [task] | object |
taskCollectionClient.list([options])
⇒ Promise.<PaginationList>
https://docs.apify.com/api/v2#/reference/actor-tasks/task-collection/get-list-of-tasks
| Param | Type | | --- | --- | | [options] | object | | [options.limit] | number | | [options.offset] | number | | [options.desc] | boolean |
UserClient
userClient.get()
⇒ Promise.<?User>
Depending on whether ApifyClient was created with a token, the method will either return public or private user data. https://docs.apify.com/api/v2#/reference/users
WebhookClient
- WebhookClient
.delete()
⇒ Promise.<void>.dispatches()
⇒ WebhookDispatchCollectionClient.get()
⇒ Promise.<?Webhook>.update(newFields)
⇒ Promise.<Webhook>
webhookClient.delete()
⇒ Promise.<void>
https://docs.apify.com/api/v2#/reference/webhooks/webhook-object/delete-webhook
webhookClient.dispatches()
⇒ WebhookDispatchCollectionClient
https://docs.apify.com/api/v2#/reference/webhooks/dispatches-collection
webhookClient.get()
⇒ Promise.<?Webhook>
https://docs.apify.com/api/v2#/reference/webhooks/webhook-object/get-webhook
webhookClient.update(newFields)
⇒ Promise.<Webhook>
https://docs.apify.com/api/v2#/reference/webhooks/webhook-object/update-webhook
| Param | Type | | --- | --- | | newFields | object |
WebhookCollectionClient
- WebhookCollectionClient
.create([webhook])
⇒ Promise.<Webhook>.list([options])
⇒ Promise.<PaginationList>
webhookCollectionClient.create([webhook])
⇒ Promise.<Webhook>
https://docs.apify.com/api/v2#/reference/webhooks/webhook-collection/create-webhook
| Param | Type | | --- | --- | | [webhook] | object |
webhookCollectionClient.list([options])
⇒ Promise.<PaginationList>
https://docs.apify.com/api/v2#/reference/webhooks/webhook-collection/get-list-of-webhooks
| Param | Type | | --- | --- | | [options] | object | | [options.limit] | number | | [options.offset] | number | | [options.desc] | boolean |
WebhookDispatchClient
webhookDispatchClient.get()
⇒ Promise.<?WebhookDispatch>
https://docs.apify.com/api/v2#/reference/webhook-dispatches/webhook-dispatch-object/get-webhook-dispatch
WebhookDispatchCollectionClient
webhookDispatchCollectionClient.list([options])
⇒ Promise.<PaginationList>
https://docs.apify.com/api/v2#/reference/webhook-dispatches/webhook-dispatches-collection/get-list-of-webhook-dispatches
| Param | Type | | --- | --- | | [options] | object | | [options.limit] | number | | [options.offset] | number | | [options.desc] | boolean |