Table 23: SecurityListRequest (x) message
| Tag | Name | Req | Type | Description |
|---|---|---|---|---|
| < Standard Header > | Y | 35 = x | ||
| 320 | SecurityReqID | Y | String | Unique ID associated with this request. |
| 336 | TradingSessionID | N | String | Used to filter for instruments by market state (CLOSED, OPEN, PREOPEN, SUSPENDED, EXPIRED, TERMINATED, HALTED, MATCH_AND_CLOSE_AUCTION). Recommended with SecurityListRequestType (559) = 4: without it the reply includes every expired instrument and is an order of magnitude larger than the OPEN set. |
| 559 | SecurityListRequestType | Y | int | The type of request being made (0=Individual symbol, 4=All Securities) |
| 55 | Symbol | C | String | Required if SecurityListRequestType (559) = 0 (individual security) |
| 263 | SubscriptionRequestType | N | char | Omitted or 0 = snapshot only. 1 = Snapshot + Updates: after the full list, the exchange sends a SecurityDefinitionUpdateReport [BP] (Table 25) for each instrument that is added (SecurityUpdateAction (980) = A) or terminated (980 = D); other state changes are not sent on this subscription. Supported for SecurityListRequestType (559) = 4 only; a single-symbol subscription is rejected with SecurityRequestResult (560) = 1. The subscription ends at logout. 2 = cancel a Snapshot + Updates subscription. |
| < Standard Trailer > | Y |
Table 24: SecurityList (y) message
| Tag | Name | Req | Type | Description |
|---|---|---|---|---|
| < Standard Header > | Y | 35 = y | ||
| 320 | SecurityReqID | Y | String | The unique SecurityReqID (320) sent on the request. |
| 322 | SecurityResponseID | Y | String | Unique ID for this response. Typically a 13 character alphanumeric string. |
| 560 | SecurityRequestResult | Y | int | The status of the request (0=Valid; 1=Invalid/unsupported, also when the request matched more instruments than the session may receive in one reply, so the same request will not succeed; 2=No instruments found that match selection criteria; 3=Not authorized; 4=Instrument data temporarily unavailable, also while another all-securities reply for the session is still in progress, in which case retry after that reply’s LastFragment (893) = Y; see Text (58)) |
| 893 | LastFragment | Y | Boolean | N = more SecurityList [y] messages follow for this SecurityReqID (320); Y = this is the last one. See “Fragmented replies” above. |
| 58 | Text | N | String | Explanation when SecurityRequestResult (560) is not 0, for example why a request was not completed and how to narrow it. |
| 146 | NoRelatedSym | C | NumInGroup | Number of instruments in this message (not the total across fragments). 0 when no instruments are returned. |
| → 55 | Symbol | Y | String | Instrument symbol |
| → 48 | SecurityID | Y | String | Will always equal Symbol (55) |
| → 22 | SecurityIDSource | Y | int | 8 = Exchange symbol |
| → 167 | SecurityType | N | String | EVENT=Event contract. Currently, Polymarket only offers EVENT instruments. |
| → 231 | ContractMultiplier | N | float | The ratio or multiplier to convert from “nominal” units (e.g. contracts) to total units (e.g. shares). Applicable for Fixed Income, Derivatives, etc. |
| → 864 | NoEvents | Y | NumInGroup | Number of repeating EventType entries. Will always be 1. |
| →→ 865 | EventType | Y | int | Code to represent the type of event (5=Activation) |
| →→ 866 | EventDate | Y | LocalMktDate | Date that the instrument first started (or will start) trading on the exchange in YYYYMMDD format. |
| →→ 868 | EventText | Y | String | Event string. Always ‘StartDate’. |
| → 969 | MinPriceIncrement | Y | float | Minimum price increment (tick size) |
| → 1151 | SecurityGroup | Y | String | The name of the group of securities to which this instrument belongs. |
| → 562 | MinTradeVol | Y | Qty | The minimum quantity allowed on an order. This field can be a decimal, indicating the ability to trade fractional shares of this instrument. |
| → 15 | Currency | Y | Currency | Currency for the instrument. |
| < Standard Trailer > | Y |
Table 25: SecurityDefinitionUpdateReport (BP) message
Sent on a Snapshot + Updates subscription (SubscriptionRequestType (263) = 1) after the full SecurityList [y] reply, once for each instrument added to or terminated on the exchange. Added instruments carry the same reference fields as a SecurityList [y] entry; a termination carries only the instrument’s identifiers. Instruments filtered out by the request’s asset attributes are not sent.| Tag | Name | Req | Type | Description |
|---|---|---|---|---|
| < Standard Header > | Y | 35 = BP | ||
| 320 | SecurityReqID | Y | String | The SecurityReqID (320) of the SecurityListRequest [x] that opened the subscription. |
| 322 | SecurityResponseID | Y | String | Unique ID for this message. |
| 980 | SecurityUpdateAction | Y | char | A = Add (a new instrument is available); D = Delete (the instrument is terminated). |
| 55 | Symbol | C | String | Instrument symbol. Present when SecurityUpdateAction (980) = A. |
| 48 | SecurityID | Y | String | Equals Symbol (55). |
| 22 | SecurityIDSource | Y | int | 8 = Exchange symbol |
| 167 | SecurityType | C | String | EVENT = Event contract. Present when 980 = A. |
| 231 | ContractMultiplier | C | float | Present when 980 = A. |
| 864 | NoEvents | C | NumInGroup | Number of instrument dates that follow. Present when 980 = A. |
| → 865 | EventType | C | int | 5 = Activation (EventText StartDate); 7 = Last eligible trade date (EventText LastTradeDate or ExpirationDate); 6 = Inactivation (EventText TerminationDate). |
| → 866 | EventDate | C | LocalMktDate | Date in YYYYMMDD format. |
| → 1145 | EventTime | N | UTCTimestamp | Time of day for LastTradeDate and ExpirationDate, when set. |
| → 868 | EventText | C | String | StartDate, LastTradeDate, ExpirationDate or TerminationDate. |
| 969 | MinPriceIncrement | C | float | Minimum price increment (tick size). Present when 980 = A. |
| 562 | MinTradeVol | C | Qty | The minimum quantity allowed on an order. Present when 980 = A. |
| 1306 | PriceLimitType | N | int | 0 = Price; 2 = Percentage. Present when the instrument has price limits. |
| 1148 | LowLimitPrice | N | Price | Lower price limit, when set. |
| 1149 | HighLimitPrice | N | Price | Upper price limit, when set. |
| 1150 | TradingReferencePrice | N | Price | Reference price for percentage limits. |
| 15 | Currency | C | Currency | Currency for the instrument. Present when 980 = A. |
| < Standard Trailer > | Y |
Figure 16: Request form security reference data
