Integrations
Notifications
Basta sends your bidders and consignors email and SMS notifications on your behalf — bid confirmations, outbid alerts, won lots, sale reminders, and more. This page covers that end-user notification system: the catalog, the channels, and how you configure it.
Notifications vs. Webhooks. Notifications are emails and text messages the platform sends to your users. If you want Basta to notify your own server when something happens, you want Webhooks (Action Hooks) instead — a separate, developer-facing event feed.
How it works
Notifications fire automatically off platform events — a bid is placed, a lot is closing soon, a registration is approved. You stay in control of delivery and content:
- Connect your own SendGrid (email) and/or Twilio (SMS) account.
- Map each notification to your own template — a SendGrid dynamic template ID or a Twilio content SID — optionally per sale type.
- Toggle which notifications are active, per channel.
- Your end-users manage their own opt-in / opt-out preferences.
Basta doesn't ship template content — your account owns its templates in its own SendGrid and Twilio.
Delivery channels
- Email — sent through SendGrid dynamic templates.
- SMS — sent through Twilio content templates.
Push notifications are not currently available. Notifications are delivered over email and SMS only.
Who receives notifications
Every notification is addressed to one of three audiences:
| Audience | Who |
|---|---|
BIDDER | Bidders and buyers on the buy side of a sale. |
CONSIGNOR | Consignors and sellers on the sell side of a sale. |
IDENTITY | People mid-authentication (email verification, sign-in codes). These are transactional and can't be opted out of. |
Scheduled reminders can fan out to audience groups such as a sale's registrants, bidders, watchlist, item watchers, or consignors.
The notification catalog
Each entry below is a NotificationEvent you can activate, template, and route per channel.
Bidder & buy-side
| Event | Description | Channels |
|---|---|---|
BID_CONFIRMATION | Bid confirmation | Email, SMS |
BID_CONFIRMATION_OUTBID | Bid confirmation, already outbid | Email, SMS |
OUTBID | Outbid | Email, SMS |
AUTO_BID_PLACED | Automatic (max) bid placed | Email, SMS |
SALE_ITEM_WON | Lot won | Email, SMS |
BUY_NOW_PRICE_REDUCED | Price reduced (offer-makers and item watchers) | |
SALE_ITEM_REGISTRATION_PHONE | Phone bidding registration | Email, SMS |
SALE_REGISTRATION_PENDING | Sale registration pending | Email, SMS |
SALE_REGISTRATION_ACCEPTED | Sale registration approved | Email, SMS |
SALE_REGISTRATION_REJECTED | Sale registration declined | Email, SMS |
OFFER_PLACED_CONFIRMATION | Offer placed | |
OFFER_COUNTERED | Offer countered | |
OFFER_REJECTED | Offer declined | |
DIRECT_SELL_WON | Item bought |
Seller & consignor
| Event | Description | Channels |
|---|---|---|
OFFER_RECEIVED | Offer received | |
OFFER_WITHDRAWN | Offer withdrawn | |
DIRECT_SELL_SOLD | Item sold | |
CONSIGNOR_SALE_ITEM_OPENED | Lot open for bidding | |
CONSIGNOR_SALE_ITEM_RESERVE_MET | Reserve met | |
CONSIGNOR_SALE_ITEM_RESERVE_NOT_MET | Reserve not met at close | |
CONSIGNOR_SALE_ITEM_SOLD | Lot sold |
Scheduled reminders
| Event | Description | Audience | Channels |
|---|---|---|---|
SALE_ABOUT_TO_CLOSE | Sale closing soon | Bidder | Email, SMS |
CONSIGNOR_SALE_ABOUT_TO_CLOSE | Sale closing soon | Consignor |
Scheduled notifications are planned per sale with a configurable lead time before the sale closes.
Identity
Transactional notifications tied to the authentication flow. They are always sent and can't be disabled or opted out of.
| Event | Description | Channels |
|---|---|---|
IDENTITY_EMAIL_VERIFICATION | Email verification | |
IDENTITY_PASSWORD_RECOVERY | Password reset | |
IDENTITY_LOGIN_CODE | Sign-in code | |
IDENTITY_REGISTRATION_CODE | Sign-up code |
Configuring notifications
You configure notifications from your back office through the Management API. First connect a provider, then activate and template the notifications you want.
Connect a provider
Add your SendGrid and/or Twilio credentials. These mutations require the WRITE_ACCOUNT permission.
# Connect SendGrid for email delivery
mutation ConnectSendGrid($input: CreateSendGridNotificationIntegrationInput!) {
createSendGridNotificationIntegration(input: $input) {
id
}
}
# Connect Twilio for SMS delivery
mutation ConnectTwilio($input: CreateTwilioNotificationIntegrationInput!) {
createTwilioNotificationIntegration(input: $input) {
id
}
}Related operations: updateSendGridNotificationIntegration, rotateSendGridNotificationIntegrationApiKey, and revealSendGridNotificationIntegrationApiKey. List connected providers with notificationIntegrations.
Review the catalog
notificationCatalog returns every notification alongside this account's current configuration — which are active, and which templates and channels are mapped.
query NotificationCatalog($accountId: String!) {
notificationCatalog(accountId: $accountId) {
entries {
# event, audience, channels, status, and mapped templates
}
}
}Map templates and toggle notifications
setNotificationConfiguration maps a notification (by event, audience, and channel) to your own template — a SendGrid dynamic template ID or a Twilio content SID — with optional lead times for scheduled reminders and, where relevant, a per- SaleType template. Use setNotificationConfigurationStatus to switch a configuration ACTIVE or INACTIVE.
# Map a template and settings for one notification
mutation SetNotificationConfiguration($input: SetNotificationConfigurationInput!) {
setNotificationConfiguration(input: $input) {
# ...
}
}
# Activate or deactivate a configured notification
mutation SetNotificationConfigurationStatus($input: SetNotificationConfigurationStatusInput!) {
setNotificationConfigurationStatus(input: $input) {
# ...
}
}Input shapes such as SetNotificationConfigurationInput (and its InstantNotificationConfigurationInput / ScheduledNotificationConfigurationInput variants) evolve — check the Management API explorer for the complete, current field list before wiring these up.
End-user preferences
Bidders manage their own notification preferences through the Client API while signed in. Preferences are per event and per channel; by default email is on and SMS is off. Identity notifications are always sent regardless of preferences.
# Read the signed-in user's preferences
query MyNotificationSettings {
notificationSettings {
preferences {
# event, channel, and whether it's enabled
}
}
}
# Update the signed-in user's preferences
mutation SetMyNotificationPreferences($preferences: [UserNotificationPreferenceInput!]!) {
setMyNotificationPreferences(preferences: $preferences) {
# ...
}
}Related
- Webhooks — notify your own server when events occur (the developer-facing event feed).
- Registrations — the approval events behind several bidder notifications.
- Management API — where notifications are configured.
Support
Questions about notifications? Email us at hi@basta.app.