# Integration via Ellucian Ethos (Recommended)

Banner provides an extensive selection of APIs to enable seamless integrations with third-party systems. These APIs allow external systems to communicate effectively with Banner, promoting efficient data exchange and enhancements in functionality.&#x20;

This section will give a thorough overview of all the APIs used within the TCE solution process, outlining their purposes, functions, and contributions to the overall system integration.&#x20;

### Authentication

The following settings/credentials are required to access and utilize the Banner API. These credentials ensure secure and authorized interaction with the API, enabling seamless data exchange and integration with third-party systems (here, ProcessMaker TCE).

<table data-header-hidden><thead><tr><th width="129"></th><th></th></tr></thead><tbody><tr><td><strong>Server URL</strong></td><td><p>The regional server URL. Typically, one of the following or a custom URL:</p><ul><li><a href="https://integrate.elluciancloud.com">https://integrate.elluciancloud.com</a> — Ethos Integration API U.S.</li><li><a href="https://integrate.elluciancloud.ca">https://integrate.elluciancloud.ca</a> — Ethos Integration API Canada</li><li><a href="https://integrate.elluciancloud.ie">https://integrate.elluciancloud.ie</a> — Ethos Integration API Europe</li><li><a href="https://integrate.elluciancloud.com.au">https://integrate.elluciancloud.com.au</a> — Ethos Integration API Asia-Pacific</li><li>Custom URL</li></ul></td></tr><tr><td><strong>API Token</strong></td><td>ProcessMaker's integration components utilize the Ellucian Ethos API token to retrieve the JWT token that facilitates API authentication.</td></tr></tbody></table>

{% hint style="info" %}
Please refer to your Ellucian Banner/Ethos administrator to gather the above information.
{% endhint %}

### Required APIs

This section lists all APIs utilized by ProcessMaker’s TCE solution. Please confirm that the API Token provides access to all the API endpoints below.

#### **Student Management**

<table><thead><tr><th width="111">Method/Type</th><th width="232">Endpoint</th><th>Purpose</th></tr></thead><tbody><tr><td>GET</td><td>/api/students</td><td>Retrieve a list of students by specific criteria (e.g., Student Type)</td></tr><tr><td>GET</td><td>/api/students/{id}</td><td>Retrieve a student’s details by Banner ID</td></tr><tr><td>GET</td><td>/api/persons</td><td>Retrieve a list of person entities by specific criteria (e.g. Banner ID)</td></tr><tr><td>GET</td><td>/api/persons/{id}</td><td>Retrieve a person’s details by Banner ID</td></tr><tr><td>GET</td><td>/api/student-types</td><td>Retrieve the list of student types registered in Banner</td></tr><tr><td>GET</td><td>/api/student-classifications</td><td>Retrieve the list of student classifications registered in Banner</td></tr><tr><td>GET</td><td>/api/academic-levels</td><td>Retrieve the list of academic  levels registered in Banner</td></tr><tr><td>GET</td><td>/api/administrative-periods</td><td>Retrieve the list of administrative periods registered in Banner</td></tr></tbody></table>

#### **Course Management**

<table><thead><tr><th width="118">Method/Type</th><th width="204">Endpoint</th><th>Purpose</th></tr></thead><tbody><tr><td>GET</td><td>/api/courses</td><td>Retrieve a list of courses based on search criteria (e.g., course title)</td></tr><tr><td>GET</td><td>/api/course-statuses</td><td>Retrieve the list of course statuses registered in Banner</td></tr><tr><td>GET</td><td>/api/subjects</td><td>Retrieve a list of subjects based on search criteria (e.g., abbreviation)</td></tr><tr><td>GET</td><td>/api/subjects/{id}</td><td>Retrieve the subject related to a particular course</td></tr><tr><td>GET</td><td>/api/course-title-types</td><td>Retrieve the list of course statuses registered in Banner</td></tr></tbody></table>

#### **Course Equivalency**

<table><thead><tr><th width="122">Method/Type</th><th>Endpoint</th><th>Purpose</th></tr></thead><tbody><tr><td>GET</td><td>/api/level-codes</td><td>Retrieve a list of a student’s level codes</td></tr><tr><td>GET</td><td>/api/source-background-institution-codes</td><td>Retrieve codes assigned to an external institution</td></tr><tr><td>POST</td><td>/qapi/transfer-course-articulation</td><td>Retrieve the source equivalency</td></tr></tbody></table>

#### **Course Articulation**

<table><thead><tr><th width="118">Method/Type</th><th width="270">Endpoint</th><th>Purpose</th></tr></thead><tbody><tr><td>GET</td><td>/api/term-codes</td><td>Retrieve the list of codes related to a particular term</td></tr><tr><td>GET</td><td>/api/transfer-institution-number</td><td>Evaluate if the transfer institution number is registered for a particular student</td></tr><tr><td>GET</td><td>/api/transfer-attendance-period</td><td>Evaluate if the attendance period is registered for a particular student </td></tr><tr><td>POST</td><td>/api/transfer-maintenance</td><td>Register a record when the transfer institution and the attendance period are not registered for a particular user</td></tr><tr><td>POST</td><td>/qapi/transfer-course-detail-maintenance</td><td>Evaluate if there is an existing articulation for a particular external course and student</td></tr><tr><td>POST</td><td>/qapi/transfer-equivalent-course-maintenance</td><td>Evaluate if there is an existing articulation for a particular internal course and student</td></tr><tr><td>POST</td><td>/api/transfer-course-detail-maintenance</td><td>Register an articulation for a particular external course and student</td></tr><tr><td>POST</td><td>/api/transfer-equivalent-course-maintenance</td><td>Register an articulation for a particular internal course and student</td></tr></tbody></table>

## Checklist

The following checklist includes all the information required and actions to be taken to set up the ProcessMaker TCE/Ellucian Banner integration.

### Option A — Ellucian Banner with Ethos

* [ ] Provide Ethos (Banner) API Token — The API token is required to retrieve an API/user-specific JWT token.
* [ ] Provide API/Server URL —  The region-specific or custom API URL.&#x20;
* [ ] Ensure the API Token provides access to all required endpoints listed in this document.

{% hint style="info" %}
Please refer to your Ellucian Banner/Ethos administrator to gather the above information.
{% endhint %}

### SSO (optional)

The required SSO parameters depend highly on the single sign-on provider used. Please refer to the ProcessMaker online documentation for SSO at <https://docs.processmaker.com/docs/sso-settings>.&#x20;

The online documentation contains a section for all relevant services:

* Atlassian → <https://docs.processmaker.com/v1/docs/sso-atlassian-settings>&#x20;
* Auth0 → <https://docs.processmaker.com/v1/docs/sso-auth0-settings>&#x20;
* Facebook → <https://docs.processmaker.com/v1/docs/sso-facebook-settings>&#x20;
* GitHub → <https://docs.processmaker.com/v1/docs/sso-github-settings>&#x20;
* Google → <https://docs.processmaker.com/v1/docs/sso-google-settings>&#x20;
* Keycloak → <https://docs.processmaker.com/v1/docs/sso-keycloak-settings>&#x20;
* Microsoft → <https://docs.processmaker.com/v1/docs/sso-microsoft-settings>&#x20;
* SAML → <https://docs.processmaker.com/v1/docs/sso-saml-settings>
