Propriétés

API Propriétés

Parcourez les biens d'un compte Pedra, lisez les URL de leurs photos pour les utiliser avec create_video et les endpoints d'édition, créez des biens et ajoutez-y des photos par URL.

Les propriétés sont la manière dont les photos sont organisées dans un compte Pedra. Ces endpoints permettent de parcourir les propriétés d'un utilisateur, de lire les URL des photos d'un propriété (pour les transmettre directement à create_video ou aux endpoints d'édition), de créer des propriétés et d'y ajouter des photos par URL — le serveur télécharge chaque URL et la stocke, donc n'importe quelle image publique fonctionne.

Les photos déjà dans le compte sont la source la plus simple pour une vidéo. Les nouvelles photos arrivent de trois façons : des URL publiques via add_images_to_property ; des fichiers locaux via le même endpoint, envoyés en URI data: base64 ; ou, quand les photos sont sur le téléphone de quelqu'un, un lien de téléversement qu'il ouvre pour les envoyer sans connexion.

Lister les propriétés

POST/api/list_properties

Renvoie les propriétés du compte (les plus récents d'abord), chacun avec un nombre de photos et une appUrl.

apiKeystringobligatoire
Votre clé API.
curl -X POST https://app.pedra.ai/api/list_properties \
  -H "Content-Type: application/json" \
  -d '{ "apiKey": "YOUR_API_KEY" }'

Réponse

JSON
{
  "properties": [
    {
      "propertyId": "<uuid>",
      "name": "Calle Mayor 12",
      "createdAt": "2026-06-30T10:00:00.000Z",
      "photoCount": 8,
      "appUrl": "https://app.pedra.ai/?propertyId=<uuid>"
    }
  ]
}

Lister les photos du propriété

POST/api/list_property_images

Renvoie les photos d'un propriété sous forme d'URL publiques img.pedra.ai — transmettez-les directement à create_video ou aux endpoints d'édition d'images.

apiKeystringobligatoire
Votre clé API.
propertyIdstringobligatoire
L'id du propriété (de list_properties ou create_property).
typestring
Quelles photos lister : "photo" (par défaut) pour les photos classiques, ou "360" pour les photos 360° de la propriété — leurs imageIds sont les sceneIds d'une visite virtuelle.
Values: photo 360
Default: photo
curl -X POST https://app.pedra.ai/api/list_property_images \
  -H "Content-Type: application/json" \
  -d '{ "apiKey": "YOUR_API_KEY", "propertyId": "PROPERTY_ID" }'

Réponse

JSON
{
  "propertyId": "<uuid>",
  "name": "Calle Mayor 12",
  "images": [
    {
      "imageId": "<uuid>",
      "url": "https://img.pedra.ai/<uuid>",
      "name": "Image 1",
      "aspectRatio": 1.5
    }
  ]
}

Créer un propriété

POST/api/create_property

Crée un propriété vide et renvoie son propertyId et son appUrl.

apiKeystringobligatoire
Votre clé API.
namestring
Nom du propriété, par ex. l'adresse de l'annonce. Optionnel.
curl -X POST https://app.pedra.ai/api/create_property \
  -H "Content-Type: application/json" \
  -d '{ "apiKey": "YOUR_API_KEY", "name": "Calle Mayor 12" }'

Réponse

JSON
{
  "message": "Property created",
  "propertyId": "<uuid>",
  "appUrl": "https://app.pedra.ai/?propertyId=<uuid>"
}

Ajouter des photos à un propriété

POST/api/add_images_to_property

Ajoute des photos à un propriété par URL. Le serveur télécharge chaque URL et la stocke (donc n'importe quelle image https publique — ou une petite URI data: — fonctionne), puis renvoie les URL img.pedra.ai stockées. Jusqu'à 20 par appel.

apiKeystringobligatoire
Votre clé API.
propertyIdstringobligatoire
L'id du propriété (de list_properties ou create_property).
imageUrlsarrayobligatoire
Tableau d'URL d'images à télécharger et ajouter (max 20). Une seule chaîne imageUrl est aussi acceptée.
namesarray
Tableau optionnel de noms, un par image et dans le même ordre que imageUrls (par ex. les noms de fichiers d'origine). Renvoyé comme name par list_property_images et comme source.name quand vous modifiez la photo. Jamais affiché sur l'image. Par défaut, "Image 1", "Image 2"...
typestring
"photo" (par défaut) ou "360". Avec "360", chaque photo est vérifiée comme photo 360° équirectangulaire (2:1, jusqu'à 80 Mo) et stockée pour une visite virtuelle ; max 10 par appel.
Values: photo 360
Default: photo

Passez type: "360" pour ajouter plutôt des photos 360° destinées à une visite virtuelle : chacune est vérifiée comme équirectangulaire (2:1) et stockée comme dans l'app, jusqu'à 10 par appel. Les URI data: fonctionnent aussi, vous pouvez donc envoyer des fichiers 360° locaux encodés en base64 — un ou quelques-uns par appel, sous la limite de 50 Mo par requête. Les photos qui ne sont pas en 360° reviennent dans failed avec la raison.

Chaque photo stockée ici compte dans la limite quotidienne de téléversement du compte : 30 par jour sur le plan gratuit, 500 sur les plans payants. Au-delà, l'appel renvoie 429 avec code: "upload_limit" et rien n'est stocké ; les photos qui échouent d'elles-mêmes ne comptent pas.

curl -X POST https://app.pedra.ai/api/add_images_to_property \
  -H "Content-Type: application/json" \
  -d '{
    "apiKey": "YOUR_API_KEY",
    "propertyId": "PROPERTY_ID",
    "imageUrls": [
      "https://example.com/kitchen.jpg",
      "https://example.com/living-room.jpg"
    ],
    "names": ["IMG_0412.jpg", "IMG_0413.jpg"]
  }'

Réponse

JSON
{
  "message": "Added 2 image(s)",
  "propertyId": "<uuid>",
  "added": [
    { "imageId": "<uuid>", "url": "https://img.pedra.ai/<uuid>", "name": "IMG_0412.jpg", "aspectRatio": 1.5 }
  ],
  "failed": [],
  "appUrl": "https://app.pedra.ai/?propertyId=<uuid>"
}
POST/api/create_upload_link

Quand les photos sont sur le téléphone de quelqu'un — l'agent, le photographe, le propriétaire — create_upload_link est le moyen le plus simple de les mettre dans une propriété. Il renvoie une page sans connexion, valable 24 heures, qui accepte jusqu'à 100 photos (JPEG, PNG, WebP, et HEIC depuis un iPhone). Avec le type: "any" par défaut, elle accepte les photos classiques et les photos 360°, et les images 2:1 sont stockées en 360° automatiquement ; type: "360" n'accepte que les photos 360°.

Envoyez l'uploadUrl à la personne ; une fois qu'elle a fini, appelez list_property_images (type "photo" ou "360") et utilisez les URL avec les endpoints d'édition, create_video ou create_virtual_tour. Les liens de téléversement sont gratuits ; vous pouvez en créer 5 par jour sur le plan gratuit et 50 sur les plans payants, et chaque fichier envoyé compte dans la limite quotidienne de téléversement. Référence complète : create_upload_link.

curl -X POST https://app.pedra.ai/api/create_upload_link \
  -H "Content-Type: application/json" \
  -d '{ "apiKey": "YOUR_API_KEY", "propertyId": "PROPERTY_ID" }'

Suivant

Transmettez les URL des photos d'un propriété à create_video, ou utilisez-les avec n'importe quel endpoint de home staging virtuel / amélioration.