API Documentation
This page documents the various APIs that are available through Student Success Plan.
Person Data
- Appointment (changed in v.2.6)
- Career Decision Status (added in v2.7.0)
- Caseload
- Challenge
- Custom CSV Export (added in v2.7)
- Documents (added in v2.0)
- Early Alert
- Early Alert Response
- Goal
- Instruction
- Journal Entry
- MAP (added in v2.0)
- MAP Status (added in v2.3)
- MyGPS
- Notes (added in v2.0)
- Person (changed in v2.7)
- Person Coach History (added in v2.7)
- Person Search
- Person Success Indicators (added in v2.6)
- Program Status
- Registration Status (added in v2.4)
- Task
- Test (changed in v2.4)
- Transcript (changed in v2.6.1 and v2.7)
- Watch (added in v2.6, updated in v2.7)
Security Data
- Oauth Client Security (added in v2.0)
Reference Data
- Blurb (Intake Labels) (added in v2.3)
- Campus
- Campus Early Alert Routing
- Campus Service
- Career Decision Status (added in v2.7.0)
- Catalog Year (added in v2.4.0)
- Category
- Challenge
- Challenge Referral
- Child Care Arrangement
- Citizenship
- Completed Items (added in v2.3)
- Confidentiality Level (changed in v2.5)
- Configuration
- Department (added in v2.0.0)
- Disability Accommodation (added in v1.2)
- Disability Agency (added in v1.2)
- Disability Status (added in v1.2)
- Disability Type (added in v1.2)
- Division (added in v2.0.0)
- Early Alert Outcome
- Early Alert Outreach
- Early Alert Reason
- Early Alert Referral
- Early Alert Suggestion
- Education Goal
- Education Level
- Ethnicity
- Financial Aid File (added in v2.3)
- Financial Aid SAP Status (added in v2.3)
- Funding Source
- Journal Source
- Journal Step
- Journal Track
- Journal Step Detail
- LASSI
- Marital Status
- Military Affiliation (added in v1.2)
- Personality Type
- Program (added in v2.0.0)
- Program Status
- Program Status Change Reason
- Races (added in v2.0.0)
- Referral Source
- Service Reason
- Special Service Group (updated in v2.8)
- Student Status
- Student Type
- Success Indicator Evaluation Criteria (added in v.2.6)
- Template for MAP (added in v2.0)
- Term
- Veteran Status
Form Data
- Accommodations (formerly Disability Services, added in v1.2)
- Counseling Reference Guide Challenge Search
- Intake (formerly Student Intake)
- MAP Template
- Message Queue (added in v2.8.0)
- MyGPS Resource Search
General Notes
API result limits
All API calls have an upper limit to the number of results returned. This usually only applies to the "Get All" and similar methods, especially the ones that have start
and limit
parameters. Though it can apply to any method that returns multiple results directly or somewhere nested within the data structure. If the limit
parameter is ever more than the hard-coded upper limit for this parameter, then the API will still only return up to the upper limit number of results.
If you need to retrieve more results than the maximum upper limit, multiple calls to the API method will be required. Increase the start
parameter as appropriate with each call until you have retrieved all the results necessary.
The exact upper limit may change, but currently it is 1000.
Also, If the limit
parameter is not specified for these types of API calls, a default will be used. The default limit
value may change, but currently it is 100. If you would like to see more results per API call to these types of methods, send an explicit limit
parameter, as long as it is still below the maximum upper limit as discussed above.
ObjectStatus
ObjectStatus is applied to almost all entities and services in the system. A particular data item can be Active or Inactive.
Data marked Inactive, by setting the status of the data via a PUT API call, will mark it as such. This will cause it to behave as follows:
- Any direct calls to the data via GET API calls will succeed
- Any retrieval of data that references this data point will succeed and show this data
- Any GetAll API calls to the same entity type (as in, this isn't a child of an object in a different GetAll lookup) that have a status parameter filter of All or Inactive will show this data. But if filtered by Active, then it will not be shown.
The last point may require an example:
- You save a particular Education Goal reference object as Inactive.
- If a particular Student has that Education Goal on their Education Goals list, then the responses from a GET to /api/1/person/<SOME_STUDENT_ID> will still return the, now Inactive, Education Goal in the list of all Education Goals for that student. It will be marked as Inactive, but will still be returned.
- If you call GET /api/1/reference/educationGoal/<ID_OF_INACTIVE_EDUCATION_GOAL> it will return the Inactive Education Goal.
- If you call GET /api/1/reference/educationGoal/ it will return the active Education Goals
- If you call GET /api/1/reference/educationGoal/?Status=ALL it will return the Inactive Education Goal, along with the other Active and Inactive Education Goals in the system.
- If you call GET /api/1/reference/educationGoal/?Status=INACTIVE it will return the Inactive Education Goal, along with the other Inactive Education Goals in the system.
- But if you call GET /api/1/reference/educationGoal/?Status=ACTIVE, then it will not be returned in the list of Active Education Goals.
The idea behind each status could also be summarized:
- Active = always returned via the API
- Inactive = always returned via the API, but the client (consumer of the API) should only show to end-users a read-only view of the object for historical purposes. The client UI should not let the user select an Inactive reference when creating new or modifying existing data. Inactive objects are filtered out if an API service call does not specify a filter (the default filter is Active) or explicitly requests an Active filter, and only if the direct entity type is Inactive — referenced (children) Inactive data can still be returned. (see the example above)