canonical: https://jentic.com/apis/ucr.edu/ucr-edu

# Ucr Edu UCR SIS Data API

University of California Riverside Student Information Systems Data API. Provides access to student, academic, and institutional data through the Ethos platform. The API exposes 64 endpoints secured with apiKey authentication.

## For AI agents

Programmatically list activestudents, count activestudents. Covers 64 operations with apiKey authentication.

## Scope

Does not handle payments, communications, or crm - use for education only.

## Capabilities

- List ActiveStudents
- Count ActiveStudents
- Get ActiveStudent by ID
- Query and filter UCR SIS Data API records by parameters
- Monitor UCR SIS Data API operational status and events

## Use cases

### Education Operations

Use the UCR SIS Data API to perform education operations programmatically. The API provides 64 endpoints covering core functionality including list activestudents, count activestudents, get activestudent by id.

Example prompt: Call GET `/api/sis-data-api/v1/ethos/active-student/list` to list activestudents

### Automated AcademicCatalog Management

Automate academiccatalog operations by combining multiple UCR SIS Data API endpoints. Agents can count activestudents and then get activestudent by id in a single workflow.

Example prompt: Call GET `/api/sis-data-api/v1/ethos/active-student/count` to count activestudents, then verify the result

### AI Agent Integration via Jentic

AI agents discover and call UCR SIS Data API endpoints through Jentic without managing credentials directly. An agent searches for the required operation by intent, receives the matching endpoint schema, and executes the call with Jentic-managed authentication. This eliminates the need to read API documentation or handle apiKey tokens manually.

Example prompt: Search Jentic for 'list activestudents', load the operation schema, and execute with Jentic-managed credentials

## Key endpoints

| Method | Path | Description |
| --- | --- | --- |
| GET | `/api/sis-data-api/v1/ethos/active-student/list` | List ActiveStudents |
| GET | `/api/sis-data-api/v1/ethos/active-student/count` | Count ActiveStudents |
| GET | `/api/sis-data-api/v1/ethos/active-student/{id}` | Get ActiveStudent by ID |
| GET | `/api/sis-data-api/v1/ethos/active-student/current-filters` | Get current filters for ActiveStudent |
| GET | `/api/sis-data-api/v1/ethos/persons/list` | List Persons |
| GET | `/api/sis-data-api/v1/ethos/persons/select-list` | Get Person Select List |
| GET | `/api/sis-data-api/v1/ethos/persons/{id}` | Get Person by ID |
| GET | `/api/sis-data-api/v1/ethos/persons/net-id-or-sid` | Get Person by NetID or SID |

## Key resources

- **AcademicCatalog** — Operations related to AcademicCatalog
- **AcademicCredential** — Operations related to AcademicCredential
- **AcademicDiscipline** — Operations related to AcademicDiscipline
- **AcademicHonor** — Operations related to AcademicHonor
- **AcademicLevel** — Operations related to AcademicLevel

## Why Jentic

- **Setup:** Wiring the UCR SIS Data API by hand means sending an X-API-Key header on every call, pointing at the UCR gateway host, and matching each Ethos student and person operation to its request shape yourself. Through Jentic you install once, import the UCR SIS Data API from the API Directory, store the API key once, and your agent calls it.
- **Permission scoping:** The UCR SIS Data API exposes read operations over students and persons, so scope your agent to the ones it needs, such as listing active students or reading a person record. You choose the operations it may call, so it is limited to the queries you enable and nothing more.
- **Credential handling:** Your UCR SIS API key is stored once, encrypted, by your own Jentic One instance and injected at execution time. It never enters the agent's prompt, logs, or context.
- **Discovery method:** Agents search Jentic by intent such as 'list active students' or 'look up a person by net id', and Jentic returns the matching UCR SIS Data API operation with its input schema so the agent calls the right endpoint without browsing the reference docs.

## Related APIs

- **Schoology** — Alternative education API
- **Stripe** — Complementary API for broader integration workflows
- **Twilio** — Complementary API for broader integration workflows

## FAQ

### What authentication does the UCR SIS Data API use?

The UCR SIS Data API uses an API key passed in the `X-API-Key` header. Through Jentic, these credentials are stored encrypted in your Jentic One instance and injected at execution time, so raw secrets never enter the agent context.

### Can I list activestudents with the UCR SIS Data API?

Yes. Use the GET `/api/sis-data-api/v1/ethos/active-student/list` endpoint. The API returns structured JSON responses that agents can parse and act on directly.

### What are the rate limits for the UCR SIS Data API?

Rate limits are not specified in the OpenAPI spec. Check the vendor documentation for current limits. Through Jentic, rate limiting is handled automatically with retry logic built into the execution layer.

### How do I list activestudents through Jentic?

Install the Jentic SDK with pip install jentic, authenticate through Jentic One, the self-hosted execution layer, then search for 'list activestudents'. Jentic returns the matching UCR SIS Data API operation with its input schema. Load the schema and execute the call - credentials are injected automatically.

### How many endpoints does the UCR SIS Data API have?

The UCR SIS Data API exposes 64 endpoints covering academiccatalog, academiccredential, academicdiscipline operations.

### Can I limit what my agent is allowed to do with the UCR SIS Data API?

Yes. Because Jentic One is self-hosted, you set the rules that decide which UCR SIS Data API operations your agent may call, so you can permit only read queries like listing active students or reading a person by NetID or SID and withhold everything else. The agent is limited to the operations you enable and cannot reach endpoints you leave off, and the API key stays under your control and is injected at execution rather than exposed to the agent.
