Quote API RESTful Node.js based Multilingual (Italian, English and Spanish) is a free, open source quote api to get random quote. Quotes are loaded on sqlite3 DB. Actually is hosted on Vercel.
GET /api/randomquote
Return a random quote.
Query parameters
Param | Type | Description | Mandatory |
---|---|---|---|
language | String |
Language Code (ex. en, it, es) | Yes |
Response
{
// Quote
quote: string
// Author name
author: string
// tags
tags: string
}
Examples
http://localhost:35907/api/randomquote?language=en
{
"quote": "Three things cannot be long hidden: the sun, the moon, and the truth.",
"author": "Buddha",
"tags": "famous"
}
GET /api/randomimage
Return a random image with a quote and its author (To generate random image use pixabay service).
Query parameters
Param | Type | Description | Mandatory |
---|---|---|---|
language | String |
Language Code (ex. en, it, es) | Yes |
Response
{
// url image
url: string
// width image
width : number
// height image
height : number
// Author name
author: string
// Quote
quote: string
}
Examples
http://localhost:35907/api/randomimage?language=en
{
"url": "https://pixabay.com/get/g6e739078013913a6cc494f4fa619b28b40d3b74f8d631c9fa8454a20654f6a1cbf45b4117d180dd8ad0789664ca946d5cee9224be3de79b4c620d5bdafbf2179_640.jpg",
"width" : 640,
"height" : 426,
"author": "Frida Kahlo",
"quote": "Nada dura para siempre… por eso quiero que seas mi nada."
}
GET /api/Info
Return info about total quotes and authors.
Query parameters
Param | Type | Description | Mandatory |
---|---|---|---|
language | String |
Language Code (ex. en, it, es) | Yes |
Response
{
// version
version: string
// Language code
language: string
// Total quotes loaded
quotes: number
// Total authors loaded
authors: number
}
Examples
http://localhost:35907/api/info?language=en
{
"version": "1.7.2",
"language": "en",
"quotes": 1746,
"authors": 717
}
GET /api/authors
Return list of Authors with relative total quotes.
Query parameters
Param | Type | Description | Mandatory |
---|---|---|---|
language | String |
Language Code (ex. en, it, es) | Yes |
search | String |
String to research Author in like sql format (ex. %Goethe%) | No |
Response
{
// Author Name
author: string
// Total quotes loaded
totQuotes: number
}
Examples
http://localhost:35907/api/authors?language=it&search=%OSCAR%
[
{
"author": "Oscar Wilde",
"totQuotes": 91
}
]
GET /api/quotes
Return list of quotes of an author.
Query parameters
Param | Type | Description | Mandatory |
---|---|---|---|
language | String |
Language Code (ex. en, it, es) | Yes |
author | String |
String to research Author in like sql format (ex. %Goethe%) | Yes |
limit | Numeric |
Limit quotes extracted (Default value is 10) | No |
Response
{
// Total quotes founded
totQuotes: number
quotes: array<{
// Quote
quote: string
// Author name
author: string
// tags
tags: string
}>
}
Examples
http://localhost:35907/api/quotes?language=en&author=%Obama%
{
"totQuotes": 6,
"quotes": [
{
"quote": "If you're walking down the right path and you're willing to keep walking, eventually you'll make progress.",
"author": "Barack Obama",
"tags": "famous"
},
{
"quote": "Focusing your life solely on making a buck shows a poverty of ambition. It asks too little of yourself. And it will leave you unfulfilled.",
"author": "Barack Obama",
"tags": "famous"
},
{
"quote": "Change will not come if we wait for some other person or some other time. We are the ones weve been waiting for. We are the change that we seek.",
"author": "Barack Obama",
"tags": "famous"
},
{
"quote": "Change will not come if we wait for some other person or some other time. We are the ones weve been waiting for. We are the change that we seek.",
"author": "Barack Obama",
"tags": "famous"
},
{
"quote": "Focusing your life solely on making a buck shows a poverty of ambition. It asks too little of yourself. And it will leave you unfulfilled.",
"author": "Barack Obama",
"tags": "famous"
},
{
"quote": "If you're walking down the right path and you're willing to keep walking, eventually you'll make progress.",
"author": "Barack Obama",
"tags": "famous"
}
]
}
Error Response
{
// Language code
error: number,
// Function Name
function: string,
// Description error
description: string
}
- Node v22.14.0 or upper
- npm v11.3.0 or upper
npm install
npm start
- Giovanni Palleschi - gpalleschi
This project is licensed under the GNU GENERAL PUBLIC LICENSE 3.0 License - see the LICENSE file for details