@revturbine/sdk 0.11.4 → 0.11.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.d.ts CHANGED
@@ -20673,6 +20673,16 @@ interface RevTurbineEndpointOverrides {
20673
20673
  */
20674
20674
  legacyInteractions?: string;
20675
20675
  placementTypes: string;
20676
+ /**
20677
+ * Optional sink for registered surface slots.
20678
+ *
20679
+ * RevTurbine hosts **no default route** for this verb (BL-0197). Slot
20680
+ * registration is client-local and discovery is ingestion-driven — the
20681
+ * pipeline derives discovered slots from the `slot_*` telemetry the SDK
20682
+ * already emits through `/api/track`. Set this only when you run your own
20683
+ * slot-inventory service; unset, `registerSurfaceSlot()` performs no
20684
+ * network write.
20685
+ */
20676
20686
  surfaceSlots: string;
20677
20687
  }
20678
20688
  /** Client-side clickstream batching policy (plan 95 TASK-6). */
@@ -22126,6 +22136,30 @@ declare class RevTurbineCustomerSdk {
22126
22136
  * @public
22127
22137
  */
22128
22138
  registerPlacement(config: RevTurbinePlacementConfig): Promise<string>;
22139
+ /**
22140
+ * Mirror a registered surface slot to an explicitly configured backend.
22141
+ *
22142
+ * **Requires an explicit `surfaceSlots` endpoint override** (BL-0197).
22143
+ * There is no default route for this verb and there never was a correct
22144
+ * one: the previous default pointed at `/api/placements`, RevTurbine's
22145
+ * *authored-config* CRUD. That route validates against `PlacementSchema`
22146
+ * (which requires `handle` and `category`), so the legacy surface-slot body
22147
+ * this method sends could only ever be rejected — in production every
22148
+ * non-`local_only` registration failed with
22149
+ * `surface_slot_create_failed:422` and the React runtime turned that into a
22150
+ * `slot_error`.
22151
+ *
22152
+ * It was also wrong in principle. On a same-origin integration the signed-in
22153
+ * user's session cookie authenticates the request, so a body the route *did*
22154
+ * accept would have let merely loading a gated page create a draft placement
22155
+ * in the tenant's Playbook. Only the 422 prevented that.
22156
+ *
22157
+ * Surface-slot **discovery is ingestion-driven**: the SDK emits its
22158
+ * `slot_*` / `placement_*` telemetry through `/api/track` and the pipeline
22159
+ * derives discovered slots from it. Registration itself is client-local.
22160
+ *
22161
+ * @internal
22162
+ */
22129
22163
  private upsertSurfaceSlot;
22130
22164
  /**
22131
22165
  * Build the internal placement record for a surface-slot config.
@@ -22148,6 +22182,18 @@ declare class RevTurbineCustomerSdk {
22148
22182
  * @internal
22149
22183
  */
22150
22184
  private commitSurfaceSlotRecord;
22185
+ /**
22186
+ * Register a surface slot with the local runtime and return its placement id.
22187
+ *
22188
+ * **Client-local by default** (BL-0197): this performs no network write. The
22189
+ * slot is recorded in the in-process registry, and the pipeline discovers it
22190
+ * from the `slot_*` / `placement_*` telemetry the SDK emits through
22191
+ * `/api/track`. A write happens only when `custom_endpoints.surfaceSlots`
22192
+ * points at a slot-inventory service you run; there is no fallback to
22193
+ * `/api/placements`.
22194
+ *
22195
+ * @public
22196
+ */
22151
22197
  registerSurfaceSlot(config: RevTurbineSurfaceSlotConfig): Promise<string>;
22152
22198
  /**
22153
22199
  * Persist authored placement types to a configured backend.