Cornell University website screenshot

Cornell University

Cornell University is a private Ivy League and statutory land-grant research university in Ithaca, New York. It operates no central developer portal, no API gateway and no published API program, and this profile records that plainly. What it does operate, directly and on its own hosts, is a small set of real machine-readable surfaces: the Class Roster API on classes.cornell.edu (public, read-only, version 2.0, maintained behind the scenes by the Office of the University Registrar), the Cornell University Library's self-hosted Blacklight catalog and CUGIR geospatial repository, both of which answer JSON on every route, its own Shibboleth identity provider published as SAML 2.0 metadata and registered with InCommon/eduGAIN, and — through the Cornell Lab of Ornithology — the token-gated eBird API 2.0. Everything else that looks like a Cornell API belongs to somebody else: the events calendar at events.cornell.edu is a Localist tenancy, eCommons is a 4Science-managed DSpace instance, and arXiv, hosted at Cornell for twenty-five years, spun out as an independent nonprofit on 2026-07-01 and is no longer a Cornell surface at all. The Cornell Open Data Initiative specs that once padded this profile described a dining API, a campus-map API and a Cornell Days API that are all dead as of 2026-08-19.

Cornell University publishes 3 APIs on the APIs.io network: Cornell Class Roster API, Library Catalog Search API, and CUGIR — Cornell University Geospatial Information Repository API. Tagged areas include University, Higher Education, Education, Ivy League, and United States.

The Cornell University catalog on APIs.io includes 1 JSON-LD context and 2 Spectral governance rulesets.

Cornell University’s developer surface includes documentation, API reference, support, authentication, and 25 more developer resources.

37.1/100 thin ▬ flat Agent 46/100 agent native Full breakdown ↓
scored 2026-08-20 · rubric v0.12.0
AccessFree⚡ Free to try
6 APIs
UniversityHigher EducationEducationIvy LeagueUnited StatesCourse CatalogLibraryResearch DataGeospatialIdentity Federation

Kin Score

Kin Score Kin Score How this is scored →
scored 2026-08-20 · rubric v0.12.0
Composite quality — 37.1/100 · thin
Contract Quality 4.8 / 21
Developer Ergonomics 5.7 / 17
Access Clarity 8.5 / 17
Operational Transparency 2.9 / 11
Contract Governance 1.0 / 10
Discoverability 6.3 / 9
Regulatory Posture 6.9 / 15
Agent readiness — 46/100 · agent native
Machine-Readable Contract 18 / 18
Agentic Access Contract 10 / 10
Documented Reversibility 6 / 6
MCP Server 0 / 12
Machine-Readable Auth 10 / 10
Idempotency 9 / 9
Stable Error Semantics 8 / 8
Request/Response Examples 7 / 7
Rate-Limit Signaling 7 / 7
Typed Event Surface 0 / 6
Agent Skills 0 / 5
Well-Known Catalog 0 / 4
Consent & Bot Identity 0 / 3
A2A Agent Card 0 / 8
Dry-Run / Simulate Mode 4 / 4
Regulatory Posture applies to this provider. Its tags matched the Education & Research regime, so Regulatory Posture carries 15 points of the composite. If this regime is wrong for your business, say so on your provider repo — the applicability map is public and we will correct it.
The six quality facets above are damped to 85 points between them, because the conditional facet above carries the other 15. That is why each facet's contribution is shown against a damped maximum: raising a quality facet moves the composite by 85% of its nominal weight, not 100%. The full arithmetic is at apis.io/rating/.
Improve this rating by publishing the missing artifacts — every area above can be raised, and the full rubric is at apis.io/rating/. This rating is computed from github.com/api-evangelist/cornell: open an issue to ask a question, or submit a pull request to add artifacts. Want it done for you? Prioritized profiling — $2,500 →

APIs 6

Individual APIs this provider publishes, each with its own machine-readable definition.

Cornell Class Roster API

Public, read-only API (version 2.0) for Cornell Class Roster data: scheduled classes with Course of Study detail, plus configuration lookups for rosters, academic careers, acade...

Cornell University Library Catalog Search API

JSON search over Cornell University Library's catalog. The catalog is the library's own Blacklight deployment; appending .json to any catalog route returns a Solr-backed JSON en...

CUGIR — Cornell University Geospatial Information Repository API

JSON:API search and record retrieval for CUGIR, Cornell University Library's geospatial data and historical map repository, running GeoBlacklight on the library's own infrastruc...

eBird API 2.0

Global bird-observation API run by the Cornell Lab of Ornithology, a unit of Cornell University. Free but token-gated: requests without a valid X-eBirdApiToken return 403. Refer...

eCommons Institutional Repository (DSpace REST + OAI-PMH) — tenant

eCommons is Cornell University Library's institutional repository: Cornell's content, Cornell's DOIs, Cornell's host. The interface is not Cornell's engineering. It runs DSpace ...

Cornell Events Calendar API (Localist) — tenant

The Cornell events calendar at events.cornell.edu answers a live JSON API at /api/2/events, and the data is Cornell's. The platform is Localist (Concept3D): the response headers...

Pricing Plans 1

Published pricing tiers and plan structures.

Cornell Plans Pricing

2 plans

PLANS

Rate Limits 1

Documented rate limits and quota policies.

Cornell Rate Limits

2 limits

RATE LIMITS

FinOps 1

Cost, billing, and metering signals for API financial operations.

Semantic Vocabularies 1

JSON-LD contexts and semantic vocabularies used across these APIs.

Cornell Context

18 classes · 0 properties

JSON-LD

Spectral Rules 2

Spectral governance rulesets for linting and validating these APIs.

Cornell University API Rules

5 rules · 3 warnings 2 info

SPECTRAL

Cornell University API Rules

7 rules · 3 errors 4 warnings

SPECTRAL

JSON Schema 1

Standalone JSON Schema definitions for this provider's data models.

Cornell Class

23 properties

JSON SCHEMA

JSON Structure 1

JSON Structure definitions describing this provider's data shapes.

Cornell Class Structure

14 properties

JSON STRUCTURE

Examples 5

Example request and response payloads for these APIs.

Cugir Record Example

3 fields

EXAMPLE

Security Posture 2

Authentication, domain security, vulnerability disclosure, and trust-center signals.

Cornell Authentication

none/apiKey/saml · 6 schemes

SECURITY

Cornell Domain Security

TLSv1.3 · HSTS · DMARC

SECURITY

Agentic Access 1

Recommended x-agentic-access execution contracts for AI agents.

Cornell Agentic Access

11 operations

11 operations · 0 acting

AGENTIC

Resources

Documentation 2

Reference material describing how the API behaves

Agent Surfaces 1

MCP servers, agent skills, and machine-readable catalogs

Design & Contract 4

Pagination, idempotency, versioning, errors, and events

Build 4

SDKs, sample code, and the tooling you integrate with

Access & Security 2

Authentication, authorization, and security posture

Learn 1

Tutorials, courses, talks, and written guidance

Operate 2

Status, limits, changes, and where to get help

Commercial 4

Pricing, plans, and the legal terms of use

Company 2

The organization behind the API

Other 7

Properties that don't map to a standard resource type

Scroll for all 7

Source (apis.yml)

apis.yml Raw ↑
aid: cornell
name: Cornell University
description: 'Cornell University is a private Ivy League and statutory land-grant research university in Ithaca, New York.
  It operates no central developer portal, no API gateway and no published API program, and this profile records that plainly.
  What it does operate, directly and on its own hosts, is a small set of real machine-readable surfaces: the Class Roster
  API on classes.cornell.edu (public, read-only, version 2.0, maintained behind the scenes by the Office of the University
  Registrar), the Cornell University Library''s self-hosted Blacklight catalog and CUGIR geospatial repository, both of which
  answer JSON on every route, its own Shibboleth identity provider published as SAML 2.0 metadata and registered with InCommon/eduGAIN,
  and — through the Cornell Lab of Ornithology — the token-gated eBird API 2.0. Everything else that looks like a Cornell
  API belongs to somebody else: the events calendar at events.cornell.edu is a Localist tenancy, eCommons is a 4Science-managed
  DSpace instance, and arXiv, hosted at Cornell for twenty-five years, spun out as an independent nonprofit on 2026-07-01
  and is no longer a Cornell surface at all. The Cornell Open Data Initiative specs that once padded this profile described
  a dining API, a campus-map API and a Cornell Days API that are all dead as of 2026-08-19.'
x-type: university
x-category: Private Research University
type: Index
position: Consumer
access: 3rd-Party
accessModel:
  pricing: free
  onboarding: none
  trial: false
  try_now: true
  public: true
  label: Free · No registration for the institution-operated public APIs
  confidence: high
  source:
  - authentication
  - probed
  generated: '2026-08-19'
  method: probed
image: https://kinlane-images.s3.amazonaws.com/shared/apis-json/icons/cornell.png
url: https://raw.githubusercontent.com/api-evangelist/cornell/refs/heads/main/apis.yml
tags:
- University
- Higher Education
- Education
- Ivy League
- United States
- Course Catalog
- Library
- Research Data
- Geospatial
- Identity Federation
created: '2026-06-03'
modified: '2026-08-19'
specificationVersion: '0.23'
apis:
- aid: cornell:class-roster
  name: Cornell Class Roster API
  description: 'Public, read-only API (version 2.0) for Cornell Class Roster data: scheduled classes with Course of Study
    detail, plus configuration lookups for rosters, academic careers, academic groups, class levels and subjects. All methods
    are GET and return JSON or XML. No authentication. The schedule behind it is maintained by the Cornell Office of the University
    Registrar and updated daily; the documentation asks clients to stay under one request per second. This is the one unambiguous,
    institution-engineered public API Cornell operates.'
  humanURL: https://classes.cornell.edu/content/FA26/api-details
  baseURL: https://classes.cornell.edu/api/2.0
  x-operator: institution
  x-operator-evidence: 'classes.cornell.edu is Cornell''s own registrable domain and CNAMEs to classes.ssit.cucloud.net, Cornell''s
    own cloud namespace. Probed 2026-08-19: /config/rosters.json 200 application/json, /search/classes.json?roster=FA26&subject=CS
    200, /config/rosters.xml 200.'
  tags:
  - Course Catalog
  - Class Roster
  - Education
  - Scheduling
  properties:
  - type: OpenAPI
    url: openapi/cornell-class-roster-api-openapi.yml
  - type: Documentation
    url: https://classes.cornell.edu/content/FA26/api-details
  - type: Examples
    url: examples/cornell-search-classes-example.json
  - type: Errors
    url: errors/cornell-errors.yml
  - type: Examples
    url: examples/cornell-class-roster-rosters-example.json
  - type: JSONSchema
    url: json-schema/cornell-class-schema.json
  - type: JSONStructure
    url: json-structure/cornell-class-structure.json
  - type: Vocabulary
    url: vocabulary/cornell-vocabulary.yml
  - type: JSONLD
    url: json-ld/cornell-context.jsonld
- aid: cornell:library-catalog
  name: Cornell University Library Catalog Search API
  description: JSON search over Cornell University Library's catalog. The catalog is the library's own Blacklight deployment;
    appending .json to any catalog route returns a Solr-backed JSON envelope, and an OpenSearch description document is published
    at /catalog/opensearch.xml. Cornell publishes no API reference for it, so the contract in this repo is derived from live
    probes, not from a Cornell-authored spec. Item-level JSON is not offered (406).
  humanURL: https://www.library.cornell.edu/
  baseURL: https://catalog.library.cornell.edu
  x-operator: institution
  x-operator-evidence: 'catalog.library.cornell.edu CNAMEs to blacklight-cornell-prod-1202100003.us-east-1.elb.amazonaws.com,
    an AWS load balancer in Cornell University Library''s own account — self-hosted open-source software, not a vendor tenancy.
    Probed 2026-08-19: /catalog.json 200 application/json, /catalog/opensearch.xml 200. The HTML root returns 202 with an
    empty body to non-browser clients (bot challenge); the JSON routes are unaffected.'
  tags:
  - Library
  - Discovery
  - Blacklight
  - Catalog
  properties:
  - type: OpenAPI
    url: openapi/cornell-library-catalog-api-openapi.yml
  - type: Examples
    url: examples/cornell-library-catalog-search-example.json
  - type: Documentation
    url: https://guides.library.cornell.edu/
- aid: cornell:cugir
  name: CUGIR — Cornell University Geospatial Information Repository API
  description: JSON:API search and record retrieval for CUGIR, Cornell University Library's geospatial data and historical
    map repository, running GeoBlacklight on the library's own infrastructure. Records carry OpenGeoMetadata Aardvark fields.
    Derived from live probes; CUGIR publishes no API reference, and it exposes no OAI-PMH endpoint (/oai returned 404 on 2026-08-19).
  humanURL: https://cugir.library.cornell.edu/
  baseURL: https://cugir.library.cornell.edu
  x-operator: institution
  x-operator-evidence: 'cugir.library.cornell.edu CNAMEs to cugir-app-1492036709.us-east-1.elb.amazonaws.com, an AWS load
    balancer in Cornell University Library''s own account. Probed 2026-08-19: /catalog.json?q=ithaca 200, /catalog/cugir-map-5063364.json
    200 application/json.'
  tags:
  - Geospatial
  - Research Data
  - Open Data
  - GeoBlacklight
  properties:
  - type: OpenAPI
    url: openapi/cugir-geospatial-api-openapi.yml
  - type: Examples
    url: examples/cugir-record-example.json
- aid: cornell:ebird
  name: eBird API 2.0
  description: 'Global bird-observation API run by the Cornell Lab of Ornithology, a unit of Cornell University. Free but
    token-gated: requests without a valid X-eBirdApiToken return 403. Reference documentation is published as a Postman collection
    rather than an OpenAPI, so no contract is saved in this repo — a gated surface with no machine-readable contract is recorded
    as the relationship it is, not as an artifact Cornell published.'
  humanURL: https://documenter.getpostman.com/view/664302/S1ENwy59
  baseURL: https://api.ebird.org/v2
  x-operator: institution
  x-operator-evidence: 'https://ebird.org/about states "eBird is managed by the Cornell Lab of Ornithology" (200, 2026-08-19).
    api.ebird.org is not under cornell.edu, so it is recorded here as an institution surface on an affiliate domain, registered
    in 0-working/university-affiliates.json with evidence. Probed 2026-08-19: /v2/ref/region/list/subnational1/US 403 with
    and without a token — gated, live.'
  tags:
  - Research Data
  - Citizen Science
  - Biodiversity
  - Ornithology
  properties:
  - type: Documentation
    url: https://documenter.getpostman.com/view/664302/S1ENwy59
  - type: Authentication
    url: https://ebird.org/api/keygen
- aid: cornell:ecommons
  name: eCommons Institutional Repository (DSpace REST + OAI-PMH) — tenant
  description: 'eCommons is Cornell University Library''s institutional repository: Cornell''s content, Cornell''s DOIs, Cornell''s
    host. The interface is not Cornell''s engineering. It runs DSpace 8.2 on a 4Science-managed platform, so the REST and
    OAI-PMH contracts belong to DSpace/4Science and are deliberately NOT saved as Cornell OpenAPIs. The relationship is recorded
    because a managed repository is a real institutional fact and one of the few programmable surfaces a university has. OAI-PMH
    Identify and ListMetadataFormats both answer 200 and are the repository''s genuine education-regime conformance evidence.'
  humanURL: https://guides.library.cornell.edu/ecommons/syndication
  baseURL: https://ecommons.cornell.edu/server/api
  x-operator: tenant
  x-operator-evidence: 'ecommons.cornell.edu CNAMEs to cornell-ecommons.eks.prod.4science.cloud — an institution hostname
    on a vendor-managed DSpace platform. The REST root self-reports dspaceVersion "DSpace 8.2". Probed 2026-08-19: /server/api
    200 application/hal+json, /server/oai/request?verb=Identify 200 text/xml.'
  x-vendor: 4Science (DSpace)
  tags:
  - Institutional Repository
  - DSpace
  - OAI-PMH
  - Research Data
  - Library
  properties:
  - type: Documentation
    url: https://guides.library.cornell.edu/ecommons/syndication
  - type: Examples
    url: examples/cornell-ecommons-dspace-root-example.json
  - type: Conformance
    url: conformance/cornell-education-standards-conformance.yml
- aid: cornell:events-calendar
  name: Cornell Events Calendar API (Localist) — tenant
  description: 'The Cornell events calendar at events.cornell.edu answers a live JSON API at /api/2/events, and the data is
    Cornell''s. The platform is Localist (Concept3D): the response headers carry x-slzr-platform: cornell, and the /api/2
    shape is Localist''s product API, identical across every Localist customer. The contract therefore belongs to Localist
    and is not saved here — this is the exact misattribution class the university pipeline exists to prevent. The 2026-06
    profile of this repo scored a copy of it as "Cornell University events API".'
  humanURL: https://events.cornell.edu/
  baseURL: https://events.cornell.edu/api/2
  x-operator: tenant
  x-operator-evidence: 'Probed 2026-08-19: GET https://events.cornell.edu/api/2/events 200 application/json with response
    header `x-slzr-platform: cornell` — Localist''s platform header ("slzr" = Schedulizer, Localist''s origin). Institution
    hostname, vendor platform and vendor contract.'
  x-vendor: Localist (Concept3D)
  tags:
  - Event
  - Campus Life
  - Calendar
  tags_raw:
  - Events
  - Campus Life
  - Calendar
  properties:
  - type: Documentation
    url: https://events.cornell.edu/
common:
- type: Website
  url: https://www.cornell.edu/
- type: Documentation
  url: https://classes.cornell.edu/content/FA26/api-details
- type: APIReference
  url: https://classes.cornell.edu/content/FA26/api-details
- type: GitHubOrganization
  url: https://github.com/cul
- type: GitHubOrganization
  url: https://github.com/cornell-data
- type: CourseCatalog
  url: https://classes.cornell.edu/
- type: LibraryCatalog
  url: https://catalog.library.cornell.edu/catalog.json?q=cornell&search_field=all_fields
- type: ResearchRepository
  url: https://ecommons.cornell.edu/
- type: OpenData
  url: https://cugir.library.cornell.edu/
- type: IdentityFederation
  url: https://shibidp.cit.cornell.edu/idp/shibboleth
- type: IdentityFederation
  url: https://mdq.incommon.org/entities/https:%2F%2Fshibidp.cit.cornell.edu%2Fidp%2Fshibboleth
- type: ResearchComputing
  url: https://www.cac.cornell.edu/services/
- type: AIPolicy
  url: https://it.cornell.edu/ai/ai-guidelines
- type: AITooling
  url: https://it.cornell.edu/tags/ai
- type: PrivacyPolicy
  url: https://privacy.cornell.edu/university-privacy-statement
- type: TermsOfService
  url: https://policy.cornell.edu/
- type: Support
  url: https://it.cornell.edu/support
- type: LinkedIn
  url: https://www.linkedin.com/school/cornell-university/
- type: Conformance
  url: conformance/cornell-education-standards-conformance.yml
- type: Errors
  url: errors/cornell-errors.yml
- type: AgenticAccess
  url: agentic-access/cornell-agentic-access.yml
- type: DomainSecurity
  url: security/cornell-domain-security.yml
- type: Authentication
  url: authentication/cornell-authentication.yml
- type: Rules
  url: rules/cornell-rules.yml
- type: Rules
  url: rules/cornell-jsonschema-spectral-rules.yml
- type: Plans
  url: plans/cornell-plans-pricing.yml
- type: RateLimits
  url: rate-limits/cornell-rate-limits.yml
- type: FinOps
  url: finops/cornell-finops.yml
- type: Review
  url: review.yml
x-coverage:
  state: covered
  reason: institution_operated_surfaces_verified
  detail: 'Cornell operates four public machine-readable surfaces that were verified live on 2026-08-19 — the Class Roster
    API, the Library''s Blacklight catalog, CUGIR, and (through the Cornell Lab of Ornithology, on an affiliate domain) the
    token-gated eBird API 2.0 — plus its own Shibboleth/InCommon SAML metadata. It publishes no developer portal, no API gateway,
    no terms of service for API use and no OpenAPI of its own; the only OpenAPI ever written for a Cornell surface was written
    by the student Cornell Open Data Initiative. Two further surfaces are tenant relationships on vendor platforms (eCommons
    on 4Science-managed DSpace, the events calendar on Localist) and their contracts are not credited to Cornell. Three CODI-described
    surfaces are dead and were removed. arXiv was removed entirely: it left Cornell on 2026-07-01.'
  evidence:
  - url: https://classes.cornell.edu/api/2.0/config/rosters.json
    status: 200
  - url: https://classes.cornell.edu/api/2.0/search/classes.json?roster=FA26&subject=CS
    status: 200
  - url: https://catalog.library.cornell.edu/catalog.json?q=cornell&search_field=all_fields
    status: 200
  - url: https://cugir.library.cornell.edu/catalog/cugir-map-5063364.json
    status: 200
  - url: https://ecommons.cornell.edu/server/oai/request?verb=Identify
    status: 200
  - url: https://shibidp.cit.cornell.edu/idp/shibboleth
    status: 200
  - url: https://mdq.incommon.org/entities/https:%2F%2Fshibidp.cit.cornell.edu%2Fidp%2Fshibboleth
    status: 200
  - url: https://events.cornell.edu/api/2/events
    status: 200
    note: live, but Localist's contract — tenant
  - url: https://api.ebird.org/v2/ref/region/list/subnational1/US
    status: 403
    note: gated, not dead — free token required
  - url: https://now.dining.cornell.edu/api/1.0/dining/eateries.json
    status: 200
    note: soft-200 — every path returns the same 63KB Angular shell; the Cornell Dining API is dead
  - url: https://schedule.cornelldays.cornell.edu/api/itin/cornelldays/events
    status: 301
    note: redirects to admissions.cornell.edu — the Cornell Days API is dead
  - url: https://www.cornell.edu/about/maps/overlay-items.cfm?layer=TCAT
    status: 404
    note: campus map API dead; locations.cfm returns 200 with a zero-length body
  - url: https://catalog.library.cornell.edu/
    status: 202
    note: HTML root bot-challenged (empty body); the .json routes answer normally
  - url: https://vivo.cornell.edu/
    status: 0
    note: connection reset / timeout — Cornell's VIVO scholar profiles surface is gone; scholars.cornell.edu does not resolve
  probed: '2026-08-19'
maintainers:
- FN: Kin Lane
  email: kin@apievangelist.com