---
title: "Upstash Connector | Tajo"
description: "Implementation notes for building and operating the Upstash connector in Tajo."
url: https://tajo.io/docs/connectors/upstash/
markdown: https://tajo.io/docs/connectors/upstash.md
lang: en-US
author: "Set Noa"
author_url: https://tajo.io/set-noa/
robots: noindex
---

# Upstash Connector

[Set Noa](https://tajo.io/set-noa/)

Connector status: In progress Being built. Not verified yet.

| Source field | Destination field | Sample value |
| --- | --- | --- |
| `record.id` | `source_id` | `record_1042` |
| `record.updated_at` | `updated_at` | `2026-10-18T08:00:00Z` |
| `record.value` | `value` | `sample_value` |

Connector implementation

## Build the Upstash integration

Upstash QStash message delivery: delivery logs with a time delta, dead letters and schedules; read only, never a message body, a header or anything in a Redis database

Developer Tools

*Upstash connector flow from source system to Tajo mapping and Brevo activation.*

## Implementation Overview

**Build target**

Implement an Upstash connector that authenticates to the vendor surface, normalizes source records in Tajo, and activates eligible data in Brevo.

**Current status**

Treat this as an implementation guide. Build and validate the auth, mapping, sync, and operations paths before production use.

**Primary surface**

upstash.com/docs/qstash/api-reference/logs/list-logs

| Property | Value |
| --- | --- |
| Integration surface | OpenAPI |
| Status | In progress |
| Category | Developer Tools |
| Setup complexity | medium |
| Vendor documentation | [upstash.com/docs/qstash/api-reference/logs/list-logs](https://upstash.com/docs/qstash/api-reference/logs/list-logs) |
| Allowed host | Not recorded |
| Base URL | Not recorded |
| OpenAPI schema | Not recorded |
| MCP server | Not recorded |
| Last researched | 2026-11-01 |

QStash’s own OpenAPI document is vendored on 2026-11-01. A free plan exists with no card. Section B.2 of the terms says accounts registered by bots or other automated methods are not permitted.

## Authentication

- Keep [upstash.com/docs/qstash/api-reference/logs/list-logs](https://upstash.com/docs/qstash/api-reference/logs/list-logs) linked from the connector runbook so operators can confirm vendor behavior during incidents.
- Store credentials per Tajo workspace and keep tenant-specific secrets out of connector configuration files.
- Add a credential smoke test that verifies read access to a harmless resource before running backfills or enabling webhooks.

## Data To Sync

Start with these inferred data domains, then confirm exact vendor resources and permissions from the source documentation:

- Campaign, messaging, or audience state
- Custom objects and operational metadata

The connector should make source records idempotent by keeping a stable key such as a vendor object ID, email address, event ID, ticket ID, order ID, or campaign ID. If the vendor only exposes list APIs, Tajo should store the cursor strategy and replay policy explicitly.

## Sync Shape

No typed contract exists for Upstash, so the direction of each resource and its conflict handling are not recorded. Direction is declared per resource on a connector contract; see the [connector catalog](https://tajo.io/docs/connectors) for how contracts are promoted.

## Mapping To Tajo/Brevo

No Brevo projection is recorded for Upstash. A projection is declared on a typed connector contract, and Upstash does not have one yet, so this page will not state a mapping it cannot source.

The conventions that apply to every connector — stable external IDs, normalization, backfill and sync strategy, error handling, and the builder checklist — are documented once under “Applies to every connector” on the [connector catalog](https://tajo.io/docs/connectors).

## Sources

- [Vendor documentation](https://upstash.com/docs/qstash/api-reference/logs/list-logs)
- [upstash.com/docs/qstash/openapi.yaml](https://upstash.com/docs/qstash/openapi.yaml)
- [upstash.com/docs/qstash/howto/readonly-token](https://upstash.com/docs/qstash/howto/readonly-token)
- [upstash.com/docs/qstash/howto/multi-region](https://upstash.com/docs/qstash/howto/multi-region)
- [upstash.com/pricing/qstash](https://upstash.com/pricing/qstash)
- [upstash.com/trust/terms.pdf](https://upstash.com/trust/terms.pdf)
