Your existing systems stay your existing systems.
Portenia pulls data live from your tools — through the connect agent inside your own network or through the public API. Your clients see everything in one place without you maintaining it twice.
Three routes, one portal
Connect agent
Data from your own network
Public API
REST + outbound events
Directly in Portenia
maintain, CSV, forms
Portenia
Data sources · Contracts · documents · appointments
Your overview
● everything in one place
The centrepiece: connect agent
Data from your own premises — without a VPN.
Behind most connections sits a lean container inside your network. It runs named queries and calls and returns results only — the cloud never sees SQL, credentials or internal addresses. Write-back actions travel the same path.
Core system
e.g. a database
Connect agent
container inside your network
Named queries (examples)
- new_policies
- document_status
- change_address
SQL, credentials, internal addresses stay here
Cloud → Agent · Query
new_policies · client_no
Agent → Cloud · Result
3 rows
Cloud → Agent · Action
change_address · client_no
Agent → Cloud · Reply
done
Portenia cloud
never sees:
- SQL
- credentials
- internal addresses
Public API
For everything coming in or going out.
A documented REST interface and outbound events — for any system that speaks HTTP.
REST interface with an OpenAPI description
Fully described; the machine-readable description lives at /api/docs/openapi.json and loads straight into tooling or a code generator.
Keys per tenant, with scopes
Every key belongs to one tenant and only to the scopes you grant it: read, data (maintain clients, records, documents, appointments), design (portals, layout, workflows, webhooks) and communicate (messages, announcements, requests). Plus a rate limit per key and cursor-based paging instead of page numbers.
Outbound events
Form submitted, record created, changed or deleted, message received, invoice created, appointment created, changed or cancelled, appointment request received — as a call into your system, with an HMAC signature, up to three attempts and a delivery log. On request the call goes through your agent, keeping the destination inside your own network.
MCP server for AI assistants
Claude and ChatGPT connect to your Portenia through a connector URL. The assistant can build portals, maintain records and set up clients — with the same scopes, limits and logs as any other call. The URL expires after 90 days.
Accounting connection
pk_••••••••3f9a
- valid for
- your tenant
- Scopes
- readdatadesigncommunicate
- Rate limit
- per key
Request
GET /api/v1/collections/{sourceKey}/entries?cursor=…
Authorization: Bearer pk_…Response, shortened
next page: ID of the last row as cursor
/api/docs/openapi.json· description to load into tooling
Event
- Form submitted
- Record created
- Message received
- Appointment created
POST https://your-system.example/inbound
X-Portenia-Signature: sha256=9c1e…
{ "event": "form.submitted", … }- form.submitted200delivered
- entry.created503retrying
- entry.created200delivered
On request through your agent — the destination stays inside your network
If none of that fits
Data sources directly in Portenia.
No core system? No problem. Maintain data here or let your clients deliver it through forms.
Enter it yourself or import a spreadsheet
Maintain data in the admin area or import a CSV — with column mapping and a preview before anything is written.
Forms write into the data source
A form in the portal files its answers as a new record. The client delivers, you have it structured — with a signature on the record if you want.
Fields by drag and drop
Assemble the structure visually — text, number, date, choice, references to other data sources. Validation and display rules included.
Preview · before anything is written
Damage report
Date of damage
What happened?
New record
in “Claims”
Two routes from practice
What connecting looks like day to day.
Example: insurance broker
The connect agent reads new policies from the broker management system through a named query and makes them available in the client’s portal — with a push notification if you want. Nobody resends policies; clients see the current state themselves.
Example: tax practice
The agent queries documents from the internal database on a schedule. Clients see the processing state in the portal and upload corrections directly. An outbound event carries them into the downstream system — no email ping-pong.
Sounds like your case?
Let us talk about your actual systems — which queries it takes and what should be written back.