Skip to content
Navigation

Merged 3D model of every building in a square around a point (async job, emailed)

Proxy for the Contoor 3D API (project_res_3D_api, FastAPI, systemd unit contoor-3d-api on the RES box, published at contoor-api-contabo.gisjoe.com). RES adds the RES token, the request allowlist and RES-hosted artifact URLs so one contract and one credential cover parcels and meshes.

Expands lat/lng ± radius_m into a square in LV95, fetches every cadastral footprint inside it, runs the roofer once for the combined area and packages one merged model.obj / model.glb / model.city.json / model.dxf plus manifest.json into a ZIP. Delivery is asynchronous: the ZIP link is e-mailed to email AND exposed on GET /res_api/3d/jobs/{jobId} as downloadUrl once state is done. Typical runtime: 1–10 minutes depending on the number of buildings.

POST
https://res.aireon.ch/res_api/3d/building_model/area

Authorization

  • ResApiToken
    API key in header
    required

Request body JSON required

  • lat
    number
    required

    WGS84 latitude (inside Switzerland).

  • lng
    number
    required

    WGS84 longitude (inside Switzerland).

  • email
    string
    required
    format: email
  • radius_m
    optional
    number

    Half-width of the square in metres (75 → 150 m × 150 m).

    maximum: 500 · minimum: 1 · default: 75
  • formats
    optional
    array of
    cityjson
    or
    obj
    or
    glb
    or
    dxf

    Requested output formats.

    default: ["obj","glb"]

Returns

202

Job queued.

JSON
  • jobId
    string
    required
    format: uuid
  • state
    string
    required
  • statusUrl
    string
    required

    RES path to poll.

  • message
    optional
    string
  • email
    optional
    string
  • radius_m
    optional
    number
  • formats
    optional
    array of
    cityjson
    or
    obj
    or
    glb
    or
    dxf

    Requested output formats.

    default: ["obj","glb"]

400

Invalid request.
JSON
  • error
    string
    required

    Human-readable error description.

  • message
    optional
    string

    Optional underlying error message.

401

Authentication missing or invalid.
JSON
  • error
    string
    required

    Human-readable error description.

  • message
    optional
    string

    Optional underlying error message.

403

Authenticated but not permitted.
JSON
  • error
    string
    required

    Human-readable error description.

  • message
    optional
    string

    Optional underlying error message.

502

The 3D service is unreachable or answered with an error (its status and body are relayed in upstream_status / upstream).
JSON
  • error
    optional
    string
  • upstream_status
    optional
    integer
  • upstream
    optional
    unknown
  • detail
    optional
    string

504

The 3D service did not answer within the proxy timeout.
JSON
  • error
    optional
    string
  • detail
    optional
    string

Type to search…

↑↓ navigate↵ selectEsc close