Activity Assignments
Activity assignments link a user or group (including "all users") to an activity or all activities.
You can check if activities are enabled using the Account Information interface (account / time-settings / show-activities). Administrators can enable activities from Syncd's web interface via Settings / Time Tracking.
Only Activity Managers can view, create and delete activity assignments. If you'd like to view assigned activities instead of activity assignments, use the Activities interface.
Show
Request
GET /activity_assignments/#{activity-assignment-id}.xmlOptional parameters
The following optional parameters can be used to include extra data:
include=[users,
user_groups,
activities]Response
1 Status: 200 OK 2 3 <activity-assignment> 4 <id type="integer">#{activity-assignment-id}</id> 5 <!-- if assigned to all users ---> 6 <users>all</users> 7 <!-- else if assigned to a user --> 8 <!-- if include=users --> 9 <user> 10 ... 11 </user> 12 <!-- else --> 13 <user-id type="integer">#{user-id}</user-id> 14 <!-- end --> 15 <!-- else if assigned to a user group ---> 16 <!-- if include=user_groups --> 17 <user-group> 18 ... 19 </user-group> 20 <!-- else --> 21 <user-group-id type="integer">#{user-group-id}</user-group-id> 22 <!-- end --> 23 <!-- end --> 24 <!-- if assigned to all activities ---> 25 <activities>all</activities> 26 <!-- else if include=activities --> 27 <activity> 28 ... 29 </activity> 30 <!-- else --> 31 <activity-id type="integer">#{activity-id}</activity-id> 32 <!-- end --> 33 <!-- if include=timestamps --> 34 <created-at type="datetime">2008-01-08T03:47:52Z</created-at> 35 <updated-at type="datetime">2008-01-08T03:47:52Z</updated-at> 36 <!-- end --> 37 </activity-assignment>
List
Request
All activity assignments:
GET /activity_assignments.xml
Assignments related to a particular activity (includes assignments to all activities):
GET /activities/#{activity-id}/assignments.xmlDirect assignments to a particular activity (excludes assignments to all activities):
GET /activities/#{activity-id}/assignments/direct.xmlAssignments related to a particular user (includes assignments to the user's groups and all users):
GET /users/#{user-id}/activity_assignments.xmlDirect assignments to a particular user (excludes assignments to the user's groups and all users):
GET /users/#{user-id}/activity_assignments/direct.xmlAssignments for a particular user group:
GET /user_groups/#{user-group-id}/activity_assignments.xmlSince all assignments to user groups are direct, there's no separate method for requesting only direct assignments.
Optional parameters
Specify start and end to request a specific range of items. For example:
GET /activity_assignments.xml?start=1&end=4
The following optional parameters can be used to include extra data:
include=[users,
user_groups,
activities]For example:
GET /activity_assignments.xml?include=users,user_groups,activities
Response
1 Status: 200 OK 2 3 <activity-assignments type="array"> 4 <activity-assignment> 5 ... 6 </activity-assignment> 7 ... 8 </activity-assignments>
Create
Request
POST /activity_assignments.xml
Include the following data with your request:
1 <activity-assignment> 2 <!-- A user, user group, or all users must be included --> 3 <!-- To specify a user: --> 4 <user-id>#{user-id}</user-id> 5 <!-- To specify a user group: --> 6 <user-group-id>#{user-group-id}</user-group-id> 7 <!-- To specify all users: --> 8 <users>all</users> 9 <!-- An activity or all activities must be included --> 10 <!-- To specify an activity: --> 11 <activity-id>#{activity-id}</activity-id> 12 <!-- To specify all activities: --> 13 <activities>all</activities> 14 </activity-assignment>
For example, to assign a user to a specific activity:
1 <activity-assignment> 2 <user-id>25</user-id> 3 <activity-id>14</activity-id> 4 </activity-assignment>
Response
1 Status: 201 Created 2 3 <activity-assignment> 4 <id type="integer">#{new-activity-assignment-id}</id> 5 <user-id type="integer">25</user-id> 6 <activity-id type="integer">14</activity-id> 7 <!-- if include=timestamps --> 8 <created-at type="datetime">2008-01-08T03:47:52Z</created-at> 9 <updated-at type="datetime">2008-01-08T03:47:52Z</updated-at> 10 <!-- end --> 11 </activity-assignment>
Delete
Request
DELETE /activity_assignments/#{activity-assignment-id}.xmlResponse
Status: 200 OK

