Inizia qui
La vostra prima richiesta in quattro passi
Elenca i tuoi dispositivi mobili collegati e copia il SID di destinazione.
Crea una notifica con un titolo e un messaggio.
Sondaggi l'elenco endpoint da SID.
Utilizzare i timestamp distribued status e GMT per monitorare la distribuzione.
Applicazione mobile ufficiale
Il ponte sicuro tra il telefono, il cruscotto e API.
Le operazioni SMS e di chiamata passano attraverso l'app ufficiale SMSMobileAPI installata sul telefono connesso. L'applicazione si abbina in modo sicuro al dispositivo con il tuo account, sincronizza eventi autorizzati e collega la rete mobile al cruscotto e REST API.
- Comunicati firmati distribuiti attraverso gli elenchi ufficiali di Google Play e Apple App Store
- Controllo di Google e Apple piattaforma, controllo di firma e distribuzione
- Accoppiamento sicuro del dispositivo, trasporto HTTPS e accesso autenticato API
- Solo le autorizzazioni richieste per le funzionalità mobili che abilitate
WEBHOOK V2 PER QUESTA API
Fai sì che la comunicazione mobile attivi la prossima azione aziendale.
Una destinazione può ricevere tutto, oppure puoi separare sistemi di produzione, analisi e avvisi operativi. Ogni evento ha un nome preciso così la tua applicazione può gestirlo in modo prevedibile.
L’API Notification invia notifiche ai dispositivi connessi. Al momento non pubblica un evento webhook dedicato alle notifiche. Usa eventi sorgente come un SMS ricevuto, una chiamata persa o un messaggio WhatsApp ricevuto per attivare il flusso di notifica.
sms.receivedSMS ricevuto
Un dispositivo mobile connesso ha sincronizzato un SMS in arrivo.
call.missedChiamata persa
Una chiamata persa è stata sincronizzata da un dispositivo mobile connesso.
whatsapp.receivedWhatsApp ricevuto
Un messaggio WhatsApp è stato recuperato dopo che l'account ha richiesto la sincronizzazione.
Autenticazione
Mantenere le credenziali sul server
I endpoint di notifica usano il parametro apikey. Un telefono di destinazione è identificato da sid quando si invia e da sid o sidentifiant quando si elenca.
Gestione della storia
Cancella la storia in modo sicuro: anteprima, eliminare, seguire i progressi
Questi endpoint chiariscono la cronologia dei server selezionata per il tasto API, non messaggi sui telefoni o servizi esterni. Non forniscono la cancellazione del conto. Una nuova attività può apparire dopo la cancellazione.
Leggi la guida request_id e retry
Per impostazione predefinita, i record di connessione o di elaborazione rimangono visibili. Utilizzare solo include_linked=1 se si accetta che le integrazioni o l'elaborazione in corso possono smettere di lavorare.
Come funziona request_id
- Anteprima i conti con action=preview. Non è necessario alcun request_id e non vengono eliminati i record.
- Generare un unico request_id per una nuova cancellazione, ad esempio un UUID. Salvalo prima di inviare action=delete.
- Per i retries, timeout o HTTP 202, riutilizzare lo stesso tasto API, endpoint di storia, request_id e include_linked valore. Non generare mai un nuovo ID automaticamente dopo un errore.
- Quando completed=true, l'operazione è terminata. Riutilizzare il suo ID restituisce lo stesso risultato invece di cancellare i record appena arrivati. Utilizzare un nuovo ID solo per una pulizia deliberatamente nuova.
request_id identifica l'operazione di cancellazione, non un singolo SMS. Formato consentito: 16–128 lettere ASCII, cifre, trattini o sottolineature. È adatto un UUID generato con crypto.randomUUID().
L’eliminazione avviene in lotti. HTTP 202 con continue_required=true richiede di ripetere action=delete dopo 3 secondi. Non è previsto un cron in background. action=status legge solo l’avanzamento senza proseguire l’eliminazione, anche con HTTP 200.
Esempi di cancellazione e stato
Sostituire il campione request_id con il proprio valore unico prima di iniziare. Le seguenti richieste di cancellazione cambiano la cronologia del conto reale; non sono anteprime.
curl -X POST "https://api.smsmobileapi.com/delete-history-notifications/" \
--data-urlencode "apikey=YOUR_API_KEY" \
-d "action=delete" -d "include_linked=0" \
-d "request_id=6d54ac58-41f1-4fbc-9a39-6e6c86089451"curl -X POST "https://api.smsmobileapi.com/delete-history-notifications/" \
-H "Authorization: Bearer YOUR_OAUTH_ACCESS_TOKEN" \
-d "action=delete" -d "include_linked=0" \
-d "request_id=6d54ac58-41f1-4fbc-9a39-6e6c86089451"curl -G "https://api.smsmobileapi.com/delete-history-notifications/" \
--data-urlencode "apikey=YOUR_API_KEY" \
-d "action=status" \
-d "request_id=6d54ac58-41f1-4fbc-9a39-6e6c86089451"GET accetta anche action=preview o action=delete. POST è consigliato: i parametri dell'URL possono penetrare nella cronologia del browser e nei registri del server. Non posizionare mai un URL di cancellazione in un link pubblico, immagine o prefetch.
Per POST, inviare tutti i parametri nel corpo del modulo o un oggetto JSON, mai nella stringa di query. I parametri sconosciuti sono rifiutati; i filtri data o mobile non sono supportati.
Autenticazione per i endpoint storici
Utilizzare apikey o un token di accesso Authorization: Bearer rilasciato da SMSMobileAPI OAuth2. Non inviare un token di aggiornamento o una chiave API come un token Bearer. I gettoni scarsi sono rifiutati.
Quando gli ambiti sono impostati, history:read consente l'anteprima/status e history:delete permette anche la cancellazione. Si applicano restrizioni sia sul token che sul client OAuth. I gettoni legacy senza scopi mantengono il loro accesso al conto esistente.
OAuth2 seleziona la chiave API primaria unica. Se esistono diverse chiavi primarie, inoltre, fornire apikey per selezionare una parte dell'account. Le chiavi secondarie non permettono mai l'accesso alla storia principale chiave.
Leggi la risposta prima di continuare
count_delete è il numero cumulativo rimosso da questa operazione. selected_at_start è la selezione iniziale; protected_at_start conta record esclusi. Utilizzare preview.linked_or_processing per contare i record collegati anche quando include_linked=1.
{
"result": {
"error": 0,
"history": "notifications",
"action": "delete",
"request_id": "6d54ac58-41f1-4fbc-9a39-6e6c86089451",
"status": "processing",
"completed": false,
"count_delete": 100,
"total_before": 250,
"selected_at_start": 200,
"protected_at_start": 50,
"include_linked": 0,
"continue_required": true,
"message": "Repeat GET or POST with the same request_id and include_linked to continue. Status requests do not run deletion."
}
}- 200 con completed=true: finito. Una sola risposta di stato o di anteprima 200 non prova il completamento.
- 400 INVALID_REQUEST_ID: controlla il formato. 404 REQUEST_NOT_FOUND: non esiste alcuna operazione per questo ID, chiave API e storia.
- 401: credenziali non valide o scadute. 403: insufficiente campo OAuth o conto non autorizzato.
- 409 HISTORY_BUSY: un'altra pulizia è in esecuzione; continuare dal client originale. 409 INCLUDE_LINKED_CONFLICT: ripristinare il valore originale include_linked.
- 409 OAUTH_ACCOUNT_AMBIGUOUS: fornire una chiave API appartenente a questo account.
- 503 o interruzione di rete: alcuni lotti possono già essere completati. Controllare la configurazione, quindi riprova con l'originale request_id. Non creare automaticamente un'operazione di sostituzione.
POST · OTTENERE
Invia una notifica
https://api.smsmobileapi.com/notification/sendCrea una notifica interna per un dispositivo collegato.
Utilizzare per avvisi operativi che dovrebbero apparire su un telefono gestito.
Parametri
| Nome | Tipo | Requisito | Descrizione |
|---|---|---|---|
apikey |
corda | Necessario | La tua chiave API. |
sid |
corda | Necessario | Obiettivo SID mobile. |
title |
corda | Facoltativo | Titolo di notifica; default alla notifica. |
message |
corda | Necessario | Contenuto di notifica. |
type |
corda | Facoltativo | Tipo di notifica; default alla notifica. |
Esempio di richiesta
curl -X POST "https://api.smsmobileapi.com/notification/send" \
-d "apikey=YOUR_API_KEY" \
-d "sid=TARGET_SIDENTIFIANT" \
--data-urlencode "title=Order ready" \
--data-urlencode "message=Order #1042 is ready for collection."
Esempio di risposta
{
"success": true,
"message": "Notification created.",
"id": 22087,
"apikey": "YOUR_API_KEY",
"sid": "508b004b4aadacc4"
}
Vuoi eseguire questa richiesta?Collegare il tasto API nella parte superiore della pagina per sbloccare il tester interattivo.
Collegare la chiave- Creazione e distribuzione sono eventi separati. Utilizzare l'elenco endpoint per verificare la consegna al dispositivo.
OTTENERE
Elenco delle notifiche
https://api.smsmobileapi.com/notification/list/Ritorna fino a 200 notifiche ordinate da più recente a più vecchio.
Utilizzare per monitorare la distribuzione e costruire una cronologia delle notifiche.
Parametri
| Nome | Tipo | Requisito | Descrizione |
|---|---|---|---|
apikey |
corda | Necessario | La tua chiave API. |
sidentifiant |
corda | Facoltativo | Filtra per cellulare di destinazione. |
sid |
corda | Facoltativo | Alias di sidentifiant. |
distribued |
0 | 1 | Facoltativo | 1 per distribuita, 0 per non distribuita. |
date_from |
AAAA-MM-GG | Facoltativo | Data di inizio. |
date_to |
AAAA-MM-GG | Facoltativo | Data di fine. |
Esempio di richiesta
curl "https://api.smsmobileapi.com/notification/list/?apikey=YOUR_API_KEY&sidentifiant=TARGET_SIDENTIFIANT&distribued=1"
Esempio di risposta
{
"success": true,
"count": 1,
"data": [{
"sidentifiant": "508b004b4aadacc4",
"title": "Order ready",
"message": "Order #1042 is ready for collection.",
"distribued": "1",
"distribued_status": "distributed",
"distributed_at_gmt": "2026-03-18 10:18:30",
"distributed_at_unix": 1773829110,
"sent_at_gmt": "2026-03-18 10:15:03",
"sent_at_unix": 1773828903
}]
}
Vuoi eseguire questa richiesta?Collegare il tasto API nella parte superiore della pagina per sbloccare il tester interattivo.
Collegare la chiave- Tutti i timestamp inviati e distribuiti sono GMT.
POST · OTTENERE
Eliminare la cronologia delle notifiche
https://api.smsmobileapi.com/delete-history-notifications/Cancella i record di notifica per i dispositivi mobili di proprietà di questo account. Non scollega i cellulari.
Usa prima l'anteprima, controlla i conti, quindi richiedi esplicitamente la cancellazione. Questo cancella l'intera cronologia selezionata per la chiave API, senza data, telefono o filtri di messaggio.
Parametri
| Nome | Tipo | Requisito | Descrizione |
|---|---|---|---|
apikey |
corda | Facoltativo | Richiesto senza OAuth2. Con OAuth2, seleziona in modo facoltativo una chiave API appartenente allo stesso account. |
action |
anteprima | delete | stato | Facoltativo | preview conta senza eliminare; delete avvia o prosegue l’eliminazione; status consulta l’avanzamento senza proseguire. L’API usa delete come valore predefinito; questo strumento usa preview. |
include_linked |
0 | 1 | Facoltativo | Default 0: mantenere i record di connessione o di elaborazione. Impostare 1 per includerli, con il rischio di rompere le integrazioni. Mantenere questo valore invariato quando si continua a una cancellazione. |
request_id |
corda | Facoltativo | Obbligatorio per delete e status, facoltativo per preview. Usare da 16 a 128 lettere ASCII, cifre, trattini (-) o trattini bassi (_). Generare un ID univoco per ogni nuova eliminazione e conservarlo per tutti i tentativi. Non è l’ID di un messaggio né una chiave API. |
Esempio di richiesta
curl -X POST "https://api.smsmobileapi.com/delete-history-notifications/" \
--data-urlencode "apikey=YOUR_API_KEY" \
-d "action=preview" -d "include_linked=0"
Esempi di cancellazione e stato
Sostituire il campione request_id con il proprio valore unico prima di iniziare. Le seguenti richieste di cancellazione cambiano la cronologia del conto reale; non sono anteprime.
curl -X POST "https://api.smsmobileapi.com/delete-history-notifications/" \
--data-urlencode "apikey=YOUR_API_KEY" \
-d "action=delete" -d "include_linked=0" \
-d "request_id=6d54ac58-41f1-4fbc-9a39-6e6c86089451"curl -X POST "https://api.smsmobileapi.com/delete-history-notifications/" \
-H "Authorization: Bearer YOUR_OAUTH_ACCESS_TOKEN" \
-d "action=delete" -d "include_linked=0" \
-d "request_id=6d54ac58-41f1-4fbc-9a39-6e6c86089451"curl -G "https://api.smsmobileapi.com/delete-history-notifications/" \
--data-urlencode "apikey=YOUR_API_KEY" \
-d "action=status" \
-d "request_id=6d54ac58-41f1-4fbc-9a39-6e6c86089451"Esempio di risposta
{
"result": {
"error": 0,
"history": "notifications",
"action": "preview",
"total": 120,
"simple": 100,
"linked_or_processing": 20,
"selected": 100,
"include_linked": 0,
"operation_in_progress": false,
"active_include_linked": null
}
}
Vuoi eseguire questa richiesta?Collegare il tasto API nella parte superiore della pagina per sbloccare il tester interattivo.
Collegare la chiave- L'esempio sopra è un'anteprima, non una cancellazione. I conti sono illustrativi; la selezione definitiva è fissata quando la cancellazione inizia.
- include_linked=1 può interrompere GHL, Zapier, automazione, unsubscribe link o il monitoraggio della consegna. Non bypassa mai la proprietà dell'account o i controlli di integrità di archiviazione.
Risoluzione dei problemi
Errori e ritiri sicuri
Leggi lo stato HTTP e il campo di errore JSON prima di riprovare. Non riprovare i guasti di convalida o di autenticazione senza correggere prima la richiesta.
| HTTP | Codice | Cosa fare |
|---|---|---|
| 400 | Missing required param | Apikey, sid o messaggio manca. |
| 400 | Invalid date format | Usa YYYY-MM-DD per date da e date to. |
| 400 | Invalid distribued value | Solo 0 o 1 è accettato. |
| 500 | DB connection / query failed | Il servizio di notifica non poteva completare l'operazione. |
Hai bisogno di aiuto?
Portare il contesto della richiesta, non i tuoi segreti.
Condividi il punto finale, timestamp, stato HTTP e risposta igienica. Non includere mai chiavi API, gettoni o contenuti di messaggi privati.


