From aca34843cecb16bb47ed726c89ea46dc93b68c0f Mon Sep 17 00:00:00 2001 From: Josef Prochazka Date: Mon, 2 Mar 2026 14:28:45 +0100 Subject: [PATCH 1/4] docs: document runs/last redispatch sub-paths in OpenAPI spec The `/v2/acts/{actorId}/runs/last` and `/v2/actor-tasks/{actorTaskId}/runs/last` endpoints redispatch to canonical storage and run-action endpoints after resolving the last run. Previously these sub-paths were only described in prose. This commit adds them as proper OpenAPI path entries for both Actor and actor task namespaces: - log - dataset, dataset/items - key-value-store, key-value-store/keys, key-value-store/records/{recordKey} - request-queue, request-queue/requests, request-queue/requests/{requestId}, request-queue/head - abort, metamorph, reboot Also adds the missing `waitForFinish` query parameter to both base `runs/last` endpoints, which was causing "Unknown query parameter" validation errors. Co-Authored-By: Claude Sonnet 4.6 --- .../components/parameters/actorId.yaml | 8 ++ .../components/parameters/actorTaskId.yaml | 8 ++ .../parameters/runs-last/status.yaml | 8 ++ .../parameters/runs-last/waitForFinish.yaml | 13 ++ apify-api/openapi/openapi.yaml | 52 +++++++ .../actor-tasks@{actorTaskId}@runs@last.yaml | 19 +-- ...r-tasks@{actorTaskId}@runs@last@abort.yaml | 68 ++++++++++ ...tasks@{actorTaskId}@runs@last@dataset.yaml | 25 ++++ ...{actorTaskId}@runs@last@dataset@items.yaml | 127 ++++++++++++++++++ ...ctorTaskId}@runs@last@key-value-store.yaml | 25 ++++ ...askId}@runs@last@key-value-store@keys.yaml | 39 ++++++ ...t@key-value-store@records@{recordKey}.yaml | 68 ++++++++++ ...tor-tasks@{actorTaskId}@runs@last@log.yaml | 47 +++++++ ...sks@{actorTaskId}@runs@last@metamorph.yaml | 74 ++++++++++ ...-tasks@{actorTaskId}@runs@last@reboot.yaml | 58 ++++++++ ...{actorTaskId}@runs@last@request-queue.yaml | 25 ++++ ...rTaskId}@runs@last@request-queue@head.yaml | 40 ++++++ ...kId}@runs@last@request-queue@requests.yaml | 72 ++++++++++ ...st@request-queue@requests@{requestId}.yaml | 33 +++++ .../actors/acts@{actorId}@runs@last.yaml | 19 +-- .../acts@{actorId}@runs@last@abort.yaml | 68 ++++++++++ .../acts@{actorId}@runs@last@dataset.yaml | 24 ++++ ...cts@{actorId}@runs@last@dataset@items.yaml | 127 ++++++++++++++++++ ...s@{actorId}@runs@last@key-value-store.yaml | 25 ++++ ...torId}@runs@last@key-value-store@keys.yaml | 39 ++++++ ...t@key-value-store@records@{recordKey}.yaml | 68 ++++++++++ .../actors/acts@{actorId}@runs@last@log.yaml | 47 +++++++ .../acts@{actorId}@runs@last@metamorph.yaml | 74 ++++++++++ .../acts@{actorId}@runs@last@reboot.yaml | 58 ++++++++ ...cts@{actorId}@runs@last@request-queue.yaml | 25 ++++ ...actorId}@runs@last@request-queue@head.yaml | 40 ++++++ ...rId}@runs@last@request-queue@requests.yaml | 72 ++++++++++ ...st@request-queue@requests@{requestId}.yaml | 33 +++++ 33 files changed, 1496 insertions(+), 32 deletions(-) create mode 100644 apify-api/openapi/components/parameters/actorId.yaml create mode 100644 apify-api/openapi/components/parameters/actorTaskId.yaml create mode 100644 apify-api/openapi/components/parameters/runs-last/status.yaml create mode 100644 apify-api/openapi/components/parameters/runs-last/waitForFinish.yaml create mode 100644 apify-api/openapi/paths/actor-tasks/actor-tasks@{actorTaskId}@runs@last@abort.yaml create mode 100644 apify-api/openapi/paths/actor-tasks/actor-tasks@{actorTaskId}@runs@last@dataset.yaml create mode 100644 apify-api/openapi/paths/actor-tasks/actor-tasks@{actorTaskId}@runs@last@dataset@items.yaml create mode 100644 apify-api/openapi/paths/actor-tasks/actor-tasks@{actorTaskId}@runs@last@key-value-store.yaml create mode 100644 apify-api/openapi/paths/actor-tasks/actor-tasks@{actorTaskId}@runs@last@key-value-store@keys.yaml create mode 100644 apify-api/openapi/paths/actor-tasks/actor-tasks@{actorTaskId}@runs@last@key-value-store@records@{recordKey}.yaml create mode 100644 apify-api/openapi/paths/actor-tasks/actor-tasks@{actorTaskId}@runs@last@log.yaml create mode 100644 apify-api/openapi/paths/actor-tasks/actor-tasks@{actorTaskId}@runs@last@metamorph.yaml create mode 100644 apify-api/openapi/paths/actor-tasks/actor-tasks@{actorTaskId}@runs@last@reboot.yaml create mode 100644 apify-api/openapi/paths/actor-tasks/actor-tasks@{actorTaskId}@runs@last@request-queue.yaml create mode 100644 apify-api/openapi/paths/actor-tasks/actor-tasks@{actorTaskId}@runs@last@request-queue@head.yaml create mode 100644 apify-api/openapi/paths/actor-tasks/actor-tasks@{actorTaskId}@runs@last@request-queue@requests.yaml create mode 100644 apify-api/openapi/paths/actor-tasks/actor-tasks@{actorTaskId}@runs@last@request-queue@requests@{requestId}.yaml create mode 100644 apify-api/openapi/paths/actors/acts@{actorId}@runs@last@abort.yaml create mode 100644 apify-api/openapi/paths/actors/acts@{actorId}@runs@last@dataset.yaml create mode 100644 apify-api/openapi/paths/actors/acts@{actorId}@runs@last@dataset@items.yaml create mode 100644 apify-api/openapi/paths/actors/acts@{actorId}@runs@last@key-value-store.yaml create mode 100644 apify-api/openapi/paths/actors/acts@{actorId}@runs@last@key-value-store@keys.yaml create mode 100644 apify-api/openapi/paths/actors/acts@{actorId}@runs@last@key-value-store@records@{recordKey}.yaml create mode 100644 apify-api/openapi/paths/actors/acts@{actorId}@runs@last@log.yaml create mode 100644 apify-api/openapi/paths/actors/acts@{actorId}@runs@last@metamorph.yaml create mode 100644 apify-api/openapi/paths/actors/acts@{actorId}@runs@last@reboot.yaml create mode 100644 apify-api/openapi/paths/actors/acts@{actorId}@runs@last@request-queue.yaml create mode 100644 apify-api/openapi/paths/actors/acts@{actorId}@runs@last@request-queue@head.yaml create mode 100644 apify-api/openapi/paths/actors/acts@{actorId}@runs@last@request-queue@requests.yaml create mode 100644 apify-api/openapi/paths/actors/acts@{actorId}@runs@last@request-queue@requests@{requestId}.yaml diff --git a/apify-api/openapi/components/parameters/actorId.yaml b/apify-api/openapi/components/parameters/actorId.yaml new file mode 100644 index 0000000000..dac1e5cfa8 --- /dev/null +++ b/apify-api/openapi/components/parameters/actorId.yaml @@ -0,0 +1,8 @@ +name: actorId +in: path +description: Actor ID or a tilde-separated owner's username and Actor name. +required: true +style: simple +schema: + type: string + example: janedoe~my-actor diff --git a/apify-api/openapi/components/parameters/actorTaskId.yaml b/apify-api/openapi/components/parameters/actorTaskId.yaml new file mode 100644 index 0000000000..4fd9781f33 --- /dev/null +++ b/apify-api/openapi/components/parameters/actorTaskId.yaml @@ -0,0 +1,8 @@ +name: actorTaskId +in: path +description: Task ID or a tilde-separated owner's username and Actor task name. +required: true +style: simple +schema: + type: string + example: janedoe~my-task diff --git a/apify-api/openapi/components/parameters/runs-last/status.yaml b/apify-api/openapi/components/parameters/runs-last/status.yaml new file mode 100644 index 0000000000..c4299cb0db --- /dev/null +++ b/apify-api/openapi/components/parameters/runs-last/status.yaml @@ -0,0 +1,8 @@ +name: status +in: query +description: Filter for the run status. Only the most recent run with this status is used. +style: form +explode: true +schema: + type: string + example: SUCCEEDED diff --git a/apify-api/openapi/components/parameters/runs-last/waitForFinish.yaml b/apify-api/openapi/components/parameters/runs-last/waitForFinish.yaml new file mode 100644 index 0000000000..b3404b69fc --- /dev/null +++ b/apify-api/openapi/components/parameters/runs-last/waitForFinish.yaml @@ -0,0 +1,13 @@ +name: waitForFinish +in: query +description: | + The maximum number of seconds the server waits for the run to finish. By + default it is `0`, the maximum value is `60`. + If the run finishes in time then the returned run object will have a terminal status (e.g. `SUCCEEDED`), + otherwise it will have a transitional status (e.g. `RUNNING`). +style: form +explode: true +schema: + type: number + format: double diff --git a/apify-api/openapi/openapi.yaml b/apify-api/openapi/openapi.yaml index 952bdb0e32..caa640533c 100644 --- a/apify-api/openapi/openapi.yaml +++ b/apify-api/openapi/openapi.yaml @@ -514,6 +514,32 @@ paths: $ref: "paths/actors/acts@{actorId}@runs@{runId}@resurrect.yaml" "/v2/acts/{actorId}/runs/last": $ref: "paths/actors/acts@{actorId}@runs@last.yaml" + "/v2/acts/{actorId}/runs/last/log": + $ref: "paths/actors/acts@{actorId}@runs@last@log.yaml" + "/v2/acts/{actorId}/runs/last/dataset": + $ref: "paths/actors/acts@{actorId}@runs@last@dataset.yaml" + "/v2/acts/{actorId}/runs/last/dataset/items": + $ref: "paths/actors/acts@{actorId}@runs@last@dataset@items.yaml" + "/v2/acts/{actorId}/runs/last/key-value-store": + $ref: "paths/actors/acts@{actorId}@runs@last@key-value-store.yaml" + "/v2/acts/{actorId}/runs/last/key-value-store/keys": + $ref: "paths/actors/acts@{actorId}@runs@last@key-value-store@keys.yaml" + "/v2/acts/{actorId}/runs/last/key-value-store/records/{recordKey}": + $ref: "paths/actors/acts@{actorId}@runs@last@key-value-store@records@{recordKey}.yaml" + "/v2/acts/{actorId}/runs/last/request-queue": + $ref: "paths/actors/acts@{actorId}@runs@last@request-queue.yaml" + "/v2/acts/{actorId}/runs/last/request-queue/requests": + $ref: "paths/actors/acts@{actorId}@runs@last@request-queue@requests.yaml" + "/v2/acts/{actorId}/runs/last/request-queue/requests/{requestId}": + $ref: "paths/actors/acts@{actorId}@runs@last@request-queue@requests@{requestId}.yaml" + "/v2/acts/{actorId}/runs/last/request-queue/head": + $ref: "paths/actors/acts@{actorId}@runs@last@request-queue@head.yaml" + "/v2/acts/{actorId}/runs/last/abort": + $ref: "paths/actors/acts@{actorId}@runs@last@abort.yaml" + "/v2/acts/{actorId}/runs/last/metamorph": + $ref: "paths/actors/acts@{actorId}@runs@last@metamorph.yaml" + "/v2/acts/{actorId}/runs/last/reboot": + $ref: "paths/actors/acts@{actorId}@runs@last@reboot.yaml" "/v2/acts/{actorId}/runs/{runId}": $ref: "paths/actors/acts@{actorId}@runs@{runId}.yaml" "/v2/acts/{actorId}/runs/{runId}/abort": @@ -536,6 +562,32 @@ paths: $ref: "paths/actor-tasks/actor-tasks@{actorTaskId}@run-sync-get-dataset-items.yaml" "/v2/actor-tasks/{actorTaskId}/runs/last": $ref: "paths/actor-tasks/actor-tasks@{actorTaskId}@runs@last.yaml" + "/v2/actor-tasks/{actorTaskId}/runs/last/log": + $ref: "paths/actor-tasks/actor-tasks@{actorTaskId}@runs@last@log.yaml" + "/v2/actor-tasks/{actorTaskId}/runs/last/dataset": + $ref: "paths/actor-tasks/actor-tasks@{actorTaskId}@runs@last@dataset.yaml" + "/v2/actor-tasks/{actorTaskId}/runs/last/dataset/items": + $ref: "paths/actor-tasks/actor-tasks@{actorTaskId}@runs@last@dataset@items.yaml" + "/v2/actor-tasks/{actorTaskId}/runs/last/key-value-store": + $ref: "paths/actor-tasks/actor-tasks@{actorTaskId}@runs@last@key-value-store.yaml" + "/v2/actor-tasks/{actorTaskId}/runs/last/key-value-store/keys": + $ref: "paths/actor-tasks/actor-tasks@{actorTaskId}@runs@last@key-value-store@keys.yaml" + "/v2/actor-tasks/{actorTaskId}/runs/last/key-value-store/records/{recordKey}": + $ref: "paths/actor-tasks/actor-tasks@{actorTaskId}@runs@last@key-value-store@records@{recordKey}.yaml" + "/v2/actor-tasks/{actorTaskId}/runs/last/request-queue": + $ref: "paths/actor-tasks/actor-tasks@{actorTaskId}@runs@last@request-queue.yaml" + "/v2/actor-tasks/{actorTaskId}/runs/last/request-queue/requests": + $ref: "paths/actor-tasks/actor-tasks@{actorTaskId}@runs@last@request-queue@requests.yaml" + "/v2/actor-tasks/{actorTaskId}/runs/last/request-queue/requests/{requestId}": + $ref: "paths/actor-tasks/actor-tasks@{actorTaskId}@runs@last@request-queue@requests@{requestId}.yaml" + "/v2/actor-tasks/{actorTaskId}/runs/last/request-queue/head": + $ref: "paths/actor-tasks/actor-tasks@{actorTaskId}@runs@last@request-queue@head.yaml" + "/v2/actor-tasks/{actorTaskId}/runs/last/abort": + $ref: "paths/actor-tasks/actor-tasks@{actorTaskId}@runs@last@abort.yaml" + "/v2/actor-tasks/{actorTaskId}/runs/last/metamorph": + $ref: "paths/actor-tasks/actor-tasks@{actorTaskId}@runs@last@metamorph.yaml" + "/v2/actor-tasks/{actorTaskId}/runs/last/reboot": + $ref: "paths/actor-tasks/actor-tasks@{actorTaskId}@runs@last@reboot.yaml" /v2/actor-runs: $ref: paths/actor-runs/actor-runs.yaml "/v2/actor-runs/{runId}": diff --git a/apify-api/openapi/paths/actor-tasks/actor-tasks@{actorTaskId}@runs@last.yaml b/apify-api/openapi/paths/actor-tasks/actor-tasks@{actorTaskId}@runs@last.yaml index 1c059fdf04..6671995e45 100644 --- a/apify-api/openapi/paths/actor-tasks/actor-tasks@{actorTaskId}@runs@last.yaml +++ b/apify-api/openapi/paths/actor-tasks/actor-tasks@{actorTaskId}@runs@last.yaml @@ -51,22 +51,9 @@ get: In order to save new items to the dataset, send HTTP POST request with JSON payload to the same URL. operationId: actorTask_runs_last_get parameters: - - name: actorTaskId - in: path - description: Task ID or a tilde-separated owner's username and Actor task name. - required: true - style: simple - schema: - type: string - example: janedoe~my-task - - name: status - in: query - description: Filter for the run status. - style: form - explode: true - schema: - type: string - example: SUCCEEDED + - $ref: ../../components/parameters/actorTaskId.yaml + - $ref: ../../components/parameters/runs-last/status.yaml + - $ref: ../../components/parameters/runs-last/waitForFinish.yaml responses: "200": description: "" diff --git a/apify-api/openapi/paths/actor-tasks/actor-tasks@{actorTaskId}@runs@last@abort.yaml b/apify-api/openapi/paths/actor-tasks/actor-tasks@{actorTaskId}@runs@last@abort.yaml new file mode 100644 index 0000000000..ec873d4b22 --- /dev/null +++ b/apify-api/openapi/paths/actor-tasks/actor-tasks@{actorTaskId}@runs@last@abort.yaml @@ -0,0 +1,68 @@ +post: + tags: + - Actor tasks + summary: Abort last run + description: | + Aborts the last actor task run. Redispatches to [Abort run](/api/v2/actor-run-abort-post). + + Using the `status` query parameter you can ensure to only get a run with a certain status + (e.g. `status=SUCCEEDED`). Only the most recent run with that status is used. + operationId: actorTask_runs_last_abort_post + parameters: + - $ref: ../../components/parameters/actorTaskId.yaml + - $ref: ../../components/parameters/runs-last/status.yaml + - name: gracefully + in: query + description: | + If true passed, the Actor run will abort gracefully. + It will send `aborting` and `persistState` event into run and force-stop the run after 30 seconds. + It is helpful in cases where you plan to resurrect the run later. + style: form + explode: true + schema: + type: boolean + responses: + "200": + description: "" + headers: {} + content: + application/json: + schema: + $ref: ../../components/schemas/actor-runs/RunResponse.yaml + example: + data: + id: HG7ML7M8z78YcAPEB + actId: HDSasDasz78YcAPEB + userId: 7sT5jcggjjA9fNcxF + startedAt: "2019-11-30T07:34:24.202Z" + finishedAt: "2019-12-12T09:30:12.202Z" + status: RUNNING + statusMessage: Actor is running + isStatusMessageTerminal: false + meta: + origin: WEB + clientIp: 172.234.12.34 + userAgent: Mozilla/5.0 (iPad) + stats: + inputBodyLen: 240 + migrationCount: 0 + restartCount: 0 + resurrectCount: 0 + durationMillis: 26239 + runTimeSecs: 26.239 + metamorph: 0 + computeUnits: 0.0072886 + options: + build: latest + timeoutSecs: 300 + memoryMbytes: 1024 + diskMbytes: 2048 + buildId: 7sT5jcggjjA9fNcxF + exitCode: 0 + generalAccess: RESTRICTED + defaultKeyValueStoreId: eJNzqsbPiopwJcgGQ + defaultDatasetId: wmKPijuyDnPZAPRMk + defaultRequestQueueId: FL35cSF7jrxr3BY39 + "400": + $ref: ../../components/responses/BadRequest.yaml + deprecated: false diff --git a/apify-api/openapi/paths/actor-tasks/actor-tasks@{actorTaskId}@runs@last@dataset.yaml b/apify-api/openapi/paths/actor-tasks/actor-tasks@{actorTaskId}@runs@last@dataset.yaml new file mode 100644 index 0000000000..dfb8669771 --- /dev/null +++ b/apify-api/openapi/paths/actor-tasks/actor-tasks@{actorTaskId}@runs@last@dataset.yaml @@ -0,0 +1,25 @@ +get: + tags: + - Actor tasks + summary: Get dataset for last run + description: | + Returns the default dataset of the last actor task run. Redispatches to + [Get dataset](/api/v2/dataset-get). + + Using the `status` query parameter you can ensure to only get a run with a certain status + (e.g. `status=SUCCEEDED`). Only the most recent run with that status is used. + operationId: actorTask_runs_last_dataset_get + parameters: + - $ref: ../../components/parameters/actorTaskId.yaml + - $ref: ../../components/parameters/runs-last/status.yaml + responses: + "200": + description: "" + headers: {} + content: + application/json: + schema: + $ref: ../../components/schemas/datasets/DatasetResponse.yaml + "400": + $ref: ../../components/responses/BadRequest.yaml + deprecated: false diff --git a/apify-api/openapi/paths/actor-tasks/actor-tasks@{actorTaskId}@runs@last@dataset@items.yaml b/apify-api/openapi/paths/actor-tasks/actor-tasks@{actorTaskId}@runs@last@dataset@items.yaml new file mode 100644 index 0000000000..77cb7effc9 --- /dev/null +++ b/apify-api/openapi/paths/actor-tasks/actor-tasks@{actorTaskId}@runs@last@dataset@items.yaml @@ -0,0 +1,127 @@ +get: + tags: + - Actor tasks + summary: Get dataset items for last run + description: | + Returns items from the default dataset of the last actor task run. Redispatches to + [Get dataset items](/api/v2/dataset-items-get). Supports the same query parameters. + + Using the `status` query parameter you can ensure to only get a run with a certain status + (e.g. `status=SUCCEEDED`). Only the most recent run with that status is used. + operationId: actorTask_runs_last_dataset_items_get + parameters: + - $ref: ../../components/parameters/actorTaskId.yaml + - $ref: ../../components/parameters/runs-last/status.yaml + - name: format + in: query + description: Format of the results, possible values are json, jsonl, csv, html, xlsx, xml and rss. + style: form + explode: true + schema: + type: string + default: json + - name: clean + in: query + description: If true, returns only non-empty items and skips hidden fields. + style: form + explode: true + schema: + type: boolean + - name: offset + in: query + description: Number of items that should be skipped at the start. + style: form + explode: true + schema: + type: number + - name: limit + in: query + description: Maximum number of items to return. + style: form + explode: true + schema: + type: number + - name: fields + in: query + description: Comma-separated list of fields to include in the results. + style: form + explode: true + schema: + type: string + - name: omit + in: query + description: Comma-separated list of fields to omit from the results. + style: form + explode: true + schema: + type: string + - name: unwind + in: query + description: Name of a field to unwind. If the field is an array, each element becomes a separate record. + style: form + explode: true + schema: + type: string + - name: flatten + in: query + description: Comma-separated list of fields to flatten. Nested objects are merged into the parent. + style: form + explode: true + schema: + type: string + - name: desc + in: query + description: If true, results are returned in descending order. + style: form + explode: true + schema: + type: boolean + - name: attachment + in: query + description: If true, the response will be returned as a file attachment. + style: form + explode: true + schema: + type: boolean + responses: + "200": + description: "" + headers: {} + content: + application/json: + schema: + type: array + items: + type: object + "400": + $ref: ../../components/responses/BadRequest.yaml + deprecated: false +post: + tags: + - Actor tasks + summary: Push items to dataset for last run + description: | + Pushes items to the default dataset of the last actor task run. Redispatches to + [Push items](/api/v2/dataset-items-post). + + Using the `status` query parameter you can ensure to only get a run with a certain status + (e.g. `status=SUCCEEDED`). Only the most recent run with that status is used. + operationId: actorTask_runs_last_dataset_items_post + parameters: + - $ref: ../../components/parameters/actorTaskId.yaml + - $ref: ../../components/parameters/runs-last/status.yaml + requestBody: + required: true + content: + application/json: + schema: + type: array + items: + type: object + responses: + "201": + description: Items were added. + headers: {} + "400": + $ref: ../../components/responses/BadRequest.yaml + deprecated: false diff --git a/apify-api/openapi/paths/actor-tasks/actor-tasks@{actorTaskId}@runs@last@key-value-store.yaml b/apify-api/openapi/paths/actor-tasks/actor-tasks@{actorTaskId}@runs@last@key-value-store.yaml new file mode 100644 index 0000000000..f52adcde39 --- /dev/null +++ b/apify-api/openapi/paths/actor-tasks/actor-tasks@{actorTaskId}@runs@last@key-value-store.yaml @@ -0,0 +1,25 @@ +get: + tags: + - Actor tasks + summary: Get key-value store for last run + description: | + Returns the default key-value store of the last actor task run. Redispatches to + [Get store](/api/v2/key-value-store-get). + + Using the `status` query parameter you can ensure to only get a run with a certain status + (e.g. `status=SUCCEEDED`). Only the most recent run with that status is used. + operationId: actorTask_runs_last_keyValueStore_get + parameters: + - $ref: ../../components/parameters/actorTaskId.yaml + - $ref: ../../components/parameters/runs-last/status.yaml + responses: + "200": + description: "" + headers: {} + content: + application/json: + schema: + $ref: ../../components/schemas/key-value-stores/KeyValueStoreResponse.yaml + "400": + $ref: ../../components/responses/BadRequest.yaml + deprecated: false diff --git a/apify-api/openapi/paths/actor-tasks/actor-tasks@{actorTaskId}@runs@last@key-value-store@keys.yaml b/apify-api/openapi/paths/actor-tasks/actor-tasks@{actorTaskId}@runs@last@key-value-store@keys.yaml new file mode 100644 index 0000000000..2ed245128b --- /dev/null +++ b/apify-api/openapi/paths/actor-tasks/actor-tasks@{actorTaskId}@runs@last@key-value-store@keys.yaml @@ -0,0 +1,39 @@ +get: + tags: + - Actor tasks + summary: Get key-value store keys for last run + description: | + Returns a list of keys from the default key-value store of the last actor task run. Redispatches to + [Get list of keys](/api/v2/key-value-store-keys-get). + + Using the `status` query parameter you can ensure to only get a run with a certain status + (e.g. `status=SUCCEEDED`). Only the most recent run with that status is used. + operationId: actorTask_runs_last_keyValueStore_keys_get + parameters: + - $ref: ../../components/parameters/actorTaskId.yaml + - $ref: ../../components/parameters/runs-last/status.yaml + - name: exclusiveStartKey + in: query + description: All keys up to this one (including) are skipped from the result. + style: form + explode: true + schema: + type: string + - name: limit + in: query + description: Maximum number of keys to return. + style: form + explode: true + schema: + type: number + responses: + "200": + description: "" + headers: {} + content: + application/json: + schema: + $ref: ../../components/schemas/key-value-stores/ListOfKeysResponse.yaml + "400": + $ref: ../../components/responses/BadRequest.yaml + deprecated: false diff --git a/apify-api/openapi/paths/actor-tasks/actor-tasks@{actorTaskId}@runs@last@key-value-store@records@{recordKey}.yaml b/apify-api/openapi/paths/actor-tasks/actor-tasks@{actorTaskId}@runs@last@key-value-store@records@{recordKey}.yaml new file mode 100644 index 0000000000..2a5610247f --- /dev/null +++ b/apify-api/openapi/paths/actor-tasks/actor-tasks@{actorTaskId}@runs@last@key-value-store@records@{recordKey}.yaml @@ -0,0 +1,68 @@ +get: + tags: + - Actor tasks + summary: Get record from key-value store of last run + description: | + Returns a record from the default key-value store of the last actor task run. Redispatches to + [Get record](/api/v2/key-value-store-record-get). + + Using the `status` query parameter you can ensure to only get a run with a certain status + (e.g. `status=SUCCEEDED`). Only the most recent run with that status is used. + operationId: actorTask_runs_last_keyValueStore_record_get + parameters: + - $ref: ../../components/parameters/actorTaskId.yaml + - name: recordKey + in: path + description: The key of the record in the key-value store. + required: true + style: simple + schema: + type: string + example: INPUT + - $ref: ../../components/parameters/runs-last/status.yaml + responses: + "200": + description: The record value. Content depends on the stored content type. + headers: {} + content: + application/json: + schema: + type: object + "400": + $ref: ../../components/responses/BadRequest.yaml + deprecated: false +put: + tags: + - Actor tasks + summary: Put record in key-value store of last run + description: | + Stores a record in the default key-value store of the last actor task run. Redispatches to + [Put record](/api/v2/key-value-store-record-put). + + Using the `status` query parameter you can ensure to only get a run with a certain status + (e.g. `status=SUCCEEDED`). Only the most recent run with that status is used. + operationId: actorTask_runs_last_keyValueStore_record_put + parameters: + - $ref: ../../components/parameters/actorTaskId.yaml + - name: recordKey + in: path + description: The key of the record in the key-value store. + required: true + style: simple + schema: + type: string + example: INPUT + - $ref: ../../components/parameters/runs-last/status.yaml + requestBody: + required: true + content: + application/json: + schema: + type: object + responses: + "200": + description: The record was saved. + headers: {} + "400": + $ref: ../../components/responses/BadRequest.yaml + deprecated: false diff --git a/apify-api/openapi/paths/actor-tasks/actor-tasks@{actorTaskId}@runs@last@log.yaml b/apify-api/openapi/paths/actor-tasks/actor-tasks@{actorTaskId}@runs@last@log.yaml new file mode 100644 index 0000000000..753dfebca3 --- /dev/null +++ b/apify-api/openapi/paths/actor-tasks/actor-tasks@{actorTaskId}@runs@last@log.yaml @@ -0,0 +1,47 @@ +get: + tags: + - Actor tasks + summary: Get log for last run + description: | + Retrieves the log of the last actor task run. Redispatches to [Get log](/api/v2/log-get) + for the run resolved by this alias. + + Using the `status` query parameter you can ensure to only get a run with a certain status + (e.g. `status=SUCCEEDED`). Only the most recent run with that status is used. + operationId: actorTask_runs_last_log_get + parameters: + - $ref: ../../components/parameters/actorTaskId.yaml + - $ref: ../../components/parameters/runs-last/status.yaml + - name: stream + in: query + description: If true, the log will be streamed as it is generated. + style: form + explode: true + schema: + type: boolean + - name: download + in: query + description: If true, the log will be returned as a downloadable file. + style: form + explode: true + schema: + type: boolean + - name: raw + in: query + description: If true, the log will be returned without additional metadata. + style: form + explode: true + schema: + type: boolean + responses: + "200": + description: "" + headers: {} + content: + text/plain: + schema: + type: string + example: "2017-07-14T06:00:49.733Z Application started.\n" + "400": + $ref: ../../components/responses/BadRequest.yaml + deprecated: false diff --git a/apify-api/openapi/paths/actor-tasks/actor-tasks@{actorTaskId}@runs@last@metamorph.yaml b/apify-api/openapi/paths/actor-tasks/actor-tasks@{actorTaskId}@runs@last@metamorph.yaml new file mode 100644 index 0000000000..ec69c450d9 --- /dev/null +++ b/apify-api/openapi/paths/actor-tasks/actor-tasks@{actorTaskId}@runs@last@metamorph.yaml @@ -0,0 +1,74 @@ +post: + tags: + - Actor tasks + summary: Metamorph last run + description: | + Transforms the last actor task run into a run of another Actor. Redispatches to + [Metamorph run](/api/v2/actor-run-metamorph-post). + + Using the `status` query parameter you can ensure to only get a run with a certain status + (e.g. `status=SUCCEEDED`). Only the most recent run with that status is used. + operationId: actorTask_runs_last_metamorph_post + parameters: + - $ref: ../../components/parameters/actorTaskId.yaml + - $ref: ../../components/parameters/runs-last/status.yaml + - name: targetActorId + in: query + description: ID of a target Actor that the run should be transformed into. + required: true + style: form + explode: true + schema: + type: string + - name: build + in: query + description: Optional build of the target Actor. It can be either a build tag or build number. + style: form + explode: true + schema: + type: string + responses: + "200": + description: "" + headers: {} + content: + application/json: + schema: + $ref: ../../components/schemas/actor-runs/RunResponse.yaml + example: + data: + id: HG7ML7M8z78YcAPEB + actId: HDSasDasz78YcAPEB + userId: 7sT5jcggjjA9fNcxF + startedAt: "2019-11-30T07:34:24.202Z" + finishedAt: "2019-12-12T09:30:12.202Z" + status: RUNNING + statusMessage: Actor is running + isStatusMessageTerminal: false + meta: + origin: WEB + clientIp: 172.234.12.34 + userAgent: Mozilla/5.0 (iPad) + stats: + inputBodyLen: 240 + migrationCount: 0 + restartCount: 0 + resurrectCount: 0 + durationMillis: 26239 + runTimeSecs: 26.239 + metamorph: 0 + computeUnits: 0.0072886 + options: + build: latest + timeoutSecs: 300 + memoryMbytes: 1024 + diskMbytes: 2048 + buildId: 7sT5jcggjjA9fNcxF + exitCode: 0 + generalAccess: RESTRICTED + defaultKeyValueStoreId: eJNzqsbPiopwJcgGQ + defaultDatasetId: wmKPijuyDnPZAPRMk + defaultRequestQueueId: FL35cSF7jrxr3BY39 + "400": + $ref: ../../components/responses/BadRequest.yaml + deprecated: false diff --git a/apify-api/openapi/paths/actor-tasks/actor-tasks@{actorTaskId}@runs@last@reboot.yaml b/apify-api/openapi/paths/actor-tasks/actor-tasks@{actorTaskId}@runs@last@reboot.yaml new file mode 100644 index 0000000000..0756f1d68f --- /dev/null +++ b/apify-api/openapi/paths/actor-tasks/actor-tasks@{actorTaskId}@runs@last@reboot.yaml @@ -0,0 +1,58 @@ +post: + tags: + - Actor tasks + summary: Reboot last run + description: | + Reboots the last actor task run. Redispatches to [Reboot run](/api/v2/actor-run-reboot-post). + + Using the `status` query parameter you can ensure to only get a run with a certain status + (e.g. `status=SUCCEEDED`). Only the most recent run with that status is used. + operationId: actorTask_runs_last_reboot_post + parameters: + - $ref: ../../components/parameters/actorTaskId.yaml + - $ref: ../../components/parameters/runs-last/status.yaml + responses: + "200": + description: "" + headers: {} + content: + application/json: + schema: + $ref: ../../components/schemas/actor-runs/RunResponse.yaml + example: + data: + id: HG7ML7M8z78YcAPEB + actId: HDSasDasz78YcAPEB + userId: 7sT5jcggjjA9fNcxF + startedAt: "2019-11-30T07:34:24.202Z" + finishedAt: "2019-12-12T09:30:12.202Z" + status: RUNNING + statusMessage: Actor is running + isStatusMessageTerminal: false + meta: + origin: WEB + clientIp: 172.234.12.34 + userAgent: Mozilla/5.0 (iPad) + stats: + inputBodyLen: 240 + migrationCount: 0 + restartCount: 0 + resurrectCount: 0 + durationMillis: 26239 + runTimeSecs: 26.239 + metamorph: 0 + computeUnits: 0.0072886 + options: + build: latest + timeoutSecs: 300 + memoryMbytes: 1024 + diskMbytes: 2048 + buildId: 7sT5jcggjjA9fNcxF + exitCode: 0 + generalAccess: RESTRICTED + defaultKeyValueStoreId: eJNzqsbPiopwJcgGQ + defaultDatasetId: wmKPijuyDnPZAPRMk + defaultRequestQueueId: FL35cSF7jrxr3BY39 + "400": + $ref: ../../components/responses/BadRequest.yaml + deprecated: false diff --git a/apify-api/openapi/paths/actor-tasks/actor-tasks@{actorTaskId}@runs@last@request-queue.yaml b/apify-api/openapi/paths/actor-tasks/actor-tasks@{actorTaskId}@runs@last@request-queue.yaml new file mode 100644 index 0000000000..9544e97f3e --- /dev/null +++ b/apify-api/openapi/paths/actor-tasks/actor-tasks@{actorTaskId}@runs@last@request-queue.yaml @@ -0,0 +1,25 @@ +get: + tags: + - Actor tasks + summary: Get request queue for last run + description: | + Returns the default request queue of the last actor task run. Redispatches to + [Get request queue](/api/v2/request-queue-get). + + Using the `status` query parameter you can ensure to only get a run with a certain status + (e.g. `status=SUCCEEDED`). Only the most recent run with that status is used. + operationId: actorTask_runs_last_requestQueue_get + parameters: + - $ref: ../../components/parameters/actorTaskId.yaml + - $ref: ../../components/parameters/runs-last/status.yaml + responses: + "200": + description: "" + headers: {} + content: + application/json: + schema: + $ref: ../../components/schemas/request-queues/RequestQueueResponse.yaml + "400": + $ref: ../../components/responses/BadRequest.yaml + deprecated: false diff --git a/apify-api/openapi/paths/actor-tasks/actor-tasks@{actorTaskId}@runs@last@request-queue@head.yaml b/apify-api/openapi/paths/actor-tasks/actor-tasks@{actorTaskId}@runs@last@request-queue@head.yaml new file mode 100644 index 0000000000..c37f25caf1 --- /dev/null +++ b/apify-api/openapi/paths/actor-tasks/actor-tasks@{actorTaskId}@runs@last@request-queue@head.yaml @@ -0,0 +1,40 @@ +get: + tags: + - Actor tasks + summary: Get queue head for last run + description: | + Returns the first requests from the default request queue of the last actor task run. Redispatches to + [Get head](/api/v2/request-queue-head-get). + + Using the `status` query parameter you can ensure to only get a run with a certain status + (e.g. `status=SUCCEEDED`). Only the most recent run with that status is used. + operationId: actorTask_runs_last_requestQueue_head_get + parameters: + - $ref: ../../components/parameters/actorTaskId.yaml + - $ref: ../../components/parameters/runs-last/status.yaml + - name: limit + in: query + description: Maximum number of requests to return. + style: form + explode: true + schema: + type: number + example: 100 + - name: clientKey + in: query + description: A unique identifier of the client accessing the request queue. + style: form + explode: true + schema: + type: string + responses: + "200": + description: "" + headers: {} + content: + application/json: + schema: + $ref: ../../components/schemas/request-queues/HeadResponse.yaml + "400": + $ref: ../../components/responses/BadRequest.yaml + deprecated: false diff --git a/apify-api/openapi/paths/actor-tasks/actor-tasks@{actorTaskId}@runs@last@request-queue@requests.yaml b/apify-api/openapi/paths/actor-tasks/actor-tasks@{actorTaskId}@runs@last@request-queue@requests.yaml new file mode 100644 index 0000000000..12fcd97e2a --- /dev/null +++ b/apify-api/openapi/paths/actor-tasks/actor-tasks@{actorTaskId}@runs@last@request-queue@requests.yaml @@ -0,0 +1,72 @@ +get: + tags: + - Actor tasks + summary: List requests in queue for last run + description: | + Returns requests from the default request queue of the last actor task run. Redispatches to + [List requests](/api/v2/request-queue-requests-get). + + Using the `status` query parameter you can ensure to only get a run with a certain status + (e.g. `status=SUCCEEDED`). Only the most recent run with that status is used. + operationId: actorTask_runs_last_requestQueue_requests_get + parameters: + - $ref: ../../components/parameters/actorTaskId.yaml + - $ref: ../../components/parameters/runs-last/status.yaml + - name: exclusiveStartId + in: query + description: All requests up to this one (including) are skipped from the result. + style: form + explode: true + schema: + type: string + - name: limit + in: query + description: Maximum number of requests to return. + style: form + explode: true + schema: + type: number + example: 100 + responses: + "200": + description: "" + headers: {} + content: + application/json: + schema: + $ref: ../../components/schemas/request-queues/ListOfRequestsResponse.yaml + "400": + $ref: ../../components/responses/BadRequest.yaml + deprecated: false +post: + tags: + - Actor tasks + summary: Add request to queue for last run + description: | + Adds a request to the default request queue of the last actor task run. Redispatches to + [Add request](/api/v2/request-queue-requests-post). + + Using the `status` query parameter you can ensure to only get a run with a certain status + (e.g. `status=SUCCEEDED`). Only the most recent run with that status is used. + operationId: actorTask_runs_last_requestQueue_requests_post + parameters: + - $ref: ../../components/parameters/actorTaskId.yaml + - $ref: ../../components/parameters/runs-last/status.yaml + requestBody: + required: true + content: + application/json: + schema: + $ref: ../../components/schemas/request-queues/RequestDraft.yaml + responses: + "201": + description: "" + headers: {} + content: + application/json: + schema: + allOf: + - $ref: ../../components/schemas/request-queues/AddRequestResponse.yaml + "400": + $ref: ../../components/responses/BadRequest.yaml + deprecated: false diff --git a/apify-api/openapi/paths/actor-tasks/actor-tasks@{actorTaskId}@runs@last@request-queue@requests@{requestId}.yaml b/apify-api/openapi/paths/actor-tasks/actor-tasks@{actorTaskId}@runs@last@request-queue@requests@{requestId}.yaml new file mode 100644 index 0000000000..11ae2ab9cc --- /dev/null +++ b/apify-api/openapi/paths/actor-tasks/actor-tasks@{actorTaskId}@runs@last@request-queue@requests@{requestId}.yaml @@ -0,0 +1,33 @@ +get: + tags: + - Actor tasks + summary: Get request from queue for last run + description: | + Returns a request from the default request queue of the last actor task run. Redispatches to + [Get request](/api/v2/request-queue-request-get). + + Using the `status` query parameter you can ensure to only get a run with a certain status + (e.g. `status=SUCCEEDED`). Only the most recent run with that status is used. + operationId: actorTask_runs_last_requestQueue_request_get + parameters: + - $ref: ../../components/parameters/actorTaskId.yaml + - name: requestId + in: path + description: Request ID. + required: true + style: simple + schema: + type: string + example: xpsmkDlspokDSmklS + - $ref: ../../components/parameters/runs-last/status.yaml + responses: + "200": + description: "" + headers: {} + content: + application/json: + schema: + $ref: ../../components/schemas/request-queues/RequestResponse.yaml + "400": + $ref: ../../components/responses/BadRequest.yaml + deprecated: false diff --git a/apify-api/openapi/paths/actors/acts@{actorId}@runs@last.yaml b/apify-api/openapi/paths/actors/acts@{actorId}@runs@last.yaml index 1307b9cf47..eb8550f513 100644 --- a/apify-api/openapi/paths/actors/acts@{actorId}@runs@last.yaml +++ b/apify-api/openapi/paths/actors/acts@{actorId}@runs@last.yaml @@ -58,22 +58,9 @@ get: In order to save new items to the dataset, send HTTP POST request with JSON payload to the same URL. operationId: act_runs_last_get parameters: - - name: actorId - in: path - description: Actor ID or a tilde-separated owner's username and Actor name. - required: true - style: simple - schema: - type: string - example: janedoe~my-actor - - name: status - in: query - description: Filter for the run status. - style: form - explode: true - schema: - type: string - example: SUCCEEDED + - $ref: ../../components/parameters/actorId.yaml + - $ref: ../../components/parameters/runs-last/status.yaml + - $ref: ../../components/parameters/runs-last/waitForFinish.yaml responses: "200": description: "" diff --git a/apify-api/openapi/paths/actors/acts@{actorId}@runs@last@abort.yaml b/apify-api/openapi/paths/actors/acts@{actorId}@runs@last@abort.yaml new file mode 100644 index 0000000000..bd6960f2ff --- /dev/null +++ b/apify-api/openapi/paths/actors/acts@{actorId}@runs@last@abort.yaml @@ -0,0 +1,68 @@ +post: + tags: + - Actors/Actor runs + summary: Abort last run + description: | + Aborts the last Actor run. Redispatches to [Abort run](/api/v2/actor-run-abort-post). + + Using the `status` query parameter you can ensure to only get a run with a certain status + (e.g. `status=SUCCEEDED`). Only the most recent run with that status is used. + operationId: act_runs_last_abort_post + parameters: + - $ref: ../../components/parameters/actorId.yaml + - $ref: ../../components/parameters/runs-last/status.yaml + - name: gracefully + in: query + description: | + If true passed, the Actor run will abort gracefully. + It will send `aborting` and `persistState` event into run and force-stop the run after 30 seconds. + It is helpful in cases where you plan to resurrect the run later. + style: form + explode: true + schema: + type: boolean + responses: + "200": + description: "" + headers: {} + content: + application/json: + schema: + $ref: ../../components/schemas/actor-runs/RunResponse.yaml + example: + data: + id: HG7ML7M8z78YcAPEB + actId: HDSasDasz78YcAPEB + userId: 7sT5jcggjjA9fNcxF + startedAt: "2019-11-30T07:34:24.202Z" + finishedAt: "2019-12-12T09:30:12.202Z" + status: RUNNING + statusMessage: Actor is running + isStatusMessageTerminal: false + meta: + origin: WEB + clientIp: 172.234.12.34 + userAgent: Mozilla/5.0 (iPad) + stats: + inputBodyLen: 240 + migrationCount: 0 + restartCount: 0 + resurrectCount: 0 + durationMillis: 26239 + runTimeSecs: 26.239 + metamorph: 0 + computeUnits: 0.0072886 + options: + build: latest + timeoutSecs: 300 + memoryMbytes: 1024 + diskMbytes: 2048 + buildId: 7sT5jcggjjA9fNcxF + exitCode: 0 + generalAccess: RESTRICTED + defaultKeyValueStoreId: eJNzqsbPiopwJcgGQ + defaultDatasetId: wmKPijuyDnPZAPRMk + defaultRequestQueueId: FL35cSF7jrxr3BY39 + "400": + $ref: ../../components/responses/BadRequest.yaml + deprecated: false diff --git a/apify-api/openapi/paths/actors/acts@{actorId}@runs@last@dataset.yaml b/apify-api/openapi/paths/actors/acts@{actorId}@runs@last@dataset.yaml new file mode 100644 index 0000000000..09002206e6 --- /dev/null +++ b/apify-api/openapi/paths/actors/acts@{actorId}@runs@last@dataset.yaml @@ -0,0 +1,24 @@ +get: + tags: + - Actors/Actor runs + summary: Get dataset for last run + description: | + Returns the default dataset of the last Actor run. Redispatches to [Get dataset](/api/v2/dataset-get). + + Using the `status` query parameter you can ensure to only get a run with a certain status + (e.g. `status=SUCCEEDED`). Only the most recent run with that status is used. + operationId: act_runs_last_dataset_get + parameters: + - $ref: ../../components/parameters/actorId.yaml + - $ref: ../../components/parameters/runs-last/status.yaml + responses: + "200": + description: "" + headers: {} + content: + application/json: + schema: + $ref: ../../components/schemas/datasets/DatasetResponse.yaml + "400": + $ref: ../../components/responses/BadRequest.yaml + deprecated: false diff --git a/apify-api/openapi/paths/actors/acts@{actorId}@runs@last@dataset@items.yaml b/apify-api/openapi/paths/actors/acts@{actorId}@runs@last@dataset@items.yaml new file mode 100644 index 0000000000..1d2f55ac97 --- /dev/null +++ b/apify-api/openapi/paths/actors/acts@{actorId}@runs@last@dataset@items.yaml @@ -0,0 +1,127 @@ +get: + tags: + - Actors/Actor runs + summary: Get dataset items for last run + description: | + Returns items from the default dataset of the last Actor run. Redispatches to + [Get dataset items](/api/v2/dataset-items-get). Supports the same query parameters. + + Using the `status` query parameter you can ensure to only get a run with a certain status + (e.g. `status=SUCCEEDED`). Only the most recent run with that status is used. + operationId: act_runs_last_dataset_items_get + parameters: + - $ref: ../../components/parameters/actorId.yaml + - $ref: ../../components/parameters/runs-last/status.yaml + - name: format + in: query + description: Format of the results, possible values are json, jsonl, csv, html, xlsx, xml and rss. + style: form + explode: true + schema: + type: string + default: json + - name: clean + in: query + description: If true, returns only non-empty items and skips hidden fields. + style: form + explode: true + schema: + type: boolean + - name: offset + in: query + description: Number of items that should be skipped at the start. + style: form + explode: true + schema: + type: number + - name: limit + in: query + description: Maximum number of items to return. + style: form + explode: true + schema: + type: number + - name: fields + in: query + description: Comma-separated list of fields to include in the results. + style: form + explode: true + schema: + type: string + - name: omit + in: query + description: Comma-separated list of fields to omit from the results. + style: form + explode: true + schema: + type: string + - name: unwind + in: query + description: Name of a field to unwind. If the field is an array, each element becomes a separate record. + style: form + explode: true + schema: + type: string + - name: flatten + in: query + description: Comma-separated list of fields to flatten. Nested objects are merged into the parent. + style: form + explode: true + schema: + type: string + - name: desc + in: query + description: If true, results are returned in descending order. + style: form + explode: true + schema: + type: boolean + - name: attachment + in: query + description: If true, the response will be returned as a file attachment. + style: form + explode: true + schema: + type: boolean + responses: + "200": + description: "" + headers: {} + content: + application/json: + schema: + type: array + items: + type: object + "400": + $ref: ../../components/responses/BadRequest.yaml + deprecated: false +post: + tags: + - Actors/Actor runs + summary: Push items to dataset for last run + description: | + Pushes items to the default dataset of the last Actor run. Redispatches to + [Push items](/api/v2/dataset-items-post). + + Using the `status` query parameter you can ensure to only get a run with a certain status + (e.g. `status=SUCCEEDED`). Only the most recent run with that status is used. + operationId: act_runs_last_dataset_items_post + parameters: + - $ref: ../../components/parameters/actorId.yaml + - $ref: ../../components/parameters/runs-last/status.yaml + requestBody: + required: true + content: + application/json: + schema: + type: array + items: + type: object + responses: + "201": + description: Items were added. + headers: {} + "400": + $ref: ../../components/responses/BadRequest.yaml + deprecated: false diff --git a/apify-api/openapi/paths/actors/acts@{actorId}@runs@last@key-value-store.yaml b/apify-api/openapi/paths/actors/acts@{actorId}@runs@last@key-value-store.yaml new file mode 100644 index 0000000000..37369b42ca --- /dev/null +++ b/apify-api/openapi/paths/actors/acts@{actorId}@runs@last@key-value-store.yaml @@ -0,0 +1,25 @@ +get: + tags: + - Actors/Actor runs + summary: Get key-value store for last run + description: | + Returns the default key-value store of the last Actor run. Redispatches to + [Get store](/api/v2/key-value-store-get). + + Using the `status` query parameter you can ensure to only get a run with a certain status + (e.g. `status=SUCCEEDED`). Only the most recent run with that status is used. + operationId: act_runs_last_keyValueStore_get + parameters: + - $ref: ../../components/parameters/actorId.yaml + - $ref: ../../components/parameters/runs-last/status.yaml + responses: + "200": + description: "" + headers: {} + content: + application/json: + schema: + $ref: ../../components/schemas/key-value-stores/KeyValueStoreResponse.yaml + "400": + $ref: ../../components/responses/BadRequest.yaml + deprecated: false diff --git a/apify-api/openapi/paths/actors/acts@{actorId}@runs@last@key-value-store@keys.yaml b/apify-api/openapi/paths/actors/acts@{actorId}@runs@last@key-value-store@keys.yaml new file mode 100644 index 0000000000..63c2d5caf5 --- /dev/null +++ b/apify-api/openapi/paths/actors/acts@{actorId}@runs@last@key-value-store@keys.yaml @@ -0,0 +1,39 @@ +get: + tags: + - Actors/Actor runs + summary: Get key-value store keys for last run + description: | + Returns a list of keys from the default key-value store of the last Actor run. Redispatches to + [Get list of keys](/api/v2/key-value-store-keys-get). + + Using the `status` query parameter you can ensure to only get a run with a certain status + (e.g. `status=SUCCEEDED`). Only the most recent run with that status is used. + operationId: act_runs_last_keyValueStore_keys_get + parameters: + - $ref: ../../components/parameters/actorId.yaml + - $ref: ../../components/parameters/runs-last/status.yaml + - name: exclusiveStartKey + in: query + description: All keys up to this one (including) are skipped from the result. + style: form + explode: true + schema: + type: string + - name: limit + in: query + description: Maximum number of keys to return. + style: form + explode: true + schema: + type: number + responses: + "200": + description: "" + headers: {} + content: + application/json: + schema: + $ref: ../../components/schemas/key-value-stores/ListOfKeysResponse.yaml + "400": + $ref: ../../components/responses/BadRequest.yaml + deprecated: false diff --git a/apify-api/openapi/paths/actors/acts@{actorId}@runs@last@key-value-store@records@{recordKey}.yaml b/apify-api/openapi/paths/actors/acts@{actorId}@runs@last@key-value-store@records@{recordKey}.yaml new file mode 100644 index 0000000000..4953add05a --- /dev/null +++ b/apify-api/openapi/paths/actors/acts@{actorId}@runs@last@key-value-store@records@{recordKey}.yaml @@ -0,0 +1,68 @@ +get: + tags: + - Actors/Actor runs + summary: Get record from key-value store of last run + description: | + Returns a record from the default key-value store of the last Actor run. Redispatches to + [Get record](/api/v2/key-value-store-record-get). + + Using the `status` query parameter you can ensure to only get a run with a certain status + (e.g. `status=SUCCEEDED`). Only the most recent run with that status is used. + operationId: act_runs_last_keyValueStore_record_get + parameters: + - $ref: ../../components/parameters/actorId.yaml + - name: recordKey + in: path + description: The key of the record in the key-value store. + required: true + style: simple + schema: + type: string + example: INPUT + - $ref: ../../components/parameters/runs-last/status.yaml + responses: + "200": + description: The record value. Content depends on the stored content type. + headers: {} + content: + application/json: + schema: + type: object + "400": + $ref: ../../components/responses/BadRequest.yaml + deprecated: false +put: + tags: + - Actors/Actor runs + summary: Put record in key-value store of last run + description: | + Stores a record in the default key-value store of the last Actor run. Redispatches to + [Put record](/api/v2/key-value-store-record-put). + + Using the `status` query parameter you can ensure to only get a run with a certain status + (e.g. `status=SUCCEEDED`). Only the most recent run with that status is used. + operationId: act_runs_last_keyValueStore_record_put + parameters: + - $ref: ../../components/parameters/actorId.yaml + - name: recordKey + in: path + description: The key of the record in the key-value store. + required: true + style: simple + schema: + type: string + example: INPUT + - $ref: ../../components/parameters/runs-last/status.yaml + requestBody: + required: true + content: + application/json: + schema: + type: object + responses: + "200": + description: The record was saved. + headers: {} + "400": + $ref: ../../components/responses/BadRequest.yaml + deprecated: false diff --git a/apify-api/openapi/paths/actors/acts@{actorId}@runs@last@log.yaml b/apify-api/openapi/paths/actors/acts@{actorId}@runs@last@log.yaml new file mode 100644 index 0000000000..b6cd1614da --- /dev/null +++ b/apify-api/openapi/paths/actors/acts@{actorId}@runs@last@log.yaml @@ -0,0 +1,47 @@ +get: + tags: + - Actors/Actor runs + summary: Get log for last run + description: | + Retrieves the log of the last Actor run. Redispatches to [Get log](/api/v2/log-get) + for the run resolved by this alias. + + Using the `status` query parameter you can ensure to only get a run with a certain status + (e.g. `status=SUCCEEDED`). Only the most recent run with that status is used. + operationId: act_runs_last_log_get + parameters: + - $ref: ../../components/parameters/actorId.yaml + - $ref: ../../components/parameters/runs-last/status.yaml + - name: stream + in: query + description: If true, the log will be streamed as it is generated. + style: form + explode: true + schema: + type: boolean + - name: download + in: query + description: If true, the log will be returned as a downloadable file. + style: form + explode: true + schema: + type: boolean + - name: raw + in: query + description: If true, the log will be returned without additional metadata. + style: form + explode: true + schema: + type: boolean + responses: + "200": + description: "" + headers: {} + content: + text/plain: + schema: + type: string + example: "2017-07-14T06:00:49.733Z Application started.\n" + "400": + $ref: ../../components/responses/BadRequest.yaml + deprecated: false diff --git a/apify-api/openapi/paths/actors/acts@{actorId}@runs@last@metamorph.yaml b/apify-api/openapi/paths/actors/acts@{actorId}@runs@last@metamorph.yaml new file mode 100644 index 0000000000..3ede03c619 --- /dev/null +++ b/apify-api/openapi/paths/actors/acts@{actorId}@runs@last@metamorph.yaml @@ -0,0 +1,74 @@ +post: + tags: + - Actors/Actor runs + summary: Metamorph last run + description: | + Transforms the last Actor run into a run of another Actor. Redispatches to + [Metamorph run](/api/v2/actor-run-metamorph-post). + + Using the `status` query parameter you can ensure to only get a run with a certain status + (e.g. `status=SUCCEEDED`). Only the most recent run with that status is used. + operationId: act_runs_last_metamorph_post + parameters: + - $ref: ../../components/parameters/actorId.yaml + - $ref: ../../components/parameters/runs-last/status.yaml + - name: targetActorId + in: query + description: ID of a target Actor that the run should be transformed into. + required: true + style: form + explode: true + schema: + type: string + - name: build + in: query + description: Optional build of the target Actor. It can be either a build tag or build number. + style: form + explode: true + schema: + type: string + responses: + "200": + description: "" + headers: {} + content: + application/json: + schema: + $ref: ../../components/schemas/actor-runs/RunResponse.yaml + example: + data: + id: HG7ML7M8z78YcAPEB + actId: HDSasDasz78YcAPEB + userId: 7sT5jcggjjA9fNcxF + startedAt: "2019-11-30T07:34:24.202Z" + finishedAt: "2019-12-12T09:30:12.202Z" + status: RUNNING + statusMessage: Actor is running + isStatusMessageTerminal: false + meta: + origin: WEB + clientIp: 172.234.12.34 + userAgent: Mozilla/5.0 (iPad) + stats: + inputBodyLen: 240 + migrationCount: 0 + restartCount: 0 + resurrectCount: 0 + durationMillis: 26239 + runTimeSecs: 26.239 + metamorph: 0 + computeUnits: 0.0072886 + options: + build: latest + timeoutSecs: 300 + memoryMbytes: 1024 + diskMbytes: 2048 + buildId: 7sT5jcggjjA9fNcxF + exitCode: 0 + generalAccess: RESTRICTED + defaultKeyValueStoreId: eJNzqsbPiopwJcgGQ + defaultDatasetId: wmKPijuyDnPZAPRMk + defaultRequestQueueId: FL35cSF7jrxr3BY39 + "400": + $ref: ../../components/responses/BadRequest.yaml + deprecated: false diff --git a/apify-api/openapi/paths/actors/acts@{actorId}@runs@last@reboot.yaml b/apify-api/openapi/paths/actors/acts@{actorId}@runs@last@reboot.yaml new file mode 100644 index 0000000000..b6756a1880 --- /dev/null +++ b/apify-api/openapi/paths/actors/acts@{actorId}@runs@last@reboot.yaml @@ -0,0 +1,58 @@ +post: + tags: + - Actors/Actor runs + summary: Reboot last run + description: | + Reboots the last Actor run. Redispatches to [Reboot run](/api/v2/actor-run-reboot-post). + + Using the `status` query parameter you can ensure to only get a run with a certain status + (e.g. `status=SUCCEEDED`). Only the most recent run with that status is used. + operationId: act_runs_last_reboot_post + parameters: + - $ref: ../../components/parameters/actorId.yaml + - $ref: ../../components/parameters/runs-last/status.yaml + responses: + "200": + description: "" + headers: {} + content: + application/json: + schema: + $ref: ../../components/schemas/actor-runs/RunResponse.yaml + example: + data: + id: HG7ML7M8z78YcAPEB + actId: HDSasDasz78YcAPEB + userId: 7sT5jcggjjA9fNcxF + startedAt: "2019-11-30T07:34:24.202Z" + finishedAt: "2019-12-12T09:30:12.202Z" + status: RUNNING + statusMessage: Actor is running + isStatusMessageTerminal: false + meta: + origin: WEB + clientIp: 172.234.12.34 + userAgent: Mozilla/5.0 (iPad) + stats: + inputBodyLen: 240 + migrationCount: 0 + restartCount: 0 + resurrectCount: 0 + durationMillis: 26239 + runTimeSecs: 26.239 + metamorph: 0 + computeUnits: 0.0072886 + options: + build: latest + timeoutSecs: 300 + memoryMbytes: 1024 + diskMbytes: 2048 + buildId: 7sT5jcggjjA9fNcxF + exitCode: 0 + generalAccess: RESTRICTED + defaultKeyValueStoreId: eJNzqsbPiopwJcgGQ + defaultDatasetId: wmKPijuyDnPZAPRMk + defaultRequestQueueId: FL35cSF7jrxr3BY39 + "400": + $ref: ../../components/responses/BadRequest.yaml + deprecated: false diff --git a/apify-api/openapi/paths/actors/acts@{actorId}@runs@last@request-queue.yaml b/apify-api/openapi/paths/actors/acts@{actorId}@runs@last@request-queue.yaml new file mode 100644 index 0000000000..e77549a421 --- /dev/null +++ b/apify-api/openapi/paths/actors/acts@{actorId}@runs@last@request-queue.yaml @@ -0,0 +1,25 @@ +get: + tags: + - Actors/Actor runs + summary: Get request queue for last run + description: | + Returns the default request queue of the last Actor run. Redispatches to + [Get request queue](/api/v2/request-queue-get). + + Using the `status` query parameter you can ensure to only get a run with a certain status + (e.g. `status=SUCCEEDED`). Only the most recent run with that status is used. + operationId: act_runs_last_requestQueue_get + parameters: + - $ref: ../../components/parameters/actorId.yaml + - $ref: ../../components/parameters/runs-last/status.yaml + responses: + "200": + description: "" + headers: {} + content: + application/json: + schema: + $ref: ../../components/schemas/request-queues/RequestQueueResponse.yaml + "400": + $ref: ../../components/responses/BadRequest.yaml + deprecated: false diff --git a/apify-api/openapi/paths/actors/acts@{actorId}@runs@last@request-queue@head.yaml b/apify-api/openapi/paths/actors/acts@{actorId}@runs@last@request-queue@head.yaml new file mode 100644 index 0000000000..92710b2f79 --- /dev/null +++ b/apify-api/openapi/paths/actors/acts@{actorId}@runs@last@request-queue@head.yaml @@ -0,0 +1,40 @@ +get: + tags: + - Actors/Actor runs + summary: Get queue head for last run + description: | + Returns the first requests from the default request queue of the last Actor run. Redispatches to + [Get head](/api/v2/request-queue-head-get). + + Using the `status` query parameter you can ensure to only get a run with a certain status + (e.g. `status=SUCCEEDED`). Only the most recent run with that status is used. + operationId: act_runs_last_requestQueue_head_get + parameters: + - $ref: ../../components/parameters/actorId.yaml + - $ref: ../../components/parameters/runs-last/status.yaml + - name: limit + in: query + description: Maximum number of requests to return. + style: form + explode: true + schema: + type: number + example: 100 + - name: clientKey + in: query + description: A unique identifier of the client accessing the request queue. + style: form + explode: true + schema: + type: string + responses: + "200": + description: "" + headers: {} + content: + application/json: + schema: + $ref: ../../components/schemas/request-queues/HeadResponse.yaml + "400": + $ref: ../../components/responses/BadRequest.yaml + deprecated: false diff --git a/apify-api/openapi/paths/actors/acts@{actorId}@runs@last@request-queue@requests.yaml b/apify-api/openapi/paths/actors/acts@{actorId}@runs@last@request-queue@requests.yaml new file mode 100644 index 0000000000..4daf2c38e4 --- /dev/null +++ b/apify-api/openapi/paths/actors/acts@{actorId}@runs@last@request-queue@requests.yaml @@ -0,0 +1,72 @@ +get: + tags: + - Actors/Actor runs + summary: List requests in queue for last run + description: | + Returns requests from the default request queue of the last Actor run. Redispatches to + [List requests](/api/v2/request-queue-requests-get). + + Using the `status` query parameter you can ensure to only get a run with a certain status + (e.g. `status=SUCCEEDED`). Only the most recent run with that status is used. + operationId: act_runs_last_requestQueue_requests_get + parameters: + - $ref: ../../components/parameters/actorId.yaml + - $ref: ../../components/parameters/runs-last/status.yaml + - name: exclusiveStartId + in: query + description: All requests up to this one (including) are skipped from the result. + style: form + explode: true + schema: + type: string + - name: limit + in: query + description: Maximum number of requests to return. + style: form + explode: true + schema: + type: number + example: 100 + responses: + "200": + description: "" + headers: {} + content: + application/json: + schema: + $ref: ../../components/schemas/request-queues/ListOfRequestsResponse.yaml + "400": + $ref: ../../components/responses/BadRequest.yaml + deprecated: false +post: + tags: + - Actors/Actor runs + summary: Add request to queue for last run + description: | + Adds a request to the default request queue of the last Actor run. Redispatches to + [Add request](/api/v2/request-queue-requests-post). + + Using the `status` query parameter you can ensure to only get a run with a certain status + (e.g. `status=SUCCEEDED`). Only the most recent run with that status is used. + operationId: act_runs_last_requestQueue_requests_post + parameters: + - $ref: ../../components/parameters/actorId.yaml + - $ref: ../../components/parameters/runs-last/status.yaml + requestBody: + required: true + content: + application/json: + schema: + $ref: ../../components/schemas/request-queues/RequestDraft.yaml + responses: + "201": + description: "" + headers: {} + content: + application/json: + schema: + allOf: + - $ref: ../../components/schemas/request-queues/AddRequestResponse.yaml + "400": + $ref: ../../components/responses/BadRequest.yaml + deprecated: false diff --git a/apify-api/openapi/paths/actors/acts@{actorId}@runs@last@request-queue@requests@{requestId}.yaml b/apify-api/openapi/paths/actors/acts@{actorId}@runs@last@request-queue@requests@{requestId}.yaml new file mode 100644 index 0000000000..d89dd8b1a8 --- /dev/null +++ b/apify-api/openapi/paths/actors/acts@{actorId}@runs@last@request-queue@requests@{requestId}.yaml @@ -0,0 +1,33 @@ +get: + tags: + - Actors/Actor runs + summary: Get request from queue for last run + description: | + Returns a request from the default request queue of the last Actor run. Redispatches to + [Get request](/api/v2/request-queue-request-get). + + Using the `status` query parameter you can ensure to only get a run with a certain status + (e.g. `status=SUCCEEDED`). Only the most recent run with that status is used. + operationId: act_runs_last_requestQueue_request_get + parameters: + - $ref: ../../components/parameters/actorId.yaml + - name: requestId + in: path + description: Request ID. + required: true + style: simple + schema: + type: string + example: xpsmkDlspokDSmklS + - $ref: ../../components/parameters/runs-last/status.yaml + responses: + "200": + description: "" + headers: {} + content: + application/json: + schema: + $ref: ../../components/schemas/request-queues/RequestResponse.yaml + "400": + $ref: ../../components/responses/BadRequest.yaml + deprecated: false From 51bf370cc8581886c9662c5a328cc1d022fd20bc Mon Sep 17 00:00:00 2001 From: Josef Prochazka Date: Mon, 2 Mar 2026 14:58:22 +0100 Subject: [PATCH 2/4] Extract shared parameters and responses into reusable components Extract gracefully, targetActorId, and metamorph build parameters into components/parameters/ and extract abort/metamorph/reboot 200 responses (with full usage/usageUsd examples) into components/responses/actor-runs/. Update actor-runs canonical files and all runs/last action files to use $ref for these shared components, eliminating ~565 lines of duplication. Co-Authored-By: Claude Sonnet 4.6 --- .../components/parameters/gracefully.yaml | 11 ++ .../parameters/metamorph/build.yaml | 13 +++ .../parameters/metamorph/targetActorId.yaml | 9 ++ .../responses/actor-runs/abort.yaml | 78 +++++++++++++ .../responses/actor-runs/metamorph.yaml | 84 ++++++++++++++ .../responses/actor-runs/reboot.yaml | 80 +++++++++++++ .../actor-runs/actor-runs@{runId}@abort.yaml | 91 +-------------- .../actor-runs@{runId}@metamorph.yaml | 109 +----------------- .../actor-runs/actor-runs@{runId}@reboot.yaml | 81 +------------ ...r-tasks@{actorTaskId}@runs@last@abort.yaml | 52 +-------- ...sks@{actorTaskId}@runs@last@metamorph.yaml | 58 +--------- ...-tasks@{actorTaskId}@runs@last@reboot.yaml | 41 +------ .../acts@{actorId}@runs@last@abort.yaml | 52 +-------- .../acts@{actorId}@runs@last@metamorph.yaml | 58 +--------- .../acts@{actorId}@runs@last@reboot.yaml | 41 +------ 15 files changed, 293 insertions(+), 565 deletions(-) create mode 100644 apify-api/openapi/components/parameters/gracefully.yaml create mode 100644 apify-api/openapi/components/parameters/metamorph/build.yaml create mode 100644 apify-api/openapi/components/parameters/metamorph/targetActorId.yaml create mode 100644 apify-api/openapi/components/responses/actor-runs/abort.yaml create mode 100644 apify-api/openapi/components/responses/actor-runs/metamorph.yaml create mode 100644 apify-api/openapi/components/responses/actor-runs/reboot.yaml diff --git a/apify-api/openapi/components/parameters/gracefully.yaml b/apify-api/openapi/components/parameters/gracefully.yaml new file mode 100644 index 0000000000..7dc9daa9b4 --- /dev/null +++ b/apify-api/openapi/components/parameters/gracefully.yaml @@ -0,0 +1,11 @@ +name: gracefully +in: query +description: | + If true passed, the Actor run will abort gracefully. + It will send `aborting` and `persistState` event into run and force-stop the run after 30 seconds. + It is helpful in cases where you plan to resurrect the run later. +style: form +explode: true +schema: + type: boolean + example: true diff --git a/apify-api/openapi/components/parameters/metamorph/build.yaml b/apify-api/openapi/components/parameters/metamorph/build.yaml new file mode 100644 index 0000000000..38a203d9f8 --- /dev/null +++ b/apify-api/openapi/components/parameters/metamorph/build.yaml @@ -0,0 +1,13 @@ +name: build +in: query +description: | + Optional build of the target Actor. + + It can be either a build tag or build number. By default, the run uses + the build specified in the default run configuration for the target + Actor (typically `latest`). +style: form +explode: true +schema: + type: string + example: beta diff --git a/apify-api/openapi/components/parameters/metamorph/targetActorId.yaml b/apify-api/openapi/components/parameters/metamorph/targetActorId.yaml new file mode 100644 index 0000000000..0ee5dd2af9 --- /dev/null +++ b/apify-api/openapi/components/parameters/metamorph/targetActorId.yaml @@ -0,0 +1,9 @@ +name: targetActorId +in: query +description: ID of a target Actor that the run should be transformed into. +required: true +style: form +explode: true +schema: + type: string + example: HDSasDasz78YcAPEB diff --git a/apify-api/openapi/components/responses/actor-runs/abort.yaml b/apify-api/openapi/components/responses/actor-runs/abort.yaml new file mode 100644 index 0000000000..c4d888f70f --- /dev/null +++ b/apify-api/openapi/components/responses/actor-runs/abort.yaml @@ -0,0 +1,78 @@ +description: "" +headers: {} +content: + application/json: + schema: + $ref: ../../schemas/actor-runs/RunResponse.yaml + example: + data: + id: HG7ML7M8z78YcAPEB + actId: janedoe~my-actor + userId: BPWZBd7Z9c746JAng + actorTaskId: rANaydYhUxjsnA3oz + startedAt: "2019-11-30T07:34:24.202Z" + finishedAt: "2019-12-12T09:30:12.202Z" + status: ABORTED + statusMessage: Actor was aborted + isStatusMessageTerminal: true + meta: + origin: WEB + clientIp: 172.234.12.34 + userAgent: Mozilla/5.0 (iPad) + stats: + inputBodyLen: 240 + migrationCount: 0 + restartCount: 0 + resurrectCount: 1 + memAvgBytes: 35914228.4 + memMaxBytes: 38244352 + memCurrentBytes: 0 + cpuAvgUsage: 0.00955965 + cpuMaxUsage: 3.1546 + cpuCurrentUsage: 0 + netRxBytes: 2652 + netTxBytes: 1338 + durationMillis: 26239 + runTimeSecs: 26.239 + metamorph: 0 + computeUnits: 0.0072886 + options: + build: latest + timeoutSecs: 300 + memoryMbytes: 1024 + diskMbytes: 2048 + buildId: 7sT5jcggjjA9fNcxF + exitCode: 0 + generalAccess: RESTRICTED + defaultKeyValueStoreId: eJNzqsbPiopwJcgGQ + defaultDatasetId: wmKPijuyDnPZAPRMk + defaultRequestQueueId: FL35cSF7jrxr3BY39 + isContainerServerReady: false + gitBranchName: master + usage: + ACTOR_COMPUTE_UNITS: 3 + DATASET_READS: 4 + DATASET_WRITES: 4 + KEY_VALUE_STORE_READS: 5 + KEY_VALUE_STORE_WRITES: 3 + KEY_VALUE_STORE_LISTS: 5 + REQUEST_QUEUE_READS: 2 + REQUEST_QUEUE_WRITES: 1 + DATA_TRANSFER_INTERNAL_GBYTES: 1 + DATA_TRANSFER_EXTERNAL_GBYTES: 3 + PROXY_RESIDENTIAL_TRANSFER_GBYTES: 34 + PROXY_SERPS: 3 + usageTotalUsd: 0.2654 + usageUsd: + ACTOR_COMPUTE_UNITS: 0.072 + DATASET_READS: 0.0004 + DATASET_WRITES: 0.0002 + KEY_VALUE_STORE_READS: 0.0006 + KEY_VALUE_STORE_WRITES: 0.002 + KEY_VALUE_STORE_LISTS: 0.004 + REQUEST_QUEUE_READS: 0.005 + REQUEST_QUEUE_WRITES: 0.02 + DATA_TRANSFER_INTERNAL_GBYTES: 0.0004 + DATA_TRANSFER_EXTERNAL_GBYTES: 0.0002 + PROXY_RESIDENTIAL_TRANSFER_GBYTES: 0.16 + PROXY_SERPS: 0.0006 diff --git a/apify-api/openapi/components/responses/actor-runs/metamorph.yaml b/apify-api/openapi/components/responses/actor-runs/metamorph.yaml new file mode 100644 index 0000000000..5158a9e5d0 --- /dev/null +++ b/apify-api/openapi/components/responses/actor-runs/metamorph.yaml @@ -0,0 +1,84 @@ +description: "" +headers: {} +content: + application/json: + schema: + $ref: ../../schemas/actor-runs/RunResponse.yaml + example: + data: + id: HG7ML7M8z78YcAPEB + actId: janedoe~my-actor + userId: PNWZBd7Z9c746JAnF + startedAt: "2019-11-30T07:34:24.202Z" + finishedAt: null + status: RUNNING + statusMessage: Actor is running + isStatusMessageTerminal: false + meta: + origin: WEB + clientIp: 172.234.12.34 + userAgent: Mozilla/5.0 (iPad) + stats: + inputBodyLen: 240 + migrationCount: 0 + restartCount: 0 + resurrectCount: 1 + memAvgBytes: 35914228.4 + memMaxBytes: 38244352 + memCurrentBytes: 0 + cpuAvgUsage: 0.00955965 + cpuMaxUsage: 3.1546 + cpuCurrentUsage: 0 + netRxBytes: 2652 + netTxBytes: 1338 + durationMillis: 26239 + runTimeSecs: 26.239 + metamorph: 0 + computeUnits: 0.0072886 + options: + build: latest + timeoutSecs: 300 + memoryMbytes: 1024 + diskMbytes: 2048 + buildId: HG7ML7M8z78YcAPEB + exitCode: 0 + generalAccess: RESTRICTED + defaultKeyValueStoreId: eJNzqsbPiopwJcgGQ + defaultDatasetId: wmKPijuyDnPZAPRMk + defaultRequestQueueId: FL35cSF7jrxr3BY39 + metamorphs: + - createdAt: "2019-11-30T07:39:24.202Z" + actorId: nspoEjklmnsF2oosD + buildId: ME6oKecqy5kXDS4KQ + inputKey: INPUT-METAMORPH-1 + buildNumber: 0.1.10 + containerUrl: "https://hfewsyknno9o.runs.apify.com" + isContainerServerReady: false + gitBranchName: master + usage: + ACTOR_COMPUTE_UNITS: 3 + DATASET_READS: 4 + DATASET_WRITES: 4 + KEY_VALUE_STORE_READS: 5 + KEY_VALUE_STORE_WRITES: 3 + KEY_VALUE_STORE_LISTS: 5 + REQUEST_QUEUE_READS: 2 + REQUEST_QUEUE_WRITES: 1 + DATA_TRANSFER_INTERNAL_GBYTES: 1 + DATA_TRANSFER_EXTERNAL_GBYTES: 3 + PROXY_RESIDENTIAL_TRANSFER_GBYTES: 34 + PROXY_SERPS: 3 + usageTotalUsd: 0.2654 + usageUsd: + ACTOR_COMPUTE_UNITS: 0.072 + DATASET_READS: 0.0004 + DATASET_WRITES: 0.0002 + KEY_VALUE_STORE_READS: 0.0006 + KEY_VALUE_STORE_WRITES: 0.002 + KEY_VALUE_STORE_LISTS: 0.004 + REQUEST_QUEUE_READS: 0.005 + REQUEST_QUEUE_WRITES: 0.02 + DATA_TRANSFER_INTERNAL_GBYTES: 0.0004 + DATA_TRANSFER_EXTERNAL_GBYTES: 0.0002 + PROXY_RESIDENTIAL_TRANSFER_GBYTES: 0.16 + PROXY_SERPS: 0.0006 diff --git a/apify-api/openapi/components/responses/actor-runs/reboot.yaml b/apify-api/openapi/components/responses/actor-runs/reboot.yaml new file mode 100644 index 0000000000..ef9b38a83f --- /dev/null +++ b/apify-api/openapi/components/responses/actor-runs/reboot.yaml @@ -0,0 +1,80 @@ +description: "" +headers: {} +content: + application/json: + schema: + $ref: ../../schemas/actor-runs/RunResponse.yaml + example: + data: + id: HG7ML7M8z78YcAPEB + actId: HDSasDasz78YcAPEB + userId: 7sT5jcggjjA9fNcxF + actorTaskId: KJHSKHausidyaJKHs + startedAt: "2019-11-30T07:34:24.202Z" + finishedAt: "2019-12-12T09:30:12.202Z" + status: RUNNING + statusMessage: Actor is running + isStatusMessageTerminal: false + meta: + origin: WEB + clientIp: 172.234.12.34 + userAgent: Mozilla/5.0 (iPad) + stats: + inputBodyLen: 240 + migrationCount: 0 + restartCount: 0 + resurrectCount: 2 + memAvgBytes: 267874071.9 + memMaxBytes: 404713472 + memCurrentBytes: 0 + cpuAvgUsage: 33.75321011075384 + cpuMaxUsage: 169.65073553494125 + cpuCurrentUsage: 0 + netRxBytes: 103508042 + netTxBytes: 4854600 + durationMillis: 248472 + runTimeSecs: 248.472 + metamorph: 0 + computeUnits: 0.13804 + options: + build: latest + timeoutSecs: 300 + memoryMbytes: 1024 + diskMbytes: 2048 + buildId: 7sT5jcggjjA9fNcxF + exitCode: 0 + generalAccess: RESTRICTED + defaultKeyValueStoreId: eJNzqsbPiopwJcgGQ + defaultDatasetId: wmKPijuyDnPZAPRMk + defaultRequestQueueId: FL35cSF7jrxr3BY39 + buildNumber: 0.0.36 + containerUrl: "https://g8kd8kbc5ge8.runs.apify.net" + isContainerServerReady: true + gitBranchName: master + usage: + ACTOR_COMPUTE_UNITS: 3 + DATASET_READS: 4 + DATASET_WRITES: 4 + KEY_VALUE_STORE_READS: 5 + KEY_VALUE_STORE_WRITES: 3 + KEY_VALUE_STORE_LISTS: 5 + REQUEST_QUEUE_READS: 2 + REQUEST_QUEUE_WRITES: 1 + DATA_TRANSFER_INTERNAL_GBYTES: 1 + DATA_TRANSFER_EXTERNAL_GBYTES: 3 + PROXY_RESIDENTIAL_TRANSFER_GBYTES: 34 + PROXY_SERPS: 3 + usageTotalUsd: 0.2654 + usageUsd: + ACTOR_COMPUTE_UNITS: 0.072 + DATASET_READS: 0.0004 + DATASET_WRITES: 0.0002 + KEY_VALUE_STORE_READS: 0.0006 + KEY_VALUE_STORE_WRITES: 0.002 + KEY_VALUE_STORE_LISTS: 0.004 + REQUEST_QUEUE_READS: 0.005 + REQUEST_QUEUE_WRITES: 0.02 + DATA_TRANSFER_INTERNAL_GBYTES: 0.0004 + DATA_TRANSFER_EXTERNAL_GBYTES: 0.0002 + PROXY_RESIDENTIAL_TRANSFER_GBYTES: 0.16 + PROXY_SERPS: 0.0006 diff --git a/apify-api/openapi/paths/actor-runs/actor-runs@{runId}@abort.yaml b/apify-api/openapi/paths/actor-runs/actor-runs@{runId}@abort.yaml index ffdd96a716..c938ca051b 100644 --- a/apify-api/openapi/paths/actor-runs/actor-runs@{runId}@abort.yaml +++ b/apify-api/openapi/paths/actor-runs/actor-runs@{runId}@abort.yaml @@ -18,97 +18,10 @@ post: schema: type: string example: 3KH8gEpp4d8uQSe8T - - name: gracefully - in: query - description: | - If true passed, the Actor run will abort gracefully. - It will send `aborting` and `persistState` event into run and force-stop the run after 30 seconds. - It is helpful in cases where you plan to resurrect the run later. - style: form - explode: true - schema: - type: boolean - example: true + - $ref: ../../components/parameters/gracefully.yaml responses: "200": - description: "" - headers: {} - content: - application/json: - schema: - $ref: ../../components/schemas/actor-runs/RunResponse.yaml - example: - data: - id: HG7ML7M8z78YcAPEB - actId: janedoe~my-actor - userId: BPWZBd7Z9c746JAng - actorTaskId: rANaydYhUxjsnA3oz - startedAt: "2019-11-30T07:34:24.202Z" - finishedAt: "2019-12-12T09:30:12.202Z" - status: ABORTED - statusMessage: Actor was aborted - isStatusMessageTerminal: true - meta: - origin: WEB - clientIp: 172.234.12.34 - userAgent: Mozilla/5.0 (iPad) - stats: - inputBodyLen: 240 - migrationCount: 0 - restartCount: 0 - resurrectCount: 1 - memAvgBytes: 35914228.4 - memMaxBytes: 38244352 - memCurrentBytes: 0 - cpuAvgUsage: 0.00955965 - cpuMaxUsage: 3.1546 - cpuCurrentUsage: 0 - netRxBytes: 2652 - netTxBytes: 1338 - durationMillis: 26239 - runTimeSecs: 26.239 - metamorph: 0 - computeUnits: 0.0072886 - options: - build: latest - timeoutSecs: 300 - memoryMbytes: 1024 - diskMbytes: 2048 - buildId: 7sT5jcggjjA9fNcxF - exitCode: 0 - generalAccess: RESTRICTED - defaultKeyValueStoreId: eJNzqsbPiopwJcgGQ - defaultDatasetId: wmKPijuyDnPZAPRMk - defaultRequestQueueId: FL35cSF7jrxr3BY39 - isContainerServerReady: false - gitBranchName: master - usage: - ACTOR_COMPUTE_UNITS: 3 - DATASET_READS: 4 - DATASET_WRITES: 4 - KEY_VALUE_STORE_READS: 5 - KEY_VALUE_STORE_WRITES: 3 - KEY_VALUE_STORE_LISTS: 5 - REQUEST_QUEUE_READS: 2 - REQUEST_QUEUE_WRITES: 1 - DATA_TRANSFER_INTERNAL_GBYTES: 1 - DATA_TRANSFER_EXTERNAL_GBYTES: 3 - PROXY_RESIDENTIAL_TRANSFER_GBYTES: 34 - PROXY_SERPS: 3 - usageTotalUsd: 0.2654 - usageUsd: - ACTOR_COMPUTE_UNITS: 0.072 - DATASET_READS: 0.0004 - DATASET_WRITES: 0.0002 - KEY_VALUE_STORE_READS: 0.0006 - KEY_VALUE_STORE_WRITES: 0.002 - KEY_VALUE_STORE_LISTS: 0.004 - REQUEST_QUEUE_READS: 0.005 - REQUEST_QUEUE_WRITES: 0.02 - DATA_TRANSFER_INTERNAL_GBYTES: 0.0004 - DATA_TRANSFER_EXTERNAL_GBYTES: 0.0002 - PROXY_RESIDENTIAL_TRANSFER_GBYTES: 0.16 - PROXY_SERPS: 0.0006 + $ref: ../../components/responses/actor-runs/abort.yaml "400": $ref: ../../components/responses/BadRequest.yaml deprecated: false diff --git a/apify-api/openapi/paths/actor-runs/actor-runs@{runId}@metamorph.yaml b/apify-api/openapi/paths/actor-runs/actor-runs@{runId}@metamorph.yaml index f5cb45c12a..399afe3c70 100644 --- a/apify-api/openapi/paths/actor-runs/actor-runs@{runId}@metamorph.yaml +++ b/apify-api/openapi/paths/actor-runs/actor-runs@{runId}@metamorph.yaml @@ -29,114 +29,11 @@ post: schema: type: string example: 3KH8gEpp4d8uQSe8T - - name: targetActorId - in: query - description: ID of a target Actor that the run should be transformed into. - required: true - style: form - explode: true - schema: - type: string - example: HDSasDasz78YcAPEB - - name: build - in: query - description: | - Optional build of the target Actor. - - It can be either a build tag or build number. By default, the run uses - the build specified in the default run configuration for the target - Actor (typically `latest`). - style: form - explode: true - schema: - type: string - example: beta + - $ref: ../../components/parameters/metamorph/targetActorId.yaml + - $ref: ../../components/parameters/metamorph/build.yaml responses: "200": - description: "" - headers: {} - content: - application/json: - schema: - $ref: ../../components/schemas/actor-runs/RunResponse.yaml - example: - data: - id: HG7ML7M8z78YcAPEB - actId: janedoe~my-actor - userId: PNWZBd7Z9c746JAnF - startedAt: "2019-11-30T07:34:24.202Z" - finishedAt: null - status: RUNNING - statusMessage: Actor is running - isStatusMessageTerminal: false - meta: - origin: WEB - clientIp: 172.234.12.34 - userAgent: Mozilla/5.0 (iPad) - stats: - inputBodyLen: 240 - migrationCount: 0 - restartCount: 0 - resurrectCount: 1 - memAvgBytes: 35914228.4 - memMaxBytes: 38244352 - memCurrentBytes: 0 - cpuAvgUsage: 0.00955965 - cpuMaxUsage: 3.1546 - cpuCurrentUsage: 0 - netRxBytes: 2652 - netTxBytes: 1338 - durationMillis: 26239 - runTimeSecs: 26.239 - metamorph: 0 - computeUnits: 0.0072886 - options: - build: latest - timeoutSecs: 300 - memoryMbytes: 1024 - diskMbytes: 2048 - buildId: HG7ML7M8z78YcAPEB - exitCode: 0 - generalAccess: RESTRICTED - defaultKeyValueStoreId: eJNzqsbPiopwJcgGQ - defaultDatasetId: wmKPijuyDnPZAPRMk - defaultRequestQueueId: FL35cSF7jrxr3BY39 - metamorphs: - - createdAt: "2019-11-30T07:39:24.202Z" - actorId: nspoEjklmnsF2oosD - buildId: ME6oKecqy5kXDS4KQ - inputKey: INPUT-METAMORPH-1 - buildNumber: 0.1.10 - containerUrl: "https://hfewsyknno9o.runs.apify.com" - isContainerServerReady: false - gitBranchName: master - usage: - ACTOR_COMPUTE_UNITS: 3 - DATASET_READS: 4 - DATASET_WRITES: 4 - KEY_VALUE_STORE_READS: 5 - KEY_VALUE_STORE_WRITES: 3 - KEY_VALUE_STORE_LISTS: 5 - REQUEST_QUEUE_READS: 2 - REQUEST_QUEUE_WRITES: 1 - DATA_TRANSFER_INTERNAL_GBYTES: 1 - DATA_TRANSFER_EXTERNAL_GBYTES: 3 - PROXY_RESIDENTIAL_TRANSFER_GBYTES: 34 - PROXY_SERPS: 3 - usageTotalUsd: 0.2654 - usageUsd: - ACTOR_COMPUTE_UNITS: 0.072 - DATASET_READS: 0.0004 - DATASET_WRITES: 0.0002 - KEY_VALUE_STORE_READS: 0.0006 - KEY_VALUE_STORE_WRITES: 0.002 - KEY_VALUE_STORE_LISTS: 0.004 - REQUEST_QUEUE_READS: 0.005 - REQUEST_QUEUE_WRITES: 0.02 - DATA_TRANSFER_INTERNAL_GBYTES: 0.0004 - DATA_TRANSFER_EXTERNAL_GBYTES: 0.0002 - PROXY_RESIDENTIAL_TRANSFER_GBYTES: 0.16 - PROXY_SERPS: 0.0006 + $ref: ../../components/responses/actor-runs/metamorph.yaml "400": $ref: ../../components/responses/BadRequest.yaml deprecated: false diff --git a/apify-api/openapi/paths/actor-runs/actor-runs@{runId}@reboot.yaml b/apify-api/openapi/paths/actor-runs/actor-runs@{runId}@reboot.yaml index 9fe9a9bef3..68493a5f4f 100644 --- a/apify-api/openapi/paths/actor-runs/actor-runs@{runId}@reboot.yaml +++ b/apify-api/openapi/paths/actor-runs/actor-runs@{runId}@reboot.yaml @@ -22,86 +22,7 @@ post: example: 3KH8gEpp4d8uQSe8T responses: "200": - description: "" - headers: {} - content: - application/json: - schema: - $ref: ../../components/schemas/actor-runs/RunResponse.yaml - example: - data: - id: HG7ML7M8z78YcAPEB - actId: HDSasDasz78YcAPEB - userId: 7sT5jcggjjA9fNcxF - actorTaskId: KJHSKHausidyaJKHs - startedAt: "2019-11-30T07:34:24.202Z" - finishedAt: "2019-12-12T09:30:12.202Z" - status: RUNNING - statusMessage: Actor is running - isStatusMessageTerminal: false - meta: - origin: WEB - clientIp: 172.234.12.34 - userAgent: Mozilla/5.0 (iPad) - stats: - inputBodyLen: 240 - migrationCount: 0 - restartCount: 0 - resurrectCount: 2 - memAvgBytes: 267874071.9 - memMaxBytes: 404713472 - memCurrentBytes: 0 - cpuAvgUsage: 33.75321011075384 - cpuMaxUsage: 169.65073553494125 - cpuCurrentUsage: 0 - netRxBytes: 103508042 - netTxBytes: 4854600 - durationMillis: 248472 - runTimeSecs: 248.472 - metamorph: 0 - computeUnits: 0.13804 - options: - build: latest - timeoutSecs: 300 - memoryMbytes: 1024 - diskMbytes: 2048 - buildId: 7sT5jcggjjA9fNcxF - exitCode: 0 - generalAccess: RESTRICTED - defaultKeyValueStoreId: eJNzqsbPiopwJcgGQ - defaultDatasetId: wmKPijuyDnPZAPRMk - defaultRequestQueueId: FL35cSF7jrxr3BY39 - buildNumber: 0.0.36 - containerUrl: "https://g8kd8kbc5ge8.runs.apify.net" - isContainerServerReady: true - gitBranchName: master - usage: - ACTOR_COMPUTE_UNITS: 3 - DATASET_READS: 4 - DATASET_WRITES: 4 - KEY_VALUE_STORE_READS: 5 - KEY_VALUE_STORE_WRITES: 3 - KEY_VALUE_STORE_LISTS: 5 - REQUEST_QUEUE_READS: 2 - REQUEST_QUEUE_WRITES: 1 - DATA_TRANSFER_INTERNAL_GBYTES: 1 - DATA_TRANSFER_EXTERNAL_GBYTES: 3 - PROXY_RESIDENTIAL_TRANSFER_GBYTES: 34 - PROXY_SERPS: 3 - usageTotalUsd: 0.2654 - usageUsd: - ACTOR_COMPUTE_UNITS: 0.072 - DATASET_READS: 0.0004 - DATASET_WRITES: 0.0002 - KEY_VALUE_STORE_READS: 0.0006 - KEY_VALUE_STORE_WRITES: 0.002 - KEY_VALUE_STORE_LISTS: 0.004 - REQUEST_QUEUE_READS: 0.005 - REQUEST_QUEUE_WRITES: 0.02 - DATA_TRANSFER_INTERNAL_GBYTES: 0.0004 - DATA_TRANSFER_EXTERNAL_GBYTES: 0.0002 - PROXY_RESIDENTIAL_TRANSFER_GBYTES: 0.16 - PROXY_SERPS: 0.0006 + $ref: ../../components/responses/actor-runs/reboot.yaml "400": $ref: ../../components/responses/BadRequest.yaml deprecated: false diff --git a/apify-api/openapi/paths/actor-tasks/actor-tasks@{actorTaskId}@runs@last@abort.yaml b/apify-api/openapi/paths/actor-tasks/actor-tasks@{actorTaskId}@runs@last@abort.yaml index ec873d4b22..bc5d4adfae 100644 --- a/apify-api/openapi/paths/actor-tasks/actor-tasks@{actorTaskId}@runs@last@abort.yaml +++ b/apify-api/openapi/paths/actor-tasks/actor-tasks@{actorTaskId}@runs@last@abort.yaml @@ -11,58 +11,10 @@ post: parameters: - $ref: ../../components/parameters/actorTaskId.yaml - $ref: ../../components/parameters/runs-last/status.yaml - - name: gracefully - in: query - description: | - If true passed, the Actor run will abort gracefully. - It will send `aborting` and `persistState` event into run and force-stop the run after 30 seconds. - It is helpful in cases where you plan to resurrect the run later. - style: form - explode: true - schema: - type: boolean + - $ref: ../../components/parameters/gracefully.yaml responses: "200": - description: "" - headers: {} - content: - application/json: - schema: - $ref: ../../components/schemas/actor-runs/RunResponse.yaml - example: - data: - id: HG7ML7M8z78YcAPEB - actId: HDSasDasz78YcAPEB - userId: 7sT5jcggjjA9fNcxF - startedAt: "2019-11-30T07:34:24.202Z" - finishedAt: "2019-12-12T09:30:12.202Z" - status: RUNNING - statusMessage: Actor is running - isStatusMessageTerminal: false - meta: - origin: WEB - clientIp: 172.234.12.34 - userAgent: Mozilla/5.0 (iPad) - stats: - inputBodyLen: 240 - migrationCount: 0 - restartCount: 0 - resurrectCount: 0 - durationMillis: 26239 - runTimeSecs: 26.239 - metamorph: 0 - computeUnits: 0.0072886 - options: - build: latest - timeoutSecs: 300 - memoryMbytes: 1024 - diskMbytes: 2048 - buildId: 7sT5jcggjjA9fNcxF - exitCode: 0 - generalAccess: RESTRICTED - defaultKeyValueStoreId: eJNzqsbPiopwJcgGQ - defaultDatasetId: wmKPijuyDnPZAPRMk - defaultRequestQueueId: FL35cSF7jrxr3BY39 + $ref: ../../components/responses/actor-runs/abort.yaml "400": $ref: ../../components/responses/BadRequest.yaml deprecated: false diff --git a/apify-api/openapi/paths/actor-tasks/actor-tasks@{actorTaskId}@runs@last@metamorph.yaml b/apify-api/openapi/paths/actor-tasks/actor-tasks@{actorTaskId}@runs@last@metamorph.yaml index ec69c450d9..d12db54f6a 100644 --- a/apify-api/openapi/paths/actor-tasks/actor-tasks@{actorTaskId}@runs@last@metamorph.yaml +++ b/apify-api/openapi/paths/actor-tasks/actor-tasks@{actorTaskId}@runs@last@metamorph.yaml @@ -12,63 +12,11 @@ post: parameters: - $ref: ../../components/parameters/actorTaskId.yaml - $ref: ../../components/parameters/runs-last/status.yaml - - name: targetActorId - in: query - description: ID of a target Actor that the run should be transformed into. - required: true - style: form - explode: true - schema: - type: string - - name: build - in: query - description: Optional build of the target Actor. It can be either a build tag or build number. - style: form - explode: true - schema: - type: string + - $ref: ../../components/parameters/metamorph/targetActorId.yaml + - $ref: ../../components/parameters/metamorph/build.yaml responses: "200": - description: "" - headers: {} - content: - application/json: - schema: - $ref: ../../components/schemas/actor-runs/RunResponse.yaml - example: - data: - id: HG7ML7M8z78YcAPEB - actId: HDSasDasz78YcAPEB - userId: 7sT5jcggjjA9fNcxF - startedAt: "2019-11-30T07:34:24.202Z" - finishedAt: "2019-12-12T09:30:12.202Z" - status: RUNNING - statusMessage: Actor is running - isStatusMessageTerminal: false - meta: - origin: WEB - clientIp: 172.234.12.34 - userAgent: Mozilla/5.0 (iPad) - stats: - inputBodyLen: 240 - migrationCount: 0 - restartCount: 0 - resurrectCount: 0 - durationMillis: 26239 - runTimeSecs: 26.239 - metamorph: 0 - computeUnits: 0.0072886 - options: - build: latest - timeoutSecs: 300 - memoryMbytes: 1024 - diskMbytes: 2048 - buildId: 7sT5jcggjjA9fNcxF - exitCode: 0 - generalAccess: RESTRICTED - defaultKeyValueStoreId: eJNzqsbPiopwJcgGQ - defaultDatasetId: wmKPijuyDnPZAPRMk - defaultRequestQueueId: FL35cSF7jrxr3BY39 + $ref: ../../components/responses/actor-runs/metamorph.yaml "400": $ref: ../../components/responses/BadRequest.yaml deprecated: false diff --git a/apify-api/openapi/paths/actor-tasks/actor-tasks@{actorTaskId}@runs@last@reboot.yaml b/apify-api/openapi/paths/actor-tasks/actor-tasks@{actorTaskId}@runs@last@reboot.yaml index 0756f1d68f..15037ba7e0 100644 --- a/apify-api/openapi/paths/actor-tasks/actor-tasks@{actorTaskId}@runs@last@reboot.yaml +++ b/apify-api/openapi/paths/actor-tasks/actor-tasks@{actorTaskId}@runs@last@reboot.yaml @@ -13,46 +13,7 @@ post: - $ref: ../../components/parameters/runs-last/status.yaml responses: "200": - description: "" - headers: {} - content: - application/json: - schema: - $ref: ../../components/schemas/actor-runs/RunResponse.yaml - example: - data: - id: HG7ML7M8z78YcAPEB - actId: HDSasDasz78YcAPEB - userId: 7sT5jcggjjA9fNcxF - startedAt: "2019-11-30T07:34:24.202Z" - finishedAt: "2019-12-12T09:30:12.202Z" - status: RUNNING - statusMessage: Actor is running - isStatusMessageTerminal: false - meta: - origin: WEB - clientIp: 172.234.12.34 - userAgent: Mozilla/5.0 (iPad) - stats: - inputBodyLen: 240 - migrationCount: 0 - restartCount: 0 - resurrectCount: 0 - durationMillis: 26239 - runTimeSecs: 26.239 - metamorph: 0 - computeUnits: 0.0072886 - options: - build: latest - timeoutSecs: 300 - memoryMbytes: 1024 - diskMbytes: 2048 - buildId: 7sT5jcggjjA9fNcxF - exitCode: 0 - generalAccess: RESTRICTED - defaultKeyValueStoreId: eJNzqsbPiopwJcgGQ - defaultDatasetId: wmKPijuyDnPZAPRMk - defaultRequestQueueId: FL35cSF7jrxr3BY39 + $ref: ../../components/responses/actor-runs/reboot.yaml "400": $ref: ../../components/responses/BadRequest.yaml deprecated: false diff --git a/apify-api/openapi/paths/actors/acts@{actorId}@runs@last@abort.yaml b/apify-api/openapi/paths/actors/acts@{actorId}@runs@last@abort.yaml index bd6960f2ff..aa88ff9952 100644 --- a/apify-api/openapi/paths/actors/acts@{actorId}@runs@last@abort.yaml +++ b/apify-api/openapi/paths/actors/acts@{actorId}@runs@last@abort.yaml @@ -11,58 +11,10 @@ post: parameters: - $ref: ../../components/parameters/actorId.yaml - $ref: ../../components/parameters/runs-last/status.yaml - - name: gracefully - in: query - description: | - If true passed, the Actor run will abort gracefully. - It will send `aborting` and `persistState` event into run and force-stop the run after 30 seconds. - It is helpful in cases where you plan to resurrect the run later. - style: form - explode: true - schema: - type: boolean + - $ref: ../../components/parameters/gracefully.yaml responses: "200": - description: "" - headers: {} - content: - application/json: - schema: - $ref: ../../components/schemas/actor-runs/RunResponse.yaml - example: - data: - id: HG7ML7M8z78YcAPEB - actId: HDSasDasz78YcAPEB - userId: 7sT5jcggjjA9fNcxF - startedAt: "2019-11-30T07:34:24.202Z" - finishedAt: "2019-12-12T09:30:12.202Z" - status: RUNNING - statusMessage: Actor is running - isStatusMessageTerminal: false - meta: - origin: WEB - clientIp: 172.234.12.34 - userAgent: Mozilla/5.0 (iPad) - stats: - inputBodyLen: 240 - migrationCount: 0 - restartCount: 0 - resurrectCount: 0 - durationMillis: 26239 - runTimeSecs: 26.239 - metamorph: 0 - computeUnits: 0.0072886 - options: - build: latest - timeoutSecs: 300 - memoryMbytes: 1024 - diskMbytes: 2048 - buildId: 7sT5jcggjjA9fNcxF - exitCode: 0 - generalAccess: RESTRICTED - defaultKeyValueStoreId: eJNzqsbPiopwJcgGQ - defaultDatasetId: wmKPijuyDnPZAPRMk - defaultRequestQueueId: FL35cSF7jrxr3BY39 + $ref: ../../components/responses/actor-runs/abort.yaml "400": $ref: ../../components/responses/BadRequest.yaml deprecated: false diff --git a/apify-api/openapi/paths/actors/acts@{actorId}@runs@last@metamorph.yaml b/apify-api/openapi/paths/actors/acts@{actorId}@runs@last@metamorph.yaml index 3ede03c619..6b551c83bc 100644 --- a/apify-api/openapi/paths/actors/acts@{actorId}@runs@last@metamorph.yaml +++ b/apify-api/openapi/paths/actors/acts@{actorId}@runs@last@metamorph.yaml @@ -12,63 +12,11 @@ post: parameters: - $ref: ../../components/parameters/actorId.yaml - $ref: ../../components/parameters/runs-last/status.yaml - - name: targetActorId - in: query - description: ID of a target Actor that the run should be transformed into. - required: true - style: form - explode: true - schema: - type: string - - name: build - in: query - description: Optional build of the target Actor. It can be either a build tag or build number. - style: form - explode: true - schema: - type: string + - $ref: ../../components/parameters/metamorph/targetActorId.yaml + - $ref: ../../components/parameters/metamorph/build.yaml responses: "200": - description: "" - headers: {} - content: - application/json: - schema: - $ref: ../../components/schemas/actor-runs/RunResponse.yaml - example: - data: - id: HG7ML7M8z78YcAPEB - actId: HDSasDasz78YcAPEB - userId: 7sT5jcggjjA9fNcxF - startedAt: "2019-11-30T07:34:24.202Z" - finishedAt: "2019-12-12T09:30:12.202Z" - status: RUNNING - statusMessage: Actor is running - isStatusMessageTerminal: false - meta: - origin: WEB - clientIp: 172.234.12.34 - userAgent: Mozilla/5.0 (iPad) - stats: - inputBodyLen: 240 - migrationCount: 0 - restartCount: 0 - resurrectCount: 0 - durationMillis: 26239 - runTimeSecs: 26.239 - metamorph: 0 - computeUnits: 0.0072886 - options: - build: latest - timeoutSecs: 300 - memoryMbytes: 1024 - diskMbytes: 2048 - buildId: 7sT5jcggjjA9fNcxF - exitCode: 0 - generalAccess: RESTRICTED - defaultKeyValueStoreId: eJNzqsbPiopwJcgGQ - defaultDatasetId: wmKPijuyDnPZAPRMk - defaultRequestQueueId: FL35cSF7jrxr3BY39 + $ref: ../../components/responses/actor-runs/metamorph.yaml "400": $ref: ../../components/responses/BadRequest.yaml deprecated: false diff --git a/apify-api/openapi/paths/actors/acts@{actorId}@runs@last@reboot.yaml b/apify-api/openapi/paths/actors/acts@{actorId}@runs@last@reboot.yaml index b6756a1880..3c283756f5 100644 --- a/apify-api/openapi/paths/actors/acts@{actorId}@runs@last@reboot.yaml +++ b/apify-api/openapi/paths/actors/acts@{actorId}@runs@last@reboot.yaml @@ -13,46 +13,7 @@ post: - $ref: ../../components/parameters/runs-last/status.yaml responses: "200": - description: "" - headers: {} - content: - application/json: - schema: - $ref: ../../components/schemas/actor-runs/RunResponse.yaml - example: - data: - id: HG7ML7M8z78YcAPEB - actId: HDSasDasz78YcAPEB - userId: 7sT5jcggjjA9fNcxF - startedAt: "2019-11-30T07:34:24.202Z" - finishedAt: "2019-12-12T09:30:12.202Z" - status: RUNNING - statusMessage: Actor is running - isStatusMessageTerminal: false - meta: - origin: WEB - clientIp: 172.234.12.34 - userAgent: Mozilla/5.0 (iPad) - stats: - inputBodyLen: 240 - migrationCount: 0 - restartCount: 0 - resurrectCount: 0 - durationMillis: 26239 - runTimeSecs: 26.239 - metamorph: 0 - computeUnits: 0.0072886 - options: - build: latest - timeoutSecs: 300 - memoryMbytes: 1024 - diskMbytes: 2048 - buildId: 7sT5jcggjjA9fNcxF - exitCode: 0 - generalAccess: RESTRICTED - defaultKeyValueStoreId: eJNzqsbPiopwJcgGQ - defaultDatasetId: wmKPijuyDnPZAPRMk - defaultRequestQueueId: FL35cSF7jrxr3BY39 + $ref: ../../components/responses/actor-runs/reboot.yaml "400": $ref: ../../components/responses/BadRequest.yaml deprecated: false From d52c1167fb12f3d2e8112756da5ccdf875c526c6 Mon Sep 17 00:00:00 2001 From: Josef Prochazka Date: Tue, 3 Mar 2026 10:35:00 +0100 Subject: [PATCH 3/4] Draft docs change for discussion --- apify-api/openapi/components/tags.yaml | 15 +++++++++++++-- apify-api/openapi/components/x-tag-groups.yaml | 2 +- .../paths/actors/acts@{actorId}@runs@last.yaml | 2 +- .../actors/acts@{actorId}@runs@last@abort.yaml | 2 +- .../actors/acts@{actorId}@runs@last@dataset.yaml | 2 +- .../acts@{actorId}@runs@last@dataset@items.yaml | 4 ++-- .../acts@{actorId}@runs@last@key-value-store.yaml | 2 +- ...@{actorId}@runs@last@key-value-store@keys.yaml | 2 +- ...@last@key-value-store@records@{recordKey}.yaml | 4 ++-- .../actors/acts@{actorId}@runs@last@log.yaml | 2 +- .../acts@{actorId}@runs@last@metamorph.yaml | 2 +- .../actors/acts@{actorId}@runs@last@reboot.yaml | 2 +- .../acts@{actorId}@runs@last@request-queue.yaml | 2 +- ...ts@{actorId}@runs@last@request-queue@head.yaml | 2 +- ...actorId}@runs@last@request-queue@requests.yaml | 4 ++-- ...s@last@request-queue@requests@{requestId}.yaml | 2 +- 16 files changed, 31 insertions(+), 20 deletions(-) diff --git a/apify-api/openapi/components/tags.yaml b/apify-api/openapi/components/tags.yaml index 7e1f3b6c69..03413de923 100644 --- a/apify-api/openapi/components/tags.yaml +++ b/apify-api/openapi/components/tags.yaml @@ -70,8 +70,6 @@ - "#tag/ActorsRun-actor-synchronously" - "#/reference/actors/run-actor-synchronously-and-get-dataset-items" - "#tag/ActorsRun-Actor-synchronously-and-get-dataset-items" - - "#/reference/actors/last-run-object-and-its-storages" - - "#tag/ActorsLast-run-object-and-its-storages" description: | The API endpoints in this section allow you to manage your Apify Actors runs. @@ -79,6 +77,18 @@ For more information about platform usage and resource calculations, see the [Usage and Resources documentation](https://docs.apify.com/platform/actors/running/usage-and-resources#usage). x-trait: "true" + +- name: Actors/Last run + x-displayName: Last run - Introduction + x-parent-tag-name: Actors + x-legacy-doc-urls: + - "#/reference/actors/last-run-object-and-its-storages" + - "#tag/Actors/Actor runs/Last run" + x-trait: "true" + description: | + The API endpoints in this section let you retrieve and manage the last run of a given Actor + and its default storages (dataset, key-value store, request queue, log). + - name: Actors/Webhook collection x-displayName: Webhook collection - Introduction x-parent-tag-name: Actors @@ -125,6 +135,7 @@ has been used for computation of this dollar equivalent, and hence it should be used only for informative purposes. You can learn more about platform usage in the [documentation](https://docs.apify.com/platform/actors/running/usage-and-resources#usage). + - name: Actor tasks x-displayName: Actor tasks - Introduction x-legacy-doc-urls: diff --git a/apify-api/openapi/components/x-tag-groups.yaml b/apify-api/openapi/components/x-tag-groups.yaml index 4fa03b10a0..01bcd88707 100644 --- a/apify-api/openapi/components/x-tag-groups.yaml +++ b/apify-api/openapi/components/x-tag-groups.yaml @@ -5,7 +5,7 @@ - Actors/Actor builds - Actors/Actor runs - Actors/Webhook collection - - Actors/Last run object and its storages + - Actors/Last run - name: Actor builds tags: - Actor builds diff --git a/apify-api/openapi/paths/actors/acts@{actorId}@runs@last.yaml b/apify-api/openapi/paths/actors/acts@{actorId}@runs@last.yaml index eb8550f513..34d88def9d 100644 --- a/apify-api/openapi/paths/actors/acts@{actorId}@runs@last.yaml +++ b/apify-api/openapi/paths/actors/acts@{actorId}@runs@last.yaml @@ -1,6 +1,6 @@ get: tags: - - Actors/Actor runs + - Actors/Last run summary: Get last run description: | This is not a single endpoint, but an entire group of endpoints that lets you to diff --git a/apify-api/openapi/paths/actors/acts@{actorId}@runs@last@abort.yaml b/apify-api/openapi/paths/actors/acts@{actorId}@runs@last@abort.yaml index aa88ff9952..d14a7f678f 100644 --- a/apify-api/openapi/paths/actors/acts@{actorId}@runs@last@abort.yaml +++ b/apify-api/openapi/paths/actors/acts@{actorId}@runs@last@abort.yaml @@ -1,6 +1,6 @@ post: tags: - - Actors/Actor runs + - Actors/Last run summary: Abort last run description: | Aborts the last Actor run. Redispatches to [Abort run](/api/v2/actor-run-abort-post). diff --git a/apify-api/openapi/paths/actors/acts@{actorId}@runs@last@dataset.yaml b/apify-api/openapi/paths/actors/acts@{actorId}@runs@last@dataset.yaml index 09002206e6..5dc5eecf47 100644 --- a/apify-api/openapi/paths/actors/acts@{actorId}@runs@last@dataset.yaml +++ b/apify-api/openapi/paths/actors/acts@{actorId}@runs@last@dataset.yaml @@ -1,6 +1,6 @@ get: tags: - - Actors/Actor runs + - Actors/Last run summary: Get dataset for last run description: | Returns the default dataset of the last Actor run. Redispatches to [Get dataset](/api/v2/dataset-get). diff --git a/apify-api/openapi/paths/actors/acts@{actorId}@runs@last@dataset@items.yaml b/apify-api/openapi/paths/actors/acts@{actorId}@runs@last@dataset@items.yaml index 1d2f55ac97..89188f412a 100644 --- a/apify-api/openapi/paths/actors/acts@{actorId}@runs@last@dataset@items.yaml +++ b/apify-api/openapi/paths/actors/acts@{actorId}@runs@last@dataset@items.yaml @@ -1,6 +1,6 @@ get: tags: - - Actors/Actor runs + - Actors/Last run summary: Get dataset items for last run description: | Returns items from the default dataset of the last Actor run. Redispatches to @@ -98,7 +98,7 @@ get: deprecated: false post: tags: - - Actors/Actor runs + - Actors/Last run summary: Push items to dataset for last run description: | Pushes items to the default dataset of the last Actor run. Redispatches to diff --git a/apify-api/openapi/paths/actors/acts@{actorId}@runs@last@key-value-store.yaml b/apify-api/openapi/paths/actors/acts@{actorId}@runs@last@key-value-store.yaml index 37369b42ca..aefb557f8b 100644 --- a/apify-api/openapi/paths/actors/acts@{actorId}@runs@last@key-value-store.yaml +++ b/apify-api/openapi/paths/actors/acts@{actorId}@runs@last@key-value-store.yaml @@ -1,6 +1,6 @@ get: tags: - - Actors/Actor runs + - Actors/Last run summary: Get key-value store for last run description: | Returns the default key-value store of the last Actor run. Redispatches to diff --git a/apify-api/openapi/paths/actors/acts@{actorId}@runs@last@key-value-store@keys.yaml b/apify-api/openapi/paths/actors/acts@{actorId}@runs@last@key-value-store@keys.yaml index 63c2d5caf5..e9a66f838f 100644 --- a/apify-api/openapi/paths/actors/acts@{actorId}@runs@last@key-value-store@keys.yaml +++ b/apify-api/openapi/paths/actors/acts@{actorId}@runs@last@key-value-store@keys.yaml @@ -1,6 +1,6 @@ get: tags: - - Actors/Actor runs + - Actors/Last run summary: Get key-value store keys for last run description: | Returns a list of keys from the default key-value store of the last Actor run. Redispatches to diff --git a/apify-api/openapi/paths/actors/acts@{actorId}@runs@last@key-value-store@records@{recordKey}.yaml b/apify-api/openapi/paths/actors/acts@{actorId}@runs@last@key-value-store@records@{recordKey}.yaml index 4953add05a..2bd893b4dd 100644 --- a/apify-api/openapi/paths/actors/acts@{actorId}@runs@last@key-value-store@records@{recordKey}.yaml +++ b/apify-api/openapi/paths/actors/acts@{actorId}@runs@last@key-value-store@records@{recordKey}.yaml @@ -1,6 +1,6 @@ get: tags: - - Actors/Actor runs + - Actors/Last run summary: Get record from key-value store of last run description: | Returns a record from the default key-value store of the last Actor run. Redispatches to @@ -33,7 +33,7 @@ get: deprecated: false put: tags: - - Actors/Actor runs + - Actors/Last run summary: Put record in key-value store of last run description: | Stores a record in the default key-value store of the last Actor run. Redispatches to diff --git a/apify-api/openapi/paths/actors/acts@{actorId}@runs@last@log.yaml b/apify-api/openapi/paths/actors/acts@{actorId}@runs@last@log.yaml index b6cd1614da..86f01437e3 100644 --- a/apify-api/openapi/paths/actors/acts@{actorId}@runs@last@log.yaml +++ b/apify-api/openapi/paths/actors/acts@{actorId}@runs@last@log.yaml @@ -1,6 +1,6 @@ get: tags: - - Actors/Actor runs + - Actors/Last run summary: Get log for last run description: | Retrieves the log of the last Actor run. Redispatches to [Get log](/api/v2/log-get) diff --git a/apify-api/openapi/paths/actors/acts@{actorId}@runs@last@metamorph.yaml b/apify-api/openapi/paths/actors/acts@{actorId}@runs@last@metamorph.yaml index 6b551c83bc..1900b45a53 100644 --- a/apify-api/openapi/paths/actors/acts@{actorId}@runs@last@metamorph.yaml +++ b/apify-api/openapi/paths/actors/acts@{actorId}@runs@last@metamorph.yaml @@ -1,6 +1,6 @@ post: tags: - - Actors/Actor runs + - Actors/Last run summary: Metamorph last run description: | Transforms the last Actor run into a run of another Actor. Redispatches to diff --git a/apify-api/openapi/paths/actors/acts@{actorId}@runs@last@reboot.yaml b/apify-api/openapi/paths/actors/acts@{actorId}@runs@last@reboot.yaml index 3c283756f5..2873fedd3e 100644 --- a/apify-api/openapi/paths/actors/acts@{actorId}@runs@last@reboot.yaml +++ b/apify-api/openapi/paths/actors/acts@{actorId}@runs@last@reboot.yaml @@ -1,6 +1,6 @@ post: tags: - - Actors/Actor runs + - Actors/Last run summary: Reboot last run description: | Reboots the last Actor run. Redispatches to [Reboot run](/api/v2/actor-run-reboot-post). diff --git a/apify-api/openapi/paths/actors/acts@{actorId}@runs@last@request-queue.yaml b/apify-api/openapi/paths/actors/acts@{actorId}@runs@last@request-queue.yaml index e77549a421..4a4408a09c 100644 --- a/apify-api/openapi/paths/actors/acts@{actorId}@runs@last@request-queue.yaml +++ b/apify-api/openapi/paths/actors/acts@{actorId}@runs@last@request-queue.yaml @@ -1,6 +1,6 @@ get: tags: - - Actors/Actor runs + - Actors/Last run summary: Get request queue for last run description: | Returns the default request queue of the last Actor run. Redispatches to diff --git a/apify-api/openapi/paths/actors/acts@{actorId}@runs@last@request-queue@head.yaml b/apify-api/openapi/paths/actors/acts@{actorId}@runs@last@request-queue@head.yaml index 92710b2f79..a3b97e1100 100644 --- a/apify-api/openapi/paths/actors/acts@{actorId}@runs@last@request-queue@head.yaml +++ b/apify-api/openapi/paths/actors/acts@{actorId}@runs@last@request-queue@head.yaml @@ -1,6 +1,6 @@ get: tags: - - Actors/Actor runs + - Actors/Last run summary: Get queue head for last run description: | Returns the first requests from the default request queue of the last Actor run. Redispatches to diff --git a/apify-api/openapi/paths/actors/acts@{actorId}@runs@last@request-queue@requests.yaml b/apify-api/openapi/paths/actors/acts@{actorId}@runs@last@request-queue@requests.yaml index 4daf2c38e4..8cebecff67 100644 --- a/apify-api/openapi/paths/actors/acts@{actorId}@runs@last@request-queue@requests.yaml +++ b/apify-api/openapi/paths/actors/acts@{actorId}@runs@last@request-queue@requests.yaml @@ -1,6 +1,6 @@ get: tags: - - Actors/Actor runs + - Actors/Last run summary: List requests in queue for last run description: | Returns requests from the default request queue of the last Actor run. Redispatches to @@ -40,7 +40,7 @@ get: deprecated: false post: tags: - - Actors/Actor runs + - Actors/Last run summary: Add request to queue for last run description: | Adds a request to the default request queue of the last Actor run. Redispatches to diff --git a/apify-api/openapi/paths/actors/acts@{actorId}@runs@last@request-queue@requests@{requestId}.yaml b/apify-api/openapi/paths/actors/acts@{actorId}@runs@last@request-queue@requests@{requestId}.yaml index d89dd8b1a8..5a5331a47a 100644 --- a/apify-api/openapi/paths/actors/acts@{actorId}@runs@last@request-queue@requests@{requestId}.yaml +++ b/apify-api/openapi/paths/actors/acts@{actorId}@runs@last@request-queue@requests@{requestId}.yaml @@ -1,6 +1,6 @@ get: tags: - - Actors/Actor runs + - Actors/Last run summary: Get request from queue for last run description: | Returns a request from the default request queue of the last Actor run. Redispatches to From 760388e2bfd86f5bb1cd2a7d7c37da7b7c058c59 Mon Sep 17 00:00:00 2001 From: Josef Prochazka Date: Tue, 3 Mar 2026 18:09:27 +0100 Subject: [PATCH 4/4] Add more granular 404s -actor not found -actor run not found --- .../components/examples/actor-not-found.yaml | 5 ++ .../examples/actor-run-not-found.yaml | 5 ++ .../components/examples/build-response.yaml | 29 +++++++ .../examples/run-list-response.yaml | 36 +++++++++ .../examples/run-metamorph-response.yaml | 78 +++++++++++++++++++ .../components/examples/run-response.yaml | 74 ++++++++++++++++++ .../components/responses/ActorNotFound.yaml | 18 +++++ apify-api/openapi/components/tags.yaml | 8 +- .../actor-tasks@{actorTaskId}@runs@last.yaml | 11 +++ ...r-tasks@{actorTaskId}@runs@last@abort.yaml | 11 +++ ...tasks@{actorTaskId}@runs@last@dataset.yaml | 11 +++ ...{actorTaskId}@runs@last@dataset@items.yaml | 22 ++++++ ...ctorTaskId}@runs@last@key-value-store.yaml | 11 +++ ...askId}@runs@last@key-value-store@keys.yaml | 11 +++ ...t@key-value-store@records@{recordKey}.yaml | 22 ++++++ ...tor-tasks@{actorTaskId}@runs@last@log.yaml | 11 +++ ...sks@{actorTaskId}@runs@last@metamorph.yaml | 11 +++ ...-tasks@{actorTaskId}@runs@last@reboot.yaml | 11 +++ ...{actorTaskId}@runs@last@request-queue.yaml | 11 +++ ...rTaskId}@runs@last@request-queue@head.yaml | 11 +++ ...kId}@runs@last@request-queue@requests.yaml | 22 ++++++ ...st@request-queue@requests@{requestId}.yaml | 11 +++ .../actors/acts@{actorId}@runs@last.yaml | 11 +++ .../acts@{actorId}@runs@last@abort.yaml | 11 +++ .../acts@{actorId}@runs@last@dataset.yaml | 11 +++ ...cts@{actorId}@runs@last@dataset@items.yaml | 22 ++++++ ...s@{actorId}@runs@last@key-value-store.yaml | 11 +++ ...torId}@runs@last@key-value-store@keys.yaml | 11 +++ ...t@key-value-store@records@{recordKey}.yaml | 22 ++++++ .../actors/acts@{actorId}@runs@last@log.yaml | 11 +++ .../acts@{actorId}@runs@last@metamorph.yaml | 11 +++ .../acts@{actorId}@runs@last@reboot.yaml | 11 +++ ...cts@{actorId}@runs@last@request-queue.yaml | 11 +++ ...actorId}@runs@last@request-queue@head.yaml | 11 +++ ...rId}@runs@last@request-queue@requests.yaml | 22 ++++++ ...st@request-queue@requests@{requestId}.yaml | 11 +++ 36 files changed, 623 insertions(+), 4 deletions(-) create mode 100644 apify-api/openapi/components/examples/actor-not-found.yaml create mode 100644 apify-api/openapi/components/examples/actor-run-not-found.yaml create mode 100644 apify-api/openapi/components/examples/build-response.yaml create mode 100644 apify-api/openapi/components/examples/run-list-response.yaml create mode 100644 apify-api/openapi/components/examples/run-metamorph-response.yaml create mode 100644 apify-api/openapi/components/examples/run-response.yaml create mode 100644 apify-api/openapi/components/responses/ActorNotFound.yaml diff --git a/apify-api/openapi/components/examples/actor-not-found.yaml b/apify-api/openapi/components/examples/actor-not-found.yaml new file mode 100644 index 0000000000..9b583b5aaa --- /dev/null +++ b/apify-api/openapi/components/examples/actor-not-found.yaml @@ -0,0 +1,5 @@ +summary: Actor was not found +value: + error: + type: actor-not-found + message: Actor was not found. diff --git a/apify-api/openapi/components/examples/actor-run-not-found.yaml b/apify-api/openapi/components/examples/actor-run-not-found.yaml new file mode 100644 index 0000000000..6952d14873 --- /dev/null +++ b/apify-api/openapi/components/examples/actor-run-not-found.yaml @@ -0,0 +1,5 @@ +summary: Actor run was not found +value: + error: + type: record-not-found + message: Actor run was not found diff --git a/apify-api/openapi/components/examples/build-response.yaml b/apify-api/openapi/components/examples/build-response.yaml new file mode 100644 index 0000000000..f084229f5d --- /dev/null +++ b/apify-api/openapi/components/examples/build-response.yaml @@ -0,0 +1,29 @@ +value: + data: + id: HG7ML7M8z78YcAPEB + actId: janedoe~my-actor + userId: klmdEpoiojmdEMlk3 + startedAt: "2019-11-30T07:34:24.202Z" + finishedAt: "2019-12-12T09:30:12.202Z" + status: SUCCEEDED + meta: + origin: WEB + clientIp: 172.234.12.34 + userAgent: Mozilla/5.0 (iPad) + stats: + durationMillis: 1000 + runTimeSecs: 45.718 + computeUnits: 0.012699444444444444 + options: + useCache: false + betaPackages: false + memoryMbytes: 1024 + diskMbytes: 2048 + usage: + ACTOR_COMPUTE_UNITS: 0.08 + usageTotalUsd: 0.02 + usageUsd: + ACTOR_COMPUTE_UNITS: 0.02 + inputSchema: '{\n \"title\": \"Schema for ... }' + readme: '# Magic Actor\nThis Actor is magic.' + buildNumber: 0.1.1 diff --git a/apify-api/openapi/components/examples/run-list-response.yaml b/apify-api/openapi/components/examples/run-list-response.yaml new file mode 100644 index 0000000000..7f8ed55e45 --- /dev/null +++ b/apify-api/openapi/components/examples/run-list-response.yaml @@ -0,0 +1,36 @@ +value: + data: + total: 2 + offset: 0 + limit: 1000 + desc: false + count: 2 + items: + - id: HG7ML7M8z78YcAPEB + actId: HDSasDasz78YcAPEB + actorTaskId: KJHSKHausidyaJKHs + status: SUCCEEDED + startedAt: "2019-11-30T07:34:24.202Z" + finishedAt: "2019-12-12T09:30:12.202Z" + buildId: HG7ML7M8z78YcAPEB + buildNumber: 0.0.2 + meta: + origin: WEB + usageTotalUsd: 0.2 + defaultKeyValueStoreId: sfAjeR4QmeJCQzTfe + defaultDatasetId: 3ZojQDdFTsyE7Moy4 + defaultRequestQueueId: so93g2shcDzK3pA85 + - id: HG7ML7M8z78YcAPEB + actId: HDSasDasz78YcAPEB + actorTaskId: KJHSKHausidyaJKHs + status: FAILED + startedAt: "2019-12-12T07:34:14.202Z" + finishedAt: "2019-12-13T08:36:13.202Z" + buildId: u78dML7M8z78YcAPEB + buildNumber: 0.2.2 + meta: + origin: DEVELOPMENT + usageTotalUsd: 0.6 + defaultKeyValueStoreId: sffsouqlseJCQzTfe + defaultDatasetId: CFGggdjQDsyE7Moyw + defaultRequestQueueId: soowucklrmDzKpA8x diff --git a/apify-api/openapi/components/examples/run-metamorph-response.yaml b/apify-api/openapi/components/examples/run-metamorph-response.yaml new file mode 100644 index 0000000000..b5e3491814 --- /dev/null +++ b/apify-api/openapi/components/examples/run-metamorph-response.yaml @@ -0,0 +1,78 @@ +value: + data: + id: HG7ML7M8z78YcAPEB + actId: janedoe~my-actor + userId: PNWZBd7Z9c746JAnF + startedAt: "2019-11-30T07:34:24.202Z" + finishedAt: null + status: RUNNING + statusMessage: Actor is running + isStatusMessageTerminal: false + meta: + origin: WEB + clientIp: 172.234.12.34 + userAgent: Mozilla/5.0 (iPad) + stats: + inputBodyLen: 240 + migrationCount: 0 + restartCount: 0 + resurrectCount: 1 + memAvgBytes: 35914228.4 + memMaxBytes: 38244352 + memCurrentBytes: 0 + cpuAvgUsage: 0.00955965 + cpuMaxUsage: 3.1546 + cpuCurrentUsage: 0 + netRxBytes: 2652 + netTxBytes: 1338 + durationMillis: 26239 + runTimeSecs: 26.239 + metamorph: 0 + computeUnits: 0.0072886 + options: + build: latest + timeoutSecs: 300 + memoryMbytes: 1024 + diskMbytes: 2048 + buildId: HG7ML7M8z78YcAPEB + exitCode: 0 + generalAccess: RESTRICTED + defaultKeyValueStoreId: eJNzqsbPiopwJcgGQ + defaultDatasetId: wmKPijuyDnPZAPRMk + defaultRequestQueueId: FL35cSF7jrxr3BY39 + metamorphs: + - createdAt: "2019-11-30T07:39:24.202Z" + actorId: nspoEjklmnsF2oosD + buildId: ME6oKecqy5kXDS4KQ + inputKey: INPUT-METAMORPH-1 + buildNumber: 0.1.10 + containerUrl: "https://hfewsyknno9o.runs.apify.com" + isContainerServerReady: false + gitBranchName: master + usage: + ACTOR_COMPUTE_UNITS: 3 + DATASET_READS: 4 + DATASET_WRITES: 4 + KEY_VALUE_STORE_READS: 5 + KEY_VALUE_STORE_WRITES: 3 + KEY_VALUE_STORE_LISTS: 5 + REQUEST_QUEUE_READS: 2 + REQUEST_QUEUE_WRITES: 1 + DATA_TRANSFER_INTERNAL_GBYTES: 1 + DATA_TRANSFER_EXTERNAL_GBYTES: 3 + PROXY_RESIDENTIAL_TRANSFER_GBYTES: 34 + PROXY_SERPS: 3 + usageTotalUsd: 0.2654 + usageUsd: + ACTOR_COMPUTE_UNITS: 0.072 + DATASET_READS: 0.0004 + DATASET_WRITES: 0.0002 + KEY_VALUE_STORE_READS: 0.0006 + KEY_VALUE_STORE_WRITES: 0.002 + KEY_VALUE_STORE_LISTS: 0.004 + REQUEST_QUEUE_READS: 0.005 + REQUEST_QUEUE_WRITES: 0.02 + DATA_TRANSFER_INTERNAL_GBYTES: 0.0004 + DATA_TRANSFER_EXTERNAL_GBYTES: 0.0002 + PROXY_RESIDENTIAL_TRANSFER_GBYTES: 0.16 + PROXY_SERPS: 0.0006 diff --git a/apify-api/openapi/components/examples/run-response.yaml b/apify-api/openapi/components/examples/run-response.yaml new file mode 100644 index 0000000000..a88abca412 --- /dev/null +++ b/apify-api/openapi/components/examples/run-response.yaml @@ -0,0 +1,74 @@ +value: + data: + id: HG7ML7M8z78YcAPEB + actId: HDSasDasz78YcAPEB + userId: 7sT5jcggjjA9fNcxF + actorTaskId: KJHSKHausidyaJKHs + startedAt: "2019-11-30T07:34:24.202Z" + finishedAt: "2019-12-12T09:30:12.202Z" + status: RUNNING + statusMessage: Actor is running + isStatusMessageTerminal: false + meta: + origin: WEB + clientIp: 172.234.12.34 + userAgent: Mozilla/5.0 (iPad) + stats: + inputBodyLen: 240 + migrationCount: 0 + restartCount: 0 + resurrectCount: 2 + memAvgBytes: 267874071.9 + memMaxBytes: 404713472 + memCurrentBytes: 0 + cpuAvgUsage: 33.75321011075384 + cpuMaxUsage: 169.65073553494125 + cpuCurrentUsage: 0 + netRxBytes: 103508042 + netTxBytes: 4854600 + durationMillis: 248472 + runTimeSecs: 248.472 + metamorph: 0 + computeUnits: 0.13804 + options: + build: latest + timeoutSecs: 300 + memoryMbytes: 1024 + diskMbytes: 2048 + buildId: 7sT5jcggjjA9fNcxF + exitCode: 0 + generalAccess: RESTRICTED + defaultKeyValueStoreId: eJNzqsbPiopwJcgGQ + defaultDatasetId: wmKPijuyDnPZAPRMk + defaultRequestQueueId: FL35cSF7jrxr3BY39 + buildNumber: 0.0.36 + containerUrl: "https://g8kd8kbc5ge8.runs.apify.net" + isContainerServerReady: true + gitBranchName: master + usage: + ACTOR_COMPUTE_UNITS: 3 + DATASET_READS: 4 + DATASET_WRITES: 4 + KEY_VALUE_STORE_READS: 5 + KEY_VALUE_STORE_WRITES: 3 + KEY_VALUE_STORE_LISTS: 5 + REQUEST_QUEUE_READS: 2 + REQUEST_QUEUE_WRITES: 1 + DATA_TRANSFER_INTERNAL_GBYTES: 1 + DATA_TRANSFER_EXTERNAL_GBYTES: 3 + PROXY_RESIDENTIAL_TRANSFER_GBYTES: 34 + PROXY_SERPS: 3 + usageTotalUsd: 0.2654 + usageUsd: + ACTOR_COMPUTE_UNITS: 0.072 + DATASET_READS: 0.0004 + DATASET_WRITES: 0.0002 + KEY_VALUE_STORE_READS: 0.0006 + KEY_VALUE_STORE_WRITES: 0.002 + KEY_VALUE_STORE_LISTS: 0.004 + REQUEST_QUEUE_READS: 0.005 + REQUEST_QUEUE_WRITES: 0.02 + DATA_TRANSFER_INTERNAL_GBYTES: 0.0004 + DATA_TRANSFER_EXTERNAL_GBYTES: 0.0002 + PROXY_RESIDENTIAL_TRANSFER_GBYTES: 0.16 + PROXY_SERPS: 0.0006 diff --git a/apify-api/openapi/components/responses/ActorNotFound.yaml b/apify-api/openapi/components/responses/ActorNotFound.yaml new file mode 100644 index 0000000000..449f91d190 --- /dev/null +++ b/apify-api/openapi/components/responses/ActorNotFound.yaml @@ -0,0 +1,18 @@ +description: Not found - the requested resource was not found. +content: + application/json: + schema: + $ref: ../schemas/common/ErrorResponse.yaml + examples: + actor-not-found: + summary: Actor was not found + value: + error: + type: actor-not-found + message: Actor was not found. + record-not-found: + summary: Actor run was not found + value: + error: + type: record-not-found + message: Actor run was not found diff --git a/apify-api/openapi/components/tags.yaml b/apify-api/openapi/components/tags.yaml index 03413de923..ee34fcaa3f 100644 --- a/apify-api/openapi/components/tags.yaml +++ b/apify-api/openapi/components/tags.yaml @@ -82,12 +82,12 @@ x-displayName: Last run - Introduction x-parent-tag-name: Actors x-legacy-doc-urls: - - "#/reference/actors/last-run-object-and-its-storages" - - "#tag/Actors/Actor runs/Last run" + - "#/reference/actors/last-run-object-and-its-storages" + - "#tag/Actors/Actor runs/Last run" x-trait: "true" description: | - The API endpoints in this section let you retrieve and manage the last run of a given Actor - and its default storages (dataset, key-value store, request queue, log). + The API endpoints in this section let you retrieve and manage the last run of a given Actor + and its default storages (dataset, key-value store, request queue, log). - name: Actors/Webhook collection x-displayName: Webhook collection - Introduction diff --git a/apify-api/openapi/paths/actor-tasks/actor-tasks@{actorTaskId}@runs@last.yaml b/apify-api/openapi/paths/actor-tasks/actor-tasks@{actorTaskId}@runs@last.yaml index 6671995e45..874ab325c8 100644 --- a/apify-api/openapi/paths/actor-tasks/actor-tasks@{actorTaskId}@runs@last.yaml +++ b/apify-api/openapi/paths/actor-tasks/actor-tasks@{actorTaskId}@runs@last.yaml @@ -143,6 +143,17 @@ get: PROXY_SERPS: 0.0006 "400": $ref: ../../components/responses/BadRequest.yaml + "404": + description: Not found - the requested resource was not found. + content: + application/json: + schema: + $ref: ../../components/schemas/common/ErrorResponse.yaml + examples: + actor-not-found: + $ref: ../../components/examples/actor-not-found.yaml + actor-run-not-found: + $ref: ../../components/examples/actor-run-not-found.yaml deprecated: false x-legacy-doc-urls: - https://docs.apify.com/api/v2#/reference/actor-tasks/last-run-object-and-its-storages diff --git a/apify-api/openapi/paths/actor-tasks/actor-tasks@{actorTaskId}@runs@last@abort.yaml b/apify-api/openapi/paths/actor-tasks/actor-tasks@{actorTaskId}@runs@last@abort.yaml index bc5d4adfae..27978e5c6b 100644 --- a/apify-api/openapi/paths/actor-tasks/actor-tasks@{actorTaskId}@runs@last@abort.yaml +++ b/apify-api/openapi/paths/actor-tasks/actor-tasks@{actorTaskId}@runs@last@abort.yaml @@ -17,4 +17,15 @@ post: $ref: ../../components/responses/actor-runs/abort.yaml "400": $ref: ../../components/responses/BadRequest.yaml + "404": + description: Not found - the requested resource was not found. + content: + application/json: + schema: + $ref: ../../components/schemas/common/ErrorResponse.yaml + examples: + actor-not-found: + $ref: ../../components/examples/actor-not-found.yaml + actor-run-not-found: + $ref: ../../components/examples/actor-run-not-found.yaml deprecated: false diff --git a/apify-api/openapi/paths/actor-tasks/actor-tasks@{actorTaskId}@runs@last@dataset.yaml b/apify-api/openapi/paths/actor-tasks/actor-tasks@{actorTaskId}@runs@last@dataset.yaml index dfb8669771..29d7423159 100644 --- a/apify-api/openapi/paths/actor-tasks/actor-tasks@{actorTaskId}@runs@last@dataset.yaml +++ b/apify-api/openapi/paths/actor-tasks/actor-tasks@{actorTaskId}@runs@last@dataset.yaml @@ -22,4 +22,15 @@ get: $ref: ../../components/schemas/datasets/DatasetResponse.yaml "400": $ref: ../../components/responses/BadRequest.yaml + "404": + description: Not found - the requested resource was not found. + content: + application/json: + schema: + $ref: ../../components/schemas/common/ErrorResponse.yaml + examples: + actor-not-found: + $ref: ../../components/examples/actor-not-found.yaml + actor-run-not-found: + $ref: ../../components/examples/actor-run-not-found.yaml deprecated: false diff --git a/apify-api/openapi/paths/actor-tasks/actor-tasks@{actorTaskId}@runs@last@dataset@items.yaml b/apify-api/openapi/paths/actor-tasks/actor-tasks@{actorTaskId}@runs@last@dataset@items.yaml index 77cb7effc9..ba595f2771 100644 --- a/apify-api/openapi/paths/actor-tasks/actor-tasks@{actorTaskId}@runs@last@dataset@items.yaml +++ b/apify-api/openapi/paths/actor-tasks/actor-tasks@{actorTaskId}@runs@last@dataset@items.yaml @@ -95,6 +95,17 @@ get: type: object "400": $ref: ../../components/responses/BadRequest.yaml + "404": + description: Not found - the requested resource was not found. + content: + application/json: + schema: + $ref: ../../components/schemas/common/ErrorResponse.yaml + examples: + actor-not-found: + $ref: ../../components/examples/actor-not-found.yaml + actor-run-not-found: + $ref: ../../components/examples/actor-run-not-found.yaml deprecated: false post: tags: @@ -124,4 +135,15 @@ post: headers: {} "400": $ref: ../../components/responses/BadRequest.yaml + "404": + description: Not found - the requested resource was not found. + content: + application/json: + schema: + $ref: ../../components/schemas/common/ErrorResponse.yaml + examples: + actor-not-found: + $ref: ../../components/examples/actor-not-found.yaml + actor-run-not-found: + $ref: ../../components/examples/actor-run-not-found.yaml deprecated: false diff --git a/apify-api/openapi/paths/actor-tasks/actor-tasks@{actorTaskId}@runs@last@key-value-store.yaml b/apify-api/openapi/paths/actor-tasks/actor-tasks@{actorTaskId}@runs@last@key-value-store.yaml index f52adcde39..eca72d5c30 100644 --- a/apify-api/openapi/paths/actor-tasks/actor-tasks@{actorTaskId}@runs@last@key-value-store.yaml +++ b/apify-api/openapi/paths/actor-tasks/actor-tasks@{actorTaskId}@runs@last@key-value-store.yaml @@ -22,4 +22,15 @@ get: $ref: ../../components/schemas/key-value-stores/KeyValueStoreResponse.yaml "400": $ref: ../../components/responses/BadRequest.yaml + "404": + description: Not found - the requested resource was not found. + content: + application/json: + schema: + $ref: ../../components/schemas/common/ErrorResponse.yaml + examples: + actor-not-found: + $ref: ../../components/examples/actor-not-found.yaml + actor-run-not-found: + $ref: ../../components/examples/actor-run-not-found.yaml deprecated: false diff --git a/apify-api/openapi/paths/actor-tasks/actor-tasks@{actorTaskId}@runs@last@key-value-store@keys.yaml b/apify-api/openapi/paths/actor-tasks/actor-tasks@{actorTaskId}@runs@last@key-value-store@keys.yaml index 2ed245128b..a2f5e45de3 100644 --- a/apify-api/openapi/paths/actor-tasks/actor-tasks@{actorTaskId}@runs@last@key-value-store@keys.yaml +++ b/apify-api/openapi/paths/actor-tasks/actor-tasks@{actorTaskId}@runs@last@key-value-store@keys.yaml @@ -36,4 +36,15 @@ get: $ref: ../../components/schemas/key-value-stores/ListOfKeysResponse.yaml "400": $ref: ../../components/responses/BadRequest.yaml + "404": + description: Not found - the requested resource was not found. + content: + application/json: + schema: + $ref: ../../components/schemas/common/ErrorResponse.yaml + examples: + actor-not-found: + $ref: ../../components/examples/actor-not-found.yaml + actor-run-not-found: + $ref: ../../components/examples/actor-run-not-found.yaml deprecated: false diff --git a/apify-api/openapi/paths/actor-tasks/actor-tasks@{actorTaskId}@runs@last@key-value-store@records@{recordKey}.yaml b/apify-api/openapi/paths/actor-tasks/actor-tasks@{actorTaskId}@runs@last@key-value-store@records@{recordKey}.yaml index 2a5610247f..5d9334384e 100644 --- a/apify-api/openapi/paths/actor-tasks/actor-tasks@{actorTaskId}@runs@last@key-value-store@records@{recordKey}.yaml +++ b/apify-api/openapi/paths/actor-tasks/actor-tasks@{actorTaskId}@runs@last@key-value-store@records@{recordKey}.yaml @@ -30,6 +30,17 @@ get: type: object "400": $ref: ../../components/responses/BadRequest.yaml + "404": + description: Not found - the requested resource was not found. + content: + application/json: + schema: + $ref: ../../components/schemas/common/ErrorResponse.yaml + examples: + actor-not-found: + $ref: ../../components/examples/actor-not-found.yaml + actor-run-not-found: + $ref: ../../components/examples/actor-run-not-found.yaml deprecated: false put: tags: @@ -65,4 +76,15 @@ put: headers: {} "400": $ref: ../../components/responses/BadRequest.yaml + "404": + description: Not found - the requested resource was not found. + content: + application/json: + schema: + $ref: ../../components/schemas/common/ErrorResponse.yaml + examples: + actor-not-found: + $ref: ../../components/examples/actor-not-found.yaml + actor-run-not-found: + $ref: ../../components/examples/actor-run-not-found.yaml deprecated: false diff --git a/apify-api/openapi/paths/actor-tasks/actor-tasks@{actorTaskId}@runs@last@log.yaml b/apify-api/openapi/paths/actor-tasks/actor-tasks@{actorTaskId}@runs@last@log.yaml index 753dfebca3..fd8a5fc19c 100644 --- a/apify-api/openapi/paths/actor-tasks/actor-tasks@{actorTaskId}@runs@last@log.yaml +++ b/apify-api/openapi/paths/actor-tasks/actor-tasks@{actorTaskId}@runs@last@log.yaml @@ -44,4 +44,15 @@ get: example: "2017-07-14T06:00:49.733Z Application started.\n" "400": $ref: ../../components/responses/BadRequest.yaml + "404": + description: Not found - the requested resource was not found. + content: + application/json: + schema: + $ref: ../../components/schemas/common/ErrorResponse.yaml + examples: + actor-not-found: + $ref: ../../components/examples/actor-not-found.yaml + actor-run-not-found: + $ref: ../../components/examples/actor-run-not-found.yaml deprecated: false diff --git a/apify-api/openapi/paths/actor-tasks/actor-tasks@{actorTaskId}@runs@last@metamorph.yaml b/apify-api/openapi/paths/actor-tasks/actor-tasks@{actorTaskId}@runs@last@metamorph.yaml index d12db54f6a..9cae322ed6 100644 --- a/apify-api/openapi/paths/actor-tasks/actor-tasks@{actorTaskId}@runs@last@metamorph.yaml +++ b/apify-api/openapi/paths/actor-tasks/actor-tasks@{actorTaskId}@runs@last@metamorph.yaml @@ -19,4 +19,15 @@ post: $ref: ../../components/responses/actor-runs/metamorph.yaml "400": $ref: ../../components/responses/BadRequest.yaml + "404": + description: Not found - the requested resource was not found. + content: + application/json: + schema: + $ref: ../../components/schemas/common/ErrorResponse.yaml + examples: + actor-not-found: + $ref: ../../components/examples/actor-not-found.yaml + actor-run-not-found: + $ref: ../../components/examples/actor-run-not-found.yaml deprecated: false diff --git a/apify-api/openapi/paths/actor-tasks/actor-tasks@{actorTaskId}@runs@last@reboot.yaml b/apify-api/openapi/paths/actor-tasks/actor-tasks@{actorTaskId}@runs@last@reboot.yaml index 15037ba7e0..56f1cefdf5 100644 --- a/apify-api/openapi/paths/actor-tasks/actor-tasks@{actorTaskId}@runs@last@reboot.yaml +++ b/apify-api/openapi/paths/actor-tasks/actor-tasks@{actorTaskId}@runs@last@reboot.yaml @@ -16,4 +16,15 @@ post: $ref: ../../components/responses/actor-runs/reboot.yaml "400": $ref: ../../components/responses/BadRequest.yaml + "404": + description: Not found - the requested resource was not found. + content: + application/json: + schema: + $ref: ../../components/schemas/common/ErrorResponse.yaml + examples: + actor-not-found: + $ref: ../../components/examples/actor-not-found.yaml + actor-run-not-found: + $ref: ../../components/examples/actor-run-not-found.yaml deprecated: false diff --git a/apify-api/openapi/paths/actor-tasks/actor-tasks@{actorTaskId}@runs@last@request-queue.yaml b/apify-api/openapi/paths/actor-tasks/actor-tasks@{actorTaskId}@runs@last@request-queue.yaml index 9544e97f3e..69c414054d 100644 --- a/apify-api/openapi/paths/actor-tasks/actor-tasks@{actorTaskId}@runs@last@request-queue.yaml +++ b/apify-api/openapi/paths/actor-tasks/actor-tasks@{actorTaskId}@runs@last@request-queue.yaml @@ -22,4 +22,15 @@ get: $ref: ../../components/schemas/request-queues/RequestQueueResponse.yaml "400": $ref: ../../components/responses/BadRequest.yaml + "404": + description: Not found - the requested resource was not found. + content: + application/json: + schema: + $ref: ../../components/schemas/common/ErrorResponse.yaml + examples: + actor-not-found: + $ref: ../../components/examples/actor-not-found.yaml + actor-run-not-found: + $ref: ../../components/examples/actor-run-not-found.yaml deprecated: false diff --git a/apify-api/openapi/paths/actor-tasks/actor-tasks@{actorTaskId}@runs@last@request-queue@head.yaml b/apify-api/openapi/paths/actor-tasks/actor-tasks@{actorTaskId}@runs@last@request-queue@head.yaml index c37f25caf1..3e52afa7f5 100644 --- a/apify-api/openapi/paths/actor-tasks/actor-tasks@{actorTaskId}@runs@last@request-queue@head.yaml +++ b/apify-api/openapi/paths/actor-tasks/actor-tasks@{actorTaskId}@runs@last@request-queue@head.yaml @@ -37,4 +37,15 @@ get: $ref: ../../components/schemas/request-queues/HeadResponse.yaml "400": $ref: ../../components/responses/BadRequest.yaml + "404": + description: Not found - the requested resource was not found. + content: + application/json: + schema: + $ref: ../../components/schemas/common/ErrorResponse.yaml + examples: + actor-not-found: + $ref: ../../components/examples/actor-not-found.yaml + actor-run-not-found: + $ref: ../../components/examples/actor-run-not-found.yaml deprecated: false diff --git a/apify-api/openapi/paths/actor-tasks/actor-tasks@{actorTaskId}@runs@last@request-queue@requests.yaml b/apify-api/openapi/paths/actor-tasks/actor-tasks@{actorTaskId}@runs@last@request-queue@requests.yaml index 12fcd97e2a..bb54d93096 100644 --- a/apify-api/openapi/paths/actor-tasks/actor-tasks@{actorTaskId}@runs@last@request-queue@requests.yaml +++ b/apify-api/openapi/paths/actor-tasks/actor-tasks@{actorTaskId}@runs@last@request-queue@requests.yaml @@ -37,6 +37,17 @@ get: $ref: ../../components/schemas/request-queues/ListOfRequestsResponse.yaml "400": $ref: ../../components/responses/BadRequest.yaml + "404": + description: Not found - the requested resource was not found. + content: + application/json: + schema: + $ref: ../../components/schemas/common/ErrorResponse.yaml + examples: + actor-not-found: + $ref: ../../components/examples/actor-not-found.yaml + actor-run-not-found: + $ref: ../../components/examples/actor-run-not-found.yaml deprecated: false post: tags: @@ -69,4 +80,15 @@ post: - $ref: ../../components/schemas/request-queues/AddRequestResponse.yaml "400": $ref: ../../components/responses/BadRequest.yaml + "404": + description: Not found - the requested resource was not found. + content: + application/json: + schema: + $ref: ../../components/schemas/common/ErrorResponse.yaml + examples: + actor-not-found: + $ref: ../../components/examples/actor-not-found.yaml + actor-run-not-found: + $ref: ../../components/examples/actor-run-not-found.yaml deprecated: false diff --git a/apify-api/openapi/paths/actor-tasks/actor-tasks@{actorTaskId}@runs@last@request-queue@requests@{requestId}.yaml b/apify-api/openapi/paths/actor-tasks/actor-tasks@{actorTaskId}@runs@last@request-queue@requests@{requestId}.yaml index 11ae2ab9cc..f9aee0373a 100644 --- a/apify-api/openapi/paths/actor-tasks/actor-tasks@{actorTaskId}@runs@last@request-queue@requests@{requestId}.yaml +++ b/apify-api/openapi/paths/actor-tasks/actor-tasks@{actorTaskId}@runs@last@request-queue@requests@{requestId}.yaml @@ -30,4 +30,15 @@ get: $ref: ../../components/schemas/request-queues/RequestResponse.yaml "400": $ref: ../../components/responses/BadRequest.yaml + "404": + description: Not found - the requested resource was not found. + content: + application/json: + schema: + $ref: ../../components/schemas/common/ErrorResponse.yaml + examples: + actor-not-found: + $ref: ../../components/examples/actor-not-found.yaml + actor-run-not-found: + $ref: ../../components/examples/actor-run-not-found.yaml deprecated: false diff --git a/apify-api/openapi/paths/actors/acts@{actorId}@runs@last.yaml b/apify-api/openapi/paths/actors/acts@{actorId}@runs@last.yaml index 34d88def9d..4998708761 100644 --- a/apify-api/openapi/paths/actors/acts@{actorId}@runs@last.yaml +++ b/apify-api/openapi/paths/actors/acts@{actorId}@runs@last.yaml @@ -145,6 +145,17 @@ get: PROXY_SERPS: 0.0006 "400": $ref: ../../components/responses/BadRequest.yaml + "404": + description: Not found - the requested resource was not found. + content: + application/json: + schema: + $ref: ../../components/schemas/common/ErrorResponse.yaml + examples: + actor-not-found: + $ref: ../../components/examples/actor-not-found.yaml + actor-run-not-found: + $ref: ../../components/examples/actor-run-not-found.yaml deprecated: false x-legacy-doc-urls: - https://docs.apify.com/api/v2#/reference/actors/last-run-object-and-its-storages/get-last-run diff --git a/apify-api/openapi/paths/actors/acts@{actorId}@runs@last@abort.yaml b/apify-api/openapi/paths/actors/acts@{actorId}@runs@last@abort.yaml index d14a7f678f..874dfb9adc 100644 --- a/apify-api/openapi/paths/actors/acts@{actorId}@runs@last@abort.yaml +++ b/apify-api/openapi/paths/actors/acts@{actorId}@runs@last@abort.yaml @@ -17,4 +17,15 @@ post: $ref: ../../components/responses/actor-runs/abort.yaml "400": $ref: ../../components/responses/BadRequest.yaml + "404": + description: Not found - the requested resource was not found. + content: + application/json: + schema: + $ref: ../../components/schemas/common/ErrorResponse.yaml + examples: + actor-not-found: + $ref: ../../components/examples/actor-not-found.yaml + actor-run-not-found: + $ref: ../../components/examples/actor-run-not-found.yaml deprecated: false diff --git a/apify-api/openapi/paths/actors/acts@{actorId}@runs@last@dataset.yaml b/apify-api/openapi/paths/actors/acts@{actorId}@runs@last@dataset.yaml index 5dc5eecf47..d3bf2ca0b1 100644 --- a/apify-api/openapi/paths/actors/acts@{actorId}@runs@last@dataset.yaml +++ b/apify-api/openapi/paths/actors/acts@{actorId}@runs@last@dataset.yaml @@ -21,4 +21,15 @@ get: $ref: ../../components/schemas/datasets/DatasetResponse.yaml "400": $ref: ../../components/responses/BadRequest.yaml + "404": + description: Not found - the requested resource was not found. + content: + application/json: + schema: + $ref: ../../components/schemas/common/ErrorResponse.yaml + examples: + actor-not-found: + $ref: ../../components/examples/actor-not-found.yaml + actor-run-not-found: + $ref: ../../components/examples/actor-run-not-found.yaml deprecated: false diff --git a/apify-api/openapi/paths/actors/acts@{actorId}@runs@last@dataset@items.yaml b/apify-api/openapi/paths/actors/acts@{actorId}@runs@last@dataset@items.yaml index 89188f412a..48b3baf056 100644 --- a/apify-api/openapi/paths/actors/acts@{actorId}@runs@last@dataset@items.yaml +++ b/apify-api/openapi/paths/actors/acts@{actorId}@runs@last@dataset@items.yaml @@ -95,6 +95,17 @@ get: type: object "400": $ref: ../../components/responses/BadRequest.yaml + "404": + description: Not found - the requested resource was not found. + content: + application/json: + schema: + $ref: ../../components/schemas/common/ErrorResponse.yaml + examples: + actor-not-found: + $ref: ../../components/examples/actor-not-found.yaml + actor-run-not-found: + $ref: ../../components/examples/actor-run-not-found.yaml deprecated: false post: tags: @@ -124,4 +135,15 @@ post: headers: {} "400": $ref: ../../components/responses/BadRequest.yaml + "404": + description: Not found - the requested resource was not found. + content: + application/json: + schema: + $ref: ../../components/schemas/common/ErrorResponse.yaml + examples: + actor-not-found: + $ref: ../../components/examples/actor-not-found.yaml + actor-run-not-found: + $ref: ../../components/examples/actor-run-not-found.yaml deprecated: false diff --git a/apify-api/openapi/paths/actors/acts@{actorId}@runs@last@key-value-store.yaml b/apify-api/openapi/paths/actors/acts@{actorId}@runs@last@key-value-store.yaml index aefb557f8b..2d1ba1e77e 100644 --- a/apify-api/openapi/paths/actors/acts@{actorId}@runs@last@key-value-store.yaml +++ b/apify-api/openapi/paths/actors/acts@{actorId}@runs@last@key-value-store.yaml @@ -22,4 +22,15 @@ get: $ref: ../../components/schemas/key-value-stores/KeyValueStoreResponse.yaml "400": $ref: ../../components/responses/BadRequest.yaml + "404": + description: Not found - the requested resource was not found. + content: + application/json: + schema: + $ref: ../../components/schemas/common/ErrorResponse.yaml + examples: + actor-not-found: + $ref: ../../components/examples/actor-not-found.yaml + actor-run-not-found: + $ref: ../../components/examples/actor-run-not-found.yaml deprecated: false diff --git a/apify-api/openapi/paths/actors/acts@{actorId}@runs@last@key-value-store@keys.yaml b/apify-api/openapi/paths/actors/acts@{actorId}@runs@last@key-value-store@keys.yaml index e9a66f838f..29bfcc2a95 100644 --- a/apify-api/openapi/paths/actors/acts@{actorId}@runs@last@key-value-store@keys.yaml +++ b/apify-api/openapi/paths/actors/acts@{actorId}@runs@last@key-value-store@keys.yaml @@ -36,4 +36,15 @@ get: $ref: ../../components/schemas/key-value-stores/ListOfKeysResponse.yaml "400": $ref: ../../components/responses/BadRequest.yaml + "404": + description: Not found - the requested resource was not found. + content: + application/json: + schema: + $ref: ../../components/schemas/common/ErrorResponse.yaml + examples: + actor-not-found: + $ref: ../../components/examples/actor-not-found.yaml + actor-run-not-found: + $ref: ../../components/examples/actor-run-not-found.yaml deprecated: false diff --git a/apify-api/openapi/paths/actors/acts@{actorId}@runs@last@key-value-store@records@{recordKey}.yaml b/apify-api/openapi/paths/actors/acts@{actorId}@runs@last@key-value-store@records@{recordKey}.yaml index 2bd893b4dd..027e48f4fe 100644 --- a/apify-api/openapi/paths/actors/acts@{actorId}@runs@last@key-value-store@records@{recordKey}.yaml +++ b/apify-api/openapi/paths/actors/acts@{actorId}@runs@last@key-value-store@records@{recordKey}.yaml @@ -30,6 +30,17 @@ get: type: object "400": $ref: ../../components/responses/BadRequest.yaml + "404": + description: Not found - the requested resource was not found. + content: + application/json: + schema: + $ref: ../../components/schemas/common/ErrorResponse.yaml + examples: + actor-not-found: + $ref: ../../components/examples/actor-not-found.yaml + actor-run-not-found: + $ref: ../../components/examples/actor-run-not-found.yaml deprecated: false put: tags: @@ -65,4 +76,15 @@ put: headers: {} "400": $ref: ../../components/responses/BadRequest.yaml + "404": + description: Not found - the requested resource was not found. + content: + application/json: + schema: + $ref: ../../components/schemas/common/ErrorResponse.yaml + examples: + actor-not-found: + $ref: ../../components/examples/actor-not-found.yaml + actor-run-not-found: + $ref: ../../components/examples/actor-run-not-found.yaml deprecated: false diff --git a/apify-api/openapi/paths/actors/acts@{actorId}@runs@last@log.yaml b/apify-api/openapi/paths/actors/acts@{actorId}@runs@last@log.yaml index 86f01437e3..74321f0a4e 100644 --- a/apify-api/openapi/paths/actors/acts@{actorId}@runs@last@log.yaml +++ b/apify-api/openapi/paths/actors/acts@{actorId}@runs@last@log.yaml @@ -44,4 +44,15 @@ get: example: "2017-07-14T06:00:49.733Z Application started.\n" "400": $ref: ../../components/responses/BadRequest.yaml + "404": + description: Not found - the requested resource was not found. + content: + application/json: + schema: + $ref: ../../components/schemas/common/ErrorResponse.yaml + examples: + actor-not-found: + $ref: ../../components/examples/actor-not-found.yaml + actor-run-not-found: + $ref: ../../components/examples/actor-run-not-found.yaml deprecated: false diff --git a/apify-api/openapi/paths/actors/acts@{actorId}@runs@last@metamorph.yaml b/apify-api/openapi/paths/actors/acts@{actorId}@runs@last@metamorph.yaml index 1900b45a53..b3859e936e 100644 --- a/apify-api/openapi/paths/actors/acts@{actorId}@runs@last@metamorph.yaml +++ b/apify-api/openapi/paths/actors/acts@{actorId}@runs@last@metamorph.yaml @@ -19,4 +19,15 @@ post: $ref: ../../components/responses/actor-runs/metamorph.yaml "400": $ref: ../../components/responses/BadRequest.yaml + "404": + description: Not found - the requested resource was not found. + content: + application/json: + schema: + $ref: ../../components/schemas/common/ErrorResponse.yaml + examples: + actor-not-found: + $ref: ../../components/examples/actor-not-found.yaml + actor-run-not-found: + $ref: ../../components/examples/actor-run-not-found.yaml deprecated: false diff --git a/apify-api/openapi/paths/actors/acts@{actorId}@runs@last@reboot.yaml b/apify-api/openapi/paths/actors/acts@{actorId}@runs@last@reboot.yaml index 2873fedd3e..29fe291db1 100644 --- a/apify-api/openapi/paths/actors/acts@{actorId}@runs@last@reboot.yaml +++ b/apify-api/openapi/paths/actors/acts@{actorId}@runs@last@reboot.yaml @@ -16,4 +16,15 @@ post: $ref: ../../components/responses/actor-runs/reboot.yaml "400": $ref: ../../components/responses/BadRequest.yaml + "404": + description: Not found - the requested resource was not found. + content: + application/json: + schema: + $ref: ../../components/schemas/common/ErrorResponse.yaml + examples: + actor-not-found: + $ref: ../../components/examples/actor-not-found.yaml + actor-run-not-found: + $ref: ../../components/examples/actor-run-not-found.yaml deprecated: false diff --git a/apify-api/openapi/paths/actors/acts@{actorId}@runs@last@request-queue.yaml b/apify-api/openapi/paths/actors/acts@{actorId}@runs@last@request-queue.yaml index 4a4408a09c..d7d274a5a1 100644 --- a/apify-api/openapi/paths/actors/acts@{actorId}@runs@last@request-queue.yaml +++ b/apify-api/openapi/paths/actors/acts@{actorId}@runs@last@request-queue.yaml @@ -22,4 +22,15 @@ get: $ref: ../../components/schemas/request-queues/RequestQueueResponse.yaml "400": $ref: ../../components/responses/BadRequest.yaml + "404": + description: Not found - the requested resource was not found. + content: + application/json: + schema: + $ref: ../../components/schemas/common/ErrorResponse.yaml + examples: + actor-not-found: + $ref: ../../components/examples/actor-not-found.yaml + actor-run-not-found: + $ref: ../../components/examples/actor-run-not-found.yaml deprecated: false diff --git a/apify-api/openapi/paths/actors/acts@{actorId}@runs@last@request-queue@head.yaml b/apify-api/openapi/paths/actors/acts@{actorId}@runs@last@request-queue@head.yaml index a3b97e1100..a6e7053534 100644 --- a/apify-api/openapi/paths/actors/acts@{actorId}@runs@last@request-queue@head.yaml +++ b/apify-api/openapi/paths/actors/acts@{actorId}@runs@last@request-queue@head.yaml @@ -37,4 +37,15 @@ get: $ref: ../../components/schemas/request-queues/HeadResponse.yaml "400": $ref: ../../components/responses/BadRequest.yaml + "404": + description: Not found - the requested resource was not found. + content: + application/json: + schema: + $ref: ../../components/schemas/common/ErrorResponse.yaml + examples: + actor-not-found: + $ref: ../../components/examples/actor-not-found.yaml + actor-run-not-found: + $ref: ../../components/examples/actor-run-not-found.yaml deprecated: false diff --git a/apify-api/openapi/paths/actors/acts@{actorId}@runs@last@request-queue@requests.yaml b/apify-api/openapi/paths/actors/acts@{actorId}@runs@last@request-queue@requests.yaml index 8cebecff67..542dc48cde 100644 --- a/apify-api/openapi/paths/actors/acts@{actorId}@runs@last@request-queue@requests.yaml +++ b/apify-api/openapi/paths/actors/acts@{actorId}@runs@last@request-queue@requests.yaml @@ -37,6 +37,17 @@ get: $ref: ../../components/schemas/request-queues/ListOfRequestsResponse.yaml "400": $ref: ../../components/responses/BadRequest.yaml + "404": + description: Not found - the requested resource was not found. + content: + application/json: + schema: + $ref: ../../components/schemas/common/ErrorResponse.yaml + examples: + actor-not-found: + $ref: ../../components/examples/actor-not-found.yaml + actor-run-not-found: + $ref: ../../components/examples/actor-run-not-found.yaml deprecated: false post: tags: @@ -69,4 +80,15 @@ post: - $ref: ../../components/schemas/request-queues/AddRequestResponse.yaml "400": $ref: ../../components/responses/BadRequest.yaml + "404": + description: Not found - the requested resource was not found. + content: + application/json: + schema: + $ref: ../../components/schemas/common/ErrorResponse.yaml + examples: + actor-not-found: + $ref: ../../components/examples/actor-not-found.yaml + actor-run-not-found: + $ref: ../../components/examples/actor-run-not-found.yaml deprecated: false diff --git a/apify-api/openapi/paths/actors/acts@{actorId}@runs@last@request-queue@requests@{requestId}.yaml b/apify-api/openapi/paths/actors/acts@{actorId}@runs@last@request-queue@requests@{requestId}.yaml index 5a5331a47a..577e262114 100644 --- a/apify-api/openapi/paths/actors/acts@{actorId}@runs@last@request-queue@requests@{requestId}.yaml +++ b/apify-api/openapi/paths/actors/acts@{actorId}@runs@last@request-queue@requests@{requestId}.yaml @@ -30,4 +30,15 @@ get: $ref: ../../components/schemas/request-queues/RequestResponse.yaml "400": $ref: ../../components/responses/BadRequest.yaml + "404": + description: Not found - the requested resource was not found. + content: + application/json: + schema: + $ref: ../../components/schemas/common/ErrorResponse.yaml + examples: + actor-not-found: + $ref: ../../components/examples/actor-not-found.yaml + actor-run-not-found: + $ref: ../../components/examples/actor-run-not-found.yaml deprecated: false