Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
93 commits
Select commit Hold shift + click to select a range
0a31808
fix: [UIE-9633] - IAM: users table aria-label fix (#13082)
mpolotsk-akamai Nov 13, 2025
dab739d
refactor: [UIE-9324] - Replace Formik with React Hook Form in Mainten…
hana-akamai Nov 13, 2025
616459f
Upcoming: [UIE-9538]- Disable premium plan tab if corresponding g7 de…
grevanak-akamai Nov 14, 2025
b167091
test [UIE-9634-]: Fix flakey vm-host test (#13083)
dmcintyr-akamai Nov 14, 2025
b52ecdf
fix: DBaaS Maintenance Window Save Changes not disabled (#13096)
hana-akamai Nov 14, 2025
51a3b2f
upcoming: [DI-28175] - Add linode_id to label conversion for blocksto…
ankita-akamai Nov 17, 2025
98018bf
upcoming: [UIE-9558] - Add new API endpoints, types and queries for N…
tanushree-akamai Nov 17, 2025
d5d28d1
upcoming: [UIE-9559, UIE-9560] - Introduce Network Load Balancer feat…
harsh-akamai Nov 17, 2025
f49e9f0
feat: [UIE-9423] - IAM Parent/Child: permissions switch account (#13075)
aaleksee-akamai Nov 17, 2025
9b2a4fe
feat: [UIE-9557] - IAM: fix perm for detach volumes (#13099)
aaleksee-akamai Nov 17, 2025
70589db
change: [M3-10685] - Update Cloud Manager Icons to Akamai Design Syst…
shagufa-akamai Nov 17, 2025
0888fb0
fix: [UIE-9656] - Plans panel pagination bug fix (#13100)
tvijay-akamai Nov 18, 2025
81e2a18
upcoming:[UIE-9509] - Add tooltip for Rules column header in Firewall…
grevanak-akamai Nov 18, 2025
414d0a5
Merge branch 'master' into develop
abailly-akamai Nov 18, 2025
a481f51
feat: [UIE-9381] - Add region select to Database Backups tab (#13097)
hana-akamai Nov 18, 2025
b2a852e
upcoming: [DI-28222] - Scaffolding setup for widget level dimension f…
venkymano-akamai Nov 19, 2025
a69c687
upcoming: [UIE-9669] - Implement mocks and factories for Network Load…
harsh-akamai Nov 19, 2025
bb15097
upcoming: [UIE-9507, UIE-9510] - Add New Firewall RuleSet Row Layout …
pmakode-akamai Nov 19, 2025
57def45
feat: [UIE-9539] Implemented Filtering for plans table (#13093)
tvijay-akamai Nov 19, 2025
ced04e1
test: [UIE-9677] - Misc. Cypress test fixes following v1.155.0 releas…
jdamore-linode Nov 19, 2025
959e2c4
upcoming: [DI-28227] - Integrating Firewall-nodebalancers to ACLP-Ale…
santoshp210-akamai Nov 20, 2025
ad6aaa2
fix: [UIE-9657] - Alignment with Linode row backup cell icon (#13098)
abailly-akamai Nov 20, 2025
f9d97e8
fix: [M3-10709] - `firewall_id` error on LKE pool update (#13109)
pmakode-akamai Nov 20, 2025
73a7ca4
upcoming: [UIE-6561] - Add NLB Detail Paper (#13103)
harsh-akamai Nov 21, 2025
1a4c5c0
fix: [UIE-9655] - Disabled Tab + Tooltip styles & accessibility (#13113)
abailly-akamai Nov 21, 2025
664bcde
Bump glob from 10.4.5 to 10.5.0 (#13114)
abailly-akamai Nov 21, 2025
f76c020
change: [UIE-9700] - Await permissions before rendering Linode Detail…
abailly-akamai Nov 21, 2025
095c904
upcoming: [UIE-9514] - Update Firewall Rule Drawer to support referen…
pmakode-akamai Nov 21, 2025
6b0b083
fix: [VMP-2536] - Maintenance date from local to utc (#13059)
jaalah-akamai Nov 24, 2025
3c9e18f
upcoming: [DI-28270] - Remove firewall filtering and region filter de…
ankita-akamai Nov 24, 2025
765a0ba
Upcoming: [UIE-9540] - Implement filter for GPU plans in plans panel …
grevanak-akamai Nov 24, 2025
eaff2e0
Fixed Pagination issue in kubernetes plans table (#13126)
tvijay-akamai Nov 24, 2025
1e1f3b9
upcoming: [DPS-35648] Destination Form - Sample path improvements (#1…
mduda-akamai Nov 24, 2025
aac0a42
upcoming: [DPS-35317] Compare the saved list of clusters with the lis…
mduda-akamai Nov 24, 2025
d63b7dc
upcoming: [UIE-9551] - Implement read-only NLB list table. (#13112)
tanushree-akamai Nov 24, 2025
a966e10
fix: [UIE-9643] - DBaaS - Manage Networking VPC fields not handling e…
smans-akamai Nov 24, 2025
d699296
chore: [M3-10715] - Bump Vite from `7.1.x` to `7.2.x` and update Vite…
bnussman-akamai Nov 24, 2025
3660a04
upcoming: [UIE-9512, UIE-9530] - New Rule Set Details Drawer with Mar…
pmakode-akamai Nov 25, 2025
b76293d
change: [STORIF-106] Object Storage Summary page changed. (#13087)
dchyrva-akamai Nov 25, 2025
39025ad
upcoming: [DI-28395] - Added enabling, disabling and provisioning sta…
venkymano-akamai Nov 25, 2025
2cde3bc
upcoming: [DI-27569] - Integrate endpoints dashboard for object-stora…
ankita-akamai Nov 26, 2025
a5e1f48
upcoming: [DI-28222] : Integration for widget Level dimension filters…
venkymano-akamai Nov 26, 2025
3fd1215
feat: [UIE-9686] - IAM: fix filtering by entity's type (#13129)
aaleksee-akamai Nov 26, 2025
aa06582
upcoming: [M3-10713] – Create & use new JSON-based Firewall RuleSets …
dwiley-akamai Nov 26, 2025
5826210
change: [DPS-35671] - Logs Stream - Add gov legal sign off section (#…
kagora-akamai Nov 26, 2025
dcf82ab
upcoming: [UIE-9684, UIE-9699] - Add `generateAddressesLabelV2` utili…
pmakode-akamai Nov 26, 2025
55d3ff4
upcoming: [DI-28227] - Firewall Alerts enhancements (#13110)
santoshp210-akamai Nov 26, 2025
b643860
fix: [STORIF-173] - Volume card disappearing bug fixed (#13128)
dchyrva-akamai Nov 26, 2025
b5dcacd
upcoming: [UIE-9383] - DBaaS - Add feature flag support for PgBouncer…
smans-akamai Nov 26, 2025
2f0bee0
upcoming: [DI-28427] - Add and consume beta property to aclpAlerting …
santoshp210-akamai Nov 27, 2025
855eabe
fix: [UIE-9671] - IAM: create Linode permission fix (#13118)
mpolotsk-akamai Nov 28, 2025
fcb8b3c
fix: [DI-28200] - Fix for the volume contextual view dimension filter…
venkymano-akamai Nov 28, 2025
47f0958
feat: [feature-branch/UIE 9568] - Support & Implementation of the new…
abailly-akamai Nov 28, 2025
10bfefb
upcoming: [DI-28504] - Add tooltip for clusters filter in lke and fix…
ankita-akamai Nov 30, 2025
2b16491
upcoming: [UIE-9732] - Update tooltip in `generateAddressesLabelV2` t…
pmakode-akamai Dec 1, 2025
5050b3a
upcoming: [UIE-9562] - Implement Listeners Table in Network LoadBalan…
harsh-akamai Dec 1, 2025
a28d980
feat: [UIE-9722] - IAM: disable cards for linode create (#13142)
aaleksee-akamai Dec 1, 2025
814c11e
upcoming: [M3-10708] - Display maintenance type and config in linode_…
jaalah-akamai Dec 1, 2025
db0bf58
change: [UIE-9698] - Add Chip Support to Drawer Component Title (#13135)
harsh-akamai Dec 2, 2025
545e476
upcoming: [UIE-9565] - Implement Empty Landing State for Network Load…
harsh-akamai Dec 2, 2025
02e82e6
upcoming: [UIE-9511, UIE-9513, UIE-9632] - Add and Integrate Prefix L…
pmakode-akamai Dec 2, 2025
debff9e
change: [DPS-35759] - Fix UI/Copy issues after UX review (#13140)
kagora-akamai Dec 2, 2025
23aa45d
new: STORIF-172 - Create bucket button removed from OBJ summary page.…
dchyrva-akamai Dec 2, 2025
b89d5f3
feat: [UIE-9384] - Add Connection Pool types/endpoints/queries (#13148)
hana-akamai Dec 2, 2025
533c629
upcoming: [UIE-9563] - Implement Listener detail paper (#13130)
tanushree-akamai Dec 3, 2025
40958c2
upcoming: [UIE-9515] - Update Firewall Rules Edit & Add Drawer to Sup…
pmakode-akamai Dec 3, 2025
915b170
upcoming: [DI-28504] - Update tooltip msg in LKE service dashboard (#…
ankita-akamai Dec 3, 2025
6d8b9c4
fix: [UIE-9731] - IAM Permissions performance improvements: Create fr…
abailly-akamai Dec 3, 2025
bb2a467
upcoming: [UIE-9564] - Implement Listener Detail - Nodes table (#13147)
tanushree-akamai Dec 3, 2025
9f4a82a
upcoming: [UIE-9709] - Integrate Prefix List Details Drawer with Edit…
pmakode-akamai Dec 3, 2025
df8ff8f
Tech story: [UIE-8943] - Replace dropdowns in Database cluster settin…
grevanak-akamai Dec 4, 2025
5ea7b89
fix: [UIE-9737] - IAM Permissions performance improvements: Firewall …
abailly-akamai Dec 4, 2025
bbddca5
fix: [UIE-9733] - Performance improvement in IAM users pages (#13159)
abailly-akamai Dec 4, 2025
02ce696
feat: [UIE-9734] - IAM: fix perm check (#13160)
aaleksee-akamai Dec 4, 2025
f95ccd4
fixed: [UIE-9539] Turn off generational plan features if no g7 and g8…
tvijay-akamai Dec 4, 2025
78aada0
Revert "fix: [UIE-9733] - Performance improvement in IAM users pages …
abailly-akamai Dec 4, 2025
9147732
fix: [UIE-9661] - oAuth callback improvements (#13105)
abailly-akamai Dec 4, 2025
fc40927
upcoming: [UIE-9730] - Add Beta/New Feature Chip Support for RuleSets…
pmakode-akamai Dec 5, 2025
5f17335
new: STORIF-142 - Volume metrics hiding condition added. (#13162)
dchyrva-akamai Dec 5, 2025
35b8d8b
upcoming: [UIE-9531] – Prevent referencing of RuleSet by a FW more th…
dwiley-akamai Dec 5, 2025
80f3ba8
change: [DPS-35650] Logs: minor UI fixes and improvements (#13166)
mduda-akamai Dec 5, 2025
e893249
upcoming: [UIE-9640] – Update `useIsFirewallRulesetsPrefixlistsEnable…
dwiley-akamai Dec 5, 2025
5db036f
fix: [UIE-9690] - Forking a Database Cluster with VPC into another re…
hana-akamai Dec 5, 2025
b112706
upcoming: [UIE-9762] - UX/UI enhancements for RuleSets and Prefix Li…
pmakode-akamai Dec 8, 2025
488dfc9
upcoming: [UIE-9738] - Handle special PLs in PrefixList drawer (#13172)
pmakode-akamai Dec 8, 2025
5faffaa
fix: [UIE-9733] - Optimize rendering of entities in `AssignedRolesTab…
abailly-akamai Dec 8, 2025
4905ac3
feat: [UIE-9637] - IAM "New" and "Limited Availability" badges (#13175)
abailly-akamai Dec 8, 2025
9921e9e
fix: [UIE-9245] - EntitiesSelect performance on large accounts (#13168)
abailly-akamai Dec 8, 2025
17cafe7
small fix to hidden count (#13178)
abailly-akamai Dec 8, 2025
8a078cc
Revert "upcoming: [M3-10708] - Display maintenance type and config in…
jaalah Dec 8, 2025
2fd161c
Cloud version 1.156.0, API v4 version 0.154.0, Validation version 0.7…
abailly-akamai Dec 8, 2025
f518c22
update changelog dates
abailly-akamai Dec 8, 2025
7e98ba1
Merge pull request #13180 from linode/release-v1.156.0
dwiley-akamai Dec 8, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
4 changes: 2 additions & 2 deletions package.json
Original file line number Diff line number Diff line change
Expand Up @@ -8,8 +8,8 @@
"concurrently": "9.1.0",
"husky": "^9.1.6",
"typescript": "^5.7.3",
"vitest": "^3.2.4",
"@vitest/ui": "^3.2.4",
"vitest": "^4.0.10",
"@vitest/ui": "^4.0.10",
"lint-staged": "^15.4.3",
"eslint": "^9.24.0",
"eslint-config-prettier": "^10.1.1",
Expand Down
22 changes: 22 additions & 0 deletions packages/api-v4/CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,25 @@
## [2025-12-09] - v0.154.0


### Changed:

- Update database restoreWithBackup data to include region ([#13097](https://github.com/linode/manager/pull/13097))
- Add private_network to `DatabaseBackupsPayload` ([#13174](https://github.com/linode/manager/pull/13174))

### Tech Stories:

- Add `@types/node` as a devDependency ([#13119](https://github.com/linode/manager/pull/13119))

### Upcoming Features:

- Add new API endpoints and types for Network Load Balancers ([#13078](https://github.com/linode/manager/pull/13078))
- Update FirewallRuleType to support ruleset ([#13079](https://github.com/linode/manager/pull/13079))
- Add additional status types `enabling`, `disabling`, `provisioning` in CloudPulse alerts ([#13127](https://github.com/linode/manager/pull/13127))
- CloudPulse-Metrics: Update `entity_ids` type in `CloudPulseMetricsRequest` for metrics api in endpoints dahsboard ([#13133](https://github.com/linode/manager/pull/13133))
- Add `deleted` property to `FirewallPrefixList` type after API update ([#13146](https://github.com/linode/manager/pull/13146))
- Added Database Connection Pool types and endpoints ([#13148](https://github.com/linode/manager/pull/13148))
- Add 'Cloud Firewall Rule Set' to AccountCapability type ([#13156](https://github.com/linode/manager/pull/13156))

## [2025-11-18] - v0.153.0


Expand Down
5 changes: 3 additions & 2 deletions packages/api-v4/package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "@linode/api-v4",
"version": "0.153.0",
"version": "0.154.0",
"homepage": "https://github.com/linode/manager/tree/develop/packages/api-v4",
"bugs": {
"url": "https://github.com/linode/manager/issues"
Expand Down Expand Up @@ -59,7 +59,8 @@
"@linode/tsconfig": "workspace:*",
"axios-mock-adapter": "^1.22.0",
"concurrently": "^9.0.1",
"tsup": "^8.4.0"
"tsup": "^8.4.0",
"@types/node": "^22.13.14"
},
"lint-staged": {
"*.{ts,tsx,js}": [
Expand Down
2 changes: 2 additions & 0 deletions packages/api-v4/src/account/types.ts
Original file line number Diff line number Diff line change
Expand Up @@ -66,6 +66,7 @@ export const accountCapabilities = [
'Block Storage',
'Block Storage Encryption',
'Cloud Firewall',
'Cloud Firewall Rule Set',
'CloudPulse',
'Disk Encryption',
'Kubernetes',
Expand All @@ -80,6 +81,7 @@ export const accountCapabilities = [
'Managed Databases',
'Managed Databases Beta',
'NETINT Quadra T1U',
'Network LoadBalancer',
'NodeBalancers',
'Object Storage Access Key Regions',
'Object Storage Endpoint Types',
Expand Down
11 changes: 9 additions & 2 deletions packages/api-v4/src/cloudpulse/types.ts
Original file line number Diff line number Diff line change
Expand Up @@ -19,8 +19,15 @@ export type DimensionFilterOperatorType =
| 'neq'
| 'startswith';
export type AlertDefinitionType = 'system' | 'user';
export type AlertStatusType = 'disabled' | 'enabled' | 'failed' | 'in progress';
export type AlertDefinitionScope = 'account' | 'entity' | 'region';
export type AlertStatusType =
| 'disabled'
| 'disabling'
| 'enabled'
| 'enabling'
| 'failed'
| 'in progress'
| 'provisioning';
export type CriteriaConditionType = 'ALL';
export type MetricUnitType =
| 'bit_per_second'
Expand Down Expand Up @@ -152,7 +159,7 @@ export interface Metric {
export interface CloudPulseMetricsRequest {
absolute_time_duration: DateTimeWithPreset | undefined;
associated_entity_region?: string;
entity_ids: number[] | string[];
entity_ids: number[] | string[] | undefined;
entity_region?: string;
filters?: Filters[];
group_by?: string[];
Expand Down
82 changes: 79 additions & 3 deletions packages/api-v4/src/databases/databases.ts
Original file line number Diff line number Diff line change
@@ -1,5 +1,7 @@
import {
createDatabaseConnectionPoolSchema,
createDatabaseSchema,
updateDatabaseConnectionPoolSchema,
updateDatabaseSchema,
} from '@linode/validation/lib/databases.schema';

Expand All @@ -14,13 +16,14 @@ import Request, {

import type { Filter, ResourcePage as Page, Params } from '../types';
import type {
ConnectionPool,
CreateDatabasePayload,
Database,
DatabaseBackup,
DatabaseBackupsPayload,
DatabaseCredentials,
DatabaseEngine,
DatabaseEngineConfig,
DatabaseFork,
DatabaseInstance,
DatabaseType,
Engine,
Expand Down Expand Up @@ -267,11 +270,14 @@ export const legacyRestoreWithBackup = (
*
* Fully restore a backup to the cluster
*/
export const restoreWithBackup = (engine: Engine, fork: DatabaseFork) =>
export const restoreWithBackup = (
engine: Engine,
data: DatabaseBackupsPayload,
) =>
Request<Database>(
setURL(`${API_ROOT}/databases/${encodeURIComponent(engine)}/instances`),
setMethod('POST'),
setData({ fork }),
setData(data),
);

/**
Expand Down Expand Up @@ -361,3 +367,73 @@ export const getDatabaseEngineConfig = (engine: Engine) =>
setURL(`${API_ROOT}/databases/${encodeURIComponent(engine)}/config`),
setMethod('GET'),
);

/**
* Get a paginated list of connection pools for a database
*/
export const getDatabaseConnectionPools = (databaseID: number) =>
Request<Page<ConnectionPool>>(
setURL(
`${API_ROOT}/databases/postgresql/instances/${encodeURIComponent(databaseID)}/connection-pools`,
),
setMethod('GET'),
);

/**
* Get a connection pool for a database
*/
export const getDatabaseConnectionPool = (
databaseID: number,
poolName: string,
) =>
Request<ConnectionPool>(
setURL(
`${API_ROOT}/databases/postgresql/instances/${encodeURIComponent(databaseID)}/connection-pools/${encodeURIComponent(poolName)}`,
),
setMethod('GET'),
);

/**
* Create a new connection pool for a database. Connection pools can only be created on active clusters
*/
export const createDatabaseConnectionPool = (
databaseID: number,
data: ConnectionPool,
) =>
Request<ConnectionPool>(
setURL(
`${API_ROOT}/databases/postgresql/instances/${encodeURIComponent(databaseID)}/connection-pools`,
),
setMethod('POST'),
setData(data, createDatabaseConnectionPoolSchema),
);

/**
* Update an existing connection pool. This may cause sudden closure of an in-use connection pool
*/
export const updateDatabaseConnectionPool = (
databaseID: number,
poolName: string,
data: Omit<ConnectionPool, 'label'>,
) =>
Request<ConnectionPool>(
setURL(
`${API_ROOT}/databases/postgresql/instances/${encodeURIComponent(databaseID)}/connection-pools/${encodeURIComponent(poolName)}`,
),
setMethod('PUT'),
setData(data, updateDatabaseConnectionPoolSchema),
);

/**
* Delete an existing connection pool. This may cause sudden closure of an in-use connection pool
*/
export const deleteDatabaseConnectionPool = (
databaseID: number,
poolName: string,
) =>
Request<{}>(
setURL(
`${API_ROOT}/databases/postgresql/instances/${encodeURIComponent(databaseID)}/connection-pools/${encodeURIComponent(poolName)}`,
),
setMethod('DELETE'),
);
21 changes: 18 additions & 3 deletions packages/api-v4/src/databases/types.ts
Original file line number Diff line number Diff line change
Expand Up @@ -79,6 +79,12 @@ export interface DatabaseFork {
source: number;
}

export interface DatabaseBackupsPayload {
fork: DatabaseFork;
private_network?: null | PrivateNetwork;
region?: string;
}

export interface DatabaseCredentials {
password: string;
username: string;
Expand All @@ -100,6 +106,7 @@ type MemberType = 'failover' | 'primary';
export interface DatabaseInstance {
allow_list: string[];
cluster_size: ClusterSize;
connection_pool_port: null | number;
connection_strings: ConnectionStrings[];
created: string;
/** @Deprecated used by rdbms-legacy only, rdbms-default always encrypts */
Expand Down Expand Up @@ -163,12 +170,10 @@ interface ConnectionStrings {
value: string;
}

export type UpdatesFrequency = 'monthly' | 'weekly';

export interface UpdatesSchedule {
day_of_week: number;
duration: number;
frequency: UpdatesFrequency;
frequency: 'monthly' | 'weekly';
hour_of_day: number;
pending?: PendingUpdates[];
week_of_month: null | number;
Expand Down Expand Up @@ -246,3 +251,13 @@ export interface UpdateDatabasePayload {
updates?: UpdatesSchedule;
version?: string;
}

export type PoolMode = 'session' | 'statement' | 'transaction';

export interface ConnectionPool {
database: string;
label: string;
mode: PoolMode;
size: number;
username: null | string;
}
17 changes: 14 additions & 3 deletions packages/api-v4/src/firewalls/types.ts
Original file line number Diff line number Diff line change
Expand Up @@ -36,16 +36,26 @@ export type UpdateFirewallRules = Omit<

export type FirewallTemplateRules = UpdateFirewallRules;

/**
* The API may return either a full firewall rule object or a ruleset reference
* containing only the `ruleset` field. This interface supports both formats
* to ensure backward compatibility with existing implementations and avoid
* widespread refactoring.
*/
export interface FirewallRuleType {
action: FirewallPolicyType;
action?: FirewallPolicyType | null;
addresses?: null | {
ipv4?: null | string[];
ipv6?: null | string[];
};
description?: null | string;
label?: null | string;
ports?: string;
protocol: FirewallRuleProtocol;
ports?: null | string;
protocol?: FirewallRuleProtocol | null;
/**
* Present when the object represents a ruleset reference.
*/
ruleset?: null | number;
}

export interface FirewallDeviceEntity {
Expand Down Expand Up @@ -124,6 +134,7 @@ export type FirewallPrefixListVisibility = 'private' | 'public' | 'restricted';

export interface FirewallPrefixList {
created: string;
deleted: null | string;
description: string;
id: number;
ipv4?: null | string[];
Expand Down
23 changes: 20 additions & 3 deletions packages/api-v4/src/iam/iam.ts
Original file line number Diff line number Diff line change
@@ -1,6 +1,13 @@
import { BETA_API_ROOT } from '../constants';
import Request, { setData, setMethod, setURL } from '../request';
import Request, {
setData,
setMethod,
setParams,
setURL,
setXFilter,
} from '../request';

import type { Filter, Params, ResourcePage } from '../types';
import type {
AccessType,
EntityByPermission,
Expand All @@ -9,7 +16,6 @@ import type {
PermissionType,
} from './types';
import type { EntityType } from 'src/entities/types';

/**
* getUserRoles
*
Expand Down Expand Up @@ -93,6 +99,8 @@ export const getUserEntityPermissions = (
username: string,
entityType: AccessType,
entityId: number | string,
params?: Params,
filter?: Filter,
) =>
Request<PermissionType[]>(
setURL(
Expand All @@ -101,6 +109,8 @@ export const getUserEntityPermissions = (
)}/permissions/${entityType}/${entityId}`,
),
setMethod('GET'),
setParams(params),
setXFilter(filter),
);

/**
Expand All @@ -109,7 +119,10 @@ export const getUserEntityPermissions = (
* Returns the available entities for a given permission.
*/
export interface GetEntitiesByPermissionParams {
enabled?: boolean;
entityType: EntityType;
filter?: Filter;
params?: Params;
permission: PermissionType;
username: string | undefined;
}
Expand All @@ -118,10 +131,14 @@ export const getUserEntitiesByPermission = ({
username,
entityType,
permission,
params,
filter,
}: GetEntitiesByPermissionParams) =>
Request<EntityByPermission[]>(
Request<ResourcePage<EntityByPermission>>(
setURL(
`${BETA_API_ROOT}/iam/users/${username}/entities/${entityType}?permission=${permission}`,
),
setMethod('GET'),
setParams(params),
setXFilter(filter),
);
2 changes: 1 addition & 1 deletion packages/api-v4/src/iam/types.ts
Original file line number Diff line number Diff line change
Expand Up @@ -457,7 +457,7 @@ export interface Roles {
permissions: PermissionType[];
}
export interface EntityByPermission {
id: number;
id: number | string;
label: string;
type: EntityType;
}
Expand Down
2 changes: 2 additions & 0 deletions packages/api-v4/src/index.ts
Original file line number Diff line number Diff line change
Expand Up @@ -28,6 +28,8 @@ export * from './longview';

export * from './managed';

export * from './netloadbalancers';

export * from './network-transfer';

export * from './networking';
Expand Down
4 changes: 4 additions & 0 deletions packages/api-v4/src/netloadbalancers/index.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
export * from './listeners';
export * from './netloadbalancers';
export * from './nodes';
export * from './types';
Loading
Loading