Reonic is a German climate-tech company (founded 2021, Augsburg) building an AI-powered operating system for renewable-energy installers. Its platform covers the full workflow for selling and installing photovoltaic systems, heat pumps, EV chargers, and battery storage — CRM and lead management, 3D roof planning and shading simulation, instant pricing, proposal generation with digital signature, project and installation tracking, and documentation. The Reonic REST API v3 exposes 111 endpoints across 33 resource areas (contacts, residential and commercial projects, tasks, files, components, planning templates, time tracking, wiki, photogrammetry, and more), authenticated with rnc_v3_ API keys, plus a 17-event signed webhook surface.
Reonic publishes 30 API contracts indexed on the APIs.io network, including Activities API, Appointments API, Calendar Categories API, and 27 more. Tagged areas include Company, Climate Energy, Solar, Renewable Energy, and Photovoltaics.
The Reonic catalog on APIs.io includes 2 event-driven AsyncAPI specifications and 1 Spectral governance ruleset.
Reonic’s developer surface includes documentation, API reference, engineering blog, support, signup flow, authentication, changelog, and 21 more developer resources.
Regulatory Posture applies to this provider. Its tags matched the
Energy & Utilities regime, so
Regulatory Posture carries 15 points of the composite.
If this regime is wrong for your business, say so on your
provider repo — the
applicability map is public and we will correct it.
Create-or-Update Ergonomics applies to this provider. This API accepts writes, so it
carries 10 points of the composite. It is scored from the published contracts
themselves: whether a caller can create-or-update in one call, whether the write accepts a key the caller already
holds, and whether the response says which branch ran. Without that, every write needs a search-and-branch in
front of it, and the first time that check is skipped a duplicate record is created.
Scored against the observed mean rather than raw — a provider at the catalog average is unchanged by this facet,
not penalised by it.
The six quality facets above are damped to 75 points between them,
because the conditional facet above carries the other
25. That is why each facet's contribution is shown against a damped
maximum: raising a quality facet moves the composite by 75% of its nominal
weight, not 100%. The full arithmetic is at apis.io/rating/.
Show this score on your site.
It updates itself when the score changes. Paste this where you link to your API docs:
<a href="https://apis.io/providers/reonic/"><img src="https://apis.io/badge/reonic/card.svg" alt="Reonic on APIs.io — Kin Score by API Evangelist"></a>
Other styles, a README pill and a shields.io endpoint are on the badge page.
Raise your score.
Agent readiness — checks not met, largest first (exact, from this profile):
MCP Server+12 pts — deployment.mode + probe verdict on the mcp/ manifest, not the pointer; an unprobed slug falls back to authorship
Idempotency+9 pts — OpenAPI mutating operations declare an idempotency key — a header, a request-body property, or a named de-duplication token whose own description says so (verified); else common[].type matches /idempoten/i (documented)
A2A Agent Card+8 pts — a2a/-a2a.yml manifest, graded on conformance.grade against A2A 1.0.0
Rate-Limit Signaling+7 pts — OpenAPI responses document X-RateLimit-* / RateLimit headers (verified), else a rate_limits artifact or RateLimits link (documented)
Delegated User Identity+6 pts — a served discovery document listing authorization_code in grant_types_supported (served), else an oauth2 authorizationCode flow or openIdConnect declared in an OpenAPI (documented)
6 more unmet checks in the Agent Readiness table above.
Kin Score — facets with the most composite points still available (weight × headroom):
Access Clarityscores 34.2 — up to +13.2 composite points
Standards this provider implements or carries. De facto ones are profiled and measured by the API Commons; formal ones come from the standards directory and are linked by the provider's own tags. The evidence column says how each claim was established — not that it was made.
Reonic-hosted calendars only. External calendar integrations (Google, Microsoft) are visible inside the Reonic Portal but are not exposed through the public API.
Reusable checklists. Apply one to a residential project to populate its [**Checklists**](#tag/checklists). > [!warning] > **Beta:** These endpoints are in beta and may change as...
The active checklist for a residential project. > [!warning] > **Beta:** These endpoints are in beta and may change as the service evolves. Please report issues or unexpected be...
Commercial customer projects across the request, offer, and installation lifecycle stages. > [!warning] > **Beta:** These endpoints are in beta and may change as the service evo...
External people you interact with, such as customers or leads. Not to be confused with [**Users**](#tag/users), which represent members of your workspace.
Files attached to a project or contact. File responses include a download URL valid for 24 hours; refetch the file to obtain a fresh URL after it expires.
Channels that brought a customer/contact to your workspace, such as referrals, ad campaigns, or partner integrations. Used to attribute projects to their origin.
Pre-configured combinations of planning packages used to quickly populate package categories when creating an offer. > [!warning] > **Beta:** These endpoints are in beta and may...
3D reconstruction jobs built from uploaded site imagery. > [!warning] > **Beta:** These endpoints are in beta and may change as the service evolves. Please report issues or unex...
Small groups of [**Components**](#tag/components) that can be added to targeted planning sections when a project type or requirement calls for extra components.
Requests sent to a customer to sign a residential project's offer. Each carries the offer PDF for every variant the customer can choose between, available even before signing, p...
To-do items attached to a project or contact, with due dates, assignees, and completion state. > [!warning] > **Beta:** These endpoints are in beta and may change as the service...
Time entries logged against projects. > [!warning] > **Beta:** These endpoints are in beta and may change as the service evolves. Please report issues or unexpected behavior to ...
Two-step uploads for endpoints that accept user-provided file content. Call `POST /uploads/create` to obtain an `uploadUrl` and an `uploadId`. `PUT` the raw file body to `upload...
Members of your workspace, such as employees. Not to be confused with [**Contacts**](#tag/contacts), which represent external people like customers or leads.
Your company's shared knowledge base — pages and folders. > [!warning] > **Beta:** These endpoints are in beta and may change as the service evolves. Please report issues or une...
Webhooks notify your systems the moment something happens in Reonic. For example when a project is created or an offer is signed. Instead of repeatedly polling the API for chang...
Event surface for the Reonic REST API v3. Reonic POSTs a signed JSON body (HMAC SHA-256, X-Reonic-Signature) to your configured HTTPS endpoint when a selected event occurs. Payl...
Overlays applied on top of this provider's contracts. Each card says who wrote it: a document the provider publishes, or one API Evangelist derived or generated.
aid: reonic
deliveryModel:
model: saas
open_source: false
commercial: true
callable_host: false
label: Hosted service · you call their endpoint
confidence: medium
source:
- openapi
- pricing
generated: '2026-08-28'
method: derived
accessModel:
pricing: unknown
onboarding: unknown
trial: false
try_now: false
public: false
label: Unknown
confidence: low
source:
- authentication
- security
generated: '2026-11-06'
method: derived
image: https://kinlane-images.s3.amazonaws.com/shared/apis-json/icons/reonic.png
name: Reonic
description: Reonic is a German climate-tech company (founded 2021, Augsburg) building an AI-powered operating system for
renewable-energy installers. Its platform covers the full workflow for selling and installing photovoltaic systems, heat
pumps, EV chargers, and battery storage — CRM and lead management, 3D roof planning and shading simulation, instant pricing,
proposal generation with digital signature, project and installation tracking, and documentation. The Reonic REST API v3
exposes 111 endpoints across 33 resource areas (contacts, residential and commercial projects, tasks, files, components,
planning templates, time tracking, wiki, photogrammetry, and more), authenticated with rnc_v3_ API keys, plus a 17-event
signed webhook surface.
url: https://raw.githubusercontent.com/api-evangelist/reonic/refs/heads/main/apis.yml
x-type: company
x-source: vc-portfolio
x-backed-by:
- northzone
- point-nine
x-tier: stub
x-tier-reason: portfolio-lead
specificationVersion: '0.23'
created: '2026-07-17'
modified: '2026-07-20'
x-docs-platform: docusaurus
x-docs-platform-confidence: medium
x-docs-platform-checked: 2026-10-04
x-docs-hosting: cloudflare-pages
tags:
- Company
- Climate Energy
- Solar
- Renewable Energy
- Photovoltaics
- Heat Pumps
- Installer Software
- Software-as-a-Service
- CRM
- Project Management
tags_raw:
- Company
- Climate Energy
- Solar
- Renewable Energy
- Photovoltaic
- Heat Pumps
- Installer Software
- SaaS
- CRM
- Project Management
apis:
- aid: reonic:reonic-activities-api
name: Reonic Activities API
description: Timeline of events on a project — automatic activity records and manually logged calls and meetings.
humanURL: https://api.reonic.de/rest/v3/docs
baseURL: https://api.reonic.de/rest/v3/
tags:
- Activities
properties:
- type: OpenAPI
url: openapi/reonic-activities-api-openapi.yml
- aid: reonic:reonic-appointments-api
name: Reonic Appointments API
description: Appointments on Reonic-hosted calendars only. External calendars (Google, Microsoft) cannot be read or written
through the API.
humanURL: https://api.reonic.de/rest/v3/docs
baseURL: https://api.reonic.de/rest/v3/
tags:
- Appointments
properties:
- type: OpenAPI
url: openapi/reonic-appointments-api-openapi.yml
- aid: reonic:reonic-calendar-categories-api
name: Reonic Calendar Categories API
description: Groupings used to organize [**Calendars**](#tag/calendars).
humanURL: https://api.reonic.de/rest/v3/docs
baseURL: https://api.reonic.de/rest/v3/
tags:
- Calendar Categories
properties:
- type: OpenAPI
url: openapi/reonic-calendar-categories-api-openapi.yml
- aid: reonic:reonic-calendars-api
name: Reonic Calendars API
description: Reonic-hosted calendars only. External calendar integrations (Google, Microsoft) are visible inside the Reonic
Portal but are not exposed through the public API.
humanURL: https://api.reonic.de/rest/v3/docs
baseURL: https://api.reonic.de/rest/v3/
tags:
- Calendar
tags_raw:
- Calendars
properties:
- type: OpenAPI
url: openapi/reonic-calendars-api-openapi.yml
- aid: reonic:reonic-checklist-templates-api
name: Reonic Checklist Templates API
description: "Reusable checklists. Apply one to a residential project to populate its [**Checklists**](#tag/checklists).\n\
\n> [!warning] \n> **Beta:** These endpoints are in beta and may change as the service evolves. Please report issues or\
\ unexpected behavior to our team."
humanURL: https://api.reonic.de/rest/v3/docs
baseURL: https://api.reonic.de/rest/v3/
tags:
- Checklist Templates
properties:
- type: OpenAPI
url: openapi/reonic-checklist-templates-api-openapi.yml
- aid: reonic:reonic-checklists-api
name: Reonic Checklists API
description: "The active checklist for a residential project.\n\n> [!warning] \n> **Beta:** These endpoints are in beta\
\ and may change as the service evolves. Please report issues or unexpected behavior to our team."
humanURL: https://api.reonic.de/rest/v3/docs
baseURL: https://api.reonic.de/rest/v3/
tags:
- Checklists
properties:
- type: OpenAPI
url: openapi/reonic-checklists-api-openapi.yml
- aid: reonic:reonic-commercial-projects-api
name: Reonic Commercial Projects API
description: "Commercial customer projects across the request, offer, and installation lifecycle stages.\n\n> [!warning]\
\ \n> **Beta:** These endpoints are in beta and may change as the service evolves. Please report issues or unexpected\
\ behavior to our team."
humanURL: https://api.reonic.de/rest/v3/docs
baseURL: https://api.reonic.de/rest/v3/
tags:
- Commercial Projects
properties:
- type: OpenAPI
url: openapi/reonic-commercial-projects-api-openapi.yml
- aid: reonic:reonic-components-api
name: Reonic Components API
description: Catalog of solar, storage, EV charger, and heat-pump products available to your workspace.
humanURL: https://api.reonic.de/rest/v3/docs
baseURL: https://api.reonic.de/rest/v3/
tags:
- Components
properties:
- type: OpenAPI
url: openapi/reonic-components-api-openapi.yml
- aid: reonic:reonic-contacts-api
name: Reonic Contacts API
description: External people you interact with, such as customers or leads. Not to be confused with [**Users**](#tag/users),
which represent members of your workspace.
humanURL: https://api.reonic.de/rest/v3/docs
baseURL: https://api.reonic.de/rest/v3/
tags:
- Contacts
properties:
- type: OpenAPI
url: openapi/reonic-contacts-api-openapi.yml
- aid: reonic:reonic-file-folders-api
name: Reonic File Folders API
description: "Folders that organize [**Files**](#tag/files) within a project or contact.\n> [!note] \n> Personal and template\
\ folders are not exposed via the API."
humanURL: https://api.reonic.de/rest/v3/docs
baseURL: https://api.reonic.de/rest/v3/
tags:
- File Folders
properties:
- type: OpenAPI
url: openapi/reonic-file-folders-api-openapi.yml
- aid: reonic:reonic-files-api
name: Reonic Files API
description: Files attached to a project or contact. File responses include a download URL valid for 24 hours; refetch the
file to obtain a fresh URL after it expires.
humanURL: https://api.reonic.de/rest/v3/docs
baseURL: https://api.reonic.de/rest/v3/
tags:
- File
tags_raw:
- Files
properties:
- type: OpenAPI
url: openapi/reonic-files-api-openapi.yml
- aid: reonic:reonic-kanban-boards-api
name: Reonic Kanban Boards API
description: Kanban boards used to group project columns within a lifecycle stage such as request, offer, or installation.
humanURL: https://api.reonic.de/rest/v3/docs
baseURL: https://api.reonic.de/rest/v3/
tags:
- Kanban Boards
properties:
- type: OpenAPI
url: openapi/reonic-kanban-boards-api-openapi.yml
- aid: reonic:reonic-kanban-columns-api
name: Reonic Kanban Columns API
description: Kanban columns projects move through on a [**Kanban Boards**](#tag/kanban-boards).
humanURL: https://api.reonic.de/rest/v3/docs
baseURL: https://api.reonic.de/rest/v3/
tags:
- Kanban Columns
properties:
- type: OpenAPI
url: openapi/reonic-kanban-columns-api-openapi.yml
- aid: reonic:reonic-lead-sources-api
name: Reonic Lead Sources API
description: Channels that brought a customer/contact to your workspace, such as referrals, ad campaigns, or partner integrations.
Used to attribute projects to their origin.
humanURL: https://api.reonic.de/rest/v3/docs
baseURL: https://api.reonic.de/rest/v3/
tags:
- Lead Sources
properties:
- type: OpenAPI
url: openapi/reonic-lead-sources-api-openapi.yml
- aid: reonic:reonic-links-api
name: Reonic Links API
description: Resolve a resource into a URL where it can be viewed in the Reonic web app.
humanURL: https://api.reonic.de/rest/v3/docs
baseURL: https://api.reonic.de/rest/v3/
tags:
- Links
properties:
- type: OpenAPI
url: openapi/reonic-links-api-openapi.yml
- aid: reonic:reonic-notes-api
name: Reonic Notes API
description: Free-text notes attached to a project or contact.
humanURL: https://api.reonic.de/rest/v3/docs
baseURL: https://api.reonic.de/rest/v3/
tags:
- Notes
properties:
- type: OpenAPI
url: openapi/reonic-notes-api-openapi.yml
- aid: reonic:reonic-offer-templates-api
name: Reonic Offer Templates API
description: "Pre-configured combinations of planning packages used to quickly populate package categories when creating\
\ an offer.\n\n> [!warning] \n> **Beta:** These endpoints are in beta and may change as the service evolves. Please report\
\ issues or unexpected behavior to our team."
humanURL: https://api.reonic.de/rest/v3/docs
baseURL: https://api.reonic.de/rest/v3/
tags:
- Offer Templates
properties:
- type: OpenAPI
url: openapi/reonic-offer-templates-api-openapi.yml
- aid: reonic:reonic-photogrammetry-api
name: Reonic Photogrammetry API
description: "3D reconstruction jobs built from uploaded site imagery.\n\n> [!warning] \n> **Beta:** These endpoints are\
\ in beta and may change as the service evolves. Please report issues or unexpected behavior to our team."
humanURL: https://api.reonic.de/rest/v3/docs
baseURL: https://api.reonic.de/rest/v3/
tags:
- Photogrammetry
properties:
- type: OpenAPI
url: openapi/reonic-photogrammetry-api-openapi.yml
- aid: reonic:reonic-planning-packages-api
name: Reonic Planning Packages API
description: Standard offer packages for PV, storage, heat pumps, and EV chargers, built from common [**Components**](#tag/components)
and service combinations.
humanURL: https://api.reonic.de/rest/v3/docs
baseURL: https://api.reonic.de/rest/v3/
tags:
- Planning Packages
properties:
- type: OpenAPI
url: openapi/reonic-planning-packages-api-openapi.yml
- aid: reonic:reonic-planning-templates-api
name: Reonic Planning Templates API
description: Small groups of [**Components**](#tag/components) that can be added to targeted planning sections when a project
type or requirement calls for extra components.
humanURL: https://api.reonic.de/rest/v3/docs
baseURL: https://api.reonic.de/rest/v3/
tags:
- Planning Templates
properties:
- type: OpenAPI
url: openapi/reonic-planning-templates-api-openapi.yml
- aid: reonic:reonic-residential-projects-api
name: Reonic Residential Projects API
description: Residential customer projects across the request, offer, and installation lifecycle stages.
humanURL: https://api.reonic.de/rest/v3/docs
baseURL: https://api.reonic.de/rest/v3/
tags:
- Residential Projects
properties:
- type: OpenAPI
url: openapi/reonic-residential-projects-api-openapi.yml
- aid: reonic:reonic-signature-requests-api
name: Reonic Signature Requests API
description: Requests sent to a customer to sign a residential project's offer. Each carries the offer PDF for every variant
the customer can choose between, available even before signing, plus the signed document once completed.
humanURL: https://api.reonic.de/rest/v3/docs
baseURL: https://api.reonic.de/rest/v3/
tags:
- Signature Requests
properties:
- type: OpenAPI
url: openapi/reonic-signature-requests-api-openapi.yml
- aid: reonic:reonic-tags-api
name: Reonic Tags API
description: Reusable labels for categorizing and filtering projects, contacts, and other entities.
humanURL: https://api.reonic.de/rest/v3/docs
baseURL: https://api.reonic.de/rest/v3/
tags:
- Tags
properties:
- type: OpenAPI
url: openapi/reonic-tags-api-openapi.yml
- aid: reonic:reonic-tasks-api
name: Reonic Tasks API
description: "To-do items attached to a project or contact, with due dates, assignees, and completion state.\n\n> [!warning]\
\ \n> **Beta:** These endpoints are in beta and may change as the service evolves. Please report issues or unexpected\
\ behavior to our team."
humanURL: https://api.reonic.de/rest/v3/docs
baseURL: https://api.reonic.de/rest/v3/
tags:
- Task
tags_raw:
- Tasks
properties:
- type: OpenAPI
url: openapi/reonic-tasks-api-openapi.yml
- aid: reonic:reonic-teams-api
name: Reonic Teams API
description: Groups of users. Teams can be assigned to projects and nested under one another.
humanURL: https://api.reonic.de/rest/v3/docs
baseURL: https://api.reonic.de/rest/v3/
tags:
- Team
tags_raw:
- Teams
properties:
- type: OpenAPI
url: openapi/reonic-teams-api-openapi.yml
- aid: reonic:reonic-time-tracking-api
name: Reonic Time Tracking API
description: "Time entries logged against projects.\n\n> [!warning] \n> **Beta:** These endpoints are in beta and may change\
\ as the service evolves. Please report issues or unexpected behavior to our team."
humanURL: https://api.reonic.de/rest/v3/docs
baseURL: https://api.reonic.de/rest/v3/
tags:
- Time Tracking
properties:
- type: OpenAPI
url: openapi/reonic-time-tracking-api-openapi.yml
- aid: reonic:reonic-upload-api
name: Reonic Upload API
description: 'Two-step uploads for endpoints that accept user-provided file content.
Call `POST /uploads/create` to obtain an `uploadUrl` and an `uploadId`. `PUT` the raw file body to `uploadUrl` within
1 hour, with a `Content-Type` header matching the file — not `multipart/form-data`. Then reference the `uploadId` from
a registration endpoint such as those in [**Files**](#tag/files) or [**Photogrammetry**](#tag/photogrammetry) to attach
the file to a resource.
Prefer this flow over a registration endpoint''s `url` shortcut when the file isn''t already hosted at a public URL, or
when you''d rather not expose it on the internet.'
humanURL: https://api.reonic.de/rest/v3/docs
baseURL: https://api.reonic.de/rest/v3/
tags:
- Upload
properties:
- type: OpenAPI
url: openapi/reonic-upload-api-openapi.yml
- aid: reonic:reonic-users-api
name: Reonic Users API
description: Members of your workspace, such as employees. Not to be confused with [**Contacts**](#tag/contacts), which
represent external people like customers or leads.
humanURL: https://api.reonic.de/rest/v3/docs
baseURL: https://api.reonic.de/rest/v3/
tags:
- User
tags_raw:
- Users
properties:
- type: OpenAPI
url: openapi/reonic-users-api-openapi.yml
- aid: reonic:reonic-wiki-api
name: Reonic Wiki API
description: "Your company's shared knowledge base — pages and folders.\n\n> [!warning] \n> **Beta:** These endpoints are\
\ in beta and may change as the service evolves. Please report issues or unexpected behavior to our team."
humanURL: https://api.reonic.de/rest/v3/docs
baseURL: https://api.reonic.de/rest/v3/
tags:
- Wiki
properties:
- type: OpenAPI
url: openapi/reonic-wiki-api-openapi.yml
- aid: reonic:reonic-webhooks-api
name: Reonic Webhooks API
description: "Webhooks notify your systems the moment something happens in Reonic. For example when a project is created\
\ or an offer is signed. Instead of repeatedly polling the API for changes, you give Reonic a URL and we send an HTTPS\
\ `POST` request to it whenever one of the events you selected occurs.\n\nThe receiving URL does not have to be your own\
\ server. A webhook trigger from an automation tool works just as well. For example a \"Webhooks by Zapier\" trigger,\
\ an n8n Webhook node, or a Make \"Custom webhook\".\n\n### Set up a webhook\n\n1. Get the URL that should receive events\
\ — from your own service, or from your automation tool's webhook trigger step. It must be a public `https://` URL; URLs\
\ that resolve to private or internal addresses are rejected.\n2. In the Reonic Portal, open the webhook settings (Settings\
\ > API / Developers > Webhooks), enter the URL, choose the events you want to receive, and save.\n3. Send a test event\
\ from the same settings to confirm deliveries arrive (see [**Test events**](#webhooks-test-events) below).\n\nSaving\
\ also generates a signing secret (`whsec_…`), shown in the same settings. You only need it to verify signatures (recommended,\
\ see [**Verify signatures**](#webhooks-verify-signatures) below). The secret can be rotated there as well; rotation takes\
\ effect immediately and only one secret is valid at a time.\n\nYour endpoint must accept JSON `POST` requests (sent with\
\ `Content-Type: application/json`), must not redirect, and must respond within 5 seconds. Acknowledge first and process\
\ asynchronously if you need more time.\n\n<a id=\"webhooks-test-events\"></a>\n\n### Test events\n\nThe Portal test action\
\ sends `X-Reonic-Event: test` with a `{ \"message\": … }` payload in the standard body shape (see [**Request format**](#webhooks-request-format)\
\ below). Use it to verify reachability and signature handling before enabling production events. Test deliveries are\
\ not retried and do not appear in the delivery log. Your endpoint's response is shown directly in the Portal instead.\n\
\n<a id=\"webhooks-request-format\"></a>\n\n### Request format\n\nEach delivery sends a JSON body with this shape:\n\n\
```json\n{\n \"version\": 1,\n \"type\": \"project_created\",\n \"occurredAt\": \"2026-01-01T12:00:00.000Z\",\n \"\
data\": { /* event-specific payload, see the events below */ }\n}\n```\n\nPayloads are deliberately thin: they identify\
\ what happened and which resources were involved, but do not embed resource snapshots. Fetch the current state of an\
\ affected resource through the corresponding API v3 endpoint — for example, a `project_created` delivery carries a `projectId`\
\ to fetch via [**Residential Projects**](#tag/residential-projects) or [**Commercial Projects**](#tag/commercial-projects),\
\ depending on its `projectType`.\n\nEvent metadata is also sent in headers:\n\n| Header | Meaning |\n|---|---|\n| `X-Reonic-Event`\
\ | Event type for this webhook delivery. Matches the `type` field in the body. |\n| `X-Reonic-Client-Id` | Id of the\
\ sending client. Stable across deliveries. If one endpoint receives webhooks from multiple clients, use this to pick\
\ the matching signing secret before verifying the signature. |\n| `X-Reonic-Event-Id` | Stable event id, identical across\
\ redeliveries of the same event. Use this as your idempotency key. |\n| `X-Reonic-Delivery-Id` | Unique id of this delivery\
\ attempt. Unlike the event id, it changes on every redelivery — reference it when reporting issues with a specific delivery.\
\ |\n| `X-Reonic-Timestamp` | Unix timestamp in seconds at which this delivery was signed. Changes on every redelivery\
\ — verify signatures against this value, not the body's `occurredAt`. |\n| `X-Reonic-Signature` | HMAC SHA-256 signature\
\ in the format `sha256=<hex>`, computed over `${timestamp}.${rawBody}`. |\n\n<a id=\"webhooks-verify-signatures\"></a>\n\
\n### Verify signatures\n\nVerifying signatures is optional but strongly recommended: it proves a delivery was really\
\ sent by Reonic and not by someone who discovered your URL. If your tool cannot compute HMAC digests, keep your webhook\
\ URL secret and treat the data accordingly.\n\nCompute an HMAC SHA-256 digest with your webhook signing secret over `${timestamp}.${rawBody}`,\
\ then compare it to `X-Reonic-Signature`. Use the raw request body exactly as received, before JSON parsing. Reject deliveries\
\ whose `X-Reonic-Timestamp` is more than 5 minutes old to reduce replay risk — retries are signed freshly, so a legitimate\
\ delivery never carries an old timestamp.\n\nCode example:\n\n```ts\nimport { createHmac, timingSafeEqual } from \"crypto\"\
;\n\nconst timestamp = request.headers[\"x-reonic-timestamp\"];\nconst signature = request.headers[\"x-reonic-signature\"\
];\n\nconst expected = Buffer.from(\"sha256=\" + createHmac(\"sha256\", secret)\n .update(`${timestamp}.${rawBody}`)\n\
\ .digest(\"hex\"));\nconst received = Buffer.from(signature);\n\nconst isValid = expected.length === received.length\
\ && timingSafeEqual(expected, received);\n```\n\n### Retries and idempotency\n\nRespond with any `2xx` status code once\
\ you have accepted the event — automation tools like Zapier and n8n do this for you. Every other response, as well as\
\ network errors and timeouts, is retried automatically, roughly 1 min, 5 min, 30 min, 2 h, 5 h, 12 h, 1 d, 2 d after\
\ the initial attempt.\n\nDelivery order is not guaranteed, and the same event may be delivered more than once, so store\
\ `X-Reonic-Event-Id` and ignore duplicates.\n\n> [!warning]\n> If all retries are exhausted, Reonic disables the webhook\
\ subscription and notifies your workspace's contact email. Re-enable it in the webhook settings once your endpoint is\
\ fixed.\n\n### When deliveries fail\n\nThe webhook settings in the Portal include a delivery log with every attempt,\
\ the response status or error we recorded, and the payload that was sent. Failed deliveries can be retried manually from\
\ there — including after you fix your endpoint and re-enable a disabled subscription.\n\n### Compatibility\n\nThe body's\
\ `version` (currently 1) only changes when the envelope shape itself — `version`, `type`, `occurredAt`, `data` — changes\
\ in a breaking way. New event types, new fields inside `data`, and new headers may appear without a version bump, so\
\ ignore anything you don't recognize."
humanURL: https://api.reonic.de/rest/v3/docs
baseURL: https://api.reonic.de/rest/v3/
tags:
- Webhook
tags_raw:
- Webhooks
properties:
- type: OpenAPI
url: openapi/reonic-webhooks-api-openapi.yml
maintainers:
- FN: Kin Lane
email: kin@apievangelist.com
- FN: APIs.json
email: info@apis.io
common:
- type: CapabilityMap
url: capabilities/reonic-capability-edges.yml
name: Reonic Business Capability Map
- type: Overlay
url: overlays/reonic-v3-overlay.yaml
- type: DeveloperPortal
url: https://docs.reonic.de/
- type: Documentation
url: https://docs.reonic.de/docs/category/integrationen/
- type: APIReference
url: https://api.reonic.de/rest/v3/docs
- type: Blog
url: https://reonic.com/de-de/blog/
- type: Support
url: mailto:support@reonic.de
- type: SignUp
url: https://portal.reonic.de
- type: TermsOfService
url: https://reonic.com/de-de/legal/terms/
- type: PrivacyPolicy
url: https://reonic.com/de-de/legal/dataprotection/
- type: GitHubOrganization
url: https://github.com/reonic
- type: Authentication
url: authentication/reonic-authentication.yml
- type: Conventions
url: conventions/reonic-conventions.yml
- type: ErrorCatalog
url: errors/reonic-problem-types.yml
- type: Lifecycle
url: lifecycle/reonic-lifecycle.yml
- type: Deprecation
url: lifecycle/reonic-lifecycle.yml
- type: ChangeLog
url: changelog/reonic-changelog.yml
- type: Conformance
url: conformance/reonic-conformance.yml
- type: DataModel
url: data-model/reonic-data-model.yml
- type: WellKnown
url: well-known/reonic-well-known.yml
- type: AsyncAPI
url: asyncapi/reonic-webhooks-asyncapi.yml
- type: Webhooks
url: asyncapi/reonic-webhooks.yml
- type: X-MCPServerCandidate
url: mcp/reonic-mcp.yml
note: 'Renamed from MCPServer 2026-09-03 (roadmap#247): the manifest self-describes as status: candidate — a tool list derived
from the published API contracts, not an existing server. The scorer already read the manifest and reported mcp_server
correctly; the MCPServer type was crediting the artifact-type surfaces with a server that does not exist.'
- type: AgentSkill
url: skills/_index.yml
- type: LLMsTxt
url: llms/reonic-llms.txt
- type: AgenticAccess
url: agentic-access/reonic-agentic-access.yml
- type: DomainSecurity
url: security/reonic-domain-security.yml
- type: Website
url: https://reonic.de
x-enrichment:
date: '2026-07-20'
status: enriched
artifacts_added: 16
pass: local-v1
Reonic API — frequently asked questions
Does Reonic have an API?
Yes. APIs.io lists 30 APIs from Reonic, including Reonic Activities API, Reonic Appointments API and Reonic Calendar Categories API, and 27 more.
Is there an OpenAPI specification for the Reonic API?
Yes. APIs.io indexes 30 OpenAPI specifications for Reonic, each linked for download from this page.
How do I authenticate with the Reonic API?
Reonic uses bearer-token authentication (apiKey · 1 scheme). The details are profiled on APIs.io as Reonic Authentication.
Is the Reonic API ready for AI agents?
Reonic has a Kin Score of 44.5 out of 100 (developing) and an Agent Readiness score of 32.5 (agent-ready), scored by API Evangelist on 2026-11-06.
Calls without X-API-Key need no key. Calls with it need a paid plan — get a key.
Get an API key
Free tier, no form to fill in. Signing in shares your email address with us — we
store it to create your key and to recognise you if you sign in with another
provider. See our Privacy Policy and
Terms.