updateIntegration
Updates an existing integration assigned to a brand.
This mutation allows updating various properties of an existing integration, including authentication credentials, configuration settings, and metadata. All credential updates are automatically encrypted before storage to ensure security.
Authentication Requirements
- Header
X-Company-Idmust be provided - Header
Authorizationmust be provided - Header
X-Brand-Idis optional (if provided,brandIdargument becomes optional)
Update Process
- Validates the integration exists and belongs to the specified brand
- Updates only the provided fields (partial updates supported)
- Encrypts and stores new authentication credentials if provided
- Updates configuration settings and metadata
- Preserves existing values for non-provided fields
Updatable Fields
**Authentication Credentials** (automatically encrypted):
api_key: Main API key or primary connection credentialapi_secret: API secret for authenticationapi_token: Additional API tokenoauth_token: Shopify OAuth token (for Shopify integrations)
**Configuration & Metadata**:
name: Integration display namedescription: Integration descriptionstatus: Integration status (active, inactive, etc.)settings: Additional JSON configuration settingscarrier_mapping: Carrier mapping configurationmanaged: Management type (Endless-managed vs user-managed)collab_code: Collaboration code for integration sharing
Validation Rules
- At least one field must be provided for update
- Integration must exist and belong to the specified brand
- User must have appropriate permissions to update integrations
Behavior
Upon successful execution, returns the updated integration party with all changes applied. Only the specified fields are updated; existing values are preserved for non-provided fields.
Possible Errors
GraphQL::ExecutionError- when no update fields are providedGraphQL::ExecutionError- when required headers are missingRecordNotFound- when integration doesn't existValidationError- when provided values are invalidAuthenticationError- when authentication credentials are invalidPermissionError- when user lacks permission to update integrations
**Permissions required:** Company and brand access with integration update permissions
updateIntegration(
input: UpdateIntegrationInput!
): Party
Arguments
updateIntegration.input ● UpdateIntegrationInput! non-null input
Parameters for UpdateIntegration