Updates a configuration.
Patches the draft state of the config only; the published revision is untouched until `:publish` is called again. Fields left null on the request body are preserved, so this is safe for partial updates of `DisplayName`, `Parameters`, `Auth`, or `AuthMap`.
Authorization
Bearer JWT Authorization header using the Bearer scheme. Enter 'Bearer' [space] and then your token.
In: header
Path Parameters
The configuration ID.
uuidThe tenant identifier
The integration identifier
The patch to apply.
Auth credentials for an integration — the chosen auth method plus its filled-in parameters (API keys, tokens, …).
Sandbox routing for this credential. Null leaves the previously saved value untouched (partial-update semantics matching other fields).
"UNSPECIFIED" | "NONE" | "VENDOR" | "SIMULATED" | "READ_THROUGH"Vendor-sandbox credentials. Null leaves the previously saved value untouched.
Optional single-use key returned by the application-level OAuth success popup.
When set, the server finalizes the OAuth flow as part of the save: it consumes
the key, materializes a config-scoped IntegrationAuth row, and binds it
to this config. The frontend never sees the access tokens.
Response Body
curl -X PATCH "https://api.fruxon.com/v1/tenants/string/integrations/string/configs/497f6eca-6276-4993-bfeb-53cbbbba6f08" \ -H "Content-Type: application/json" \ -d '{}'{
"id": "00000000-0000-0000-0000-000000000000",
"integrationId": "string",
"displayName": "string",
"parameters": {},
"parameterHints": {},
"hasAuth": false,
"hasAuthMap": false,
"authMethodId": "string",
"auth": {
"level": "APPLICATION",
"integrationAuthMetadataId": "string",
"parameters": {},
"parameterHints": {},
"grantedScopes": [
"string"
],
"grantedResources": [
{
"id": "string",
"displayName": "string",
"kind": "string",
"grantedAt": 0
}
],
"credentialHealth": "HEALTHY",
"credentialHealthDetail": "string"
},
"authMapEntries": [
{
"parameters": {},
"key": "string",
"authConfig": {
"integrationAuthMetadataId": "string",
"level": "UNSPECIFIED",
"parameters": {},
"parameterHints": null
}
}
],
"sandboxMode": "NONE",
"sandboxVariant": {
"parameters": {},
"auth": {
"integrationAuthMetadataId": "string",
"level": "APPLICATION",
"parameters": {}
},
"authMap": [
{
"parameters": null,
"authConfig": null
}
]
},
"publishedRevisionId": "00000000-0000-0000-0000-000000000000",
"credentialLinkOpen": false,
"hasWebhookKey": false,
"webhookOwnership": "PER_BINDING",
"connectionIdentity": {
"handle": "string",
"displayName": "string",
"providerId": "string",
"fetchedAt": 0
},
"webhookConsumers": {
"triggers": [
{
"id": "00000000-0000-0000-0000-000000000000",
"displayName": "string",
"eventType": "string",
"active": false
}
],
"participantChannels": [
{
"participantId": "00000000-0000-0000-0000-000000000000",
"participantDisplayName": "string",
"address": "string"
}
],
"participantChannelTotalCount": 0
},
"credentialHealth": "HEALTHY",
"credentialHealthDetail": "string",
"credentialHealthChangedAt": 0,
"createdBy": "string",
"createdAt": 0,
"modifiedAt": 0,
"deletedAt": 0
}{
"type": "string",
"title": "string",
"status": 0,
"detail": "string",
"instance": "string",
"property1": null,
"property2": null
}{
"type": "string",
"title": "string",
"status": 0,
"detail": "string",
"instance": "string",
"property1": null,
"property2": null
}Asks the provider what webhook URL it currently has registered for this config and whether recent deliveries have been failing.
Inspects the provider's registered webhook and delivery health. Telegram reports its registered URL, last_error_message and pending_update_count. Returns 400 for providers that do not support inspection.
Creates a new configuration for the integration.
The new config starts as a draft with no published revision; tool calls that resolve a config will fail until `/integrations/{integration}/configs/{config}:publish` is called. The `integrationId` on the request body is overwritten with the route value, so passing a mismatched ID is silently corrected.