Dartmouth College website screenshot

Dartmouth College

Dartmouth College is a private Ivy League research university in Hanover, New Hampshire. Its programmable footprint is small, mostly gated, and largely operated by vendors on Dartmouth's behalf — the ordinary shape for a research university, which is a federation of buyers rather than an API producer. Exactly one institution-operated interface is open to the public without credentials: the JSON backend of Dartmouth Class Search (courses.dartmouth.edu), which returns the full timetable of class meetings keyless and which Dartmouth does not document as an API. Everything else Dartmouth itself runs is behind authentication: DartAPI at api.dartmouth.edu answers 401 on every resource path and issues JWTs only against a hand-issued API key tied to a Dartmouth Service Account, its developer portal at developer.dartmouth.edu redirects to Microsoft Entra SAML so not one reference page is readable from outside, and the Dartmouth Chat AI API requires a DARTMOUTH_API_KEY. The one genuinely open machine-readable artifact Dartmouth publishes is its SAML identity-federation metadata in InCommon. The research and data surfaces — Dartmouth Open Data on ArcGIS Hub, Dartmouth Digital Commons on bepress/Elsevier, Dartmouth Dataverse — are Dartmouth's data on someone else's contract and are recorded here as tenant relationships, not as Dartmouth engineering.

Dartmouth College publishes 1 API on the APIs.io network: Dartmouth Class Search API. Tagged areas include University, Higher Education, Education, United States, and Ivy League.

The Dartmouth College catalog on APIs.io includes 1 Spectral governance ruleset.

Dartmouth College’s developer surface includes GitHub presence, support, engineering blog, authentication, and 22 more developer resources.

43.9/100 developing ▬ flat Agent 23/100 agent aware saas Full breakdown ↓
scored 2026-09-08 · rubric v0.20.0
AccessFree
1 APIs
UniversityHigher EducationEducationUnited StatesIvy LeaguePrivate Research UniversityCourse CatalogIdentity FederationResearch DataOpen DataArtificial Intelligence

Kin Score

Kin Score Kin Score How this is scored →
scored 2026-09-08 · rubric v0.20.0
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.
Create-or-Update Ergonomics applies to this provider. This API accepts writes, so it carries 10 points of the composite. It is scored from the published contracts themselves: whether a caller can create-or-update in one call, whether the write accepts a key the caller already holds, and whether the response says which branch ran. Without that, every write needs a search-and-branch in front of it, and the first time that check is skipped a duplicate record is created. Scored against the observed mean rather than raw — a provider at the catalog average is unchanged by this facet, not penalised by it.
The six quality facets above are damped to 75 points between them, because the conditional facet above carries the other 25. That is why each facet's contribution is shown against a damped maximum: raising a quality facet moves the composite by 75% 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/. Every facet and dimension name above is a link: it opens that measurement's own page — what it means, the exact checks that feed it, how the whole catalog distributes on it, and the providers at the top of it. This rating is computed from github.com/api-evangelist/dartmouth: open an issue to ask a question, or submit a pull request to add artifacts. Submit an artifact on GitHub — free → Manage your own listing — the Influence plan, $499/mo →

APIs 7

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

Dartmouth Class Search API

The JSON backend of Dartmouth Class Search, the institution's public timetable of class meetings. Keyless: an unauthenticated POST returned 1393 sections for term 202609 on 2026...

DartAPI

Dartmouth's institutional API platform, serving resource APIs such as People (directory identity) and Nextgen class schedules. Live and institution-operated: every resource path...

Dartmouth Chat AI API

An OpenAI- and Anthropic-compatible API over large language, embedding and reranking models running on Dartmouth's own research-computing infrastructure, plus third-party cloud ...

Dartmouth Identity Federation (InCommon)

Dartmouth's SAML identity provider, registered in the InCommon federation under entityID urn:mace:incommon:dartmouth.edu and retrievable as machine-readable metadata over the In...

Dartmouth Open Data (ArcGIS Hub tenant)

Dartmouth's open-data portal, a tenant site on Esri's ArcGIS Hub. The data and the catalog are Dartmouth's; the search API behind it is Esri's Hub Search API on the shared host ...

Dartmouth Digital Commons (bepress/Elsevier tenant)

Dartmouth's institutional repository for scholarly, research and educational output, running on bepress/Elsevier Digital Commons under a Dartmouth subdomain. Its OAI-PMH 2.0 end...

Dartmouth Dataverse

Dartmouth's research-data repository, a Dataverse 6.11 deployment on Dartmouth's own host. The native Dataverse API answers unauthenticated — /api/info/version returns 200 with ...

Scroll for all 7

Open Collections 1

Open, tool-agnostic API collections (OpenAPI-derived and Bruno).

API Collection

OPEN COLLECTION

Pricing Plans 1

Published pricing tiers and plan structures.

Rate Limits 1

Documented rate limits and quota policies.

Dartmouth Rate Limits

1 limits

RATE LIMITS

FinOps 1

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

Spectral Rules 1

Spectral governance rulesets for linting and validating these APIs.

Dartmouth College API Rules

7 rules · 5 errors 2 warnings

SPECTRAL

JSON Schema 1

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

Dartmouth Class Search response

3 properties

JSON SCHEMA

Examples 1

Example request and response payloads for these APIs.

Security Posture 2

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

Dartmouth Authentication

0 schemes

SECURITY

Dartmouth Domain Security

TLSv1.2 · HSTS · DMARC

SECURITY

Resources

Get Started 1

Portal, sign-up, and the first successful call

Design & Contract 2

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 3

Pricing, plans, and the legal terms of use

Company 4

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: dartmouth
name: Dartmouth College
x-type: university
x-category: Private Research University
description: 'Dartmouth College is a private Ivy League research university in Hanover, New Hampshire. Its programmable footprint
  is small, mostly gated, and largely operated by vendors on Dartmouth''s behalf — the ordinary shape for a research university,
  which is a federation of buyers rather than an API producer. Exactly one institution-operated interface is open to the public
  without credentials: the JSON backend of Dartmouth Class Search (courses.dartmouth.edu), which returns the full timetable
  of class meetings keyless and which Dartmouth does not document as an API. Everything else Dartmouth itself runs is behind
  authentication: DartAPI at api.dartmouth.edu answers 401 on every resource path and issues JWTs only against a hand-issued
  API key tied to a Dartmouth Service Account, its developer portal at developer.dartmouth.edu redirects to Microsoft Entra
  SAML so not one reference page is readable from outside, and the Dartmouth Chat AI API requires a DARTMOUTH_API_KEY. The
  one genuinely open machine-readable artifact Dartmouth publishes is its SAML identity-federation metadata in InCommon. The
  research and data surfaces — Dartmouth Open Data on ArcGIS Hub, Dartmouth Digital Commons on bepress/Elsevier, Dartmouth
  Dataverse — are Dartmouth''s data on someone else''s contract and are recorded here as tenant relationships, not as Dartmouth
  engineering.'
type: Index
x-operator-summary:
  institution: 4
  tenant: 3
  vendor: 0
  placeholder: 0
deliveryModel:
  model: saas
  open_source: false
  commercial: false
  callable_host: true
  label: Institution-hosted service · mostly credentialed
  confidence: high
  source:
  - probes
  generated: '2026-08-30'
  method: probed
accessModel:
  pricing: free
  onboarding: manual
  trial: false
  try_now: false
  public: false
  label: Free · affiliation-gated except one keyless surface
  confidence: high
  source:
  - probes
  generated: '2026-08-30'
  method: probed
position: Consuming
access: 3rd-Party
image: https://kinlane-images.s3.amazonaws.com/shared/apis-json/icons/dartmouth.png
url: https://raw.githubusercontent.com/api-evangelist/dartmouth/refs/heads/main/apis.yml
tags:
- University
- Higher Education
- Education
- United States
- Ivy League
- Private Research University
- Course Catalog
- Identity Federation
- Research Data
- Open Data
- Artificial Intelligence
created: '2026-06-03'
modified: '2026-08-30'
specificationVersion: '0.23'
apis:
- aid: dartmouth:class-search
  name: Dartmouth Class Search API
  x-operator: institution
  description: 'The JSON backend of Dartmouth Class Search, the institution''s public timetable of class meetings. Keyless:
    an unauthenticated POST returned 1393 sections for term 202609 on 2026-08-30. Two routes — search and details — selected
    by query parameter, with a JSON criteria body. Dartmouth operates it on its own host and does not publish it as an API,
    document it, or offer any stability commitment; the OpenAPI here is a probed description, not a contract Dartmouth authored.
    Errors arrive inside HTTP 200 as a `fatal` member.'
  humanURL: https://courses.dartmouth.edu/
  baseURL: https://courses.dartmouth.edu
  tags:
  - Course Catalog
  - Timetable
  - Registrar
  - Open
  properties:
  - type: OpenAPI
    url: openapi/dartmouth-class-search-api-openapi.yml
  - type: JSONSchema
    url: json-schema/dartmouth-class-search-response-schema.json
  - type: Examples
    url: examples/dartmouth-class-search-example.json
  - type: Rules
    url: rules/dartmouth-class-search-rules.yml
  - type: Vocabulary
    url: vocabulary/dartmouth-vocabulary.yml
  - type: Authentication
    url: authentication/dartmouth-authentication.yml
  - type: Errors
    url: errors/dartmouth-errors.yml
  - type: Documentation
    url: https://registrar.dartmouth.edu/
- aid: dartmouth:dartapi
  name: DartAPI
  x-operator: institution
  description: 'Dartmouth''s institutional API platform, serving resource APIs such as People (directory identity) and Nextgen
    class schedules. Live and institution-operated: every resource path on api.dartmouth.edu returns {"message":"Unauthorized"}
    with HTTP 401, and POST /api/jwt exchanges a hand-issued API key for a bearer JWT (a GET returns 405, confirming it exists).
    Access requires a Dartmouth Service Account requested through the Help Desk. The reference documentation at developer.dartmouth.edu
    redirects to Microsoft Entra SAML, so no endpoint inventory is readable from outside the institution and none is claimed
    here.'
  humanURL: https://developer.dartmouth.edu/
  baseURL: https://api.dartmouth.edu/api/
  tags:
  - Identity
  - Directory
  - People
  - Class Schedules
  - Gated
  properties:
  - type: Documentation
    url: https://developer.dartmouth.edu/
  - type: Authentication
    url: authentication/dartmouth-authentication.yml
  - type: SignIn
    url: https://login.dartmouth.edu/cas/login
  - type: Support
    url: https://services.dartmouth.edu/TDClient/1806/Portal/Home/
- aid: dartmouth:chat-ai
  name: Dartmouth Chat AI API
  x-operator: institution
  description: 'An OpenAI- and Anthropic-compatible API over large language, embedding and reranking models running on Dartmouth''s
    own research-computing infrastructure, plus third-party cloud models the institution brokers. Base URLs are published
    by Dartmouth''s own client library: text generation at api.dartmouth.edu/api/ai/tgi/, embeddings and reranking at api.dartmouth.edu/api/ai/tei/,
    model listing at api.dartmouth.edu/api/ai/models/, and cloud models at chat.dartmouth.edu/api/. All return 401 without
    a DARTMOUTH_API_KEY. No OpenAPI is published — chat.dartmouth.edu/openapi.json returns the Open WebUI single-page shell
    with content-type text/html, a soft 404, and is deliberately not recorded as a specification.'
  humanURL: https://rc.dartmouth.edu/ai/online-resources/using-the-api/
  baseURL: https://api.dartmouth.edu/api/ai/
  tags:
  - Artificial Intelligence
  - LLM
  - Embeddings
  - OpenAI-Compatible
  - Research Computing
  - Gated
  properties:
  - type: Documentation
    url: https://rc.dartmouth.edu/ai/online-resources/using-the-api/
  - type: GitHub
    url: https://github.com/dartmouth/langchain-dartmouth
  - type: SDKs
    url: https://pypi.org/project/langchain-dartmouth/
  - type: Authentication
    url: authentication/dartmouth-authentication.yml
  - type: AIPolicy
    url: https://rc.dartmouth.edu/ai/online-resources/policies-bias-responsible-use/
- aid: dartmouth:identity-federation
  name: Dartmouth Identity Federation (InCommon)
  x-operator: institution
  description: Dartmouth's SAML identity provider, registered in the InCommon federation under entityID urn:mace:incommon:dartmouth.edu
    and retrievable as machine-readable metadata over the InCommon MDQ protocol. The document declares SAML 1.1 and SAML 2.0
    support, an AttributeAuthorityDescriptor, and SingleSignOnService endpoints on login2.dartmouth.edu. Institution-operated
    by definition and the one open machine-readable artifact Dartmouth itself publishes.
  x-operator-note: 'A host-based audit reads mdq.incommon.org as a shared vendor host because other institutions resolve there
    too. That verdict is wrong for this class: InCommon MDQ is a federation registry that serves each member its OWN metadata
    under its own entityID, and the document returned for urn:mace:incommon:dartmouth.edu is Dartmouth''s, authored by Dartmouth,
    describing Dartmouth''s IdP. Do not reclassify this as vendor and do not remove it.'
  humanURL: https://incommon.org/federation/
  baseURL: https://mdq.incommon.org/entities/urn%3Amace%3Aincommon%3Adartmouth.edu
  tags:
  - Identity Federation
  - SAML
  - Shibboleth
  - InCommon
  - Open
  properties:
  - type: IdentityFederation
    url: https://mdq.incommon.org/entities/urn%3Amace%3Aincommon%3Adartmouth.edu
  - type: Conformance
    url: conformance/dartmouth-education-standards-conformance.yml
  - type: SignIn
    url: https://login.dartmouth.edu/cas/login
- aid: dartmouth:open-data
  name: Dartmouth Open Data (ArcGIS Hub tenant)
  x-operator: tenant
  description: Dartmouth's open-data portal, a tenant site on Esri's ArcGIS Hub. The data and the catalog are Dartmouth's;
    the search API behind it is Esri's Hub Search API on the shared host hub.arcgis.com, which every ArcGIS Hub customer calls.
    Seven OpenAPIs describing that Esri product were held in this repo under Dartmouth's name and re-based onto chat.dartmouth.edu;
    they were removed on 2026-08-30 and are not replaced. The relationship is recorded; the vendor's contract is not.
  humanURL: https://data-dartmouth.opendata.arcgis.com/
  tags:
  - Open Data
  - Geospatial
  - ArcGIS Hub
  - Tenant
  properties:
  - type: OpenData
    url: https://data-dartmouth.opendata.arcgis.com/
- aid: dartmouth:digital-commons
  name: Dartmouth Digital Commons (bepress/Elsevier tenant)
  x-operator: tenant
  description: Dartmouth's institutional repository for scholarly, research and educational output, running on bepress/Elsevier
    Digital Commons under a Dartmouth subdomain. Its OAI-PMH 2.0 endpoint is live and answers Identify with repositoryName
    "Dartmouth Digital Commons" and an earliestDatestamp of 2000-01-19 — but adminEmail is dc-support@elsevier.com, so the
    implementation is the vendor's. Recorded as a Dartmouth-operated repository and an oai-pmh conformance hit, not as Dartmouth
    engineering.
  humanURL: https://digitalcommons.dartmouth.edu/
  baseURL: https://digitalcommons.dartmouth.edu/do/oai/
  tags:
  - Research Repository
  - OAI-PMH
  - Institutional Repository
  - Tenant
  properties:
  - type: ResearchRepository
    url: https://digitalcommons.dartmouth.edu/
  - type: Conformance
    url: conformance/dartmouth-education-standards-conformance.yml
- aid: dartmouth:dataverse
  name: Dartmouth Dataverse
  x-operator: tenant
  description: 'Dartmouth''s research-data repository, a Dataverse 6.11 deployment on Dartmouth''s own host. The native Dataverse
    API answers unauthenticated — /api/info/version returns 200 with the running version — but the contract is the Dataverse
    project''s, shipped identically by every Dataverse installation, so no generic Dataverse specification is saved under
    Dartmouth. The deployment''s OAI-PMH path is present and broken: /oai?verb=Identify returns a Payara 503 error page rather
    than an OAI-PMH document.'
  humanURL: https://dataverse.dartmouth.edu/
  baseURL: https://dataverse.dartmouth.edu/api/info/version
  tags:
  - Research Data
  - Dataverse
  - Research Repository
  - Tenant
  properties:
  - type: ResearchRepository
    url: https://dataverse.dartmouth.edu/
  - type: Documentation
    url: https://www.library.dartmouth.edu/research-create/data-services/data-repositories
common:
- type: Website
  url: https://home.dartmouth.edu/
- type: DeveloperPortal
  url: https://developer.dartmouth.edu/
- type: CourseCatalog
  url: https://courses.dartmouth.edu/
- type: IdentityFederation
  url: https://mdq.incommon.org/entities/urn%3Amace%3Aincommon%3Adartmouth.edu
- type: OpenData
  url: https://data-dartmouth.opendata.arcgis.com/
- type: ResearchRepository
  url: https://digitalcommons.dartmouth.edu/
- type: ResearchComputing
  url: https://rc.dartmouth.edu/
- type: AITooling
  url: https://chat.dartmouth.edu/
- type: AIPolicy
  url: https://policies.dartmouth.edu/policy/guidelines-using-generative-artificial-intelligence-genai-coursework
- type: LibraryCatalog
  url: https://www.library.dartmouth.edu/
- type: GitHub
  url: https://github.com/dartmouth
- type: GitHub
  url: https://github.com/dartmouth-dltg
- type: Support
  url: https://services.dartmouth.edu/TDClient/1806/Portal/Home/
- type: PrivacyPolicy
  url: https://home.dartmouth.edu/privacy
- type: SignIn
  url: https://login.dartmouth.edu/cas/login
- type: LinkedIn
  url: https://www.linkedin.com/school/dartmouth-college/
- type: Twitter
  url: https://x.com/dartmouth
- type: Blog
  url: https://home.dartmouth.edu/rss.xml
- type: Conformance
  url: conformance/dartmouth-education-standards-conformance.yml
- type: Authentication
  url: authentication/dartmouth-authentication.yml
- type: Errors
  url: errors/dartmouth-errors.yml
- type: DomainSecurity
  url: security/dartmouth-domain-security.yml
- type: Plans
  url: plans/dartmouth-plans-pricing.yml
- type: RateLimits
  url: rate-limits/dartmouth-rate-limits.yml
- type: FinOps
  url: finops/dartmouth-finops.yml
- type: Review
  url: review.yml
x-coverage:
  state: gated
  reason: auth_required
  detail: 'Dartmouth operates real APIs and almost all of them are closed. developer.dartmouth.edu, including every /docs/
    page, 302s to Microsoft Entra SAML, so DartAPI''s endpoint inventory cannot be read from outside the institution and none
    is asserted here. api.dartmouth.edu answers 401 on every resource path and chat.dartmouth.edu/api answers 401 without
    a DARTMOUTH_API_KEY — both live, both credentialed, neither describable. What could be captured was captured: the keyless
    Dartmouth Class Search backend, described from live probes into a full artifact set, and Dartmouth''s InCommon SAML metadata.
    The research and data surfaces are tenant deployments whose contracts belong to Esri, bepress/Elsevier and the Dataverse
    project. Seven ArcGIS Hub Search OpenAPIs plus 26 files derived from them were removed from this repo on 2026-08-30; they
    described Esri''s product, were re-based onto chat.dartmouth.edu, and their sample data was a StoryMap about a park in
    Panama City.'
  evidence:
  - url: https://courses.dartmouth.edu/api/?page=fose&route=search
    status: 200
  - url: https://api.dartmouth.edu/api/people/
    status: 401
  - url: https://api.dartmouth.edu/api/jwt
    status: 405
  - url: https://chat.dartmouth.edu/api/models
    status: 401
  - url: https://developer.dartmouth.edu/docs/100_basic/010_introduction.md
    status: 302
  - url: https://mdq.incommon.org/entities/urn%3Amace%3Aincommon%3Adartmouth.edu
    status: 200
  - url: https://digitalcommons.dartmouth.edu/do/oai/?verb=Identify
    status: 200
  - url: https://dataverse.dartmouth.edu/api/info/version
    status: 200
  - url: https://dataverse.dartmouth.edu/oai?verb=Identify
    status: 503
  - url: https://chat.dartmouth.edu/openapi.json
    status: 200
    note: soft 404 — returns the Open WebUI SPA shell as text/html, not a specification
maintainers:
- FN: Kin Lane
  email: kin@apievangelist.com

Work with this as data

Every provider here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for providers

9 MCP tools reach this
  • find_providersBrowse and filter every provider in the catalog.
  • get_provider_artifactsEvery artifact this provider publishes, grouped by type.
  • get_provider_operationsEvery operation across all of their OpenAPIs — one call instead of parsing every spec.
  • get_provider_toolsEvery MCP tool they ship, with the operation each wraps.
  • get_provider_evidenceHow each part of their score was established. Free — the basis for a claim should not sit behind it.
  • get_provider_ratingPRO — composite, band, trend and facet scores.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This provider
curl "https://apis.io/api/v1/providers/dartmouth"
All providers
curl "https://apis.io/api/v1/providers?limit=25"
Every operation they expose
curl "https://apis.io/api/v1/providers/dartmouth/operations?limit=25"
How their score was established
curl "https://apis.io/api/v1/providers/dartmouth/evidence"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.