Skip to main content

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-Id must be provided
  • Header Authorization must be provided
  • Header X-Brand-Id is optional (if provided, brandId argument becomes optional)

Update Process

  1. Validates the integration exists and belongs to the specified brand
  2. Updates only the provided fields (partial updates supported)
  3. Encrypts and stores new authentication credentials if provided
  4. Updates configuration settings and metadata
  5. Preserves existing values for non-provided fields

Updatable Fields

**Authentication Credentials** (automatically encrypted):

  • api_key: Main API key or primary connection credential
  • api_secret: API secret for authentication
  • api_token: Additional API token
  • oauth_token: Shopify OAuth token (for Shopify integrations)

**Configuration & Metadata**:

  • name: Integration display name
  • description: Integration description
  • status: Integration status (active, inactive, etc.)
  • settings: Additional JSON configuration settings
  • carrier_mapping: Carrier mapping configuration
  • managed: 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 provided
  • GraphQL::ExecutionError - when required headers are missing
  • RecordNotFound - when integration doesn't exist
  • ValidationError - when provided values are invalid
  • AuthenticationError - when authentication credentials are invalid
  • PermissionError - 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

Type

Party object