Skip to content

Getting started

From credentials to a working call: about 10 minutes.

What we send you

Two things for your service account:

Item Example What it's for
Client ID acme-consumer Identifies your integration
Client Secret xK9...random Issues access tokens

Production credentials

Don't commit them. Put them in a secret manager or at least env variables.

Key endpoints

Service URL
API base https://api.insurancegateway.gr
Keycloak https://auth.insurancegateway.gr
Realm estia
Token endpoint https://auth.insurancegateway.gr/realms/estia/protocol/openid-connect/token
Health check https://api.insurancegateway.gr/health/ready

First call

1. Get an access token

curl -X POST "https://auth.insurancegateway.gr/realms/estia/protocol/openid-connect/token" \
  -H "Content-Type: application/x-www-form-urlencoded" \
  -d "grant_type=client_credentials" \
  -d "client_id=<your-client-id>" \
  -d "client_secret=<your-client-secret>"

Response:

{
  "access_token": "eyJhbGciOiJSUzI1NiIs...",
  "expires_in": 3600,
  "token_type": "Bearer"
}

2. Call an endpoint

TOKEN="eyJhbGciOiJSUzI1NiIs..."

curl -X GET "https://api.insurancegateway.gr/intersalonica/auto/brands" \
  -H "Authorization: Bearer $TOKEN"

3. Health check (no auth)

curl https://api.insurancegateway.gr/health/ready
# -> 200 OK, "Healthy"

Next steps

Cache the token

Don't request a new token on every call. Cache it, refresh just before expiry.