Download OpenAPI specification:
This is the API for the skill matrix.
Create a new user and return it.
| email required | string <email> ^(?:[A-Za-z0-9_'+\-]+\.)*[A-Za-z0-9_'+\-]*[A-... The email address of the user. |
| firstName required | string non-empty The first name of the user. |
| lastName required | string non-empty The last name of the user. |
| teamId required | string <uuid> ^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-4[0-9a-fA-F]{... The ID of the team. |
{- "email": "peter.pan@example.com",
- "firstName": "Peter",
- "lastName": "Pan",
- "teamId": "00000000-0002-4000-8000-000000000000"
}{- "id": "00000000-0001-4000-8000-000000000000",
- "email": "peter.pan@example.com",
- "firstName": "Peter",
- "lastName": "Pan",
- "teamId": "00000000-0002-4000-8000-000000000000"
}Get the user with the given id, if it exists.
| id required | string <uuid> Example: 11111111-0001-4000-8000-111111111111 |
{- "id": "00000000-0001-4000-8000-000000000000",
- "email": "peter.pan@example.com",
- "firstName": "Peter",
- "lastName": "Pan",
- "teamId": "00000000-0002-4000-8000-000000000000"
}Delete the user with the given id, if it exists.
| id required | string <uuid> Example: 11111111-0001-4000-8000-111111111111 |
{- "statusCode": 409,
- "message": "The transaction was rolled back because it conflicted with another one running at the same time. Retrying the request may succeed."
}Update an existing user, if it exists, and return it.
| id required | string <uuid> Example: 11111111-0001-4000-8000-111111111111 |
| id required | string <uuid> ^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-4[0-9a-fA-F]{... The ID of the user. |
| email required | string <email> ^(?:[A-Za-z0-9_'+\-]+\.)*[A-Za-z0-9_'+\-]*[A-... The email address of the user. |
| firstName required | string non-empty The first name of the user. |
| lastName required | string non-empty The last name of the user. |
| teamId required | string <uuid> ^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-4[0-9a-fA-F]{... The ID of the team. |
{- "id": "00000000-0001-4000-8000-000000000000",
- "email": "peter.pan@example.com",
- "firstName": "Peter",
- "lastName": "Pan",
- "teamId": "00000000-0002-4000-8000-000000000000"
}{- "id": "00000000-0001-4000-8000-000000000000",
- "email": "peter.pan@example.com",
- "firstName": "Peter",
- "lastName": "Pan",
- "teamId": "00000000-0002-4000-8000-000000000000"
}Create a new team and return it.
| name required | string non-empty The name of the team. |
{- "name": "Platform"
}{- "id": "00000000-0002-4000-8000-000000000000",
- "name": "Platform"
}Delete the team with the given id, if it exists.
| id required | string <uuid> Example: 22222222-0002-4000-8000-111111111111 |
| If-Match required | string Example: W/"d41d8cd98f00b204e9800998ecf8427e" The team’s current ETag. |
{- "statusCode": 409,
- "message": "Entity of type Team identified by (id=22222222-0002-4000-8000-111111111111) is in use"
}Update an existing team, if it exists, and return it.
| id required | string <uuid> Example: 22222222-0002-4000-8000-111111111111 |
| If-Match required | string Example: W/"d41d8cd98f00b204e9800998ecf8427e" The team’s current ETag. |
| id required | string <uuid> ^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-4[0-9a-fA-F]{... The ID of the team. |
| name required | string non-empty The name of the team. |
{- "id": "00000000-0002-4000-8000-000000000000",
- "name": "Platform"
}{- "id": "00000000-0002-4000-8000-000000000000",
- "name": "Platform"
}Create a new skill and return it.
| name required | string non-empty The name of the skill. |
| description required | string non-empty A description of the skill. |
| exampleIds required | Array of strings <uuid> unique [ items <uuid >^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-4[0-9a-fA-F]{... ] The ids of the examples associated with this skill. |
{- "name": "Backend Development",
- "description": "Designing and building server-side services.",
- "exampleIds": [
- "44444444-0004-4000-8000-111111111111"
]
}{- "id": "33333333-0003-4000-8000-111111111111",
- "name": "Backend Development",
- "description": "Designing and building server-side services.",
- "exampleIds": [
- "44444444-0004-4000-8000-111111111111"
]
}Get the skill with the given id, if it exists.
| id required | string <uuid> Example: 33333333-0003-4000-8000-111111111111 |
{- "id": "33333333-0003-4000-8000-111111111111",
- "name": "Backend Development",
- "description": "Designing and building server-side services.",
- "exampleIds": [
- "44444444-0004-4000-8000-111111111111"
]
}Delete the skill with the given id, if it exists.
| id required | string <uuid> Example: 33333333-0003-4000-8000-111111111111 |
| If-Match required | string Example: W/"d41d8cd98f00b204e9800998ecf8427e" The skill’s current ETag. |
{- "statusCode": 409,
- "message": "Entity of type Skill identified by (id=33333333-0003-4000-8000-111111111111) is in use"
}Update an existing skill, if it exists, and return it.
| id required | string <uuid> Example: 33333333-0003-4000-8000-111111111111 |
| If-Match required | string Example: W/"d41d8cd98f00b204e9800998ecf8427e" The skill’s current ETag. |
| id required | string <uuid> ^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-4[0-9a-fA-F]{... The ID of the skill. |
| name required | string non-empty The name of the skill. |
| description required | string non-empty A description of the skill. |
| exampleIds required | Array of strings <uuid> unique [ items <uuid >^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-4[0-9a-fA-F]{... ] The ids of the examples associated with this skill. |
{- "id": "33333333-0003-4000-8000-111111111111",
- "name": "Backend Development",
- "description": "Designing and building server-side services.",
- "exampleIds": [
- "44444444-0004-4000-8000-111111111111"
]
}{- "id": "33333333-0003-4000-8000-111111111111",
- "name": "Backend Development",
- "description": "Designing and building server-side services.",
- "exampleIds": [
- "44444444-0004-4000-8000-111111111111"
]
}Create a new example kind and return it.
| name required | string non-empty The name of the example kind. |
{- "name": "Technology"
}{- "id": "55555555-0005-4000-8000-111111111111",
- "name": "Technology"
}Delete the example kind with the given id, if it exists.
| id required | string <uuid> Example: 55555555-0005-4000-8000-111111111111 |
| If-Match required | string Example: W/"d41d8cd98f00b204e9800998ecf8427e" The example kind’s current ETag. |
{- "statusCode": 409,
- "message": "Entity of type ExampleKind identified by (id=55555555-0005-4000-8000-111111111111) is in use"
}Update an existing example kind, if it exists, and return it.
| id required | string <uuid> Example: 55555555-0005-4000-8000-111111111111 |
| If-Match required | string Example: W/"d41d8cd98f00b204e9800998ecf8427e" The example kind’s current ETag. |
| id required | string <uuid> ^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-4[0-9a-fA-F]{... The ID of the example kind. |
| name required | string non-empty The name of the example kind. |
{- "id": "55555555-0005-4000-8000-111111111111",
- "name": "Technology"
}{- "id": "55555555-0005-4000-8000-111111111111",
- "name": "Technology"
}[- {
- "id": "44444444-0004-4000-8000-111111111111",
- "name": "NestJS",
- "exampleKindId": "55555555-0005-4000-8000-111111111111",
}
]Create a new example and return it.
| name required | string non-empty The display name of the example. |
| exampleKindId required | string <uuid> ^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-4[0-9a-fA-F]{... The ID of the example kind. |
| url required | string or null <uri> An optional URL for the example, or null. |
{- "name": "NestJS",
- "exampleKindId": "55555555-0005-4000-8000-111111111111",
}{- "id": "44444444-0004-4000-8000-111111111111",
- "name": "NestJS",
- "exampleKindId": "55555555-0005-4000-8000-111111111111",
}Get the example with the given id, if it exists.
| id required | string <uuid> Example: 44444444-0004-4000-8000-111111111111 |
{- "id": "44444444-0004-4000-8000-111111111111",
- "name": "NestJS",
- "exampleKindId": "55555555-0005-4000-8000-111111111111",
}Delete the example with the given id, if it exists.
| id required | string <uuid> Example: 44444444-0004-4000-8000-111111111111 |
| If-Match required | string Example: W/"d41d8cd98f00b204e9800998ecf8427e" The example’s current ETag. |
{- "statusCode": 409,
- "message": "Entity of type Example identified by (id=44444444-0004-4000-8000-111111111111) is in use"
}Update an existing example, if it exists, and return it.
| id required | string <uuid> Example: 44444444-0004-4000-8000-111111111111 |
| If-Match required | string Example: W/"d41d8cd98f00b204e9800998ecf8427e" The example’s current ETag. |
| id required | string <uuid> ^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-4[0-9a-fA-F]{... The ID of the example. |
| name required | string non-empty The display name of the example. |
| exampleKindId required | string <uuid> ^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-4[0-9a-fA-F]{... The ID of the example kind. |
| url required | string or null <uri> An optional URL for the example, or null. |
{- "id": "44444444-0004-4000-8000-111111111111",
- "name": "NestJS",
- "exampleKindId": "55555555-0005-4000-8000-111111111111",
}{- "id": "44444444-0004-4000-8000-111111111111",
- "name": "NestJS",
- "exampleKindId": "55555555-0005-4000-8000-111111111111",
}Get all skill proficiencies for the given team.
| teamId required | string <uuid> Example: 22222222-0002-4000-8000-111111111111 |
{- "teamId": "00000000-0002-4000-8000-000000000000",
- "skills": [
- {
- "skillId": "33333333-0003-4000-8000-111111111111",
- "proficiency": 3
}
]
}Add a skill proficiency to the given team.
| skillId required | string <uuid> Example: 33333333-0003-4000-8000-111111111111 |
| teamId required | string <uuid> Example: 22222222-0002-4000-8000-111111111111 |
| proficiency required | integer [ 0 .. 4 ] The required proficiency level for a skill (0–4). |
{- "proficiency": 3
}{- "teamId": "00000000-0002-4000-8000-000000000000",
- "skills": [
- {
- "skillId": "33333333-0003-4000-8000-111111111111",
- "proficiency": 3
}
]
}Update an existing skill proficiency for the given team.
| skillId required | string <uuid> Example: 33333333-0003-4000-8000-111111111111 |
| teamId required | string <uuid> Example: 22222222-0002-4000-8000-111111111111 |
| proficiency required | integer [ 0 .. 4 ] The required proficiency level for a skill (0–4). |
{- "proficiency": 3
}{- "teamId": "00000000-0002-4000-8000-000000000000",
- "skills": [
- {
- "skillId": "33333333-0003-4000-8000-111111111111",
- "proficiency": 3
}
]
}Remove an existing skill proficiency from the given team.
| skillId required | string <uuid> Example: 33333333-0003-4000-8000-111111111111 |
| teamId required | string <uuid> Example: 22222222-0002-4000-8000-111111111111 |
{- "teamId": "00000000-0002-4000-8000-000000000000",
- "skills": [
- {
- "skillId": "33333333-0003-4000-8000-111111111111",
- "proficiency": 3
}
]
}