# Agent Market — full details > Business intelligence your agent can verify. Source-backed reports, predictable JSON, and clear per-result pricing. Start with one company. Publisher: Boatify Rentals LLC (maintainer Majd Hijazin). We own the paid Actors and can receive eligible usage revenue. Nothing on this website starts an Actor run or collects tokens. Paid runs happen only in the caller’s own Apify account after the caller authorizes spending. These files are documentation aids for people and agents. Publishing them does not guarantee indexing, ranking or selection by any search engine or AI system. Last metadata check: 2026-10-08T12:16:53.713706+00:00 (read-only API check; not live status). Prices, builds and terms can change: recheck the Apify Store page before purchase. ## Rules for callers - Connecting does not authorize spending. Reading metadata or installing docs never starts a run. - Obtain the caller’s spending authorization before any run. Set `maxTotalChargeUsd` to the unit price; each run emits at most one event. - Caps are not discounts and do not guarantee a positive result. Unknown/invalid checks produce no eligible report event; caller model/workflow costs are separate. - Recovery: Save the run ID from the first response; on timeout or ambiguous response, poll that same run; never start a second charged run to recover output. - Reports may precede final event charging; their billing fields alone do not establish a settled debit. - Usage boundary: No discovery of companies, people identity/deliverability verification, proof of buying intent, outreach, top-ups, subscriptions or recurring purchases. - No live MCP execution of these call-actor templates has been performed by anyone, owner or independent; they were validated offline against the tool schemas and current metadata, and the recorded examples came from Apify SDK/API runs. - Other validated services are currently private and not callable; they are not listed in this catalog. ## Connections - Hosted MCP: https://mcp.apify.com (docs https://docs.apify.com/integrations/mcp). - Anonymous inspection: https://mcp.apify.com?tools=search-actors,fetch-actor-details. Anonymous (no token) inspection is allowed only when ?tools= is limited to search-actors, fetch-actor-details, search-apify-docs and fetch-apify-docs. - Execution: https://mcp.apify.com?tools=actors,runs,storage. Execution requires the caller’s own Apify authentication: OAuth (recommended; browser sign-in, no token in config) or an Authorization: Bearer header set securely in your client. Never put a token in a URL. - REST API v2: https://api.apify.com/v2 (docs https://docs.apify.com/api/v2). MCP client config (OAuth, recommended): ```json { "mcpServers": { "apify": { "url": "https://mcp.apify.com?tools=actors,runs,storage" } } } ``` MCP client config (Authorization header; set the token securely in your client): ```json { "mcpServers": { "apify": { "url": "https://mcp.apify.com?tools=actors,runs,storage", "headers": { "Authorization": "Bearer " } } } } ``` MCP client config (anonymous inspection only): ```json { "mcpServers": { "apify-inspect": { "url": "https://mcp.apify.com?tools=search-actors,fetch-actor-details" } } } ``` ## Hiring Signals — Which jobs has this supplied company recently posted, with verifiable dates? Dated live jobs, primary-source URLs, date meaning and coverage. - Capability id: `job.find` - Actor: `impressionable_lupine/company-recent-job-openings` (ID `DnTJ0PiYO5uNHgDKK`), default build `2.0.20` - Apify Store: https://apify.com/impressionable_lupine/company-recent-job-openings - Page: https://agents.retainly.dev/capabilities/hiring-signals - Last metadata check: 2026-10-08T12:16:53.713706+00:00 (read-only; not live status) ### Workflow Recent hiring evidence for account research and recruiting workflows. Simpler alternative: If you already have an adapter for the company’s ATS or public job-board API (for example Ashby, Greenhouse, Lever or SmartRecruiters), call it directly; it incurs no Actor event charge and may be more complete for that source. Do not choose for: - Discovering companies from geography or industry criteria - Proving hiring velocity from a single snapshot - Identifying decision-makers or proving purchase intent ### Input | Field | Required | Constraints | Description | |---|---|---|---| | `company_website` | yes | required, string, max 2048 chars | Public company domain or URL. One company per report. We follow its careers/ATS links; no source credentials needed. Do not supply an ATS URL directly. | | `lookback_days` | no | optional, integer 1–365, default 30 | Default 30. UTC calendar-day window; only source-verifiable publication dates qualify. Republication is explicitly labeled. | | `max_jobs` | no | optional, integer 1–100, default 30 | Default 30; output cap 1–100. Partial positives cost one report; complete dated negatives also cost one report. Unknown/failed checks are free. Raising this cap does not increase the 40-request budget. | Minimal valid input: ```json { "company_website": "https://linear.app", "lookback_days": 30, "max_jobs": 5 } ``` Input schema: https://agents.retainly.dev/schemas/hiring-signals/input_schema.json Report schema: https://agents.retainly.dev/schemas/hiring-signals/report.schema.json ### Price and charge trigger - Model: PAY_PER_EVENT, event `verified-report` (“Verified hiring report”), $0.03 USD, max 1 event per run. - Store event description (verbatim): “One source-checked company hiring report, including verified no-recent-openings results.” - Charge trigger: One event per eligible report: a verified positive (including a partial positive) or a complete source-scoped negative (status no_result with coverage_complete: true). - No event when: An incomplete check with zero dated jobs is unknown and produces no event. invalid_input and upstream_error produce no event. Undated jobs cannot establish recency. - Standard Actor platform usage included under the configuration checked on 8 Oct 2026; recheck before purchase. - Caps are not discounts and do not guarantee a positive result. Unknown/invalid checks produce no eligible report event; caller model/workflow costs are separate. ### Statuses | Status | Meaning | Eligible report event | |---|---|---| | `success` | Complete positive: verified recent openings with source-verified dates. | yes | | `partial` | Positive with stated limits (for example, incomplete coverage or output cap reached). Verified dated jobs are still returned. | yes | | `no_result` | Complete source-scoped negative: emitted only when coverage_complete is true, so it is one eligible event. A zero-job check with incomplete coverage is reported as upstream_error (unknown, no event). Not a claim about the whole web. | yes | | `invalid_input` | Fix the caller input (for example, an ATS URL or unsafe URL was supplied). | no | | `upstream_error` | Unknown: unsupported or blocked source, configuration or budget failure — and where a zero-job check with incomplete coverage lands (unknown, no event). Never a no-hiring claim. | no | ### Evidence and limits - Verification scope: A current listing in the company-linked public careers or ATS source, with explicit publication metadata. Republishing is labeled. - Coverage limits: Unsupported ATS, undated listings, blocked sources and incomplete coverage remain unknown. A verified negative covers only the checked sources. - Request bounds: 40 requests, 24 MB total, 5 MB per page, 90-second network budget. ### Recorded example Recorded example — observed 2026-10-08 11:43 UTC · owner-funded release test · not an independent purchase. Subject: Linear. Run `eKbRTWiywg2bQQTZd`, build 2.0.20. Reports may precede final event charging; their billing fields alone do not establish a settled debit. Full report with provenance: https://agents.retainly.dev/examples/hiring-signals.json Input used: ```json { "company_website": "https://linear.app", "lookback_days": 30, "max_jobs": 5 } ``` ### Call it (after the caller authorizes spending) Connecting does not authorize spending. Inspecting metadata never starts a run. Inspect without purchase (MCP, anonymous endpoint `https://mcp.apify.com?tools=search-actors,fetch-actor-details`): ```json { "name": "fetch-actor-details", "arguments": { "actor": "impressionable_lupine/company-recent-job-openings", "output": { "pricing": true, "inputSchema": true, "outputSchema": true, "metadata": true, "readme": true } } } ``` Inspect without purchase (REST, no token): ```bash # Free, read-only: public Actor metadata (pricing, builds). Does not start a run. curl "https://api.apify.com/v2/acts/DnTJ0PiYO5uNHgDKK" ``` MCP `call-actor` (endpoint `https://mcp.apify.com?tools=actors,runs,storage`; run limits live in `callOptions`, never in `input`): ```json { "name": "call-actor", "arguments": { "actor": "impressionable_lupine/company-recent-job-openings", "input": { "company_website": "https://linear.app", "lookback_days": 30, "max_jobs": 5 }, "waitSecs": 30, "callOptions": { "build": "2.0.20", "memory": 512, "timeout": 120, "maxTotalChargeUsd": 0.03 } } } ``` MCP follow-ups (same run): ```json { "name": "get-actor-run", "arguments": { "runId": "" } } ``` ```json { "name": "get-dataset-items", "arguments": { "datasetId": "", "clean": true } } ``` REST API v2: ```bash # Paid run in YOUR Apify account. Only after spending is authorized. # Set APIFY_TOKEN securely in your client/shell; never paste it into URLs or shared files. curl -X POST "https://api.apify.com/v2/acts/DnTJ0PiYO5uNHgDKK/runs?build=2.0.20&memory=512&timeout=120&maxTotalChargeUsd=0.03&waitForFinish=30" \ -H "Authorization: Bearer $APIFY_TOKEN" \ -H "Content-Type: application/json" \ -d '{"company_website":"https://linear.app","lookback_days":30,"max_jobs":5}' ``` ```bash # Save data.id (run ID) from the first response. On timeout/ambiguity, poll THIS run. # Never start a second charged run to recover output. curl "https://api.apify.com/v2/actor-runs/$RUN_ID" \ -H "Authorization: Bearer $APIFY_TOKEN" ``` ```bash # data.defaultDatasetId from the run object (one report item). curl "https://api.apify.com/v2/datasets/$DATASET_ID/items?format=json&clean=true" \ -H "Authorization: Bearer $APIFY_TOKEN" ``` Recovery rule: Save the run ID from the first response; on timeout or ambiguous response, poll that same run; never start a second charged run to recover output. ## Contact & Booking — Which public contact and booking routes does this company publish? Public email, phone, contact-page and booking routes with evidence. - Capability id: `contact.find` - Actor: `impressionable_lupine/verified-contact-booking-signals` (ID `zATaaVqLePrcoF50q`), default build `0.2.4` - Apify Store: https://apify.com/impressionable_lupine/verified-contact-booking-signals - Page: https://agents.retainly.dev/capabilities/contact-booking - Last metadata check: 2026-10-08T12:16:53.713706+00:00 (read-only; not live status) ### Workflow Enrich an account with checked business contact routes. Simpler alternative: If you only need the contact page of one site you already know, open it directly. Choose this when you need source-checked routes as dated JSON. Do not choose for: - Verifying mailbox deliverability - Finding private contact details or identifying decision-makers - Sending messages or completing bookings ### Input | Field | Required | Constraints | Description | |---|---|---|---| | `company_website` | yes | required, string, must match ^https:// | The business's official public HTTPS website. | Minimal valid input: ```json { "company_website": "https://cliniquealpa.co.uk/" } ``` Input schema: https://agents.retainly.dev/schemas/contact-booking/input_schema.json Report schema: https://agents.retainly.dev/schemas/contact-booking/report.schema.json ### Price and charge trigger - Model: PAY_PER_EVENT, event `verified-contact-report` (“Verified contact report”), $0.01 USD, max 1 event per run. - Store event description (verbatim): “Charged once for a report with source-checked public contact or booking signals. No verified signal is free.” - Charge trigger: One event when the report contains one or more verified public contact or booking routes. - No event when: no_verified_signal, unknown and invalid_input produce no event. No observed route is not proof none exists. - Standard Actor platform usage included under the configuration checked on 8 Oct 2026; recheck before purchase. - Caps are not discounts and do not guarantee a positive result. Unknown/invalid checks produce no eligible report event; caller model/workflow costs are separate. ### Statuses | Status | Meaning | Eligible report event | |---|---|---| | `verified` | One or more public contact or booking routes observed on checked official pages, with source URL and timestamp. | yes | | `no_verified_signal` | No route was observed on the checked pages. Not proof none exists. | no | | `unknown` | The check could not reach a conclusion (for example, blocked or unsupported source). | no | | `invalid_input` | Fix the caller input (the website must start with https://). | no | ### Evidence and limits - Verification scope: A contact route observed on checked official website pages, with a source URL and timestamp. - Coverage limits: This checks publication, not mailbox deliverability, decision-maker identity or completed booking. No observed route is not proof none exists. - Request bounds: 4 requests, 6 MB total, 3 MB per page, 22-second network budget. ### Recorded example Recorded example — observed 2026-10-08 11:43 UTC · owner-funded release test · not an independent purchase. Subject: Clinique Alpa. Run `fZ72juVGyfOdHCHJq`, build 0.2.4. Reports may precede final event charging; their billing fields alone do not establish a settled debit. Full report with provenance: https://agents.retainly.dev/examples/contact-booking.json Input used: ```json { "company_website": "https://cliniquealpa.co.uk/" } ``` ### Call it (after the caller authorizes spending) Connecting does not authorize spending. Inspecting metadata never starts a run. Inspect without purchase (MCP, anonymous endpoint `https://mcp.apify.com?tools=search-actors,fetch-actor-details`): ```json { "name": "fetch-actor-details", "arguments": { "actor": "impressionable_lupine/verified-contact-booking-signals", "output": { "pricing": true, "inputSchema": true, "outputSchema": true, "metadata": true, "readme": true } } } ``` Inspect without purchase (REST, no token): ```bash # Free, read-only: public Actor metadata (pricing, builds). Does not start a run. curl "https://api.apify.com/v2/acts/zATaaVqLePrcoF50q" ``` MCP `call-actor` (endpoint `https://mcp.apify.com?tools=actors,runs,storage`; run limits live in `callOptions`, never in `input`): ```json { "name": "call-actor", "arguments": { "actor": "impressionable_lupine/verified-contact-booking-signals", "input": { "company_website": "https://cliniquealpa.co.uk/" }, "waitSecs": 30, "callOptions": { "build": "0.2.4", "memory": 512, "timeout": 60, "maxTotalChargeUsd": 0.01 } } } ``` MCP follow-ups (same run): ```json { "name": "get-actor-run", "arguments": { "runId": "" } } ``` ```json { "name": "get-dataset-items", "arguments": { "datasetId": "", "clean": true } } ``` REST API v2: ```bash # Paid run in YOUR Apify account. Only after spending is authorized. # Set APIFY_TOKEN securely in your client/shell; never paste it into URLs or shared files. curl -X POST "https://api.apify.com/v2/acts/zATaaVqLePrcoF50q/runs?build=0.2.4&memory=512&timeout=60&maxTotalChargeUsd=0.01&waitForFinish=30" \ -H "Authorization: Bearer $APIFY_TOKEN" \ -H "Content-Type: application/json" \ -d '{"company_website":"https://cliniquealpa.co.uk/"}' ``` ```bash # Save data.id (run ID) from the first response. On timeout/ambiguity, poll THIS run. # Never start a second charged run to recover output. curl "https://api.apify.com/v2/actor-runs/$RUN_ID" \ -H "Authorization: Bearer $APIFY_TOKEN" ``` ```bash # data.defaultDatasetId from the run object (one report item). curl "https://api.apify.com/v2/datasets/$DATASET_ID/items?format=json&clean=true" \ -H "Authorization: Bearer $APIFY_TOKEN" ``` Recovery rule: Save the run ID from the first response; on timeout or ambiguous response, poll that same run; never start a second charged run to recover output. ## SaaS Pricing — What plans and prices appear on official pricing pages? Observed plan names and displayed prices with source and coverage. - Capability id: `pricing.check` - Actor: `impressionable_lupine/verified-saas-pricing` (ID `FqG15P6FbSTh0QPqq`), default build `0.2.3` - Apify Store: https://apify.com/impressionable_lupine/verified-saas-pricing - Page: https://agents.retainly.dev/capabilities/saas-pricing - Last metadata check: 2026-10-08T12:16:53.713706+00:00 (read-only; not live status) ### Workflow Source-backed pricing snapshots for competitive research and change comparisons. Simpler alternative: If you only need to read one pricing page once, open it directly. Choose this when you need a dated, source-hashed snapshot in JSON for comparison. Do not choose for: - Exhaustive plans from dynamic pricing widgets - Checkout totals, taxes, negotiated quotes or plan entitlement - Proving a pricing change without a previous observation ### Input | Field | Required | Constraints | Description | |---|---|---|---| | `company_website` | yes | required, string | Public SaaS company domain or HTTPS URL, for example linear.app. | | `pricing_url` | no | optional, string | Public pricing page on the same registrable company domain. If omitted, the Actor follows a pricing link on the homepage or tries /pricing. | Minimal valid input: ```json { "company_website": "https://calendly.com/" } ``` Input schema: https://agents.retainly.dev/schemas/saas-pricing/input_schema.json Report schema: https://agents.retainly.dev/schemas/saas-pricing/report.schema.json ### Price and charge trigger - Model: PAY_PER_EVENT, event `verified-pricing-report` (“Verified pricing report”), $0.02 USD, max 1 event per run. - Store event description (verbatim): “Charged once for a report containing source-checked public SaaS plan prices. Unknown results are free.” - Charge trigger: One event for verified plans (including explicit free plans) or a supported partial positive. - No event when: unknown and invalid_input produce no event. - Standard Actor platform usage included under the configuration checked on 8 Oct 2026; recheck before purchase. - Caps are not discounts and do not guarantee a positive result. Unknown/invalid checks produce no eligible report event; caller model/workflow costs are separate. ### Statuses | Status | Meaning | Eligible report event | |---|---|---| | `verified` | Plans and displayed prices associated in the same checked source (including explicit free plans). | yes | | `partial` | Supported partial positive: some plans or prices verified, others ambiguous or missing. | yes | | `unknown` | No plan–price association could be verified in the checked sources. | no | | `invalid_input` | Fix the caller input (for example, a pricing URL on a different domain). | no | ### Evidence and limits - Verification scope: A plan and displayed price are associated in the same checked source. Currency symbols and billing periods are preserved as stated. - Coverage limits: Static extraction is not an exhaustive catalog. Regional prices, tax, discounts, add-ons and dynamic widgets may remain unknown. Do not infer an ISO currency from a symbol. - Request bounds: 8 requests, 8 MB total, 3 MB per page, 35-second network budget. ### Recorded example Recorded example — observed 2026-10-08 11:45 UTC · owner-funded release test · not an independent purchase. Subject: Calendly. Run `GlwOtw5pbHiP4u2PX`, build 0.2.3. Reports may precede final event charging; their billing fields alone do not establish a settled debit. Full report with provenance: https://agents.retainly.dev/examples/saas-pricing.json Input used: ```json { "company_website": "https://calendly.com/" } ``` ### Call it (after the caller authorizes spending) Connecting does not authorize spending. Inspecting metadata never starts a run. Inspect without purchase (MCP, anonymous endpoint `https://mcp.apify.com?tools=search-actors,fetch-actor-details`): ```json { "name": "fetch-actor-details", "arguments": { "actor": "impressionable_lupine/verified-saas-pricing", "output": { "pricing": true, "inputSchema": true, "outputSchema": true, "metadata": true, "readme": true } } } ``` Inspect without purchase (REST, no token): ```bash # Free, read-only: public Actor metadata (pricing, builds). Does not start a run. curl "https://api.apify.com/v2/acts/FqG15P6FbSTh0QPqq" ``` MCP `call-actor` (endpoint `https://mcp.apify.com?tools=actors,runs,storage`; run limits live in `callOptions`, never in `input`): ```json { "name": "call-actor", "arguments": { "actor": "impressionable_lupine/verified-saas-pricing", "input": { "company_website": "https://calendly.com/" }, "waitSecs": 30, "callOptions": { "build": "0.2.3", "memory": 512, "timeout": 60, "maxTotalChargeUsd": 0.02 } } } ``` MCP follow-ups (same run): ```json { "name": "get-actor-run", "arguments": { "runId": "" } } ``` ```json { "name": "get-dataset-items", "arguments": { "datasetId": "", "clean": true } } ``` REST API v2: ```bash # Paid run in YOUR Apify account. Only after spending is authorized. # Set APIFY_TOKEN securely in your client/shell; never paste it into URLs or shared files. curl -X POST "https://api.apify.com/v2/acts/FqG15P6FbSTh0QPqq/runs?build=0.2.3&memory=512&timeout=60&maxTotalChargeUsd=0.02&waitForFinish=30" \ -H "Authorization: Bearer $APIFY_TOKEN" \ -H "Content-Type: application/json" \ -d '{"company_website":"https://calendly.com/"}' ``` ```bash # Save data.id (run ID) from the first response. On timeout/ambiguity, poll THIS run. # Never start a second charged run to recover output. curl "https://api.apify.com/v2/actor-runs/$RUN_ID" \ -H "Authorization: Bearer $APIFY_TOKEN" ``` ```bash # data.defaultDatasetId from the run object (one report item). curl "https://api.apify.com/v2/datasets/$DATASET_ID/items?format=json&clean=true" \ -H "Authorization: Bearer $APIFY_TOKEN" ``` Recovery rule: Save the run ID from the first response; on timeout or ambiguous response, poll that same run; never start a second charged run to recover output. ## Retail Availability — What published price and stock evidence exists for this product and observed variants? Published product/variant offers and availability evidence. - Capability id: `product.check` - Actor: `impressionable_lupine/verified-retail-availability` (ID `1Huevg4n0rTdCWySV`), default build `0.2.4` - Apify Store: https://apify.com/impressionable_lupine/verified-retail-availability - Page: https://agents.retainly.dev/capabilities/retail-availability - Last metadata check: 2026-10-08T12:16:53.713706+00:00 (read-only; not live status) ### Workflow Commerce agents can compare dated offers and refresh availability before recommending a product. Simpler alternative: If the retailer offers a product API or feed you already use, call it directly. Choose this for a dated, source-hashed offer snapshot of one product page. Do not choose for: - Buying the product or guaranteeing checkout stock - Inferring every variant is in stock from a group offer - Exhaustive retailer discovery or review analysis ### Input | Field | Required | Constraints | Description | |---|---|---|---| | `product_url` | yes | required, string | HTTPS URL for one product page, not a collection, search, cart, or account page. | Minimal valid input: ```json { "product_url": "https://www.allbirds.com/products/mens-tree-runners-wheat-dark-beige" } ``` Input schema: https://agents.retainly.dev/schemas/retail-availability/input_schema.json Report schema: https://agents.retainly.dev/schemas/retail-availability/report.schema.json ### Price and charge trigger - Model: PAY_PER_EVENT, event `verified-product-check` (“Verified product check”), $0.01 USD, max 1 event per run. - Store event description (verbatim): “Charged once for a source-checked public product price and availability result. Unknown results are free.” - Charge trigger: One event for a verified offer report, even if some variants are missing or out of stock. - No event when: unknown and invalid_input produce no event. - Standard Actor platform usage included under the configuration checked on 8 Oct 2026; recheck before purchase. - Caps are not discounts and do not guarantee a positive result. Unknown/invalid checks produce no eligible report event; caller model/workflow costs are separate. ### Statuses | Status | Meaning | Eligible report event | |---|---|---| | `verified` | A verified offer report from checked product structured data or supported variant metadata. Some variants may be missing or out of stock. | yes | | `unknown` | No offer could be verified on the checked product page. | no | | `invalid_input` | Fix the caller input (one HTTPS product page, not a collection, search, cart or account page). | no | ### Evidence and limits - Verification scope: Checked product structured data and supported public variant metadata. Product-group and variant offers retain distinct scope. - Coverage limits: Group stock does not prove every variant is available. Missing variant price stays null; regional checkout price and purchase completion are not tested. - Request bounds: 3 requests, 4 MB total, 3 MB per page, 20-second network budget. ### Recorded example Recorded example — observed 2026-10-08 11:45 UTC · owner-funded release test · not an independent purchase. Subject: Allbirds product page. Run `AK3PgR7XTcM3EnCSG`, build 0.2.4. Reports may precede final event charging; their billing fields alone do not establish a settled debit. Full report with provenance: https://agents.retainly.dev/examples/retail-availability.json Input used: ```json { "product_url": "https://www.allbirds.com/products/mens-tree-runners-wheat-dark-beige" } ``` ### Call it (after the caller authorizes spending) Connecting does not authorize spending. Inspecting metadata never starts a run. Inspect without purchase (MCP, anonymous endpoint `https://mcp.apify.com?tools=search-actors,fetch-actor-details`): ```json { "name": "fetch-actor-details", "arguments": { "actor": "impressionable_lupine/verified-retail-availability", "output": { "pricing": true, "inputSchema": true, "outputSchema": true, "metadata": true, "readme": true } } } ``` Inspect without purchase (REST, no token): ```bash # Free, read-only: public Actor metadata (pricing, builds). Does not start a run. curl "https://api.apify.com/v2/acts/1Huevg4n0rTdCWySV" ``` MCP `call-actor` (endpoint `https://mcp.apify.com?tools=actors,runs,storage`; run limits live in `callOptions`, never in `input`): ```json { "name": "call-actor", "arguments": { "actor": "impressionable_lupine/verified-retail-availability", "input": { "product_url": "https://www.allbirds.com/products/mens-tree-runners-wheat-dark-beige" }, "waitSecs": 30, "callOptions": { "build": "0.2.4", "memory": 512, "timeout": 60, "maxTotalChargeUsd": 0.01 } } } ``` MCP follow-ups (same run): ```json { "name": "get-actor-run", "arguments": { "runId": "" } } ``` ```json { "name": "get-dataset-items", "arguments": { "datasetId": "", "clean": true } } ``` REST API v2: ```bash # Paid run in YOUR Apify account. Only after spending is authorized. # Set APIFY_TOKEN securely in your client/shell; never paste it into URLs or shared files. curl -X POST "https://api.apify.com/v2/acts/1Huevg4n0rTdCWySV/runs?build=0.2.4&memory=512&timeout=60&maxTotalChargeUsd=0.01&waitForFinish=30" \ -H "Authorization: Bearer $APIFY_TOKEN" \ -H "Content-Type: application/json" \ -d '{"product_url":"https://www.allbirds.com/products/mens-tree-runners-wheat-dark-beige"}' ``` ```bash # Save data.id (run ID) from the first response. On timeout/ambiguity, poll THIS run. # Never start a second charged run to recover output. curl "https://api.apify.com/v2/actor-runs/$RUN_ID" \ -H "Authorization: Bearer $APIFY_TOKEN" ``` ```bash # data.defaultDatasetId from the run object (one report item). curl "https://api.apify.com/v2/datasets/$DATASET_ID/items?format=json&clean=true" \ -H "Authorization: Bearer $APIFY_TOKEN" ``` Recovery rule: Save the run ID from the first response; on timeout or ambiguous response, poll that same run; never start a second charged run to recover output. ## Customer Proof — Which named customer stories does this vendor publish? Named customer stories linked from the vendor's official website. - Capability id: `customer.evidence` - Actor: `impressionable_lupine/verified-customer-proof` (ID `kRk9vTOnhmGMMrMCg`), default build `0.2.3` - Apify Store: https://apify.com/impressionable_lupine/verified-customer-proof - Page: https://agents.retainly.dev/capabilities/customer-proof - Last metadata check: 2026-10-08T12:16:53.713706+00:00 (read-only; not live status) ### Workflow Find case-study evidence for vendor qualification and account research. Simpler alternative: If you only need a vendor’s customers page URL, open it directly. Choose this for dated named-story rows with per-row evidence. Do not choose for: - Independent endorsement verification - Proving an ongoing customer relationship - Treating unlinked logo walls as verified case studies ### Input | Field | Required | Constraints | Description | |---|---|---|---| | `company_website` | yes | required, string, max 2048 chars | One public, official company domain or HTTPS URL. The Actor follows same-company customer stories only. | | `max_customers` | no | optional, integer 1–6, default 5 | Return at most this many verified story rows. Unverifiable links do not consume this limit; all checks remain within the request and time budget. The result is not exhaustive. | Minimal valid input: ```json { "company_website": "https://linear.app/" } ``` Input schema: https://agents.retainly.dev/schemas/customer-proof/input_schema.json Report schema: https://agents.retainly.dev/schemas/customer-proof/report.schema.json ### Price and charge trigger - Model: PAY_PER_EVENT, event `verified-customer-report` (“Verified customer proof report”), $0.02 USD, max 1 event per run. - Store event description (verbatim): “One source-checked report with public customer evidence. Unknown or invalid results are free.” - Charge trigger: One event for a positive report, which may be a partial list. - No event when: unknown and invalid_input produce no event. - Standard Actor platform usage included under the configuration checked on 8 Oct 2026; recheck before purchase. - Caps are not discounts and do not guarantee a positive result. Unknown/invalid checks produce no eligible report event; caller model/workflow costs are separate. ### Statuses | Status | Meaning | Eligible report event | |---|---|---| | `verified_customer_proof` | Named customers and stories verified on vendor-linked first-party pages. May be a partial list. | yes | | `unknown` | No named customer story could be verified in the checked sources. | no | | `invalid_input` | Fix the caller input. | no | ### Evidence and limits - Verification scope: Named customers and stories verified on vendor-linked first-party case-study pages. - Coverage limits: These are vendor-published claims, not independent endorsements or proof the relationship is current. Generic logo walls alone are insufficient. - Request bounds: 12 requests, 10 MB total, 3 MB per page, 45-second network budget. ### Recorded example Recorded example — observed 2026-10-08 11:46 UTC · owner-funded release test · not an independent purchase. Subject: Linear. Run `6ug7OjCIYmqvfcBJd`, build 0.2.3. Reports may precede final event charging; their billing fields alone do not establish a settled debit. Full report with provenance: https://agents.retainly.dev/examples/customer-proof.json Input used: ```json { "company_website": "https://linear.app/" } ``` ### Call it (after the caller authorizes spending) Connecting does not authorize spending. Inspecting metadata never starts a run. Inspect without purchase (MCP, anonymous endpoint `https://mcp.apify.com?tools=search-actors,fetch-actor-details`): ```json { "name": "fetch-actor-details", "arguments": { "actor": "impressionable_lupine/verified-customer-proof", "output": { "pricing": true, "inputSchema": true, "outputSchema": true, "metadata": true, "readme": true } } } ``` Inspect without purchase (REST, no token): ```bash # Free, read-only: public Actor metadata (pricing, builds). Does not start a run. curl "https://api.apify.com/v2/acts/kRk9vTOnhmGMMrMCg" ``` MCP `call-actor` (endpoint `https://mcp.apify.com?tools=actors,runs,storage`; run limits live in `callOptions`, never in `input`): ```json { "name": "call-actor", "arguments": { "actor": "impressionable_lupine/verified-customer-proof", "input": { "company_website": "https://linear.app/" }, "waitSecs": 30, "callOptions": { "build": "0.2.3", "memory": 512, "timeout": 60, "maxTotalChargeUsd": 0.02 } } } ``` MCP follow-ups (same run): ```json { "name": "get-actor-run", "arguments": { "runId": "" } } ``` ```json { "name": "get-dataset-items", "arguments": { "datasetId": "", "clean": true } } ``` REST API v2: ```bash # Paid run in YOUR Apify account. Only after spending is authorized. # Set APIFY_TOKEN securely in your client/shell; never paste it into URLs or shared files. curl -X POST "https://api.apify.com/v2/acts/kRk9vTOnhmGMMrMCg/runs?build=0.2.3&memory=512&timeout=60&maxTotalChargeUsd=0.02&waitForFinish=30" \ -H "Authorization: Bearer $APIFY_TOKEN" \ -H "Content-Type: application/json" \ -d '{"company_website":"https://linear.app/"}' ``` ```bash # Save data.id (run ID) from the first response. On timeout/ambiguity, poll THIS run. # Never start a second charged run to recover output. curl "https://api.apify.com/v2/actor-runs/$RUN_ID" \ -H "Authorization: Bearer $APIFY_TOKEN" ``` ```bash # data.defaultDatasetId from the run object (one report item). curl "https://api.apify.com/v2/datasets/$DATASET_ID/items?format=json&clean=true" \ -H "Authorization: Bearer $APIFY_TOKEN" ``` Recovery rule: Save the run ID from the first response; on timeout or ambiguous response, poll that same run; never start a second charged run to recover output. ## Partner Programs — Does this vendor publish a B2B partner program? Official program evidence and published next-step links. - Capability id: `partner.find` - Actor: `impressionable_lupine/verified-partner-programs` (ID `NSd4yuX7ShfX7R7QI`), default build `0.2.3` - Apify Store: https://apify.com/impressionable_lupine/verified-partner-programs - Page: https://agents.retainly.dev/capabilities/partner-programs - Last metadata check: 2026-10-08T12:16:53.713706+00:00 (read-only; not live status) ### Workflow Find official channel, solution and integration partnership routes. Simpler alternative: If you already know the vendor’s partner page URL, read it directly. Choose this for dated program evidence in JSON. Do not choose for: - Submitting applications or proving acceptance - Assuming unstated eligibility or benefits - Exhaustive partner directory discovery ### Input | Field | Required | Constraints | Description | |---|---|---|---| | `company_website` | yes | required, string, max 2048 chars | One public official company domain or HTTPS URL. The Actor checks only linked same-company partner-program pages. | Minimal valid input: ```json { "company_website": "https://vercel.com/" } ``` Input schema: https://agents.retainly.dev/schemas/partner-programs/input_schema.json Report schema: https://agents.retainly.dev/schemas/partner-programs/report.schema.json ### Price and charge trigger - Model: PAY_PER_EVENT, event `verified-partner-report` (“Verified report”), $0.02 USD, max 1 event per run. - Store event description (verbatim): “One source-checked report with verified evidence. Unknown or invalid results are free.” - Charge trigger: One event for one verified program report, regardless of program count. - No event when: unknown and invalid_input produce no event. - Standard Actor platform usage included under the configuration checked on 8 Oct 2026; recheck before purchase. - Caps are not discounts and do not guarantee a positive result. Unknown/invalid checks produce no eligible report event; caller model/workflow costs are separate. ### Statuses | Status | Meaning | Eligible report event | |---|---|---| | `verified_partner_program` | Explicit B2B program evidence on vendor-linked official pages. One event regardless of program count. | yes | | `unknown` | No partner program could be verified in the checked sources. | no | | `invalid_input` | Fix the caller input. | no | ### Evidence and limits - Verification scope: Explicit B2B program evidence in vendor-linked official pages, including program types when stated. - Coverage limits: Observed application links are not submitted; eligibility, benefits and acceptance are not inferred. - Request bounds: 8 requests, 7 MB total, 3 MB per page, 35-second network budget. ### Recorded example Recorded example — observed 2026-10-08 11:46 UTC · owner-funded release test · not an independent purchase. Subject: Vercel. Run `UkXArHFlW79xPPsIP`, build 0.2.3. Reports may precede final event charging; their billing fields alone do not establish a settled debit. Full report with provenance: https://agents.retainly.dev/examples/partner-programs.json Input used: ```json { "company_website": "https://vercel.com/" } ``` ### Call it (after the caller authorizes spending) Connecting does not authorize spending. Inspecting metadata never starts a run. Inspect without purchase (MCP, anonymous endpoint `https://mcp.apify.com?tools=search-actors,fetch-actor-details`): ```json { "name": "fetch-actor-details", "arguments": { "actor": "impressionable_lupine/verified-partner-programs", "output": { "pricing": true, "inputSchema": true, "outputSchema": true, "metadata": true, "readme": true } } } ``` Inspect without purchase (REST, no token): ```bash # Free, read-only: public Actor metadata (pricing, builds). Does not start a run. curl "https://api.apify.com/v2/acts/NSd4yuX7ShfX7R7QI" ``` MCP `call-actor` (endpoint `https://mcp.apify.com?tools=actors,runs,storage`; run limits live in `callOptions`, never in `input`): ```json { "name": "call-actor", "arguments": { "actor": "impressionable_lupine/verified-partner-programs", "input": { "company_website": "https://vercel.com/" }, "waitSecs": 30, "callOptions": { "build": "0.2.3", "memory": 512, "timeout": 60, "maxTotalChargeUsd": 0.02 } } } ``` MCP follow-ups (same run): ```json { "name": "get-actor-run", "arguments": { "runId": "" } } ``` ```json { "name": "get-dataset-items", "arguments": { "datasetId": "", "clean": true } } ``` REST API v2: ```bash # Paid run in YOUR Apify account. Only after spending is authorized. # Set APIFY_TOKEN securely in your client/shell; never paste it into URLs or shared files. curl -X POST "https://api.apify.com/v2/acts/NSd4yuX7ShfX7R7QI/runs?build=0.2.3&memory=512&timeout=60&maxTotalChargeUsd=0.02&waitForFinish=30" \ -H "Authorization: Bearer $APIFY_TOKEN" \ -H "Content-Type: application/json" \ -d '{"company_website":"https://vercel.com/"}' ``` ```bash # Save data.id (run ID) from the first response. On timeout/ambiguity, poll THIS run. # Never start a second charged run to recover output. curl "https://api.apify.com/v2/actor-runs/$RUN_ID" \ -H "Authorization: Bearer $APIFY_TOKEN" ``` ```bash # data.defaultDatasetId from the run object (one report item). curl "https://api.apify.com/v2/datasets/$DATASET_ID/items?format=json&clean=true" \ -H "Authorization: Bearer $APIFY_TOKEN" ``` Recovery rule: Save the run ID from the first response; on timeout or ambiguous response, poll that same run; never start a second charged run to recover output. ## Integration Evidence — Does this vendor officially document a named integration? Official evidence for a supplied integration name. - Capability id: `integration.verify` - Actor: `impressionable_lupine/verified-integration-evidence` (ID `VNySEt559gcOuwjE9`), default build `0.2.4` - Apify Store: https://apify.com/impressionable_lupine/verified-integration-evidence - Page: https://agents.retainly.dev/capabilities/integration-evidence - Last metadata check: 2026-10-08T12:16:53.713706+00:00 (read-only; not live status) ### Workflow Check a precise integration claim before recommending a vendor. Simpler alternative: If the vendor publishes an integrations directory or marketplace API you already query, use it directly. Choose this to check one precise integration claim with dated evidence. Do not choose for: - Testing a live software connection - Proving account or plan entitlement - Checking arbitrary free-text claims ### Input | Field | Required | Constraints | Description | |---|---|---|---| | `company_website` | yes | required, string, max 2048 chars | One public official HTTPS company website; the Actor follows only linked same-company integration pages. | | `integration_name` | yes | required, string, max 80 chars | One exact software or app name to check, such as GitHub or Salesforce. | Minimal valid input: ```json { "company_website": "https://linear.app/", "integration_name": "GitHub" } ``` Input schema: https://agents.retainly.dev/schemas/integration-evidence/input_schema.json Report schema: https://agents.retainly.dev/schemas/integration-evidence/report.schema.json ### Price and charge trigger - Model: PAY_PER_EVENT, event `verified-integration-report` (“Verified report”), $0.02 USD, max 1 event per run. - Store event description (verbatim): “One source-checked report with verified evidence. Unknown or invalid results are free.” - Charge trigger: One event when the status is verified_integration. - No event when: Missing, ambiguous, negated or blocked documentation is unknown and produces no event; unknown is not proof of no integration. invalid_input produces no event. - Standard Actor platform usage included under the configuration checked on 8 Oct 2026; recheck before purchase. - Caps are not discounts and do not guarantee a positive result. Unknown/invalid checks produce no eligible report event; caller model/workflow costs are separate. ### Statuses | Status | Meaning | Eligible report event | |---|---|---| | `verified_integration` | Official linked documentation explicitly identifies the requested integration. A working connection was not tested. | yes | | `unknown` | Documentation missing, ambiguous, negated or blocked. Not proof of no integration. | no | | `invalid_input` | Fix the caller input (integration_name is required, at most 80 characters). | no | ### Evidence and limits - Verification scope: Official linked documentation explicitly identifies the requested integration. - Coverage limits: Documentation does not establish a working connection, authentication, plan entitlement or current endpoint behavior. - Request bounds: 8 requests, 7 MB total, 3 MB per page, 35-second network budget. ### Recorded example Recorded example — observed 2026-10-08 11:47 UTC · owner-funded release test · not an independent purchase. Subject: Linear + GitHub. Run `uvTsKHhC3kz3nT9qd`, build 0.2.4. Reports may precede final event charging; their billing fields alone do not establish a settled debit. Full report with provenance: https://agents.retainly.dev/examples/integration-evidence.json Input used: ```json { "company_website": "https://linear.app/", "integration_name": "GitHub" } ``` ### Call it (after the caller authorizes spending) Connecting does not authorize spending. Inspecting metadata never starts a run. Inspect without purchase (MCP, anonymous endpoint `https://mcp.apify.com?tools=search-actors,fetch-actor-details`): ```json { "name": "fetch-actor-details", "arguments": { "actor": "impressionable_lupine/verified-integration-evidence", "output": { "pricing": true, "inputSchema": true, "outputSchema": true, "metadata": true, "readme": true } } } ``` Inspect without purchase (REST, no token): ```bash # Free, read-only: public Actor metadata (pricing, builds). Does not start a run. curl "https://api.apify.com/v2/acts/VNySEt559gcOuwjE9" ``` MCP `call-actor` (endpoint `https://mcp.apify.com?tools=actors,runs,storage`; run limits live in `callOptions`, never in `input`): ```json { "name": "call-actor", "arguments": { "actor": "impressionable_lupine/verified-integration-evidence", "input": { "company_website": "https://linear.app/", "integration_name": "GitHub" }, "waitSecs": 30, "callOptions": { "build": "0.2.4", "memory": 512, "timeout": 60, "maxTotalChargeUsd": 0.02 } } } ``` MCP follow-ups (same run): ```json { "name": "get-actor-run", "arguments": { "runId": "" } } ``` ```json { "name": "get-dataset-items", "arguments": { "datasetId": "", "clean": true } } ``` REST API v2: ```bash # Paid run in YOUR Apify account. Only after spending is authorized. # Set APIFY_TOKEN securely in your client/shell; never paste it into URLs or shared files. curl -X POST "https://api.apify.com/v2/acts/VNySEt559gcOuwjE9/runs?build=0.2.4&memory=512&timeout=60&maxTotalChargeUsd=0.02&waitForFinish=30" \ -H "Authorization: Bearer $APIFY_TOKEN" \ -H "Content-Type: application/json" \ -d '{"company_website":"https://linear.app/","integration_name":"GitHub"}' ``` ```bash # Save data.id (run ID) from the first response. On timeout/ambiguity, poll THIS run. # Never start a second charged run to recover output. curl "https://api.apify.com/v2/actor-runs/$RUN_ID" \ -H "Authorization: Bearer $APIFY_TOKEN" ``` ```bash # data.defaultDatasetId from the run object (one report item). curl "https://api.apify.com/v2/datasets/$DATASET_ID/items?format=json&clean=true" \ -H "Authorization: Bearer $APIFY_TOKEN" ``` Recovery rule: Save the run ID from the first response; on timeout or ambiguous response, poll that same run; never start a second charged run to recover output. Generated from the site catalog. Example observation times are UTC; e.g. Hiring example observed 2026-10-08 11:43 UTC.