Files
yaak-mountain-loop/plugins/auth-apikey/src/index.ts
Gregory Schier b4a1c418bb Run oxfmt across repo, add format script and docs
Add .oxfmtignore to skip generated bindings and wasm-pack output.
Add npm format script, update DEVELOPMENT.md for Vite+ toolchain,
and format all non-generated files with oxfmt.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-13 10:15:49 -07:00

55 lines
1.4 KiB
TypeScript

import type { PluginDefinition } from "@yaakapp/api";
export const plugin: PluginDefinition = {
authentication: {
name: "apikey",
label: "API Key",
shortLabel: "API Key",
args: [
{
type: "select",
name: "location",
label: "Behavior",
defaultValue: "header",
options: [
{ label: "Insert Header", value: "header" },
{ label: "Append Query Parameter", value: "query" },
],
},
{
type: "text",
name: "key",
label: "Key",
dynamic: (_ctx, { values }) => {
return values.location === "query"
? {
label: "Parameter Name",
description: "The name of the query parameter to add to the request",
}
: {
label: "Header Name",
description: "The name of the header to add to the request",
};
},
},
{
type: "text",
name: "value",
label: "API Key",
optional: true,
password: true,
},
],
async onApply(_ctx, { values }) {
const key = String(values.key ?? "");
const value = String(values.value ?? "");
const location = String(values.location);
if (location === "query") {
return { setQueryParameters: [{ name: key, value }] };
}
return { setHeaders: [{ name: key, value }] };
},
},
};