FAQs

Flow Fundamentals

What is a flow, and why do I need it?​
  • In the Fastn platform, flows are sequences of steps that perform an end-to-end operations like inserting data into a database or retrieving a list of products from a Shopify store.

  • Users can build flows to create APIs that give a synchronous real-time response or workflows that are executed as asynchronous jobs.

  • Using a range of available actions such as connectors, loops, switches, custom code, and more, users can tailor flows for their unique applications.

How do I run a Flow?
  • After a flow is created it can be run using the available Debugger which allows users to test the DRAFT version of the flow, see the output and debug any issues.

  • To run the Debugger, users can click on the Run Debugger button on the top right of the canvas page.

  • Once flows are tested and finalized, they can be deployed as the LIVE version. Users can use the Embed this Flow feature on the canvas page to generate code or curl commands that trigger the flow externally either as part of user applications or through API tools such as Postman.

  • API keys can be generated with desired permissions to authenticate access to selective flows.

  • Executed flows can be monitored in the Logs page which can be accessed using the navigation menu.

How do I debug a flow that is returning an error?
  • A flow can be tested at any stage during its creation using the Debugger.

  • To run the Debugger, users can click on the Run Debugger button on the top right of the canvas page.

  • The Debugger allows users to view the end result of a flow as well as any error messages that may have been thrown in the execution of the flow.

  • The step which threw the error is highlighted with a red border in the canvas page.

  • The Debug view in the Debugger can offer more insight by showing users the output of each step used in the flow.

  • When staged versions of flows are triggered externally using an API request, their logs and metrics are available in the Logs page.

  • For each flow, the executed steps are highlighted along with any steps that threw an error.

  • Using information gathered from these various means users can pinpoint the source of the error.

How do I integrate a flow into my application?
  • Once flows are tested and finalized, they can be deployed as the LIVE version. Users can then use the Embed this Flow feature on the canvas page to generate code or curl commands that trigger the flow externally.

  • The Generate API Key option can be used generate a new API key that is passed in the request headers to authenticate access to flows.

  • The generated code in the Embed This Flow dialog box can then be copied into a user application in the desired format.

Data Volume and Pagination

How does pagination help with large data syncs, and what should I do if sync jobs time out or fail?

Pagination divides large datasets into smaller chunks (or "pages") to prevent timeouts and API limits by retrieving a limited number of records at a time, commonly done in APIs like OData using URL parameters to limit and skip records. If large sync jobs time out or fail mid-way, use pagination to pull data in smaller batches, store it in the Fastn database, and then push it to the target system using a second flow. This improves reliability and avoids processing overload.

How can I retry or resume a sync from where it failed?

You can add a field such as lastSyncedInBigCommerce to help the process identify which records have already been synchronized and where to resume from. Another option is to store a state in the database that the flow can check the next time it runs to continue from the last record that was not synced.

Tenant Configuration & Dynamic Credentials

How does Fastn handle tenant-based configuration and credentials?

When a user activates a connector (e.g. Stripe) via a Fastn widget or iframe, their credentials are securely stored against their tenant ID. Flows using Dynamic connection mode can automatically fetch these credentials when the x-fastn-space-tenantid header is passed, no need to manually re-enter API keys.

Can I reuse previously created actions like stripeInvoiceActivation in a new flow?

Yes, as long as the connector is set to use Dynamic mode and the tenant ID is passed, previous actions can be reused without additional setup.

Webhooks, Dependencies & Flow Behavior

Does Fastn generate a webhook URL for me, or do I need to host it externally?

Fastn can auto-generate a webhook URL via the Triggers menu. You can attach a flow to it or use the createWebhookWithRoutes connector to dynamically register a webhook during activation.

Can I deactivate both primary and secondary dependencies at once?

Currently, only the primary dependency is deactivated. Fastn is releasing support to deactivate all linked dependencies together, this feature will roll out soon.

How should I define event types when configuring a webhook?

Event types should be passed as an array (e.g., ["event.created", "event.failed"]). To simplify input, click "Show Advanced" in the connector interface to access a structured JSON editor.

Do I still need to configure credentials if the user already connected their account?

You don’t i.e., if the connector uses Dynamic mode and the tenant ID is provided, Fastn automatically retrieves and applies the correct stored credentials during the flow run.

Design and Best Practices

How should I filter records in API-based connectors?

Most connectors support filtering via query parameters. When filtering by fields like email, ensure values are properly URL-encoded, this includes support for plus-addresses (e.g. [email protected]).

How can I design flows for large and reliable data syncs?

Split the sync into two flows:

  • Ingestion Flow: Fetch data and store it in the Fastn database.

  • Publishing Flow: Push stored records to the destination in smaller batches. This reduces API pressure, improves reliability, and allows for easier retries and monitoring.

What are best practices for creating unique keys or identifiers?

Use expression steps or custom code to concatenate multiple fields and generate composite keys (e.g. price_key = product_id + "_" + region). This helps with deduplication and mapping in downstream systems.

How can I verify that all records were processed successfully?

Log synced record IDs or counts to the Fastn database to track actual progress and catch any missed or partial data, even if the flow logs report success. Additionally, you can add a Success Response flow component at the end of your flow to return a confirmation payload, record count, or custom output, ensuring the flow ran as expected.

What date format should I use in filters or payloads?

Use ISO 8601 format (yyyy-mm-dd). If your source data is in another format (e.g. Unix timestamp), use Fastn’s built-in transformations to convert it before syncing.

Last updated

Was this helpful?