---
title: "Get Transactional setup"
method: GET
path: "/api/v1/initiatives/{id}/transactional"
tags: ["Initiatives"]
---

# Get Transactional setup

`GET /api/v1/initiatives/{id}/transactional`

## Request

- Base URL: `https://www.useboom.ai`
- URL: `https://www.useboom.ai/api/v1/initiatives/{id}/transactional`
- Auth: HTTP bearer

A Transactional's setup (event, the optional field that identifies each send, its WhatsApp and email messages with their variable bindings, whether sends wait in Drafts for approval) and what still blocks launching it.

## Path parameters

- `id` string, required: The Transactional id.

## Response `200`

Success

- object
  - `id` string, required
  - `eventName` string, nullable, required
  - `parallelRunsBy` string, nullable, required
  - `whatsapp` object, nullable, required
    - `templateId` string, required
    - `channelId` string, nullable, required
    - `templateBindings` object, required
  - `email` object, nullable, required
    - `templateId` string, required
    - `bindings` object, required
  - `reviewBeforeSending` boolean, required
  - `lookup` object, nullable, required: Loads one custom object record so later steps can use its attributes.
    - `objectType` string: The custom object type name (cdp_custom_object_types_list `name`). Required before publishing.
    - `saveAs` string: The variable name later steps read the record under: saveAs 'brand' → {{brand.logo_url}}, {{brand.primary_color}}; saveAs 'order' → {{order.total | currency:MXN}}. One lowercase word, unique per journey, not customer/person/engagement/event/env. Required before publishing. Publishing checks every <saveAs>.<field> a later step (or its email template) reads is loaded by this node.
    - `lookup` union: How to find the record: 'key' (an id the run carries) or 'relationship' (follow links from the run's person).
      - object
        - `by` 'key', required
        - `keyPath` string, required: A variable path whose value is the record's externalId, e.g. event.merchant_id, engagement.workflowState.merchant_id, person.merchant_id, or a field of another saved record such as order.merchant_id.
      - object
        - `by` 'relationship', required
        - `path` union[], required: Hops from the run's person to the record: first a PERSON_OBJECT edge (relationship role + the linked type's id), then OBJECT_OBJECT edges. [] means the type is linked to the person directly. Must match a path the relationship registries allow (checked at publish); the journey builder lists them.
          - union
            - object
              - …
            - object
              - …
    - `attributes` string[]: The record's attributes to make available to later steps (at least 1, at most 30), read as {{<saveAs>.<attr>}}. Strings longer than 2000 characters are cut.
    - `orderBy` object: When several records match, the one with the lowest ('asc') or highest ('desc') value of this attribute wins; records missing it come last. Without orderBy, several matches load nothing.
      - `attribute` string, required
      - `direction` 'asc' | 'desc', required
  - `journeyStatus` 'DRAFT' | 'PUBLISHED' | 'STOPPED', nullable, required
  - `readyToLaunch` boolean, required: True when nothing below blocks `initiatives_launch`.
  - `missing` object[], required: What still blocks launch, each with how to fix it.
    - `code` string, required
    - `message` string, required

## Other responses

- `400`: Validation failed or the request cannot proceed.
- `401`: Missing, malformed, or revoked API key.
- `404`: The resource does not exist in this organization.
- `409`: Conflicts with the current state (duplicates, wrong lifecycle state).
- `422`: The request is well-formed but semantically invalid.
- `429`: Rate limit exceeded — retry after `Retry-After`.
- `500`: Internal server error.
- `503`: Transient error — retry with a narrower request.

## Changes

- **2026-11-05** `d596d92ed092`: 1 info
  - added the required property `lookup` to the response with the `200` status
- **2026-11-03** `7c7a773b12ce`: 1 info
  - endpoint added

[Operation history](https://skmtc.dev/useboom/apis/boom-api/changes/api/v1/initiatives/:id/transactional/get.md)

---

[API](https://skmtc.dev/useboom/apis/boom-api.md) - [All operations](https://skmtc.dev/useboom/apis/boom-api/llms.txt) - [OpenAPI document](https://skmtc.dev/useboom/apis/boom-api/revisions/d596d92ed092?raw)
