Skip to content

ROFL1ST/todo-mongo-api

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

todo-mongo-api

Usage

  1. Clone this repository
https://github.com/ROFL1ST/todo-mongo-api.git
  1. run "npm install"
  2. Create .env file, then copy this code below
DB_HOST = [mongodb_host]  <--- insert your mongodb
JWT_ACCESS_TOKEN = [jwt_token]
JWT_INVITATION_TOKEN = [jwt_invitation_token]

DB_DATABASE = todo

process.env.PORT = 8000
CLOUD_NAME = [cloud_name]
API_KEY_CLOUD = [cloud_key]
API_SECRET_CLOUD = [secret_cloud]

MAIL_HOST = [host_mail]
MAIL_PORT = [port]
MAIL_USERNAME = [mail_username]
MAIL_PASSWORD = [mail_password]
MAIL_CLIENT_URL = [url]
EMAIL_MAIL= [your_email]
EMAIL_PASSWORD = [your_password]
  1. run "npm start"

LOCAL URL = http://localhost:9000/api/

ONLINE URL = https://todo-mongo-api-production.up.railway.app/api/

User

Login

/login

Method : POST Headers

Name Status
Authorization Required String

Body

Name Status
email Required String
username Required String
password Required String

Register

/register

Method : POST Headers

Name Status
Authorization Optional String

Body

Name Status
email Required String
username Required String
password Required String
name Required String

update profile

/user

Method : PUT Headers

Headers

Name Status
Authorization Required String

Body

Name Status
username Optional String
name Optional String
photo_profile Optional File

Search user

/user

Method : GET

Headers

Name Status
Authorization Required String

Params

Name Status
username Optional
name Optional

Detail User

/user/[id]

Method : GET

Headers

Name Status
Authorization Required String

Profile

/profile

Method: GET

Headers

Name Status
Authorization Required String

Todo

Get todo

/todo

Method: Get

Headers

Name Status
Authorization Required String

Params

Name Status
page Optional
limit Optional
key Optional

get detail

/todo/[id]

Method: Get

Headers

Name Status
Authorization Required String

Post Todo

/todo

Method: Post

Headers

Name Status
Authorization Required String

Body

Name Status
name Required String
description Required String

Update Todo

/todo/[id]

Method: Put

Headers

Name Status
Authorization Required String

Body

Name Status
name Optional String
description Optional String
percent Optional String

Delete Todo

/todo/[id]

Method: Delete

Headers

Name Status
Authorization Required String

Invite user

/todo/add/[id]

Method: Post

Headers

Name Status
Authorization Required String

Body

Name Status
invitedUser Required String

get invitation

/todo/invitation

Method: Get

Headers

Name Status
Authorization Required String

invitation respond

/todo/invitation

Method: Put

Headers

Name Status
Authorization Required String

Body

Name Status
status Required ["accepted", "rejected"]

kick user (Only For Owner)

/todo/kick/[id]

Method: Delete

Headers

Name Status
Authorization Required String

update role (Only For Owner)

/todo/role/[id]

Method: Put

Headers

Name Status
Authorization Required String

Body

Name Status
role Required String

Todo List

Get List

/todo/list/[id]

Method: Get

Headers

Name Status
Authorization Required String

Detail List

/todo/detail-list/[id]

Method: Get

Headers

Name Status
Authorization Required String

Post List

/todo/createList

Method: Post

Headers

Name Status
Authorization Required String

Body

Name Status
id_todo Required String
name Required String
start Required Date
end Required Date

Update List

/todo/list/[id]

Method: Put

Headers

Name Status
Authorization Required String

Body

Name Status
name Optional String
start Optional Date
end Optional Date
priority Optional ["low", "normal", "high", "urgent"]
status Optional ["open", "pending", "in progress", "completed"]

Delete List

/todo/remove-list/[id]

Method: Delete

Headers

Name Status
Authorization Required String