e-Sabda

Deep link integration

Send readers from your website or app to a specific place in e-Sabda using a URL. No API key or registration is needed to construct a link.

How it works

The public base URL is https://app.gbc.my. Prefer HTTPS links for sharing: they provide a web fallback when the app cannot open. For an explicit “Open in e-Sabda” action, use the custom scheme my.gbc.app:// with the same route.

https://app.gbc.my/bible/Kejadian/1/1
my.gbc.app://bible/Kejadian/1/1

These links navigate inside the app. They do not return Bible text, grant a content license, or provide a verse API.

Supported routes

DestinationPathExample
Book (chapter 1)/bible/{book}/bible/Kejadian
Chapter/bible/{book}/{chapter}/bible/Kejadian/1
Verse/bible/{book}/{chapter}/{verse}/bible/Kejadian/1/3
Outline/bible/{book}/outline/bible/Kejadian/outline
Footnote/bible/{book}/{chapter}/{verse}/fn/{number}/bible/Kejadian/1/3/fn/2
Hymn/kidung/{number}/kidung/5

Parameters and content

Use a book name from the complete reference below, preserving its spelling, capitalization, spaces, and hyphens. Encode each path segment individually; for example, 1 Yohanes becomes 1%20Yohanes. Use positive integer chapter, verse, and footnote numbers that exist in the referenced book. For hymns, use the number formats and examples below, including any letter prefix.

The route prefixes bible and kidung are lowercase. Use the documented lowercase outline and fn segments. Verse ranges, multiple references, cross-reference routes, and language-selection parameters are not supported by this interface.

If an outline is unavailable, the app opens chapter 1. If a footnote is missing, it reports that and opens the parent verse. Invalid books, chapters, verses, or hymns lead to the corresponding content home screen with an alert. Missing licensed content prompts the reader to obtain access. Links may wait while content loads.

Valid Bible book names

These are all 66 valid book names for the Bible bundled with e-Sabda. Use the exact name or its encoded URL segment below. Abbreviations and alternate spellings are not accepted by the deep link route.

Names such as Pengkhutbah, Kisah Para Dutus, and Wahi follow this edition’s spelling.

BookURL segmentChapter 1 example
KejadianKejadianOpen chapter 1
KeluaranKeluaranOpen chapter 1
ImamatImamatOpen chapter 1
BilanganBilanganOpen chapter 1
UlanganUlanganOpen chapter 1
YosuaYosuaOpen chapter 1
Hakim-hakimHakim-hakimOpen chapter 1
RutRutOpen chapter 1
1 Samuel1%20SamuelOpen chapter 1
2 Samuel2%20SamuelOpen chapter 1
1 Raja-raja1%20Raja-rajaOpen chapter 1
2 Raja-raja2%20Raja-rajaOpen chapter 1
1 Tawarikh1%20TawarikhOpen chapter 1
2 Tawarikh2%20TawarikhOpen chapter 1
EzraEzraOpen chapter 1
NehemiaNehemiaOpen chapter 1
EsterEsterOpen chapter 1
AyubAyubOpen chapter 1
MazmurMazmurOpen chapter 1
AmsalAmsalOpen chapter 1
PengkhutbahPengkhutbahOpen chapter 1
Kidung AgungKidung%20AgungOpen chapter 1
YesayaYesayaOpen chapter 1
YeremiaYeremiaOpen chapter 1
RatapanRatapanOpen chapter 1
YehezkielYehezkielOpen chapter 1
DanielDanielOpen chapter 1
HoseaHoseaOpen chapter 1
YoelYoelOpen chapter 1
AmosAmosOpen chapter 1
ObajaObajaOpen chapter 1
YunusYunusOpen chapter 1
MikhaMikhaOpen chapter 1
NahumNahumOpen chapter 1
HabakukHabakukOpen chapter 1
ZefanyaZefanyaOpen chapter 1
HagaiHagaiOpen chapter 1
ZakhariaZakhariaOpen chapter 1
MaleakhiMaleakhiOpen chapter 1
MatiusMatiusOpen chapter 1
MarkusMarkusOpen chapter 1
LukasLukasOpen chapter 1
YohanesYohanesOpen chapter 1
Kisah Para DutusKisah%20Para%20DutusOpen chapter 1
RomaRomaOpen chapter 1
1 Korintus1%20KorintusOpen chapter 1
2 Korintus2%20KorintusOpen chapter 1
GalatiaGalatiaOpen chapter 1
EfesusEfesusOpen chapter 1
FilipiFilipiOpen chapter 1
KoloseKoloseOpen chapter 1
1 Tesalonika1%20TesalonikaOpen chapter 1
2 Tesalonika2%20TesalonikaOpen chapter 1
1 Timotius1%20TimotiusOpen chapter 1
2 Timotius2%20TimotiusOpen chapter 1
TitusTitusOpen chapter 1
FilemonFilemonOpen chapter 1
IbraniIbraniOpen chapter 1
YakobusYakobusOpen chapter 1
1 Petrus1%20PetrusOpen chapter 1
2 Petrus2%20PetrusOpen chapter 1
1 Yohanes1%20YohanesOpen chapter 1
2 Yohanes2%20YohanesOpen chapter 1
3 Yohanes3%20YohanesOpen chapter 1
YudasYudasOpen chapter 1
WahiWahiOpen chapter 1

Kidung numbers and prefixes

A hymn number is a text identifier, so keep any letter prefix. Use uppercase A and T, with no space or leading zeros: A1 and T1, rather than a1, A 1, or T01.

Number formatAvailable numbersExample link
Unprefixed1–780/kidung/5
A prefixA1–A6/kidung/A1
T prefixT1–T114/kidung/T1
https://app.gbc.my/kidung/A1
https://app.gbc.my/kidung/T114
my.gbc.app://kidung/A1
my.gbc.app://kidung/T114

The reader needs the hymn content installed and accessible in e-Sabda.

Build a link

This builder creates a verse URL. The reference must exist in the reader’s installed Bible.

https://app.gbc.my/bible/Kejadian/1/1

Build a Kidung link

Choose a number format and hymn number to create a shareable link.

https://app.gbc.my/kidung/5

Integration examples

Website

<a href="https://app.gbc.my/bible/Kejadian/1/1">
  Read Kejadian 1:1 in e-Sabda
</a>

JavaScript / React Native

const book = encodeURIComponent('1 Yohanes');
const url = `https://app.gbc.my/bible/${book}/1/1`;

// React Native: import { Linking } from 'react-native';
await Linking.openURL(url);

iOS (Swift)

let url = URL(string:
    "https://app.gbc.my/bible/Kejadian/1/1")!
UIApplication.shared.open(url)

Android (Kotlin)

val url = Uri.parse(
    "https://app.gbc.my/bible/Kejadian/1/1")
startActivity(Intent(Intent.ACTION_VIEW, url))

Open links as external navigation from a user action. Embedded webviews and browser preferences can keep an HTTPS link in the browser. A custom-scheme link requires an installed handler; handle a failed open and offer the app store links. Avoid automatic redirect loops or assuming installation from a timer.

Test your integration

  1. Install a build with deeplink support and set up the relevant licensed content.
  2. Tap an HTTPS reference from another app and verify the expected destination.
  3. Test the app both closed and already running, plus missing content and invalid references.
  4. Test without the app installed: the HTTPS URL should show the download landing page.