Toggle Side Panel
Cyclr Community
  • Forums
  • Tutorials
  • Documentation
        • User Documentation >>
          • Introduction to Cyclr
          • API Guides
          • How to use Connectors
          • Navigating the Cyclr ConsoleLearn all about your Cyclr Console and configuration
          • Embedding Cyclr in your SaaS
          • Scripting
        • View More...
        • Connector Guides >>
          • Salesforce
          • Microsoft
          • GitHub
          • HubSpot
          • Oracle NetSuite
          • Stripe
        • View More...
  • Resources
    • New Features
    • Cypher
    • DevOps Services
    • Changelog
    • Support Portal
    • Referral Program
    • Blog
    • News Archive
More options
    Sign in
    Cyclr Logo
    Cyclr Logo
    • Forums
    • Tutorials
    • Documentation
          • User Documentation >>
            • Introduction to Cyclr
            • API Guides
            • How to use Connectors
            • Navigating the Cyclr ConsoleLearn all about your Cyclr Console and configuration
            • Embedding Cyclr in your SaaS
            • Scripting
          • View More...
          • Connector Guides >>
            • Salesforce
            • Microsoft
            • GitHub
            • HubSpot
            • Oracle NetSuite
            • Stripe
          • View More...
    • Resources
      • New Features
      • Cypher
      • DevOps Services
      • Changelog
      • Support Portal
      • Referral Program
      • Blog
      • News Archive
    Close search
    Home » User Documentation » Templates » Pass data between two steps

    About Cyclr

    6
    • Introduction to Cyclr
    • Minimum requirements
    • Glossary
    • Errors
    • IP Allow List
    • Legal notices

    Cyclr Console

    14
    • Partner Console Dashboard
    • The Builder
    • Reports
    • Console Configuration
    • General Settings
    • Notifications
    • Embedding Customization
    • Security settings
    • Data retention settings
    • Custom Service Domains
    • Handle transaction errors
    • Payload Size Limitations
    • Performance tips
    • GitHub Integration

    Connectors

    36
    • Introduction to Connectors
    • Connector Installation Overview
    • Connector Settings
    • Handling Connector Releases
    • Connectivity Comparison
    • Connector Guides
    • Application Connectors
      • Introduction to Application Connectors
    • Utility Connectors
      • Introduction to Utility Connectors
      • Counter Storage
      • Cross Updating Preventer
      • Data Tools
      • Entity Cross Ref Storage
      • Generic File
      • Generic File Downloader
      • Generic Form
      • Generic Webhook
      • Data Storage
        • Introduction to Data Storage
        • Global Data Storage
        • Global Object Storage
        • Cycle Data Storage
        • Cycle Object Storage
    • Custom Connectors
      • Introduction to Custom Connectors
      • Methods
      • Triggers
      • Last Successful Run Date
      • Parameters
      • Scripting
      • Data Types
      • Paging
      • Custom Objects
      • Dynamic Custom Fields
      • Automatically Install Webhooks
      • Connector Standards
      • Settings
      • Custom Connector Authentication
      • Rate Limits

    Templates

    17
    • Introduction to Templates
    • Template Settings
    • Create a Template
    • Tools
    • Connectivity Tools
    • Field Mappings
    • Add Custom Fields
    • Custom Object Method Categories
    • Test Scripts
    • Collection splitting
    • Pass data between two steps
    • Test a template
    • Template versioning
    • Introduction to Cycles
    • Stop a cycle
    • Copy Cycles as Templates
    • Import or Export Templates

    Accounts

    5
    • Introduction to Accounts
    • Account Users
    • Sub Accounts
    • Connector Authentication Link
    • Export or Import Cycles

    Embedding

    17
    • Introduction to Embedding
    • ORBIT
    • Installing a Partner Connector
    • Embed Cyclr in an iFrame
    • LAUNCH
      • Introduction to LAUNCH
      • User Experience
      • Customize Appearance
      • Build Compatible Templates
      • Handle LAUNCH callbacks
      • Deploy LAUNCH
    • Marketplace
      • Introduction to Marketplace
      • Set up a Marketplace
      • Styling Marketplace
      • Deploying a Marketplace
      • Marketplace Callback
      • Marketplace Webhook Callback
      • Marketplace Settings

    API

    19
    • Introduction to the Cyclr API
    • Authentication
    • Authorize Account API calls
    • Install Connectors into an Account
    • Install a Cycle from a Template
    • Step Setup
    • Activate a Cycle
    • Install Connectors
    • Create an Account
    • API Example Walkthrough
    • Connector Authentication
      • Introduction to Connector Authentication
      • API Key Authentication
      • HTTP Basic Authentication
      • OAuth Authentication
    • Data on Demand
      • Introduction to Data on Demand
      • Get Account Connectors
      • Get Connector Methods
      • Call a Connector Method
      • IP Restriction

    Deep Data Ingestion

    3
    • Vector Databases Introduction
    • Preparing and Ingesting Data into Vector Databases
    • Querying & Retrieving Data from Vector Databases

    Real-Time Actions

    6
    • Generic Webhook
    • Introduction to Data on Demand
    • Get Account Connectors
    • Get Connector Methods
    • Call a Connector Method
    • IP Restriction

    Release Notes

    33
    • Introduction to Release Notes
    • 2025
      • 2025-11
      • 2025-10
      • 2025-09
      • 2025-08
      • 2025-07
      • 2025-06
      • 2025-05
      • 2025-04
      • 2025-03
      • 2025-02
      • 2025-01
    • 2024
      • 2024-12
      • 2024-11
      • 2024-10
      • 2024-09
      • 2024-08
      • 2024-07
      • 2024-06
      • 2024-05
      • 2024-04
      • 2024-03
      • 2024-02
      • 2024-01
    • 2023
      • 2023-12
      • 2023-11
      • 2023-10
      • 2023-06
      • 2023-05
      • 2023-04
    • Archive
      • Archive
      • 2022
      • 2021
    View Categories
    • Home
    • Documentation
    • Templates
    • Pass data between two steps

    Pass data between two steps

    1 min read

    Usually you would just use mappings on a Step to pass data from previous Steps to it as described in Field Mapping.

    If you need to access information from a previous step to use within Script and don’t actually want to include it within the API call that Step will make, one option is to pass it using a standard Field Mapping, and then remove it from the call before it’s made.

    Passing a single value #

    Passing a single value to make it accessible in Script can be as simple as mapping it to an available field which you’re not already using.

    Let’s say you want to access a Contact ID from Step A, in script in Step B. In Step B, you might have a field that’s not required for your particular integration, such as a “Description” field you could map that to:

    Then in Script on Step B, you can use a before_action event handler function to remove it from the Request (so it’s not actually included in what Cyclr sends to an external system) and perform whatever action you needed:

    function before_action(){
    	var contact_id = method_request.description;
    	delete method_request.description;
    
    	// Do something with contact_id.
    
    	return true;
    }
    

    If there isn’t an appropriate field, you may be able to add a Custom Field for that, as described here: Add custom fields.

    You will likely still want to delete the field from the method_request object after you use it, as above.

    Passing multiple values #

    If you have more information to pass between Steps, it may make sense to add multiple custom fields. If there are a lot of fields however (an array perhaps), you have another option – passing all the values as a single, long string.

    Part 1 – Stringify the values in Step A #

    In the response from Step A, you’ll need to stringify the value(s) you need and add this to the response.

    function after_action_paging(){
    	method_response.string_of_fields = JSON.stringify(method_response.array_to_shrink);
    	return true;
    }
    

    You will need to add a custom field to the response of Step A to hold this string. In the example above, the field location of this custom field would be string_of_fields.

    Part 2 – Parse the values in Step B script #

    First, map the value to a field in Step B. As above, you may need to create a field to temporarily hold this value (in the example below, the field is named string_from_step_A)

    You’ll then need to JSON.parse the string in script:

    function before_action(){
    	var values_from_step_A = JSON.parse(method_request.string_from_step_A);
    	delete method_request.string_from_step_A;
    
    	// Access values_from_step_A as if it were a JSON array again.
    
    	return true;
    }

    What are your Feelings

    • Happy
    • Normal
    • Sad

    Share This Article :

    • Facebook
    • X
    • LinkedIn
    • Pinterest
    Collection splittingTest a template
    Page Contents
    • Passing a single value
    • Passing multiple values
      • Part 1 - Stringify the values in Step A
      • Part 2 - Parse the values in Step B script

    Company

    • Company
    • About Us
    • Security and Compliance
    • Pricing
    • Blog
    • Branding
    • Embedded iPaaS
    • Release Notes

    Legal

    • Website Terms
    • Privacy Policy
    • Terms and Conditions
    • Data Protection Agreement
    • SLA
    • GDPR

    UK Office

    +44 (0) 3300 102 525

    US Office

    +1 (646) 585-2525

    Cyclr Logo

    White labelled API integration framework for creating & managing in-app SaaS integrations.

    © 2025 Cyclr. All rights reserved.