Politecnico di Torino (PoliTO) is Italy's oldest technical university, founded in Turin in 1859, with roughly 38,000 students across engineering, architecture and design. Unusually for this cohort, its programmable footprint is genuinely its own rather than a vendor's: the university publishes the OpenAPI definition of the REST API behind its official student and faculty mobile applications in the verified @polito GitHub organisation (polito/api-spec, authored in TypeSpec and emitted as two client contracts, Polito Faculty API and Polito Students API), and the React Native apps that consume it are open-sourced under EUPL-1.2 in polito/rn-apps and polito/students-app. That API runs on the university's own host, app.didattica.polito.it, and covers announcements, authentication with MFA, room and slot bookings, courses, lectures, news, people, places, exams, grades, degree offering, job offers, surveys, support tickets and the European Student Card. It is not a self-service developer programme: the production base path returns 403 to an anonymous caller, every operation is bearer authenticated against a PoliTO account, and no key can be requested by an outsider. Two further institution-operated machine-readable surfaces exist and are recorded here for the first time — a Shibboleth SAML 2.0 identity provider registered in IDEM GARR and eduGAIN since 2020, and an OAI-PMH 2.0 harvesting service over the IRIS research repository, the latter a CINECA tenant deployment rather than PoliTO engineering. A fourth institution-operated surface was found on 2026-08-30 and is the only one an outsider can actually call: four keyless JSON web services behind the polito.it site search — staff, departments and teachings at mypoli.polito.it/dotnet/ws_anagrafe and a campus room locator at legacyprod.polito.it — all returning HTTP 200 and real data with no credential, on hosts inside the university's own GARR address space. They are undocumented and unversioned, PoliTO does not present them as a developer product, and the OpenAPI held here is derived from probing rather than published. The university also runs HPC@PoliTO, an academic computing service managed in-house, whose allocation process is entirely by email with no programmatic surface. The institutional open-data portal publishes downloadable datasets only, with no API behind it, and there is no data.polito.it or api.polito.it host in service.
Politecnico di Torino publishes 16 APIs on the APIs.io network, including Announcements API, Auth API, Bookings API, and 13 more. Tagged areas include Education, Higher Education, University, Technical University, and Italy.
The Politecnico di Torino catalog on APIs.io includes 1 JSON-LD context and 2 Spectral governance rulesets.
Politecnico di Torino’s developer surface includes authentication, GitHub presence, documentation, status page, and 25 more developer resources.
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.
Open Source Surface applies to this provider. This product is open source and we
read its repository directly, so Open Source Surface carries
10 points of the composite. It is scored from what the repository actually
publishes — a security policy, a contribution guide, a release history, a code of conduct — read live from the
provider rather than inferred from our own catalog pointers.
This facet adds; nothing was taken away to make room for it. An open-source project is not excused from
the commercial facets, because exemption would strip it of the points it does earn.
If we have the wrong repository, or this product is not open source, say so on your
provider repo and we
will drop the facet rather than have you publish against 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 65 points between them,
because both conditional facets apply and carry
35 points together. That is why each facet's contribution is shown against a damped
maximum: raising a quality facet moves the composite by 65% of its nominal
weight, not 100%. The full arithmetic is at apis.io/rating/.
Politecnico di Torino's official React Native mobile applications for students and faculty, open-sourced under EUPL-1.2 in the verified @polito GitHub organisation. They are the...
Machine-readable SAML 2.0 identity-provider metadata for Politecnico di Torino, served from the university's own address space at idp.polito.it (130.192.55.75) and mirrored at i...
OAI-PMH 2.0 harvesting service over IRIS, Politecnico di Torino's institutional research repository, reachable at https://iris.polito.it/oai/request. Verified live on 2026-08-30...
Announcements resources of the Polito Faculty API, split per tag from openapi/_original/. Operated by Politecnico di Torino on app.didattica.polito.it; the contract is authored ...
Auth resources of the Polito Faculty API, split per tag from openapi/_original/. Operated by Politecnico di Torino on app.didattica.polito.it; the contract is authored by the un...
Bookings resources of the Polito Faculty API, split per tag from openapi/_original/. Operated by Politecnico di Torino on app.didattica.polito.it; the contract is authored by th...
Courses resources of the Polito Faculty API, split per tag from openapi/_original/. Operated by Politecnico di Torino on app.didattica.polito.it; the contract is authored by the...
Esc resources of the Polito Students API, split per tag from openapi/_original/. Operated by Politecnico di Torino on app.didattica.polito.it; the contract is authored by the un...
Exams resources of the Polito Students API, split per tag from openapi/_original/. Operated by Politecnico di Torino on app.didattica.polito.it; the contract is authored by the ...
Job Offers resources of the Polito Students API, split per tag from openapi/_original/. Operated by Politecnico di Torino on app.didattica.polito.it; the contract is authored by...
Lectures resources of the Polito Faculty API, split per tag from openapi/_original/. Operated by Politecnico di Torino on app.didattica.polito.it; the contract is authored by th...
News resources of the Polito Faculty API, split per tag from openapi/_original/. Operated by Politecnico di Torino on app.didattica.polito.it; the contract is authored by the un...
Offering resources of the Polito Students API, split per tag from openapi/_original/. Operated by Politecnico di Torino on app.didattica.polito.it; the contract is authored by t...
People resources of the Polito Faculty API, split per tag from openapi/_original/. Operated by Politecnico di Torino on app.didattica.polito.it; the contract is authored by the ...
Places resources of the Polito Faculty API, split per tag from openapi/_original/. Operated by Politecnico di Torino on app.didattica.polito.it; the contract is authored by the ...
Student resources of the Polito Students API, split per tag from openapi/_original/. Operated by Politecnico di Torino on app.didattica.polito.it; the contract is authored by th...
Surveys resources of the Polito Students API, split per tag from openapi/_original/. Operated by Politecnico di Torino on app.didattica.polito.it; the contract is authored by th...
Tickets resources of the Polito Students API, split per tag from openapi/_original/. Operated by Politecnico di Torino on app.didattica.polito.it; the contract is authored by th...
Four keyless JSON web services operated by Politecnico di Torino on its own hosts, found on 2026-08-30 in the client JavaScript behind https://www.polito.it/en/search and probed...
aid: politecnico-di-torino
name: Politecnico di Torino
x-type: university
x-category: Technical University
description: 'Politecnico di Torino (PoliTO) is Italy''s oldest technical university, founded in Turin in 1859, with roughly
38,000 students across engineering, architecture and design. Unusually for this cohort, its programmable footprint is genuinely
its own rather than a vendor''s: the university publishes the OpenAPI definition of the REST API behind its official student
and faculty mobile applications in the verified @polito GitHub organisation (polito/api-spec, authored in TypeSpec and emitted
as two client contracts, Polito Faculty API and Polito Students API), and the React Native apps that consume it are open-sourced
under EUPL-1.2 in polito/rn-apps and polito/students-app. That API runs on the university''s own host, app.didattica.polito.it,
and covers announcements, authentication with MFA, room and slot bookings, courses, lectures, news, people, places, exams,
grades, degree offering, job offers, surveys, support tickets and the European Student Card. It is not a self-service developer
programme: the production base path returns 403 to an anonymous caller, every operation is bearer authenticated against
a PoliTO account, and no key can be requested by an outsider. Two further institution-operated machine-readable surfaces
exist and are recorded here for the first time — a Shibboleth SAML 2.0 identity provider registered in IDEM GARR and eduGAIN
since 2020, and an OAI-PMH 2.0 harvesting service over the IRIS research repository, the latter a CINECA tenant deployment
rather than PoliTO engineering. A fourth institution-operated surface was found on 2026-08-30 and is the only one an outsider
can actually call: four keyless JSON web services behind the polito.it site search — staff, departments and teachings at
mypoli.polito.it/dotnet/ws_anagrafe and a campus room locator at legacyprod.polito.it — all returning HTTP 200 and real
data with no credential, on hosts inside the university''s own GARR address space. They are undocumented and unversioned,
PoliTO does not present them as a developer product, and the OpenAPI held here is derived from probing rather than published.
The university also runs HPC@PoliTO, an academic computing service managed in-house, whose allocation process is entirely
by email with no programmatic surface. The institutional open-data portal publishes downloadable datasets only, with no
API behind it, and there is no data.polito.it or api.polito.it host in service.'
type: Index
deliveryModel:
model: open-source
license: EUPL-1.2
open_source: true
commercial: false
callable_host: true
label: Open source · specification and client applications published openly; no commercial product
confidence: high
source:
- license
- openapi
- github
generated: '2026-08-30'
method: probed
note: 'Corrected on 2026-08-30. The prior stamp read open-core with commercial: true, which asserted a paid hosted product
Politecnico di Torino does not sell. The specification and both client applications are EUPL-1.2; the API itself is an
internal university service.'
accessModel:
pricing: free
onboarding: none
trial: false
try_now: false
public: false
label: No public onboarding · bearer token issued against a PoliTO institutional account
confidence: high
source:
- authentication
- openapi
- probe
generated: '2026-08-30'
method: probed
note: 'Corrected on 2026-08-30. The prior stamp read onboarding: self-serve with try_now: true; there is no signup surface.
https://app.didattica.polito.it/api returns 403 to an anonymous caller and the mock host at /mock/api returns 404, so
neither production nor mock is callable by an outsider.'
position: Consuming
access: 3rd-Party
image: https://kinlane-images.s3.amazonaws.com/shared/apis-json/icons/politecnico-di-torino.png
url: https://raw.githubusercontent.com/api-evangelist/politecnico-di-torino/refs/heads/main/apis.yml
tags:
- Education
- Higher Education
- University
- Technical University
- Italy
- Course Catalog
- Research Data
- Identity Federation
- Open Data
- Mobile
- OpenAPI
created: '2026-06-03'
modified: '2026-08-30'
specificationVersion: '0.23'
apis:
- aid: politecnico-di-torino:students-app
name: PoliTO Students App (mobile backend client)
x-operator: institution
description: 'Politecnico di Torino''s official React Native mobile applications for students and faculty, open-sourced
under EUPL-1.2 in the verified @polito GitHub organisation. They are the reference consumers of the PoliTO REST API and
the reason the specification exists. Institution-authored and institution-operated: the repository owner is the university,
not a supplier.'
humanURL: https://github.com/polito/students-app
tags:
- Education
- University
- Mobile
- Students
- React Native
tags_raw:
- Education
- University
- Mobile
- Students
- ReactNative
properties:
- type: Documentation
url: https://github.com/polito/students-app
- type: GitHub
url: https://github.com/polito/students-app
- type: SourceCode
url: https://github.com/polito/rn-apps
- aid: politecnico-di-torino:open-data
name: PoliTO Open Data
x-operator: institution
description: 'Institutional open-data portal publishing freely reusable academic datasets — study programmes and courses,
student enrolment, international students, graduates, mobility and doctoral programmes — under attribution and share-alike
terms. Verified live on 2026-08-30: the page lists downloadable files only. There is no programmatic API, no CKAN or Socrata
instance, and no data.polito.it host in service (the name resolves to 130.192.91.235 but the port does not answer).'
humanURL: https://www.polito.it/open-data
tags:
- Education
- University
- Open Data
- Datasets
properties:
- type: Documentation
url: https://www.polito.it/open-data
- aid: politecnico-di-torino:identity-federation
name: Politecnico di Torino Shibboleth Identity Provider (IDEM GARR / eduGAIN)
x-operator: institution
description: 'Machine-readable SAML 2.0 identity-provider metadata for Politecnico di Torino, served from the university''s
own address space at idp.polito.it (130.192.55.75) and mirrored at idem.polito.it. Verified live on 2026-08-30: 13,373
bytes of application/xml carrying an IDPSSODescriptor and an AttributeAuthorityDescriptor, protocol support for SAML 2.0
and SAML 1.1, HTTP-Redirect, HTTP-POST and HTTP-POST-SimpleSign SSO bindings with matching SLO endpoints, and shibmd:Scope
polito.it. The entityID https://idem.polito.it/idp/shibboleth is registered in the Italian national federation IDEM GARR
and published to eduGAIN, first seen 2020-07-24, with the eduGAIN connectivity check passing and Sirtfi asserted. A companion
service provider, EduGateway Polito (https://idemidp.polito.it/shibboleth), is registered under the GEANT Data Protection
Code of Conduct. This is the surface class the university cohort most consistently fails to record, and it is institution-operated
by definition.'
humanURL: https://idp.polito.it/idp/shibboleth
baseURL: https://idp.polito.it/idp/shibboleth
tags:
- Identity Federation
- SAML
- Shibboleth
- eduGAIN
- IDEM GARR
- Single Sign-On
- Metadata
properties:
- type: Documentation
url: https://www.idem.garr.it/
- type: x-conformance
url: conformance/politecnico-di-torino-conformance.yml
- aid: politecnico-di-torino:iris-oai
name: IRIS PoliTO OAI-PMH Metadata Service (CINECA deployment)
x-operator: tenant
description: 'OAI-PMH 2.0 harvesting service over IRIS, Politecnico di Torino''s institutional research repository, reachable
at https://iris.polito.it/oai/request. Verified live on 2026-08-30 across Identify, ListMetadataFormats, ListSets and
ListRecords: repositoryName "IRIS - POLITO - prod", repositoryIdentifier iris.polito.it, earliest datestamp 2015-06-30,
three metadata prefixes (didl, ore, oai_dc), DSpace-style community and collection sets under the 11583 handle prefix,
and 100 real Dublin Core records with a resumptionToken on the first page. Recorded as tenant rather than institution:
iris.polito.it CNAMEs to polito.prod.iris.cineca.it and the Identify response gives adminEmail noreply@cineca.it. IRIS
is CINECA''s research-information product, deployed across most Italian universities. The research record is PoliTO''s;
the harvesting contract is CINECA''s, and no IRIS contract is saved into this repository.'
humanURL: https://iris.polito.it/
baseURL: https://iris.polito.it/oai/request
tags:
- Research Data
- Research Repository
- OAI-PMH
- Metadata
- Harvesting
- Open Access
- Tenant Deployment
- CINECA
properties:
- type: Documentation
url: https://iris.polito.it/
- type: x-conformance
url: conformance/politecnico-di-torino-conformance.yml
- aid: politecnico-di-torino:politecnico-di-torino-announcements-api
name: Politecnico di Torino Announcements API
x-operator: institution
description: Announcements resources of the Polito Faculty API, split per tag from openapi/_original/. Operated by Politecnico
di Torino on app.didattica.polito.it; the contract is authored by the university in TypeSpec and published at github.com/polito/api-spec.
Bearer authentication against a PoliTO account is required — the base path returns 403 anonymously.
humanURL: https://github.com/polito/api-spec
baseURL: https://app.didattica.polito.it/api
tags:
- Announcements
properties:
- type: OpenAPI
url: openapi/politecnico-di-torino-announcements-api-openapi.yml
- type: Documentation
url: https://github.com/polito/api-spec
- type: GitHub
url: https://github.com/polito/api-spec
- type: SourceCode
url: https://github.com/polito/api-spec
- type: x-vocabulary
url: vocabulary/politecnico-di-torino-vocabulary.yml
- type: x-rules
url: rules/politecnico-di-torino-rules.yml
- type: x-json-ld
url: json-ld/politecnico-di-torino-context.jsonld
- type: x-conformance
url: conformance/politecnico-di-torino-conformance.yml
- aid: politecnico-di-torino:politecnico-di-torino-auth-api
name: Politecnico di Torino Auth API
x-operator: institution
description: Auth resources of the Polito Faculty API, split per tag from openapi/_original/. Operated by Politecnico di
Torino on app.didattica.polito.it; the contract is authored by the university in TypeSpec and published at github.com/polito/api-spec.
Bearer authentication against a PoliTO account is required — the base path returns 403 anonymously.
humanURL: https://github.com/polito/api-spec
baseURL: https://app.didattica.polito.it/api
tags:
- Authentication
tags_raw:
- Auth
properties:
- type: OpenAPI
url: openapi/politecnico-di-torino-auth-api-openapi.yml
- type: Documentation
url: https://github.com/polito/api-spec
- type: GitHub
url: https://github.com/polito/api-spec
- type: SourceCode
url: https://github.com/polito/api-spec
- type: x-vocabulary
url: vocabulary/politecnico-di-torino-vocabulary.yml
- type: x-rules
url: rules/politecnico-di-torino-rules.yml
- type: x-json-ld
url: json-ld/politecnico-di-torino-context.jsonld
- type: x-conformance
url: conformance/politecnico-di-torino-conformance.yml
- aid: politecnico-di-torino:politecnico-di-torino-bookings-api
name: Politecnico di Torino Bookings API
x-operator: institution
description: Bookings resources of the Polito Faculty API, split per tag from openapi/_original/. Operated by Politecnico
di Torino on app.didattica.polito.it; the contract is authored by the university in TypeSpec and published at github.com/polito/api-spec.
Bearer authentication against a PoliTO account is required — the base path returns 403 anonymously.
humanURL: https://github.com/polito/api-spec
baseURL: https://app.didattica.polito.it/api
tags:
- Bookings
properties:
- type: OpenAPI
url: openapi/politecnico-di-torino-bookings-api-openapi.yml
- type: Documentation
url: https://github.com/polito/api-spec
- type: GitHub
url: https://github.com/polito/api-spec
- type: SourceCode
url: https://github.com/polito/api-spec
- type: x-vocabulary
url: vocabulary/politecnico-di-torino-vocabulary.yml
- type: x-rules
url: rules/politecnico-di-torino-rules.yml
- type: x-json-ld
url: json-ld/politecnico-di-torino-context.jsonld
- type: x-conformance
url: conformance/politecnico-di-torino-conformance.yml
- aid: politecnico-di-torino:politecnico-di-torino-courses-api
name: Politecnico di Torino Courses API
x-operator: institution
description: Courses resources of the Polito Faculty API, split per tag from openapi/_original/. Operated by Politecnico
di Torino on app.didattica.polito.it; the contract is authored by the university in TypeSpec and published at github.com/polito/api-spec.
Bearer authentication against a PoliTO account is required — the base path returns 403 anonymously.
humanURL: https://github.com/polito/api-spec
baseURL: https://app.didattica.polito.it/api
tags:
- Courses
properties:
- type: OpenAPI
url: openapi/politecnico-di-torino-courses-api-openapi.yml
- type: Documentation
url: https://github.com/polito/api-spec
- type: GitHub
url: https://github.com/polito/api-spec
- type: SourceCode
url: https://github.com/polito/api-spec
- type: x-vocabulary
url: vocabulary/politecnico-di-torino-vocabulary.yml
- type: x-rules
url: rules/politecnico-di-torino-rules.yml
- type: x-json-ld
url: json-ld/politecnico-di-torino-context.jsonld
- type: x-conformance
url: conformance/politecnico-di-torino-conformance.yml
- aid: politecnico-di-torino:politecnico-di-torino-esc-api
name: Politecnico di Torino Esc API
x-operator: institution
description: Esc resources of the Polito Students API, split per tag from openapi/_original/. Operated by Politecnico di
Torino on app.didattica.polito.it; the contract is authored by the university in TypeSpec and published at github.com/polito/api-spec.
Bearer authentication against a PoliTO account is required — the base path returns 403 anonymously.
humanURL: https://github.com/polito/api-spec
baseURL: https://app.didattica.polito.it/api
tags:
- Esc
properties:
- type: OpenAPI
url: openapi/politecnico-di-torino-esc-api-openapi.yml
- type: Documentation
url: https://github.com/polito/api-spec
- type: GitHub
url: https://github.com/polito/api-spec
- type: SourceCode
url: https://github.com/polito/api-spec
- type: x-vocabulary
url: vocabulary/politecnico-di-torino-vocabulary.yml
- type: x-rules
url: rules/politecnico-di-torino-rules.yml
- type: x-json-ld
url: json-ld/politecnico-di-torino-context.jsonld
- type: x-conformance
url: conformance/politecnico-di-torino-conformance.yml
- aid: politecnico-di-torino:politecnico-di-torino-exams-api
name: Politecnico di Torino Exams API
x-operator: institution
description: Exams resources of the Polito Students API, split per tag from openapi/_original/. Operated by Politecnico
di Torino on app.didattica.polito.it; the contract is authored by the university in TypeSpec and published at github.com/polito/api-spec.
Bearer authentication against a PoliTO account is required — the base path returns 403 anonymously.
humanURL: https://github.com/polito/api-spec
baseURL: https://app.didattica.polito.it/api
tags:
- Exams
properties:
- type: OpenAPI
url: openapi/politecnico-di-torino-exams-api-openapi.yml
- type: Documentation
url: https://github.com/polito/api-spec
- type: GitHub
url: https://github.com/polito/api-spec
- type: SourceCode
url: https://github.com/polito/api-spec
- type: x-vocabulary
url: vocabulary/politecnico-di-torino-vocabulary.yml
- type: x-rules
url: rules/politecnico-di-torino-rules.yml
- type: x-json-ld
url: json-ld/politecnico-di-torino-context.jsonld
- type: x-conformance
url: conformance/politecnico-di-torino-conformance.yml
- aid: politecnico-di-torino:politecnico-di-torino-job-offers-api
name: Politecnico di Torino Job offers API
x-operator: institution
description: Job Offers resources of the Polito Students API, split per tag from openapi/_original/. Operated by Politecnico
di Torino on app.didattica.polito.it; the contract is authored by the university in TypeSpec and published at github.com/polito/api-spec.
Bearer authentication against a PoliTO account is required — the base path returns 403 anonymously.
humanURL: https://github.com/polito/api-spec
baseURL: https://app.didattica.polito.it/api
tags:
- Job offers
properties:
- type: OpenAPI
url: openapi/politecnico-di-torino-job-offers-api-openapi.yml
- type: Documentation
url: https://github.com/polito/api-spec
- type: GitHub
url: https://github.com/polito/api-spec
- type: SourceCode
url: https://github.com/polito/api-spec
- type: x-vocabulary
url: vocabulary/politecnico-di-torino-vocabulary.yml
- type: x-rules
url: rules/politecnico-di-torino-rules.yml
- type: x-json-ld
url: json-ld/politecnico-di-torino-context.jsonld
- type: x-conformance
url: conformance/politecnico-di-torino-conformance.yml
- aid: politecnico-di-torino:politecnico-di-torino-lectures-api
name: Politecnico di Torino Lectures API
x-operator: institution
description: Lectures resources of the Polito Faculty API, split per tag from openapi/_original/. Operated by Politecnico
di Torino on app.didattica.polito.it; the contract is authored by the university in TypeSpec and published at github.com/polito/api-spec.
Bearer authentication against a PoliTO account is required — the base path returns 403 anonymously.
humanURL: https://github.com/polito/api-spec
baseURL: https://app.didattica.polito.it/api
tags:
- Lectures
properties:
- type: OpenAPI
url: openapi/politecnico-di-torino-lectures-api-openapi.yml
- type: Documentation
url: https://github.com/polito/api-spec
- type: GitHub
url: https://github.com/polito/api-spec
- type: SourceCode
url: https://github.com/polito/api-spec
- type: x-vocabulary
url: vocabulary/politecnico-di-torino-vocabulary.yml
- type: x-rules
url: rules/politecnico-di-torino-rules.yml
- type: x-json-ld
url: json-ld/politecnico-di-torino-context.jsonld
- type: x-conformance
url: conformance/politecnico-di-torino-conformance.yml
- aid: politecnico-di-torino:politecnico-di-torino-news-api
name: Politecnico di Torino News API
x-operator: institution
description: News resources of the Polito Faculty API, split per tag from openapi/_original/. Operated by Politecnico di
Torino on app.didattica.polito.it; the contract is authored by the university in TypeSpec and published at github.com/polito/api-spec.
Bearer authentication against a PoliTO account is required — the base path returns 403 anonymously.
humanURL: https://github.com/polito/api-spec
baseURL: https://app.didattica.polito.it/api
tags:
- News
properties:
- type: OpenAPI
url: openapi/politecnico-di-torino-news-api-openapi.yml
- type: Documentation
url: https://github.com/polito/api-spec
- type: GitHub
url: https://github.com/polito/api-spec
- type: SourceCode
url: https://github.com/polito/api-spec
- type: x-vocabulary
url: vocabulary/politecnico-di-torino-vocabulary.yml
- type: x-rules
url: rules/politecnico-di-torino-rules.yml
- type: x-json-ld
url: json-ld/politecnico-di-torino-context.jsonld
- type: x-conformance
url: conformance/politecnico-di-torino-conformance.yml
- aid: politecnico-di-torino:politecnico-di-torino-offering-api
name: Politecnico di Torino Offering API
x-operator: institution
description: Offering resources of the Polito Students API, split per tag from openapi/_original/. Operated by Politecnico
di Torino on app.didattica.polito.it; the contract is authored by the university in TypeSpec and published at github.com/polito/api-spec.
Bearer authentication against a PoliTO account is required — the base path returns 403 anonymously.
humanURL: https://github.com/polito/api-spec
baseURL: https://app.didattica.polito.it/api
tags:
- Offering
properties:
- type: OpenAPI
url: openapi/politecnico-di-torino-offering-api-openapi.yml
- type: Documentation
url: https://github.com/polito/api-spec
- type: GitHub
url: https://github.com/polito/api-spec
- type: SourceCode
url: https://github.com/polito/api-spec
- type: x-vocabulary
url: vocabulary/politecnico-di-torino-vocabulary.yml
- type: x-rules
url: rules/politecnico-di-torino-rules.yml
- type: x-json-ld
url: json-ld/politecnico-di-torino-context.jsonld
- type: x-conformance
url: conformance/politecnico-di-torino-conformance.yml
- aid: politecnico-di-torino:politecnico-di-torino-people-api
name: Politecnico di Torino People API
x-operator: institution
description: People resources of the Polito Faculty API, split per tag from openapi/_original/. Operated by Politecnico
di Torino on app.didattica.polito.it; the contract is authored by the university in TypeSpec and published at github.com/polito/api-spec.
Bearer authentication against a PoliTO account is required — the base path returns 403 anonymously.
humanURL: https://github.com/polito/api-spec
baseURL: https://app.didattica.polito.it/api
tags:
- People
properties:
- type: OpenAPI
url: openapi/politecnico-di-torino-people-api-openapi.yml
- type: Documentation
url: https://github.com/polito/api-spec
- type: GitHub
url: https://github.com/polito/api-spec
- type: SourceCode
url: https://github.com/polito/api-spec
- type: x-vocabulary
url: vocabulary/politecnico-di-torino-vocabulary.yml
- type: x-rules
url: rules/politecnico-di-torino-rules.yml
- type: x-json-ld
url: json-ld/politecnico-di-torino-context.jsonld
- type: x-conformance
url: conformance/politecnico-di-torino-conformance.yml
- aid: politecnico-di-torino:politecnico-di-torino-places-api
name: Politecnico di Torino Places API
x-operator: institution
description: Places resources of the Polito Faculty API, split per tag from openapi/_original/. Operated by Politecnico
di Torino on app.didattica.polito.it; the contract is authored by the university in TypeSpec and published at github.com/polito/api-spec.
Bearer authentication against a PoliTO account is required — the base path returns 403 anonymously.
humanURL: https://github.com/polito/api-spec
baseURL: https://app.didattica.polito.it/api
tags:
- Places
properties:
- type: OpenAPI
url: openapi/politecnico-di-torino-places-api-openapi.yml
- type: Documentation
url: https://github.com/polito/api-spec
- type: GitHub
url: https://github.com/polito/api-spec
- type: SourceCode
url: https://github.com/polito/api-spec
- type: x-vocabulary
url: vocabulary/politecnico-di-torino-vocabulary.yml
- type: x-rules
url: rules/politecnico-di-torino-rules.yml
- type: x-json-ld
url: json-ld/politecnico-di-torino-context.jsonld
- type: x-conformance
url: conformance/politecnico-di-torino-conformance.yml
- aid: politecnico-di-torino:politecnico-di-torino-student-api
name: Politecnico di Torino Student API
x-operator: institution
description: Student resources of the Polito Students API, split per tag from openapi/_original/. Operated by Politecnico
di Torino on app.didattica.polito.it; the contract is authored by the university in TypeSpec and published at github.com/polito/api-spec.
Bearer authentication against a PoliTO account is required — the base path returns 403 anonymously.
humanURL: https://github.com/polito/api-spec
baseURL: https://app.didattica.polito.it/api
tags:
- Students
tags_raw:
- Student
properties:
- type: OpenAPI
url: openapi/politecnico-di-torino-student-api-openapi.yml
- type: Documentation
url: https://github.com/polito/api-spec
- type: GitHub
url: https://github.com/polito/api-spec
- type: SourceCode
url: https://github.com/polito/api-spec
- type: x-vocabulary
url: vocabulary/politecnico-di-torino-vocabulary.yml
- type: x-rules
url: rules/politecnico-di-torino-rules.yml
- type: x-json-ld
url: json-ld/politecnico-di-torino-context.jsonld
- type: x-conformance
url: conformance/politecnico-di-torino-conformance.yml
- aid: politecnico-di-torino:politecnico-di-torino-surveys-api
name: Politecnico di Torino Surveys API
x-operator: institution
description: Surveys resources of the Polito Students API, split per tag from openapi/_original/. Operated by Politecnico
di Torino on app.didattica.polito.it; the contract is authored by the university in TypeSpec and published at github.com/polito/api-spec.
Bearer authentication against a PoliTO account is required — the base path returns 403 anonymously.
humanURL: https://github.com/polito/api-spec
baseURL: https://app.didattica.polito.it/api
tags:
- Surveys
properties:
- type: OpenAPI
url: openapi/politecnico-di-torino-surveys-api-openapi.yml
- type: Documentation
url: https://github.com/polito/api-spec
- type: GitHub
url: https://github.com/polito/api-spec
- type: SourceCode
url: https://github.com/polito/api-spec
- type: x-vocabulary
url: vocabulary/politecnico-di-torino-vocabulary.yml
- type: x-rules
url: rules/politecnico-di-torino-rules.yml
- type: x-json-ld
url: json-ld/politecnico-di-torino-context.jsonld
- type: x-conformance
url: conformance/politecnico-di-torino-conformance.yml
- aid: politecnico-di-torino:politecnico-di-torino-tickets-api
name: Politecnico di Torino Tickets API
x-operator: institution
description: Tickets resources of the Polito Students API, split per tag from openapi/_original/. Operated by Politecnico
di Torino on app.didattica.polito.it; the contract is authored by the university in TypeSpec and published at github.com/polito/api-spec.
Bearer authentication against a PoliTO account is required — the base path returns 403 anonymously.
humanURL: https://github.com/polito/api-spec
baseURL: https://app.didattica.polito.it/api
tags:
- Tickets
properties:
- type: OpenAPI
url: openapi/politecnico-di-torino-tickets-api-openapi.yml
- type: Documentation
url: https://github.com/polito/api-spec
- type: GitHub
url: https://github.com/polito/api-spec
- type: SourceCode
url: https://github.com/polito/api-spec
- type: x-vocabulary
url: vocabulary/politecnico-di-torino-vocabulary.yml
- type: x-rules
url: rules/politecnico-di-torino-rules.yml
- type: x-json-ld
url: json-ld/politecnico-di-torino-context.jsonld
- type: x-conformance
url: conformance/politecnico-di-torino-conformance.yml
- aid: politecnico-di-torino:public-search-services
name: PoliTO Public Search Web Services (people, departments, teachings, rooms)
x-operator: institution
description: Four keyless JSON web services operated by Politecnico di Torino on its own hosts, found on 2026-08-30 in the
client JavaScript behind https://www.polito.it/en/search and probed live. search_people.ashx, search_departments.ashx
and search_teachings.ashx run at mypoli.polito.it/dotnet/ws_anagrafe (130.192.182.138); the campus room locator motore-di-ricerca/localijson.php
runs at legacyprod.polito.it (130.192.182.100). Both hosts sit inside the university's own 130.192.0.0/16 GARR address
space with no vendor CNAME, so this is institution-operated engineering rather than a tenant deployment. All four returned
HTTP 200 with application/json and real institutional data to an anonymous caller carrying no credential, which makes
this the ONLY Politecnico di Torino API surface an outsider can actually call — the documented app.didattica.polito.it
REST API behind the official mobile apps returns 403 without a PoliTO bearer token. The teachings service is the closest
thing the university operates to a public course-catalog API. Politecnico di Torino publishes no specification, documentation
or terms of use for any of them and does not present them as a developer product; the OpenAPI recorded here is DERIVED
from live probing by API Evangelist and is stamped as such. Paging is advertised and not honoured — current_page and page_size
echo back 1 and 5 whatever is sent — and omitting the required q parameter returns HTTP 500 rather than 400. The people
service returns personal data about named staff including institutional email addresses; no real personal record is reproduced
in the derived contract.
humanURL: https://www.polito.it/en/search
baseURL: https://mypoli.polito.it/dotnet/ws_anagrafe
tags:
- Course Catalog
- Directory
- Search
- Campus
- Open Access
- Keyless
properties:
- type: OpenAPI
url: openapi/politecnico-di-torino-public-search-api-openapi.yml
- type: Documentation
url: https://www.polito.it/en/search
- type: x-conformance
url: conformance/politecnico-di-torino-conformance.yml
common:
- type: CapabilityMap
url: capabilities/politecnico-di-torino-capability-edges.yml
name: Politecnico di Torino Business Capability Map
- type: IssueTracker
url: https://github.com/polito/rn-apps/issues
- type: Releases
url: https://github.com/polito/rn-apps/releases
- type: SecurityPolicy
url: https://github.com/polito/rn-apps/blob/main/SECURITY.md
- type: ContributionGuide
url: https://github.com/polito/rn-apps/blob/main/CONTRIBUTING.md
- type: License
name: EUPL-1.2
url: https://github.com/polito/rn-apps/blob/main/LICENSE.md
- type: AgenticAccess
url: agentic-access/politecnico-di-torino-agentic-access.yml
- type: DomainSecurity
url: security/politecnico-di-torino-domain-security.yml
- type: Authentication
url: authentication/politecnico-di-torino-authentication.yml
- type: Website
url: https://www.polito.it/en
- type: GitHub
url: https://github.com/polito
- type: LinkedIn
url: https://it.linkedin.com/school/politecnico-di-torino/
- type: OpenData
url: https://www.polito.it/open-data
- type: SourceCode
url: https://github.com/polito/api-spec
- type: Plans
url: plans/politecnico-di-torino-plans-pricing.yml
- type: RateLimits
url: rate-limits/politecnico-di-torino-rate-limits.yml
- type: FinOps
url: finops/politecnico-di-torino-finops.yml
- type: Review
url: review.yml
- type: Documentation
url: https://github.com/polito/api-spec
- type: OpenAPI
url: https://raw.githubusercontent.com/polito/api-spec/master/dist/clients/student/openapi.yaml
name: Polito Students API (upstream, master)
- type: OpenAPI
url: https://raw.githubusercontent.com/polito/api-spec/master/dist/clients/faculty/openapi.yaml
name: Polito Faculty API (upstream, master)
- type: IdentityFederation
url: https://idp.polito.it/idp/shibboleth
- type: ResearchRepository
url: https://iris.polito.it/
- type: CourseCatalog
url: https://www.polito.it/en/education
- type: Status
url: https://status.polito.it/
- type: PrivacyPolicy
url: https://www.polito.it/en/privacy
- type: x-conformance
url: conformance/politecnico-di-torino-conformance.yml
- type: ResearchComputing
url: https://hpc.polito.it/
name: HPC@PoliTO academic computing service
- type: CourseCatalog
url: https://mypoli.polito.it/dotnet/ws_anagrafe/search_teachings.ashx?_lang=en&q=ingegneria
name: PoliTO teaching catalog search service (keyless JSON)
x-coverage:
state: covered
reason: covered
detail: 'Every surface class the university pipeline hunts was probed on 2026-08-30, and Politecnico di Torino is one of
the few institutions in this cohort whose headline API is genuinely its own. The REST API behind the official student
and faculty apps runs on app.didattica.polito.it, its OpenAPI is authored by the university in TypeSpec and published
in the verified @polito GitHub organisation, and no vendor appears anywhere in servers[], info.title, info.contact or
info.termsOfService. Nothing was removed for misattribution. What was repaired is ours: all 15 refined OpenAPIs wore the
welded title ''Polito Faculty Announcements <Tag> API'' because refine-openapis carried the first split output''s identity
onto every later one, and seven of them (Esc, Exams, Job offers, Offering, Student, Surveys, Tic
# --- truncated at 32 KB (38 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/politecnico-di-torino/refs/heads/main/apis.yml
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.