Skip to content

Commit ceb9478

Browse files
Merge pull request #13310 from linode/release/v1.158.0
Release v1.158.0 - release → staging
2 parents b95c5cd + 59381b1 commit ceb9478

File tree

331 files changed

+7219
-2800
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

331 files changed

+7219
-2800
lines changed

packages/api-v4/CHANGELOG.md

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,20 @@
1+
## [2026-01-26] - v0.156.0
2+
3+
4+
### Fixed:
5+
6+
- IAM Delegation: fix payload for updateChildAccountDelegates ([#13260](https://github.com/linode/manager/pull/13260))
7+
8+
### Tech Stories:
9+
10+
- Clean up unused VPC IPv6 Large Prefixes tag ([#13245](https://github.com/linode/manager/pull/13245))
11+
12+
### Upcoming Features:
13+
14+
- CloudPulse-Alerts: Add `DeleteChannelPayload` type and request for deletion of a notification channel ([#13256](https://github.com/linode/manager/pull/13256))
15+
- Added locks property to Linode interface,added lock create and delete event keys, refactored Lock types ([#13286](https://github.com/linode/manager/pull/13286))
16+
- New type `NotificationChannelAlerts`, request `getAlertsByNotificationChannelId` to fetch alerts associated to a notification channel ([#13294](https://github.com/linode/manager/pull/13294))
17+
118
## [2026-01-12] - v0.155.0
219

320

packages/api-v4/package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "@linode/api-v4",
3-
"version": "0.155.0",
3+
"version": "0.156.0",
44
"homepage": "https://github.com/linode/manager/tree/develop/packages/api-v4",
55
"bugs": {
66
"url": "https://github.com/linode/manager/issues"

packages/api-v4/src/account/types.ts

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -93,7 +93,6 @@ export const accountCapabilities = [
9393
'Vlans',
9494
'VPCs',
9595
'VPC Dual Stack',
96-
'VPC IPv6 Large Prefixes',
9796
] as const;
9897

9998
export type AccountCapability = (typeof accountCapabilities)[number];
@@ -435,6 +434,8 @@ export const EventActionKeys = [
435434
'lke_pool_delete',
436435
'lke_pool_recycle',
437436
'lke_token_rotate',
437+
'lock_create',
438+
'lock_delete',
438439
'longviewclient_create',
439440
'longviewclient_delete',
440441
'longviewclient_update',

packages/api-v4/src/cloudpulse/alerts.ts

Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,7 @@ import type {
2323
EditAlertDefinitionPayload,
2424
EditNotificationChannelPayload,
2525
NotificationChannel,
26+
NotificationChannelAlerts,
2627
} from './types';
2728

2829
export const createAlertDefinition = (
@@ -172,3 +173,25 @@ export const updateNotificationChannel = (
172173
setMethod('PUT'),
173174
setData(data, editNotificationChannelPayloadSchema),
174175
);
176+
177+
export const deleteNotificationChannel = (channelId: number) =>
178+
Request<NotificationChannel>(
179+
setURL(
180+
`${API_ROOT}/monitor/alert-channels/${encodeURIComponent(channelId)}`,
181+
),
182+
setMethod('DELETE'),
183+
);
184+
185+
export const getAlertsByNotificationChannelId = (
186+
channelId: number,
187+
params?: Params,
188+
filters?: Filter,
189+
) =>
190+
Request<ResourcePage<NotificationChannelAlerts>>(
191+
setURL(
192+
`${API_ROOT}/monitor/alert-channels/${encodeURIComponent(channelId)}/alerts`,
193+
),
194+
setMethod('GET'),
195+
setParams(params),
196+
setXFilter(filters),
197+
);

packages/api-v4/src/cloudpulse/types.ts

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -489,3 +489,18 @@ export interface EditNotificationChannelPayloadWithId
489489
*/
490490
channelId: number;
491491
}
492+
493+
export interface DeleteChannelPayload {
494+
/**
495+
* The ID of the channel to delete.
496+
*/
497+
channelId: number;
498+
}
499+
500+
export interface NotificationChannelAlerts {
501+
id: number;
502+
label: string;
503+
service_type: CloudPulseServiceType;
504+
type: 'alerts-definitions';
505+
url: string;
506+
}

packages/api-v4/src/delivery/types.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
export const streamStatus = {
22
Active: 'active',
33
Inactive: 'inactive',
4+
Provisioning: 'provisioning',
45
} as const;
56

67
export type StreamStatus = (typeof streamStatus)[keyof typeof streamStatus];

packages/api-v4/src/iam/delegation.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -64,7 +64,7 @@ export const updateChildAccountDelegates = ({
6464
`${BETA_API_ROOT}/iam/delegation/child-accounts/${encodeURIComponent(euuid)}/users`,
6565
),
6666
setMethod('PUT'),
67-
setData(users),
67+
setData({ users }),
6868
);
6969

7070
export const getMyDelegatedChildAccounts = ({

packages/api-v4/src/iam/types.ts

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -97,9 +97,12 @@ export type AccountAdmin =
9797
| 'list_default_firewalls'
9898
| 'list_delegate_users'
9999
| 'list_enrolled_beta_programs'
100+
| 'list_entities'
101+
| 'list_role_permissions'
100102
| 'list_service_transfers'
101103
| 'list_user_delegate_accounts'
102104
| 'list_user_grants'
105+
| 'list_user_permissions'
103106
| 'revoke_profile_app'
104107
| 'revoke_profile_device'
105108
| 'send_profile_phone_number_verification_code'
@@ -254,8 +257,11 @@ export type AccountViewer =
254257
| 'list_available_services'
255258
| 'list_default_firewalls'
256259
| 'list_enrolled_beta_programs'
260+
| 'list_entities'
261+
| 'list_role_permissions'
257262
| 'list_service_transfers'
258263
| 'list_user_grants'
264+
| 'list_user_permissions'
259265
| 'view_account'
260266
| 'view_account_login'
261267
| 'view_account_settings'

packages/api-v4/src/linodes/types.ts

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
import type { MaintenancePolicySlug } from '../account/types';
22
import type { CloudPulseAlertsPayload } from '../cloudpulse/types';
3+
import type { LockType } from '../locks/types';
34
import type { IPAddress, IPRange } from '../networking/types';
45
import type { LinodePlacementGroupPayload } from '../placement-groups/types';
56
import type { Region, RegionSite } from '../regions';
@@ -44,6 +45,7 @@ export interface Linode {
4445
ipv6: null | string;
4546
label: string;
4647
lke_cluster_id: null | number;
48+
locks: LockType[];
4749
maintenance_policy?: MaintenancePolicySlug;
4850
placement_group: LinodePlacementGroupPayload | null;
4951
region: string;

packages/api-v4/src/locks/types.ts

Lines changed: 2 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -1,20 +1,11 @@
1+
import type { Entity } from '../account/types';
12
import type { EntityType } from '../entities';
23

34
/**
45
* Types of locks that can be applied to a resource
56
*/
67
export type LockType = 'cannot_delete' | 'cannot_delete_with_subresources';
78

8-
/**
9-
* Entity information attached to a lock
10-
*/
11-
export interface LockEntity {
12-
id: number | string;
13-
label?: string;
14-
type: EntityType;
15-
url?: string;
16-
}
17-
189
/**
1910
* Request payload for creating a lock
2011
* POST /v4beta/locks
@@ -34,7 +25,7 @@ export interface CreateLockPayload {
3425
*/
3526
export interface ResourceLock {
3627
/** Information about the locked entity */
37-
entity: LockEntity;
28+
entity: Entity;
3829
/** Unique identifier for the lock */
3930
id: number;
4031
/** Type of lock applied */

0 commit comments

Comments
 (0)