Integration Details

This page details how each integrations work.


Trakt - TV Minutes

If you choose to connect Exist Integrations to Trakt we will collect certain data in order to populate the TV Minutes attribute with Exist. This section will outline what steps are done on Exist Integrations to support the integration.

Note: If you have connected Time watching TV with Toggl Track you will not be able to connect the attribute to Trakt until it's removed from Toggl Track.

Integration: scheduled hourly at 5 minutes passed the hour

  • Identify users who are connected to Trakt and Exist Integrations own the TV Minutes attribute
  • Load History from Trakt *
    • Includes watch, checkin and scrobbles - see Trakt History API documentation
    • Depending on your configuration (Include Movies and/or Include Shows) pull the appropriate data from Trakt
    • For new users: load the history from (TODAY - 31 days) to (TODAY)
    • For existing users: load history from (MAX(history) - 3 days) to (TODAY)
    • Set any previously loaded history to inactive (needed to support deleting history from Trakt)
    • Process the history into the Exist Integration database
  • Find new movies and load the details from Trakt
  • Find new episodes and load the details from Trakt
  • Process TV Minutes for Exist
    • Aggregate the runtime and configuration setting into the TV Minutes by day
    • Compare the new runtime minutes to what was sent to Exist - flag differences to send to Exist
  • Send any differences to Exist

* If Exist Integrations receives a 401 Unauthorized message from Trakt when calling the Load History API for your user it indicates that the authorization has been revoked from the Trakt side. At that point we will disconnect the integration. You may re-connect in the future to have your data flow from Trakt to Exist again.


WhatPulse - Keystrokes

If you choose to connect Exist Integrations to WhatPulse we will collect certain data in order to populate the Keystrokes attribute with Exist. This section will outline what steps are done on Exist Integrations to support the integration.

Integration: scheduled hourly at 10 minutes passed the hour

  • Identify users who are connected to WhatPulse and Exist Integrations own the Keystrokes attribute
  • Load the user profile from WhatPulse
  • Proceed only if the Last Pulse sent to WhatPulse is after the last recorded pulse loaded to Exist Integrations
    • Load the pulses from WhatPulse
    • Process the pulses into the Exist Integrations database
  • Process Keystrokes for Exist
    • Aggregate the keystrokes from each computer into the total Keystrokes by Pulse Date*
    • Compare the new keystrokes to what was sent to Exist - flag differences to send to Exist
  • Send any differences to Exist

* The WhatPulse API doesn't record the keystrokes by date you recorded the keystrokes. It puts all keystrokes to the day you pulsed. If you don't pulse every day, your numbers will show peaks and valleys.


Toggl Track - Minute Attributes

If you choose to connect Exist Integrations to Toggl Track this section will outline how that integration works.

To start grab your API Token from your Toggl Track Profile. On Exist Integrations go to the Manage Accounts page and enter your API Token. Upon a successful connection, Exist Integration will pull all of your active projects.

Next, you will need to configure which Exist attributes will be linked to which Toggl Track projects. By default all Projects will be set to Ignore. On the Manage Accounts page in the Toggl Track section, select the Exist attribute that will be linked to the project. Once you have selected everything click the 'Attach Exist Attribute to Toggl Track Project' button.

If you add or remove projects from Toggl Track you will need to tell Exist Integrations to refresh your project list. The Manage Accounts page has a button 'Refresh Project List from Toggl' that can be used.

Note: Time watching TV is a unique attribute as it can also be used in the Trakt integration. Exist Integrations will only allow you to use this attribute with one service. If you don't see Time watching TV in the drop down on the Project configuration then that means you've connected it to Trakt. Disconnect it from Trakt to connect it to Toggl Track.

Integration: scheduled hourly at 15 minutes passed the hour

  • Identify users who are connected to Toggl Track
  • Load Time Entries from Toggl Track *
    • Determine which projects are linked to an Exist Attribute
    • Pull the time entries for only those projects
    • For new users: load the time entries from (TODAY - 31 days) to (TODAY)
    • For existing users: load history from (MAX(Ended At Date) - 3 days) to (TODAY)
    • Set any previously loaded time entries to inactive (needed to support deleting time entries from Toggl Track)
    • Appropriately paginate through time entires in case there are more than 50 records
    • Process the time entries into the Exist Integration database
  • Process Minutes for Exist
    • For each attribute, aggregate the total minutes by day
    • Compare the newly calculated totals with what was last sent to Exist - flag differences to send to Exist
  • Send any differences to Exist

* If Exist Integrations receives a 401 Unauthorized message from Toggl when calling the Load Time Entries API for your user it indicates that you changed your API token and the one Exist Integrations is no longer valid. Exist Integrations treats this as a disconnect from the service and will remove all data stored locally on Exist Integrations. Any data sent to Exist will not be changed.