Newsroom API
Newsroom lets your apps (iOS, macOS, watchOS, web) publish release notes and announcements programmatically, and lets people read them on one public site.
Authentication
Every write request needs an API key, created from the Newsroom admin panel under API Anahtarları. Send it as a Bearer token:
Authorization: Bearer nr_live_xxxxxxxxxxxxxxxxxxxxxxxx
Treat this key like a password: anyone who has it can publish posts under your name. Never commit it to source control — store it as an environment variable (e.g. NEWSROOM_API_KEY) in the project that calls this API.
Create a post
POST https://newsroom.ilgaraydogan.com/api/v1/posts
Request body (JSON):
| Field | Type | Required | Description |
|---|---|---|---|
title | string | yes | Post title |
body | string | yes | Post content, as Markdown |
summary | string | no | Short summary shown in listings |
category | string | no | One of release-notes, announcement, feature-update, general. Defaults to general. |
product | string | no | Product slug (e.g. ios-app, macos-app, watchos-app, web-app) to tag the post with. |
status | string | no | draft or published. Defaults to draft. |
cover_image_url | string | no | URL of a cover image. Upload one first via /api/v1/uploads if you don't already have a hosted URL. |
Example request:
curl -X POST https://newsroom.ilgaraydogan.com/api/v1/posts \
-H "Authorization: Bearer nr_live_xxxx" \
-H "Content-Type: application/json" \
-d '{
"title": "v2.3.0 Released",
"body": "## New in this release\n- Faster sync\n- Bug fixes",
"category": "release-notes",
"product": "ios-app",
"status": "published"
}'
Response (201 Created):
{
"id": "5b1c...",
"slug": "v2-3-0-released-ab12cd",
"status": "published",
"url": "https://newsroom.ilgaraydogan.com/posts/v2-3-0-released-ab12cd"
}
Errors: 401 invalid or missing API key, 400 invalid payload (missing title/body, or an invalid category/status value).
Upload a cover image
POST https://newsroom.ilgaraydogan.com/api/v1/uploads — multipart/form-data with a single field named file.
Response (201 Created):
{ "url": "https://ik.imagekit.io/ilgaraydogannewsroom/posts/covers/..." }
Use the returned url as cover_image_url when creating a post.
Reading posts
Published posts are plain public pages, and also listed in https://newsroom.ilgaraydogan.com/sitemap.xml. There is no read API yet — this service is currently write-only for integrations; reading is done by people visiting the site.
For AI agents
If you are an AI coding assistant wiring a project up to this Newsroom: everything you need is on this page. To publish a release note, call POST /api/v1/posts exactly as documented above using the project's Newsroom API key (ask the person you're working with for it, or read it from an environment variable such as NEWSROOM_API_KEY if one is already configured). Don't invent fields beyond what's listed here — if something you need isn't documented, ask rather than guess.
Feedback API (coming soon)
A POST /api/v1/feedback endpoint is planned so the same apps can submit user feedback into this Newsroom, reusing this same API key mechanism. Not available yet.