Skip to content

forgeTTimeTEAM/timestamp-backend

Repository files navigation

Timestamp API

Olá! Seja bem vindo(a) a documentação da API, esta que tem como objetivo o gerenciamento de uma plataforma em que serão hospedados vídeos e seus respectivos marcadores, a aplicação também conta com sistema de usuários, turmas, módulos e sprints, permissão de aluno, instrutor, e administrador.


1. Visão Geral

Visão geral do projeto, abaixo as principais tecnologias utilizadas e a url base da API.

ícones com as tecnologias utilizadas, sendo elas: node, express, typescript, postgresql, prisma, jest, heroku


URL base da API: https://backend-timestamp.herokuapp.com/


2. Para dar início ao projeto, siga as instruções abaixo:

Voltar para o topo

2.1 Instalando as dependências do projeto

Clone o projeto em sua máquina e instale as dependências do projeto com o seguinte comando:

yarn

2.2 Criando e configurando arquivo com as variáveis de ambiente

Em seguida, crie um arquivo .env, copiando o formato do arquivo .env.example:

.env

Configure suas variáveis de ambiente com suas credenciais do Postgres do seu banco de dados criado anteriormente.

2.3 Migrations

Execute as migrations com o seguinte comando:

yarn prisma migrate dev

Índice com todas as rotas do projeto


1 - Users


1.1 - POST


Criação de usuário


Endpoint: /users


Rota responsável por criar um usuário, por padrão, o usuário criado será um estudante


Campos obrigatórios:


Campo Tipo Descrição
name string O nome do usuário.
email string O email do usuário.
password string A senha de acesso do usuário
groupId string O grupo do usuário.
moduleId string O módulo do usuário.

Exemplo de requisição de criação de usuário válida, corpo da requisição:

{
	"name": "Sara Lins",
	"email": "[email protected]",
	"password": "sara#321",
	"groupId": "5bd3b8cc-c522-406f-8218-b06fb2af4bca",
	"moduleId": "430ec768-812c-4241-adb5-1c1129bb60d7"
}

Retorno da requisição:

{
	"id": "22322984-3ebc-460d-8321-4ded36eeafa6",
	"name": "Sara Lins",
	"email": "[email protected]",
	"role": "STUDENT",
	"createdAt": "2022-11-08T15:23:59.091Z",
	"updatedAt": "2022-11-08T15:23:59.091Z",
	"groupId": "5bd3b8cc-c522-406f-8218-b06fb2af4bca",
	"modules": [
		{
			"id": "21d5d36e-ee74-4514-a0f8-591fc7f5d37e",
			"createdAt": "2022-11-08T15:23:59.091Z",
			"updatedAt": "2022-11-08T15:23:59.091Z",
			"userId": "22322984-3ebc-460d-8321-4ded36eeafa6",
			"moduleId": "430ec768-812c-4241-adb5-1c1129bb60d7"
		}
	]
}
Status Code
201

Possíveis erros:

Erro Mensagem Status Code
Tentativa de criar um usuário sem nome You must provide a name 400
Tentativa de criar um usuário sem email You must provide a email 400
Tentativa de criar um usuário sem senha You must provide a password 400
Tentativa de criar um usuário sem groupId You must provide a group id 400
Tentativa de criar um usuário sem moduleId You must provide a module id 400
Tentativa de criar um usuário com um group id inválido Group not found 404
Tentativa de criar um usuário com um module id inválido Module not found 404
Tentativa de criar um usuário com um email já cadastrado Email is already in use 409

1.2 - POST

Voltar para o topo

Login do usuário


Endpoint: /users/login


Rota responsável pelo login do usuário, seja ele estudante, instrutor ou administrador, rota retorna um token de acesso


Campos obrigatórios:


Campo Tipo Descrição
email string O email do usuário.
password string A senha de acesso do usuário

Exemplo de requisição de login válida, corpo da requisição:

{
	"email": "[email protected]",
	"password": "sara#321"
}

Retorno da requisição:

{
	"token": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJyb2xlIjoiU1RVREVOVCIsImdyb3VwSWQiOiI3ZTQ0ZWM4..."
}
Status Code
200

Possíveis erros:

Erro Mensagem Status Code
Tentativa de login sem envio de email e/ou senha Wrong email or password 403
Tentativa de login com email não cadastrado User not registered 404
Tentativa de login com senha errada Wrong email or password 403

1.3 - GET

Voltar para o topo


Obter todos os dados do usuário


Endpoint: /users/profile


Rota responsável por retornar todos os dados do usuário a partir do token


Deve ser enviado:


  • Token de autorização do tipo Bearer token

Exemplo de requisição válida:

	/users/profile, {
        headers: {
          Authorization: "Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJyb2xlIjoiU1RVREVOVCIsImdyb3VwSWQiOiI3ZTQ0ZWM4..."
        	}
		}

Retorno da requisição:

{
    "id": "22322984-3ebc-460d-8321-4ded36eeafa6",
    "name": "Sara Lins",
    "email": "[email protected]",
    "role": "STUDENT",
    "createdAt": "2022-11-08T15:23:59.091Z",
    "updatedAt": "2022-11-08T15:23:59.091Z",
    "groupId": "5bd3b8cc-c522-406f-8218-b06fb2af4bca",
    "modules": [
        {
            "id": "21d5d36e-ee74-4514-a0f8-591fc7f5d37e",
            "createdAt": "2022-11-08T15:23:59.091Z",
            "updatedAt": "2022-11-08T15:23:59.091Z",
            "userId": "22322984-3ebc-460d-8321-4ded36eeafa6",
            "moduleId": "430ec768-812c-4241-adb5-1c1129bb60d7",
            "module": {
                "id": "430ec768-812c-4241-adb5-1c1129bb60d7",
                "name": "M1",
                "createdAt": "2022-11-08T15:23:59.091Z",
                "groupId": "5bd3b8cc-c522-406f-8218-b06fb2af4bca",
                "sprints": [
                    {
                        "id": "1830d0f7-1e17-4e03-b504-925c20dee960",
                        "name": "S1",
                        "moduleId": "430ec768-812c-4241-adb5-1c1129bb60d7",
                        "videos": []
                    },
					...
                ]
            }
        }
    ],
    "group": {
        "id": "5bd3b8cc-c522-406f-8218-b06fb2af4bca",
        "number": 12
    }
}
Status Code
200

Possíveis erros:

Erro Mensagem Status Code
Tentativa sem envio do token Missing token 401
Tentativa com envio de token inválido Invalid or expired token 401

1.4 - GET

Voltar para o topo

Listar todos os usuários


Endpoint: /users


Rota responsável por retornar alguns dados de todos os usuários


Deve ser enviado:


  • Token de autorização do tipo Bearer Token com permissão de administrador

Exemplo de requisição válida:

	/users, {
        headers: {
          Authorization: "Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJyb2xlIjoiU1RVREVOVCIsImdyb3VwSWQiOiI3ZTQ0ZWM4..."
        	}
		}

Retorno da requisição:

[
	{
		"id": "22322984-3ebc-460d-8321-4ded36eeafa6",
		"name": "Sara Lins",
		"email": "[email protected]",
		"role": "STUDENT",
		"createdAt": "2022-11-08T15:23:59.091Z",
		"updatedAt": "2022-11-08T15:23:59.091Z",
		"groupId": "5bd3b8cc-c522-406f-8218-b06fb2af4bca"
	},
	...
]
Status Code
200

Possíveis erros:

Erro Mensagem Status Code
Tentativa sem envio do token Missing token 401
Tentativa com envio de token inválido Invalid or expired token 401
Tentativa com envio de token de estudante ou instrutor Access denied 403

1.5 - GET

Voltar para o topo

Retorna um usuário a partir do id


Endpoint: /users/:id


Rota responsável por retornar alguns dados de apenas um usuário a partir do id


Deve ser enviado:


  • Token de autorização do tipo Bearer Token com permissão de administrador

Exemplo de requisição válida:

	/users/22322984-3ebc-460d-8321-4ded36eeafa6, {
        headers: {
          Authorization: "Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJyb2xlIjoiU1RVREVOVCIsImdyb3VwSWQiOiI3ZTQ0ZWM4..."
        	}
		}

Retorno da requisição:

	{
		"id": "22322984-3ebc-460d-8321-4ded36eeafa6",
		"name": "Sara Lins",
		"email": "[email protected]",
		"role": "STUDENT",
		"createdAt": "2022-11-08T15:23:59.091Z",
		"updatedAt": "2022-11-08T15:23:59.091Z",
		"groupId": "5bd3b8cc-c522-406f-8218-b06fb2af4bca"
	}
Status Code
200

Possíveis erros:

Erro Mensagem Status Code
Tentativa sem envio do token Missing token 401
Tentativa com envio de token inválido Invalid or expired token 401
Tentativa com envio de token de estudante ou instrutor Access denied 403
Tentativa com envio de id inválido User not found 404

1.6 - DELETE

Voltar para o topo

Deleção de usuário


Endpoint: /users/:id


Rota responsável pela deleção de um usuário a partir do id


Deve ser enviado


  • Token de autorização do tipo Bearer token com permissão de administrador

Exemplo de requisição válida:

	/users/22322984-3ebc-460d-8321-4ded36eeafa6, {
        headers: {
          Authorization: "Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJyb2xlIjoiU1RVREVOVCIsImdyb3VwSWQiOiI3ZTQ0ZWM4..."
        	}
		}

Status Code
204

Possíveis erros:

Erro Mensagem Status Code
Tentativa sem envio de token Missing token 401
Tentativa com envio de token inválido Invalid or expired token 401
Tentativa com envio de token de estudante ou instrutor Access denied 403
Tentativa com envio de id inválido User not found 404

1.7 - PATCH

Voltar para o topo


Atualização de usuário


Endpoint: /users/:id


Rota responsável pela atualização do usuário, apenas a turma(groupId) poderá ser alterada


Deve ser enviado


  • Token de autorização do tipo Bearer Token com permissão de administrador

Campos obrigatórios:


Campo Tipo Descrição
groupId string O grupo do usuário

Exemplo de requisição válida, corpo da requisição:

	/users/22322984-3ebc-460d-8321-4ded36eeafa6, {
        headers: {
          Authorization: "Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJyb2xlIjoiU1RVREVOVCIsImdyb3VwSWQiOiI3ZTQ0ZWM4..."
        	},
		body: {
			"groupId": "7e44ec8c-84e2-42d1-aefb-09531c5ba937"
			  }
		}

Retorno da requisição:

{
	"id": "22322984-3ebc-460d-8321-4ded36eeafa6",
	"name": "sara9",
	"email": "[email protected]",
	"role": "STUDENT",
	"createdAt": "2022-11-05T00:15:25.632Z",
	"updatedAt": "2022-11-08T21:42:55.051Z",
	"groupId": "7e44ec8c-84e2-42d1-aefb-09531c5ba937"
}
Status Code
200

Possíveis erros:

Erro Mensagem Status Code
Tentativa sem envio de token Missing token 401
Tentativa com envio de token inválido Invalid or expired token 401
Tentativa com envio de token de estudante ou instrutor Access denied 403
Tentativa com envio de id do usuário inválido User not found 404
Tentativa sem enviar o campo groupId Need to provide the data in the request 400
Tentativa com envios de campos além do groupId It is only possible to update the groupId 400
Tentativa com envios de group id igual Provide a different groupId than the current one 404

2 - Groups

Voltar para o topo


2.1 POST

Create group

Endpoint: /groups

Rota para criação de turmas

  • Necessário token de autorização
  • Necessário ser administrador
  • Não possui body na requisição

Body da resposta:

{
      id: 'e7cdc0d9-d9ab-4fb3-b997-7e12954f83af',
      number: 1,
      modules: [
        {
          id: '68d0c629-448d-4a02-b28f-75b45a703bf9',
          name: 'M1',
          createdAt: '2022-11-10T02:30:26.065Z',
          groupId: 'e7cdc0d9-d9ab-4fb3-b997-7e12954f83af',
          sprints: [
            ...
          ]
        }
      ]
    }
Status Code
201

Possíveis erros:

Error Message Status Code
should not be able to create a group without token Missing token 401
should not be able to create a group with invalid/expired token Invalid or expired token 401
should not be able to create a group without adm permission Access denied 403

2.2 GET

List groups

Endpoint: /groups

Rota para listar turmas

  • Necessário token de autorização
  • Necessário ser administrador
  • Não possui body na requisição

Body da resposta:

[
      {
        id: '43dde98f-5419-42ed-b7a1-603f49eb9852',
        number: 1,
        modules: [
            {
                ...
            }
        ] ,
        users: [
            {
                ...
            }
        ]
      },
      ...
]
Status Code
200

Possíveis erros:

Error Message Status Code
should not be able to list groups without token Missing token 401
should not be able to list groups with invalid/expired token Invalid or expired token 401
should not be able to list groups without adm permission Access denied 403
should not be able to create a video with an invalid groupId groupId not found 404

2.3 GET

Find group

Endpoint: /groups/:id

Rota para encontrar turma através do ID

  • Necessário token de autorização
  • Necessário ser administrador
  • Não possui body na requisição

Body da resposta:

[
      {
        id: '43dde98f-5419-42ed-b7a1-603f49eb9852',
        number: 1,
        modules: [
            {
                ...
            }
        ] ,
        users: [
            {
                ...
            }
        ]
      },
      ...
]
Status Code
200

Possíveis erros:

Error Message Status Code
should not be able to find a group without token Missing token 401
should not be able to find a group with invalid/expired token Invalid or expired token 401
should not be able to find a group without adm permission Access denied 403
should not be able to create a video with an invalid groupId groupId not found 404

3 - Modules

Voltar para o topo

3.1 - POST

Voltar para o topo

Criar um módulo


Endpoint: /modules


Rota responsável por criar um módulo, por padrão, o módulo será criado com 8 sprints, deve ser passado no corpo da requisição o id da turma (groupId), name e sprintPrefixName opcionais


Campos:


Campo Tipo Descrição
groupId string id da turma
name string nome do módulo (opcional)
sprintPrefixName string nome do prefixo de cada sprint (opcional)

Deve ser enviado:


  • Token de autorização do tipo Bearer Token com permissão de administrador

Exemplo de requisição válida:

	/modules, {
      headers: {
        Authorization: "Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJyb2xlIjoiU1RVREVOVCIsImdyb3VwSWQiOiI3ZTQ0ZWM4..."
        },
	  body: {
  			  groupId: "5bd3b8cc-c522-406f-8218-b06fb2af4bca",
  			  name: "M4",
  			  sprintPrefixName: "S",
		    }
}

Retorno da requisição:

{
      id: '368007a8-84ee-4263-807b-5c8ae2a82d05',
      name: 'M4',
      createdAt: '2022-11-10T02:31:12.123Z',
      groupId: '5bd3b8cc-c522-406f-8218-b06fb2af4bca',
      sprints: [
        {
          id: '87e25189-5a6d-49da-98b6-2fb272b531ab',
          name: 'S1',
          moduleId: '368007a8-84ee-4263-807b-5c8ae2a82d05'
        },
		...
	  ]


    }
Status Code
201

Possíveis erros:

Erro Mensagem Status Code
Tentativa sem envio do token Missing token 401
Tentativa com envio de token inválido Invalid or expired token 401
Tentativa com envio de token de estudante ou instrutor Access denied 403
Tentativa com envio de groupId inválido Group not found 404

3.2 - GET

Voltar para o topo

Listar todos os módulos


Endpoint: /modules


Rota responsável por listar todos os módulos


Deve ser enviado:


  • Token de autorização do tipo Bearer Token com permissão de administrador

Exemplo de requisição válida:

	/modules, {
      headers: {
        Authorization: "Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJyb2xlIjoiU1RVREVOVCIsImdyb3VwSWQiOiI3ZTQ0ZWM4..."
        }
}

Retorno da requisição:

{

	[
      {
        id: '368007a8-84ee-4263-807b-5c8ae2a82d05',
        name: 'M4',
        createdAt: '2022-11-10T03:31:22.201Z',
        groupId: '5bd3b8cc-c522-406f-8218-b06fb2af4bca'
      },
	  ...
	]

}
Status Code
200

Possíveis erros:

Erro Mensagem Status Code
Tentativa sem envio do token Missing token 401
Tentativa com envio de token inválido Invalid or expired token 401
Tentativa com envio de token de estudante ou instrutor Access denied 403

3.3 - GET

Voltar para o topo

Listar todos os usuários de um módulo


Endpoint: /modules/:id


Rota responsável por listar todos os usuário de um módulo a partir do id


Deve ser enviado:


  • Token de autorização do tipo Bearer Token com permissão de administrador

Exemplo de requisição válida:

	/modules/368007a8-84ee-4263-807b-5c8ae2a82d05, {
      headers: {
        Authorization: "Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJyb2xlIjoiU1RVREVOVCIsImdyb3VwSWQiOiI3ZTQ0ZWM4..."
        }
}

Retorno da requisição:

      {
        id: '368007a8-84ee-4263-807b-5c8ae2a82d05',
        name: 'M1',
        createdAt: '2022-11-10T03:53:25.712Z',
        groupId: '5bd3b8cc-c522-406f-8218-b06fb2af4bca',
        users: [
      	{
          id: '752df371-47e8-4c62-bc8c-ea72ac78f111',
          createdAt: '2022-11-08T15:23:59.091Z',
          updatedAt: '2022-11-08T15:23:59.091Z',
		  userId: '22322984-3ebc-460d-8321-4ded36eeafa6',
		  moduleId: '368007a8-84ee-4263-807b-5c8ae2a82d05',
			user: {
			  id: '22322984-3ebc-460d-8321-4ded36eeafa6',
			  name: 'Sara Lins',
			  email: '[email protected]',
			  role: 'STUDENT',
			  createdAt: '2022-11-08T15:23:59.091Z',
			  updatedAt: '2022-11-08T15:23:59.091Z',
			  groupId: '5bd3b8cc-c522-406f-8218-b06fb2af4bca'
			}
      },
	  ...
    ]
}

Status Code
200

Possíveis erros:

Erro Mensagem Status Code
Tentativa sem envio do token Missing token 401
Tentativa com envio de token inválido Invalid or expired token 401
Tentativa com envio de token de estudante Access denied 403
Tentativa com envio de id do módulo inválido Module not found 403
Tentativa com envio de token de instrutor e id do módulo que não possui acesso Access denied 403

4 - Videos

Voltar para o topo


4.1 POST

Create video

Endpoint: /videos

Rota para criação de video

  • Necessário token de autorização
  • Necessário ser administrador ou ser instrutor do módulo

Campos:

Campo Tipo Descrição
title string Define o título do vídeo
url string Define o link do vídeo (opcional)
releaseDate date Define o dia em que o vídeo foi transmitido
sprintId string Define a sprint do vídeo

Body da requisição:

{
	"title": "video teste",
	"url": "urldovideo.com",
	"releaseDate": "11/04/2022",
	"sprintId": "38e0f242-4b31-4366-abc8-71004132c8f4"
}

Body da resposta:

{
	"id": "56f9ed40-35c3-4311-92cd-84967fc8679f",
	"title": "video teste",
	"url": "urldovideo.com",
	"releaseDate": "2022-11-04T04:00:00.000Z",
	"createdAt": "2022-11-07T23:07:51.097Z",
	"updatedAt": "2022-11-07T23:07:51.097Z",
	"sprintId": "38e0f242-4b31-4366-abc8-71004132c8f4"
}
Status Code
201

Possíveis erros:

Error Message Status Code
should not be able to create a video without token Missing token 401
should not be able to create a video with invalid/expired token Invalid or expired token 401
should not be able to create a video without adm/instructor permission Access denied 403
should not be able to create a video when instructor don't have this module Instructor not allowed 401
should not be able to create a video without title Title is required 400
should not be able to create a video without release date Release date is required 400
should not be able to create a video without sprintId Sprint id is required 400
should not be able to create a video with an invalid sprintId Sprint not found 404

4.2 UPDATE

Voltar para o topo

Update video

Endpoint: /videos/:id

Rota para update de video

  • Necessário token de autorização
  • Necessário ser administrador ou ser instrutor do módulo

Campos:

Campo Tipo Descrição
title string título do vídeo (opcional)
url string link do vídeo (opcional)
sprintId string sprint id do vídeo

Body da requisição:

{
	"title": "video teste",
	"url": "urldovideo.com",
	"sprintId": "38e0f242-4b31-4366-abc8-71004132c8f4"
}

Body da resposta:

{
      id: 'c4f61f22-d127-4b10-a2b6-ef715f2be988',
      title: 'video update',
      url: 'test update',
      releaseDate: '2022-11-04T04:00:00.000Z',
      createdAt: '2022-11-10T02:10:34.761Z',
      updatedAt: '2022-11-10T02:10:34.958Z',
      sprintId: '3c4ee486-f932-4f45-a3ea-f07aa424fe18'
    }
Status Code
200

Possíveis erros:

Error Message Status Code
should not be able to update a video with invalid/expired token Invalid or expired token 401
should not be able to update a video without adm/instructor permission Access denied 403
should not be able to update a video when instructor don't have this module Instructor not allowed 401
should not be able to update a video with an invalid videoId Sprint not found 404

4.3 DELETE

Voltar para o topo

Delete video url

Endpoint: /videos/:id

Rota para deleção de url de video

  • Sem body na requisição
  • Sem body na resposta
  • Necessário token de autorização
  • Necessário ser administrador ou ser instrutor do módulo
Status Code
204

Possíveis erros:

Error Message Status Code
should not be able to delete a video url without token Missing token 401
should not be able to delete a video url with invalid/expired token Invalid or expired token 401
should not be able to delete a video url without adm/instructor permission Access denied 403
should not be able to update a video when instructor don't have this module Instructor not allowed 401
should not be able to delete a video with an invalid video id Access denied 404

5. Rota de Marcadores de Video

Voltar para o topo


5.1 POST

Create Marker

Endpoint: /markers

Rota para criação de marcador

  • Necessário token de autorização
  • Necessário ser administrador ou ser instrutor do módulo
Campo Tipo Descrição
marks marks[] Define os marcadores de vídeo
videoId string Define o id do vídeo
groupId string Define o grupo de alunos (opcional)

Body da requisição:

{
	"marks": "[
		{
			title: 'git hub',
			time: '00:20:50',
			videoId: video?.id,
		},
		{
			title: 'user controller',
			time: '00:25:50',
			videoId: video?.id,
		},
		{
			title: 'typeorm',
			time: '19:20:50',
			videoId: video?.id,
		},
	]",
	"videoId": "video?.id",
	"groupId": "group.id"
}

Body da resposta:

{
	count: 3
}
Status Code
201

Possíveis erros:

Error Message Status Code
should not be able create a marker with h:m:s invalid time not validate 400
should not be able to create a video with invalid/expired token Invalid or expired token 401
should not be able create a marker with h:m:s equals this video needed to equal marks video 400
should not be able create a marker without adm access Instructor not allowed 403
should not be able create a marker with invalid ID video video not found 400

5.2 PATCH

Update Marker

Endpoint: /markers/:id

Rota para atualização de marcador

  • Necessário token de autorização
  • Necessário ser administrador ou ser instrutor do módulo
Campo Tipo Descrição
time string tempo do vídeo (opcional)
title string titulo do vído (opcional)

Body da requisição:

{
	"title": 'git hub',
	"time": '00:20:50'
}

Body da resposta:

{
	"id": '634a0edc-7cde-4b5f-9469-d601759e2fba',
	"time": '02:04:49',
	"title": 'Titulo alterado',
	"createdAt": "2022-11-09T22:03:13.009Z",
	"updatedAt": "2022-11-09T22:03:13.199Z",
	"videoId": 'c0fcb84d-1f76-4f92-b690-a6d1f8e51e19'
}
Status Code
200

Possíveis erros:

Error Message Status Code
should be able possible to update a marked (not) 200
should be able is not ADM or INSTRUCTOR Unauthorized 403
should not be possible to update one marked with invalid id Marker not found 404
should not be possible to create a marker with time that already exists Time already exists 403

5.3 DELETE

Delete Marker

Endpoint: /markers/:id

Rota para deletar marcador

  • Necessário token de autorização
  • Necessário ser administrador ou ser instrutor do módulo
Campo Tipo Descrição
time string tempo do vídeo (opcional)
title string titulo do vídeo (opcional)
Status Code
204

Possíveis erros:

Error Message Status Code
should be possible to delete a marker (not) 204
should be able is not ADM or INSTRUCTOR Unauthorized 403
should not be possible to delete a marker with invalid id Marker not found 404
should not be possible to delete a marker with a different instructor Instructor does not own this mark 401

All rights reserved.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages