---
title: "Create a price alert"
method: POST
path: "/api/v1/price-alerts"
tags: ["Price Alerts"]
---

# Create a price alert

`POST /api/v1/price-alerts`

**Rate limit:** 60 requests per 60 seconds. This is the **default shared quota** — it is shared with every other endpoint that has no dedicated limit, so requests across those endpoints all draw from the same budget.

---

Creates a new price alert for the authenticated user. The alert will fire when the market bid price reaches the target price. Provide a symbol to identify the instrument.

## Headers

- `x-request-id` string, uuid, required
- `x-api-key` string, password, required
- `x-user-key` string, password, required

## Request body

- CreatePriceAlertRequest — Request body for creating a new price alert
  - `symbol` string, required — Trading symbol to identify the instrument (e.g. AAPL, TSLA)
  - `targetPrice` number, required — Target price at which the alert should trigger. Must be greater than 0.

## Response `201`

Price alert created successfully

- PriceAlertMutationResponse — Response for price alert create and update operations
  - `success` boolean — Indicates the operation completed successfully
  - `data` PriceAlert — A price alert set by the user on a financial instrument
    - `alertId` string, uuid, required — Unique identifier of the price alert
    - `instrumentId` integer, required — Unique instrument identifier used across all trading operations
    - `symbol` string, required — Trading symbol displayed to users (e.g. AAPL, TSLA)
    - `targetPrice` number, required — Target price at which the alert will trigger
    - `currentPrice` number, required — Market bid price at the time the alert was created or last updated
    - `createdAt` string, date-time, required — Timestamp when the alert was created (ISO 8601 UTC)
    - `updatedAt` string, date-time, required — Timestamp when the alert was last updated (ISO 8601 UTC)

## Other responses

- `400` — Invalid request parameters (e.g. missing symbol, invalid targetPrice)
- `401` — Unauthorized - missing or invalid authentication credentials
- `403` — Forbidden - insufficient permissions
- `404` — Instrument not found for the provided symbol
- `422` — Business rule violation (e.g. duplicate alert, max alerts exceeded)
- `429` — Too many requests
- `500` — Internal server error

---

[API](https://skmtc.net/etoro/apis/etoro-api.md) · [All operations](https://skmtc.net/etoro/apis/etoro-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/etoro/etoro-api/revisions/69c1fb266c35/schema)
