This endpoint allows the receiving institution to access a list of all mobilities it can read on the sending institution's server.
-
Requests MUST be made with either HTTP GET or HTTP POST method. Servers MUST support both these methods. Servers SHOULD reject all other request methods.
-
Clients are advised to use POST when passing large number of parameters (servers MAY set a limit on their GET query string length).
Parameters MUST be provided in the regular application/x-www-form-urlencoded
format.
An identifier of the institution which is the sending partner of the mobilities. This parameter MUST be required by the server even if it covers only a single institution. It is not repeatable.
By default, the server returns all mobilities the requester has access to (regardless of their receiving partner, arrival date, nor status). This includes very old mobilities, and the cancelled ones.
A list of institution identifiers. If given, then the results returned MUST
contain only those mobilities whose receiving institution matches at least
one of the given receiving_hei_id
identifiers.
This parameter is repeatable, so the request MAY contain multiple occurrences of it. The server is REQUIRED to process all of them.
An academic year identifier, in the YYYY/YYYY
format, as defined in the
EWP Academic Term Data Types
document. If given, then the server MUST return only such mobilities which
have taken place (or are planned to take place) during this single academic
year.
This parameter was added to allow the client to synchronize only a smaller subset of all mobilities more easily (because many clients don't want to store mobilities which have ended long ago).
A datetime string in the xs:dateTime
format, e.g.
2004-02-12T15:19:21+01:00
.
If given, then the server SHOULD filter the returned mobility IDs to the ones which have been either created or modified after the given point in time.
-
Servers MAY include mobilities which were not modified. For example, if the server only suspects that the mobility has been modified, then it is okay to include such mobility's ID in the response.
-
As we previously explained here, clients MAY use the
index
andget
endpoints as a pull-based method of synchronization, alternative (or rather complementary) to CNRs. It is RECOMMENDED for the servers to support this parameter, to avoid unnecessary network traffic.
Only selected Outgoing Mobility objects should be accessible to the caller.
Visibility of objects SHOULD be kept in sync with the visibility described in
the get
endpoint. That is:
-
Servers MUST publish IDs of every mobility which is accessible (to the same caller) via the
get
endpoint. -
Server MUST NOT publish IDs of objects which would NOT be accessible (to the same caller) via its
get
endpoint. Clients which receive mobility IDs from theindex
endpoint should be able to fetch all objects referenced by those IDs.
-
General error handling rules apply.
-
Note, that parameters are "AND-ed" together, but their values are "OR-ed". This means that invalid or unknown values provided in
sending_hei_id
andreceiving_hei_id
parameters MUST be allowed (but not ignored) by the server.The difference between "being allowed" and "being ignored" becomes clear once you try to analyze the scenario when one of these lists contains only such IDs which are unknown to the server. The server MUST respond with an empty
<response>
element in this case, regardless of all the other parameters. For example:?sending_hei_id=known&receiving_hei_id=known&receiving_hei_id=UNKNOWN
will return some results,?sending_hei_id=known&receiving_hei_id=known
will return exactly the same results,?sending_hei_id=known&receiving_hei_id=UNKNOWN
will NEVER return any results,?sending_hei_id=known
will return results again (but not necessarily the same results as the ones returned in the first two bullets).
Servers MUST respond with a valid XML document described by the index-response.xsd schema. See the schema annotations for further information.