Daily Data Stream Developer Portal
The Daily Data Stream (DDS) allows you to keep track of Meevo data externally, usually for consumption into a third-party system or data warehouse. The DDS service captures all records that were changed within the past 7 days and delivers the data in JSON format upon request.
The Daily Data Stream:
- Provides data at the location level; the DDS cannot be used with Central Office
- Uses REST APIs
- Uses standard HTTP authentication and verbs
- Returns all responses in JSON
Supported Entities
You can request updated records through the DDS for the following Meevo entities:
- Clients
- Employees
- Appointments
- Sales
- Employee Schedules and Actuals (entities available upon request)
General DDS Workflow
- When you first sign up to use the DDS, MSI provides "starting point data" in the form of Starter Export files. These location-specific files contain the following historical and future data:
- Appointment Entity: All past and future appointments
- Sale Entity: All sales and transactional data
- Client and Employee Entities: All profiles regardless of status (active, inactive, deleted)
- Employee Schedules/Actuals Entities: All past and future schedule data and all past actual data
- You will retrieve the location's Starter Export data from the SFTP and import that data into your system. This is your starting point, or baseline data.
- From then on, you can keep that data up-to-date and synced with Meevo by calling the DDS "changes" endpoints and replacing your records with the records returned by the DDS.
Tip: See the DDS Workflow Overview for more, including authorization details.
The Meevo DDS Test Bed
When you first sign up for our Public API or DDS solutions, we provide access to a test bed where you can become familiar with the endpoints. The test bed is a working Meevo environment that comes with staged data. If you are developing an app, you can develop and test the app against this environment.
To simulate the types of Meevo data changes that might occur within a business, you can log into the front-end of this Meevo environment and manipulate the data however you'd like.
Please note:
- To stage changes in Meevo, you will likely need to log into the test bed front-end to make changes to data manually. For example, you can make a sale in the Meevo register and then call the DDS Sale endpoint to see that sale record returned, or create a client profile to see that profile returned by the DDS Client endpoint.
- This environment is shared with other integrators. It is not meant for you to enter real data that may contain personally identifiable information.
- Your Test Bed credentials will expire after 90 days if your app is not live in Production by then. Once your app is live in Production, you will be granted continued access to the Test Bed to allow for additional testing going forward.
Test Bed URL
https://d18devpub.meevodev.com
Marketplace Test Bed URL
https://d18devmarketplace.meevodev.com
Frequently Asked Questions
Is DDS data real-time?
Updated records are available via DDS within about five minutes of the change taking place.
Can I write data to Meevo using the DDS?
No; the DDS is a one-way stream of data and does not offer the ability to change data within Meevo. To change data in Meevo, you'll need access to our Public APIs.
How does the Daily Data Stream work with multi-locations?
The DDS provides location-level data only; calls are made directly to locations, never to Central Office (CO). This allows you to minimize cost by enabling the DDS on a per-location basis.
If data is location-specific, why do I see the same GUIDs across locations?
Most data in Meevo can be created and managed by CO or by a location. This is an important distinction:
- CO-managed data can be seen in Meevo by any location that has been granted permission from CO. These GUIDs will be common across locations.
- Location-managed data is unique to that location and not visible to any other locations. These GUIDs are location-specific and will not appear in other locations.
How often should I call the "Changes" endpoints?
You can go back as far as seven days when calling the "Changes" endpoint, but we recommend calling it daily to keep parity with Meevo.
It is critical that you retrieve the deltas at least every seven days, if not daily or multiple times per day, to avoid a loss of data. If there is a lapse of data (that is, you do not call the "Changes" endpoint within 7 days of your previous call), you will require a data back-fill and will be subject to another data initiation fee.
What information is being returned by the DDS "Changes" endpoints?
All successful responses are in JSON and contain the complete data set of the updated record. Responses do not indicate which fields within a record have changed.
For example, if a client had one of their three phone numbers deleted from their profile, then the client's full profile data (including the two remaining phone numbers) would appear in the response.
Is there a best practice for how to import this data into my system?
Yes! Since the DDS is designed to provide the full data set of the record that was updated, you must perform a REPLACE of the existing record in your system.
Why does it seem like some records are missing in the DDS response?
In cases where the DDS is returning a large number of records, you will need to paginate results, adjust the ItemsPerPage, or both. You can adjust the ItemsPerPage to a maximum of 200 (the default is 50 records per page).