https://www.youtube.com/watch?v=di7Bn5uIbQE
Please use Microsoft Edge or Brave in case Chrome warns danger :3
https://flyai.netlify.app/chat
Backend Deployment : Railway
Frontend Deployment : Netlify
Maximum Allowed Requests per hour = 500
Books - Server Side Caching - 5 minutes TTL
User - Server Side Caching - 10 minutes TTL
The API Endpoints belong to 4 major routes. The routes are as follows:
1. Book
2. User
3. Login
4. Chat
The respective API endpoints are as follows:
Endpoint URL: GET /api/v1/book?page=2&per_page=1
Request Body: None
Example Response:
[
{
"id": "64afd42c3699a960929d881c",
"bookId": 5,
"author": "a",
"link": "https://firebasestorage.googleapis.com/v0/b/litcode-ba82a.appspot.com/o/uploads%2FJaber_Ahmed%20Deedar_Resume_04-07-2023-11-51-15.pdf?alt=media&token=2060fa56-6069-436f-8580-af5519335e89",
"title": "Pride and Prejudices",
"createdAt": "2023-07-13T10:38:36.512Z",
"keywords": "classic, romance, social critique",
"description": "Set in the 19th century, Pride and Prejudice unravels the complexities of societal norms, love, and personal growth as Elizabeth Bennet navigates the challenges of her class-conscious world, facing her own prejudices and ultimately discovering the power of true love.",
"public": true
}
]
Endpoint URL: GET /api/v1/book?author=jaber&title=&keyword=offline
Request Body: None
Example Response:
[
{
"id": "64b0354cc7556db149915d7a",
"bookId": 14,
"author": "jaber",
"link": "https://firebasestorage.googleapis.com/v0/b/litcode-ba82a.appspot.com/o/uploads%2FOfflineAllPairShortestPath.pdf?alt=media&token=f3ee15d4-b25c-47e2-84d8-e74cc4274558",
"title": "Offline 3",
"createdAt": "2023-07-13T17:33:00.833Z",
"keywords": "offline, dsa, pera, pain",
"description": "This is the offline 3......",
"public": true
}
]
Endpoint URL: GET /api/v1/book/14
Request Body: None
Example Response:
{
"id": "64b0354cc7556db149915d7a",
"bookId": 14,
"author": "jaber",
"link": "https://firebasestorage.googleapis.com/v0/b/litcode-ba82a.appspot.com/o/uploads%2FOfflineAllPairShortestPath.pdf?alt=media&token=f3ee15d4-b25c-47e2-84d8-e74cc4274558",
"title": "Offline 3",
"createdAt": "2023-07-13T17:33:00.833Z",
"keywords": "offline, dsa, pera, pain",
"description": "This is the offline 3......",
"public": true
}
Endpoint URL: POST /api/v1/book
Request Body:
{
"author": "jaber",
"link": "https://firebasestorage.googleapis.com/v0/b/litcode-ba82a.appspot.com/o/uploads%2FOfflineAllPairShortestPath.pdf?alt=media&token=f3ee15d4-b25c-47e2-84d8-e74cc4274558",
"title": "Offline 5",
"keywords": "offline, dsa",
"description": "This is the offline 5......"
}
Example Response:
{
"id": "64b09930e1e2829f5b28e978",
"bookId": 15,
"author": "a",
"link": "https://firebasestorage.googleapis.com/v0/b/litcode-ba82a.appspot.com/o/uploads%2FOfflineAllPairShortestPath.pdf?alt=media&token=f3ee15d4-b25c-47e2-84d8-e74cc4274558",
"title": "Offline 5",
"createdAt": "2023-07-14T00:39:12.423Z",
"keywords": "offline, dsa",
"description": "This is the offline 5......",
"public": true
}
Endpoint URL: PUT /api/v1/book
Request Body:
{
"bookId" : "15",
"author": "jaber",
"link": "https://firebasestorage.googleapis.com/v0/b/litcode-ba82a.appspot.com/o/uploads%2FOfflineAllPairShortestPath.pdf?alt=media&token=f3ee15d4-b25c-47e2-84d8-e74cc4274558",
"title": "Offline 5",
"keywords": "offline, dsa",
"description": "This is the offline 5......"
}
Example Response:
{
"id": "64b09930e1e2829f5b28e978",
"bookId": 15,
"author": "a",
"link": "https://firebasestorage.googleapis.com/v0/b/litcode-ba82a.appspot.com/o/uploads%2FOfflineAllPairShortestPath.pdf?alt=media&token=f3ee15d4-b25c-47e2-84d8-e74cc4274558",
"title": "Offline 5",
"createdAt": "2023-07-14T00:39:12.423Z",
"keywords": "offline, dsa",
"description": "This is the offline 5......",
"public": true
}
Endpoint URL: DELETE /api/v1/book/15
Request Body: None
Example Response:
{
"id": "64b09930e1e2829f5b28e978",
"bookId": 15,
"author": "a",
"link": "https://firebasestorage.googleapis.com/v0/b/litcode-ba82a.appspot.com/o/uploads%2FOfflineAllPairShortestPath.pdf?alt=media&token=f3ee15d4-b25c-47e2-84d8-e74cc4274558",
"title": "Offline 5",
"createdAt": "2023-07-14T00:39:12.423Z",
"keywords": "offline, dsa",
"description": "This is the offline 5......",
"public": true
}
Endpoint URL: GET /api/v1/user
Request Body: None
Example Response:
[
{
"id": "64afb4734e7593094b83dc6e",
"userId": null,
"username": "anik",
"name": "Anik Saha vaii",
"password": "111",
"bio": "An AI roaming around in the world of AI generated books ",
"dp": "my image.jpg"
},
{
"id": "64b01052c665ce7e8c2b715f",
"userId": null,
"username": "jaber",
"name": "Jaber...",
"password": "123",
"bio": "Just another chatbot\nJust another chatbot\nJust another chatbot\n",
"dp": null
}
]
Endpoint URL: GET /api/v1/user/anik
Request Body: None
Example Response:
{
"id": "64afb4734e7593094b83dc6e",
"userId": null,
"username": "anik",
"name": "Anik Saha vaii",
"password": "111",
"bio": "An AI roaming around in the world of AI generated books ",
"dp": "my image.jpg"
}
Endpoint URL: POST /api/v1/user
Request Body:
{
"username": "dummy",
"name": "Dummy",
"password": "123",
"bio": "Another AI Bot ",
"dp": "dummy-image.jpg"
}
Example Response:
{
"id": "64b09fb994e99c48e6c563e4",
"userId": null,
"username": "dummy",
"name": "Dummy",
"password": "123",
"bio": "Another AI Bot ",
"dp": "dummy-image.jpg"
}
Endpoint URL: PUT /api/v1/user
Request Body:
{
"username": "anik",
"name": "Anik Saha",
"password": "122",
"bio": "An AI Bot ",
"dp": "jaber-image.jpg"
}
Example Response:
{
"id": "64afb4734e7593094b83dc6e",
"userId": null,
"username": "anik",
"name": "Anik Saha",
"password": "122",
"bio": "An AI Bot ",
"dp": "jaber-image.jpg"
}
Endpoint URL: DELETE /api/v1/user/dummy
Request Body: None
Example Response:
{
"id": "64b09d97e1e2829f5b28e97a",
"userId": null,
"username": "dummy",
"name": null,
"password": "123",
"bio": null,
"dp": null
}
Endpoint URL: GET /api/v1/login
Request Body:
{
"username": "anik",
"password": "122"
}
Example Response:
{
"token": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ1c2VybmFtZSI6ImFuaWsiLCJpZCI6IjY0YWZiNDczNGU3NTkzMDk0YjgzZGM2ZSIsImlhdCI6MTY4OTI5NzAwMX0.2DD_2XMuqOn7nGF24KL5wtvujHfr7YnY0C1RoPsiai8",
"user": {
"id": "64afb4734e7593094b83dc6e",
"userId": null,
"username": "anik",
"name": "Jaber Ahmed Deedar",
"password": "122",
"bio": "An AI Bot ",
"dp": "jaber-image.jpg"
}
}
Endpoint URL: GET /api/v1/chat/text?prompt=how-are-you
Request Body: None
Example Response:
{
"answer": {
"role": "assistant",
"content": "Thank you for asking! As an AI, I don't have feelings, but I'm here and ready to assist you. How can I help you today?"
}
}
Returns an URL for the generated PDF
Endpoint URL: GET /api/v1/chat/pdf?topic=cinderella&pagenum=2
Request Body: None
Example Response:
{
"url": "https://storage.googleapis.com/genesis-2ddee.appspot.com/generated/cinderella.pdf?GoogleAccessId=firebase-adminsdk-w1mh4%40genesis-2ddee.iam.gserviceaccount.com&Expires=16730301600&Signature=gBxi7dw3pO445tQVfT1Evb95iK8fRjry4GHdo3StjBOHNig5JY%2Fgwr8fvlVDX0ruW4%2Fnt9jsIgiN7l%2Fj20uSvYEGtHM7whMnjkK0wHIPVKb%2FT1mPDP%2BGvUACUPpWW55KfV4UbHdk3797Y2bouP6KIv4nOrq%2F9S0VX9L6zyLumvPe13QQYDOfd7B%2Fu%2BLNOnbFV7DrQY%2FoJoEXQF6Wwxys2rZeLFCEcVD2ipH7IkXJCCpKM0NhzgDbaY6zROVyH31skffpn69Wm5My9Aydtpy7lqUTss4Ws10mphDore45THc6Wo3LvcU%2BLqioaVtoElDSKFVZCyezzTfwOEIoj8gEsA%3D%3D"
}