Learning_goals endpoint
LearningGoal object
| Name | Type | Description |
|---|---|---|
| id | integer |
The learning_goals id |
| description | string |
The description of a learning goal |
| created_at | datetime |
Timestamp of creation date |
| updated_at | datetime |
Timestamp of update date |
Validations
| Field | Value |
|---|---|
| description | Has a minimum of 3 characters and a maximum of 1000 |
| description | Must be present |
Endpoints
Deze endpoints worden beveiligd door een authenticatie. Zie: API Authenticatie
| URL | Description |
|---|---|
| Get api/v1/pops/:pop_id/competences/:competence_id/learning_goals | Show all learning goals |
| POST api/v1/pops/:pop_id/competences/:competence_id/learning_goals | Create a new learning goal |
| PATCH api/v1/pops/:pop_id/competences/:competence_id/learning_goals/:id | Update a learning goal |
| DELETE api/v1/pops/:pop_id/competences/:competence_id/learning_goals/:id | Delete a learning goal |
GET /api/v1/learning_goals
Het learning goal endpoint geeft je een object met daarin een learning_goals
attribute. Dit ziet er als volgt uit:
{
"learning_goal": {
"id": 902,
"description": "Dit semester wil ik validaties valideren door mijn eigen specs leren schrijven voor mijn app",
"created_at": "2016-01-06T16:01:19.594+01:00",
"updated_at": "2016-01-06T16:01:19.594+01:00",
"competence_id": 1,
"pop_id": 1,
"user_id": 28
}
{
"learning_goal": {
"id": 903,
"description": "Dit semester een API Authenticatie leren maken",
"created_at": "2016-01-06T16:01:19.594+01:00",
"updated_at": "2016-01-06T16:01:19.594+01:00",
"competence_id": 1,
"pop_id": 1,
"user_id": 28
}
}
Status code:
Succesvol Request = 200
POST /api/v1/learning_goals
Bij een POST naar /api/v1/learning_goals wordt er een nieuwe 'learning goal' aangemaakt. Hierbij moet een description-veld meegestuurd worden. Deze description moet voldoen aan minimaal 3 en maximaal 1000 characters. Elk nieuw object krijgt een id mee en een tijd wanneer hij is aangemaakt en geüpdatet is.
Example request
POST http://localhost:3000/api/v1/learning_goals
description: Hallo dit is een test
| Field | Value |
|---|---|
| description | Hallo dit is een test |
Example response:
Status: HTTP/1.1 200 OK
{
"learning_goal":{
"id": 1,
"description": "Hallo dit is een test",
"created_at": "2015-11-12T10:33:23.091Z",
"updated_at": "2015-11-12T10:33:23.091Z"
}
}
Errors:
Als description minder dan 3 characters heeft, krijg je de volgende informatie terug:
{
"description": [
"is too short (minimum is 3 characters)"
]
}
Te veel characters heeft geeft hij dit terug:
{
"description": [
"is too long (maximum is 1000 characters)"
]
}
PATCH /api/v1/learning_goals/:id
Bij een PATCH naar /api/v1/pops/2/competences/4/learning_goals/6 word er gekeken naar een bestaand learning goal waarna hij naar een id kijkt van een learning goal. Hiervoor geldt ook dat hij een description-veld mee moet geven. Deze description moet weer voldoen aan de hierboven beschreven eisen.
Example request
POST http://localhost:3000/api/v1/pops/2/competences/4/learning_goals/6
description: Hallo dit is een test
| Field | Value |
|---|---|
| description | Hallo dit is een test |
Example response:
Status: HTTP/1.1 202 Accepted
{
"learning_goal":{
"id": 1,
"description": "Hallo dit is een test",
"created_at": "2015-11-12T10:33:23.091Z",
"updated_at": "2015-11-12T10:33:23.091Z"
}
}
Errors:
Als description minder dan 3 characters heeft, krijg je de volgende informatie terug:
{
"description": [
"is too short (minimum is 3 characters)"
]
}
Te veel characters heeft geeft hij dit terug:
{
"description": [
"is too long (maximum is 1000 characters)"
]
}
DELETE /api/v1/learning_goals/:id
Wanneer er een DELETE bij /api/v1/learning_goals/:id word uitgevoerd, wordt er een bestaand learning goal verwijdert. Hier voor wordt er gekeken naar het id van het learning goal dat verwijdert wordt. Als deze verwijderd is dan krijg je geen content terug.
Status: HTTP/1.1 204 No Content