Online ora  
Programma per sviluppatori Sviluppo App · Montato in iframe

Distribuisci dentro
la nostra shell.

Un’app AT è una web app che sai già scrivere — resa dentro la shell di AppointmentTrader a un URL pulito /apps/{id} con voce nella sidebar, sincronizzazione tema, e token SDK scoped per l’utente attivo. Leggi dati AT, piazza offerte, pubblica nel feed comunitario, installa nel portale utente accanto alle nostre superfici.

  • iframemontata su /apps/{id}
  • 0riscritture per moduli legacy
  • SDKscoperti all’utente attivo
Come funziona realmente un’app AT

Tre passaggi. Un manifesto.

  1. 01

    Aggiungi una voce al manifesto

    Inserisci il tuo id app, URL di ingresso e lista consentita menu in /config/atv2-apps.php. The host page at /apps/{id}/{subpath} renderizza la shell v2, mostra il tuo menu nella sidebar, e incorpora il tuo entryUrl in un iframe sandboxato.

  2. 02

    Usa dati AT tramite SDK

    Le app di prima parte (stessa origine) chiamano /v1/... direttamente con la sessione utente. Le app di terze parti (cross-origin) richiedono capacità tramite un broker postMessage — lo stesso ponte che gestisce pubblicazioni, letture profilo, ricerche transazioni. Sincronizzazione tema, navigazione e flusso auth automatici.

  3. 03

    Installa nel portale utente

    Una volta registrata, la tua app appare come riga nella sidebar AT — accanto a Home, In tendenza, Venditori. Gli utenti vi navigano come in qualsiasi altra superficie. I cambiamenti di sottopercorso passano via postMessage; il parent gestisce la barra indirizzi così la navigazione interna sembra nativa, non in iframe.

Cosa può fare un’app

Sei primitive. Tutti i dati AT sono in scope.

La stessa superficie API che alimenta AppointmentTrader, esposta alla tua app con lo scope richiesto e concesso dall’utente.

Leggi dati AT
/v1/marketdata/get_world_top · /v1/location/search · /v1/user/get_profile
pubblico + chiave API
Piazza e traccia offerte
/v1/concierge/categorize_request · /v1/transaction/list
chiave API + concessione utente
Pubblica nel newsfeed
/v1/community/set_create_post · /v1/community/set_thumbs_up
chiave API + verifica
Iscriviti agli eventi
/v1/notification/subscribe · bid.filled, transaction.confirmed (HMAC webhooks)
chiave API + webhook
Rendi nella shell
iframe at /apps/{appId}/{subpath} · theme sync · nav allowlist
solo manifesto
Installa in un portale
sidebar entry · per-user enable rows (DB-backed registry, in progress)
manifesto + revisione
Pubblica nella community

La tua app pubblica direttamente nel feed.

Il newsfeed comunitario AT è solo un altro endpoint. Un’app può comporre un post, allegare media, menzionare utenti e inviarlo — stessi limiti di velocità, stessi controlli di verifica, stesso compositore usato internamente dalla piattaforma. Un bot di offerte annuncia un riempimento. Uno strumento fedeltà celebra la 100ª transazione di un ospite. Un widget Encore pubblica la copertura recuperata della serata.

POST /v1/community/set_create_post

Limitazione compositore di 15 secondi per sessione · controllo verifica account · identico al compositore in-app.

La pubblicazione da un’app usa l’identità dell’utente, non dell’app. Tu chiedi, loro concedono, tu pubblichi per loro conto. Revocabile in qualsiasi momento dalla sidebar.

App già in esecuzione

Tre nostre. Due loro. Uno slot libero.

Panoramica host app

Transazioni

Prima parte

Il registro completo delle transazioni di un utente — depositi, pagamenti, rimborsi, ricevute commissioni. Reso dentro la shell AT, voce sidebar, modulo legacy incapsulato come app dal primo giorno.

Menu Attività · Estratti conto · Ricevute

Chat

Prima parte

Messaggistica acquirente/venditore legata a transazioni live. Stesso modello iframe: modulo legacy ri-renderizzato dentro /apps/chat/ senza riscrittura, acquisisce toggle tema e navigazione inline gratuitamente.

Menu Inbox · Thread

Notifiche

Prima parte

Centro alert di sistema utente — offerta accettata, transazione confermata, messaggio ricevuto. Si iscrive agli stessi topic /v1/notification di qualsiasi app terza parte.

Menu Tutti · Menzioni · Impostazioni

Banco concierge (partner sample)

Terza parte · Hotel

Dashboard concierge interno di un hotel — modulo di ingresso, calcolatore premi, feed di ritiro membri — reso per il team front-of-house. Comunica con endpoint di offerta AT tramite SDK; invia ricevute di riempimento ospite al PMS della proprietà.

Menu Richieste aperte · Completate · Team

Encore Floor (partner sample)

Terza parte · Ristorante

Superficie “posti rilasciati stasera” del manager di un ristorante. Elenca cosa Encore sta riempiendo in tempo reale, i clienti che hanno pagato, quale voce di prenotazione aggiornare. Scoped con token SDK a una singola proprietà.

Menu Stasera · Questa settimana · Report

Il prossimo sei tu?

Slot libero

Una superficie che non esiste ancora — un’app di shopping-clienteling per una casa di lusso, una dashboard futures tee-time per un club, una trascrizione lato venue di ogni offerta fatta contro una proprietà.

Menu Parlaci
0
riscritture codice per incapsulare un modulo legacy come app
5s
budget handshake SDK prima che host passi a errore
2
livelli di fiducia — prima parte (sessione) e terza parte (broker)
$0
commissione distribuzione — solo rev-share sulle transazioni che origini
Partner che costruiscono strumenti personalizzati

Una seconda scrivania per le vendite — il tuo design.

La soluzione più adatta per lo Sviluppo App oggi sono gli strumenti interni costruiti dai partner: dashboard concierge hotel che parla con le offerte AT, vista sala Encore ristorante che mostra la copertura recuperata della serata, superficie vendite che consente a una casa di lusso di elencare gli ospiti attivi AT. Il broker di capacità è riservato esattamente a questo — app partner che richiedono azioni fornite da AT in un sandbox di proprietà della piattaforma.

Se sei già nei Elevé o Encore programmi, un’app interna è il passo naturale successivo. Il tuo team costruisce la superficie; noi esponiamo dati, autenticazione e percorso di installazione.

FAQ

Le risposte oneste.

In cosa lo Sviluppo App differisce dall’Integrazione API?

L’Integrazione API è il tuo stack che chiama AT dall’esterno — possiedi UI, utenti, distribuzione; vuoi solo dati AT. Lo Sviluppo App è il contrario: distribuisci una UI dentro AT — voce sidebar, URL pulito dentro la nostra shell, installa nel portale utente. Stessi endpoint sotto il cofano; diversa portata. La scelta giusta quando i tuoi utenti vivono già su AT o vuoi portarli lì.

Cosa può realmente leggere o fare la mia app con i dati AT?

Tutto ciò che fa l’app web AT, limitato da ciò che l’utente ha concesso. Leggi dati di mercato, ricerca località, profili pubblici. Con chiave API scoped più concessione per utente: piazza offerte, osserva transazioni, iscriviti a topic webhook, pubblica nel newsfeed comunitario per conto dell’utente. Le capacità sono dichiarate nel manifesto app e concesse all’installazione — gli utenti vedono gli stessi scope che distribuisci e li revocano da un’unica schermata.

La mia app può davvero pubblicare nel newsfeed AT?

Sì. POST /v1/community/set_create_post con {boardId, title, body} — the same endpoint the in-app composer uses. The post arrives with the user’s name on it (your app posts on their behalf, not as itself), and the same per-session 15-second throttle and account-verification gates apply. Apps that need to ship public-feed updates are exactly what this surface was built for.

Come installano realmente un’app gli utenti?

Oggi, le app registrate vivono in /config/atv2-apps.php e appaiono come righe nella sidebar per tutti. Il registro DB-backed con righe di abilitazione per utente è in sviluppo — gli utenti installeranno da una superficie di scoperta, gli scope saranno revisionati al momento della concessione, e la voce sidebar apparirà nel loro portale accanto a Home, In tendenza, Venditori e Partner. Per strumenti interni partner, l’installazione è per proprietà e non visibile ad altri tenant.

Devo riscrivere la mia web app esistente?

No. L’host rimuove la shell v2 quando serve il tuo URL dentro l’iframe e incapsula il corpo in una busta minima. Lo stesso index.php gestisce modalità a pagina intera e modalità embed — non devi nemmeno rilevare ?embed=1. We literally wrapped three legacy modules (Transactions, Chat, Notifications) as v2 apps on day one with no code changes. The bridge script is auto-injected; you only ship one if you’re cross-origin.

Come funziona la barra indirizzi dell’iframe?

La gestisce l’host. Gli URL leggono sempre /apps/{appId}/{subpath} — never the iframe’s real origin. Your app emits a {type:'navigated', path} postMessage quando cambia rotta; il parent chiama history.pushState per mantenere l’indirizzo accurato. Ricariche, tasto indietro, link profondi — tutto nativo, tutto pulito. L’utente non vede mai la giuntura dell’iframe.

Quanto costa distribuire tramite AT?

Distribuzione gratuita. Condividiamo i ricavi solo sulle transazioni originate da un’app — se l’app guida un’offerta che AT accetta, dividiamo la commissione; se l’app è solo uno strumento che non muove denaro, non c’è costo. Il livello gratuito API (10k chiamate/mese su endpoint per utente) copre la maggior parte degli strumenti interni partner end-to-end. Nessun SaaS, nessuna licenza per posto.

Porta uno strumento. Noi portiamo la guida.

Una chiamata di 20 minuti con il responsabile partnership. Ti guideremo attraverso manifesto, SDK, percorso di installazione e cosa vedrebbero realmente i tuoi utenti nella loro sidebar.

Già in Elevé o Encore? Un’app interna è il passo naturale successivo. Torna al Developer hub.