Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 5 Next »

Introduction 

The MyTimeTable API will allow you to make use of the features provided by the MyTimeTable web interface.

The resources support both JSON and XML. To switch from JSON to XML, just add .xml after the resource name in any of the request URLs. 

OAuth

To set up OAuth, follow these steps:

  1. Visit http://demo.eveoh.nl/oauth/authorize?response_type=code&client_id=test&redirect_uri=http://localhost
  2. You will be prompted to log in. After logging in the application will request for your permission to access your personal timetable. Click Allow.
  3. After being redirected the URL will contain ?code=XXXXXX. Copy this code.
  4. Open a Terminal window and enter the following command (replace XXXXXX with your personal code from step 3): 

    curl -d 'grant_type=authorization_code&client_id=test&client_secret=test&code=XXXXXX&redirect_uri=http://localhost' http://demo.eveoh.nl/oauth/token
  5. The command will return an access token. This token will allow you to request resources from the API. 

Resources

/timetables

Query all timetables with a specified type.

Type: GET

Parameters

typethe type of the timetables, e.g. 'module'
limitthe maximum amount of records returned
offsetstarting position of the records returned (e.g. offset=5 skips the first 5 records)
departmentFilterfilter on a specific department
posFilterfilter on a specific pos
zoneFilterfilter on a specific zone

Request URL

http://demo.eveoh.nl/api/v0/timetables?type=module&access_token=your_token 

Response Body

[
    {
    	"description": "VMT for Informatics", 
    	"value": "2011!module!49CBD432F01E8C5057B344E02604A710"
    }
]

/timetables/{key}

Query all timetables corresponding with a specific timetable.

Type: GET

Parameters

keythe key corresponding with the specific timetable
startDatethe start date for the timetable
endDatethe end date for the timetable
limitthe maximum amount of records returned (default = 25)

Request URL

http://demo.eveoh.nl/api/v0/timetables/2011!module!49CBD432F01E8C5057B344E02604A710?access_token=your_token

Response Body

[
   {
        "activityDescription": "VMT for Informatics", 
        "activityTypeDescription": "Lecture", 
        "activityTypeName": "Class", 
        "endDate": 1341930600000, 
        "locations": [
            {
                "capacity": 18, 
                "id": "D2D0C6A8E334B242289FBAA7F69759C3", 
                "key": "#SPLUS9759C3", 
                "name": "B3.022"
            }
        ], 
        "moduleCode": "#SPLUS04A710", 
        "notes": null, 
        "staffMembers": [
            "Mr. Moore (Moo)"
        ], 
        "startDate": 1341919800000, 
        "studentSets": [
            "BI group  1A", 
            "BI group  1B"
        ]
    }
]

/timetable

Query all timetables within a specific timerange.

Type: GET

Parameters

startDatethe start date for the timetable
endDatethe end date for the timetable
limitthe maximum amount of records returned
typethe type of the timetables, e.g. 'module'

Request URL

http://demo.eveoh.nl/api/v0/timetable?startDate=2012/07/10&endDate=2012/07/10&access_token=your_token

Response Body

{
        "activityDescription": "System biology", 
        "activityTypeDescription": "Lecture", 
        "activityTypeName": "Class", 
        "endDate": 1341916200000, 
        "locations": [
            {
                "capacity": 24, 
                "id": "D2D0C6A8E334B242289FBAA7F69759BB", 
                "key": "#SPLUS9759BB", 
                "name": "G3.104"
            }, 
            {
                "capacity": 24, 
                "id": "D2D0C6A8E334B242289FBAA7F69759BC", 
                "key": "#SPLUS9759BC", 
                "name": "G3.110"
            }
        ], 
        "moduleCode": "#SPLUS969C58", 
        "notes": null, 
        "staffMembers": [
            "Mr. Martinez (Maz)", 
            "Ms. Adams (Ada)"
        ], 
        "startDate": 1341909000000, 
        "studentSets": [
            "BI group  3A"
        ]
}

/timetabletypes

Query all possible timetable types. 

Type: GET

Parameters: none

Request URL

http://demo.eveoh.nl/api/v0/timetabletypes?access_token=your_token

Response Body

{
    "timetableType": [
        "location", 
        "zone", 
        "module", 
        "student", 
        "staff", 
        "pos", 
        "posss", 
        "studentset", 
        "studentsetgroup", 
        "modulegroup", 
        "user"
    ]
}

/timetablefilters

Query all filters available for a specific timetable type. 

Type: GET

Parameters

typethe type of the timetable
departmentFiltera specific filter

Request URL

http://demo.eveoh.nl/api/v0/timetablefilters?type=pos&access_token=your_token 

Response Body

{
    "filterattribute": [
        {
            "option": [
                {
                    "name": " Faculty of Informatics", 
                    "value": "646ADCA666D4A88402CA46C26A73803C"
                }, 
                {
                    "name": " Faculty of Law", 
                    "value": "646ADCA666D4A88402CA46C26A738046"
                }
            ], 
            "type": "department"
        }
    ]
}

/databases

Query the available databases.

Type: GET

Parameters: none

Request URL

http://demo.eveoh.nl/api/v0/databases?access_token=your_token

Response Body

{
    "database": [
        "2011"
    ]
}

/weeklabels

Query the weeklabels.

Type: GET

Parameters: none

Request URL

http://demo.eveoh.nl/api/v0/weeklabels?access_token=your_token

Response Body

{
     "value": "23", 
     "week": 11223
}

 

 

  • No labels