This guide explains how to push updates from Streak to Mapsly and back from Mapsly to Streak using Zapier & API.

Prepare your data using Google Sheets

In order to set up integration between Streak and Mapsly you need to prepare a Google Sheet that will contain data for a one-time import. For this example we will use a simple Sales database that will contain the following fields: id, Name, and Address:

Then, create a new Google Sheet, create the corresponding columns and import your data to your Google Sheet:

Keep in mind, that the id field has to be stored in column A. If you want to configure different field types, please use this Google Sheets configuration guide.

Then, connect your Google Sheets to Mapsly as described in this guide.

After you import your sheet you can disable the sync between Google Sheets and Mapsly since it is no longer needed:

Generate API key

Generate an API key to your newly created data source by following this guide.

Send data from Streak to Mapsly

There are 2 ways to synchronize your data from Streak to Mapsly: via Zapier and via API (webhooks). Below we will explore both options.

Using Zapier

1- Log into your Zapier account, press Make a Zap:

2- Search for "Streak" app and create a new Zap with trigger "New Box":

3- Connect your Streak account to Zapier:

In order to connect, you need to get your Streak API key. You can get it in the Integrations:

4- Set up trigger:

5- Select Mapsly as your Action app:

6- Choose "Create/Update Record" event for Mapsly:

7- Connect your Mapsly account:

In the pop-up window that will open, enter the Mapsly API key you generated earlier:

8- Add every field that you would like to synchronize and pick corresponding Streak fields:

9- Test and Publish Zap:

You can send a test request inside Zapier and then Publish Zap. After that, you can go to Streak and create/update a record and check if it was successfully saved to Mapsly.

Your zaps will be executed immediately on any newly created item in Streak:

Now you need to create a similar zap for the "Updated Box" trigger. The configuration is exactly the same as for the above zap.

Send data from Mapsly to Streak

To send data from Mapsly back to Streak you need to create a workflow with the trigger "Updated" and then add "Invoke URL" action:

In the Invoke URL action you need to add the following target URL:

https://www.streak.com/api/v2/pipelines/{{pipelineKey}}/boxes

where you need to add your pipeline key. Then, you need to choose Method: POST, Content Type: JSON and add Authorization with the key in base64 which you can get by going to:

https://streak.readme.io/reference/create-a-box

and paste your API key into the username section, while leaving the password empty.

If you want to know the API names of all fields in a pipeline, you can follow the instructions here:

https://streak.readme.io/reference/list-all-fields-in-a-pipeline

Once you know the field names, you can add the body, for example:

{
"name": "{{ record.Name }}",
"fields": {
"1007": "{{ record.Address }}"
}
}

To create "Update box" workflow, you can again, create a workflow on "Updated" trigger and then add an Invoke URL action with the target URL:

https://www.streak.com/api/v1/boxes/{boxKey}

while the body can be the same:

{
"name": "{{ record.Name }}",
"fields": {
"1007": "{{ record.Address }}"
}
}

Implementation is included in your Mapsly subscription!

Your Mapsly subscription comes with implementation services, so we're inviting you to book a web call with our engineer today - to learn more about your use scenario and help you integrate Mapsly with your system. You may also ask us for help in chat any time 24/7.

Did this answer your question?