BackstageClient.organisations
BackstageClient.organisations in @ticketlayer/backstage.
@ticketlayer/backstage / BackstageClient / organisations
organisations: {
get: (id: string, requestOptions?: RequestOptions) => Promise<{
allowApiKeyLedgerRead: boolean;
apiVersion: string;
createdAt: string;
id: string;
logoUrl?: string;
metadata?: {
[key: string]: unknown;
};
name: string;
primaryColor?: string;
secondaryColor?: string;
testMode: boolean;
updatedAt: string;
}>;
graduate: (id: string, requestOptions?: RequestOptions) => Promise<{
alreadyLive: boolean;
liveKeys: {
channelId: string;
channelSlug: string;
keyId: string;
publishableKey: string;
}[];
organisation: {
id: string;
name: string;
slug: string;
};
signupClaimsGraduated: number;
}>;
update: (id: string, request: {
allowApiKeyLedgerRead?: boolean;
apiVersion?: string;
logoUrl?: string;
metadata?: {
[key: string]: unknown;
};
name?: string;
primaryColor?: string;
secondaryColor?: string;
testMode?: boolean;
}, requestOptions?: RequestOptions) => Promise<{
allowApiKeyLedgerRead: boolean;
apiVersion: string;
createdAt: string;
id: string;
logoUrl?: string;
metadata?: {
[key: string]: unknown;
};
name: string;
primaryColor?: string;
secondaryColor?: string;
testMode: boolean;
updatedAt: string;
}>;
};Defined in: client.ts:2381
Organisations methods
get()#
get: (id: string, requestOptions?: RequestOptions) => Promise<{
allowApiKeyLedgerRead: boolean;
apiVersion: string;
createdAt: string;
id: string;
logoUrl?: string;
metadata?: {
[key: string]: unknown;
};
name: string;
primaryColor?: string;
secondaryColor?: string;
testMode: boolean;
updatedAt: string;
}>;Get organisation Get organisation details, including the colours and logo the staff consoles wear. Those are console chrome, not the brand a buyer sees: a buyer's brand is a Brand (GET /brands).
Parameters#
| Parameter | Type |
|---|---|
id | string |
requestOptions? | RequestOptions |
Returns#
Promise<{
allowApiKeyLedgerRead: boolean;
apiVersion: string;
createdAt: string;
id: string;
logoUrl?: string;
metadata?: {
[key: string]: unknown;
};
name: string;
primaryColor?: string;
secondaryColor?: string;
testMode: boolean;
updatedAt: string;
}>
Operation Id#
getOrganisation
graduate()#
graduate: (id: string, requestOptions?: RequestOptions) => Promise<{
alreadyLive: boolean;
liveKeys: {
channelId: string;
channelSlug: string;
keyId: string;
publishableKey: string;
}[];
organisation: {
id: string;
name: string;
slug: string;
};
signupClaimsGraduated: number;
}>;Graduate the organisation from test mode to live Takes the organisation live: new orders, payments, passes and entitlements are real from this moment, a live publishable key is issued for every active customer-facing channel, and the self-service signup claim that created the organisation is marked graduated. NOTHING ALREADY CREATED CHANGES. A test order taken yesterday is still a test order, its tickets are still refused at a live door, and it still sits outside revenue and the ledger - what a row is was decided when the row was created. The keys the organisation already held are not revoked, so an integration in flight keeps working and can swap to the new key when it suits. One way and idempotent: there is no route back to test mode, and graduating an organisation that is already live succeeds without issuing a second set of keys. The organisation is the caller's own - another id answers 404. Requires organisation.update.
Parameters#
| Parameter | Type |
|---|---|
id | string |
requestOptions? | RequestOptions |
Returns#
Promise<{
alreadyLive: boolean;
liveKeys: {
channelId: string;
channelSlug: string;
keyId: string;
publishableKey: string;
}[];
organisation: {
id: string;
name: string;
slug: string;
};
signupClaimsGraduated: number;
}>
Operation Id#
graduateOrganisation
update()#
update: (id: string, request: {
allowApiKeyLedgerRead?: boolean;
apiVersion?: string;
logoUrl?: string;
metadata?: {
[key: string]: unknown;
};
name?: string;
primaryColor?: string;
secondaryColor?: string;
testMode?: boolean;
}, requestOptions?: RequestOptions) => Promise<{
allowApiKeyLedgerRead: boolean;
apiVersion: string;
createdAt: string;
id: string;
logoUrl?: string;
metadata?: {
[key: string]: unknown;
};
name: string;
primaryColor?: string;
secondaryColor?: string;
testMode: boolean;
updatedAt: string;
}>;Update organisation
Update organisation details and the colours and logo the staff consoles wear (owner permission required). These do NOT reach a storefront, a confirmation email or a ticket: change a Brand (PATCH /brands/{id}) for that. allowApiKeyLedgerRead lets the organisation's API keys read its finance data; only a person may change it, and turning it off cuts off every key that holds ledger.read from its next request.
Parameters#
| Parameter | Type | Description |
|---|---|---|
id | string | - |
request | { allowApiKeyLedgerRead?: boolean; apiVersion?: string; logoUrl?: string; metadata?: { [key: string]: unknown; }; name?: string; primaryColor?: string; secondaryColor?: string; testMode?: boolean; } | - |
request.allowApiKeyLedgerRead? | boolean | Description Allow this organisation's API keys to read its finance data. An organisation API key's ledger.read scope works only while this is true: turning it off refuses every ledger read by a key (403 API_KEY_LEDGER_READ_NOT_ALLOWED), keys already holding the scope included, and a key cannot be minted with the scope. A person's own sign-in is not affected. A person only. Example true |
request.apiVersion? | string | Description Pin the organisation to a dated API version. Must be a known, non-sunset version (see GET /meta/versions). Example 2026-10-02 |
request.logoUrl? | string | Format: uri Description Console chrome only: the mark the staff consoles show beside this organisation's name. A buyer's logo lives on a Brand. Example https://example.com/logo.png |
request.metadata? | { [key: string]: unknown; } | Description Additional metadata Example { * "industry": "Technology", * "size": "Medium" * } |
request.name? | string | Description Organisation name Example Acme Corporation |
request.primaryColor? | string | Description Console chrome only (hex): the colour the staff consoles tint this organisation with. It does not reach a storefront, a confirmation email or a ticket - set a Brand for that. Example #FF5733 |
request.secondaryColor? | string | Description Console chrome only (hex). It does not reach anything a buyer sees. Example #3366FF |
request.testMode? | boolean | Description Turn test mode on or off. While it is on, every order, payment, pass and entitlement created is marked as test data. Turning it off is "going live": new things become real and NOTHING already created changes - a test order taken yesterday is still a test order, and its tickets are still refused at a live door. Example true |
requestOptions? | RequestOptions | - |
Returns#
Promise<{
allowApiKeyLedgerRead: boolean;
apiVersion: string;
createdAt: string;
id: string;
logoUrl?: string;
metadata?: {
[key: string]: unknown;
};
name: string;
primaryColor?: string;
secondaryColor?: string;
testMode: boolean;
updatedAt: string;
}>
Operation Id#
updateOrganisation