Skip to main content
PUT /api/v2/storefront/signals/{signalId} Updates a signal’s metadata and access records. You can change name, description, and isLive, and add, update, or archive access records. signalId, keyType, and regions cannot change after creation.

Request

curl -X PUT https://api.interchange.io/api/v2/storefront/signals/acme_high_value_customers \
  -H "Authorization: Bearer $SCOPE3_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "signalId": "acme_high_value_customers",
    "description": "Top 5% LTV customers, refreshed weekly",
    "isLive": true
  }'

Parameters

FieldTypeRequiredNotes
signalIdstringYesSignal identifier. Must match the path; cannot be changed
namestringNoNew name (max 255)
descriptionstringNoNew description (max 5000)
isLivebooleanNoDeploy or undeploy the signal
addAccessobject[]NoNew access records. Each requires seatId and visibility; optional price
updateAccessobject[]NoExisting access records to modify
archiveAccessinteger[]NoAccess record ids to archive

Response

{
  "signal": {
    "id": 50213,
    "signalId": "acme_high_value_customers",
    "customerId": 1001,
    "adcpAgentId": null,
    "name": "Acme — High-Value Customers",
    "description": "Top 5% LTV customers, refreshed weekly",
    "keyType": ["rampid", "uid2"],
    "regions": ["NORAM", "EMEA"],
    "metadata": null,
    "isLive": true,
    "archivedAt": null,
    "createdBy": "agent@acme.example",
    "updatedBy": "agent@acme.example",
    "createdAt": "2026-06-06T12:00:00Z",
    "updatedAt": "2026-06-06T14:30:00Z"
  },
  "access": [
    {
      "id": 9002,
      "signalId": 50213,
      "seatId": 90517,
      "visibility": "PROPRIETARY",
      "price": {
        "pricing_option_id": "po_cpm_partner",
        "pricing_model": "cpm",
        "currency": "USD",
        "fixed_price": 3.0
      },
      "archivedAt": null,
      "createdAt": "2026-06-06T14:30:00Z",
      "updatedAt": "2026-06-06T14:30:00Z"
    }
  ]
}

Errors

  • 400 VALIDATION_ERROR — attempting to change keyType or regions, or signalId does not match the path.
  • 404 NOT_FOUND — no signal with that signalId is visible to the authenticated customer.
See Errors for the full error contract.

Signal tasks

All signal operations

Get signal

One signal with access records

Delete signal

Archive a signal

Signal overview

Fields, lifecycle, and concepts