| Method | URI | Action | 
|---|---|---|
| GET | /specializations | index | 
| GET | /specializations/{id} | show | 
| POST | /specializations | store | 
| PATCH | /specializations/{id} | update | 
| DELETE | /specializations/{id} | delete | 
| GET | /specializations/{id}/semesters/{id}/prelationable-courses | custom get | 
{
  "id": 1,
  "code": "diseño_grafico",
  "title": "Diseño Grafico",
  "color": " \#ffffff",     // ignora el palito \ es por limitaciones de renderizado
  "text_color": "\#ffffff",
  "enabled": true,
  "updated_at": "2020-03-06 18:11:17",
  "created_at": "2020-03-06 18:11:17"
}HasMany pensumsHasOne latestPensumHasMany sectionsHasMany semesters Through pensums{primary} Al obtener un modelo con el metodo
showoindexse puede utilizar un query string para cargar las relaciones?with=relationo?with=relationA,relationB
GET /specializationsextends Query Filters| Filter | Description | 
|---|---|
| search=string | Busca a traves codeytitle | 
| enabled=bool | Obtiene solo los habilitados | 
200[
  {
    // Model Attributes
  }
]POST /specializations{
  "code": "required|string",
  "title": "required|string",
  "color": "required|string",
  "text_color": "required|string",
  "enabled": "boolean" // default false
}201{
  // Model Attributes
}{warning} Aun no hay reglas definidas para limites de actualiación
PATCH /specializations/{id}{
  "code": "string",
  "title": "string",
  "color": "string",
  "text_color": "string",
  "enabled": "boolean" // default false
}200{
  // Model Attributes
}{warning} Aun no hay reglas definidas para limites de eliminación
DELETE /specializations/{id}204 No ContentSe obtiene una lista de materias desde un semestre de origen
Proporcionando specialization_id y semester_id se busca los semestres mayores que semester_id con sus materias.
GET /specializations/{id}/semesters/{id}/prelationable-courses200{
  "originating_semester": { // este sera el semestre proporcionado en la ruta con materias
    "id": 1,
    "number": 3,
    "code": "SEM3",
    "created_at": "2020-04-07 10:37:46",
    "updated_at": "2020-04-07 10:37:46",
    "pensum_id": 1,
    "courses": [
      {
        "id": 1,
        "code": "code",
        "title": "title",
        "scheduled_content": "Test description",
        "scheduled_content_resource": null,
        "credits": 10,
        "hours": 20,
        "priority": 1,
        "calculated_avg": null,
        "elective": false,
        "enabled": true,
        "final_delivery": false,
        "final_delivery_value_percent": null,
        "created_at": "2020-04-07 10:37:46",
        "updated_at": "2020-04-07 10:37:46",
        "pivot": {
          "semester_id": "1",
          "course_id": "1"
        }
      }
    ]
  },
  "target_semesters": [ // estos seran todos los semestre mayores al de origen con materias
    {
      "id": 2,
      "number": 4,
      "code": "SEM4",
      "created_at": "2020-04-07 10:37:46",
      "updated_at": "2020-04-07 10:37:46",
      "pensum_id": 2,
      "courses": [
        {
          "id": 2,
          "code": "code",
          "title": "title",
          "scheduled_content": "Test description",
          "scheduled_content_resource": null,
          "credits": 10,
          "hours": 20,
          "priority": 1,
          "calculated_avg": null,
          "elective": false,
          "enabled": true,
          "final_delivery": false,
          "final_delivery_value_percent": null,
          "created_at": "2020-04-07 10:37:46",
          "updated_at": "2020-04-07 10:37:46",
          "pivot": {
            "semester_id": "2",
            "course_id": "2"
          }
        }
      ]
    }
  ]
}