sendinblue/APIv3-typescript-library

Deprecated, what are the alternatives?

juherr opened this issue ยท 15 comments

juherr commented

I want to integrate brevo in my project and the documentation redirect here.

I see that the project is deprecated since yesterday and it was already the case for libraries in some other languages like php.

What are the alternatives? What should I use instead of the typescript library?

Seriously, why are we not using Typescript anymore?

Need some information on what the update plan is. I have not found any communication about this.

juherr commented

As I understand, there is a move to https://github.com/getbrevo but clients are deprecated before the release of the alternative ๐Ÿ˜…
Unfortunately the communication looks less good than the product ๐Ÿ˜ฌ

The docs are also still pointing to this library, if you check the TS tab? ๐Ÿค”
https://developers.brevo.com/reference/createdoicontact

Any update on alternatives??

I figured the alternative is switching to a different communication provider ๐Ÿ™„

I figured the alternative is switching to a different communication provider ๐Ÿ™„

I was thinking of going with sendGrid, is it a good alternative?

I figured the alternative is switching to a different communication provider ๐Ÿ™„

can't we use nodemailer with brevo?

I figured the alternative is switching to a different communication provider ๐Ÿ™„

can't we use nodemailer with brevo?

Ya, I just ended up using nodemailer and the smtp relay from brevo cause they offer the 300 emails a day on the free plan. Although it would be nice to try out their api with typescript.

I figured the alternative is switching to a different communication provider ๐Ÿ™„

can't we use nodemailer with brevo?

Ya, I just ended up using nodemailer and the smtp relay from brevo cause they offer the 300 emails a day on the free plan. Although it would be nice to try out their api with typescript.

Yep that would be nice, they should maintain their packages or at least give some attention to deprecated ones

image

I figured the alternative is switching to a different communication provider ๐Ÿ™„

can't we use nodemailer with brevo?

Ya, I just ended up using nodemailer and the smtp relay from brevo cause they offer the 300 emails a day on the free plan. Although it would be nice to try out their api with typescript.

can you please tell me what to put in auth:{user:..., pass:......} I tried with brevo email as in username and password but its getting authentication fail errrors

`import { NextRequest, NextResponse } from "next/server";
import nodemailer from 'nodemailer'

export async function POST(request:NextRequest) {

try {
    const {firstName, lastName, email, message} = await request.json();

    const transporter = nodemailer.createTransport({
        host: 'smtp-relay.brevo.com',
        port: 587,
        auth: {
            user: process.env.EMAIL_FROM,
            pass: process.env.BREVO_KEY,
        }
    })

    const mailOption = {
        from: email,
        to: process.env.EMAIL_FROM,
        subject: 'New Contact Form Submission!',
        templateId:2,
        text: `Hello,
        
        You have a new form entry from ${firstName} ${lastName} ${email}.
        
        ${message}
        
        :)`,
    }

    await transporter.sendMail(mailOption)

    return NextResponse.json({message:'Email sent successfully'}, {status:200})

} catch (error:any) {
    return NextResponse.json({message:'Failed sending email'}, {status:500})
}

}`

In your dashboard on brevo, if you go to smtp & api it will show you your SMTP key value. That is the value you need to give they auth:pass

`import { NextRequest, NextResponse } from "next/server"; import nodemailer from 'nodemailer'

export async function POST(request:NextRequest) {

try {
    const {firstName, lastName, email, message} = await request.json();

    const transporter = nodemailer.createTransport({
        host: 'smtp-relay.brevo.com',
        port: 587,
        auth: {
            user: process.env.EMAIL_FROM,
            pass: process.env.BREVO_KEY,
        }
    })

    const mailOption = {
        from: email,
        to: process.env.EMAIL_FROM,
        subject: 'New Contact Form Submission!',
        templateId:2,
        text: `Hello,
        
        You have a new form entry from ${firstName} ${lastName} ${email}.
        
        ${message}
        
        :)`,
    }

    await transporter.sendMail(mailOption)

    return NextResponse.json({message:'Email sent successfully'}, {status:200})

} catch (error:any) {
    return NextResponse.json({message:'Failed sending email'}, {status:500})
}

}`

In your dashboard on brevo, if you go to smtp & api it will show you your SMTP key value. That is the value you need to give they auth:pass

The user is your Login/Email if that wasn't clear

For future reference, it seems the new Node SDK with TS support is here:

https://github.com/getbrevo/brevo-node