/api/courses
HEAD, GET
List courses using the filters set as parameters. The number of courses is represented in the X-Count
header - use the HEAD
request to simply count the number of courses matching the filters. Use the GET
request to actually fetch them.
Courses is the technical name given to resources that applicants “can apply to”. In some educational systems students may apply to programmes, in others, to courses. In all these cases (course, programme etc.) the technical term will still remain “course”.
Syntax
GET /api/courses Host: apply.example.edu Authorization: DREAM apikey="..."
Parameters
Name | Description | Notes | |
---|---|---|---|
byStatuses | Optional | List of statuses, currently limited to: Online , Standby , Draft , Archived , Template , Closed | [1] |
byTypes | Optional | List of course types | [1] |
byModes | Optional | List of course modes | [1] |
- Note [1]: Lists can be either comma or space separated. All list items are combined with logical
OR
operators - in other words an institution is considered matching if it matches to any of the values in the list.
Response headers
Content-Type: application/json Content-Length: 1456 X-Count: 123
Response example
{ "1": { "status": "Online", "updated": "2014-06-20T11:00:15+00:00", "institution": "/api/institutions/1", "intakes": { "1": "/api/intakes/1" }, "featured": false, "type": "UG", "awards": [ { "abbr": "BSc", "full": "" } ], "name": "Sample under-graduate course", "mode": "FT", "duration": "3 years", "credits": null, "language": "en", "country": "EE", "location": "Tallinn", "code": null, "quota": null, "prospect": { "uri": null } }, "2": { "status": "Online", "updated": "2014-06-20T11:00:15+00:00", "institution": "/api/institutions/1", "intakes": { "1": "/api/intakes/1" }, "featured": false, "type": "PG", "awards": [ { "abbr": "MSc", "full": "" } ], "name": "Sample post-graduate course", "mode": "FT", "duration": "2 years", "credits": null, "language": "en", "country": "EE", "location": "Tallinn", "code": null, "quota": null, "prospect": { "uri": null } }, "3": { "status": "Online", "updated": "2014-06-20T11:00:15+00:00", "institution": "/api/institutions/1", "intakes": { "1": "/api/intakes/1" }, "featured": false, "type": "TU", "awards": [ { "abbr": "BSc", "full": "" } ], "name": "Sample top-up course", "mode": "FT", "duration": "1 year", "credits": null, "language": "en", "country": "EE", "location": "Tallinn", "code": null, "quota": null, "prospect": { "uri": null } } }
POST
Create a new blank course. This is useful when you want to automatically import a list of courses from another system into DreamApply. Please note however, that the needed fields for fully configuring an applicable course in DreamApply is quite long, including various settings for admission requirements, intakes, motivation letters, fees and so on. This data is typically not available in other systems, like Student Information Systems, at least not in the required depth. It is therefore recommended to use this API call to import a “basic list” of courses that will be then fine-tuned and fully configured using the dedicated GUI tools in DreamApply built for managing this data effectively.
The URI for the new course that was created is returned in the Location
header.
Syntax
POST /api/applicants Host: apply.example.edu Authorization: DREAM apikey="..."
Parameters
Name | Description | |
---|---|---|
institution | Required | A valid institution ID in DreamApply (see the /api/institutions calls to learn it). |
type | Required | Course type code (undergraduate, postgraduate, etc). Make a call to /api/classificators or use DreamApply GUI tools (System → Classificators) to learn possible Course type classificator values. |
mode | Required | Course mode code (full time, part time, etc). Make a call to /api/classificators or use DreamApply GUI tools (System → Classificators) to learn possible Course mode classificator values. |
name | Required | Up to 2048 characters. |
awards_abbr | Optional | Abbreviation of the award (BSc, MSc, etc). |
awards_full | Optional | Full name of the award (for example “Bachelor of Science”). Up to 2048 characters. |
language | Optional | Accepts a 2-letter (alpha-2) ISO language code. |
country | Optional | Accepts an ISO 3166-1 alpha-2 country code. |
location | Optional | The location where the studies take place (city, district, etc). Up to 256 characters. |
code | Optional | Can be any text to uniquely identify this course in another system, like a Study Information System or course catalogue. Up to 128 characters. |
prospect_uri | Optional | An URL where the applicant can learn more about this course/programme. |
Response headers
Content-Type: application/json Content-Length: 0 Location: /api/applicants/12345
Response codes
201 Created | New course was created |
422 Unprocessable Entity | There were some validation errors (see the returned text) |