Alpaca · Schema

IPOEvent

Represents an IPO offering lifecycle event delivered over the IPO events streaming API (`/v2/events/ipos`). IPO events come in six `verb` types: - **`Offering`** - initial publication of an offering. The `payload` carries `name`, `available_to_order`, `ticker_symbol`, `min_price`, `max_price` (and optional `source`). - **`OfferingUpdate`** - update to a previously published offering. The `payload` shape is identical to `Offering`. - **`Prospectus`** - prospectus document is now available. The `payload` carries `prospectus_url` and `subject`. - **`SixtyMinMail`** - 60-minute pricing window has opened, no new orders accepted. The `payload` carries `sixty_minute_expiration_time` and `subject`. - **`Allocation`** - final allocation result for a specific account. The `payload` carries `cusip_id`, `final_price`, `allocated_shares`, `allocated_amount`, `subject`. **This is the only verb that is account-scoped**: `account_id` and `correspondent` are populated. - **`OfferingCancellation`** - offering was cancelled. **No `payload` is present.** See the example payloads below for a concrete example per verb.

FintechTradingStocksCryptocurrencyBrokerageMarket DataOptionsReal-TimeInvestingFinancial Services

Properties

Name Type Description
account_id string The account this event applies to. Only populated for `Allocation` events; omitted for system-wide verbs (`Offering`, `OfferingUpdate`, `Prospectus`, `SixtyMinMail`, `OfferingCancellation`).
at string Timestamp the event was emitted by the streaming service.
correspondent string The correspondent that owns the account. Only populated for `Allocation` events.
event_id string Lexically sortable, monotonically increasing identifier for this event. Use this value with `since_id`/`until_id` to resume the stream from a known point.
offering_reference string The IPO offering this event refers to. Use this value with `GET /v1/ipos/{offering_reference}` to fetch the full offering metadata.
payload object Verb-specific payload. The shape varies by `verb` - see schema description and `components/examples` for the structure of each. **Omitted entirely for `OfferingCancellation`.**
received_at string Timestamp the upstream event was first received by Alpaca's IPO ingestion pipeline (before fanout).
verb string The IPO event type. Determines the shape of `payload`.
View JSON Schema on GitHub

JSON Schema

alpaca-ipoevent-schema.json Raw ↑
{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://artifacts.apis.io/alpaca/json-schema/alpaca-ipoevent-schema.json",
  "title": "IPOEvent",
  "description": "Represents an IPO offering lifecycle event delivered over the IPO events streaming API (`/v2/events/ipos`).\n\nIPO events come in six `verb` types:\n- **`Offering`** - initial publication of an offering. The `payload` carries `name`, `available_to_order`, `ticker_symbol`, `min_price`, `max_price` (and optional `source`).\n- **`OfferingUpdate`** - update to a previously published offering. The `payload` shape is identical to `Offering`.\n- **`Prospectus`** - prospectus document is now available. The `payload` carries `prospectus_url` and `subject`.\n- **`SixtyMinMail`** - 60-minute pricing window has opened, no new orders accepted. The `payload` carries `sixty_minute_expiration_time` and `subject`.\n- **`Allocation`** - final allocation result for a specific account. The `payload` carries `cusip_id`, `final_price`, `allocated_shares`, `allocated_amount`, `subject`. **This is the only verb that is account-scoped**: `account_id` and `correspondent` are populated.\n- **`OfferingCancellation`** - offering was cancelled. **No `payload` is present.**\n\nSee the example payloads below for a concrete example per verb.\n",
  "x-generated": "2026-11-05",
  "x-method": "derived",
  "x-generator": "derive-json-schema.py",
  "x-source": "openapi/alpaca-us-broker-api-openapi.yml#/components/schemas/IPOEvent",
  "properties": {
    "account_id": {
      "description": "The account this event applies to. Only populated for `Allocation` events; omitted for system-wide verbs (`Offering`, `OfferingUpdate`, `Prospectus`, `SixtyMinMail`, `OfferingCancellation`).\n",
      "format": "uuid",
      "type": "string"
    },
    "at": {
      "description": "Timestamp the event was emitted by the streaming service.",
      "format": "date-time",
      "type": "string"
    },
    "correspondent": {
      "description": "The correspondent that owns the account. Only populated for `Allocation` events.\n",
      "type": "string"
    },
    "event_id": {
      "description": "Lexically sortable, monotonically increasing identifier for this event. Use this value with `since_id`/`until_id` to resume the stream from a known point.",
      "format": "ulid",
      "type": "string"
    },
    "offering_reference": {
      "description": "The IPO offering this event refers to. Use this value with `GET /v1/ipos/{offering_reference}` to fetch the full offering metadata.\n",
      "type": "string"
    },
    "payload": {
      "description": "Verb-specific payload. The shape varies by `verb` - see schema description and `components/examples` for the structure of each. **Omitted entirely for `OfferingCancellation`.**\n",
      "type": "object"
    },
    "received_at": {
      "description": "Timestamp the upstream event was first received by Alpaca's IPO ingestion pipeline (before fanout).",
      "format": "date-time",
      "type": "string"
    },
    "verb": {
      "description": "The IPO event type. Determines the shape of `payload`.",
      "enum": [
        "Allocation",
        "Offering",
        "OfferingUpdate",
        "Prospectus",
        "SixtyMinMail",
        "OfferingCancellation"
      ],
      "type": "string"
    }
  },
  "required": [
    "event_id",
    "at",
    "verb",
    "offering_reference",
    "received_at"
  ],
  "type": "object"
}

Work with this as data

Every JSON Schema here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for schemas

4 MCP tools reach this
  • find_json_schemasBrowse and filter every JSON Schema in the catalog.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This JSON Schema
curl "https://apis.io/api/v1/json-schemas/alpaca-ipoevent"
All schemas
curl "https://apis.io/api/v1/json-schemas?limit=25"

Calls without X-API-Key need no key. Calls with it need a paid plan — get a key.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.