Leveraging off of the Mystreamtime cloud, the Streamtime Classic API allows Streamtime Classic subscribers to develop their own front end interfaces and tools to their Streamtime database.
Enabling the API
The API needs to be activated in Mystreamtime to generate an API key and shared secret.
To generate an API key you need to log into mystreamtime and enable the “Streamtime API” in the Addons manager.
You can follow the instructions outlined in this knowledge base article on setting up the Addons in Mystreamtime. Once you enter the IP Address/URL, File name and Domain URL and click ‘Change’, you can enable the Streamtime API and an API key and shared secret will be generated for you. You can then save an email address for notifications regarding your Streamtime API to be sent to. This should be your API developers email address.
XML or JSON requests are supported and passed via an HTTP request.
Each endpoint can be accessed via its own URL. All endpoints except Products (the cost matrix) support GET, PUT and POST. Products only supports GET.
Authentication and Request Signing
Authentication is via HTTP and relies on having the API Key and shared secret. No username or password is required. Only messages signed using HMAC-SHA1 signature algorithm [RFC2104] will be accepted by the Streamtime API. For more details see this example.
Streamtime Mobile, the Streamtime API and our other addons have SSL encryption between the client (for instance the web browser if using Streamtime Mobile) and the MyStreamtime cloud. The connection between mystreamtime.com and the client FIleMaker database however, is clear text. You can enable SSL to have this communication secured but this will require you purchasing an SSL certificate and will require a webmaster to assist configuring the DNS records and installing the certificates etc. For full security details on how to set this up click here.
We have developed an ‘API Previewer’ which can be accessed from within the Streamtime API settings area of http://mystreamtime.com Addons manager. The previewer allows a developer to interact with their Streamtime database and test GET, PUT and POST code. The previewer is interacting with the LIVE DATABASE and as such should only be used by an experienced developer. Click here for more specific details on the API Previewer.
In general terms the API allows you to GET, PUT or POST company and contact details including cost matrix tier, GET all cost matrix tier details, GET, PUT or POST quotes, invoices and orders, GET, PUT or POST basic job detail like job number, name, details and status, GET, PUT or POST Time Entries and GET Tasks.
We have some more detail on the API endpoints available here -
API Tips and Tricks
Sometimes when doing a GET you will receive an Error message saying 'An unknown error occurred'.
The most likely cause is an unrecognised 'new line' character, usually after a copy and paste from Microsoft Word or Excel. So if for instance if you had this error returned when doing a GET on a quote you would need to check for trailing spaces in the filemaker quote notes, header, footer or quote name fields etc and delete them. FileMaker is not handling special characters (they usually appear as trailing spaces) and so when it hits the API, the API can't provide a more specific error.
If you receive the following errors when doing a GET in any of the endpoints then you need to upgrade your Streamtime to access the latest API features. Email firstname.lastname@example.org to get started.
"Message": "Field is missing"