
CRM 360 - Api Notificaciones Email
Documentación del método POST /api/v1/notification/delivery
Este método se utiliza para enviar emails a través de una API de notificaciones. Debes realizar una solicitud POST a la ruta /api/v1/notification/delivery y proporcionar los siguientes parámetros en el cuerpo de la solicitud:
URL: /api/v1/notification/delivery
Método: POST
Parámetros en el cuerpo de la solicitud:
company
(string, requerido): El código de la compañía para la cual se enviará el email.
message
(JSON, requerido): El mensaje a enviar, con diferentes formatos según el tipo de mensaje.
destination
(objeto, requerido): Contiene los detalles del destinatario del email.
name
(string, requerido): Nombre del destinatario.email
(string, requerido): Dirección de correo electrónico del destinatario.
html
(string): Contiene el contenido del mensaje en formato HTML plano.
sendgrid
(objeto): Si se especifica, se utilizará este objeto JSON para enviar el email a través de Sendgrid. Debe contener los atributos específicos de Sendgrid.
typeCode
(string, requerido): El tipo de mensaje que se enviará. En este caso, el valor debe ser "email", ya que este método se utiliza para enviar emails.
Ejemplo de solicitud utilizando TypeScript y Axios
import axios, { AxiosResponse } from 'axios';
interface Message {
destination: {
name: string;
email: string;
};
html?: string;
sendgrid?: any; // Utiliza un tipo más preciso si es posible.
}
interface ApiResponse {
status: string;
message: string;
}
const apiUrl = 'https://api.example.com/api/v1/notification/delivery';
const sendMessage = async () => {
const requestBody: {
company: string;
message: Message;
typeCode: string;
} = {
company: 'company_code',
message: {
destination: {
name: 'John Doe',
email: '[email protected]',
},
html: '<p>Contenido del mensaje en formato HTML</p>',
// sendgrid: { ... } // Si deseas enviar a través de Sendgrid, agrega los atributos correspondientes aquí.
},
typeCode: 'email',
};
try {
const response: AxiosResponse<ApiResponse> = await axios.post(apiUrl, requestBody);
console.log('Email enviado:', response.data.message);
} catch (error) {
console.error('Error al enviar el email:', error);
}
};
sendMessage();
Ejemplo de solicitud utilizando curl
curl -X POST "https://api.example.com/api/v1/notification/delivery" \
-H "Content-Type: application/json" \
-d '{
"company": "company_code",
"message": {
"destination": {
"name": "John Doe",
"email": "[email protected]"
},
"html": "<p>Contenido del mensaje en formato HTML</p>"
},
"typeCode": "email"
}'