Skip to content

GET /api/v3/data-source-providers/{lcuid}/feed-param-fields

Summary

GET data-source-providers/{id}/feed-param-fields

Description

Return a list of the fields that must be provided when configuring a data source that has been created from this data source provider.

These fields are presented in the UI on the Settings for a data source.

Tags: data-source-providers

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-********-****-****-****-************

Responses

Response: 200

Description: Sample Response

Content Type: application/json

Schema

Type: object

Properties:

  • success (boolean): Indicates whether the request was successful or not
  • feed_param_fields (array): An array of fields required by the data source provider
  • Array items: object Type: object

    Properties:

    • key (string)
    • name (string)
    • type (string)
    • grid_size (integer)
    • description (string)
Example Response
{
    "success": true,
    "feed_param_fields": [
        {
            "key": "header1",
            "name": "Weather Data from Weather API",
            "type": "header",
            "grid_size": 12,
            "description": "For each screen attached to your campaign,  add weather data elements to your creatives in the template designer."
        },
        {
            "key": "additional_forecast_days",
            "enum": true,
            "name": "Additional forecast days",
            "type": "int",
            "required": true,
            "grid_size": 6,
            "description": "How many additional days of forecast data to fetch",
            "enum_options": [
                {
                    "label": "Today",
                    "value": 0
                },
                {
                    "label": "Today & Tomorrow",
                    "value": 1
                },
                {
                    "label": "Today plus 2 days",
                    "value": 2
                },
                {
                    "label": "+3 Days",
                    "value": 3
                },
                {
                    "label": "4 Days",
                    "value": 4
                },
                {
                    "label": "5 Days",
                    "value": 5
                },
                {
                    "label": "6 Days",
                    "value": 6
                }
            ],
            "default_value": 0
        },
        {
            "key": "limit_weather_keys",
            "name": "Limit weather data to fields",
            "type": "text",
            "advanced": "true",
            "required": false,
            "grid_size": 12,
            "description": "A comma separated list of fields to limit the weather data to.  Useful for campaigns with 100 or more screens",
            "default_value": ""
        },
        {
            "key": "custom_weather_icon_pack",
            "enum": true,
            "name": "Weather Icons (Experimental)",
            "type": "text",
            "advanced": true,
            "required": false,
            "grid_size": 6,
            "description": "Choose a custom set of icons",
            "enum_options": [
                {
                    "label": "Basic",
                    "value": ""
                },
                {
                    "label": "Sample Pack 1",
                    "value": "https://lucit-feeds-weather-icons.s3.us-east-2.amazonaws.com/verde_test/verde-test.json"
                }
            ],
            "default_value": ""
        },
        {
            "key": "retriever_class",
            "enum": true,
            "name": "Large Campaign Support",
            "type": "text",
            "advanced": true,
            "grid_size": 12,
            "description": "Enable large screen support for large programmatic campaigns to improve performance",
            "enum_options": [
                {
                    "label": "No",
                    "value": "\\App\\LuCore\\Feeds\\Retrievers\\DigitalBoardWeatherApiFeedRetriever"
                },
                {
                    "label": "Yes - Enable Large Campaign Support",
                    "value": "\\App\\LuCore\\Feeds\\Retrievers\\DigitalBoardBulkWeatherApiFeedRetriever"
                }
            ],
            "default_value": "\\App\\LuCore\\Feeds\\Retrievers\\DigitalBoardWeatherApiFeedRetriever"
        },
        {
            "key": "h3_clustering_resolution",
            "enum": true,
            "name": "Distance From Screen Resolution",
            "type": "int",
            "advanced": true,
            "required": false,
            "grid_size": 6,
            "description": "The radius around a screen to pull a single weather data point for.",
            "enum_options": [
                {
                    "label": "0.5 Miles",
                    "value": 8
                },
                {
                    "label": "1.5 Miles",
                    "value": 7
                },
                {
                    "label": "4 Miles",
                    "value": 6
                },
                {
                    "label": "10 Miles",
                    "value": 5
                },
                {
                    "label": "25 Miles",
                    "value": 4
                },
                {
                    "label": "75 Miles",
                    "value": 3
                },
                {
                    "label": "200 Miles",
                    "value": 2
                }
            ],
            "default_value": 5
        }
    ]
}

Example Implementations

Bash (cURL)

curl --request GET \
    --get "https://api.lucit.app/api/v3/data-source-providers/LCUID-LFP-506fc585-77be-11ec-acb9-c2cdb617d190/feed-param-fields" \
    --header "Authorization: Bearer {AuthToken}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --header "AppIdV3: LCUID-LAP-********-****-****-****-************"

JavaScript (Fetch API)

const url = new URL(
    "https://api.lucit.app/api/v3/data-source-providers/LCUID-LFP-506fc585-77be-11ec-acb9-c2cdb617d190/feed-param-fields"
);

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

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

PHP (Guzzle)

$client = new \GuzzleHttp\Client();
$response = $client->get(
    'https://api.lucit.app/api/v3/data-source-providers/LCUID-LFP-506fc585-77be-11ec-acb9-c2cdb617d190/feed-param-fields',
    [
        'headers' => [
            'Authorization' => 'Bearer {AuthToken}',
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
            'AppIdV3' => 'LCUID-LAP-********-****-****-****-************',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));

Python (Requests)

import requests
import json

url = 'https://api.lucit.app/api/v3/data-source-providers/LCUID-LFP-506fc585-77be-11ec-acb9-c2cdb617d190/feed-param-fields'
headers = {
  'Authorization': 'Bearer {AuthToken}',
  'Content-Type': 'application/json',
  'Accept': 'application/json',
  'AppIdV3': 'LCUID-LAP-********-****-****-****-************'
}

response = requests.request('GET', url, headers=headers)
response.json()

← Back to data-source-providers index | Back to main index