Skip to main content
Liaison

Troubleshooting Your Integration

When working with any integration, issues may arise. On this page, you'll find some of the most common issues that may arise with the CAS-API Slate Integration, along with recommended steps to resolve the issues.

CAS API Subscriptions

The CAS API is the Liaison tool that enables the automated, event-driven delivery of CAS application data and documents to Slate for import. Event-driven delivery is established by creating subscriptions that will deliver payloads formatted in a user-specified format to a user-specified destination in response to user-specified business events. Establishing CAS API subscriptions involves interacting with the API from the command line. Once established, a CAS API subscription may run into trouble attempting to deliver payloads to the specified destination. Common issues encountered with the CAS API are listed below. For more guidance on establishing a CAS API subscription to deliver submitted applications and documents to Slate, review our guide to Setting up the CAS API.

Delivery Failures

Once established, a CAS API subscription may run into trouble attempting to deliver payloads to the specified destination. The three most common types of CAS API subscription delivery errors are listed below, along with the cause of the delivery error and the recommended solution to enable the CAS API to successfully deliver files to the user-specified destination.

Error Message

Cause

Solution

No such file

(see screenshot below)

The target folder doesn't exist on the SFTP.

 

One of the following:

  • Create the target folder. This target folder should exactly match the location and name that is specified in the CAS API subscription (see the blue-highlighted text in the screenshot).
  • Delete the existing CAS API subscription and create a new one that is configured to deliver files to the correct Slate SFTP folder. For example, if your Slate SFTP folder is “/incoming/liaison/businesscas/”, your CAS API subscription’s “sftpBaseDirectory” value should be “/incoming/liaison/businesscas/”.

For more information, see Locating SFTP Folders.

no-such-file-error.png

Error Message

Cause

Solution

Auth fail

(see screenshot below)

The Slate service account credentials (username, password) entered by the user in the CAS API subscription are not correct.

 

Each of the following:

  • Confirm the Slate SFTP credentials.
  • Delete the existing CAS API subscription.
  • Recreate the subscription with the correct credentials.

For more information, see Creating a CAS API Subscription.

auth-fail-error.png

Error Message

Cause

Solution

Connection refused

(see screenshot below)

Too many files were sent to the Slate SFTP at once and the Slate SFTP refused one or more.

 

No action is needed.

  • The CAS API automatically retries delivery after waiting for a short period.
  • The CAS API will keep retrying the delivery, waiting longer between each try, until it is successful or ~3.5 days have elapsed.

connection-refused-error.png

Unauthorized Error

Establishing CAS API subscriptions involves interacting with the API from the command line. The CAS API uses modern authentication and authorization standards to ensure that users are only able to access data they’re authorized to access and perform actions they’re authorized to perform. There are several possible causes for a user to receive an “unauthorized error” message when interacting with the CAS API.

Error Message

Possible Causes

 
Unauthorized

Expired auth token sent in the "Authorization" header. CAS API auth tokens expire after one hour.

Retrieve a new auth token by calling the POST /v1/auth/token endpoint (https://api.liaisonedu.com/reference...ecurity/signIn). Ensure that the auth token returned by that call is passed in subsequent calls to other endpoints as a header with the key “Authorization”.
Unauthorized User account isn't authorized to access the targeted IDs (applicationFormId, organizationId, or programId). CAS API account access is provisioned at certain scopes and for specific combinations of IDs. IDs are different between environments: an organization will likely have a different organizationId in prelaunch than in production. Retrieve the IDs to which the user account has authorized access by calling the GET /v1/accounts/info endpoint (https://api.liaisonedu.com/reference...etAccountsInfo). Review the original request to ensure that the target IDs (applicationFormId, organizationId, or programId) are among those to which the user account has authorized access.
Unauthorized User account isn't authorized to access that scope of request. CAS API endpoints are scoped by applicationForm, organization, and program. CAS API accounts are provisioned at certain scopes. An organization-level user may not interact with an applicationForm-scoped endpoint (one that only specifies the applicationForm). A program-level user may not interact with applicationForm-scoped or organization-scoped endpoints, and may only interact with program-scoped endpoints (where applicationFormId, organizationId, and programId are all specified). Retrieve the user account information by calling the GET /v1/accounts/info endpoint (https://api.liaisonedu.com/reference...etAccountsInfo). The “userLevel” value in the response to that call indicates what scopes of data the user account is authorized to access. A user account with “association” level access will be able to make a call to any endpoint at any scope. A user account with “institution” or “organization” level access can make calls to endpoints that specify an organization ID in the url string (e.g. GET /v1/applicationForms/{applicationFormId}/organizations/{organizationId}/programs), but cannot make calls to endpoints that only specify an application form ID (e.g. GET /v1/applicationForms/{applicationFormId}/programs). A user account with “program” level access can make calls to endpoints that specify a program ID in the url string (e.g. GET /v1/applicationForms/{applicationFormId}/organizations/{organizationId}/programs/{programId}), but cannot make calls to endpoints that only specify an application form ID (e.g. GET /v1/applicationForms/{applicationFormId}/programs) or an application form ID and an organization ID (e.g. GET /v1/applicationForms/{applicationFormId}/organizations/{organizationId}/programs).

Data Load

Once the CAS API delivers application data to Slate, additional steps are required to configure how that data will be imported into Slate. See Slate’s Knowledge Base for more information. Some common issues that users have encountered are listed below, along with recommended troubleshooting steps that can be followed to identify and resolve the issue.

Issue

Troubleshooting Steps

Application records aren't being created

 

  1. Confirm that the CAS API subscriptions are successfully delivering files to the Slate SFTP.
  2. Confirm that application events have been triggered in the CAS Applicant Portal in the appropriate environment to cause the delivery of files to the Slate SFTP.
  3. Confirm that the Source Format has Remap Active set to Active.
  4. Confirm that the Source Format has an Import Path/Mask setting established that will retrieve files from the Slate SFTP.
  5. Confirm that App: Round is mapped. Application records won't be created in Slate without this mapping.
  6. Review any pre-mapped fields that have been unmapped. Specifically, confirm that the mappings to the Slate-delivered custom fields called CAS/Liaison Application ID and CAS/Liaison Person ID have not been removed.
Incoming records are overwriting each other
  1. Double-check that the CAS/Liaison Person ID and CAS/Liaison Application ID fields are mapped. These fields are pre-mapped in the standard Source Format.
  2. Review your static value round mappings to confirm that incoming application data will behave as you intend.
Not all incoming data is loading into Slate
  1. Confirm that all fields are mapped. Data in fields that aren't mapped won't be loaded.
  2. Confirm that all incoming values are mapped. Unmapped values won't be loaded to Prompt-type fields in Slate.
  3. Double-check the Safe/Unsafe settings on the Source Format. Safe Source Formats won't overwrite existing person-scoped data. Review the Slate documentation for more information.

Document Load

Once the CAS API delivers application documents to Slate, additional steps are required to configure how those documents will be imported into Slate. See Slate’s Knowledge Base for more information. Some common issues that users have encountered are listed below, along with recommended troubleshooting steps that can be followed to identify and resolve the issue.

Issue

Troubleshooting Steps

Documents aren't being loaded to Slate

 

  1. Confirm that the All CAS by Liaison - Applications Source Format is active, Remap Active, and the application and person records for the missing documents have been created in Slate. Documents will only be loaded to existing Slate records.
  2. Confirm that the documents are being delivered to the Slate SFTP's /incoming/liaison/ directory. Only PDF files delivered to that directory will be loaded into Slate as Materials.
  3. Confirm that the documents are being delivered with exactly the filename pattern specified in the documentation. The Slate import process parses the filename for specific elements; files that don't match the file naming convention won't be successfully loaded.
  4. Confirm that the documents were delivered between 2:30 – 10:30 AM ET. Documents will only be imported into Slate hourly between 2:30 – 10:30 AM ET. If a document was delivered at 12 PM ET it won't be loaded to Slate until the following day at 2:30 AM ET.
  5. Confirm that no value has been set for the Source Format's Import Path/Mask field. Review the Slate documentation for more information.
  6. Confirm that the Source Format's value mapping has been completed. Only document type values that are mapped to Slate Material Codes will be loaded.
  7. Confirm that the Force Process Pickup and Force Process Import functions have not been run for this Source Format. Since this standard Source Format is not actually a data feed, these functions will not work.
Notes About Document Load
  • Since the All CAS by Liaison - Documents source format is not actually a data feed, you will not see records appear for this source format, nor will you see Fields to map in the Remap configurations.
  • Only document types that have been mapped to a valid Slate material type will be imported. PDFs associated with unmapped document types will remain in the SFTP directory until they are mapped (and imported) or purged.

For more information, also see the Slate Knowledge Base.

  • Was this article helpful?