fbpx
View Categories

Overview

Apologist Fusion is an API that allows developers to integrate our Christian apologetics Agents with their own applications.

Example Request #

curl \
--header 'x-api-key: apg_xxxxxxxxxxxxxxxxxxxxxxxxxxxx' \
--header 'Content-Type: text/plain' \
--data '{
    "prompt": "How can a good God allow so much evil in the world?",
    "language": "en",
    "translation": "esv",
    "stream": true,
    "format": "text"
}' \
--url https://apologist.ai/api/v1

Authorization #

All requests to our chat completion endpoints must include an x-api-key header with a valid API key value. Contact us to get an API key to use during our beta period. Moving forward, any ministry that has built a custom Agent may issue their own API keys that are valid only for that particular Agent.

Agent Selection #

All custom Agents have a unique domain. When making an API request, the domain of the endpoint will dictate which Agent is used to respond. Contact us if you would like to experiment with creating your own Agent to use as an API endpoint.

Streaming vs Non-Streaming #

The stream parameter controls whether the response should be streamed or delivered all at once. Typically, chat interfaces benefit from streaming output as the user gets more instantaneous feedback. However, there are use cases that lend themselves to non-streaming output as well.

Response Format #

The response format may be specified using the format parameter. Valid values are as follows:

  • text: plain text output [default]
  • html: HTML formatted, converted from markdown where applicable
  • json: structured JSON response; includes completion as well as token usage and timing stats. Only available if the stream option is false.

Multiple Prompt Context #

You may pass any of several parameters which help tie multiple prompts together to increase or decrease context from previous exchanges that the Agent is able to draw on. These parameters may help identify a user from your system. Our API offers these identifier parameters as a convenience for you; they are completely optional.

  • anonymous: if set to true, no past exchange context is provided to the Agent (one-shot)
  • user_id: any string identifier for the user (100 characters max)
  • session_id: any string identifier for the user’s session (100 characters max)
  • conversation_id: any string identifier for the conversation within a single session (100 characters max)

Agents can be configured to draw on n number of previous exchanges when responding to a given prompt, but they can only do so if multiple prompts have the same session_id and conversation_id.

Bible Translation #

The translation parameter indicates to the Agent which Bible translation is preferred to use. The following is the list of supported Bible translations at this time:

  • esv: English Standard Version [default]
  • niv: New International Version
  • bsb: Berean Study Bible
  • kjv: King James Version
  • net: New English Translation
  • nkjv: New King James Version
  • nlt: New Living Translation
  • csb: Christian Standard Bible
  • nasb: New American Standard Bible

Language #

Use the language parameter to control the output language. Language support varies by model and is specific to a given Agent. However, any Agent can be upgraded to utilize real-time translation, expanding its language support to 192 languages. Here is the full list of supported languages:

  • en: English [default]
  • ab: Abkhaz
  • ace: Acehnese
  • ach: Acholi
  • af: Afrikaans
  • sq: Albanian
  • alz: Alur
  • am: Amharic
  • ar: Arabic
  • hy: Armenian
  • as: Assamese
  • awa: Awadhi
  • ay: Aymara
  • az: Azerbaijani
  • ban: Balinese
  • bm: Bambara
  • ba: Bashkir
  • eu: Basque
  • btx: Batak Karo
  • bts: Batak Simalungun
  • bbc: Batak Toba
  • be: Belarusian
  • bem: Bemba
  • bn: Bengali
  • bew: Betawi
  • bho: Bhojpuri
  • bik: Bikol
  • bs: Bosnian
  • br: Breton
  • bg: Bulgarian
  • bua: Buryat
  • yue: Cantonese
  • ca: Catalan
  • ceb: Cebuano
  • ny: Chichewa (Nyanja)
  • zh: Chinese (Simplified)
  • zh-TW: Chinese (Traditional)
  • cv: Chuvash
  • co: Corsican
  • crh: Crimean Tatar
  • hr: Croatian
  • cs: Czech
  • da: Danish
  • din: Dinka
  • dv: Divehi
  • doi: Dogri
  • dov: Dombe
  • nl: Dutch
  • dz: Dzongkha
  • eo: Esperanto
  • et: Estonian
  • ee: Ewe
  • fj: Fijian
  • tl: Filipino (Tagalog)
  • fi: Finnish
  • fr: French
  • fr-CA: French (Canadian)
  • fy: Frisian
  • ff: Fulfulde
  • gaa: Ga
  • gl: Galician
  • lg: Ganda (Luganda)
  • ka: Georgian
  • de: German
  • el: Greek
  • gn: Guarani
  • gu: Gujarati
  • ht: Haitian Creole
  • cnh: Hakha Chin
  • ha: Hausa
  • haw: Hawaiian
  • he: Hebrew
  • hil: Hiligaynon
  • hi: Hindi
  • hmn: Hmong
  • hu: Hungarian
  • hrx: Hunsrik
  • is: Icelandic
  • ig: Igbo
  • ilo: Iloko
  • id: Indonesian
  • ga: Irish
  • it: Italian
  • ja: Japanese
  • jw: Javanese
  • kn: Kannada
  • pam: Kapampangan
  • kk: Kazakh
  • km: Khmer
  • cgg: Kiga
  • rw: Kinyarwanda
  • ktu: Kituba
  • gom: Konkani
  • ko: Korean
  • kri: Krio
  • ku: Kurdish (Kurmanji)
  • ckb: Kurdish (Sorani)
  • ky: Kyrgyz
  • lo: Lao
  • ltg: Latgalian
  • la: Latin
  • lv: Latvian
  • lij: Ligurian
  • li: Limburgan
  • ln: Lingala
  • lt: Lithuanian
  • lmo: Lombard
  • luo: Luo
  • lb: Luxembourgish
  • mk: Macedonian
  • mai: Maithili
  • mak: Makassar
  • mg: Malagasy
  • ms: Malay
  • ms-Arab: Malay (Jawi)
  • ml: Malayalam
  • mt: Maltese
  • mi: Maori
  • mr: Marathi
  • chm: Meadow Mari
  • mni-Mtei: Meiteilon (Manipuri)
  • min: Minang
  • lus: Mizo
  • mn: Mongolian
  • my: Myanmar (Burmese)
  • nr: Ndebele (South)
  • new: Nepalbhasa (Newari)
  • ne: Nepali
  • nso: Northern Sotho (Sepedi)
  • no: Norwegian
  • nus: Nuer
  • oc: Occitan
  • or: Odia (Oriya)
  • om: Oromo
  • pag: Pangasinan
  • pap: Papiamento
  • ps: Pashto
  • fa: Persian (Farsi)
  • pl: Polish
  • pt: Portuguese
  • pt-BR: Portuguese (Brazil)
  • pa: Punjabi
  • pa-Arab: Punjabi (Shahmukhi)
  • qu: Quechua
  • rom: Romani
  • ro: Romanian
  • rn: Rundi
  • ru: Russian
  • sm: Samoan
  • sg: Sango
  • sa: Sanskrit
  • gd: Scots Gaelic
  • sr: Serbian
  • st: Sesotho
  • crs: Seychellois Creole
  • shn: Shan
  • sn: Shona
  • scn: Sicilian
  • szl: Silesian
  • sd: Sindhi
  • si: Sinhala (Sinhalese)
  • sk: Slovak
  • sl: Slovenian
  • so: Somali
  • es: Spanish
  • su: Sundanese
  • sw: Swahili
  • ss: Swati
  • sv: Swedish
  • tg: Tajik
  • ta: Tamil
  • tt: Tatar
  • te: Telugu
  • tet: Tetum
  • th: Thai
  • ti: Tigrinya
  • ts: Tsonga
  • tn: Tswana
  • tr: Turkish
  • tk: Turkmen
  • ak: Twi (Akan)
  • uk: Ukrainian
  • ur: Urdu
  • ug: Uyghur
  • uz: Uzbek
  • vi: Vietnamese
  • cy: Welsh
  • xh: Xhosa
  • yi: Yiddish
  • yo: Yoruba
  • yua: Yucatec Maya
  • zu: Zulu