# 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>


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://processmaker.gitbook.io/higher-ed/technical-documentation/student-information-system/banner/integration-via-ellucian-ethos-recommended.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
