University of Lisbon · API Governance Rules
University of Lisbon API Rules
Spectral linting rules defining API design standards and conventions for University of Lisbon.
8 Rules
error 7
warn 1
Rule Categories
ulisboa
Rules
error
ulisboa-operator-declared
Every contract in a university repo must declare who operates the thing it describes.
$.info
error
ulisboa-provenance-declared
An unmarked artifact is credited to the institution as though they published it.
$.info
error
ulisboa-absolute-server-url
servers[] must be absolute. A relative server URL makes host-based operator attribution blind, which is exactly how thirty-six Elsevier Pure contracts were credited to another university in this cohort.
$.servers[*].url
error
ulisboa-server-on-own-domain
An institution-operated contract must be served from the institution's own registrable domain.
$.servers[*].url
error
ulisboa-operation-id
Every operation needs a stable operationId for agent tool generation.
$.paths[*][get,put,post,patch,delete]
error
ulisboa-operation-tagged
Every operation must be tagged so the contract can be split per resource.
$.paths[*][get,put,post,patch,delete]
warn
ulisboa-error-response-documented
FenixEdu ships two incompatible error envelopes and a 500 with a raw Java stack trace. Every operation that can fail must document the failure.
$.paths[*][get,put,post,patch,delete].responses
error
ulisboa-security-declared
Every operation must state its security posture explicitly — an empty array for the anonymous endpoints, the OAuth scheme for the person-scoped ones. Silence is unreadable to an agent.
$.paths[*][get,put,post,patch,delete]
Spectral Ruleset
Work with this as data
Every ruleset here is available over the APIs.io API and to AI agents over MCP.