API Reference: Activity Reports

Preamble

The Solve External API is implemented over HTTP and is RESTful. Every item has its own URI and is manipulated in isolation.

You will normally send your Request data in XML format, but we understand JSON and form encoded data just as well. If you want to use a non-XML request format, simply set the HTTP “Content-type” header to either application/json or application/x-www-form-urlencoded. Conversely, we will normally send response data in XML form, unless you set the HTTP “Accept” header to application/json.

Unless otherwise specified, date/time is always reported in UTC and formatted according to ISO 8601. When saving date/time data, values must first be converted from local time to UTC and follow one of these formats: 2004-02-12T15:19:21+00:00 (ISO 8601), 2004-02-12 15:19:21, or just 2004-02-12.

Please note, access to features and data is limited to the actual user account being used to access the API. Likewise, admin actions cannot be performed via API (i.e. granting workgroup permissions, etc.). The admin has to do this from within the main system.

Interface Summary

https://secure.solve360.com

URI HTTP Methods
/report/nextactions/ [GET]
/report/calendar/ [GET]
/report/followups/ [GET]
/report/opportunities/ [GET]
/report/activities/ [GET]
/report/timetracking/ [GET]

Methods

Show

GET https://secure.solve360.com/{uri}

Example request

https://secure.solve360.com/report/timetracking/?start=2009-08-02&end=2009-08-08

Or

curl -u '{userEmail}:{userApiToken}' -v -X GET -H 'Content-Type: application/xml' -o 'result.xml' -d '<request><start>2009-08-02</start><end>2009-08-08</end></request>' https://secure.solve360.com/report/timetracking/

Or

curl -u '{userEmail}:{userApiToken}' -v -X GET -o 'result.xml' 'https://secure.solve360.com/report/timetracking/?start=2009-08-02&end=2009-08-08'

Example response

<response>
  <timerecords>
    <timerecord>
      <id>137875</id>
      <type>15</type>
      <itemid>137302</itemid>
      <itemtype>1</itemtype>
      <tasklistid>137853</tasklistid>
      <taskid>137854</taskid>
      <owner>137201</owner>
      <created>2009-08-18T21:31:18+00:00</created>
      <billable>1</billable>
      <person>137201</person>
      <hours>2.5</hours>
      <date>2009-08-02T00:00:00+00:00</date>
      <invoiced>42263</invoiced>
      <details>Integrated Solve with billing system</details>
      <itemname>John Smith</itemname>
      <tasklistname>tasklist</tasklistname>
      <taskname>one test task</taskname>
    </timerecord></timerecords>

  <status>success</status>
</response>

Parameters

/report/nextactions
List open tasks, events and milestones
  • filter (integer [user id, group id]), or
    filter (integer [no one=0, anyone=<empty>])
  • due (string [now, next7, next30, nodate, or dateFrom,dateTo]), or
    not sending due will not filter by date
  • itemsdata (integer [0=do not include parent data, 1=include parent data])
/report/calendar
List open tasks, events and milestones
  • start (date)
  • end (date)
  • filter (integer [user id, group id]), or
    filter (integer [without attendees=0, anyone=<empty>]
  • itemsdata (integer [0=do not include parent data, 1=include parent data])
/report/followups
List open follow-ups
  • responsible (integer [user id, group id]), or
    responsible (integer [no one=0, anyone=<empty>]
  • due (string [now, next7, next30, nodate, or dateFrom,dateTo]), or
    not sending due will not filter by date
  • itemsdata (integer [0=do not include parent data, 1=include parent data])
/report/opportunities
Lists opportunities by user and status criteria
  • filter (integer [user id, group id]), or
    filter (integer [no one=0, anyone=<empty>]
  • status (string [discussion, pending, won, lost, on-hold])
  • due (string [now, next7, next30, nodate, or dateFrom,dateTo]), or
    not sending due will not filter by date
  • itemsdata (integer [0=do not include parent data, 1=include parent data])
/report/activities
List activities that have been created, modified created or modified, or when specifying only tasks, completed, matching many different critera
  • start (date)
  • end (date)
  • last (string [created, updated, changed, completed])
  • types (integer [3, 4, 6, 14, 23, 24, 32, 73, 88])
  • users (integer [group id, user id])
  • categories (integer)
  • itemtypes (integer [1, 2, 40])
  • itemsdata (integer [0=do not include parent data, 1=include parent data])
/report/timetracking
Lists time records matching a specific date range and status
  • start (date)
  • end (date)
  • filter (string, [invoiced, billable, non-billable]
  • itemtypes (integer [1, 2, 40])
  • itemsdata (integer [0=do not include parent data, 1=include parent data])

Required field

Multiple values supported separated by comma

Activity types

Activity Type ID
note 3
event 4
followup 6
task 14
file 23
photo 24
opportunity 32
event (non-linked) 61
call log 73
scheduled email 88