Install Jentic One Beta
Jentic One is a self-hosted execution layer for AI agents. It lets your agent call the IESDE, or any other public or private API you need. You set the rules, the agent never sees your credentials, and every call is logged.
Two steps, two machines. Install the instance in a safe environment, then register your agent from wherever it runs.
Step 1: Jentic One Host machine
# On the machine that will host your Jentic One instance:
curl -fsSL "https://jentic.com/install.sh?src=apis&api=%2Fapis%2Fportalava.com.br%2Fportalava" | shStep 2: Agent machine
# On the machine where your agent runs (keep this separate from the instance):
curl -fsSL "https://jentic.com/install.sh?src=apis&api=%2Fapis%2Fportalava.com.br%2Fportalava" | sh
jentic register # connects your agent to your Jentic One instanceJentic One is in public beta. The setup above keeps your agent separate from the instance, which is what you want before using real credentials: an agent running as the same OS user as Jentic One can read its stored keys directly. Just evaluating? A single local install is fine to start. See the secure deployment guide for the tiers.
What an agent can do with IESDE API.
List IESDE courses with their CursoID, status, and certificate description, paginated with pagina and registros_pagina
Retrieve the curriculum grades and the disciplines inside a grade by GradeID
Pull the question bank for disciplines, including the question format and statement text
Fetch the answer alternatives for discipline questions, including which alternative is correct
GET STARTED
Get the textbook PDFs and video lesson player linked to a discipline
List student enrolments with MatriculaID, LoginID, status, and registration date
Patterns agents use IESDE API for, with concrete tasks.
★ Agent-assisted course lookups through Jentic
An education coordinator asks their agent which IESDE courses are active and which disciplines they contain. Through Jentic the agent finds the courses and disciplines operations by intent, sends the digest credentials and EAD-API-KEY header that your own instance holds, and pages through results with pagina and registros_pagina. The agent replies with course names and discipline lists without anyone wiring digest authentication by hand.
Call POST /getCursos/format/json with pagina 1 and registros_pagina 50, then call POST /getDisciplinas/format/json with a GradeID to list the disciplines for that grade
Building practice quizzes from the question bank
A tutoring tool wants to generate practice tests for students on an IESDE discipline. The question bank operation returns each question's QuestaoID, format such as Objetiva, and statement, and the alternatives operation returns the answer texts with the Correta marker. Joining the two on QuestaoID gives a ready quiz with answer keys.
Call POST /getBancoQuestoesDisciplinas/format/json and POST /getAlternativasDisciplina/format/json, join the results on QuestaoID, and assemble a ten-question quiz with its answer key
Enrolment status reporting
A partner school needs a weekly view of who is enrolled and whether each enrolment is still active. The enrolments operation returns MatriculaID, LoginID, Situacao (A for active), and DtCadastro for each record, paginated, so a report can count new and active enrolments over time.
Page through POST /getMatriculas/format/json with registros_pagina 100 and count the enrolments whose Situacao is A
Delivering course materials to students
A student portal links each discipline to its reading and video content. The PDFs operation lists textbook references with DisciplinaID, LivroDisciplinaID, and a description, while separate operations return a PDF and the video lesson player, so the portal can surface the right material next to each discipline.
Call POST /getPdfsDisciplina/format/json and list each LivroDisciplinaID with its Descricao for discipline 103101
10 endpoints — the iesde api exposes the courses and learning content of the iesde distance-learning (ead) web service on portalava.
METHOD
PATH
DESCRIPTION
/getCursos/format/json
List courses
/getGrades/format/json
List curriculum grades
/getDisciplinas/format/json
List disciplines by GradeID
/getBancoQuestoesDisciplinas/format/json
Get discipline question bank
/getAlternativasDisciplina/format/json
Get question answer alternatives
/getMatriculas/format/json
List student enrolments
/cadastro/format/json
Submit an enrolment
/getCursos/format/json
List courses
/getGrades/format/json
List curriculum grades
/getDisciplinas/format/json
List disciplines by GradeID
/getBancoQuestoesDisciplinas/format/json
Get discipline question bank
/getAlternativasDisciplina/format/json
Get question answer alternatives
/getMatriculas/format/json
List student enrolments
/cadastro/format/json
Submit an enrolment
What agents get from Jentic-routed access to this vendor.
Setup
Wiring IESDE by hand means implementing HTTP Digest authentication, adding the EAD-API-KEY header to every POST, and working out which format/json route returns which entity. Through Jentic you install once, import IESDE from the API Directory, store the credentials once, and your agent calls it.
Permission scoping
IESDE routes carry no resource ids in the URL path, so rules bound which operations your agent may call rather than which course or student. You choose the operations it may call, so the enrolment submission at /cadastro/format/json is not included unless you add it.
Credential isolation
Your IESDE digest credentials and EAD-API-KEY are stored once, encrypted, by your own Jentic One instance and injected at execution time. They never enter the agent's prompt, logs, or context.
Intent-based discovery
Agents search Jentic by intent such as 'list courses' or 'get the question bank for a discipline', and Jentic returns the matching IESDE operation with its input schema, so the agent does not need to decode the Portuguese route names.
Alternatives and complements available in the Jentic catalogue.
Specific to using IESDE API through Jentic.
What authentication does the IESDE API use?
Per its OpenAPI spec, the IESDE web service uses HTTP Digest authentication (the DigestAuth scheme), and each operation also declares an EAD-API-KEY request header. Through Jentic both the digest credentials and the EAD-API-KEY value are stored by your own instance and attached when the agent calls an operation.
Can I list the disciplines in a course grade with the IESDE API?
Yes. POST /getGrades/format/json returns the curriculum grades, and POST /getDisciplinas/format/json takes a GradeID query parameter and returns each discipline's DisciplinaID, GradeID, CursoID, and name. From there, the PDFs and video lesson operations return the material linked to a discipline.
What are the rate limits for the IESDE API?
The OpenAPI spec does not specify rate limits for the IESDE web service. Check with IESDE through the portal at https://ead.portalava.com.br for current limits, and use the pagina and registros_pagina parameters on the course and enrolment lists to keep each response small.
Is there an IESDE MCP server?
You don't need an MCP server to give your agent IESDE. Jentic connects it directly from the API Directory: import it, store your credential once, and your agent calls the course, discipline, and enrolment operations it needs, discovered on demand instead of loaded into its context up front.
Can I limit what my agent is allowed to do with the IESDE API?
Yes. For example, allow only POST /getCursos/format/json and POST /getDisciplinas/format/json, and the agent can browse courses but cannot submit an enrolment through POST /cadastro/format/json or pull enrolment records. Every call it makes is logged so you can review what it read.
How do I pull a discipline question bank through Jentic?
Search Jentic for 'get the question bank for a discipline', load POST /getBancoQuestoesDisciplinas/format/json, and execute it; then load POST /getAlternativasDisciplina/format/json to fetch the matching answer alternatives by QuestaoID. To run it on your own infrastructure, install Jentic One from its GitHub repo.
Know of an official OpenAPI document? Contribute it →
For Agents
Read IESDE distance-learning courses, grades, disciplines, question banks, PDFs, and video lessons, list student enrolments, and submit a new enrolment.
Use for: List all active IESDE courses, Get the disciplines inside a specific curriculum grade, Retrieve the question bank for the course disciplines, Find the correct answer alternatives for discipline questions
Not supported: Does not handle grading, payments, or live classes. Use for reading IESDE course content and managing enrolments only.
The IESDE API exposes the courses and learning content of the IESDE distance-learning (EAD) web service on portalava.com.br. It returns courses, curriculum grades, the disciplines inside a grade, question banks with their answer alternatives, course PDFs and textbook references, and the video lesson player for a discipline. It also lists student enrolments (matrículas) with their status and registration date, and accepts new enrolment requests. Every operation is a POST under the web_service path that returns JSON.
This API is usable in Jentic One now. Its AI-readiness score against Jentic's framework shows where it stands today and where improvements would make it even easier for agents to use.
Base layer of spec validity and structural soundness.
Aggregated quality score from linter diagnostics, weighted by severity.
Percentage of `$ref` references that resolve successfully.
Checks whether the API description parses successfully and conforms to its declared specification (e.g., OpenAPI).
Structural correctness score based on schema issues using logarithmic dampening.
Clarity, completeness, and ingestion readiness for developers and tooling.
How richly the API is illustrated with examples.
Percentage of examples that conform to their schemas.
Percentage of operations with complete response definitions (success, client error, server error).
Health of API ingestion, bundling, and resolution within Jentic pipelines.
Semantic breadth, depth, and agent comprehension for AI systems.
Coverage of descriptions across API elements.
Coverage of RFC 9457 Problem Details for error responses.
Coverage, uniqueness, and casing consistency of operationIds for AI inference.
Coverage of summaries across operations/tags/info.
Functional utility, complexity comfort, and AI orchestration readiness.
Agent comfort level based on API operational and structural complexity.
Trust, risk posture, and security compliance.
Average quality of security schemes based on authentication method strength (weakest link for OAuth2).
Findability, semantic richness, and reasoning readiness.
Clarity and depth of descriptions across API elements.
Score it yourself
Every API in the directory is allowlisted, so you can re-score it with no key required.
npx @jentic/api-scorecard-cli score <openapi-url>