---
title: "Update a data source"
method: PATCH
path: "/v1/data-sources/{id}"
tags: ["data-sources"]
---

# Update a data source

`PATCH /v1/data-sources/{id}`

## Request

- Base URL: `https://api.brixsignage.com`
- URL: `https://api.brixsignage.com/v1/data-sources/{id}`
- Auth: HTTP bearer

Edit a data source's name, connector configuration, or node.

Send `••••••••` back for a credential to keep the stored value. To point the source at a different address or connector type, enter the credential again.

## Path parameters

- `id` string, required

## Request body

- object
  - `name` string
  - `type` string: A change of type needs `config` with the credentials entered again.
  - `config` object: Connector settings (JSON). The keys depend on `type`. Credentials are encrypted at rest and every later read shows them as `••••••••`.
  - `nodeId` string, nullable: Move it; the key needs `integration.edit` at the destination too.

## Response `200`

Success.

- object
  - `data` DataSource, required: A connected data feed. Credentials are never returned.
    - `id` string, required: Data source id.
    - `spaceId` string, required
    - `name` string, required
    - `type` string, required: Connector type (`csv`, `http-json`, `rest`, `google-sheets`, `ical`, …). See `GET /v1/connectors`.
    - `config` unknown, required
    - `cachedData` unknown, required
    - `connected` boolean, required: The last sync succeeded.
    - `lastSyncedAt` string, nullable, required: ISO-8601 timestamp (UTC).
    - `syncError` string, nullable, required: Why the last sync failed; null when it succeeded.
    - `nodeId` string, nullable, required
    - `createdAt` string, required: ISO-8601 timestamp (UTC).
    - `updatedAt` string, required: ISO-8601 timestamp (UTC).

## Other responses

- `401`: Missing, expired or revoked bearer token.
- `403`: No `integration.edit` at the destination location.
- `404`: No such data source in this workspace.
- `409`: `conflict`: the type or config changed while this request ran. Nothing was saved; read the source again and resend.
- `422`: `credential_reentry_required`: the change moves a masked credential to a new address or connector type (`fields` names what moved); or `invalid_node`: the destination is not in this workspace.
- `5XX`: Server error. The body carries a `requestId` to quote to support.

---

[API](https://skmtc.dev/brixsignage/apis/brix-api.md) · [All operations](https://skmtc.dev/brixsignage/apis/brix-api/llms.txt) · [OpenAPI document](https://skmtc.dev/brixsignage/apis/brix-api/revisions/02fd3665dc7d?raw)
