A dockerized micro-service for adding, updating, retrieving and deleting files
-
Method - POST
-
Sample Request
{
"file": "mark.png"
}
- Sample Response
{
"status": true,
"message": "File Uploaded",
"data": null
}
-
Method - GET
-
Sample Response
{
"status": true,
"message": "Files Found",
"data": [
{
"id": "5e6288bc8c7fec6308a1d499",
"file": "s3://falcon-bucket/files/mark.png"
},
{
"id": "5e6288bc8c7fec6308a1d498",
"file": "s3://falcon-bucket/files/essien.gif"
},
{
"id": "5e6288bc8c7fec6308a1d497",
"file": "s3://falcon-bucket/files/seyi.jpg"
},
{
"id": "5e6288bc8c7fec6308a1d496",
"file": "s3://falcon-bucket/files/john.gif"
},
{
"id": "5e6288bc8c7fec6308a1d495",
"file": "s3://falcon-bucket/files/doe.jpeg"
}
]
}
-
Method - GET
-
Sample Response
{
"status": true,
"message": "File Found",
"data": {
"id": "5e6288bc8c7fec6308a1d499",
"file": "s3://falcon-bucket/files/mark.png"
}
}
-
Method - PUT
-
HEADER
-
Sample Request
{
"id": "5e6288bc8c7fec6308a1d499",
"file": "s3://falcon-bucket/files/mark.png"
}
- Sample Response
{
"status": true,
"message": "File Updated",
"data": null
}
-
Method - DELETE
-
HEADER
-
Sample Request
{
"id": "5e6288bc8c7fec6308a1d499"
}
- Sample Response
{
"status": true,
"message": "File Deleted",
"data": null
}
+- falconmicroservices/ - name of the project folder. +--- config/ - main folder of the API. +--------- config.env - file used for common settings or variables. +--------- db.js - file used for db connectivity. +--- controllers/ - main folder of the API. +--------- files.js - file that houses getFiles(), getFile(), createFile(), updateFile(), deleteFile(). +--- middleware/ - main folder of the API. +--------- async.js - handles asyncHandler(). +--------- error.js - handles errorHandler(). +--- models/ - main folder of the API. +--------- File.js - FileSchema. +--- node_modules/ - main folder of the API. +--- routes/ - main folder of the API. +--------- file.js - router. +--- utils/ - main folder of the API. +--------- errorResponse.js - ErrorResponse class. +--- .gitignore/ - main folder of the API. +--- LICENSE/ - main folder of the API. +--- index.js/ - main folder of the API. +--- README.md/ - main folder of the API.