> For the complete documentation index, see [llms.txt](https://docs.altum.ai/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.altum.ai/verduurzamen/satelliet-dakscan-api/authentication-input-and-response.md).

# Authenticatie, invoer en resultaat

### **Authenticatie, invoer en reactie**

Beoordeel het volledige potentieel van de **Satelliet Dakscan API** door de belangrijkste parameters en het antwoord te begrijpen.

<mark style="color:green;">`POST`</mark> `https://api.altum.ai/satellite-roof-scan`

\
Het endpoint stelt u in staat om te communiceren met de **Satelliet Dakscan API** door specifieke queries te verzenden, zoals postcodes, om gedetailleerde vastgoedgegevens op te halen. Het volledige endpoint vindt u hierboven.

**Queryparameters**

| Parameter       | Type      | Beschrijving                                                                                                                                                                                    |
| --------------- | --------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `postcode`      | `string`  | postcode in zeskarakterformaat, bijvoorbeeld 1234AB                                                                                                                                             |
| `huisnummer`    | `string`  | huisnummer van het object, bijvoorbeeld 1                                                                                                                                                       |
| `huisletter`    | `string`  | toevoeging aan het huisnummer, bijvoorbeeld A                                                                                                                                                   |
| `roof_geometry` | `boolean` | Toont de polygoonvorm van het geselecteerde dak; indien false wordt de geometrie overgeslagen en wordt alleen beeldgebaseerde detectie uitgevoerd.                                              |
| `image_source`  | `string`  | Geeft aan waar de beelddata vandaan komt (auto, **pdok**, **esri**, **google\_maps**).                                                                                                          |
| `show_image`    | `bool`    | Indien deze optie op **false** staat, wordt het tekenen van de geannoteerde afbeelding overgeslagen. Gebruik dit om tijd te besparen wanneer alleen het aantal gedetecteerde objecten nodig is. |

{% hint style="info" %}
**Opmerking:**

* De huisletter is een **optioneel veld**; je kunt dit leeg laten (""). Anders zijn alle velden verplicht.
* Sommige dakgeometrieën zijn niet altijd beschikbaar.
* Google Maps-services zijn tijdelijk uitgeschakeld.
* Je kunt de afbeeldingsbron wisselen tussen **pdok**, **esri** of **auto** (standaard).
  {% endhint %}

### **Headers**

| Header       | Type     | Beschrijving                                                                                              |
| ------------ | -------- | --------------------------------------------------------------------------------------------------------- |
| Content-Type | `string` | application/json                                                                                          |
| x-api-key\*  | `string` | Unieke API-sleutel van Altum. Verkrijgbaar op [https://platform.altum.ai](https://platform.altum.ai/auth) |

### **Request body**

Een geldig `POST-verzoek` ziet er bijvoorbeeld zo uit:

```json
{
  "postcode": "4624AD",
  "housenumber": "4",
  "huisletter": "",
  "roof_geometry": true,
  "image_source": "auto",
  "show_image": true
}
```

### **Response**

Bij een succesvolle POST-aanvraag retourneert de API een **200 OK-status** met een JSON-object dat de resultaten bevat.

**Voorbeeld van volledige output**

<table data-search="false"><thead><tr><th>Veld</th><th>Type</th><th>Beschrijving</th></tr></thead><tbody><tr><td><code>postcode</code></td><td><code>string</code></td><td>postcode in zeskarakterformaat, bijvoorbeeld 1234AB</td></tr><tr><td><code>huisnummer</code></td><td><code>string</code></td><td>huisnummer van het object, bijvoorbeeld 1</td></tr><tr><td><code>huisletter</code></td><td><code>string</code></td><td>toevoeging aan het huisnummer, bijvoorbeeld A</td></tr><tr><td><code>imagery_source</code></td><td><code>string</code></td><td>Bron van de gebruikte luchtfoto.</td></tr><tr><td><code>annotated_image_url</code></td><td><code>string</code></td><td>Een openbare URL naar de afbeelding waarop de gedetecteerde zonnepanelen zijn weergegeven.</td></tr><tr><td><code>imagery_date</code></td><td><code>date</code></td><td>Datum waarop de luchtfoto is gemaakt.</td></tr><tr><td><code>num_panels_detected</code></td><td><code>integer</code></td><td>Het totale aantal gedetecteerde zonnepanelen (of andere objecten).</td></tr><tr><td><code>estimation_method</code></td><td><code>string</code></td><td><code>"detected"</code>, <code>"detected_unmasked"</code>, or <code>"estimated"</code></td></tr><tr><td><code>error_margin</code></td><td><code>int | null</code></td><td><code>±</code> panels of uncertainty around <code>num_panels_detected</code></td></tr><tr><td><code>detections</code></td><td><code>array</code></td><td>Een array van JSON-objecten, waarbij elk object een gedetecteerd zonnepaneel beschrijft, inclusief label, betrouwbaarheids-score en bounding box-coördinaten.</td></tr></tbody></table>

**Voorbeeld van volledige output**

```json
{
	"postcode": "4624AD",
	"housenumber": "4",
	"huisletter": "",
	"houseaddress": "4624AD-4-",
	"imagery_source": "PDOK Aerial RGB (Open), Current Ortho 25cm RGB",
	"annotated_image_url": "https://altum-gis.s3.eu-west-1.amazonaws.com/solar_panels/4624AD-4-_beb82c36.png",
	"imagery_date": "2026",
	"num_panels_detected": 11,
	"estimation_method": "estimated",
	"error_margin": 2,
	"detections": [
		{
			"label": "solar_array_region",
			"confidence": 0.84,
			"bbox": {
				"x1": 340,
				"y1": 615,
				"x2": 528,
				"y2": 691,
				"width": 188,
				"height": 76
			}
		}
	]
}
```

<figure><img src="/files/F25vv7dGWFVUUmOYxQMH" alt="" width="375"><figcaption></figcaption></figure>

{% tabs %}
{% tab title="200: OK Standard response" %}

```
{
	"postcode": "4624AD",
	"housenumber": "4",
	"huisletter": "",
	"houseaddress": "4624AD-4-",
	"imagery_source": "PDOK Aerial RGB (Open), Current Ortho 25cm RGB",
	"annotated_image_url": "https://altum-gis.s3.eu-west-1.amazonaws.com/solar_panels/4624AD-4-_beb82c36.png",
	"imagery_date": "2026",
	"num_panels_detected": 11,
	"estimation_method": "estimated",
	"error_margin": 2,
	"detections": [
		{
			"label": "solar_array_region",
			"confidence": 0.84,
			"bbox": {
				"x1": 340,
				"y1": 615,
				"x2": 528,
				"y2": 691,
				"width": 188,
				"height": 76
			}
		}
	]
}
```

{% endtab %}

{% tab title="400: Bad Request Unsuccessful response" %}
`postcode` or `housenumber` missing/empty.
{% endtab %}

{% tab title="404 Not Found" %}
Er kon geen satellietbeeld worden opgehaald voor het gevonden adres (alle bronnen in de fallback-keten zijn mislukt).
{% endtab %}

{% tab title="500: Internal Server Error Service is not available and/or down" %}
Databaseverbinding niet tot stand gebracht, of de geannoteerde afbeelding kon niet naar S3 worden geüpload.
{% endtab %}
{% endtabs %}


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://docs.altum.ai/verduurzamen/satelliet-dakscan-api/authentication-input-and-response.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
