---
title: "Obras da construtora"
method: GET
path: "/builders/{id}/projects"
tags: ["Construtoras"]
---

# Obras da construtora

`GET /builders/{id}/projects`

## Request

- Base URL: `https://obraaberta.com.br/api/v1`
- URL: `https://obraaberta.com.br/api/v1/builders/{id}/projects`
- Auth: none declared

Obras da construtora

## Path parameters

- `id` string, required

## Query parameters

- `status` string
- `page` integer
- `limit` integer

## Response `200`

OK

- ListaObras
  - `data` Obra[]
    - `id` string, uuid
    - `slug` string
    - `name` string
    - `description` string, nullable
    - `address` string, nullable
    - `neighborhood` string, nullable
    - `city` string
    - `state` string
    - `cep` string, nullable
    - `phone` string, nullable
    - `geolocation` object, nullable
      - `latitude` number
      - `longitude` number
    - `status` 'lancamento' | 'em_construcao' | 'paralisada' | 'entregue'
    - `completion_percentage` number
    - `total_units` integer
    - `available_units` integer, nullable
    - `price_from` number, nullable
    - `price_to` number, nullable
    - `price_per_m2` number, nullable
    - `total_area` number, nullable
    - `bedrooms` integer, nullable
    - `bathrooms` integer, nullable
    - `parking_spaces` integer, nullable
    - `amenities` string[]
    - `cover_url` string, nullable
    - `floor_plans` object[]
    - `constructor` object
      - `id` string
      - `name` string, nullable
    - `launch_date` string, date, nullable
    - `completion_date` string, date, nullable
    - `status_observed` boolean: false quando a origem grava o status como constante, sem observar a obra (coleta automática). Nesse caso `status` não sustenta atraso nem entrega.
    - `data_sources` string[]
    - `data_quality_score` number, nullable: 0 a 1 — completude dos dados.
    - `last_enriched_at` string, date-time, nullable
    - `last_updated_at` string, date-time
    - `created_at` string, date-time
    - `url` string: URL canônica pública da obra.
  - `pagination` Paginacao
    - `page` integer
    - `limit` integer
    - `total` integer
    - `pages` integer

## Other responses

- `400`: Parâmetro inválido
- `404`: Não encontrado
- `429`: Limite de requisições excedido
- `500`: Erro interno

---

[API](https://skmtc.dev/obraaberta/apis/obraaberta-api.md) · [All operations](https://skmtc.dev/obraaberta/apis/obraaberta-api/llms.txt) · [OpenAPI document](https://skmtc.dev/obraaberta/apis/obraaberta-api/revisions/cfaed100c33c?raw)
