bibleverses
Version:
retrieve bible verses from bibles.org API
138 lines (102 loc) • 3.95 kB
Markdown
[](https://travis-ci.org/aflansburg/bibleverses)
[](https://nodejs.org/en/)
[](http://makeapullrequest.com)
Super simple usage.
Install:
```
npm install bibleverses --save
```
_retrievePassage()_ returns a Promise.
```
const bibleverses = require('bibleverses');
bibleverses.retrievePassage('John 1:1-3')
.then(response => {
console.log(response)
})
.catch(err => {
console.log(err)
});
```
Output:
```
1: In the beginning was the Word, and the Word was with God, and the Word was God. 2: The same was in the beginning with God. 3: All things were made by him; and without him was not any thing made that was made.
```
- [Usage](
- [Timeout](
- [Versions](
- [_listVersions()_ method](
- [Languages](
- [Notes](
I list timeout early on in the readme as there are times when the response times from Bibles.org are a bit longer than expected.
By default the timeout is set to 7500ms. If issues arise, try increasing this timeout.
You may provide a third argument to _retrievePassage()_ to specifiy a specific timeout. Upon timeout you will receive an error message as depicted in the output below.
```
bibleverses.retrievePassage('Juan 3:16', 'spa-RVR1960', 5000)
.then(response => {
console.log(response);
})
.catch(err => {
console.log(err);
});
```
Timeout error output:
```
Request timed out. Check your passage and version or try again!
```
`retrievePassage()` requires at least the first argument, which is the book, chapter, and verse in the standard notation `Book CHAPTER:VERSE`
You may also pass a [language+version code](
```
bibleverses.retrievePassage('Juan 3:16', 'spa-RVR1960')
.then(response => {
console.log(response);
})
.catch(err => {
console.log(err);
});
```
[](
With the listVersions() method you may retrieve a list of all version/languages available from Bibles.org as an array.
_Omitting_ the argument will list all versions across all languages.
###### Example - retrieve all available language+versions for Español:
```
bibleverses.listVersions('Español')
.then(response => {
if (Array.isArray(response)){
response.forEach(r => {
console.log(r);
})
}
else {
console.log(response);
}
})
.catch(err => {
console.log(err);
});
```
JSON Output:
```
{ id: 'spa-RVR1960',
name: 'Biblia Reina Valera 1960',
lang_name: 'Español',
lang_name_eng: 'Spanish' }
```
[](
- For some reason, requests for more than 3 verses will still only return 3 verses. This may be a feature of the API.
- This is currently using my bibles.org API key - which should not be an issue as authentication is single-step.
I will add support at a later date for utilizing your own API key.
List of languages retrieved from [bibles.org/versions](https://bibles.org/versions/)
See [languages.json](https://github.com/aflansburg/bibleverses/blob/master/languages.json) for current Bibles.org language support.
This list may be incomplete. I plan to utilize the Bibles.org built in API method for listing versions in the near future.
[](