ContentCreator · Reports & integrations

Report Integrations in ContentCreator

Integrations are how FirstSpirit reaches beyond its own repository — pulling external content in, sending content out to other systems, and wiring third-party services into everyday editing. They surface in many places: a search-and-pick field on a form, a button that calls an API, a workflow step, an upload connector, an AI action, a background sync — and, most visibly, the report sidebar in ContentCreator. This guide first maps where integrations live across FirstSpirit, then focuses on report integrations: it walks through two of them (Project History and a YouTube search report) and shows how an editor uses a report result on a page.

AI generated Heads up: This documentation was generated with AI and may contain inaccuracies or out-of-date details. Always verify critical information against the official FirstSpirit documentation before relying on it.

Where integrations live in FirstSpirit

“Integration” is a broad idea in FirstSpirit: any point where the CMS connects to something outside a single editor's typing — another system, the wider repository, or an AI model. Some integrations bring data in (a product catalogue, a video library, a digital-asset manager); others push content out (to a translation service, a deployment target, a messaging channel). They appear at six main touchpoints:

Where it livesWhat it doesHow you meet it as an editorExample
Report sidebarStreams repository or external data into a side panel you can search and drag from.An icon in the right-hand report rail.The YouTube report in this guide.
On a content object / form fieldA field that searches an external system so you can pick a record, or a button that runs an action on the object you are editing.A search-and-pick list or a button inside the editing form.Pick a product from an external PIM; a button that turns an address into map coordinates.
In a workflowA workflow step that calls an external system as content moves through review and release.A workflow action button in the status dialog of a page, section or dataset.An Approve step that sends the text to a translation service or posts a notice to a chat channel.
In asset management / uploadsA connector that brings an external media library into FirstSpirit, or logic that runs when media is uploaded.Browsing external assets in a picker, or automatic handling the moment you upload.A DAM picker that places remote images; a service that syncs an external asset library into the Media Store.
In AI / Smart featuresThe AI assistant calls registered functions against external systems while it generates, translates or summarises.Generate / translate / summarise actions that reach live, project-specific data.A translation that pulls approved terminology from a glossary mid-generation.
In the backgroundScheduled tasks and always-on services sync data or listen for events with no editor present.You see the result — fresh datasets, imported media — not the mechanism.A nightly task that imports an external product feed into the Content Store.

Whatever the touchpoint, the pattern is the same: a developer builds the connector as a module, and you use the finished result. The rest of this guide zooms in on the most visible touchpoint — the report sidebar.

For developers. Each touchpoint maps to a real extension point. Report panels and search-and-pick lists are Data Access Plugins (DataAccessPlugin, surfaced in forms through FS_INDEX); form buttons run an Executable wired to an FS_BUTTON; workflow steps run workflow Executables bound to their transitions; media/DAM connectors are built as a Service (often paired with a Data Access Plugin for the picker); background jobs are schedule tasks (ScheduleTaskApplication) or long-running services; and AI actions use the Generative AI Connector (GenerativeAIConnectorPlugin) with function calling (GenerativeAIFunction). All are packaged in an FSM module and declared in module.xml.

What are report integrations?

When you edit a page in ContentCreator, the page preview sits in the middle of the screen and a slim rail of icons runs down the right-hand edge. Each icon opens a report — a panel that slides in from the right and shows information related to your work.

Some reports are built into FirstSpirit; others are integrations added to a project to pull in data from elsewhere — the FirstSpirit repository (revisions, media, bookmarks) or an external service (a video platform, a digital-asset manager, a translation system, and so on). To an editor they all look and behave the same way: click an icon, a panel opens, you read or search, and you can often drag a result directly into the page.

ContentCreator editing a Smart Living demo page: the page preview fills the centre, the FirstSpirit toolbar runs across the top, and a vertical rail of report icons runs down the right-hand edge
ContentCreator editing a page. The report rail runs down the right edge; each icon opens a different report panel.
The screenshots in this guide come from a FirstSpirit demo project. Which reports appear in your project — and which integrations are available — depends on the modules your administrators have installed and how the project is configured.

The report sidebar

The report rail collects every report available in the project into one column. A typical rail mixes standard FirstSpirit reports with project-specific integrations, for example:

ReportWhat it shows
SearchFull-text search across the project's content.
BookmarksObjects you have marked for quick access.
Tasks / workflowsItems waiting on you in a release or editorial workflow.
Project HistoryThe change history of the object you are editing (see below).
Media & dataReports that list media, datasets or other repository content.
IntegrationsProject-specific reports that reach out to an external service — for example the YouTube report described below.

Click an icon to open its panel; click it again (or the collapse control) to close it and return the full width to the preview. Only one report panel is open at a time.

How an integration works

A report integration is typically a small module that does three things: it queries a data source, it renders the results as a list in the report panel, and it lets the editor act on a result — for example, drag it onto the page. The source can be the FirstSpirit repository itself or an external system reached over an API. What that action does is up to how the integration was built: dragging a result onto your website or frontend could automatically create the matching section, drop in an image, add a dataset reference or a link, or fill a field on the object you are editing.

FirstSpirit repository Pages, media, revisions External service / API e.g. a video platform, DAM Report integration Queries a source and renders the results as a report in the sidebar ContentCreator Page content slot Reports drag
A report integration queries a source — repository or external API — renders the results in the sidebar, and lets the editor drag a result onto the page.
Note: Building a report integration is a developer task — the queries, the result layout and what a dragged result becomes on the page are all defined in a module. As an editor you consume the finished report; you don't configure it.

The Project History report

The Project History report answers a common question: what happened to this object, and who did it? Open it while a page or section is selected and it lists that object's revisions, newest first.

The panel has two tabs — Project (history across the whole project) and Detail (history of the selected object) — and a My changes filter to narrow the list to your own edits. A header chip shows which object the history belongs to, and a results count with a refresh control sits above the list.

Each entry in the list carries three things:

Part of an entryMeaning
WhoThe account that produced the revision. This can be a person or an automated process (a deployment tool, an import).
WhenThe date and time of the revision.
StateWhat kind of change it was — for example Created, Released, or Archived.

Because deployment and import steps also write to the history, you will see machine-generated entries alongside human edits — for example a revision labelled "Imported by fs-cli" (a command-line deployment) or one tied to a project-template update. That is normal: the history is a complete audit trail, not just a list of editor saves.

The Project History report open on the right: a Project/Detail tab switcher, a My changes filter, a results count of 7, and a list of revisions each showing an author, a timestamp and a state such as Released, Imported by fs-cli, Archived or Created. The author names are masked in this guide.
The Project History report for a selected object. Each row shows who changed it, when, and the state of the change. The author names are masked in this screenshot.
The author names in the screenshot above are deliberately masked for this guide. In your project each entry names the real account — a colleague, or a service account used by a deployment.

The YouTube report

The YouTube report is an example of an integration that reaches outside FirstSpirit. Instead of showing repository content, it searches a configured video channel and returns matching videos — ready to embed on a page.

The panel gives you:

  • a search field to type a keyword;
  • a channel filter (an All Channels dropdown) to limit the search to one configured channel;
  • a results count with a refresh control; and
  • a scrollable list of videos, each with a thumbnail, title and short description.

Opening the report with no search term lists everything the configured channel offers. Typing a keyword narrows it — searching for smart, for instance, reduces a long list to the handful of videos that match.

The YouTube report open on the right: a search field, an All Channels dropdown, a results count, and a scrollable list of video results each with a title, description snippet and thumbnail
The YouTube report. A search field and channel filter sit at the top; results appear below as a scrollable list of videos with thumbnails.

Placing a result on the page

A report is only half the story — the point of an integration like this is to use a result. In this demo project it is wired so that dragging a video out of the report and dropping it onto your page can automatically create the corresponding section — here, a section that embeds the video, complete with the usual section toolbar for further editing. A different project could wire the same gesture to do something else entirely, so treat the steps below as how it behaves here, not a fixed rule:

  1. Open the YouTube report and search for the video you want.
  2. Drag the result from the panel onto an empty content area (or an add-content slot) in the page.
  3. Release the mouse. In this project a new video section appears in the page, playing the chosen video.
  4. Adjust the section like any other — use its toolbar to move, edit or remove it — then save and release the page.
A video dragged from the YouTube report has become an embedded video section in the page, showing a video player with playback controls; the YouTube report with a narrowed result list stays open on the right
A video dragged from the report becomes an embedded video section in the page. The report stays open on the right so you can add more.
What a dragged result becomes on the page — here, an embedded video section — is defined by the integration and the project's section templates. Another integration might drop in an image, a dataset reference or a link instead.

Tips & good practice

  • One panel at a time. Opening a report replaces the one that was open. Collapse the panel to give the preview its full width back.
  • Search before you scroll. Reports that list or fetch a lot of content — history, media, videos — are much quicker to use through their search field or filter.
  • Read the history before you edit. A quick look at Project History tells you who touched an object last and whether it is released — useful before making or releasing a change.
  • Expect machine entries. Deployments and imports appear in the history as automated revisions; they are part of the audit trail, not errors.
  • Drag, don't copy. Where an integration supports it, use its drag-and-drop to place a result — it can wire up the right section template for you instead of you pasting a raw link or ID.
  • Your reports may differ. The rail reflects your project's modules and configuration; another project will offer a different set of integrations.