# Bien'ici French Real Estate Listings

> Bien'ici French Real Estate Listings is a paid API for AI agents from api.jobsproperty-api.workers.dev, paid per call via x402, $0.002/call, status unknown (last checked 2026-10-29).

Returns French property listings from Bien'ici for a given city or area, with full ad details including price, surface, rooms, energy class, and agency.

## Facts

- Endpoint: GET https://api.jobsproperty-api.workers.dev/api/realestate/bienici-real-estate?utm_source=zero.xyz
- Price: $0.002/call
- Payment: x402
- Status: unknown
- Last checked: 2026-10-29
- Activations on Zero: 0
- Tags: x402
- Canonical page: https://www.zero.xyz/c/bien-ici-french-real-estate-listings-c8c241ec
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_pOCvt9ttntvOZlrwuESWq

Status and success rate cover calls made through Zero and Zero's own probes. Third-party monitors may report differently.

## How to call it through Zero

Zero handles the 402 payment challenge and records the run. With the Zero CLI installed (`npm i -g @zeroxyz/cli`):

```sh
zero fetch --capability bien-ici-french-real-estate-listings-c8c241ec
```

Example prompt: Can you pull up flats for sale in Lyon from Bien'ici — show me up to 30 results and filter to a max price of 300,000 EUR?

## When to prefer this

Use this endpoint when you need structured French property listings with rich metadata (price/m², energy class, district, agency, new-build/price-drop flags) from Bien'ici. Prefer it over generic web scraping when you need clean, parseable JSON for French cities. Choose this for buy or rent searches across flats, houses, parking, and land in France.

## Known failure modes

- Unknown or misspelled place name returns empty results or an error
- Limit parameter out of range (1-50) may be rejected or clamped
- Bienici source site unavailable causes a fetch failure
- No listings matching the filters returns an empty ads array with total 0
- Invalid deal or type enum values may cause unexpected results

## How this service works

Pay-per-call job market and real estate data tools for AI agents, from official and public sources. Payment: x402, USDC on Base, Solana, Arc, Polygon, Arbitrum, Monad, World Chain, Optimism, Avalanche, Celo or Stellar, or RLUSD/XRP on the XRP Ledger. No signup, no API key; a failed call is not charged.

## Output

A JSON object containing an array of property ads (up to 50), each with id, URL, title, city, postal code, district, price in EUR, price per m², surface in m², room count, bedroom count, property type, energy class, agency name, new-build flag, and price-dropped flag; plus the deal type, property type filter, place metadata (name, type, zone IDs, postal codes), total matching ad count, data source URL, and timestamp of retrieval.

## Request schema (JSON Schema)

```json
{
 "type": "object",
 "$schema": "https://json-schema.org/draft/2020-12/schema",
 "required": [
  "input"
 ],
 "properties": {
  "input": {
   "type": "object",
   "required": [
    "type",
    "method"
   ],
   "properties": {
    "type": {
     "type": "string",
     "const": "http"
    },
    "method": {
     "enum": [
      "GET"
     ],
     "type": "string"
    },
    "queryParams": {
     "type": "object",
     "required": [
      "place"
     ],
     "properties": {
      "deal": {
       "type": "string",
       "description": "buy (default) or rent"
      },
      "type": {
       "type": "string",
       "description": "flat (default), house, parking or land"
      },
      "limit": {
       "type": "string",
       "description": "Ads to return, 1 to 50 (default 20)"
      },
      "place": {
       "type": "string",
       "description": "City or area name, e.g. paris, lyon, bordeaux (required)"
      },
      "maxPrice": {
       "type": "string",
       "description": "Optional maximum price in EUR"
      }
     }
    }
   },
   "additionalProperties": false
  },
  "output": {
   "type": "object",
   "required": [
    "type"
   ],
   "properties": {
    "type": {
     "type": "string"
    },
    "example": {
     "type": "object"
    }
   }
  }
 }
}
```

## Response schema (JSON Schema)

```json
{
 "type": "json",
 "example": {
  "ads": [
   {
    "id": "ag754691-538488038",
    "url": "https://www.bienici.com/annonce/vente/ag754691-538488038",
    "city": "Paris 20e",
    "rooms": 1,
    "title": "Cave bas Ménilmontant",
    "agency": "PRIMAS immobilier",
    "bedrooms": null,
    "district": "Ménilmontant - Amandiers",
    "newBuild": false,
    "priceEur": 23000,
    "surfaceM2": 16,
    "postalCode": "75020",
    "pricePerM2": 1438,
    "energyClass": "NS",
    "priceDropped": false,
    "propertyType": "flat"
   },
   {
    "id": "laforet-immo-facile-52877953",
    "url": "https://www.bienici.com/annonce/vente/laforet-immo-facile-52877953",
    "city": "Paris 2e",
    "rooms": 1,
    "title": "PARIS 2e RUE DE RICHELIEU - CHAMBRE INDÉPENDANTE AU DERNIER ÉTAGE",
    "agency": "Laforêt PARIS 1&2",
    "bedrooms": null,
    "district": "Gaillon - Vivienne",
    "newBuild": false,
    "priceEur": 35000,
    "surfaceM2": 4.2,
    "postalCode": "75002",
    "pricePerM2": 8333,
    "energyClass": "NS",
    "priceDropped": true,
    "propertyType": "flat"
   }
  ],
  "deal": "buy",
  "type": "flat",
  "count": 5,
  "place": {
   "name": "Paris",
   "type": "city",
   "zoneIds": [
    "-7444"
   ],
   "postalCodes": [
    "75000"
   ]
  },
  "total": 9658,
  "source": "https://www.bienici.com/realEstateAds.json",
  "checkedAt": "2026-10-23T09:36:58.838Z"
 }
}
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/bien-ici-french-real-estate-listings-c8c241ec/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from api.jobsproperty-api.workers.dev](https://www.zero.xyz/host/api.jobsproperty-api.workers.dev/llms.txt)
