Skip to content

docs: fix high and medium inaccuracies in integrations pages#2727

Open
mtrunkat wants to merge 4 commits into
masterfrom
claude/docs-fix-integrations-8g4myu
Open

docs: fix high and medium inaccuracies in integrations pages#2727
mtrunkat wants to merge 4 commits into
masterfrom
claude/docs-fix-integrations-8g4myu

Conversation

@mtrunkat

@mtrunkat mtrunkat commented Jul 2, 2026

Copy link
Copy Markdown
Member

Corrects high- and medium-severity discrepancies across the integrations docs, verified against apify-core.

  • API/webhooks: webhook requestUrl uses the /v2/acts/ prefix (the form the Console integration parser matches); webhook request timeout is 2 minutes (not 30 seconds); webhooks index now notes actions beyond HTTP POST (Slack, Gmail, Google Drive, GitHub issue).
  • Skyfire: minimum PAY-token balance is $1 (not $5); removed the "Discover payment requirements" 402 section, which is not implemented for Skyfire.
  • MCP/AI: Mastra swaps Actors via the tools query parameter (not an actors parameter); added an availability note for MCP connectors in Actors; fixed the Lindy rental-model anchor and noted rental sunsetting.
  • Kestra: corrected datasetId to {{outputs.run_apify_actor.defaultDatasetId}} and fixed misplaced task properties/step references.
  • Slack: attribution links to the integration settings page in Console; documented the full set of run/build statuses.
  • Gumloop: button label "Save as a new task".

Generated by Claude Code

- integrating-actors-via-api.md: webhook requestUrl example uses /v2/acts/ prefix (the prefix the Console Actor-integration parser matches), not /v2/actors/.
- lindy.md: fix broken rental pricing anchor to the rental page slug and note the rental model is being retired in 2026.
- mastra.md: swap Actors via the tools query parameter in the MCP server URL, not a nonexistent actors parameter.
- mcp-connectors/using-connectors-in-actors.md: add availability note that the connector picker is gated by a rollout and falls back to text/JSON input.
- skyfire.md: minimum PAY token balance is $1, not $5 (three places); remove the Discover payment requirements section (402 discovery is x402-only, not implemented for Skyfire).
- webhooks/actions.md: webhook HTTP request timeout is 2 minutes, not 30 seconds.
- webhooks/index.md: HTTP POST is not the only action; note Slack, Gmail, Google Drive, and GitHub issue actions.
- gumloop/index.md: Console button label is "Save as a new task", not "Create a task".
- kestra.md: move input/maxItems onto the run task, fix datasetId to reference the run output, and fix the log task placement to be below get_dataset.
- slack.md: attribution links to the integration settings page in Apify Console, not apify.com; list all eight ACTOR_JOB_STATUSES for runs and builds.
Copilot AI review requested due to automatic review settings July 2, 2026 20:01
@mtrunkat mtrunkat requested a review from marcel-rbro as a code owner July 2, 2026 20:01
@apify-service-account

apify-service-account commented Jul 2, 2026

Copy link
Copy Markdown
Contributor

✅ Preview for this PR (commit 26fbac9) is ready at https://pr-2727.preview.docs.apify.com (see action run).

@mtrunkat mtrunkat added the adhoc Ad-hoc unplanned task added during the sprint. label Jul 2, 2026

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR updates multiple Apify integrations docs pages to correct previously reported high/medium inaccuracies (webhooks behavior, MCP/AI connector usage, third-party integration setup details), aiming to align the documentation with current platform behavior.

Changes:

  • Updates webhook docs to reflect broader available webhook actions and a 2-minute HTTP timeout, and adjusts an API webhook example URL prefix.
  • Fixes/clarifies several third-party integration guides (Slack, Kestra, Gumloop) and AI/MCP docs (Skyfire, Mastra, MCP connectors in Actors, Lindy).
  • Removes Skyfire content describing an unimplemented 402 “discover payment requirements” flow, and updates Skyfire minimum balance amounts.

Reviewed changes

Copilot reviewed 10 out of 10 changed files in this pull request and generated 2 comments.

Show a summary per file
File Description
sources/platform/integrations/workflows-and-notifications/slack.md Updates Slack integration attribution description and expands the documented run/build status set.
sources/platform/integrations/workflows-and-notifications/kestra.md Corrects Kestra workflow steps for fetching the default dataset from a prior Actor run.
sources/platform/integrations/workflows-and-notifications/gumloop/index.md Updates the Gumloop instructions to match the current Console button label for creating tasks.
sources/platform/integrations/programming/webhooks/index.md Updates webhook overview to reflect multiple action types beyond HTTP POST.
sources/platform/integrations/programming/webhooks/actions.md Updates documented webhook HTTP request timeout from 30 seconds to 2 minutes.
sources/platform/integrations/ai/skyfire.md Adjusts Skyfire PAY token minimums and removes an unimplemented “discover requirements” section.
sources/platform/integrations/ai/mcp-connectors/using-connectors-in-actors.md Adds an availability note describing gradual rollout and fallback UI behavior for connector pickers.
sources/platform/integrations/ai/mastra.md Corrects how to swap Actors when using the Apify MCP server (via the tools query parameter).
sources/platform/integrations/ai/lindy.md Fixes the rental-model link target and notes rental-model retirement context.
sources/platform/integrations/actors/integrating-actors-via-api.md Updates webhook requestUrl example to use the /v2/acts/ prefix for integration parsing.

- `maxItems`: The maximum number of items to fetch. For our example we will set this to 5.
1. Add a new task below the `run_apify_actor` with an ID of `get_dataset` and a type of `io.kestra.plugin.apify.dataset.Get`.
1. Configure the `get_dataset` to fetch the dataset generated by the `run_apify_actor` task by configuring the following values:
- `datasetId`: The ID of the dataset to fetch. You can use the value from the previous task using the following syntax: "\{\{outputs.run_apify_actor.defaultDatasetId\}\}"
:::info Webhook actions

Currently, the only available action is to send a POST HTTP request to a URL specified in the webhook.
The most common action is to send a POST HTTP request to a URL specified in the webhook. Webhooks can also trigger other actions, such as sending a Slack message, an email through Gmail, a file to Google Drive, or creating a GitHub issue.
@mtrunkat mtrunkat removed the request for review from marcel-rbro July 2, 2026 20:11

1. The agent searches for suitable Actors using the search tools or works with pre-loaded Actors.
1. When attempting to run an Actor, the agent recognizes the need for a Skyfire PAY token with a minimum of $5 and calls the Skyfire MCP server to create it.
1. When attempting to run an Actor, the agent recognizes the need for a Skyfire PAY token with a minimum of $1 and calls the Skyfire MCP server to create it.

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@MQ37, could you confirm if this is correct?

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

For context on where the $1 figure came from: in apify-core the minimum is AGENTIC_PAYMENT_MINIMUM_BALANCE_USD = 1, and the corresponding validation error reads "The required amount is $1 at least." The page previously said $5. Happy to change it back if that constant isn't the right source of truth here.


Generated by Claude Code

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yes and no - on the API level the minimum is set to 1 USD but on the MCP level we explicitly decided to set it to minimum 5 USD as in the MCP session the Skyfire PAY token is reused across multiple calls and the API rejects any token where remaining balance is less than 1 USD so there is some buffer for longer sessions.

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks for the detail. Reverted all three occurrences back to $5 in 26fbac9, since this page documents the MCP flow where the $5 minimum applies.


Generated by Claude Code

1. Finally, Apify's billing system charges the Skyfire PAY token for the actual usage cost.

Any unused funds remain available in the token for future runs or are returned to your Skyfire wallet when the token expires. This means you will not lose money if the actual usage is less than the $5 minimum.
Any unused funds remain available in the token for future runs or are returned to your Skyfire wallet when the token expires. This means you will not lose money if the actual usage is less than the $1 minimum.

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@MQ37 and here.

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Same source as the previous $1 thread (AGENTIC_PAYMENT_MINIMUM_BALANCE_USD = 1).


Generated by Claude Code

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

same as #2727 (comment)

```json5
{
"requestUrl": "https://api.apify.com/v2/actors/<integration-actor-id>/runs",
"requestUrl": "https://api.apify.com/v2/acts/<integration-actor-id>/runs",

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Revert this, this is a legacy URL, we now use actors

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Reverted to /v2/actors/ in a73df2f.


Generated by Claude Code


:::note Availability

MCP connector support is rolling out gradually and is not yet enabled for all accounts. If the connector picker does not appear in Apify Console, the feature is not yet available for you. Until then, a `mcpConnector` field of type `string` falls back to a plain text input and a field of type `array` falls back to a JSON editor.

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Remove this. It's now fully out.

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Removed the availability note in a73df2f.


Generated by Claude Code

claude added 3 commits July 2, 2026 20:21
- integrating-actors-via-api.md: keep the /v2/actors/ webhook URL (per maintainer, /v2/acts/ is legacy)
- using-connectors-in-actors.md: remove the MCP connector availability note (feature is fully released)
Per maintainer clarification, the API-level minimum is $1 but the MCP
integration deliberately requires a $5 minimum PAY token to buffer reuse
across a session. This page documents the MCP flow, so revert to $5.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

adhoc Ad-hoc unplanned task added during the sprint.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants