Skip to main content

A Command line interface for interacting with the YouVersion Bible API

Project description

YouVersion Bible API Client

This project came about when I was looking to export all my notes from the Youversion Bible app. Please use responsibly.

A comprehensive Python client library for accessing the YouVersion Bible API. This library provides both synchronous and asynchronous interfaces to interact with all YouVersion API endpoints.

Installation

pip install youversion-bible-client

Features

  • verse of the day
  • moments / feeds
  • notes
  • verse highlights
  • bookmarks
  • plan subscriptions
  • plan progress
  • plan completions
  • verse search

Quick start

Client

Examples

Create sync client

The sync client is a wrapper on top of the asynchronous client. See DOCS.md on examples on how to use

from youversion.clients import SyncClient

client = SyncClient()

# get verse of the day
client.verse_of_the_day()

creating async client

import asyncio
from youversion.clients import AsyncClient

async def main():
    # Using async context manager (recommended)
    async with AsyncClient() as client:
        # Get verse of the day
        votd = await client.verse_of_the_day()

Verse of the day

# get's the current day's votd
result = client.verse_of_the_day()

# get's specified votd
client.verse_of_the_day(day=365)

Moments

Get moments

Moments fall into different categories such as bookmark, highlight, note, image, badge, plan_subscription, plan_completion, plan_segment_completion, friendship

Moments take optional page parameters. default is page 1

client.badges()
client.bookmarks()
client.friendships()
client.highlights()
client.moments()
client.my_images()
client.notes()
client.plan_completions()
client.plan_progress()
client.plan_subscriptions()

Create a moment

# Some fields are optional or provide default values.
# infer those from the method type hints
# version_id for example kjv = 1
client.create_moment(
    {
        "kind": "note",
        "content": "My genesis 10:2 note body",
        "references": [
            {"human": "genesis 10:2", "version_id": 1, "usfm": ["GEN.10.2"]}
        ],
        "title": "My genesis 10:2 note",
        "status": "private",
        "body": "My genesis 10:2 note body",
        "color": "ff0000",
        "labels": ["test"],
        "language_tag": "en",
    }
)

Bible

Verse search

client.search_bible("christ died for us")

Get bible chapter

client.get_bible_chapter(reference="GEN.1")

Bible versions

client.get_bible_versions()

# you can specify a 3 digit language tag. e.g. ita for italian
# default is eng (english)
client.get_bible_versions(language_tag="eng")

# You can also get a single bible version detail
client.get_bible_version(version_id=1)

Bible Audio

# version id defaults to 1 (kjv)
client.get_audio_chapter(reference="GEN.1")
client.get_audio_chapter(reference="GEN.1", version_id=1)

# Get audio version details
client.get_audio_version(audio_id=1)

Friends

Send friend request

client.send_friend_request(user_id=123456789)

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

youversion_bible_client-0.1.2.tar.gz (41.0 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

youversion_bible_client-0.1.2-py3-none-any.whl (48.8 kB view details)

Uploaded Python 3

File details

Details for the file youversion_bible_client-0.1.2.tar.gz.

File metadata

  • Download URL: youversion_bible_client-0.1.2.tar.gz
  • Upload date:
  • Size: 41.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/2.2.1 CPython/3.9.13 Darwin/25.1.0

File hashes

Hashes for youversion_bible_client-0.1.2.tar.gz
Algorithm Hash digest
SHA256 d976276698f80f4a92e48c75b8e75f1fbe490e00457c379b064c2064776d7d62
MD5 9c7c82c2da8b0fdb546102fbf7a7a572
BLAKE2b-256 d0f197d5072ebf5bf8641e1fb75dd96d7bc837bc8dc47c2ba2d102956af8066a

See more details on using hashes here.

File details

Details for the file youversion_bible_client-0.1.2-py3-none-any.whl.

File metadata

File hashes

Hashes for youversion_bible_client-0.1.2-py3-none-any.whl
Algorithm Hash digest
SHA256 7489d61e571eb0c2a1268f1c576493de8e8cfdf9b45760878316c345424c439c
MD5 a97e917d6ef49215e530860cf5aee9cc
BLAKE2b-256 1e1da388f4788ec1e8aa79685bec3d0ebdf7cdf0096e030bb23e5111e358fabe

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page