Inizia qui
La vostra prima richiesta in quattro passi
Configurare una casella di posta nel cruscotto.
Copiare sia l'apikeykey che la cassetta postale.
Invia prima una semplice e-mail di testo.
Aggiungi allegati o immagini incorporate solo dopo che la richiesta di base funziona.
WEBHOOK V2 PER QUESTA API
Sottoscrivi solo gli eventi mobili necessari al tuo flusso di lavoro.
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.
email.sentEmail inviata
Una richiesta di invio email è stata creata da SMSMobileAPI.
email.receivedEmail ricevuta
Una casella connessa ha ricevuto un'email.
Autenticazione
Mantenere le credenziali sul server
I endpoint via email richiedono l'apikey dell'account e la casella di posta specifica apikeybox. Conservare entrambe le credenziali lato server e mascherarle nei registri delle applicazioni.
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-email/" \
--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-email/" \
-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-email/" \
--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": "email",
"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.
INVIARE
Inviare un'email
https://api.smsmobileapi.com/sendemail/Invia testo semplice o e-mail HTML attraverso una casella di posta configurata.
Usalo per e-mail transazionale o operativa dalla tua applicazione.
Parametri
| Nome | Tipo | Requisito | Descrizione |
|---|---|---|---|
apikey |
corda | Necessario | Il tuo account API chiave. |
apikeybox |
corda | Necessario | API chiave della casella di posta configurata. |
sender_name |
corda | Necessario | Visualizza il nome del mittente. |
sender_email |
Necessario | Inviare l'indirizzo email. | |
recipient_email |
Necessario | Indirizzo utile. | |
mail_subject |
corda | Necessario | Oggetto email. |
mail_body |
corda | Necessario | Testo normale o corpo HTML. |
allow_self_signed |
sì | no | Necessario | Impostare a sì solo quando il server di posta configurato utilizza un certificato di autodiagnosi interno di fiducia. |
unsubscribe |
1 | Facoltativo | Aggiunge termini di cancellazione e un link. |
email_cc1 |
Facoltativo | Primo destinatario CC opzionale. | |
email_cc2 |
Facoltativo | Secondo destinatario CC opzionale. | |
email_cc3 |
Facoltativo | Terzo destinatario CC opzionale. | |
attachmentBase64 |
base 64 | Facoltativo | Contenuto dell'allegato codificato in Base64. |
attachmentBase64_name_1 |
nome del file | Facoltativo | Nome originale del file di allegato con estensione, per esempio fattura.pdf. Richiesto quando l'allegatoBase64 ha un valore. |
charset |
corda | Facoltativo | Set di caratteri; UTF-8 predefinito. |
embeddedImage |
URL del HTTPS | Facoltativo | Immagine da incorporare nell'e-mail. |
embeddedImage_cid |
corda | Facoltativo | Contenuto-ID di riferimento dal corpo HTML. |
format |
corda | Facoltativo | Formato di risposta richiesto. |
reply_name |
corda | Facoltativo | Nome di visualizzazione. |
reply_email |
Facoltativo | Rispondi all'indirizzo. |
Esempio di richiesta
curl -X POST "https://api.smsmobileapi.com/sendemail/" \
-d "apikey=YOUR_API_KEY" \
-d "apikeybox=YOUR_MAILBOX_KEY" \
--data-urlencode "sender_name=Example Team" \
-d "sender_email=team@example.com" \
-d "recipient_email=customer@example.net" \
--data-urlencode "mail_subject=Order confirmation" \
--data-urlencode "mail_body=Your order has been confirmed." \
--data-urlencode "attachmentBase64=BASE64_FILE_CONTENT" \
-d "attachmentBase64_name_1=invoice.pdf" \
-d "allow_self_signed=no"
Vuoi eseguire questa richiesta?Collegare il tasto API nella parte superiore della pagina per sbloccare il tester interattivo.
Collegare la chiave- Preferire POST perché i corpi e-mail possono essere lunghi.
- Se viene fornito l'allegatoBase64 name 1 è necessario e deve includere l'estensione del file.
- Gli allegati Base64 possono rendere grandi le richieste; applicare limiti di dimensione ragionevoli nella vostra applicazione.
OTTENERE
Recuperare le email
https://api.smsmobileapi.com/getemail/Recupera i messaggi da una cartella di posta configurata.
Utilizzare per sincronizzare l'e-mail in entrata in una scrivania di aiuto o flusso di lavoro di applicazione.
Parametri
| Nome | Tipo | Requisito | Descrizione |
|---|---|---|---|
apikey |
corda | Necessario | Il tuo account API chiave. |
apikeybox |
corda | Necessario | Mailbox API chiave. |
mbox |
corda | Necessario | Cartella di posta, per esempio INBOX. |
start |
Integer | Necessario | Indice di partenza; utilizzare 0 per la prima pagina. |
Esempio di richiesta
curl "https://api.smsmobileapi.com/getemail/?apikey=YOUR_API_KEY&apikeybox=YOUR_MAILBOX_KEY&mbox=INBOX&start=0"
Vuoi eseguire questa richiesta?Collegare il tasto API nella parte superiore della pagina per sbloccare il tester interattivo.
Collegare la chiave- Le risposte includono soggetti disponibili, mittente, destinatario, corpo, timestamp e dettagli di allegato.
OTTENERE
Controllare i contatti non sottoscritti
https://api.smsmobileapi.com/email/unsubscribed/Controlla i record di cancellazione generati dalle e-mail inviate attraverso la piattaforma.
Usalo prima di inviare campagne e quando si sincronizzano le liste di soppressione.
Parametri
| Nome | Tipo | Requisito | Descrizione |
|---|---|---|---|
apikey |
corda | Necessario | Il tuo account API chiave. |
apikeybox |
corda | Necessario | Mailbox API chiave. |
email |
Facoltativo | Filtra un contatto. Un risultato vuoto significa che non è stato trovato alcun record di cancellazione. |
Esempio di richiesta
curl "https://api.smsmobileapi.com/email/unsubscribed/?apikey=YOUR_API_KEY&apikeybox=YOUR_MAILBOX_KEY&email=customer@example.net"
Vuoi eseguire questa richiesta?Collegare il tasto API nella parte superiore della pagina per sbloccare il tester interattivo.
Collegare la chiave- Mantenere il proprio database di destinatari sincronizzato con risultati disiscrizione.
- Rimani responsabile delle norme antispam e privacy applicabili.
POST · OTTENERE
Eliminare la cronologia delle e-mail inviate
https://api.smsmobileapi.com/delete-history-email/Cancella i registri di posta elettronica inviati per questo tasto API attraverso le caselle di posta. Non cancella messaggi in una casella di posta. Non è necessario alcun apikeybox.
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-email/" \
--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-email/" \
--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-email/" \
-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-email/" \
--data-urlencode "apikey=YOUR_API_KEY" \
-d "action=status" \
-d "request_id=6d54ac58-41f1-4fbc-9a39-6e6c86089451"Esempio di risposta
{
"result": {
"error": 0,
"history": "email",
"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_parameter | Un parametro richiesto è vuoto o assente. Controllare la tabella dei parametri per l'endpoint. |
| 403 | invalid_apikey | La chiave API è sconosciuta, scaduta o non autorizzata per la funzione richiesta. |
| 429 | too_many_requests | Le richieste arrivano troppo velocemente. Aspetta, poi riprova con un backoff esponenziale. |
| 500 | server_error | Il servizio non poteva completare la richiesta. Tenere la risposta e il supporto di contatto se persiste. |
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.
