{"id":23020762,"url":"https://github.com/kryptonbd/contact-keeper-api","last_synced_at":"2026-04-09T16:35:43.853Z","repository":{"id":194309458,"uuid":"340326027","full_name":"KryptonBD/Contact-Keeper-API","owner":"KryptonBD","description":"REST API with Express.Js ","archived":false,"fork":false,"pushed_at":"2021-02-19T09:53:44.000Z","size":31,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-03-26T13:48:18.827Z","etag":null,"topics":["expressjs","jwt-authentication","nodejs","rest-api"],"latest_commit_sha":null,"homepage":"","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/KryptonBD.png","metadata":{"files":{"readme":"readme.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null}},"created_at":"2021-02-19T09:53:16.000Z","updated_at":"2025-02-26T09:47:46.000Z","dependencies_parsed_at":"2023-09-12T20:47:34.794Z","dependency_job_id":"66c3ebd0-59ca-4667-bbe2-e906c3dcbc0e","html_url":"https://github.com/KryptonBD/Contact-Keeper-API","commit_stats":null,"previous_names":["kryptonbd/contact-keeper-api"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/KryptonBD%2FContact-Keeper-API","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/KryptonBD%2FContact-Keeper-API/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/KryptonBD%2FContact-Keeper-API/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/KryptonBD%2FContact-Keeper-API/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/KryptonBD","download_url":"https://codeload.github.com/KryptonBD/Contact-Keeper-API/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":246871149,"owners_count":20847429,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["expressjs","jwt-authentication","nodejs","rest-api"],"created_at":"2024-12-15T12:15:10.626Z","updated_at":"2026-04-09T16:35:38.812Z","avatar_url":"https://github.com/KryptonBD.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Contact Keeper API\n\nThis is a Node/Express/MongoDB REST API for contacts that uses JWT authentication. All contact endpoints are protected and each registered user has their own contacts. \n## Getting Started\n\nOpen the config/default.json file and add your **mongoURI** and your **jwtSecret**, than run following commands on bash\n```\nnpm install\nnpm run server \n```\nIt'll Run on *http://localhost:5000*\n\n# API Usage \u0026 Endpoints\n\n## Register a User [POST /api/users]\n\n- Request: Add user and request JSON web token\n\n  - Headers\n\n        Content-type: application/json\n\n  - Body\n\n            {\n              \"name\": \"\",\n              \"email\": \"\",\n              \"password\": \"\"\n            }\n\n- Response: 200 (application/json)\n\n  - Body\n\n          {\n            \"token\": \"\"\n          }\n\n## Login with a User [POST /api/auth]\n\n- Request: Login with credentials to recieve a JSON web token\n\n  - Headers\n\n        Content-type: application/json\n\n  - Body\n\n            {\n              \"email\": \"\",\n              \"password\": \"\"\n            }\n\n- Response: 200 (application/json)\n\n  - Body\n\n          {\n            \"token\": \"\"\n          }\n\n## Get Contacts [GET /api/contacts]\n\n- Request: Get all contacts of a specific user\n\n  - Headers\n\n        x-auth-token: YOUR JWT\n\n* Response: 200 (application/json)\n\n  - Body\n\n          {\n            \"contacts\": []\n          }\n\n## Add New Contact [POST /api/contacts]\n\n- Request: Add a new contact\n\n  - Headers\n\n        x-auth-token: YOUR JWT\n        Content-type: application/json\n\n  - Body\n\n            {\n              \"name\": \"\",\n              \"email\": \"\",\n              \"phone\": \"\",\n              \"type\": \"\" [personal or professional]\n            }\n\n- Response: 200 (application/json)\n\n  - Body\n\n          {\n            \"contact\": {}\n          }\n\n## Update Contact [PUT /api/contacts/:id]\n\n- Request: Update existing contact\n\n  - Parameters\n\n    - id: 1 (number) - An unique identifier of the contact.\n\n  - Headers\n\n        x-auth-token: YOUR JWT\n        Content-type: application/json\n\n  - Body\n\n            {\n              \"name\": \"\",\n              \"email\": \"\",\n              \"phone\": \"\",\n              \"type\": \"\" [personal or professional]\n            }\n\n- Response: 200 (application/json)\n\n  - Body\n\n          {\n            \"contact\": {}\n          }\n\n## Delete Contact [DELETE /api/contacts/:id]\n\n- Request: Delete existing contact\n\n  - Parameters\n\n    - id: 1 (number) - An unique identifier of the contact.\n\n  - Headers\n\n        x-auth-token: YOUR JWT\n\n* Response: 200 (application/json)\n\n  - Body\n\n          {\n            \"msg\": \"Contact removed\"\n          }\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fkryptonbd%2Fcontact-keeper-api","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fkryptonbd%2Fcontact-keeper-api","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fkryptonbd%2Fcontact-keeper-api/lists"}