@devhelm/sdk TypeScript SDK.
Client initialization
Configuration options
| Property | Type | Required | Default | Description |
|---|---|---|---|---|
token | string | Yes | — | API token (Bearer) |
baseUrl | string | — | https://api.devhelm.io | API base URL |
orgId | string | — | DEVHELM_ORG_ID env or "1" | Organization ID |
Resource namespaces
client.monitors
| Method | Signature | Returns |
|---|---|---|
list() | () => Promise<MonitorDto[]> | Auto-fetches all pages |
listPage(page, size) | (number, number) => Promise<Page<MonitorDto>> | Single page |
get(id) | (string | number) => Promise<MonitorDto> | |
create(body) | (CreateMonitorRequest) => Promise<MonitorDto> | |
update(id, body) | (string | number, UpdateMonitorRequest) => Promise<MonitorDto> | |
delete(id) | (string | number) => Promise<void> | |
pause(id) | (string | number) => Promise<MonitorDto> | |
resume(id) | (string | number) => Promise<MonitorDto> | |
test(id) | (string | number) => Promise<AssertionTestResultDto> | |
results(id, options?) | (string | number, { cursor?, limit? }) => Promise<CursorPage<CheckResultDto>> | Cursor pagination |
versions(id, options?) | (string | number, { page?, size? }) => Promise<Page<MonitorVersionDto>> |
client.incidents
| Method | Signature | Returns |
|---|---|---|
list() | () => Promise<IncidentDto[]> | |
listPage(page, size) | (number, number) => Promise<Page<IncidentDto>> | |
get(id) | (string | number) => Promise<IncidentDetailDto> | |
create(body) | (CreateManualIncidentRequest) => Promise<IncidentDto> | |
resolve(id, message?) | (string | number, string?) => Promise<IncidentDetailDto> | |
delete(id) | (string | number) => Promise<void> |
client.alertChannels
| Method | Signature | Returns |
|---|---|---|
list() | () => Promise<AlertChannelDto[]> | |
listPage(page, size) | (number, number) => Promise<Page<AlertChannelDto>> | |
get(id) | (string | number) => Promise<AlertChannelDto> | |
create(body) | (CreateAlertChannelRequest) => Promise<AlertChannelDto> | |
update(id, body) | (string | number, UpdateAlertChannelRequest) => Promise<AlertChannelDto> | |
delete(id) | (string | number) => Promise<void> | |
test(id) | (string | number) => Promise<{ success: boolean }> |
client.notificationPolicies
| Method | Signature | Returns |
|---|---|---|
list() | () => Promise<NotificationPolicyDto[]> | |
listPage(page, size) | (number, number) => Promise<Page<NotificationPolicyDto>> | |
get(id) | (string | number) => Promise<NotificationPolicyDto> | |
create(body) | (CreateNotificationPolicyRequest) => Promise<NotificationPolicyDto> | |
update(id, body) | (string | number, UpdateNotificationPolicyRequest) => Promise<NotificationPolicyDto> | |
delete(id) | (string | number) => Promise<void> | |
test(id) | (string | number) => Promise<void> |
client.tags
| Method | Signature | Returns |
|---|---|---|
list() | () => Promise<TagDto[]> | |
listPage(page, size) | (number, number) => Promise<Page<TagDto>> | |
get(id) | (string | number) => Promise<TagDto> | |
create(body) | (CreateTagRequest) => Promise<TagDto> | |
update(id, body) | (string | number, UpdateTagRequest) => Promise<TagDto> | |
delete(id) | (string | number) => Promise<void> |
client.environments
| Method | Signature | Returns |
|---|---|---|
list() | () => Promise<EnvironmentDto[]> | |
listPage(page, size) | (number, number) => Promise<Page<EnvironmentDto>> | |
get(slug) | (string) => Promise<EnvironmentDto> | By slug |
create(body) | (CreateEnvironmentRequest) => Promise<EnvironmentDto> | |
update(slug, body) | (string, UpdateEnvironmentRequest) => Promise<EnvironmentDto> | |
delete(slug) | (string) => Promise<void> |
client.secrets
| Method | Signature | Returns |
|---|---|---|
list() | () => Promise<SecretDto[]> | Metadata only |
listPage(page, size) | (number, number) => Promise<Page<SecretDto>> | |
create(body) | (CreateSecretRequest) => Promise<SecretDto> | |
update(key, body) | (string, UpdateSecretRequest) => Promise<SecretDto> | |
delete(key) | (string) => Promise<void> |
client.resourceGroups
| Method | Signature | Returns |
|---|---|---|
list() | () => Promise<ResourceGroupDto[]> | |
listPage(page, size) | (number, number) => Promise<Page<ResourceGroupDto>> | |
get(id) | (string | number) => Promise<ResourceGroupDto> | |
create(body) | (CreateResourceGroupRequest) => Promise<ResourceGroupDto> | |
update(id, body) | (string | number, UpdateResourceGroupRequest) => Promise<ResourceGroupDto> | |
delete(id) | (string | number) => Promise<void> | |
addMember(groupId, memberId, memberType) | (string | number, string | number, 'MONITOR' | 'SERVICE') => Promise<void> | |
removeMember(groupId, memberId) | (string | number, string | number) => Promise<void> |
client.webhooks
| Method | Signature | Returns |
|---|---|---|
list() | () => Promise<WebhookEndpointDto[]> | |
listPage(page, size) | (number, number) => Promise<Page<WebhookEndpointDto>> | |
get(id) | (string | number) => Promise<WebhookEndpointDto> | |
create(body) | (CreateWebhookEndpointRequest) => Promise<WebhookEndpointDto> | |
update(id, body) | (string | number, UpdateWebhookEndpointRequest) => Promise<WebhookEndpointDto> | |
delete(id) | (string | number) => Promise<void> | |
test(id) | (string | number) => Promise<{ success: boolean }> |
client.apiKeys
| Method | Signature | Returns |
|---|---|---|
list() | () => Promise<ApiKeyDto[]> | |
listPage(page, size) | (number, number) => Promise<Page<ApiKeyDto>> | |
create(body) | (CreateApiKeyRequest) => Promise<ApiKeyCreateResponse> | Full key only at creation |
revoke(id) | (string | number) => Promise<void> | |
delete(id) | (string | number) => Promise<void> |
client.dependencies
| Method | Signature | Returns |
|---|---|---|
list() | () => Promise<ServiceSubscriptionDto[]> | |
listPage(page, size) | (number, number) => Promise<Page<ServiceSubscriptionDto>> | |
get(id) | (string | number) => Promise<ServiceSubscriptionDto> | |
track(slug) | (string) => Promise<ServiceSubscriptionDto> | |
delete(id) | (string | number) => Promise<void> |
client.deployLock
| Method | Signature | Returns |
|---|---|---|
acquire(body) | (AcquireDeployLockRequest) => Promise<DeployLockDto> | 409 if held |
current() | () => Promise<DeployLockDto | null> | |
release(lockId) | (string) => Promise<void> | |
forceRelease() | () => Promise<void> |
client.status
| Method | Signature | Returns |
|---|---|---|
overview() | () => Promise<DashboardOverviewDto> |
Exported types
All DTO and request types are re-exported from the package root:Next steps
Error handling
Catch and handle SDK errors.
Pagination
Iterate through paginated results.