Metafore
Building Apps

Integrations and the Meta Graph

Connect external systems, and see the whole enterprise as a graph.

Integrations

Integrations connect your apps to external data and systems. Two integration types are supported, each with its own tab:

  • REST — connect REST APIs as data sources: define the connection, then its endpoints. Agents use these through their data tools.
  • Camel — route-based integrations (Apache Camel) for more complex enterprise messaging patterns, with an XML route editor.

Click + Add Integration to create one. Existing integrations are searchable and sortable, and each opens into a detail view with its connection settings and endpoints.

Open Integrations from the Solutions sidebar to view all integrations in your enterprise.

The integrations list

The main page shows integrations as a card grid organized into two tabs: REST (default) and Camel. Each card displays the integration name, description, type badge, an enabled/disabled toggle, and a relative timestamp. Hover over the info icon on any card to see who created it, when it was created, and who last updated it.

Use the controls above the grid to:

  • Search — filter by name; results update as you type.
  • Sort — order by name (A–Z / Z–A) or creation date (newest / oldest first).

The grid loads 20 integrations at a time and fetches more automatically as you scroll.

Two integration types

TypeWhat it does
REST APIConnects to any HTTP-based API. You define a base URL, authentication, and individual endpoints your agents can call.
CamelRuns Apache Camel process flows defined in XML DSL. Can be executed on demand or on a cron schedule.

Creating an integration

Click Add Integration (top-right). A modal opens with a guided form.

Every integration requires a Name (up to 255 characters) and an Integration type (REST or Camel). Description is optional (up to 255 characters). The remaining fields adapt to the type you choose.

REST integration

  1. Base URL — the root URL of the external API (e.g. https://api.example.com). Required and must be a valid URL. All endpoints you add later are relative to this base.
  2. Auth type — how the platform authenticates with the API. See Authentication below.
  3. Headers — optional custom HTTP headers (key-value pairs) sent with every request.
  4. Visibility & scope — decide whether all agents can use this integration or only specific ones. See Visibility & agent scoping.

Camel integration

  1. Camel configuration — a code editor where you write or paste the Apache Camel route definition in XML DSL. Required.
  2. Scheduler — optionally enable a cron-based schedule to run the integration automatically. See Scheduler.
  3. Visibility & scope — same controls as REST.

Click Confirm to create the integration.

Authentication

REST integrations support five authentication methods. Auth is configured at the integration level and applies to all endpoints under it.

Supported auth types

Auth typeRequired fields
No AuthNone. A warning reminds you to add authentication for production use.
Bearer TokenBearer token (masked input).
API KeyAPI key (masked input).
Basic AuthUsername and password.
OAuth 2.0Token URL, Client ID, Client Secret, and Scopes (space-separated). Grant type is fixed to Client Credentials.

Sensitive fields (passwords, tokens, secrets) are masked by default. Click the eye icon next to any field to reveal the value while editing.

Custom headers

Below the auth configuration you can add custom HTTP headers as key-value pairs. Click Add to insert a row, then enter the header name and value. These are sent with every request made through the integration.

Managing REST integrations

Click any REST card to open its detail page. This is where you manage the integration's endpoints, connection settings, and access controls.

Endpoints

The detail page shows a table of all endpoints configured under this integration. Each row displays:

  • HTTP method badge (GET, POST, PUT, DELETE, PATCH)
  • Endpoint name and path
  • Updated by and last updated on

You can sort by any column, search by name or path (when there are more than 10 endpoints), and filter by HTTP method using the method badges above the table.

Click Add new endpoint to create one, or click any row to open its configuration.

Configuring an endpoint

The endpoint configuration page lets you define exactly how a request should be made:

  • Endpoint name — a human-readable label (up to 100 characters).
  • HTTP method — select GET, POST, PUT, DELETE, or PATCH.
  • Request path — the URL path appended to the integration's base URL (e.g. /users/{id}/orders).

Below the URL bar, five tabs configure different parts of the request:

TabWhat it controls
ParamsQuery parameters sent as ?key=value pairs in the URL.
HeadersAdditional HTTP headers specific to this endpoint.
BodyThe request body (for POST, PUT, PATCH). Must be valid JSON.
VariablesTemplate variables (e.g. ${filterQuery}) that can be referenced in the path or body. Each has a name, data type (String or Integer), description, and a test value.
ResponseAfter running the endpoint, the API response appears here. You can also configure response mappings (JSON path → mapping key) to extract specific fields.

Testing an endpoint

Click Run in the top-right of the endpoint form to execute the request against the live API. The Response tab activates automatically to show the result. Fill in any template variables with test values in the Variables tab before running.

Below the endpoints list you will also find the Visibility controls for the integration.

Managing Camel integrations

Click any Camel card to open its detail page. The page is organized into four sections: the XML DSL editor, the scheduler, visibility controls, and execution.

The XML DSL editor

The code editor occupies the top section and contains your Apache Camel route definition in XML. It supports syntax highlighting, copy-to-clipboard, fullscreen mode, and light/dark theme switching.

Edit the XML directly in the browser. Changes are tracked locally until you publish them.

Scheduler

The scheduler runs a Camel integration automatically on a recurring schedule using cron expressions.

  1. Enable the scheduler — toggle the switch to "Enabled." The cron editor appears.
  2. Set the cron expression — the editor shows five fields: minute, hour, day, month, and weekday. Click any field label to highlight it, then edit the corresponding part of the expression. A human-readable summary (e.g. "Every day at 3:00 AM") appears below, along with the next scheduled run date.
  3. Review warnings — the platform warns you if the schedule runs more frequently than every 5 minutes (high resource usage) or if the next run is more than 30 days away (to confirm it's intentional).

Scheduler changes only take effect after you click Publish.

Execute & test

At the bottom of the Camel detail page is the Execute Integration section:

  1. Add input parameters — use the input parameter table to define key-value pairs the integration expects. Each parameter has a name, data type, and value.
  2. Run the integration — click Run to execute the Camel route with the provided parameters.
  3. Review the response — the response view shows execution status, output payload, outbound variables, duration, and any error messages.

Visibility & agent scoping

Every integration has a visibility setting that controls which agents can use it:

  • Public — anyone in your workspace can view and use this integration. All agents have access by default.
  • Private — only the agents you explicitly select can use this integration.

When you choose Private, a Scope with agents panel appears. Click Add agent to open the agent selection modal. Selected agents appear in a table showing the agent name, which apps it's used in, and tool counts (data tools, knowledge tools, process flow tools). To remove an agent's access, use the menu on its row and select Remove.

A visibility badge (Public or Private) is shown in the header of each integration detail page.

Publishing changes

Changes on an integration's detail page — editing XML, adjusting the schedule, changing visibility, or updating agent scope — are held locally until you publish them.

The Publish button in the page header activates whenever there are unpublished changes. A warning icon appears next to it as a visual reminder. When there are no changes, the button is disabled.

Clicking Publish opens a confirmation: "Once published, these changes will apply to all connected apps and may impact their functionality." Confirm to save all changes.

For Camel integrations, publishing uploads the XML DSL file and updates the configuration. For REST integrations, publishing saves visibility and agent scope changes. Individual endpoint changes have their own Publish button in the header.

Editing & deleting

You can edit or delete integrations from the integrations list or the integration detail page.

From the list — hover over any card and click the three-dot menu (⋮):

  • Edit details — opens a modal to change the name and description (Camel) or the full connection settings (REST: name, description, base URL, auth, headers).
  • Delete — opens a confirmation dialog.

From the detail page — the three-dot menu in the page header offers the same Edit and Delete actions.

When editing a REST integration, an unsaved-changes guard warns you if you try to close the modal with uncommitted edits.

Dependency checks

Before deleting or disabling an integration, the platform checks whether any apps depend on it. If dependencies exist:

  • A modal lists the apps and agents that use the integration.
  • Each app name links to the app's tool configuration in a new tab so you can review the impact.
  • You can still proceed with Proceed to delete (or Proceed to disable), but the action may break those apps.

Deleting an integration removes all its configurations and endpoints permanently. This cannot be undone.

Enabling and disabling

Each integration card has a toggle switch. Turning it off disables the integration — agents can no longer use it — but preserves all configuration. The same dependency check applies when disabling. To re-enable, toggle it back on.

Permissions

Access to integrations is governed by role-based permissions:

ActionFull accessView only
View integrations list and details
Search and sort
Create new integrations
Edit name, description, or connection
Enable / disable
Add, edit, or delete endpoints
Change visibility or agent scope
Publish changes
Delete integrations

Full access is granted to Enterprise Admins. View only is the default for Platform Users. When you have view-only access, all mutation controls (create, edit, toggle, delete, publish) are hidden from the interface.

Meta graph

Meta graph renders your enterprise as an interactive graph — apps, agents, goals, objects, knowledge, and integrations as nodes, with their relationships as edges. Use it to answer "what uses what?" at a glance: which agents power which apps, which knowledge feeds which agent, which integrations an app depends on. A legend and detail panel accompany the canvas, and a search box helps you find nodes in large graphs.