Exporting Plan Items

The Get Plan Items API returns the current data for each plan item in a specified plan. For more information on the general aspects of the AchieveIt REST API, read our help article on API basics.

Request Specification

Request URL

You retrieve the items in a plan by requesting the plan with the Plan ID at one of the following URLs, depending on which environment your organization uses:

In the above example, {planId} is the unique ID of the plan you want to fetch. You can retrieve the Plan ID by logging into the AchieveIt web app, navigating to the root plan item of a plan for which you are an admin, selecting the Options menu on the top-right of the plan card, and clicking the "Copy Plan ID" menu option. This will put the ID of the plan on your computer's clipboard.

 

Request Parameters

In addition to specifying the {planId} in the API URL, you can also control the paging & sorting of the results returned in a large plan by using the Skip and Take parameters. If your plan contains more than 100 plan items and you need to query the entire plan, you will need to specify the take query parameter as shown below.

Parameter Type Notes
Skip (optional) integer Default value is 0
Take (optional) integer Default value is 100 
SortDirection string

Valid values are asc or desc

Default value is asc

SortKey string

Below lists the supported column name in the List View (left side) with it's corresponding sort key (right side). 

  • Name: name
  • #: sequenceId
  • Level: level
  • Status: status
  • Start Date: start
  • Due Date: due
  • Current Value: currentValue
  • Last Updated: lastUpdated
  • Assigned To: assignedToFullName
  • Updates: updates
  • Aligns To: alignsTo
  • Assigned By: assignedByFullName
  • Assigned To Email Address: assignedToEmailAddress
  • Baseline: baseline
  • Target: target
  • Created: created
  • Dependent On: dependentOn
  • Description: description
  • Indented Name: indentedName
  • Last Progress Update User: lastProgressUpdateUser
  • Update Frequency: updateFrequencyDescription
  • Plan: planName

Default value is sequenceId

// Non-government environment
https://api.achieveit.com/plans/{planId}/items?skip=0&take=250&sortKey=name&sortDirection=desc

Government environment
https://gov-api.achieveit.com/plans/{planId}/items?skip=0&take=250&sortKey=name&sortDirection=desc

Request Header

You must include the API key as part of an authorization header. The user associated with the API key must have access to the plan that you're requesting in order for the Get Plan Items call to return data.

Parameter Type Notes
Authorization string Value should be in the following format: API-KEY [your_key]

 

Responses

Response Codes

The call to the Get Plan Items API returns one of the following nominal HTTP response codes.

Code Meaning Notes
200 Success Exporting the plan items was successful, and the content of the response includes the requested plan items.
403 Forbidden The user associated with the specified API key does not have access to the requested plan.

 

Response Content

If the call is successful, the plan items will be represented in the response as a JSON object with the following keys:

{
"items": [
{
"id": "string",
"sourceId": "string",
"rowNumber": 0,
"sequenceId": "string",
"planId": "string",
"planName": "string",
"sourcePlanId": "string" or null,
"sourcePlanName": "string" or null
"alignsTo": "string" or null,
"alignsToId": "string" or null,
"dependentOn": "string" or null,
"dependentOnId": "string" or null,
"levelId": "string",
"level": "string",
"name": "string",
"indentedName": "string",
"description": "string",
"status": 0,
"statusName": "string",
"start": "string" or null,
"due": "string" or null,
"created": "string",
"hasMetric": true,
"hasAdvancedMetric": true,
"units": 0 or null,
"detail": 0 or null,
"baseline": "0",
"target": "0",
"currentValue": "0",
"advancedMetricGoals": [{ "goalId": "string", "goalName": "string", "goalColor": "string", "metricBucketValue": 0.0, "sortOrder": 0 }],
"lastUpdated": "string",
"assignedToId": "string" or null,
"assignedToFullName": "string" or null,
"assignedById": "string" or null
"assignedByFullName": "string" or null,
"members": [{ "id": "string", "name": "string", "type": "User" or "Team" }],
"admins": [{ "id": "string", "name": "string", "type": "User" or "Team" }],
"updateFrequency": "NotRequired" or "Daily" or "Weekly" or "Biweekly" or "Monthly" or "Quarterly",
"updateFrequencyDescription": "NotRequired" or "Daily" or "Weekly" or "Biweekly" or "Monthly" or "Quarterly",
"isPastDue": true,
"lateUpdates": 0,
"pendingUpdates": 0,
"updates": 0,
"lastCommentId": "string" or null
"lastComment": "string" or null,
"lastUpdateCommentId": "string" or null
"lastUpdateComment": "string" or null,
"files": 0,
"checklists": [{ "id": "string", "name": "string", "sortIndex": 0, "items": [{ "id": "string", "name": "string", "sortIndex": 0, "doneOn": "string" or null}] }],
"tags": [{ "id": "string", "organizationId": "string", "name": "string" }]
"isOrphan": false
}
],
"totalCount": 1
}