Skip to content

PUT /api/v3/digital-boards/{lcuid}/key-value-store/{dataSourceId}/{key}

Summary

PUT digital-boards/{id}/key-value-store/{dataSourceId}/{key}

Description

Create or update board data scoped to the feed's account. No board permission is required.

Tags: digital-boards

Parameters

Header Parameters

Name Type Required Description Example
Authorization string ✓ Yes Bearer {AuthToken}
Content-Type string ✓ Yes application/json
Accept string ✓ Yes application/json
AppIdV3 string ✓ Yes LCUID-LAP-********-****-****-****-************

Request Body

Required: Yes

Content Type: application/json

Schema

Type: object

Required fields: value

Properties:

  • key_name (string): Optional friendly name; derived from the key when omitted.
  • value (mixed) (required): Any JSON value; non-strings are stored as JSON text, at most 255 bytes.

Responses

Response: 200

Description: Sample Response

Content Type: application/json

Schema

Type: object

Properties:

  • success (boolean)
  • key_value_store (object) Type: object

Properties:

  • parent_type (string)
  • object_type (string)
  • key_name (string)
  • key (string)
  • value (string)
  • created_at (string)
  • updated_at (string)
  • macro (string)
Example Response
{
    "success": true,
    "key_value_store": {
        "parent_type": "App\\Account",
        "object_type": "App\\DigitalBoard",
        "key_name": "Friendly Name",
        "key": "test_key",
        "value": "updated",
        "created_at": "2026-10-09T15:53:26.000000Z",
        "updated_at": "2026-10-09T15:53:28.000000Z",
        "macro": "digital_board.store.test_key"
    }
}

Example Implementations

Bash (cURL)

curl --request PUT \
  --url "https://api.lucit.app/api/v3/digital-boards/{lcuid}/key-value-store/{dataSourceId}/{key}" \
  --header "Authorization: Bearer {AuthToken}" \
  --header "Content-Type: application/json" \
  --header "Accept: application/json" \
  --header "AppIdV3: LCUID-LAP-********-****-****-****-************"

JavaScript (Fetch API)

const url = "https://api.lucit.app/api/v3/digital-boards/{lcuid}/key-value-store/{dataSourceId}/{key}";

const headers = {
  "Authorization": "Bearer {AuthToken}",
  "Content-Type": "application/json",
  "Accept": "application/json",
  "AppIdV3": "LCUID-LAP-********-****-****-****-************"
};

fetch(url, {
  method: "PUT",
  headers: headers
})
  .then(response => response.json())
  .then(data => console.log(data))
  .catch(error => console.error('Error:', error));

PHP (Guzzle)

<?php

require_once 'vendor/autoload.php';

$client = new \GuzzleHttp\Client();

$response = $client->request('PUT', 'https://api.lucit.app/api/v3/digital-boards/{lcuid}/key-value-store/{dataSourceId}/{key}', [
  'headers' => [
    'Authorization' => 'Bearer {AuthToken}',
    'Content-Type' => 'application/json',
    'Accept' => 'application/json',
    'AppIdV3' => 'LCUID-LAP-********-****-****-****-************',
  ]
]);

$body = $response->getBody();
$data = json_decode($body, true);
print_r($data);

Python (Requests)

import requests
import json

url = "https://api.lucit.app/api/v3/digital-boards/{lcuid}/key-value-store/{dataSourceId}/{key}"

headers = {
  "Authorization": "Bearer {AuthToken}",
  "Content-Type": "application/json",
  "Accept": "application/json",
  "AppIdV3": "LCUID-LAP-********-****-****-****-************"
}

response = requests.put(url, headers=headers)
print(response.json())

← Back to digital-boards index | Back to main index