v1.1.0 — attach a story to many widgets on create
Added
-
widgetsonPOST /v1/stories
Same contract asPUT /v1/stories/:id. The first entry is the primary widget. Response:data.alias(primary) +data.aliases(every attached widget). Eachwidgets[alias]may carryaudiences,productPages,removeProductPages(PUT),widgetOrder,order,schedule,widgetCoverMediaId,widgetPresetAlias,widgetLabel. -
Shopping interaction
pages[].interactionsupportstype: shoppingwithproductIds,buttonType,buttonLabel,shoppingIcon.
Changed
- On create, only
titleandpages(min. 1 page) are required. SendwidgetAliasorwidgets(at least one key), never both (400).widgetPresetAliasis required only when creating a widget that does not exist. - Root
widgetAlias,widgetPresetAlias,widgetCoverMediaId,order,productPages,scheduleare per-widget defaults; preferwidgets. - On PUT,
productPages/removeProductPageslive insidewidgets[alias], not at the root. A 200 means the story was persisted and publish started, not that widgets are live.
Fixed
- Samples now use
https://partner-api.join-stories.com/v1/...(no/v1/story, no/storieswithout/v1, nohttp://, no/upload-media).
Note
- Create / update / delete can take up to 360 s. A multi-store PUT needs a client timeout ≥ 360 s.
v1.0.2 — February 26, 2025
Added
jsonLdingetContainerResponse
ThegetContainerendpoint now returns a jsonLd key containing the structured data of the container. This field is only present when thejsonLd=truequery parameter is provided.
For an example of the returned data, refer to the documentation.
v1.0.1 — April 2, 2025
Added
aliasincreateStoryResponse
ThecreateStoryendpoint now returns the final widgetaliasused. This is useful when the provided alias is modified through normalization (e.g., removal of special characters) before being saved.
Fixed
- More Precise Error Codes
A selection of endpoints now return more specific and descriptive error codes.
v1.0.0 — March 27, 2025
Added
-
CTA Interactions
A new interaction typectais now supported, allowing stories to include call-to-action elements. -
Parameter:
widgetPresetKeepStories
Added a new optional parameterwidgetPresetKeepStoriesto widget-related endpoints. This controls whether existing stories are retained when a widget preset is applied. -
API Versioning
Versioning has been introduced across all endpoints. Endpoints are now accessible via versioned paths (e.g.,/v1/...), supporting backward compatibility for future updates.
Changed
-
Unified Media Type
The separate typesimageandvideohave been merged into a singlemediatype. This change applies across request payloads and responses for consistency. -
getTemplatesResponse Format
The response structure of thegetTemplatesendpoint has been updated to match that of the story creation endpoint, ensuring consistent data formats. -
Enhanced
GET /storiesEndpoint
TheGET /storiesresponse now includes storypagesandinteractions, providing a complete view of story content and behavior.
