Skip to main content

Sistema de Gestión de Propiedades

A serverless REST API for real estate property management built for Inmobiliaria Bonpland Propiedades. Designed for high availability and low latency using modern edge computing infrastructure.

Overview

This API provides comprehensive property management capabilities including creation, updates, queries, and deletion of real estate listings. Built with Hono framework and deployed on Cloudflare Workers, it offers:
  • Serverless Architecture - Runs on Cloudflare’s global edge network for low latency
  • Type Safety - Zod schema validation ensures data integrity at runtime
  • OpenAPI Documentation - Interactive Swagger UI for API exploration
  • Secure Authentication - HTTP Basic Auth for administrative operations
  • CORS Enabled - Ready for frontend integration

Key Features

RESTful API

Complete CRUD operations for property management

OpenAPI Docs

Interactive Swagger UI for testing endpoints

Auto ID Generation

Automatic unique 6-character alphanumeric IDs

Type Validation

Runtime validation with Zod schemas

Basic Auth

Secure admin operations with HTTP Basic Auth

Cloudflare D1

SQLite database on Cloudflare’s edge

Technology Stack

ComponentTechnology
RuntimeCloudflare Workers (Edge Computing)
FrameworkHono v4+ (with native OpenAPI/Swagger support)
DatabaseCloudflare D1 (Relational SQL)
ValidationZod (runtime type integrity)

API Endpoints

The API is available at: https://idforideas-1.jamrdev.com.ar Public Endpoints (no authentication required):
  • GET /api/propiedades - List all properties
  • GET /api/propiedades/{id} - Get a specific property
  • GET /doc - OpenAPI JSON specification
  • GET /ui - Swagger UI interface
Admin Endpoints (Basic Auth required):
  • POST /api/propiedades - Create a new property
  • PATCH /api/propiedades/{id} - Update a property
  • DELETE /api/propiedades/{id} - Delete a property
  • GET /api/auth/verify - Verify admin credentials

Property Management

Properties have the following attributes:
  • codigo_id - Unique 6-character identifier (auto-generated if not provided)
  • Location - Country, city, and address
  • Details - Rooms, square meters, price
  • Type - Rental (Alquiler) or Sale (Venta)
  • Status - Available, Reserved, Rented, or Sold
  • Description - Optional property description
The codigo_id is immutable once created. Any attempt to modify it will result in a 400 Bad Request error.

Quickstart

Get started with your first API call

API Reference

Explore all available endpoints

Deploy Guide

Deploy your own instance

Integration Example

const fetchPropiedades = async () => {
  try {
    const response = await fetch(
      'https://idforideas-1.jamrdev.com.ar/api/propiedades'
    );

    if (!response.ok) {
      throw new Error(`HTTP error! Status: ${response.status}`);
    }

    const data = await response.json();
    return data;

  } catch (error) {
    console.error("Error loading properties:", error);
  }
};

Next Steps

1

Read the Quickstart

Learn how to make your first API calls in the Quickstart guide
2

Explore the API

Browse the complete API Reference documentation
3

Set up Authentication

Configure Basic Auth for admin operations
4

Deploy Your Own

Follow the Deployment guide to set up your instance

Build docs developers (and LLMs) love