Panel | ||||||||
---|---|---|---|---|---|---|---|---|
| ||||||||
This page was created to contain general notes/documentation for the CAS API and Slate integration that is CAS-agnostic. It is under construction. |
...
Expand | ||
---|---|---|
| ||
Subject: Request to create new API account Hello, I am writing to request a new API account be created for the following CAS and institution. If possible, I’d like to request that the account username be [xxxxx]. Institution Manager name and email address: [xxxxx] Name of user to receive CAS API access: [xxxxx] CAS API user phone number: [xxxxx] CAS API user email address: [xxxxx] The name of your institution (university/college/school/etc.): [xxxxx] The CAS, one or many, that you're interested in (e.g. BusinessCAS): [xxxxx] The CAS admissions cycles you're interested in (e.g., 2020-2021 and 2021-2022): [xxxxx] The environment: [Prelaunch or Production] |
Expand | ||
---|---|---|
| ||
Subject: Request adding CAS to existing API account Hello, This year we will be setting up a CAS API integration for CASPA for Tufts University (program ID 346115 for 23-24). We have existing API accounts for other integrations so I am writing to request that access to CASPA be granted to the below API accounts. Prelaunch account username: TuftsUniPre Production account username: TuftsUni |
...
The instruction to use CIDR subnets (e.g., 123.45.67.0/24) mean literally to use the .0/24 characters, even if the number you see in your machine’s individual IP address is something outside of that range. Setting this means there is no waiting when using these account credentials with Filezilla or Postman
Allowed Networks (Deprecated January 2024)
Expand | ||
---|---|---|
| ||
Below are the IP addresses that are included in the “allowed networks” of existing CAS/Liaison Service accounts for future reference. It is unclear which exactly are used by the Liaison systems, the following list is provided for reference/troubleshooting.
|
...
Obtaining
...
the Data Dictionary using the GET data dictionary endpoint
The following instructions use the CAS → Slate V5 Postman collection provided by Liaison. At minimum you need the name of the applicant, but it is also good to have the CAS Applicant ID to ensure the correct application data is identified.
Note |
---|
The application data you will get back using this process is “live” as of when the request is sent. It is not dependent on a business event and is not “retroactive.” If the exact file sent via a subscription is required, you should do a replay and not use this process. |
...
Select the environment for the CAS application you are trying to access, and send a call for an authorization token toke (POST Call Auth Token).
Next send a call to the GET applications list. The response will contain details for every application in the CAS and cycle (application form ID) and the school/college/university (organization) established in your environment. Use the search tool in Postman to search for the name or CAS Applicant ID of the applicant you are trying to find; make note of the application ID.
Open the GET individual application endpoint. Paste the application ID into the value under the “Params > Path Variables” section. Next, in the Headers menu make sure that Accept is set to text/csv (default is application/json, changing this ensures a text file is returned). Save the endpoint and then send it.
Save the response locally.
Open Excel, use “Open” to find the file that you saved in the previous step. Make sure to change the type of file you are looking for to “All Files.”
Excel may give a warning, but click yes to open anyway. Excel will then run through the Text Import Wizard. Select Delimited for Step 1, then “comma” in Step 2, and then finish. The workbook will open; save as a CSV file.
Go to Slate to the Source Format configured to import this type of file for the API.
Deciding to use the CAS API vs. WebAdMIT API
Identifying and Interpreting Data Fields
CAS API Data
Program Configuration Data
Source Format Configurations
Slate provides pre-built templates for the necessary source formats needed to configure record and application creation and updating as well as document processing.
Data Source Formats
In Progress
Info |
---|
Per the Liaison API Support team 1/12/2024: Unfortunately, applicants have the ability to decide whether or not their information gets released to schools before their submission. If an applicant selects "No" for this release, then they will not show as in progress in WebADMIT and will not trigger that application.selected.file business event. |
Application
Resources
CAS Source Format Mapping (from Liaison) is Liaison’s
Documents
The document source format provided by Slate for the CAS API integration is “special” and doesn’t function the way other source formats do:
There should only be one Document source format no matter how many CAS applications are being integrated; unlike the other source formats, the documents source format should not be copied and duplicated. It can be used for all Liaision documents.
The source format appears to look at the filename of the PDF document that is sent from the CAS API to match with person and application records. For this reason, it is important not to change the file name as written in the endpoints provided by Liaison. (The exception is the text between the brackets to replace with the name of the CAS, e.g. PTCAS or CASPA).
...
Configurations
To set up the documents source format you only need to configure the Prompt Value Mappings (there are no field value mappings or other source format components to edit). Each prompt is the document type or subtype from Liaision and should be matched to whatever material type within Slate works for the school’s processes.
Document Subtypes
There are two kinds of documents for the CAS API; those that are organization-level (types) and those that are program-level (subtypes).
Organization level documents include transcripts, foreign credential evaluations, and any material required by the CAS (e.g., license or certification documents).
They should be considered “person-scoped” in Slate terminology, as they are part of the student’s profile in the CAS which is sent to all programs where they apply.
Program level documents include things required by our specific program (as configured in the configuration portal), and might include a resume, personal statment, etc.
Evaluations are also considered program-level, as they are specific to an application and some CASs do not require them (but allow a program to require them).
They should be considered application-scoped (or program-scoped) in Slate terminology, as they are specific to that application program/start-term/etc.
To determine what program needs to be mapped, review the configuration portal for the document types required by the program (available in the export file from the configuration portal). Then obtain the document subtype file from the API to match the document type to the document subtype “code.”
...
panelIconId | 1f517 |
---|---|
panelIcon | :link: |
panelIconText | 🔗 |
bgColor | #F4F5F7 |
...
Open the GET data dictionary endpoint. Use the carat next to the Send button to select “Send and Download”
After a short delay, a File Explorer window should open to allow you to save the file you have downloaded. Select a location to save, rename the file (if desired) and most important, add a file extension to the end of the filename (.csv) before you save it.
Open the file in Excel. You may get a warning message, but dismiss it and the file should open without issues.
Obtaining an individual application file
The following instructions use the CAS → Slate V5 Postman collection provided by Liaison. At minimum you need the name of the applicant, but it is also good to have the CAS Applicant ID to ensure the correct application data is identified.
Note |
---|
The application data you will get back using this process is “live” as of when the request is sent. It is not dependent on a business event and is not “retroactive.” If the exact file sent via a subscription is required, you should do a replay and not use this process. |
Select the environment for the CAS application you are trying to access, and send a call for an authorization token (POST Call Auth Token).
Next send a call to the GET applications list. The response will contain details for every application in the CAS and cycle (application form ID) and the school/college/university (organization) established in your environment. Use the search tool in Postman to search for the name or CAS Applicant ID of the applicant you are trying to find; make note of the application ID.
Open the GET individual application endpoint. Paste the application ID into the value under the “Params > Path Variables” section. Next, in the Headers menu make sure that Accept is set to text/csv (default is application/json, changing this ensures a text file is returned). Save the endpoint and then send it.
Save the response locally.
Open Excel, use “Open” to find the file that you saved in the previous step. Make sure to change the type of file you are looking for to “All Files.”
Excel may give a warning, but click yes to open anyway. Excel will then run through the Text Import Wizard. Select Delimited for Step 1, then “comma” in Step 2, and then finish. The workbook will open; save as a CSV file.
Go to Slate to the Source Format configured to import this type of file for the API.
Deciding to use the CAS API vs. WebAdMIT API
Expand | ||
---|---|---|
| ||
Alex Sims (Mississippi State University) 2 months ago Hey @Wyatt Best (ReWorkflow) (and @Peter Scorcia (Uni of Arizona)), However, as y'all mentioned, there are some things that just do not come in the data from the API--one example that I can think of from VMCAS was the "Academic Update Status". We could see in WebAdmit that a student had been sent back through the coursework verification process and was in an "Academic Update in Progress" status but there was no way of knowing that in Slate because that was not being transferred in any of the HUNDREDS of data points in the files from the API. So, I still set up exports from WebAdmit using the export manager to send a file to Slate every hour to set an Academic Update Status field in Slate to whatever that field was in WebAdmit.For our VMCAS applications, these are being reviewed in Slate but WebAdmit is still kind of being used as like a "system of truth" to find any discrepancies, like the academic update status.We also accept CASPA applications for our Physicians Assistant program. Those applications are reviewed within WebAdmit. Just in the last few months (October 2023, I believe), they decided that they would like those applications to be transferred to Slate. The reason for this is we have data integration between Slate and our SIS (Banner) to transfer applications at the point of admission. But, we don't have such integrations between WebAdmit and Banner. So, once these students were admitted in WebAdmit, someone was having to key those applications into Banner manually. |
Identifying and Interpreting Data Fields
CAS API Data
...
...
...
...
...
This table is a summary of the document types that have been used at Tufts in our API integrations.
...
Document Type/SubType
...
Response Level
...
Business Event
...
Description
...
CAS
...
fullAppPDF
...
program
...
A comprehensive generated PDF including all information provided by the applicant in filling out the application. (option to remove race/ethnicity)
...
VMCAS
...
evaluation
...
program
...
file.evaluation.updated
...
A letter of recommendation.
...
PTCAS, SOPHAS, CASPA, VMCAS
...
transcriptunofficial
...
organization
...
file.transcript.updated
...
An unofficial transcript uploaded by the applicant.
...
PTCAS, SOPHAS, CASPA
...
transcriptofficial
...
organization
...
file.transcript.updated
...
An official transcript delivered directly to Liaison by the issuing institution.
...
PTCAS, SOPHAS, CASPA, VMCAS
...
vendorTranscriptEval
...
organization
...
file.vendorTranscriptEval.updated
...
An official foreign transcript evaluation delivered directly to Liaison by the evaluation agency (WES, ECE).
...
PTCAS, SOPHAS, CASPA, VMCAS
...
cv-resume
...
file.attachment.updated
...
Resume/CV
...
CASPA
...
personal-statement
...
file.attachment.updated
...
Essay/personal statement
...
statement-of-purpose-and-objectives
...
file.attachment.updated
...
Essay/personal statement
...
SOPHAS
...
other
...
file.attachment.updated
...
Other misc. documents (optional for the applicant)
...
SOPHAS
...
clinical-professional
...
program
...
file.attachment.updated
...
CASPA
...
unofficial-transcript
...
WebAdMIT
...
CAS Electronic Transcript (formatted like full app PDF but only containing the GPA Overview and sub-panels from WebAdMIT)
...
PTCAS
...
FullAppPDF
...
WebAdMIT
...
Custom PDF from WebAdMIT containing specific panels and sub-panels w/o any other documents from the application
...
SOPHAS, PTCAS
FullAppPDF
The FullAppPDF document type available from the CAS API process contains the following (confirmed 3/15/2024):
Biographic information (use PDFtype=reviewer to remove race/ethnicity)
Academic History
Supporting Information
Custom Questions (CAS)
Custom Questions (Program/Designation)
Prerequisite Courses (if available)
Evaluations
Applicant Uploaded Documents (CAS/Application Level)
Applicant Uploaded Documents (Program Level)
This document type is not customizable and is only available as-delivered. Because it does not break up documents into separate PDFs, it is not ideal for most school processes. If using a full application PDF exported out Liaison to review applications in the Reader, it may be preferable to obtain a more custom full application PDF from WebAdMIT.
Round Creation/Update
...
Program Configuration Data
Source Format Configurations
Slate provides pre-built templates for the necessary source formats needed to configure record and application creation and updating as well as document processing.
Data Source Formats
In Progress
Info |
---|
Per the Liaison API Support team 1/12/2024: Unfortunately, applicants have the ability to decide whether or not their information gets released to schools before their submission. If an applicant selects "No" for this release, then they will not show as in progress in WebADMIT and will not trigger that application.selected.file business event. |
Application
Resources
CAS Source Format Mapping (from Liaison) is Liaison’s
...
Documents
The document source format provided by Slate for the CAS API integration is “special” and doesn’t function the way other source formats do:
There should only be one Document source format no matter how many CAS applications are being integrated; unlike the other source formats, the documents source format should not be copied and duplicated. It can be used for all Liaision documents.
The source format appears to look at the filename of the PDF document that is sent from the CAS API to match with person and application records. For this reason, it is important not to change the file name as written in the endpoints provided by Liaison. (The exception is the text between the brackets to replace with the name of the CAS, e.g. PTCAS or CASPA).
...
Configurations
To set up the documents source format you only need to configure the Prompt Value Mappings (there are no field value mappings or other source format components to edit). Each prompt is the document type or subtype from Liaision and should be matched to whatever material type within Slate works for the school’s processes.
Document Subtypes
There are two kinds of documents for the CAS API; those that are organization-level (types) and those that are program-level (subtypes).
Organization level documents include transcripts, foreign credential evaluations, and any material required by the CAS (e.g., license or certification documents).
They should be considered “person-scoped” in Slate terminology, as they are part of the student’s profile in the CAS which is sent to all programs where they apply.
Program level documents include things required by our specific program (as configured in the configuration portal), and might include a resume, personal statment, etc.
Evaluations are also considered program-level, as they are specific to an application and some CASs do not require them (but allow a program to require them).
They should be considered application-scoped (or program-scoped) in Slate terminology, as they are specific to that application program/start-term/etc.
To determine what program needs to be mapped, review the configuration portal for the document types required by the program (available in the export file from the configuration portal). Then obtain the document subtype file from the API to match the document type to the document subtype “code.”
Panel | ||||||||
---|---|---|---|---|---|---|---|---|
| ||||||||
Instructions for identifying program-level document subtypes and the organization-level document types are available from Liaison here: https://help.liaisonedu.com/Integration/CAS_API/CAS_Slate_Integration/Working_with_Source_Formats_and_Mapping/06_Mapping_Your_Document_Source_Format |
This table is a summary of the document types that have been used at Tufts in our API integrations.
Document Type/SubType | Response Level | Business Event | Description | CAS |
---|---|---|---|---|
fullAppPDF | program | A comprehensive generated PDF including all information provided by the applicant in filling out the application. (option to remove race/ethnicity) | VMCAS | |
evaluation | program |
| A letter of recommendation. | PTCAS, SOPHAS, CASPA, VMCAS |
transcriptunofficial | organization |
| An unofficial transcript uploaded by the applicant. | PTCAS, SOPHAS, CASPA |
transcriptofficial | organization |
| An official transcript delivered directly to Liaison by the issuing institution. | PTCAS, SOPHAS, CASPA, VMCAS |
vendorTranscriptEval | organization |
| An official foreign transcript evaluation delivered directly to Liaison by the evaluation agency (WES, ECE). | PTCAS, SOPHAS, CASPA, VMCAS |
cv-resume |
| Resume/CV | CASPA | |
personal-statement |
| Essay/personal statement | ||
statement-of-purpose-and-objectives |
| Essay/personal statement | SOPHAS | |
other |
| Other misc. documents (optional for the applicant) | SOPHAS | |
clinical-professional | program |
| CASPA | |
unofficial-transcript | WebAdMIT | CAS Electronic Transcript (formatted like full app PDF but only containing the GPA Overview and sub-panels from WebAdMIT) | PTCAS | |
FullAppPDF | WebAdMIT | Custom PDF from WebAdMIT containing specific panels and sub-panels w/o any other documents from the application | SOPHAS, PTCAS |
FullAppPDF
The FullAppPDF document type available from the CAS API process contains the following (confirmed 3/15/2024):
Biographic information (use PDFtype=reviewer to remove race/ethnicity)
Academic History
Supporting Information
Custom Questions (CAS)
Custom Questions (Program/Designation)
Prerequisite Courses (if available)
Evaluations
Applicant Uploaded Documents (CAS/Application Level)
Applicant Uploaded Documents (Program Level)
This document type is not customizable and is only available as-delivered. Because it does not break up documents into separate PDFs, it is not ideal for most school processes. If using a full application PDF exported out Liaison to review applications in the Reader, it may be preferable to obtain a more custom full application PDF from WebAdMIT.
Round Creation/Update
Person and Application-scoped ID and Record Matching
Trevor Johnson (When he was with Technolutions) https://community.technolutions.net/archived-posts/post/app-import-overwriting-previous-app-regardless-of-settings-fBBLcwZOC8JLOdq
With all of the unique destinations eliminated as possible culprits (the two field fusions are sending unique data and the other destinations are entity scoped) the only possibility we have left is Slate does not have enough information to create a new application, and so it is updating the existing Rank 1 application for the person, if it exists:
https://knowledge.technolutions.com/hc/en-us/articles/360032982712-Matching-Criteria-for-Application-Records
(keep in mind also, that there is no negative match based on unique ID fields, so the fact that the existing unique ID value and the incoming ID value are different will not prevent the match).
If Slate matches on the person and the import contains application-scoped data but no application round has been specified, Slate will match on the rank 1 application and update that record with the application-scoped data contained in the import (as described in the documentation linked above).
I thought it quite unlikely that the Round wasn't specified, but upon checking, it looks like the App: Round destination has been specified, but the values have not actually been mapped.
Even though 'App: Round Always Create = Yes' is correctly specified as a static value mapping, it will not have an effect unless Round is mapped, and Slate actually has enough information to create a new application (specifically, what round it should be created in).
So, ensure that the desired round values are mapped, and things should be all set with this import moving forward.
Accommodations for CAS vs. Slate Differences
...