---
title: "Join event"
method: POST
path: "join"
tags: ["Webhooks"]
---

# Join event

`POST join` (webhook)

Delivered when a `join` function combines outputs from multiple upstream calls into a single transformed payload.

For signing-secret setup and retry semantics that apply to every variant, see the [Webhooks overview](/api/v3/webhooks).

## Payload

- JoinEvent
  - `functionCallTryNumber` integer — The attempt number of the function call that created this event. 1 indexed.
  - `eventID` string, required — Unique ID generated by bem to identify the event.
  - `createdAt` string, date-time — Timestamp indicating when the event was created.
  - `referenceID` string, required — The unique ID you use internally to refer to this data point, propagated from the original function input.
  - `inboundEmail` EventInboundEmail
    - `to` string, required — The email address of the recipient.
    - `deliveredTo` string — The email address of the original intended recipient if the email itself was forwarded.
    - `from` string, required — The email address of the sender.
    - `subject` string, required — The subject of the email.
  - `metadata` object
    - `durationFunctionToEventSeconds` number
  - `eventType` 'join'
  - `functionCallID` string — Unique identifier of function call that this event is associated with.
  - `functionID` string, required — Unique identifier of function that this event is associated with.
  - `functionName` string, required — Unique name of function that this event is associated with.
  - `functionVersionNum` integer — Version number of function that this event is associated with.
  - `callID` string — Unique identifier of workflow call that this event is associated with.
  - `workflowID` string — Unique identifier of workflow that this event is associated with.
  - `workflowName` string — Name of workflow that this event is associated with.
  - `workflowVersionNum` integer — Version number of workflow that this event is associated with.
  - `joinType` 'standard', required — The type of join that was performed.
  - `transformationID` string — Unique ID for each transformation output generated by bem following Segment's KSUID conventions.
  - `transformedContent` object, required — The transformed content of the input. The structure of this object is defined by the function configuration.
  - `invalidProperties` string[], required — List of properties that were invalid in the input.
  - `items` JoinEventItem[], required — The items that were joined.
    - `itemReferenceID` string, required — The unique ID you use internally to refer to this data point.
    - `itemOffset` integer, required — The offset of the first item that was transformed. Used for batch transformations to indicate which item in the batch this event corresponds to.
    - `itemCount` integer, required — The number of items that were transformed.
    - `s3URL` string — The presigned S3 URL of the file that was joined.
  - `fieldConfidences` object — Per-field confidence scores. A JSON object mapping RFC 6901 JSON Pointer paths (e.g. `"/invoiceNumber"`) to float values in the range [0, 1] indicating the model's confidence in each extracted field value.
  - `avgConfidence` number, float, nullable — Average confidence score across all extracted fields, in the range [0, 1].

## Acknowledgement `2XX`

Return any 2XX status code to acknowledge receipt. The exact code is not inspected.

---

[API](https://skmtc.dev/bem-team/apis/bem-api.md) · [All operations](https://skmtc.dev/bem-team/apis/bem-api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/bem-team/bem-api/revisions/a6e4624117c6/schema)
