Integration with the WayMore API

This documentation provides details for creating integration with Routee-Waymore platform.

The intention of the integration is:
a) To move the existent data held in the database from your website to Routee Platform.
b) Expose custom hook events, that are performed inside your website, to Routee Platform, so that a website owner can use Routee Platform to configure his communication automation workflows.

Business Process

a) The website (admin) owner will be requested to enter his Routee username and password.
*If the website owner does not have a Routee username and password, a link needs to be displayed for him to create a new account in Routee Platform.

b) In the website, the owner enters his Routee username and password in a form to register his website to Routee-Waymore.
-https://waymore.routee.net/api/authenticate
Once registration is successful, the endpoint will reply back a UUID string that will be used as required authenticate field for all the API endpoints described below.
(Note: The UUID must be stored for future use. The UUID does not expire)

c) The website needs to transfer all the historical data (data from the database) of the site, to Routee Platform using Mass-data API.
https://idata.routee.net/api/data

d) The website needs to transfer all the real-time events (i.e. when a new user is registered) to Routee Platform using Event data API.
https://idata.routee.net/api/event

e) The website owners, logs in to Routee platform (using the username and password he used when registering the site) where he can see all the data retrieved from his website and configures his own communication workflows from within Routee Platform.
i.e. send an SMS to all customers that added the product X in their basket 3days ago, but did not complete the checkout.
i.e. send a welcome all to a user when he creates an account
etc.

Automation Requirements

In order for a website owner to be able to create the automation he wants in the Routee-Waymore platform, the platform needs to have sufficient data from the owner’s website.

For example, if the owner wants to send SMS messages to all users but in the data, for the users that were sent to Routee-Waymore platform, there is no phone number then the automation cannot be implemented.

To send data to the Routee-Waymore platform you will have to make some custom events on the website side, which will send data whenever triggered. Once a custom event is created you will need to send an email to Routee specifying the details of that event so that Routee can manage it properly.

Email example:

Send To: events@amdtelecom.net
Subject: New Custom Event
Message:

My Website: https://example.com

Event description: This is an event that is triggered when a new user is registered in our site

Event name: UserRegister

Event data: {

“id”: 1,

“firstname”: “John”,

“lastname”: “Doe”,

“phone”: “1234567890”,

“birthday”: “01/01/2000”,

“email”: “john_doe@email.com”

}

Development Integration Requirements

In order to integrate with the Routee-WayMore platform, you have to consume our API. To consume our API you have to be authenticated (register your site).

To be authenticated you have to make an HTTP request and pass the following data:

“Username” and “Password” from https://go.routee.net

*if you don’t have an account you can register here:
https://go.routee.net/#/public/register

Source, the name of your software/site: e.g. WordPress, Joomla, Infor, Deltek etc.

The type of your software: e.g. CMS, ERP, E-COMMERCE etc

• The version of your software. e.g. 1.0.0

• The domain: Full URL of the website.

The authentication on success will return a UUID string which will be used to consume the WayMore API.

Authentication API

POST | https://waymore.routee.net/api/authenticate

{

username“:"routeeUsername",

password“:"routeePassword",

source“:”SoftwareName",

type”: “SoftareType”,

version“:"SoftwareVersion"

domain“:"WebsiteURL",

}

Body Params

Key Description
username

string

Required

Routee Username

password

string

Required

Routee Password

source

string

Required

software name

e.g. WordPress, Magento, Opencart etc

type

string

Required

Software type

e.g. cms, erp etc

version

string

Required

Software version

e.g. 1.0.0

domain

string

Required

Website URL

e.g. https://www.example.com/e-com


Headers

Content-Type

string

Required

application/json


Response

{

  “message":"Authorization succeeded",

  “uuid”:”8e109ec3-a69b-40fb-a648-dab158616318”

}

Response Params

Key Description
message The description of the request that was made (Succeed/Error)
UUID The UUID that will be used to make all the HTTP request to the Routee-WayMore platform

Status Codes

Status Message
200 Authorization Succeeded
401 You are unauthorized. Invalid username or password
400 Validation Error.
A required field is missing.
Invalid value of a field.

• After you get the UUID you can start sending data and your website events to the WayMore platform.

• First, you need to send historic data from the website’s database. The more data is sent the more automations the owner can implement.

Mass data API

POSThttps://idata.routee.net/api/data

{

  “data":[

    {

        “name”: “nameOfData”,

        “description”:”short description of the data”,

        “object”: {}

    }, …

    {…}

  ],

  “uuid":"462f0515-ea30-422b-95a4-dc2d704a07c7"

}

Body Params

Key Description
data*

object

Required

Array of objects with data from DB

uuid

string

Required

e-commerce application uuid

*data must contain objects with the following structure:
name

string

Name of the data e.g. customers, products
description

string

A short description of what kind of data is sent in the object
object

array of objects

Data from tDB db

Headers

Content-Type

string

Required

application/json

After you have sent the mass data you can enable the events to send data.

Event data API

POSThttps://idata.routee.net/api/event

{

  “data":{},

  “uuid":"462f0515-ea30-422b-95a4-dc2d704a07c7",

  “event":"nameOfEvent",

}

Body Params

Key Description
data

object

Required

Object with data from event

uuid

string

Required

authorization UUID

event

string

Required

event name

Headers

Content-Type

string

Required

application/json

Example of custom events implemented by other websites

On new user (register)

{"event":"CustomerAdd","uuid":"8e109ec3-a69b-40fb-a648-dab158616318","data":{"customer":{"id":"1061","lastname":"Doe","firstname":"john","birthday":"01/01/2000","email":"john.doe@mail.com","phone":"0123456789"},"addresses":[{"country":"United States of America","city":"New York","address1":"","postcode":"534231","company":""}]}}

*Note: any extra data you can add is welcomed.

On user update (important email and mobile)

{"event":"CustomerUpdate","uuid":"8e109ec3-a69b-40fb-a648-dab158616318","data":{"customer":{"id":"1061","lastname":"Doe","firstname":"john","birthday":"01/01/2000","email":"john.doe@mail.com","phone":"0123456789"},"addresses":[{"country":"United States of America","city":"New York","address1":"","postcode":"534231","company":""}]}}

On new order placed

{"event":"OrderAdd","uuid":"8e109ec3-a69b-40fb-a648-dab158616318","data":{"customer_id":"1061","order_details":{"order_id":"123","order_status":"pending validation","shipping_method":"carrier","payment_method":"credit card","total_price":"150"},"order_products":[{"product_id":"1","quantity":"1"},{"product_id":"45","quantity":"2"},{"product_id":"778","quantity":"1"}]}}

*Note: any extra data you can add is welcomed.

On order status change

{"event":"OrderStatusUpdate","uuid":"8e109ec3-a69b-40fb-a648-dab158616318","data":{"customer_id":"1061","order_id":"123","order_status":"pending validation"}}

On order payment confirmed

{"event":"OrderPaymentConfirmed","uuid":"8e109ec3-a69b-40fb-a648-dab158616318","data":{"customer_id":"1061","order_id":"123"}}

On new product (visible inside store)

{"event":"ProductAdd","uuid":"8e109ec3-a69b-40fb-a648-dab158616318","data":{"product_id":"778","name":"TestProduct","description":"This is a test product","short_description":"Test product","categories":["TestCategory","TestCategory2"],"stock_quantity":100,"price":45,"discount":{"price":40,"date_start":"06/12/2018","date_end":"10/12/2018","quantity":5},"image_link":"https://www.example.com/e-com/testproduct.jpg","product_link":"https://www.example.com/e-com/testproduct"}}

*Note: any extra data you can add is welcomed.

On product update

{"event":"ProductUpdate","uuid":"8e109ec3-a69b-40fb-a648-dab158616318","data":{"product_id":"778","name":"TestProduct","categories":["TestCategory","TestCategory2"],"description":"This is a test product","short_description":"Test product","stock_quantity":100,"price":45,"discount":{"price":40,"date_start":"06/12/2018","date_end":"10/12/2018","quantity":5},"image_link":"https://www.example.com/e-com/testproduct.jpg","product_link":"https://www.example.com/e-com/testproduct"}}

On product is out of stock

{"event":"ProductOutOfStock","uuid":"8e109ec3-a69b-40fb-a648-dab158616318","data":{"product_id":"778"}}

On product sold / stock quantity changed

{"event":"ProductStockUpdate","uuid":"8e109ec3-a69b-40fb-a648-dab158616318","data":{"product_id":"778","stock_quantity":99}}

On product added to wishlist

{"event":"WishlistAdd","uuid":"8e109ec3-a69b-40fb-a648-dab158616318","data":{"product_id":"778","customer_id":"1061"}}

On product removed from wishlist

{"event":"WishlistDelete","uuid":"8e109ec3-a69b-40fb-a648-dab158616318","data":{"product_id":"778","customer_id":"1061"}}

On cart update (add/remove from cart, cart checked out)

{"event":"CartUpdate","uuid":"8e109ec3-a69b-40fb-a648-dab158616318","data":{"customer_id":"1061","cart_products":[{"product_id":"778","quantity":"1"}]}}

For empty cart send this:

{"event":"CartUpdate","uuid":"8e109ec3-a69b-40fb-a648-dab158616318","data":{"customer_id":"1061","cart_products":[]}}

On newsletter subscription

{"event":"Newsletter","uuid":"8e109ec3-a69b-40fb-a648-dab158616318","data":{"customer_id":"1061","email":"john.doe@mail.com","subscription":true}}

On search (user search for a product)

{"event":"Search","uuid":"8e109ec3-a69b-40fb-a648-dab158616318","data":{"customer_id":"","search_string":"blue car"}}

*Note: any extra data you can add is welcomed.

On uninstall (when the plugin is uninstalled)

{"event":"Uninstall","uuid":"8e109ec3-a69b-40fb-a648-dab158616318","data":{}}

Any other custom event you can add is welcomed

{"event":"EventName","uuid":"8e109ec3-a69b-40fb-a648-dab158616318","data":{"event data":"data"}}

Examples of Mass data

Multiple different data

{"uuid":"8e109ec3-a69b-40fb-a648-dab158616318","data":[{"name":"products","description":"shop products","object":[{"product_id":"778","name":"TestProduct","description":"This is a test product","short_description":"short desc","categories":["TestCategory","TestCategory2"],"stock_quantity":100,"price":45,"discount":{"price":40,"date_start":"06/12/2018","date_end":"10/12/2018","quantity":5},"image_link":"https://www.example.com/e-com/testproduct.jpg","product_link":"https://www.example.com/e-com/testproduct"},{"AnotherProduct":"data"}]},{"name":"customers","description":"shop customers","object":[{"customer":{"id":"1","lastname":"Doe","firstname":"john","birthday":"01/01/2000","email":"john.doe@mail.com","phone":"0123456789"},"addresses":[{"country":"United States of America","city":"New York","address1":"","postcode":"534231","company":""}],"cart":{}},{"customer":{"id":"2","lastname":"Doe","firstname":"john","birthday":"01/01/2000","email":"john.doe@mail.com","phone":"0123456789"},"addresses":[{"country":"United States of America","city":"New York","address1":"","postcode":"534231","company":""}],"cart":{"cart_products":[{"product_id":"778","quantity":"1"}]}},{"AnotherCustomer":"data"}]},{"name":"orders","description":"shop orders","object":[{"order_details":{"customer_id":"33","order_id":"123","order_status":"pending validation","shipping_method":"carrier","payment_method":"credit card","total_price":"150"},"order_products":[{"product_id":"1","quantity":"1"}]},{"AnotherOrder":"data"}]},{"Other Data":"data"}]}

Multiple same data

{"uuid":"8e109ec3-a69b-40fb-a648-dab158616318","data":[{"name":"products","description":"shop products","object":[{"product_id":"778","name":"TestProduct","description":"This is a test product","short_description":"short desc","categories":["TestCategory","TestCategory2"],"stock_quantity":100,"price":45,"discount":{"price":40,"date_start":"06/12/2018","date_end":"10/12/2018","quantity":5},"image_link":"https://www.example.com/e-com/testproduct.jpg","product_link":"https://www.example.com/e-com/testproduct"},{"product_id":"779","name":"TestProduct2","description":"This is a test product","short_description":"short desc","categories":["TestCategory","TestCategory2"],"stock_quantity":120,"price":450,"discount":{"price":400,"date_start":"","date_end":"","quantity":null},"image_link":"https://www.example.com/e-com/testproduct2.jpg","product_link":"https://www.example.com/e-com/testproduct2"},{"AnotherProduct":"data"}]}]}

Single data

{"uuid":"8e109ec3-a69b-40fb-a648-dab158616318","data":[{"name":"customers","description":"shop customers","object":[{"customer":{"id":"1","lastname":"Doe","firstname":"john","birthday":"01/01/2000","email":"john.doe@mail.com","phone":"0123456789"},"addresses":[{"country":"United States of America","city":"New York","address1":"","postcode":"534231","company":""}],"cart":{}}]}]}

Pricing Policy

Integrate Marketing Automation in your Business

FREE VERSION

FREE
  • Upload Customer Base
  • Automatic Personalization
  • Send Manual Campaigns

WAYMORE

60€
  • All FREE version features
  • 10 predefined automation flows
  • Automatic Campaign Sending

WAYMORE+

80€+/ mon
  • Drag and drop flows
  • Build your own automations
  • Create communication funnels