---
title: "Request a 3D building model (async, delivered by email)"
description: "Queues generation of a 3D building model. The model link is emailed to `target_email` asynchronously; the HTTP response only confirms the request was received."
---

> Documentation Index
> Fetch the complete documentation index at: https://docs.aireon.ch/llms.txt
> Use this file to discover all available pages before exploring further.

Path: RES API (public) › Parcel

`POST /res_api/buildingModel`

Queues generation of a 3D building model. The model link is emailed to `target_email` asynchronously; the HTTP response only confirms the request was received.

## Authentication

- `ResApiToken`, apiKey, in header, header `token`

## Request body

_Required._

- `target_email` (`requestBuildingModel.target_email`; string, required): Address the 3D model link is sent to.
  - format `email`
- `x_2056` (`requestBuildingModel.x_2056`; number, required): LV95 (EPSG:2056) X coordinate.
- `y_2056` (`requestBuildingModel.y_2056`; number, required): LV95 (EPSG:2056) Y coordinate.
- `parcel_id` (`requestBuildingModel.parcel_id`; string, required): Parcel EGRID.

## Example request

```json
{
  "target_email": "user@example.com",
  "x_2056": 0,
  "y_2056": 0,
  "parcel_id": "string"
}
```

## Code samples

### cURL

```bash
curl --request POST \
  --url https://res.aireon.ch/res_api/buildingModel \
  --header 'Content-Type: application/json' \
  --header 'token: <token>' \
  --data '
{
  "target_email": "user@example.com",
  "x_2056": 0,
  "y_2056": 0,
  "parcel_id": "string"
}
'
```

### TypeScript

```typescript
const url = 'https://res.aireon.ch/res_api/buildingModel';
const options = {
  method: 'POST',
  headers: {'Content-Type': 'application/json', token: '<token>'},
  body: JSON.stringify({target_email: 'user@example.com', x_2056: 0, y_2056: 0, parcel_id: 'string'})
};

fetch(url, options)
  .then(res => res.json())
  .then(json => console.log(json))
  .catch(err => console.error(err));
```

### Python

```python
import requests

url = "https://res.aireon.ch/res_api/buildingModel"

payload = {
    "target_email": "user@example.com",
    "x_2056": 0,
    "y_2056": 0,
    "parcel_id": "string"
}
headers = {
    "Content-Type": "application/json",
    "token": "<token>"
}

response = requests.post(url, json=payload, headers=headers)

print(response.text)
```

## Responses

### 200

Request acknowledged, or a plain-text error body.

#### Example

```text
Request recieved. The 3D building link will be sent to user@example.com.
```

### 401

Authentication missing or invalid.

#### Example

```json
{
  "error": "string",
  "message": "string"
}
```

- `error` (`requestBuildingModel.response.401.error`; string, required): Human-readable error description.
- `message` (`requestBuildingModel.response.401.message`; string, optional): Optional underlying error message.


Source: https://docs.aireon.ch/res/request-building-model/index.md
