Skip to content

update_application

Apply a partial update. body.capabilities is a map of capability_id to ‘enabled’|‘disabled’, accepted only for capabilities OPTIONAL for the application and allowed by the registry. ‘disabled’ clears the override to the profile default. The app_builder profile’s OPTIONAL ids are files_assets, content_publishing, and public_api. public_api cannot be disabled through this tool, and it cannot be enabled through update_application while it is disabled, because a disabled public_api refuses this tool too: change it in the application’s settings in the console.

body.trustedImageOrigins (list of https origins) governs images on page-builder pages. body.siteCsp governs a hosted bring-your-own front-end site: a directive-keyed map of https origin lists (img, script, style, connect, font, media, frame, frame_ancestors) plus the booleans style_unsafe_inline (adds ‘unsafe-inline’ to style-src) and script_wasm (adds ‘wasm-unsafe-eval’ to script-src so the bundle may compile WebAssembly it ships). The two are separate; enabling a site seeds siteCsp.img from trustedImageOrigins only when siteCsp was never set.

body.structuredData is the application’s JSON-LD for SEO: a JSON object or an array of JSON objects, at most 16384 bytes after compact UTF-8 serialization. null removes it; omitting the key preserves the stored value.

body.allowedOrigins lists the origins that may call the application’s API cross-origin with credentials on its own hosts, such as a Capacitor shell’s capacitor://localhost: at most 20 unique scheme://host[:port] values with no path, stored lowercase. Accepted schemes are https, capacitor, ionic, and http only for localhost. Every write, [] included, requires the mobile_distribution capability to be enabled for the application. [] clears the list; omitting the key keeps it.

See https://docs.merofoundry.app/recipes/tool-update-application for the capability ids and the siteCsp directives.

{
"additionalProperties": false,
"properties": {
"application_id": {
"title": "Application Id",
"type": "string"
},
"body": {
"additionalProperties": true,
"title": "Body",
"type": "object"
},
"idempotency_key": {
"title": "Idempotency Key",
"type": "string"
}
},
"required": [
"application_id",
"body",
"idempotency_key"
],
"title": "update_applicationArguments",
"type": "object"
}
{
"description": "Schema for application data in responses.",
"properties": {
"allowedOrigins": {
"items": {
"type": "string"
},
"title": "Allowedorigins",
"type": "array"
},
"auditRetentionDays": {
"default": 91,
"title": "Auditretentiondays",
"type": "integer"
},
"componentPack": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Componentpack"
},
"createdAt": {
"anyOf": [
{
"format": "date-time",
"type": "string"
},
{
"type": "null"
}
],
"title": "Createdat"
},
"createdBy": {
"format": "uuid",
"title": "Createdby",
"type": "string"
},
"customDomain": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Customdomain"
},
"description": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Description"
},
"googleAnalyticsMeasurementId": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Googleanalyticsmeasurementid"
},
"icon": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Icon"
},
"id": {
"format": "uuid",
"title": "Id",
"type": "string"
},
"identityModelId": {
"anyOf": [
{
"format": "uuid",
"type": "string"
},
{
"type": "null"
}
],
"title": "Identitymodelid"
},
"identitySettings": {
"additionalProperties": true,
"title": "Identitysettings",
"type": "object"
},
"mcpSettings": {
"additionalProperties": true,
"title": "Mcpsettings",
"type": "object"
},
"modelsWithoutApiKeyAccess": {
"items": {
"format": "uuid",
"type": "string"
},
"title": "Modelswithoutapikeyaccess",
"type": "array"
},
"name": {
"title": "Name",
"type": "string"
},
"previewOrigin": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"description": "HTTPS origin of the preview host (`<label>--preview.<parent>`) of the assigned platform subdomain, or null when no platform subdomain is assigned, no parent is configured, or the label cannot carry the preview suffix.",
"title": "Previeworigin"
},
"pushRegistrations": {
"anyOf": [
{
"description": "Active registrations per platform; the application read shapes carry it.",
"properties": {
"apns": {
"default": 0,
"title": "Apns",
"type": "integer"
},
"fcm": {
"default": 0,
"title": "Fcm",
"type": "integer"
}
},
"title": "PushRegistrationCountsResponse",
"type": "object"
},
{
"type": "null"
}
],
"description": "Active push device registrations of this application per platform (`apns`, `fcm`). Counts only, never tokens. Present on single-application reads, admin updates and imports; null elsewhere."
},
"settings": {
"additionalProperties": true,
"title": "Settings",
"type": "object"
},
"slug": {
"title": "Slug",
"type": "string"
},
"status": {
"title": "Status",
"type": "string"
},
"tenantId": {
"format": "uuid",
"title": "Tenantid",
"type": "string"
},
"trustedImageOrigins": {
"items": {
"type": "string"
},
"title": "Trustedimageorigins",
"type": "array"
},
"updatedAt": {
"anyOf": [
{
"format": "date-time",
"type": "string"
},
{
"type": "null"
}
],
"title": "Updatedat"
},
"warnings": {
"description": "Notices about this update that the caller must surface. Enabling `mcpSettings.allow_anonymous` returns: 'This endpoint now serves tools to unauthenticated callers; tools currently flagged anonymous: {tools}.'",
"items": {
"type": "string"
},
"title": "Warnings",
"type": "array"
},
"workspaceId": {
"format": "uuid",
"title": "Workspaceid",
"type": "string"
}
},
"required": [
"id",
"tenantId",
"workspaceId",
"name",
"slug",
"status",
"createdBy"
],
"title": "ApplicationResponse",
"type": "object"
}