Reference
For partner devsManifest schema
Field-by-field reference for the integration manifest.
Every integration package declares a manifest under the appbrew key of its package.json. The manifest is what surfaces your integration to merchants: the settings form they fill in, where those values land in app config, and whether enabling the integration needs an app release. The integrations model explains how it fits together.
Manifest fields
Prop
Type
Setting fields
Each entry in settings:
Prop
Type
A complete example
{
"name": "@app-brew/acme-reviews",
"appbrew": {
"configKey": "acme-reviews",
"requiresNativeBuild": false,
"settings": [
{ "key": "apiKey", "title": "API key", "type": "text", "secret": true },
{ "key": "storeId", "title": "Store ID", "type": "text" },
{
"key": "widgetPosition",
"title": "Widget position",
"type": "select",
"required": false,
"options": [
{ "id": "above-description", "label": "Above description" },
{ "id": "below-description", "label": "Below description" }
]
}
]
}
}Your code reads the values merchants enter through useIntegrationSettings('<configKey>'). See Build an integration.
Validating
Validate your manifest with the platform schema before publishing:
import { IntegrationManifestSchema } from '@gauntlet/schemas'
IntegrationManifestSchema.parse(require('./package.json').appbrew)
