Commencer

SDK

SDK officiels Python et JavaScript/TypeScript pour l'API Pedra. Home staging virtuel, rénovation, amélioration d'images et vidéos d'annonces en quelques lignes de code — chaque méthode attend que le rendu soit prêt et renvoie l'URL finale.

SDK officiels

Deux clients officiels encapsulent l'API REST de Pedra. Tous deux sont open source, sans dépendances à l'exécution, et exposent chaque endpoint. Chaque méthode attend que le rendu soit prêt et renvoie la ou les URL finales — aucun ID de tâche à interroger.

Python
pedra
Python 3.8+ · zero dependencies
Node.js
@pedra-ai/sdk
Node.js 18+ · zero dependencies

Installation

Node.js

npm install @pedra-ai/sdk

Python

pip install pedra

Authentification

Passez votre clé au client ou définissez la variable d'environnement PEDRA_API_KEY. Obtenez une clé en vous inscrivant sur app.pedra.ai et en ouvrant Paramètres → API. Les clés ont une longue durée de vie — ne les déployez jamais côté client ; appelez depuis votre backend. Voir Authentification pour les détails.

from pedra import Pedra

# Reads PEDRA_API_KEY from the environment…
pedra = Pedra()

# …or pass the key explicitly
pedra = Pedra("YOUR_API_KEY")

Démarrage rapide

Meublez une pièce vide. Chaque méthode d'image renvoie la même forme — lisez url pour le premier rendu ou urls pour tous.

from pedra import Pedra

pedra = Pedra()  # reads PEDRA_API_KEY

result = pedra.furnish(
    image_url="https://example.com/empty-living-room.jpg",
    room_type="Living room",
    style="Minimalist",
)

print(result.url)   # the staged image URL
print(result.urls)  # all generated URLs

Ce que vous pouvez appeler

Les deux SDK couvrent chaque endpoint Pedra avec les mêmes noms de méthode dans les deux langages :

  • furnish, empty, renovation, editViaPrompt, remove — voir Home staging virtuel.
  • enhance, enhanceAndCorrectPerspective, sky, blur — voir Amélioration d'images.
  • createVideo, updateVideo, generateVoiceScript, generateVoice, musicLibrary, ainsi que credits et feedback — voir Vidéo et Crédits.
  • listProperties, listPropertyImages, createProperty, addImagesToProperty — voir Propriétés.
  • createVirtualTour, waitForVirtualTour, getVirtualTour, listVirtualTours, updateVirtualTour, addVirtualTourScenes, deleteVirtualTour, createUploadLink, addLocalPanoramas — voir Visites virtuelles.

Python utilise le snake_case (edit_via_prompt, create_video, update_video, generate_voice, music_library, wait_for_virtual_tour, request_access, wait_for_access) ; les paramètres et le comportement sont identiques.

Visites virtuelles

Les visites sont le seul flux asynchrone : createVirtualTour revient tout de suite avec status: "processing", et waitForVirtualTour interroge jusqu'à ce que la visite soit prête (environ 10 secondes par pièce). Un échec est renvoyé, pas levé — vérifiez status.

from pedra import Pedra

pedra = Pedra()

tour = pedra.create_virtual_tour(
    image_urls=[  # 360° photos, in walking order
        "https://example.com/360/entrance.jpg",
        "https://example.com/360/living-room.jpg",
        "https://example.com/360/kitchen.jpg",
    ],
    name="Calle Mayor 12",
)
tour = pedra.wait_for_virtual_tour(tour.tour_id)

if tour.status == "ready":
    print(tour.tour_url)    # shareable tour page
    print(tour.embed_code)  # <iframe> for a listing page

Pas encore de clé API ?

Un agent ou un script peut en obtenir une pour la personne pour qui il travaille — et lui créer un compte Pedra si besoin. requestAccess lui envoie un lien de confirmation par e-mail (sans clé) ; waitForAccess interroge jusqu'à son accord et renvoie l'apiKey. Les deux sont aussi des méthodes statiques de Pedra. Voir Comptes pour agents IA.

from pedra import Pedra, request_access, wait_for_access

req = request_access("maria@example.com", agent_name="My listing assistant")
print("Check your email and click the link from Pedra.")

res = wait_for_access(req.request_id)  # polls every 5 s, up to 30 min
if res.approved:
    if res.note:
        print(res.note)  # only when there are no credits left
    pedra = Pedra(res.api_key)  # store the key; it doesn't expire

Gestion des erreurs

Les deux SDK lèvent PedraApiError pour les échecs de l'API (avec status et body) et PedraError pour les erreurs client/réseau. Voir Erreurs et limites pour la liste complète des modes d'échec.

Serveur MCP

Vous préférez piloter Pedra depuis un assistant IA ? Le serveur MCP officiel de Pedra expose les mêmes opérations à Claude, ChatGPT et Cursor, pour stager et retoucher les photos d'annonces directement depuis un chat.

Code source & support

Les deux SDK sont sous licence MIT et développés ouvertement. Ajoutez une étoile ou ouvrez des issues sur GitHub, et écrivez à felix@pedra.ai pour de l'aide d'intégration, des quotas plus élevés ou des conditions enterprise.

Questions fréquentes

Pedra a-t-il un SDK ?

Oui. Pedra propose des SDK officiels et open source pour Python (pip install pedra) et Node.js/TypeScript (npm install @pedra-ai/sdk). Tous deux sont sans dépendances à l'exécution et encapsulent chaque endpoint de l'API.

Pedra a-t-il un SDK Python ?

Oui. Installez-le avec pip install pedra (paquet PyPI pedra), Python 3.8+, puis importez-le avec : from pedra import Pedra. Il couvre tous les endpoints.

Pedra a-t-il un SDK Node.js ou JavaScript ?

Oui. Installez-le avec npm install @pedra-ai/sdk, Node 18+, avec les types TypeScript inclus : import Pedra from @pedra-ai/sdk.

Comment m'authentifier avec le SDK Pedra ?

Transmettez votre clé au constructeur du client ou définissez la variable d'environnement PEDRA_API_KEY. Obtenez une clé sur app.pedra.ai dans Paramètres → API et appelez depuis votre backend.

Les SDK Pedra sont-ils gratuits et open source ?

Oui. Les deux SDK sont sous licence MIT et open source sur GitHub (pedra-ai/pedra-python et pedra-ai/pedra-node). Vous ne payez que pour l'utilisation de l'API.

Les SDK Pedra nécessitent-ils du polling ?

Non. Chaque méthode attend que le rendu soit prêt et renvoie la ou les URL finales, il n'y a donc aucun ID de tâche à interroger.