Crear propiedad

POSThttps://api.bydomu.com/v1/properties

This reference is generated from the API’s code, so descriptions are in Spanish. Names, parameters and examples are the same in every language.

Crea una propiedad en el inventario del CRM (nace en DRAFT si no se indica status). Exige lo del paso 1 del asistente (title, type, transactionType); el resto es opcional. Respeta el tope de propiedades del plan (403 PLAN_LIMIT_REACHED). El agente por defecto es quien creó la API key.

Permission
properties:write
Keys
Secret only (server-side)

Headers

X-API-Keystringrequired
Your secret key.
Idempotency-Keystring
Clave única de la operación (8-128 caracteres de [a-zA-Z0-9._:-]). Un reintento con la misma clave y el mismo cuerpo devuelve la respuesta original sin repetir la operación. Vive 24 horas. · 8–128 chars

Body (JSON)

titlestringrequired
5–200 chars
typestringrequired
APARTMENTHOUSEOFFICECOMMERCIALLANDWAREHOUSEROOMFARMOTHER
transactionTypestringrequired
SALERENTSALE_OR_RENT
rentalServiceTypestring
BROKERAGEMANAGEMENT · nullable
addressstring
≤ 300 chars
neighborhoodstring
≤ 100 chars
citystring
2–100 chars
statestring
≤ 100 chars
countrystring
default="CO"
zipCodestring
≤ 20 chars
latitudenumber
-90–90 · nullable
longitudenumber
-180–180 · nullable
locationPrecisionstring
EXACTAPPROXIMATE
pricenumber
≥ 0
currencystring
COPUSDEURMXNBRLARSBOBCADCLPCRCCUPDOPGBPGTQHNLNIOPENPYGUYUVES · default="COP"
rentPricenumber
≥ 0 · nullable
adminFeenumber
≥ 0 · nullable
securityDepositnumber
≥ 0 · nullable
bedroomsinteger
≥ 0 · nullable
bathroomsinteger
≥ 0 · nullable
halfBathroomsinteger
≥ 0 · nullable
totalRoomsinteger
≥ 0 · nullable
closetsinteger
≥ 0 · nullable
parkingSpotsinteger
≥ 0 · nullable
areanumber
≥ 0 · nullable
builtAreanumber
≥ 0 · nullable
floorinteger
nullable
totalFloorsinteger
≥ 0 · nullable
yearBuiltinteger
1900–2035 · nullable
stratuminteger
1–6 · nullable
elevatorboolean
furnishedstring
UNFURNISHEDSEMI_FURNISHEDFURNISHED · nullable
orientationstring
NORTHSOUTHEASTWESTNORTHEASTNORTHWESTSOUTHEASTSOUTHWEST · nullable
petFriendlyboolean
garageTypestring
NONECOVEREDUNCOVEREDDOUBLEUNDERGROUND · nullable
heatingTypestring
NONECENTRALELECTRICGASRADIANT · nullable
waterHeaterboolean
gasConnectionboolean
viewTypestring
NONECITYMOUNTAINSEAGARDENPOOLINTERIORPANORAMIC · nullable
securityLevelstring
NONEBASICMEDIUMHIGHGATED_COMMUNITY · nullable
propertyConditionstring
NEWEXCELLENTGOODFAIRNEEDS_RENOVATIONUNDER_CONSTRUCTIONPRE_SALE · nullable
legalStatusstring
CLEARMORTGAGELIENIN_PROCESSINHERITANCE · nullable
amenitiesstring[]
customFieldsobject
descriptionstring
≤ 5000 chars
virtualTourUrlstring | string
tour3dUrlstring | string
videoUrlstring | string
internalNotesstring
≤ 2000 chars
statusstring
DRAFTACTIVERESERVEDSOLDRENTEDINACTIVE · default="DRAFT"
agentIdstring
contactOwnerIdstring
nullable
isFeaturedboolean
imagesobject[]

Responses

201Propiedad creada
400Datos inválidos: el cuerpo o la query no cumplen el esquema, o `Idempotency-Key` está mal formada.
401UNAUTHORIZED · Clave faltante, inválida, desactivada o vencida.
402PAYMENT_REQUIRED · Cuenta en modo solo lectura: se rechaza toda mutación.
403FORBIDDEN · La clave no puede usar esta operación: falta el scope, es una secreta en el navegador, el nivel de la cuenta no la permite, está suspendida o se alcanzó un tope del plan.
409DUPLICATE · Choca con un dato existente o con el estado actual, o la `Idempotency-Key` ya se usó con otro cuerpo o sigue en curso.
429RATE_LIMITED · Límite de peticiones excedido: el de la clave (`RATE_LIMITED`), el de escrituras de la organización (`TENANT_RATE_LIMITED`) o bloqueo temporal de la IP por claves inválidas.
500INTERNAL_ERROR · Error interno del servidor.
cURL
curl -X POST "https://api.bydomu.com/v1/properties" \
  -H "X-API-Key: $BYDOMU_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
  "title": "Apartamento en Chapinero con vista",
  "type": "APARTMENT",
  "transactionType": "SALE",
  "price": 450000000,
  "currency": "COP",
  "city": "Bogotá",
  "neighborhood": "Chapinero",
  "bedrooms": 3,
  "bathrooms": 2,
  "area": 85,
  "status": "ACTIVE",
  "images": [
    {
      "url": "https://cdn.bydomu.com/props/clx1prop001/1.jpg",
      "order": 0,
      "isPrimary": true
    }
  ]
}'
JavaScript
const res = await fetch("https://api.bydomu.com/v1/properties", {
  method: "POST",
  headers: {
    "X-API-Key": process.env.BYDOMU_API_KEY,
    "Content-Type": "application/json",
  },
  body: JSON.stringify({
    "title": "Apartamento en Chapinero con vista",
    "type": "APARTMENT",
    "transactionType": "SALE",
    "price": 450000000,
    "currency": "COP",
    "city": "Bogotá",
    "neighborhood": "Chapinero",
    "bedrooms": 3,
    "bathrooms": 2,
    "area": 85,
    "status": "ACTIVE",
    "images": [
      {
        "url": "https://cdn.bydomu.com/props/clx1prop001/1.jpg",
        "order": 0,
        "isPrimary": true
      }
    ]
  }),
});
const data = await res.json();
Python
import os, requests

r = requests.post(
    "https://api.bydomu.com/v1/properties",
    headers={"X-API-Key": os.environ["BYDOMU_API_KEY"]},
    json={
        "title": "Apartamento en Chapinero con vista",
        "type": "APARTMENT",
        "transactionType": "SALE",
        "price": 450000000,
        "currency": "COP",
        "city": "Bogotá",
        "neighborhood": "Chapinero",
        "bedrooms": 3,
        "bathrooms": 2,
        "area": 85,
        "status": "ACTIVE",
        "images": [
            {
                "url": "https://cdn.bydomu.com/props/clx1prop001/1.jpg",
                "order": 0,
                "isPrimary": True
            }
        ]
    }
)
data = r.json()
Response · 201 · example
{
  "data": {
    "id": "clx1prop001",
    "code": "P-0042",
    "title": "Apartamento en Chapinero con vista",
    "description": "Apartamento de 85 m² con balcón y vista a los cerros.",
    "type": "APARTMENT",
    "transactionType": "SALE",
    "rentalServiceType": "BROKERAGE",
    "status": "DRAFT",
    "price": "450000000.00",
    "rentPrice": "3500000.00",
    "currency": "COP",
    "adminFee": "380000.00",
    "securityDeposit": "3500000.00",
    "neighborhood": "Chapinero",
    "city": "Bogotá",
    "state": "Cundinamarca",
    "country": "CO",
    "bedrooms": 3,
    "bathrooms": 2,
    "halfBathrooms": 1,
    "parkingSpots": 1,
    "area": 85,
    "builtArea": 80,
    "floor": 8,
    "stratum": 4,
    "yearBuilt": 2015,
    "elevator": true,
    "petFriendly": true,
    "furnished": "UNFURNISHED",
    "amenities": [
      "pool"
    ],
    "virtualTourUrl": "https://my.matterport.com/show/?m=abc123",
    "videoUrl": "https://youtu.be/abc123",
    "tour3dUrl": "https://cdn.bydomu.com/tours/clx1prop001/model.splat",
    "isFeatured": false,
    "viewCount": 128,
    "agentId": "clx1usr001",
    "createdAt": "2026-08-01T14:30:00.000Z",
    "updatedAt": "2026-09-20T10:00:00.000Z",
    "address": "Cra 7 #45-12",
    "latitude": 4.648625,
  …

The key goes in the BYDOMU_API_KEY variable. The example data belongs to no agency.