API Call Samples

We reserve the right to log and verify your API calls and to contact you if we detect abuse on your part. For example:
  • the requests takes too long to return
  • the requests return too much data at a time
  • The requests are too frequent
We strongly suggest using the date filter parameters to return only the data that is relevant.
Best practice for GetTasks function
  • If you only need the list without details, use "forcombo=1"
  • We strongly suggest to limit the resultset by date filter.
    Use the following parameter to get the tasks that were modified on or after the specified date.
    • filterfirstdate=DATE_TASK_MODIFIED
    • filterfirstdateoperator=4 (is later than)
    • filterfirstdatevalue=YYYY-MM-DD (example last 90 days)

Select category  

Select function  

Function Details
Name Guid Required Description
GetTasks True Retrieves list of tasks.

Code Sample (Visual Basic, Dotnet Framework 4.x):
Public Class Sample
	
	Public Sub CodeSample_gettasks()
		Dim params = New NameValueCollection From {
					{"fct", "gettasks"},
					{"guid", "###"},
					{"filterfirstdate", "DATE_TASK_MODIFIED"},
					{"filterfirstdateoperator", 4},
					{"filterfirstdatevalue", 2025-07-24},
					{"pagenumber", 1},
					{"rowsperpage", 100}
		}

		Dim jsonText = apiCall(params)

		' https://www.newtonsoft.com/json suggested for JSON parsing to DotNet framework 4.x
		Dim jsonObj = Newtonsoft.Json.Linq.JObject.Parse(jsonText)

		Dim success = jsonObj.Item("status").ToString <> "fail"
		Dim jResults = DirectCast(jsonObj.Item("results"), Newtonsoft.Json.Linq.JArray)

		
	End Sub
	    
	Function apiCall(_param As NameValueCollection) As String

		Dim wc As New System.Net.WebClient With {
			.Encoding = System.Text.Encoding.UTF8
		}

		' may be needed on some machines
		Net.ServicePointManager.SecurityProtocol = CType(Net.SecurityProtocolType.Tls12, Net.SecurityProtocolType)

		_param.Item("format") = "iso8601" ' json, with dates formatted as ISO8601 string

		Dim responseBytes = wc.UploadValues("https://api.aceproject.com", "POST", _param)
		Return System.Text.Encoding.UTF8.GetString(responseBytes)

	End Function

End Class

Parameter Details
Name DataType Is Nullable Max length Domain Values Default Value Is Required
(Insert)
Is Required
(Update)
Is Required Description
Guid String False True Unique identifier for the authenticated user. The GUID has an expiry date and time which is managed automatically by the API.
ProjectID String True NULL False Auto-generated unique identifier of a project.
PortfolioID String True NULL True
TaskID String True NULL False Auto-generated unique identifier of a task.
AssignedProjectsOnly Boolean False True or False False True Indicates whether to filter the list based on assigned project's only. This parameter is ignored if the calling user is not an administrator. Only assigned projects are returned for non administrators.
IncludeInactiveTemplates Boolean False True or False True True DEPRECATE - Use ProjectStaticTemplate parameter.
ProjectStaticTemplate Boolean True True or False NULL False Indicates whether we take only or not at all the tasks of the static projects. Omitting the parameter returns all tasks, static or not.
FilterTaskGroupId String True NULL False List of comma separated unique identifiers of task groups to filter on.
FilterTaskStatusId String True NULL False List of comma separated unique identifiers of task statuses to filter on.
IsGroupingTaskStatus Boolean True True or False NULL True
FilterHasDocuments Boolean True True or False NULL True
FilterTaskCompleted Boolean True True or False NULL False Indicates whether to filter tasks on the status. NULL values means to not filter on the task status.
FilterTaskTypeId String True NULL False List of comma separated unique identifiers of task types to filter on.
FilterTaskPriorityId String True NULL False List of comma separated unique identifiers of task priorities to filter on.
FilterCreatorUserId String True NULL False List of comma separated unique identifiers of users to filter on creators.
FilterAssignedUserId String True NULL False List of comma separated unique identifiers of users to filter on assignees.
FilterAssignedUserGroupId String True NULL False List of comma separated unique identifiers of user groups to filter on assignees.
FilterReviewerUserId String True NULL False List of comma separated unique identifiers of users to filter on reviewers.
FilterOnUserIdMustMeetAll Boolean False True or False True False Indicates if the tasks must meet all user identifier filters or only one of the filters.
FilterProjectTypeId String True NULL False List of comma separated unique identifiers of project types to filter on.
FilterClientId String True NULL False List of comma separated unique identifiers of clients to filter on.
FilterFirstDate String True DATE_EXPECTED_START_TASK: Estimated Start Date
DATE_EXPECTED_END_TASK: Estimated Due Date
DATE_TASK_CREATED: Created Date
DATE_TASK_MODIFIED: Last Update
ACTUAL_START_DATE: Actual Start Date
ACTUAL_END_DATE: Actual End Date
NULL False Type of date filter for tasks (first). Used with FilterFirstDateOperator and FilterFirstDateValue.
FilterFirstDateOperator Integer True 0: Is Earlier Than
1: Is Earlier Than Or On
2: Is On
3: Is Later Than Or On
4: Is Later Than
NULL False Operator for date filter of tasks (first). Used with FilterFirstDate and FilterFirstDateValue.
FilterFirstDateValue DateTime True NULL False Value for date filter of tasks (first). Used with FilterFirstDate and FilterFirstDateOperator.
FilterSecondDate String True DATE_EXPECTED_START_TASK: Estimated Start Date
DATE_EXPECTED_END_TASK: Estimated Due Date
DATE_TASK_CREATED: Created Date
DATE_TASK_MODIFIED: Last Update
ACTUAL_START_DATE: Actual Start Date
ACTUAL_END_DATE: Actual End Date
NULL False Type of date filter for tasks (second). Used with FilterSecondDateOperator and FilterSecondDateValue.
FilterSecondDateOperator Integer True 0: Is Earlier Than
1: Is Earlier Than Or On
2: Is On
3: Is Later Than Or On
4: Is Later Than
NULL False Operator for date filter of tasks (second). Used with FilterSecondDate and FilterSecondDateValue.
FilterSecondDateValue DateTime True NULL False Value for date filter of tasks (second). Used with FilterSecondDate and FilterSecondDateOperator.
FilterTaskAssigned Boolean True True or False NULL False Indicates whether to filter tasks based on assignees.
FilterTaskReviewers Boolean True True or False NULL False Indicates whether to filter tasks based on reviewers.
FilterMarkedOnly String False False False
FilterSoonTodoOnly String False False False Returns only soon to do (based on estimated start date) tasks if true.
FilterSoondueOnly String False False False Returns only soon due (based on estimated end date) tasks if true. See Account information for details about number of days used to consider tasks as soon due.
FilterOverdueOnly String False False False Returns only over due (based on estimated end date) tasks if true. Used with FilterOverdueRecent. See Account information for details about number of days used to consider tasks as overdue.
FilterOverdueRecent String False False False Returns only recently over due tasks if true. The parameter is ignored if FilterOverdueOnly is false. See Account information for details about number of days used to consider tasks as overdue.
FilterRecurrencyNumber String True NULL True
FilterTasksReadyToStartOnly Boolean False True or False False True
FilterTasksWithoutDates Boolean False True or False False True
CustomFieldId Integer True NULL True
CustomFieldListItemId Integer True NULL True
TextToSearch String True 300 NULL False Search list based on specified text
GetPlainTextValues Boolean False True or False False False Returns plain text values (without HTML formatting) for task details field when this field is returned to the caller.
SortOrder String True NULL False Comma separated fields used for ordering a list.
UseShowHide Boolean False True or False False False
ForCombo Boolean False True or False False False Indicates whether returns a simplified list to display drop-down list.
PageNumber Integer True NULL or greater than 0 NULL False When the page number is not NULL, the API returns only the entries of the specified page within the list. A default rows per page is used within the API to determine pages if RowsPerPage parameter is not specified.
RowsPerPage Integer True NULL or greater than 0 NULL False When the number of rows per page is NULL, the API uses the default value in the system. This parameter is used only when PageNumber has a value.
Format String False RS: RecordSet
DS: DataSet
JSON: JSON
DS True Return Format