Estimatiz Public API

The Public API from Estimatiz — 2 operation(s) for public.

GitHub OpenAPI

Operations 2

GET /api/public/v1/addresses.php Rechercher une adresse #
POST /api/public/v1/estimate.php Calculer une estimation et enregistrer son rapport #

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/estimatiz-fr:estimatiz-fr-public-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Calls without X-API-Key need no key. Calls with it need a paid plan — get a key.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

estimatiz-fr-public-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Estimatiz Fr Public API
  version: 1.0.0
  description: 'Operations tagged Public across 2 of this provider''s published API definitions: openapi.json, estimatiz-fr-openapi.json. Each path carries the servers of the definition it was published in.'
servers:
- url: https://www.estimatiz.fr
  description: API publique Estimatiz en HTTPS.
security: []
tags:
- name: Public
paths:
  /api/public/v1/addresses.php:
    get:
      operationId: searchAddresses
      summary: Rechercher une adresse
      description: Faire confirmer le résultat par l’utilisateur avant estimation. Une liste vide ne prouve pas l’absence du bien.
      parameters:
      - name: q
        in: query
        required: true
        schema:
          type: string
          minLength: 3
          maxLength: 200
        description: Adresse recherchée, avec commune ou code postal.
        example: 146 boulevard Voltaire 75011 Paris
      responses:
        '200':
          description: Résultats de recherche, éventuellement vides.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AddressResponse'
              examples:
                noResults:
                  summary: Exemple sans résultat ; ne prouve pas l’absence d’un bien.
                  value:
                    ok: true
                    addresses: []
        '400':
          description: 'INVALID_JSON : JSON invalide.'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '405':
          description: 'METHOD_NOT_ALLOWED : méthode HTTP non acceptée.'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '422':
          description: 'INVALID_PARAMETERS, ADDRESS_NOT_FOUND ou NO_COMPARABLES : paramètres invalides, adresse non confirmée ou données insuffisantes.'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
              examples:
                invalidParameters:
                  summary: Exemple de structure ; le message dépend du champ invalide.
                  value:
                    ok: false
                    error:
                      code: INVALID_PARAMETERS
                      message: Paramètres invalides.
        '500':
          description: 'SERVER_ERROR : échec interne.'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '503':
          description: 'DEPENDENCY_UNAVAILABLE ou REPORT_CREATION_FAILED : dépendance indisponible ou échec de création du rapport. Ne pas annoncer un succès complet ni inventer une URL.'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '413':
          description: 'PAYLOAD_TOO_LARGE : requête trop volumineuse.'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
      tags:
      - Public
    servers:
    - url: https://www.estimatiz.fr
      description: API publique Estimatiz en HTTPS.
  /api/public/v1/estimate.php:
    post:
      operationId: estimateProperty
      summary: Calculer une estimation et enregistrer son rapport
      description: 'Effet d’écriture : crée ou réutilise un rapport partageable non indexable. Aucun nom, e-mail ou téléphone requis. Restituer median, la fourchette low/high et report.url. Mentionner uniquement les avertissements effectivement présents dans warnings. Les dates des comparables sont des données brutes et ne demandent pas de commentaire final. Le rapport contient les informations complémentaires. En cas d’échec d’enregistrement, ne pas annoncer un succès complet.'
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/EstimateRequest'
      responses:
        '200':
          description: Estimation calculée et rapport disponible.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/EstimateResponse'
        '400':
          description: 'INVALID_JSON : JSON invalide.'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '405':
          description: 'METHOD_NOT_ALLOWED : méthode HTTP non acceptée.'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '422':
          description: 'INVALID_PARAMETERS, ADDRESS_NOT_FOUND ou NO_COMPARABLES : paramètres invalides, adresse non confirmée ou données insuffisantes.'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
              examples:
                invalidParameters:
                  summary: Exemple de structure ; le message dépend du champ invalide.
                  value:
                    ok: false
                    error:
                      code: INVALID_PARAMETERS
                      message: Paramètres invalides.
        '500':
          description: 'SERVER_ERROR : échec interne.'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '503':
          description: 'DEPENDENCY_UNAVAILABLE ou REPORT_CREATION_FAILED : dépendance indisponible ou échec de création du rapport. Ne pas annoncer un succès complet ni inventer une URL.'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
              examples:
                reportFailure:
                  summary: Exemple de structure, sans URL inventée.
                  value:
                    ok: false
                    error:
                      code: REPORT_CREATION_FAILED
                      message: Le rapport n’a pas pu être enregistré.
        '413':
          description: 'PAYLOAD_TOO_LARGE : requête trop volumineuse.'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
      tags:
      - Public
    servers:
    - url: https://www.estimatiz.fr
      description: API publique Estimatiz en HTTPS.
components:
  schemas:
    Address:
      type: object
      required:
      - label
      - code_voie
      - voie
      - commune
      - cp
      - no_voie
      - btq
      properties:
        label:
          type: string
        code_voie:
          type: string
        voie:
          type: string
        commune:
          type: string
        cp:
          type: string
        no_voie:
          type: string
          description: Numéro sous forme de chaîne ; peut être vide à la recherche, obligatoire pour estimer.
        btq:
          type: string
          description: 'Suffixe éventuel : vide, A, B, C, D, E, T, Q, bis, ter ou quater.'
      description: Adresse retournée par la recherche et confirmée par l’utilisateur. Ne pas inventer les identifiants ni choisir arbitrairement un résultat.
    EstimateResponse:
      type: object
      required:
      - ok
      - estimation
      - report
      - address
      - comparables
      - location
      - warnings
      - sources
      - methodology_url
      - generated_at
      properties:
        ok:
          type: boolean
          enum:
          - true
        estimation:
          type: object
          required:
          - low
          - median
          - high
          - price_m2
          - currency
          - surface
          properties:
            low:
              type: number
              minimum: 0
            median:
              type: number
              minimum: 0
            high:
              type: number
              minimum: 0
            price_m2:
              type: number
              minimum: 0
            currency:
              type: string
              enum:
              - EUR
            surface:
              type: number
              minimum: 5
              maximum: 500
          description: Montants totaux en euros calculés avec P25, P50 et P75. price_m2 est le prix au m² médian. La recherche porte sur 12 mois puis s'étend à 18 et 24 mois si nécessaire, jusqu'à 15 ventes ; seules les ventes des 12 derniers mois entrent dans le calcul par défaut. Même calcul que le rapport.
        report:
          type: object
          required:
          - url
          properties:
            url:
              type: string
              format: uri
              description: Rapport enregistré, non indexable et accessible à toute personne possédant le lien. Présenter ce lien avec les montants.
        address:
          $ref: '#/components/schemas/Address'
        comparables:
          type: object
          required:
          - count
          - date_min
          - date_max
          properties:
            count:
              type: integer
              minimum: 1
            date_min:
              type: string
              format: date
            date_max:
              type: string
              format: date
        location:
          type: object
          required:
          - status
          - note
          properties:
            status:
              type: string
              description: État de localisation renvoyé par Estimatiz.
              enum:
              - confirmed
              - approximate
              - unavailable
              - candidate_limit
            note:
              type:
              - string
              - 'null'
        warnings:
          type: array
          items:
            type: string
        sources:
          type: array
          items:
            type: object
            required:
            - name
            - url
            properties:
              name:
                type: string
              url:
                type: string
                format: uri
        methodology_url:
          type: string
          format: uri
        generated_at:
          type: string
          format: date-time
    Error:
      type: object
      required:
      - ok
      - error
      properties:
        ok:
          type: boolean
          enum:
          - false
        error:
          type: object
          required:
          - code
          - message
          properties:
            code:
              type: string
              description: Code stable exploitable par le client.
            message:
              type: string
              description: Explication en français, sans détails internes.
    AddressResponse:
      type: object
      required:
      - ok
      - addresses
      properties:
        ok:
          type: boolean
          enum:
          - true
        addresses:
          type: array
          items:
            $ref: '#/components/schemas/Address'
    EstimateRequest:
      type: object
      required:
      - address
      - property_type
      - surface
      properties:
        address:
          allOf:
          - $ref: '#/components/schemas/Address'
          - type: object
            properties:
              no_voie:
                type: string
                pattern: ^[1-9][0-9]{0,4}$
          description: Adresse numérotée obligatoire ; demander le numéro si absent de la recherche.
        property_type:
          type: string
          enum:
          - Appartement
          - Maison
          - Local
          - Autres biens
        surface:
          type: number
          minimum: 5
          maximum: 500
          description: Surface du bien en m².
        rooms:
          type: integer
          minimum: 1
          maximum: 30
        rooms_mode:
          type: string
          enum:
          - exact
          - minimum
          default: exact
          description: minimum exige un nombre de pièces rooms.
        location_fallback:
          type: string
          enum:
          - none
          - nearby_number
          default: nearby_number
          description: none désactive le recours au numéro voisin ; des ventes exactes peuvent encore permettre une estimation sans géolocalisation confirmée.
      additionalProperties: false
      anyOf:
      - not:
          required:
          - rooms_mode
          properties:
            rooms_mode:
              enum:
              - minimum
      - required:
        - rooms
x-refined-from:
- openapi.json
- estimatiz-fr-openapi.json