Skip to main content
This guide covers setting up email delivery in PropOps, monitoring sent emails, and troubleshooting common issues.

Setting up Brevo

1

Create a Brevo account

Sign up at brevo.com if you don’t already have an account.
2

Generate an API key

In the Brevo dashboard, go to SMTP & API → API Keys and generate a new key.
3

Add to your environment

Set the following variables in your .env file:
BREVO_API_KEY=your-api-key-here
MAIL_FROM_ADDRESS=noreply@yourcompany.com
MAIL_FROM_NAME=Your Company Name
4

Verify your sender domain

In Brevo, go to Senders, Domains & Dedicated IPs and verify the domain you’re sending from. This improves deliverability and prevents emails being marked as spam.

Viewing the email log

1

Open the email log

Go to Admin → Email Log.
2

Search or filter

Use the search bar to find emails by recipient address, or filter by template, date range, or delivery status.
3

View details

Click any email entry to see the full details — recipient, template used, delivery status, and linked job or user record.

Email threading (case notes)

Case-note emails support reply threading — recipients can reply directly from their email client and the reply is attached to the job automatically.
1

Add a case note to a job

Write a case note on the job detail page. All relevant parties receive an email notification.
2

Recipient replies by email

The recipient clicks Reply in their email client and types their response.
3

Reply appears as a case note

PropOps parses the inbound email and attaches it as a new case note on the same job, maintaining the conversation thread.
Email threading preserves the full conversation history on the job record, even if participants prefer email over the web interface.

Troubleshooting

  • Check that BREVO_API_KEY is set correctly in your .env
  • Verify the sender domain is confirmed in Brevo
  • Check the Email Log in Admin for error messages
  • Ensure your sender domain has SPF, DKIM, and DMARC records configured
  • Verify the domain in Brevo’s sender settings
  • Use a professional sender address (avoid noreply@gmail.com)
  • Check that the inbound email parsing webhook is configured correctly
  • Verify the reply-to address matches the expected format
  • Check the webhook logs for parsing errors