REST API Webhooks Datasets SQL Server

Technische details

Alle technische informatie voor developers en IT-professionals

Architectuur overzicht

SQLio maakt verbinding met één of meerdere SQL Server databases en ondersteunt meerdere omgevingen (Test, Acceptatie, Productie). Er zijn twee hoofdfuncties: Webhooks (data versturen bij wijzigingen) en API Endpoints (data beschikbaar stellen voor externe systemen).

Globe

Flexibele omgevingen

Configureer een aparte omgeving per database (Test, Acceptatie, Productie). Sync configuraties tussen omgevingen met één klik.

Datasets

Datasets

Bouw datasets op basis van tabellen, views of stored procedures als bron voor je integraties.

Security

Beveiligd

API keys voor toegang, OAuth 2.0 voor uitgaande calls, encrypted credentials.

Twee hoofdfuncties

Webhooks

Webhooks (Push)

Bij database-wijzigingen wordt automatisch data naar een externe URL verstuurd.

  • Trigger op INSERT, UPDATE, DELETE
  • Data naar Power Automate, Logic Apps, etc.
  • OAuth 2.0 authenticatie naar externe API's
  • Response opslaan in je database
API Endpoints

API Endpoints (Pull)

Externe systemen kunnen data ophalen of schrijven via REST API's.

  • GET, POST, PATCH, DELETE ondersteuning
  • Beveiligd met API keys
  • Automatische Swagger documentatie

Hoe werken webhooks?

1
Database Trigger

Een SQL trigger wordt aangemaakt op de geconfigureerde tabel(len)

2
Change Detection

Bij INSERT/UPDATE/DELETE vangt de trigger de wijziging op

3
Dataset Query

De geconfigureerde dataset haalt de relevante data op

4
Webhook Verzending

Data wordt als JSON naar de externe URL verstuurd

5
Logging & Retry

Alles wordt gelogd, bij fouten wordt automatisch opnieuw geprobeerd

6
Response Verwerking

De response van het externe systeem kan worden opgeslagen in de database

Datasets

Datasets vormen de basis van alle integraties. Ze definiëren welke data beschikbaar is voor webhooks en API endpoints. Datasets kunnen gelaagd worden: je kunt datasets bouwen op basis van andere datasets.

Databronnen

Table

Tabellen

Direct data ophalen uit één of meerdere database tabellen

View

Views

Gebruik bestaande database views met complexe joins en logica

Stored Procedure

Stored Procedures

Voer stored procedures uit en gebruik de resultaten

Mogelijkheden

Gelaagde datasets

Bouw complexe datasets door ze te stapelen op andere datasets

Veldnamen aanpassen

Hernoem kolommen voor betere leesbaarheid in de output

Filters toevoegen

Beperk data met WHERE-condities op de dataset

Parameters

Maak datasets dynamisch met input parameters

Relaties

Combineer data uit meerdere tabellen

Berekeningen

Voeg berekende velden toe aan je dataset

Webhooks

Webhooks worden automatisch verstuurd wanneer er data verandert in je database. Je configureert de URL, authenticatie en welke data wordt meegestuurd.

Payload formaat

Webhooks worden verstuurd als HTTP POST met JSON payload:

{ "event": "INSERT", "table": "Orders", "timestamp": "2025-01-15T14:32:00Z", "data": { "id": 12345, "customer_id": 789, "total": 249.99, "status": "new" }, "old_data": null, "trigger_id": "abc-123-def" }

Configuratie opties

Event types

INSERT, UPDATE, DELETE of combinaties

Condities

Alleen triggeren als aan voorwaarden is voldaan

Veld selectie

Bepaal welke kolommen in de payload komen

Custom headers

Voeg eigen HTTP headers toe

OAuth 2.0

Automatisch tokens ophalen en verversen

Retry policy

Configureerbare retry bij fouten

Response verwerking

Sla de response van het externe systeem op in je database

Response mapping

Map response velden naar database kolommen

Authenticatie naar externe API's

Bij het versturen van webhooks naar externe systemen kun je de volgende authenticatie methoden gebruiken:

  • API Key — Statische key in header of query parameter
  • Basic Auth — Username/password in Authorization header
  • OAuth 2.0 Client Credentials — Automatisch tokens ophalen en verversen naar externe API's
  • Custom Header — Eigen authenticatie header toevoegen

API Endpoints

Maak REST API endpoints waarmee externe systemen data kunnen ophalen of schrijven naar je database. Volledige ondersteuning voor alle standaard HTTP methoden.

HTTP Methoden

GET

Data ophalen uit de database

POST

Nieuwe records aanmaken

PATCH

Bestaande records bijwerken

DELETE

Records verwijderen

Voorbeeld GET response

{ "success": true, "data": [ { "id": 1, "name": "Product A", "stock": 150, "price": 29.99 }, { "id": 2, "name": "Product B", "stock": 75, "price": 49.99 } ], "pagination": { "page": 1, "per_page": 20, "total": 2 } }

Configuratie per endpoint

Dataset koppelen

Kies welke dataset de data levert voor dit endpoint

Methoden selecteren

Bepaal welke HTTP methoden (GET/POST/PATCH/DELETE) zijn toegestaan

Query parameters

Filter, sorteer en pagineer via URL parameters

Swagger UI

Interactieve API documentatie automatisch gegenereerd

API Keys

Beveilig endpoints met API key authenticatie

Rate limiting

Bescherm je API tegen overbelasting

Security

Beveiliging staat centraal in de applicatie. Van versleutelde opslag tot role-based access control — alles is ontworpen met security-first.

Inkomend verkeer (API Endpoints)

API Key

API Key authenticatie

Externe systemen authenticeren met API keys. Keys kunnen per endpoint worden beheerd.

Rate limiting

Rate limiting

Bescherm je endpoints tegen overbelasting met configureerbare rate limits.

Uitgaand verkeer (Webhooks)

OAuth 2.0

OAuth 2.0 Client Credentials

Automatisch tokens ophalen en verversen voor authenticatie naar externe API's.

API Key

API Key / Basic Auth

Ondersteuning voor API keys en Basic Auth naar externe systemen.

Custom Header

Custom Headers

Voeg eigen authenticatie headers toe voor specifieke externe systemen.

Algemene beveiliging

Encryption

Versleutelde credentials

Database wachtwoorden en API keys worden versleuteld opgeslagen.

Role-based access

Role-based access control

Gebruikers krijgen rechten per omgeving. Beheerders, operators en viewers hebben elk andere toegang.

Audit logging

Audit logging

Alle acties worden gelogd: wie heeft wat wanneer gewijzigd.

SQL Injection preventie

SQL Injection preventie

Alle database queries gebruiken parameterized queries.

Technische vragen?

Neem contact op voor een technisch gesprek of vraag een demo aan

Demo aanvragen Neem contact op