Format citations in 21+ styles programmatically. The same engine that powers the in-app generator, available over HTTP for your own scripts, apps, or research tools.
Every request (except GET /styles) requires an API key in the Authorization header:
Authorization: Bearer bq_your_api_key_here
Generate a key from your Dashboard → Settings → API Keys. Keys are shown once at creation and can be revoked at any time. Generating a key requires an active paid plan.
https://bibloq.com/api/v1/citationFormats a single source into a citation string.
| Field | Type | Notes |
|---|---|---|
source | object | Required. A source object (see below). |
style | string | Required. A style key, e.g. apa7, mla9, chicago17nb, ieee. See GET /styles. |
mode | string | Optional. bibliography (default), in-text, or footnote where the style supports it. |
curl -X POST https://bibloq.com/api/v1/citation/format \
-H "Authorization: Bearer bq_your_api_key_here" \
-H "Content-Type: application/json" \
-d '{
"style": "apa7",
"source": {
"sourceType": "journalArticle",
"authors": [{ "last": "Ngonyo", "first": "Donald" }],
"title": "Preserving the link between claims and evidence",
"journal": "Journal of Research Tooling",
"year": "2026",
"volume": "4",
"issue": "2",
"pages": "1-12",
"doi": "10.1234/example"
}
}'
{
"success": true,
"formatted": "Ngonyo, D. (2026). Preserving the link between claims and evidence. *Journal of Research Tooling*, *4*(2), 1-12. https://doi.org/10.1234/example"
}
Formats a full bibliography from multiple sources in one call, sorted the same way Bibloq's own reference list is (alphabetical by author for name-based styles, insertion order for numbered styles such as IEEE/Vancouver/AMA).
| Field | Type | Notes |
|---|---|---|
sources | array | Required. An array of source objects. |
style | string | Required. A style key. |
curl -X POST https://bibloq.com/api/v1/citation/format-list \
-H "Authorization: Bearer bq_your_api_key_here" \
-H "Content-Type: application/json" \
-d '{ "style": "apa7", "sources": [ { "sourceType": "book", "authors": [{"last":"Doe","first":"Jane"}], "title": "An Example Book", "year": "2024", "publisher": "Example Press" } ] }'
{
"success": true,
"bibliography": [
{ "source": { "...": "as submitted" }, "citation": "Doe, J. (2024). *An Example Book*. Example Press." }
]
}
Public, no API key required. Returns every supported style key and name, so you can populate a dropdown without guessing.
curl https://bibloq.com/api/v1/citation/styles
{
"success": true,
"styles": [
{ "key": "apa7", "name": "APA 7th Edition", "modes": ["bibliography", "in-text"] },
{ "key": "mla9", "name": "MLA 9th Edition", "modes": ["bibliography", "in-text"] }
]
}
A source is a plain object describing what you're citing. Common fields:
| Field | Notes |
|---|---|
sourceType | journalArticle, book, website, and other source types matching the in-app generator. |
authors | Array of { last, first }, or { organization } for a corporate author. |
title, year | Required for most source types. |
journal, volume, issue, pages, doi | Journal articles. |
publisher, edition, isbn | Books. |
url, siteName, accessDate | Websites and online sources. |
401: missing, malformed, or revoked API key.400: missing required fields, or the source could not be formatted in the requested style.success; check it before reading other fields.