Specifications, Validators and Tools

Who should be reading this?

The following chapters and tools are written by developers and for developers. If you're a project manager, then please assign developer(s) from your team to keep track of the changes in these specifications.

Developers chosen by the partners SHOULD:

  • Understand Git and be able to work with it fluently, in order to continually keep track and review all the changes to the specifications.

  • Have significant experience with XML namespaces, and XML Schema language.

Integration with other EU projects

We have designed our Registry in a way that should allow it to be of use in other EU projects too. If you are developing such a project, consider using our Registry Service by hosting the Discovery Manifest file compatible with our specifications. It's pretty straightforward and it should give you a head start (as you won't need to implement a Registry of your own).

We are aiming for our Registry and Discovery API to become common underlying parts of all similar projects focused on higher education in Europe. They are designed to be extendible and can be used to describe all kinds of APIs (even if some of these APIs clash together, by serving similar purpose in a different manner).

What is EWP?

Erasmus Without Paper (EWP) project aims to ease exchanging data on student mobility between computer systems in different countries (more information here). In order to make use of EWP, you will need to implement a subset of its APIs.

There are many APIs already present, and each partner will be allowed to choose which of them he wants to implement (which allows you to start early, and then expand to other scopes you want to participate in, step by step). Each such API is documented separately.

Issue tracker

You can find all unresolved EWP issues here (if you get 404 error, then sign in to GitHub first). If you want to browse only for the issues regarding one particular repository, then go to the Issues tab on that repository's GitHub page (these are quite mixed up though). You may also be interested in the available search qualifiers.

EWP providers mailing list

The ewp-providers@lists.erasmuswithoutpaper.eu is a mailing list bringing together the EWP technical community, and open to participants representing nodes in the network. If you represent a node and are not in the mailing list please send us a subscription request. Please add information about yourself. Are you in-house or 3rd party software provider? Who are your customers? Have you signed MoU with the EWP Network authorities?


The ECHE List website provides a list of all Institutions that currently hold the Erasmus Charter for Higher Education as published by the European Commission.

All the data fields contained in the original list are made available to client applications. Additionally, some processed values are also provided to respond to more specific use cases. Data is provided on a webpage or by a well-documented API.

EWP Stats Portal

The EWP Stats Portal displays data coming from various sources: ECHE List, Registry Catalogue file, other trustful sources. It has built-in functionality of searching and filtering data. In the future, it will enable the exploration, analysis and visualization of data on activity, errors and statistics on data exchange for all nodes in the network.

Gathering statistics

EWP Stats Portal gathers statistics from the nodes in the network by fetching data from the following stats endpoints:

  1. IIA Stats endpoint
  2. LAs Outgoing Stats endpoint
  3. LAs Incoming Stats endpoint

Servers MUST allow the EWP Stats Portal to access these endpoints. The EWP Stats Portal is identified by HEI id stats.erasmuswithoutpaper.eu.

Statistics are visualised in the Portal. More info can be found in the Architecture and Common Datatypes specification.

Documents and specifications

Status labels used for not yet released documents

  • DRAFT - working on it;
  • REVIEW RECOMMENDED - still not a final version, but initial review is recommended;
  • PENDING APPROVAL - waiting for the partners to officially accept the document.

Note, that discontinued drafts are usually simply removed from the index of documents below. That's why there's no label for them.

Status labels used for released documents

  • LATEST RELEASE - the latest accepted version of the document;
  • OBSOLETE - might still be in use, but a newer version exists;
  • DEPRECATED - might still be in use, but SHOULD be upgraded;
  • DISCONTINUED - might have been used in the past, but is no longer; do not use it.

Expand/Collapse All

Chapter 1. Working with EWP Technical Documentation v1.2.1

Chapter 2. Introduction to EWP Network

Chapter 2.1. Architecture and Common Datatypes v1.14.0

Chapter 2.2. Authentication and Security v2.0.2

Chapter 2.3. Client Authentication Methods

Chapter 2.3.1. Handling Anonymous Clients v1.1.0
Chapter 2.3.2. Authenticating Clients with TLS Certificate
Chapter 2.3.3. Authenticating Clients with HTTP Signature v1.0.1

Chapter 2.4. Server Authentication Methods

Chapter 2.4.1. Authenticating Servers with TLS Certificate v1.1.0
Chapter 2.4.2. Authenticating Servers with HTTP Signature v1.0.2

Chapter 2.5. Request Encryption Methods

Chapter 2.5.1. TLS and Request Confidentiality v1.1.0
Chapter 2.5.2. ewp-rsa-aes128gcm Request Encryption v0.4.0: REVIEW RECOMMENDED

Chapter 2.6. Response Encryption Methods

Chapter 2.6.1. TLS and Response Confidentiality v1.1.0
Chapter 2.6.2. ewp-rsa-aes128gcm Response Encryption v0.3.0: REVIEW RECOMMENDED

Chapter 3. Primary Network APIs

Chapter 3.1. Discovery Manifest API v6.0.0

Chapter 3.2. Echo API v2.0.1

Chapter 3.3. Registry API v1.5.0

Chapter 4. EWP Mobility Process Explained v0.5.1: REVIEW RECOMMENDED

Chapter 5. General Purpose APIs

Chapter 5.1. Institutions and Faculties

Chapter 5.1.1. Institutions API v2.2.0
Chapter 5.1.2. Organizational Units API v2.1.1

Chapter 5.2. Courses

Chapter 5.2.1. Courses API v0.7.1: REVIEW RECOMMENDED
Chapter 5.2.2. Simple Course Replication API v1.0.0-rc9: REVIEW RECOMMENDED

Chapter 5.3. File API v1.0.0

Chapter 5.4. Monitoring API v0.2.0: REVIEW RECOMMENDED

Chapter 6. Erasmus Mobility APIs

Chapter 6.1. Interinstitutional Agreements (IIAs)

Chapter 6.1.1. Interinstitutional Agreements API v7.0.0
Chapter 6.1.2. Interinstitutional Agreement CNR API v3.0.0
Chapter 6.1.3. Interinstitutional Agreements Approval API v2.0.0
Chapter 6.1.4. Interinstitutional Agreement Approval CNR API v2.0.0
Chapter 6.1.5. Mobility Factsheet API v1.2.0

Chapter 6.2. Outgoing Mobilities

Chapter 6.2.1. Outgoing Mobilities API v2.0.0
Chapter 6.2.2. Outgoing Mobility Learning Agreements API v1.2.0
Chapter 6.2.3. Outgoing Mobility CNR API v1.0.0
Chapter 6.2.4. Outgoing Mobility Learning Agreement CNR API v1.1.0

Chapter 6.3. Incoming Mobilities

Chapter 6.3.1. Incoming Mobilities API v1.0.0
Chapter 6.3.2. Incoming Mobility CNR API v1.0.0
Chapter 6.3.3. Incoming Mobility ToRs API v2.0.0
Chapter 6.3.4. Incoming Mobility ToR CNR API v1.0.0

Chapter 7. Beneficiary Module APIs

Chapter 7.1. Mobilities API v0.1.0: REVIEW RECOMMENDED

Chapter 8. EWP Student Service Providers API v0.1.0: REVIEW RECOMMENDED

Chapter 9. Mobility Tool+ APIs

Chapter 9.1. Institutions API

Chapter 9.2. Projects API

Chapter 9.3. Dictionaries API

Chapter 9.4. Mobilities API

Chapter 10. Appendices

Chapter 10.1. .ewpmobility Exchange File v0.4.3: REVIEW RECOMMENDED

Chapter 10.2. EWP Address Data Types v1.0.2

Chapter 10.3. EWP Phone Number Types v1.0.1

Chapter 10.4. EWP Academic Term Data Types v2.0.0

Chapter 10.5. EWP Abstract Contact Data Type v1.1.0

Chapter 10.6. Universal Person Identifiers ("UPIDs") v0.1.1: REVIEW RECOMMENDED

Chapter 10.7. ewp-rsa-aes128gcm Encryption v1.0.1

Libraries and tools

XML Schema Validators

XML Schema validator helps you with writing EWP XML documents. You should be able to validate any XML document described in all RELEASED, DEPRECATED and OBSOLETE specifications above (plus, perhaps, some of the DRAFT ones).

XML Schema Validator can be found on Dev Registry Service website in XML Schema Validator section.

API Validators

API Validators are tools that help you to determine if your implementation conforms to the EWP Specification. They are integrated with the EWP registry.

You can install registry in your local environment and test your development installation, even before contacting the EWP Network administrator. Download the package and read README-local-registry.md. The simplest option is "Scenario 2: Using web validator" described in it.

If you would like to learn about other possibilities of running the Validator, test your installation registered in the development Registry or test yourself implementation of another partner in the network, read EWP-Validator-HOWTO.txt describing all validation options.

If your installation is already publicly available, you can use the on-line Validator, which is located on Dev Registry Service website in Manifest Importer Status section, to test public APIs. It doesn't have access to confidential data, so you won't test APIs like omobilities or LAs. Use the previously mentioned options to test them.

IIA Hash Validator

IIA Hash Validator lets you check if cooperation conditions hash is correct for a given IIA get response.

IIA Hash Validator can be found on Dev Registry Service website in IIA Hash Validator section.

Java code responsible for calculating the hash can be found in GitHub.

EWP DEMO testbed

Test installations of a student information system with the EWP connector and the mobility client, with most recent versions of IIA and LA APIs, and anonymized data are available for providers, see EWP DEMO testbed page.