SES credentials
Named sets of SES Hospedajes web-service credentials, one per lessor.
Why several sets
One account can manage properties belonging to different lessors, each with their own lessor code and SES Hospedajes web-service username. Each set is created once and assigned by id to as many properties as belong to that lessor (sesCredentialId in /properties). A property with none assigned uses the one marked isDefault for the tenant.
Always against production — there is no per-tenant test environment on the public API. Check the lessor code and the username before creating the set.
The credential object
{
"id": "c4d9b7a3-…",
"name": "Gestora Costa SL",
"isDefault": true,
"codigoArrendador": "A12345",
"usuario": "gestora_costa",
"aplicacion": "kinapi",
"tipoPago": "PLATF",
"hasPassword": true,
"createdAt": "2026-07-01T09:00:00.000Z",
"updatedAt": "2026-07-19T10:00:00.000Z"
}The password is never returned in any response, only whether one is stored (hasPassword).
| Field | Type | Description |
|---|---|---|
EFECT | code | Cash. |
TARJT | code | Card. |
PLATF | code | Payment platform (Booking, Airbnb…). |
TRANS | code | Bank transfer. |
MOVIL | code | Mobile payment. |
DESTI | code | Payment on arrival. |
TREG | code | Gift card. |
OTRO | code | Other. |
List credentials
/ses-credentialscurl https://api.kinapi.es/api/v1/ses-credentials \ -H "ocp-apim-subscription-key: YOUR_API_KEY"
Create credentials
/ses-credentials| Field | Type | Description |
|---|---|---|
namerequired | string | Name of the set (typically the lessor it belongs to). |
isDefault | boolean | Mark it as the tenant default. |
codigoArrendadorrequired | string | Lessor code assigned by the Ministry. |
usuariorequired | string | SES Hospedajes web-service username. |
aplicacionrequired | string | Identifies the software to SES on every call — normally the same for every lessor on the account. |
tipoPagorequired | string | Code from the SES TIPO_PAGO table (see the table above). How this lessor collects payment by default. |
contrasenarequired | string | Web-service password. It is never returned in any response. |
curl -X POST https://api.kinapi.es/api/v1/ses-credentials \
-H "ocp-apim-subscription-key: YOUR_API_KEY" \
-H "content-type: application/json" \
-d '{
"name": "Gestora Costa SL",
"codigoArrendador": "A12345",
"usuario": "gestora_costa",
"aplicacion": "kinapi",
"tipoPago": "PLATF",
"contrasena": "…"
}'Read credentials
/ses-credentials/{id}Update credentials
/ses-credentials/{id}Partial update: only the fields you send change. Omit contrasena to keep the stored one.
curl -X PATCH https://api.kinapi.es/api/v1/ses-credentials/c4d9b7a3-… \
-H "ocp-apim-subscription-key: YOUR_API_KEY" \
-H "content-type: application/json" \
-d '{ "contrasena": "…new…" }'Delete credentials
/ses-credentials/{id}Properties that had it assigned fall back to the tenant default — if none is left, their reports will not be sendable until another one is assigned.
Test the credentials
/ses-credentials/{id}/testFires a real call to SES with these credentials and tells you whether they get in. It covers username, password, endpoint and TLS in one go — worth running when you onboard a customer, so you do not discover the problem on the first night reports are due.