Skip to main content

GET /api/orgs/config

Returns the action tile configuration for the Excel taskpane — the org URL, access token, and all active Keelstone Actions visible to the user.

This is an internal endpoint called by the taskpane and flow-host.html. It is documented here for reference; you do not need to call it from your LWC components or flows.

Base URL: https://app.keelstone.dev
Authentication: Session-based (uid query parameter)

Request

GET /api/orgs/config?uid={userId}
ParameterDescription
uidUser identifier from the Keelstone session, stored in the taskpane after OAuth login

Response

200 OK

{
org_url: string;
bridge_name: string;
token: string;
groups: Group[];
}

type Group = {
label: string | null; // null for ungrouped actions
icon: string | null;
description: string | null;
order: number;
actions: Action[];
};

type Action = {
label: string;
type: string; // e.g., "Flow"
target: string; // Flow API name
icon: string | null;
dialog_height: number; // default: 80
dialog_width: number; // default: 60
launch_target: string; // "Dialog" | "Taskpane"
};

Example response

{
"org_url": "https://mycompany.my.salesforce.com",
"bridge_name": "kstone:KeelstoneOutApp",
"token": "00D...",
"groups": [
{
"label": "Account Reports",
"icon": "📊",
"description": "Generate Excel reports from Salesforce account data",
"order": 1,
"actions": [
{
"label": "Account Summary",
"type": "Flow",
"target": "Keelstone_Account_Search",
"icon": "🏢",
"dialog_height": 80,
"dialog_width": 60,
"launch_target": "Dialog"
}
]
},
{
"label": null,
"icon": null,
"description": null,
"order": 999,
"actions": [
{
"label": "Hello World",
"type": "Flow",
"target": "Keelstone_Hello_World",
"icon": null,
"dialog_height": 80,
"dialog_width": 60,
"launch_target": "Dialog"
}
]
}
]
}

Permission filtering

The server filters actions by the user's Custom Permissions. If a Keelstone Action record has a Required Permission set, it only appears in the response if the requesting user has been granted that permission via a Permission Set assignment.

Groups with no visible actions are omitted from the response entirely.

Keelstone_Action__c object

Actions are driven by the Keelstone_Action__c custom object (namespace: kstone). Fields that map to this response:

Response fieldSalesforce field
labelkstone__Label__c
typekstone__Action_Type__c
targetkstone__Action_Target__c
iconkstone__Icon__c
active (filtered server-side)kstone__Active__c
orderkstone__Order__c