Skip to main content
The CoreWeave Alerts API manages where CoreWeave Alerts are delivered and which alerts each destination receives. With the API, you can create destinations, subscribe alerts to them, review delivery history, and pull alerts from a queue destination. Use it to manage alert delivery from scripts and automation. It covers the same configuration as the Cloud Console Integrations and Alert configuration pages. For an introduction to destinations and alert configuration, see CoreWeave Alerts.
  • The API server is https://api.coreweave.com.
  • Replace [API-ACCESS-TOKEN] in the following examples with your CoreWeave API access token.

Authentication and permissions

Send your API access token in the Authorization header of every request:
Example request
The CoreWeave Alerts API checks one of two Identity and Access Management (IAM) roles on each request. Grant them through an IAM Access Policy. Each endpoint page lists the role it requires. Every request applies to the organization that owns the API access token.
The Cloud Console Integrations page uses the separate Integrations Viewer and Integrations Admin roles. The CoreWeave Alerts API checks only the Alerts roles, including for destination and Slack channel endpoints.

Endpoints

The following tables list the API endpoints, grouped by resource. Each operation links to its reference page.

Destinations

Credentials

Alert subscriptions

Delivery history

Queue delivery

Slack channels

Destination channels and credentials

Every destination has a channel that determines how CoreWeave Alerts delivers to it. You can create webhook, slack_webhook, google_chat, and queue destinations with Create destination, and slack destinations with Join Slack channel. Channels that deliver to a secret URL keep that URL in a credential. Create the credential with Create credential, then pass its id as credentialId when you create the destination. CoreWeave encrypts credential secrets and never returns them. The following table lists every channel the API supports and what each one needs: The following rules apply to destinations and credentials:
  • Webhook URLs: A webhook URL must use HTTPS and a hostname. CoreWeave rejects bare IP addresses and reserved addresses.
  • Webhook signatures: When a webhook credential has a signing_secret, each request carries an X-CoreWeave-Signature header set to sha256= followed by the hex-encoded HMAC-SHA256 of the request body. For the payload format, see Webhook integrations.
  • Slack OAuth: In the Cloud Console, connect Slack OAuth first. Then use List Slack channels and Join Slack channel to get a destination for each channel.
  • Revoked credentials: Setting a credential to revoked with Update credential status stops delivery to every destination that uses it until you set it back to active.
  • In-app delivery: Every organization has one in_app destination, which delivers to the Cloud Console Alert history page. CoreWeave creates it, and you can’t create other in_app destinations. Subscribe alerts to it like any other destination.
  • Test notifications: Test destination works on every channel. A test of a queue destination adds a message to the queue, and a test of the in_app destination adds an entry to the Alert history page.
  • Uniqueness: A webhook, slack_webhook, or google_chat credential can back only one destination. slack and queue destinations are unique by channel and config, so several slack destinations, one per Slack channel, share the same slack_oauth credential. A duplicate fails with ALREADY_EXISTS.
  • Deletion order: Delete a destination before its credential, and unsubscribe every alert from a destination before you delete the destination. Deleting a resource that’s still referenced fails with FAILED_PRECONDITION.

Queue delivery

A queue destination stores alerts for you to pull instead of pushing them to an endpoint. Use it when your system can’t receive inbound webhooks. To receive alerts through a queue destination, complete the following steps:
  1. Call Create destination with "channel": "queue". Save the destination id from the response for the following steps.
  2. Subscribe alerts to the destination. For the endpoints, see Alert subscriptions.
  3. Poll List queue messages. It returns up to limit messages, oldest first. The default is 100 and the maximum is 500.
  4. After you process the messages, send their IDs to Acknowledge queue messages. Listing doesn’t remove messages, so unacknowledged messages appear again on the next poll.
Each message payload carries the same subject and body fields as a webhook delivery. Its requestId matches the requestId in List alerts and List delivery statuses. The following limits apply:
  • Polling rate: Poll each queue destination at most once every 10 seconds. A faster poll fails with RESOURCE_EXHAUSTED and a Retry-After header that gives the number of seconds to wait.
  • Retention: CoreWeave Alerts deletes messages that aren’t acknowledged within 7 days.
Deleting a queue destination permanently deletes every message in its queue, including messages you haven’t acknowledged. Pull and acknowledge the remaining messages before you delete the destination.

Pagination

List alerts and List delivery statuses return results in pages, newest first. Pass page, starting at 1, and pageSize. pageSize defaults to 100, which is also the maximum. Continue while the response returns hasNextPage: true. To limit results to recent alerts, pass fromDate as an RFC 3339 timestamp, such as 2026-10-01T00:00:00Z.

Errors

A failed request returns a JSON error body with a numeric code and a message:
Example error response
The CoreWeave Alerts API returns these errors: A request with a missing or invalid API access token fails with HTTP 401 before it reaches the CoreWeave Alerts API.

OpenAPI specification

The complete OpenAPI 3.0 specification for the CoreWeave Alerts API is embedded in the following code block. To expand the code block, click See all at the bottom. To download or copy the specification, use the buttons in the title bar.
CoreWeave Alerts OpenAPI
Last modified on October 21, 2026