General system structure
iVIS is a base platform for school administration with:
- Hibernate framework for database integration
- Spring java framework
- MySQL database
- Defined APIer json
- Defined APIer XML/Soap
- Autenthication via SAML2 protocol
- Connection to Open ePlatform (web based eServices)
The base platform contains all data that is used by the connected services, e g pupil/parent data. The platform itself is a container that does not manipulate data. This is done by the services that are calling the system via the standardised API.
The attached model documentation is in swedish. The information model has been created by Owen Eriksson from Uppsala University.
The attached document are:
All technical API documentation with examples can be reached via this link:
General System Structure
iVIS consists of the server application (database and API provider, hereinafter server) and the number of client apps (hereinafter apps). Each app is registered inside the server and has its own AppId identifier. In addition, each app has custom access level and permissions set to the specified piece of data. (App access levels and rights (permissions) is controlled by iVIS administrators.) Every app action is logged by the audit subsystem. There is no way to connect the server and get any data from there except using the registered apps.
While server resources access is restricted by the app access level and permissions, we still have user level permissions. For instance if user John Doe has permissions to access A, B and C objects and the app he is currently using has permissions to access B, C and D objects, user will have access to only B and C objects using this app. Object could be full entity table (f. i. all schools), only some specified entities in the table (f. i. school with Id = 1), some actions for entity (f. i. create, edit, delete etc).
In order to build your own app you should obtain your AppId identifier and then make request for required permissions for this app. To obtain your AppId please contact iVIS administrators.
In order to use the API an app user should be authorized on the iVIS server using the OAuth 2.0 protocol. This means that before making any request to the API app should check whether it has special OAuth token, provided by iVIS server, or not. If it does not have the token, it should redirect user to the iVIS login page where user will be authorized. After user is authorized, he will be redirected back to the app with the token generated that should be saved. For more details about how OAuth 2.0 works please follow the link: https://tools.ietf.org/html/rfc6749
Each API request should be provided with OAuth token. All requests without this token will fail.
API supports both XML and JSON output formats.
PLEASE NOTE THAT THIS ONE IS CURRENTLY NOT WORKING:
(For example: http://ivis.dev.imcode.com/api/v1/json/schools
This will provide the set of schools in the JSON format. )