Este repositorio contiene ejemplos de código en Go para interactuar con la API de Onurix. Está diseñado para ayudarte a integrar fácilmente los servicios de Onurix (SMS, Llamadas, WhatsApp, etc.) en tus aplicaciones Go.
- Ejemplos de Cliente API de Onurix en Go
Antes de empezar, asegúrate de tener instalado lo siguiente:
- Go 1.16 o superior
Los ejemplos de código están organizados en carpetas que corresponden a las diferentes categorías de la API de Onurix. Las peticiones a la API se realizan comúnmente mediante HTTP POST o GET. Para los envíos de WhatsApp, es necesario enviar los datos en formato JSON.
A continuación, se detalla cada endpoint de ejemplo y el método HTTP que utiliza:
| Archivo | Método | Descripción |
|---|---|---|
SendCall.go |
POST |
Genera una llamada con un mensaje de voz. |
SendCALL2FA.go |
POST |
Genera y entrega un código de verificación 2FA a través de una llamada. |
| Archivo | Método | Descripción |
|---|---|---|
Balance.go |
GET |
Consulta el saldo de créditos de la cuenta. |
Security.go |
POST |
Bloquea un número de teléfono para no recibir comunicaciones. |
VerificationCode2FA.go |
POST |
Realiza la verificación de un código 2FA. |
VerificationMessage.go |
GET |
Verifica el estado de un envío de SMS o llamada. |
| Archivo | Método | Descripción |
|---|---|---|
AssociateContactToGroup.go |
POST |
Asocia un contacto a un grupo. |
ContactCreate.go |
POST |
Crea un nuevo contacto. |
ContactDelete.go |
POST |
Elimina un contacto. |
ContactGroupList.go |
GET |
Lista los contactos de un grupo. |
ContactUpdate.go |
POST |
Actualiza la información de un contacto. |
DissasociateContactToGroup.go |
POST |
Desasocia un contacto de un grupo. |
GroupCreate.go |
POST |
Crea un nuevo grupo de contactos. |
GroupDelete.go |
POST |
Elimina un grupo de contactos. |
GroupList.go |
GET |
Lista todos los grupos de la cuenta. |
GroupUpdate.go |
POST |
Actualiza el nombre de un grupo. |
| Archivo | Método | Descripción |
|---|---|---|
SendSMS.go |
POST |
Envía un mensaje de texto (SMS). |
SendSMS2FA.go |
POST |
Envía un mensaje de texto (SMS) con un código de verificación 2FA. |
| Archivo | Método | Descripción |
|---|---|---|
Statistics.go |
GET |
Obtiene las estadísticas de una URL corta. |
URLShortener.go |
POST |
Crea una URL corta. |
| Archivo | Método | Descripción |
|---|---|---|
SendWhatsApp2FA.go |
POST (JSON) |
Envía un mensaje de WhatsApp con un código de verificación 2FA. |
WhatsAppGeneralSend.go |
POST (JSON) |
Envía un mensaje de WhatsApp usando una plantilla. |
SendWhatsAppWithoutTemplate.go |
POST (JSON) |
Envía un mensaje de WhatsApp sin usar una plantilla. |
-
Clona el repositorio:
git clone https://github.com/onurixlatam/onurix-go.git cd onurix-go -
Navega al archivo del endpoint que deseas utilizar (ej.
SMS/SendSMS.go). -
Edita el archivo y reemplaza los valores de los placeholders como se explica en la sección de Configuración de Parámetros.
-
Ejecuta el script desde tu terminal:
go run SMS/SendSMS.go
-
Verifica la respuesta que se imprimirá en la consola.
Para usar los ejemplos, necesitas reemplazar los valores de los placeholders (AQUI_...) con tus datos reales. A continuación, se detallan los parámetros que encontrarás en los scripts:
| Parámetro | Descripción |
|---|---|
client |
Tu ID de Cliente. Lo encuentras en tu panel de Onurix en Seguridad API. |
key |
Tu Llave de API. La encuentras en tu panel de Onurix en Seguridad API. |
| Parámetro | Descripción | Ejemplo |
|---|---|---|
phone |
Número de teléfono de destino. Para múltiples números, sepáralos por comas. | 573001234567 o 573001234567,573001234568 |
name |
Nombre para un contacto o grupo. | Mi Grupo |
lastname |
Apellido para un contacto. | Pérez |
email |
Correo electrónico de un contacto. | ejemplo@email.com |
id |
ID de un recurso (mensaje, contacto, grupo). | 12345 |
group-id |
ID de un grupo. | 6789 |
groups |
IDs de grupos separados por comas. | 1,2,3 |
app-name |
Nombre de la aplicación 2FA creada en Onurix. | MiApp |
| Servicio | Parámetro | Descripción |
|---|---|---|
| SMS | sms |
Contenido del mensaje de texto a enviar. |
| Llamadas | message |
Mensaje que se reproducirá en la llamada. |
| Llamadas | voice |
Voz a usar en la llamada (ej. Mariana, Penelope). |
| Llamadas | audio-code |
ID de un audio previamente cargado en la plataforma. |
| URL | url-long |
La URL original que deseas acortar. |
| URL | alias |
(Opcional) Alias personalizado para la URL corta. |
templateId |
ID de la plantilla de WhatsApp aprobada por Meta (para envíos con plantilla). | |
data |
Un mapa (map) de Go que se convertirá a JSON con los valores para la plantilla. | |
from_phone_meta_id |
ID del teléfono de origen registrado en Meta (para envíos sin plantilla). | |
message |
Objeto JSON con type y value del mensaje (para envíos sin plantilla). |
data := url.Values{}
data.Set("client", "12345")
data.Set("key", "*********************")
data.Set("phone", "573001234567")
data.Set("sms", "Este es un mensaje de prueba enviado desde Onurix.com")
data.Set("groups", "1,2,3")Ejemplo de data para WhatsApp:
package main
import (
"encoding/json"
"fmt"
)
func main() {
data := map[string]interface{}{
"phones": "573001234567",
"body": map[int]map[string]string{
1: {"type": "text", "value": "John Doe"},
2: {"type": "text", "value": "ORD-12345"},
},
}
jsonData, err := json.MarshalIndent(data, "", " ")
if err != nil {
fmt.Println("Error marshalling JSON:", err)
return
}
fmt.Println("JSON Data:", string(jsonData))
}Para obtener una descripción detallada de todos los endpoints, parámetros y respuestas de la API, por favor consulta nuestra documentación oficial en https://docs.onurix.com/.
Este proyecto está bajo la Licencia MIT.
Para soporte y preguntas, no dudes en contactarnos:
- Email: soporte@onurix.com
- Website: https://onurix.com
