An HTTP API for article narration
Two endpoints run the same pipeline the app itself uses: POST /articles and GET /articles/:id.
Access is granted per publication. Tell me what you are building and I will set you up with credentials and the exact contract.
POST /articles
url: url of the article to converttitle: title of the article (optional; defaults to the url)Conversion is queued immediately and runs the full pipeline: images described, tables summarised, code blocks explained, pauses added.
// ->> request
{
"url": "https://website.com/blog/article-slug",
"title": "Article title"
}
// <<- response
{
"status": "scheduled"
}GET /articles/:id
Poll this to follow a conversion. Text extraction and audio generation report separately, so you can show progress rather than a spinner: status_text reaches Ready first, then status_audio, and audio_url becomes playable.
// <<- response
{
"id": "66f572166ec571d315eaae54",
"url": "https://website.com/blog/article-slug",
"title": "Article title",
"status_text": "Ready",
"status_audio": "Ready",
"audio_url": "https://article2audio.app/a/66f572166ec571d315eaae54.mp3",
"duration": 512
}Built for the first publication that asks
Specified, not built. Each is small, and I would rather build the ones somebody actually needs than guess:
- The article id in the
POSTresponse, so you can poll without looking it up - Posting the article
htmldirectly, for pages a crawler cannot reach - Choosing a
voiceper request rather than per account - A callback when a conversion finishes, instead of polling
Say which you need in the form below.
Request Access
Please submit the form below and I will get back to you with the details on how you can integrate with article2audio on your website.
Oleksandr, creator of article2audio