Zapier
This documentation provides an overview of the available REST API endpoints for integration with residential plannings in Reonic. All endpoints are only accessible by the Zapier platform and require an API key that can be generated in the settings under Settings > Integrations
.
Authentication
All API requests must include a valid API key in the header:
X-Authorization: <API_KEY>
Endpoints
Me
Retrieves information about the authenticated user.
HTTP Request:
- Method:
GET
- Endpoint:
/integrations/zapier/me
- Header:
{
"X-Authorization": "<API_KEY>"
}
- Method:
HTTP Response:
- Status:
200 OK
- Body:
{
"id": "68d5172e-7931-49f1-a5ec-645dda66c420",
"email": "john.doe@reonic.de"
}
- Status:
Create a new Request
Creates a new request in the 360° Household.
HTTP Request:
- Method:
POST
- Endpoint:
/integrations/zapier/h360/requests
- Header:
{
"X-Authorization": "<API_KEY>",
"Content-Type": "application/json"
} - Payload (example):
{
"firstName": "John",
"lastName": "Doe",
"email": "john.doe@reonic.de",
"street": "Alter Postweg",
"streetNumber": "23",
"postcode": "86316",
"city": "Augsburg",
"installationFullAddress": "Torstrasse 19, 10119, Berlin",
"note": "Kunde wünscht schnellen Prozess und Vororttermin."
}
- Method:
HTTP Response:
- Status:
200 OK
- Body:
{
"id": "a36497e7-c87b-45cc-b3dd-cbee54cd382a",
"customer": "dc23bc6a-d36a-4f2e-8eeb-a634338aee52",
"lat": 52.5283489,
"lng": 13.413855,
"leadSource": null,
"requestCreatedAt": "2024-10-17T14:00:05.763Z"
}
- Status:
Convert Request to Offer
Converts an existing request into an offer.
Parameter:
requestId
: ID der zu konvertierenden HTTP Request
HTTP Request:
- Method:
POST
- Endpoint:
/integrations/zapier/h360/requests/{requestId}/convert-to-offer
- Header:
{
"X-Authorization": "<API_KEY>",
"Content-Type": "application/json"
}
- Method:
HTTP Response:
- Status:
200 OK
- Body:
{
"id": "a36497e7-c87b-45cc-b3dd-cbee54cd382a"
}
- Status:
Create a new Offer
Creates a new offer in the 360° Household.
HTTP Request:
- Method:
POST
- Endpoint:
/integrations/zapier/h360/offers
- Header:
{
"X-Authorization": "<API_KEY>",
"Content-Type": "application/json"
} - Payload (example):
{
"firstName": "John",
"lastName": "Doe",
"email": "john.doe@reonic.de",
"phone": "+49123456789",
"street": "Alter Postweg",
"streetNumber": "23",
"postcode": "86316",
"city": "Augsburg",
"installationFullAddress": "Torstrasse 19, 10119, Berlin",
"note": "Kunde wünscht schnellen Prozess und Vororttermin."
}
- Method:
HTTP Response:
- Status:
200 OK
- Body:
{
"id": "8eae3e90-3027-4180-bba6-e9c9088b2a12",
"status": null,
"archived": false,
"customer": "f8f8d1e2-6bd6-421b-ae6d-7376fece622d",
"lat": 52.5283489,
"lng": 13.413855,
"assignedTo": null,
"lostReason": null,
"leadSource": null,
"requestCreatedAt": "2024-10-17T14:15:30.218Z",
"offerCreatedBy": null,
"offerCreatedAt": "2024-10-17T14:15:30.218Z",
"offerLastEditedBy": null
}
- Status:
Create a note on an offer
Creates a new note on an existing offer.
HTTP Request:
- Method:
POST
- Endpoint:
/integrations/zapier/h360/offers/{offerId}/notes
- Header:
{
"X-Authorization": "<API_KEY>",
"Content-Type": "application/json"
} - Payload (example):
{
"offerId": "8eae3e90-3027-4180-bba6-e9c9088b2a12",
"text": "New Note"
}
- Method:
HTTP Response:
- Status:
200 OK
- Body:
{
"offerId": "8eae3e90-3027-4180-bba6-e9c9088b2a12",
"text": "New Note"
}
- Status:
Retrieve one Offer
Retrieves details for a specific offer.
Parameter:
offerId
: ID des Angebots
HTTP Request:
- Method:
GET
- Endpoint:
/integrations/zapier/h360/offers/{offerId}
- Header:
{
"X-Authorization": "<API_KEY>"
}
- Method:
HTTP Response:
- Status:
200 OK
- Body:
{
"id": "8eae3e90-3027-4180-bba6-e9c9088b2a12",
"archived": false,
"customer": {
"id": "f8f8d1e2-6bd6-421b-ae6d-7376fece622d"
},
"lat": 52.5283489,
"lng": 13.413855,
"notes": [
{
"message": "Created using Zapier integration",
"createdAt": "Thu Oct 17 2024 16:15:30 GMT+0200 (Central European Summer Time)",
"createdById": null
},
{
"message": "Kunde wünscht schnellen Prozess und Vororttermin.",
"createdAt": "Thu Oct 17 2024 16:15:30 GMT+0200 (Central European Summer Time)",
"createdById": null
}
],
"demand": {
"annualEnergyDemandWh": 4000000,
"energyPrice": 0.0003,
"energyPriceIncrease": 0.03
},
"options": [
{
"id": "33476a5b-e9a0-409d-a387-5485fc6c449e",
"solarPlanned": {
"totalSizeWp": 0,
"totalNumberOfModules": 0,
"components": []
},
"sesPlanned": {
"components": []
},
"wallboxPlanned": {
"components": []
},
"heatpumpPlanned": {
"components": []
},
"additionalPlanned": {
"components": []
}
}
],
"assignedToId": null,
"lostReason": null,
"solarPackage": {},
"sesPackage": {},
"heatpumpPackage": {},
"wallboxPackage": {},
"requestCreatedAt": "2024-10-17T14:15:30.218Z",
"offerCreatedById": null,
"offerCreatedAt": "2024-10-17T14:15:30.218Z",
"offerLastEditedById": null,
"existingSolar": {
"solarExistingAngle": null,
"solarExistingSize": null,
"solarExistingOrientation": null
},
"currentSignature": null
}
- Status:
Retrieve many Offers
Retrieves a list of all available offers.
HTTP Request:
- Method:
GET
- Endpoint:
/integrations/zapier/h360/offers
- Header:
{
"X-Authorization": "<API_KEY>"
}
- Method:
HTTP Response:
- Status:
200 OK
- Body:
{
"data": [
{
"id": "191bbe42-d92d-4e1b-ba95-06a520474874",
"status": null,
"archived": true,
"customer": "62d5a2bd-024c-4ce1-b00a-f552483982ff",
"lat": 51.15788473067926,
"lng": 6.446965642777741,
"assignedTo": null,
"totalPlannedPrice": 42600,
"lostReason": null,
"leadSource": null,
"offerCreatedBy": "b57cd76d-a15b-4f50-bd08-d615c5427a8a",
"offerCreatedAt": "2024-10-17T09:27:31.303Z",
"offerLastEditedBy": "b57cd76d-a15b-4f50-bd08-d615c5427a8a",
"offerLastEditedAt": "2024-10-17T09:32:05.742Z"
},
{
"id": "6b513059-44bb-4174-b4bd-6f995555f39e",
"status": null,
"archived": true,
"customer": "49d7c9f3-dfea-4ce2-ad0e-183d44d66472",
"lat": 51.15788473067926,
"lng": 6.446965642777741,
"assignedTo": null,
"totalPlannedPrice": 42600,
"lostReason": null,
"leadSource": null,
"offerCreatedBy": "b57cd76d-a15b-4f50-bd08-d615c5427a8a",
"offerCreatedAt": "2024-10-15T12:25:19.197Z",
"offerLastEditedBy": "b57cd76d-a15b-4f50-bd08-d615c5427a8a",
"offerLastEditedAt": "2024-10-17T09:27:29.543Z"
}
],
"hasMore": null
}
- Status:
Subscribe to Signed Offer Webhook
Subscribes to the webhook for signed offers.
HTTP Request:
- Method:
POST
- Endpoint:
/integrations/zapier/webhooks/offer-signed/subscribe
- Header:
{
"X-Authorization": "<API_KEY>",
"Content-Type": "application/json"
} - Payload (example):
{
"hookUrl": "https://example.com/webhook"
}
- Method:
HTTP Response:
- Status:
200 OK
- Body:
{}
- Status:
Unsubscribe from Signed Offer Webhook
Unsubscribes from the webhook for signed offers.
HTTP Request:
- Method:
POST
- Endpoint:
/integrations/zapier/webhooks/offer-signed/unsubscribe
- Header:
{
"X-Authorization": "<API_KEY>",
"Content-Type": "application/json"
} - Payload (example):
{
"hookUrl": "https://example.com/webhook"
}
- Method:
HTTP Response:
- Status:
200 OK
- Body:
{}
- Status:
Subscribe to Request Created Webhook
Subscribes to the webhook for new requests.
HTTP Request:
- Method:
POST
- Endpoint:
/integrations/zapier/webhooks/request-created/subscribe
- Header:
{
"X-Authorization": "<API_KEY>",
"Content-Type": "application/json"
} - Payload (example):
{
"hookUrl": "https://example.com/webhook"
}
- Method:
HTTP Response:
- Status:
200 OK
- Body:
{}
- Status:
Unsubscribe from Request Created Webhook
Unsubscribes from the webhook for new requests.
HTTP Request:
- Method:
POST
- Endpoint:
/integrations/zapier/webhooks/offer-signed/unsubscribe
- Header:
{
"X-Authorization": "<API_KEY>",
"Content-Type": "application/json"
} - Payload (example):
{
"hookUrl": "https://example.com/webhook"
}
- Method:
HTTP Response:
- Status:
200 OK
- Body:
{}
- Status:
Subscribe to Offer Created Webhook
Subscribes to the webhook for new offers.
HTTP Request:
- Method:
POST
- Endpoint:
/integrations/zapier/webhooks/offer-created/subscribe
- Header:
{
"X-Authorization": "<API_KEY>",
"Content-Type": "application/json"
} - Payload (example):
{
"hookUrl": "https://example.com/webhook"
}
- Method:
HTTP Response:
- Status:
200 OK
- Body:
{}
- Status:
Unsubscribe from Offer Created Webhook
Unsubscribes from the webhook for new offers.
HTTP Request:
- Method:
POST
- Endpoint:
/integrations/zapier/webhooks/offer-created/unsubscribe
- Header:
{
"X-Authorization": "<API_KEY>",
"Content-Type": "application/json"
} - Payload (example):
{
"hookUrl": "https://example.com/webhook"
}
- Method:
HTTP Response:
- Status:
200 OK
- Body:
{}
- Status: