35 lines
1.3 KiB
Plaintext
35 lines
1.3 KiB
Plaintext
---
|
|
title: "Custom API"
|
|
description: "Displays data from a custom API using a safe JSX template."
|
|
hide_title: true
|
|
---
|
|
|
|
import { WidgetHeader } from "@site/src/components/widgets/header";
|
|
import { AddingWidget } from "@site/src/components/widgets/adding";
|
|
import { customApiWidget } from ".";
|
|
|
|
<WidgetHeader widget={customApiWidget} categories={["Custom", "API"]} />
|
|
|
|
A Custom API widget renders a saved [Custom Widget definition](/docs/management/custom-widgets). The definition provides
|
|
API sources, named requests, widget options, and safe JSX. Credentials remain encrypted on the server.
|
|
|
|
### Adding the widget
|
|
|
|
<AddingWidget />
|
|
|
|
Select a definition, configure its generated options, and choose a refresh interval.
|
|
|
|
:::note
|
|
Custom Widgets must be created under **Management → Custom Widgets** before they appear in the widget picker.
|
|
:::
|
|
|
|
### Permissions and requests
|
|
|
|
Each request declares its minimum board permission. Public boards may run queries for anonymous viewers, but actions
|
|
require authentication. DELETE actions require full board permission and confirmation.
|
|
|
|
The refresh interval reruns load queries. Manual queries run through `SubFetch`; successful actions can invalidate their
|
|
declared queries.
|
|
|
|
See [Custom Widgets](/docs/management/custom-widgets) for authoring, network scopes, and security limits.
|