Skip to main content
PATCH
/
inventory-sources
/
{sourceId}
/
modular
/
modules
/
{moduleInstanceId}
/
config
Update modular source module config
curl --request PATCH \
  --url https://api.interchange.io/api/v2/storefront/inventory-sources/{sourceId}/modular/modules/{moduleInstanceId}/config \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: application/json' \
  --data '{
  "config": {}
}'
{
  "inventorySource": {
    "id": "<string>",
    "storefrontId": "<string>",
    "sourceId": "<string>",
    "name": "<string>",
    "executionType": "MODULAR_SOURCE",
    "status": "<string>",
    "healthStatus": "<string>",
    "lastError": "<string>",
    "lastCheckedAt": "2023-11-07T05:31:56Z"
  },
  "modules": [
    {
      "moduleRowId": "<string>",
      "inventorySourceId": "<string>",
      "moduleInstanceId": "<string>",
      "name": "<string>",
      "provider": "<string>",
      "contractId": "<string>",
      "contractVersion": "<string>",
      "contract": {
        "contractId": "<string>",
        "version": "<string>",
        "moduleType": "<string>",
        "displayName": "<string>",
        "description": "<string>",
        "constraints": [
          "<string>"
        ],
        "provider": "<string>"
      },
      "configuredFieldKeys": [
        "<string>"
      ],
      "missingSetupFieldsBySource": [
        {
          "fields": [
            {
              "key": "<string>",
              "label": "<string>",
              "description": "<string>",
              "required": true,
              "requiredFor": [],
              "mapsTo": "<string>",
              "enumValues": [
                "<string>"
              ]
            }
          ]
        }
      ],
      "lifecycle": [
        {
          "description": "<string>",
          "outputKeys": [
            "<string>"
          ],
          "requiredFieldsBySource": [
            {
              "fields": [
                {
                  "key": "<string>",
                  "label": "<string>",
                  "description": "<string>",
                  "required": true,
                  "requiredFor": [],
                  "mapsTo": "<string>",
                  "enumValues": [
                    "<string>"
                  ]
                }
              ]
            }
          ],
          "missingSetupFieldsBySource": [
            {
              "fields": [
                {
                  "key": "<string>",
                  "label": "<string>",
                  "description": "<string>",
                  "required": true,
                  "requiredFor": [],
                  "mapsTo": "<string>",
                  "enumValues": [
                    "<string>"
                  ]
                }
              ]
            }
          ],
          "moduleConfigReady": true,
          "workItemKind": "<string>",
          "taskContract": {
            "taskId": "<string>",
            "requiredInputKeys": [
              "<string>"
            ],
            "requiredResultKeys": [
              "<string>"
            ],
            "outputKeys": [
              "<string>"
            ],
            "retryable": true,
            "blocksStage": true,
            "workItemKind": "<string>",
            "fallbackWorkItemKind": "<string>",
            "operatorAction": "<string>",
            "idempotencyKeyFields": [
              "<string>"
            ]
          }
        }
      ],
      "openWorkItemCount": 4503599627370495,
      "openWorkItemCountsByKind": {},
      "lastError": "<string>",
      "lastCheckedAt": "2023-11-07T05:31:56Z",
      "issues": [
        "<string>"
      ]
    }
  ],
  "lifecycleSummary": [
    {
      "supported": true,
      "modes": [],
      "moduleInstanceIds": [
        "<string>"
      ],
      "moduleNames": [
        "<string>"
      ],
      "setupConfigured": true,
      "runtimeInputsRequired": true,
      "hitlRequired": true,
      "openWorkItemCount": 4503599627370495,
      "requiredRuntimeFieldSources": [],
      "missingSetupFieldsBySource": [
        {
          "fields": [
            {
              "key": "<string>",
              "label": "<string>",
              "description": "<string>",
              "required": true,
              "requiredFor": [],
              "mapsTo": "<string>",
              "enumValues": [
                "<string>"
              ]
            }
          ]
        }
      ],
      "issues": [
        "<string>"
      ]
    }
  ],
  "openWorkItemCount": 4503599627370495,
  "activeAvailCount": 4503599627370495
}

Authorizations

Authorization
string
header
required

API key or access token

Path Parameters

sourceId
string
required

Inventory source ID

Minimum string length: 1
moduleInstanceId
string
required

Seller-local module instance id

Minimum string length: 1

Body

application/json

Update non-secret configuration for a module on a modular inventory source.

config
object
required

Non-secret module configuration values to write. Nested objects are deep-merged by default.

merge
boolean
default:true

When true, deep-merge config into the existing module config. When false, replace the module config.

status
enum<string>

Optional manual module status update. ACTIVE is derived by execution/readiness workflows and cannot be set through this config endpoint. Omit to leave status unchanged.

Available options:
CONFIGURING,
DISABLED,
ERROR

Response

Update modular source module config

Operator-facing setup-state projection for a modular inventory source.

inventorySource
object
required
modules
object[]
required
lifecycleSummary
object[]
required
openWorkItemCount
integer
required
Required range: 0 <= x <= 9007199254740991
activeAvailCount
integer
required
Required range: 0 <= x <= 9007199254740991