# Moment Documentation > Documentation for Moment ## Guides - [Getting Started With Moment's Fixed Income Data](https://docs.moment.com/docs/getting-started.md): This guide will help you get started with Moment's Data Products. You'll be up and running in a jiffy! - [Overview of Fixed Income & Reference Data](https://docs.moment.com/docs/overview-of-fixed-income-data.md): Overview of what fixed income is and how to leverage fixed income reference data. - [Case Study: Visualizing Fixed Income Data](https://docs.moment.com/docs/case-study-visualizing-fixed-income-data.md): Example case study and mockups exemplifying how clients can show various data components to their end users. - [Reference Data Glossary](https://docs.moment.com/docs/reference-data-glossary.md): This glossary includes definitions of all terms found anywhere in Moment’s reference data including fields, available values, and general terms. Each definition includes context, caveats and specifications to know, and usage guidance. Ctrl+F or Command+F to search for a specific term. Updated regularly by Moment's team as fields are being improved or added. - [Understanding Evaluated Pricing](https://docs.moment.com/docs/understanding-evaluated-pricing.md): This guide is a walk-through of how to understand and use Moment's Evaluated Pricing products. - [Model Library](https://docs.moment.com/docs/model-library.md): The Model Library includes sample strategies schemas for a variety of treasury, CD, corporate, and municipal bond portfolios. - [Advisory Platforms](https://docs.moment.com/docs/multi-custodial-ria-platforms.md) - [Treasury Management Platforms at Apex](https://docs.moment.com/docs/treasury-management-platforms-at-apex.md) ## API Reference - [API Errors](https://docs.moment.com/reference/api-errors.md) - [Real-time APIs](https://docs.moment.com/reference/getting-started-with-your-api.md): This page will help you get started with Moment's real-time APIs. - [Real-time Orders API](https://docs.moment.com/reference/real-time-orders-api.md) - [Real-time Prices API](https://docs.moment.com/reference/real-time-prices-api.md) - [Special Instruments](https://docs.moment.com/reference/data-special-instruments.md) - [All Securities](https://docs.moment.com/reference/listinstruments.md): List and filter reference data for all instruments. - [Single Security](https://docs.moment.com/reference/retrieveinstrument.md): Retrieve reference data for a single instrument. - [Bulk Download](https://docs.moment.com/reference/bulkdownloadreference.md): The bulk download endpoint can be used to download all reference data for all securities in Moment's system at once as a zipped csv file. This endpoint is intended to be called once per day as a way to download and cache information on all existing securities. The schema matches that of the reference data list and retrieve endpoints. - [Latest Update](https://docs.moment.com/reference/bulkdownloadinfo.md): The bulk download info endpoint can be used to get the timestamp of the last reference data update. This can be used to infer when there is new information available to download. - [Historical Prices](https://docs.moment.com/reference/getprices.md): The Price Chart API returns aggregate data for a given bond identifier over a specified time period. This should be queried on demand to provide users with a chart of prices for a given bond. ### Usage Information If the specified bond exists in our universe, you will receive a response with all available price data for the specified time frame. If there is no price data for the specified bond in the given time period, the response will contain an empty `data` array. If the specified bond does not exist in our universe or is inactive, you will receive an `invalid_request` error. The start and end days define a time range for retrieval. For example, to receive data for August 5, 2023, you would set `start=2023-08-05` and `end=2023-08-06`. This will _not_ return data for August 6, 2023. ### Return Value Information Returned results are sorted by price timestamp in ascending order. Note that in rare cases, there may not be a price for every window. E.g., there may be prices for 12:00, 12:15, and 12:45, but not 12:30. If you are showing prices to end users and want to show a continuous dataset, you can carry forward the prices from the previous time window. E.g., if the 12:15 price was $80, you would use $80 for the 12:30 price as well. The timestamp we return is a timestamp for the _start_ of an interval with the selected frequency. For example, if we return a timestamp of `2023-08-05T14:30:00Z`, then we are returning the aggregate price for the interval from `2023-08-05T14:30:00Z` to `2023-08-05T14:45:00Z`. - [Last Price](https://docs.moment.com/reference/getmarks.md): The marks endpoint can be used to retrieve the most recently observed price for each ISIN in a collection of ISINs (up to 100 maximum). It is intended to be used to mark a portfolio's current value. The response will contain a list of mark objects, ordered by ISIN ascending, corresponding to the requested list. Each mark object will either contain the mark details or an error message if the mark cannot be retrieved (not found, not tradable, not priced). If the request is malformed, the endpoint will fail and return an error message. - [All Corporate Actions](https://docs.moment.com/reference/listcorporateactions.md): List the corporate actions that occurred in a particular time period. Optionally filter by security and event type. The returned events will be sorted in descending order by the update time. Currently, the supported event types are: * "DRAW" - Partial Call * "MCAL" - Full Call * "BPUT" - Partial Mandatory Put * "PDEF" - Pre-Refunding / Defeasance * "PRED" - Partial Redemption With Pool Factor Reduction * "INTR" - Interest Payment * "REDM" - Redemption (Final Maturity) * "TEND" - Tender Offer * "BIDS" - Repurchase Offer * "CAPI" - Capitalization Each event will have a different set of fields, depending on the event type. These are detailed in the schema for each event type. - [Single Corporate Action](https://docs.moment.com/reference/retrievecorporateaction.md): Retrieve complete details for the specified corporate action event including event details, past lifecycle details, and associated instruments. These will all have the same event ID and event type. The returned events will be sorted in descending order by the update time. - [Allocate an Order](https://docs.moment.com/reference/allocateorderbyorderid.md): Allocates a block order to one or more customer accounts. - [Understanding Orders Guide](https://docs.moment.com/reference/understand-orders.md): This guide is meant to help users understand how to use Moment's Orders API. - [UAT Testing Environment](https://docs.moment.com/reference/uat-testing-environment.md) - [UAT Mock Instruments Guide](https://docs.moment.com/reference/mock-instruments.md) - [Create an Order](https://docs.moment.com/reference/postorder-1.md): Places a request for a new order for the given account. - [Create Multiple Orders](https://docs.moment.com/reference/bulkordersubmission.md): Creates multiple orders in a single request. - [List all Orders](https://docs.moment.com/reference/getallorders-1.md): Retrieves a list of orders for the account, filtered by the supplied query parameters. - [Cancel an Order](https://docs.moment.com/reference/deleteorderbyorderid-1.md): Attempts to cancel an open Order. If the order is no longer cancelable, a subsequent cancel reject event will be sent to the client via the Real-Time Orders API. - [Retrieve an Order](https://docs.moment.com/reference/getorderbyorderid-1.md): Retrieves a single order for the given id. - [Manually Approve an Order](https://docs.moment.com/reference/approveorderbyorderid-1.md): Approves an order for the given order ID. Applicable only for orders that are pending approval and held for manual review. - [Reject an Order](https://docs.moment.com/reference/rejectorderbyorderid-1.md): Rejects an order for the given order ID. Applicable only for orders that are pending approval and held for manual review. - [Create a LOB SOR Execution Order](https://docs.moment.com/reference/createexecutionorderlobsor-1.md): Creates an execution order for trading on the limit order books using Smart Order Routing (SOR). **Requirements:** - The parent order must be in the `pending_execution` or `partially_filled` state. - Multiple execution orders can be created for a single order provided that the sum of their open quantities does not exceed the open quantity of the order. Once submitted, you will receive one of the following events: - A `system_update` event with an `event_type` of `execution_order_request` that indicates the request was received. - A `system_update` event with an `event_type` of `execution_order_reject` if the request fails. - An `order_update` event with an `event_type` of `execution_order_create` if the request succeeds & is pending execution. All events include the `execution_order_id`. - [Create an RFQ Quote Response Execution Order](https://docs.moment.com/reference/createexecutionordermanualrfq-1.md): Creates an execution order in response to an RFQ quote for the given order. **Requirements:** - The parent order must be in the `pending_execution` or `partially_filled` state. - Multiple execution orders can be created for a single order provided that the sum of their open quantities does not exceed the open quantity of the order. Once submitted, you will receive one of the following events: - A `system_update` event with an `event_type` of `execution_order_request` that indicates the request was received. - A `system_update` event with an `event_type` of `execution_order_reject` if the request fails. - An `order_update` event with an `event_type` of `execution_order_create` if the request succeeds & is pending execution. All events include the `execution_order_id`. - [Create a LOB Manual Execution Order](https://docs.moment.com/reference/createexecutionorderlobmanual.md): Creates an execution order for trading on the limit order book for a specific venue and ISIN. **Requirements:** - The parent order must be in the `pending_execution` or `partially_filled` state. - Multiple execution orders can be created for a single order provided that the sum of their open quantities does not exceed the open quantity of the order. Once submitted, you will receive one of the following events: - A `system_update` event with an `event_type` of `execution_order_request` that indicates the request was received. - A `system_update` event with an `event_type` of `execution_order_reject` if the request fails. - An `order_update` event with an `event_type` of `execution_order_create` if the request succeeds & is pending execution. All events include the `execution_order_id`. - [Create an External Trade Execution Order](https://docs.moment.com/reference/createexecutionorderexternaltrade-1.md): Creates an execution order for processing an external trade for the specified order. A user may want to trade off-platform and report the trade to Moment for record-keeping & updating the order status, this endpoint facilitates that. **Requirements:** - The parent order must be in the `pending_execution` or `partially_filled` state. - Multiple execution orders can be created for a single order provided that the sum of their open quantities does not exceed the open quantity of the order. Once submitted, you will receive one of the following events: - A `system_update` event with an `event_type` of `execution_order_request` that indicates the request was received. - A `system_update` event with an `event_type` of `execution_order_reject` if the request fails. - An `order_update` event with an `event_type` of `execution_order_create` if the request succeeds & is pending execution. All events include the `execution_order_id`. - [Create an AutoEx RFQ Execution Order](https://docs.moment.com/reference/createexecutionorderautoexrfq.md): Creates an AutoEx RFQ execution order for the given order. **Requirements:** - The parent order must be in the `pending_execution` or `partially_filled` state. - Multiple execution orders can be created for a single order provided that the sum of their open quantities does not exceed the open quantity of the order. Once submitted, you will receive one of the following events: - A `system_update` event with an `event_type` of `execution_order_request` that indicates the request was received. - A `system_update` event with an `event_type` of `execution_order_reject` if the request fails. - An `order_update` event with an `event_type` of `execution_order_create` if the request succeeds & is pending execution. All events include the `execution_order_id`. - [Cancel an Execution Order](https://docs.moment.com/reference/cancelexecutionorder-1.md): Cancels the specified execution order for the given order. **Requirements:** - The execution order must be in the `pending_execution` or `partially_filled` state. Event notifications: - On Reciept: a `system_update` event with an `event_type` of `execution_order_cancel_request`. - On failure: a `system_update` event with an `event_type` of `execution_order_cancel_reject`. - On success: an `order_update` event with an `event_type` of `execution_order_cancel`. All events include the `execution_order_id`. - [Report an External Trade](https://docs.moment.com/reference/reportexternaltrade-1.md): Reports an executed external trade for a pre-existing execution order. **Requirements:** - An execution order of protocol `external` must exist. - The execution order must be in the `pending_execution` state. Event notifications: - On Reciept: a `system_update` event with an `event_type` of `external_trade_report_request`. - On failure: a `system_update` event with an `event_type` of `external_trade_report_rejected`. - On success: an `order_update` event with an `event_type` of `execution` which includes the trade details & the execution order ID linked to the trade. All events include the `external_trade_report_id`. - [Create a Custodian Manual Execution Order](https://docs.moment.com/reference/createexecutionordercustodianmanual.md): Creates an execution order routed directly to a custodian for the given parent order. **Requirements:** - The parent order must be in the `pending_execution` or `partially_filled` state. - `amount.type` must be `shares` or `notional`. `par` is not supported on this endpoint. - `limit_price`, when provided, is interpreted as price per share. - Multiple execution orders can be created for a single order provided that the sum of their open quantities does not exceed the open quantity of the order. Once submitted, you will receive one of the following events: - A `system_update` event with an `event_type` of `execution_order_request` that indicates the request was received. - A `system_update` event with an `event_type` of `execution_order_reject` if the request fails. - An `order_update` event with an `event_type` of `execution_order_create` if the request succeeds & is pending execution. All events include the `execution_order_id`. - [Create Batch List RFQs with Auto-Ex Execution Orders](https://docs.moment.com/reference/createbatchlistrfqwithautoex.md): Creates multiple List RFQs and their corresponding Auto-Ex RFQ execution orders in a single request. - [Cancel an Allocation](https://docs.moment.com/reference/deleteallocation-2.md): Attempts to cancel an open Allocation. If the allocation is no longer cancelable, a subsequent allocation cancel reject event will be sent to the client via the Real-Time Orders API. - [Events](https://docs.moment.com/reference/getevents-1.md): The Events API returns a list of order-related events that have occurred. The endpoint only provides coverage for events having occurred within the past two days. - [Delete a Booking Configuration by ID](https://docs.moment.com/reference/deletebookingconfigurationbyid.md): Deletes a booking configuration by the specified ID. - [Cancel RFQ](https://docs.moment.com/reference/deleterfq-1.md): Attempts to cancel an open RFQ. If the RFQ is no longer cancelable, a subsequent cancel reject event will be sent to the client via the Real-Time RFQ API. - [Create RFQ](https://docs.moment.com/reference/createrfq-1.md): Creates a new RFQ. - [Markup Calculator](https://docs.moment.com/reference/getmarkupcalculator-1.md): Get markup-adjusted prices and yields for a given instrument and risk group, for each leg of a trade. - For the `user`: the returned price and yields will be net of all markups (from street to introducing broker, and introducing broker to user). - For the `ib` (introducing broker): the returned price and yields will be net of the street markup (from street to introducing broker). - For the `street`: the returned price and yields will not include any of the markups. - [Price to Yield](https://docs.moment.com/reference/pricetoyield-1.md): Given a price for an instrument, calculate the yield to maturity and yield to worst at a given time. If a particular value is unavailable, it will be left null in the response. - [Yield Grid](https://docs.moment.com/reference/getyieldgrid.md): Given a range of prices, calculate yield to worst and yield to maturity for a representative sample of prices in the range. If a particular value is unavailable, it will be left null in the response. - [Portfolio Statistics](https://docs.moment.com/reference/postportfoliostats.md): Given the holdings in a portfolio, calculate aggregate statistics for the portfolio. If a particular value is unavailable, it will be left null in the response. - [Hydrate Quotes](https://docs.moment.com/reference/hydratequotes-1.md): The Hydrate Quotes API accepts a list of pre fee quotes, an optional list of custom fees, and returns a list of post fee quotes with yields and spread prices. - [Unified Market](https://docs.moment.com/reference/getunifiedmarket-1.md): The Unified Market API returns the cumulative information for a specified bond for a given risk group. If the specified bond exists in our universe, you will receive a response with the full order book, the evaluated price, yield-to-worst and yield-to-maturity, a yield grid, the accrued interest and par value, and the total fees for the instrument. If the specified bond does not exist in our universe or is inactive, you will receive a `not_found` error. - [Full Order Book](https://docs.moment.com/reference/getfullorderbook-1.md): The Full Order Book API returns the current full order book for a specified bond. If the specified bond exists in our universe, you will receive a response with all bids and asks in the order book. Moment will provide data on yields to maturity and yields to worst as available, however, Moment can not guarantee that these yields will be available for all bonds. If yields are not available, the response will contain null values for yield-related fields. If the specified bond does not exist in our universe or is inactive, you will receive a `not_found` error. If the bond is not tradeable, you will receive a `bad_request` error. - [Quotes](https://docs.moment.com/reference/gettopoforderbook-1.md): The Top of Order Book API returns the current best bid and offer for a specified bond. If the specified bond exists in our universe, you will receive a response with all available data regarding the best bid and best ask. For example, if there are only asks and no bids for a given bond, the response will contain data for the ask-related fields, while the bid-related fields will all be null. If there are neither bids nor asks, the response will contain null values for all ask and bid fields. Moment will provide data on yields to maturity and yields to worst as available, however, Moment can not guarantee that these yields will be available for all bonds. If yields are not available, the response will contain null values for yield-related fields. If the specified bond does not exist in our universe or is inactive, you will receive a `not_found` error. If the bond is not tradeable, you will receive a `bad_request` error. - [Trade Price](https://docs.moment.com/reference/gettradeprice-1.md): The Trade Price API returns the principal, the accrued interest, the total fees (as a result of the risk group), and the total trade costs for a specified instrument, trade size, price, and risk group. If the specified bond does not exist in our universe, you will receive a `not_found` error. - [Trading Calendar](https://docs.moment.com/reference/gettradingcalendar-1.md): The Trading Calendar API returns a list of days in sequential order, with information regarding whether that day is a full trading day, half trading day, holiday, or weekend. Currently, Moment only supports dates between 2023-08-01 and 2026-01-01 (inclusive). - [Fractional Universe](https://docs.moment.com/reference/getfractionaluniverse-1.md): The GET fractional universe endpoint returns a list of ISINs representing all fractional bonds available for trading on the platform. - [Cancel RFQ](https://docs.moment.com/reference/deleterfq.md): Attempts to cancel an open RFQ. If the RFQ is no longer cancelable, a subsequent cancel reject event will be sent to the client via the Real-Time RFQ API. - [Get RFQ](https://docs.moment.com/reference/getrfq.md): Retrieves an RFQ by its id. - [List RFQs](https://docs.moment.com/reference/listrfqs.md): Retrieves a list of RFQs for the authenticated organization. - [Create RFQ](https://docs.moment.com/reference/createrfq.md): Creates a new RFQ. - [List RFQ Events](https://docs.moment.com/reference/getrfqevents.md): Retrieves RFQ events for the authenticated organization. - [Create List RFQ](https://docs.moment.com/reference/createlistrfq.md): Creates a new list of RFQs. - [Understanding RFQs Guide](https://docs.moment.com/reference/understanding-rfqs-guide.md) - [RFQ UAT Testing Environment](https://docs.moment.com/reference/rfq-uat-testing-environment.md) - [RFQ UAT Mock Instruments Guide](https://docs.moment.com/reference/rfq-mock-instruments.md) - [Venue Specific Behavior](https://docs.moment.com/reference/venue-specific-behavior.md) - [Eligible Universe](https://docs.moment.com/reference/gettradeableuniverse-1.md): Get the tradable universe for the specified risk group. This endpoint is paginated. - [All Risk Groups](https://docs.moment.com/reference/listriskgroups-1.md): List all risk groups for the specified introducing broker. - [Organization Profile](https://docs.moment.com/reference/getorganizationinfo-1.md): Get information about the authenticated organization. If the organization is a clearer/custodian for other introducing brokers, this will also return information about those introducing brokers. - [Get FIX IP Allowlist](https://docs.moment.com/reference/getipallowlist.md): Retrieve the IPs that are allowed to connect to Moment's FIX sessions for a given organization. - [Add IP to FIX IP Allowlist](https://docs.moment.com/reference/addipallowlist.md): Add a new IP address to the IPs that are allowed to connect to Moment's FIX sessions for a given organization. - [Remove IP from FIX IP Allowlist](https://docs.moment.com/reference/removeipallowlist.md): Remove an IP address from the IPs that are allowed to connect to Moment's FIX sessions for a given organization. - [Trading with Moment](https://docs.moment.com/reference/the-order-lifecycle.md): This section outlines the key concepts that Clients should understand regarding Moment's Execution Management System and Trading APIs. - [Session Connectivity](https://docs.moment.com/reference/session-connectivity.md) - [Standard FIX](https://docs.moment.com/reference/common-message-component-blocks-1.md): Some components will be used in most (if not all) messages. To avoid repeating them for each message type, they’re included below and simply referenced in the specs for each trading message (e.g. Instrument). - [Messages by Event](https://docs.moment.com/reference/order-lifecycle-messaging.md) - [Submit an Order Request](https://docs.moment.com/reference/send-a-new-order.md) - [Order is Acknowledged](https://docs.moment.com/reference/order-is-acknowledged.md) - [Order is Rejected](https://docs.moment.com/reference/order-is-rejected.md) - [Order is Approved](https://docs.moment.com/reference/order-is-approved.md) - [Order is Partially Filled](https://docs.moment.com/reference/order-is-partially-or-fully-filled.md) - [Order is Fully Filled](https://docs.moment.com/reference/order-is-partially-filled-copy.md) - [Submit a Cancel Request](https://docs.moment.com/reference/cancel-an-order.md) - [Cancel Request is Acknowledged](https://docs.moment.com/reference/cancel-request-is-acknowledged.md) - [Cancel Request is Rejected](https://docs.moment.com/reference/order-cancel-request-is-rejected.md) - [Order is Canceled](https://docs.moment.com/reference/order-is-canceled.md) - [Order Expires](https://docs.moment.com/reference/order-expires.md) - [Overview](https://docs.moment.com/reference/overview.md) - [Standard FIX](https://docs.moment.com/reference/standard-fix-copy.md): Some components will be used in most (if not all) messages. To avoid repeating them for each message type, they’re included below and simply referenced in the specs for each trading message (e.g. Instrument). - [Get Optimization Status](https://docs.moment.com/reference/getoptimizationstatus.md): The Get Optimization Status API returns the status for a specific optimization. The status can be one of the following: - `queued`: The optimization has been queued for processing. - `running`: The optimization is currently running. - `success`: The optimization has completed successfully. - `failed`: The optimization has failed. - `unknown`: The status of the optimization is unknown. If the specified optimization ID does not exist, you will receive a `not_found` error. - [Get Optimization Orders](https://docs.moment.com/reference/getoptimizationsorders.md): The Get Optimization Orders API returns the orders for a specific optimization. If the specified optimization ID does not exist, you will receive a `not_found` error. - [Submit Optimization](https://docs.moment.com/reference/postoptimization-1.md): The Submit Optimization API submits a set of accounts and their strategies to generate an optimized portfolio. The API returns an optimization ID that can be used to check the status of the optimization and retrieve the orders generated by the optimization. - [Generate Preview](https://docs.moment.com/reference/postpreview.md): The Generate Preview API submits an account and its strategy to create a preview of an optimized portfolio. This endpoint synchronously returns the generated orders for the account, utilizing cached market data and relaxing certain constraints to quickly provide a preview of the expected orders. Note that the `Trade` constraint is not enforced, when generating a preview. - [Get Replacement Candidates](https://docs.moment.com/reference/postreplacementcandidates.md): The Get Replacement Candidates API returns the replacement candidates for a specific instrument, across a set of accounts. - [Submit Backtest](https://docs.moment.com/reference/postbacktest.md): The Submit Backtest API initiates a backtest of portfolio optimizations over a specified date range. The API returns a backtest ID that can be used to check the status of the backtest and retrieve the results of the optimizations. - [Get Backtest Status](https://docs.moment.com/reference/getbackteststatus.md): The Get Backtest Status API returns the current status and results of a specific backtest. If the specified backtest ID does not exist, you will receive a `not_found` error. - [List all Models](https://docs.moment.com/reference/listmodels.md) - [Create a Model](https://docs.moment.com/reference/createmodel.md) - [Get a Model](https://docs.moment.com/reference/getmodel.md) - [Update a Model](https://docs.moment.com/reference/updatemodel.md) - [Preview a Model](https://docs.moment.com/reference/previewmodel.md) - [Delete a Model](https://docs.moment.com/reference/deletemodel.md) - [Get a Model's version history](https://docs.moment.com/reference/getmodelhistory.md): Returns the audit trail of changes for a security_list strategy, most recent first. Not available for fixed_income models. - [List Asset Allocation Templates](https://docs.moment.com/reference/listallocationtemplates.md) - [Create an Asset Allocation Template](https://docs.moment.com/reference/createallocationtemplate.md): Creates a template and publishes version 1 atomically. Standalone templates send a config; linked templates send base_template_id plus overrides (may be empty). A template only ever exists published. - [Get an Asset Allocation Template](https://docs.moment.com/reference/getallocationtemplate.md): Details include the published materialized config, overrides, lineage in both directions, counts, and - when the template needs resolution - the conflict view recomputed against the base's current published version. - [Update an Asset Allocation Template's metadata](https://docs.moment.com/reference/updateallocationtemplatemetadata.md): Lightweight name/description edit: does not create a version, but is recorded in the audit history. - [Publish an Asset Allocation Template](https://docs.moment.com/reference/publishallocationtemplate.md): Validates and publishes a new version, then re-resolves each live descendant one hop at a time: valid children auto-publish propagated versions, conflicting children freeze with needs_resolution set. The request carries the current_version_id the builder session was seeded from; a mismatch returns 409 so a stale session re-seeds instead of silently overwriting. - [Preview an Asset Allocation Template publish](https://docs.moment.com/reference/previewallocationtemplatepublish.md): Dry-run of the publish walk with zero writes: returns the blast radius (descendants that will auto-update and descendants that will be flagged needs-resolution) for the review-and-save modal. Non-empty conflicts mean the publish itself would fail validation. - [List an Asset Allocation Template's versions](https://docs.moment.com/reference/listallocationtemplateversions.md) - [Get a single Asset Allocation Template version](https://docs.moment.com/reference/getallocationtemplateversion.md) - [Restore a previous Asset Allocation Template version](https://docs.moment.com/reference/restoreallocationtemplate.md): Re-publishes an old version's overrides (standalone: its config) through the publish pipeline against the base's current published version. When the restored configuration no longer validates, nothing is stored and the conflict view is returned to seed the builder. - [Archive an Asset Allocation Template](https://docs.moment.com/reference/archiveallocationtemplate.md): Soft delete. Blocked while the template has live linked children - archive children first, leaf to root. - [Unarchive an Asset Allocation Template](https://docs.moment.com/reference/unarchiveallocationtemplate.md): Restores an archived template. A linked template re-resolves against its base's current published version and may re-enter needs_resolution. Blocked while the base is archived or when a live template holds the same name. - [Update organization IP allowlist](https://docs.moment.com/reference/updateorganizationipallowlist.md): Update the list of IP addresses that are allowed to connect for the organization - [Get FIX IP Allowlist](https://docs.moment.com/reference/getfixipallowlist.md): Retrieve the IPs that are allowed to connect to Moment's FIX sessions for a given organization. - [Add IP to FIX IP Allowlist](https://docs.moment.com/reference/addfixipallowlist.md): Add a new IP address to the IPs that are allowed to connect to Moment's FIX sessions for a given organization. - [Remove IP from FIX IP Allowlist](https://docs.moment.com/reference/removefixipallowlist.md): Remove an IP address from the IPs that are allowed to connect to Moment's FIX sessions for a given organization. - [Inventory Filtering](https://docs.moment.com/reference/postliveinventory.md): The inventory filtering endpoint filters for bonds that are available for trading at the time of the request. Multiple fields can be filtered for, including reference data fields (such as S&P rating, bond type) as well as the bid / ask price and yields. These filters should be specified in the `filters` field. We're also able to filter for ISINs that fulfill a specific trade size. Two types of filtering are supported: - Reference data filtering: specify filters for reference data fields, such as S&P rating, bond type, and more. - Live inventory filtering: specify filters for price, yield to maturity, and yield to worst, filter for quotes that match a trade size, and get `bids` and `asks` from the `returns` field. In addition, specific fields can be requested in the response. These fields should be specified in the `returns` field. - [Inventory Filtering](https://docs.moment.com/reference/getliveinventory.md): The inventory filtering endpoint filters for bonds that are available for trading at the time of the request. Multiple parameters can be filtered for, including reference data fields (such as S&P rating, bond type) as well as the bid / ask price and yields. These filters should be specified in the `filters` query parameter. We're also able to filter for ISINs that fulfil a specific trade size. Two types of filtering are supported: - Reference data filtering: specify filters for reference data fields, such as S&P rating, bond type, and more. - Live inventory filtering: specify filters for price, yield to maturity, and yield to worst, filter for quotes that match a trade size, and get `bids` and `asks` from the `returns` query parameter. In addition, specific fields can be requested in the response. These fields should be specified in the `returns` query parameter. - [Maturity Bucket Percentiles](https://docs.moment.com/reference/getmaturitybucketpercentiles.md): The maturity bucket percentiles endpoint groups bond inventory by maturity buckets and calculates yield to worst percentiles for each bucket. This endpoint accepts the same filtering parameters as the inventory endpoint to filter bonds, then groups them by maturity ranges and returns ask and bid yield to worst (YTW) values at the specified percentile for each bucket. Bucket Selection: - Use 'bucket_selection' parameter to choose between 'maturity_date' or 'workout_date' for grouping - Use 'buckets' parameter to filter for specific maturity buckets only Available maturity buckets: - 1-3 mo - 3-6 mo - 6-9 mo - 9-12 mo - 1-1.5 yr - 1.5-2.5 yr - 2.5-3.5 yr - 3.5-4.5 yr - 4.5-5.5 yr - 5.5-6.5 yr - 6.5-7.5 yr - 7.5-8.5 yr - 8.5-9.5 yr - 9.5-10.5 yr - 10.5-11.5 yr - 11.5-12.5 yr - 12.5-13.5 yr - 13.5-14.5 yr - 14.5-15.5 yr - 15.5-16.5 yr - 16.5-17.5 yr - 17.5-18.5 yr - 18.5-19.5 yr - 19.5-20.5 yr - 20.5-21.5 yr - 21.5-22.5 yr - 22.5-23.5 yr - 23.5-24.5 yr - 24.5-25.5 yr - 25.5-26.5 yr - 26.5-27.5 yr - 27.5-28.5 yr - 28.5-29.5 yr - 29.5+ yr - [List the risk controls that pertain to the organization.](https://docs.moment.com/reference/getriskcontrols.md): Get all risk controls for the organization that you are currently authenticated as. This endpoint will return all risk controls that you own and/or that have been assigned to you by a parent organization. This endpoint takes in optional filter parameters. - [Create a new risk control.](https://docs.moment.com/reference/createriskcontrol.md): Create a new risk control for the organization that you are currently authenticated as. This endpoint will create a new risk control with the provided parameters and return the ID of the newly-created risk control. - [Delete a risk control.](https://docs.moment.com/reference/deleteriskcontrol.md): Delete the risk control with the specified ID. This endpoint will delete the risk control with the specified ID and return a 204 status code if the deletion was successful. - [Get a risk control.](https://docs.moment.com/reference/getriskcontrol.md): Get the risk control with the specified ID. - [Update a risk control.](https://docs.moment.com/reference/updateriskcontrol.md): Update the risk control with the specified ID. - [Get volumes for the org.](https://docs.moment.com/reference/getriskcontrolvolumes.md): Get the volume(s) for the entit(ies) managed by the specified control. - [Get volumes for the org.](https://docs.moment.com/reference/getriskvolumesfororganization.md): Get the volumes for the specified organization. - [Get volumes for the risk group.](https://docs.moment.com/reference/getriskvolumesforriskgroup.md): Get the volumes for the specified risk group. - [Get volumes for the org.](https://docs.moment.com/reference/getriskvolumesrollupfororganization.md): Get the volumes rolled up to the parent organization specified by the ID. - [Get an Account](https://docs.moment.com/reference/accountdetail-1.md) - [Get the Statistics for an Account](https://docs.moment.com/reference/get_v1-account-account-id-stats-1.md) - [Get the Statistics for the accounts of an Advisor](https://docs.moment.com/reference/get_v1-advisor-advisor-id-stats-1.md) - [Update the Cash Allocation policy for an Account](https://docs.moment.com/reference/updatecashallocation.md) - [Update platform-level settings for an Account](https://docs.moment.com/reference/updateaccountsettings.md) - [Activate or deactivate trading restrictions for an Account](https://docs.moment.com/reference/updateaccountrestrictions.md) - [Apply field overrides for a single Lot](https://docs.moment.com/reference/upsertlotoverrides.md): Upserts and/or reverts field overrides on the given lot. The owning account is resolved from the lot on the server and access-checked against the caller's allowed orgs; callers do not need to supply it. - [Get Account Statistics](https://docs.moment.com/reference/getaccountstatistics.md): Returns account-level and per-sleeve statistics for a single managed portfolio account. The account may be identified by its Moment account ID or its custodian account ID. - [Get Account Lots](https://docs.moment.com/reference/getaccountlots.md): Returns per-lot holdings with security data for a single managed portfolio account. Only open lots are returned. The account may be identified by its Moment account ID or its custodian account ID. - [Upload an Account Document](https://docs.moment.com/reference/uploadaccountdocument.md): Uploads a document for a custodian account. The document payload is stored as a text file in the organization's document store. The organization is resolved from the authenticated API key. - [Apply the same trading-restriction change to many Accounts (all-or-nothing)](https://docs.moment.com/reference/bulkupsertaccountrestrictions.md) - [Disable or re-enable a wash-sale restriction for an instrument on an Account](https://docs.moment.com/reference/setwashsaleoverride.md) - [Place an Order for an Account](https://docs.moment.com/reference/placeorder.md) - [Cancel an Order](https://docs.moment.com/reference/cancelorder.md): Attempts to cancel an open Order. If the order is no longer cancelable, a subsequent cancel reject event will be sent to the client via the Real-Time Orders API. - [Place a Block Trade for a Set of Accounts](https://docs.moment.com/reference/submitblocktrade.md) - [Create a User](https://docs.moment.com/reference/createuser.md) - [Update a User](https://docs.moment.com/reference/updateuser.md) - [Create a sleeve within an account](https://docs.moment.com/reference/createsleeve.md) - [Update a sleeve](https://docs.moment.com/reference/updatesleeve.md) - [Delete a sleeve](https://docs.moment.com/reference/deletesleeve.md) - [Specify which lots are assigned to a sleeve](https://docs.moment.com/reference/assignlotstosleeve.md) - [Assigns a sleeve to a model](https://docs.moment.com/reference/assignsleevetomodel.md) - [Unassigns a sleeve from a model](https://docs.moment.com/reference/unassignsleevefrommodel.md) - [Reassign lots across accounts to each account's sleeve for a model (all-or-nothing)](https://docs.moment.com/reference/batchassignlotstomodel.md) - [Update the Do Not Trade status for an Account](https://docs.moment.com/reference/updatedonottrade.md) - [Get accounts within an organization](https://docs.moment.com/reference/getorganizationaccounts.md): Retrieves all accounts within an organization that can be manually assigned to users. Used to populate the account selection modal. - [Update account metadata](https://docs.moment.com/reference/updateaccountmetadata.md): Update account metadata for a specific account. This endpoint allows you to: - Add new metadata keys - Update existing metadata values - Delete keys by setting them to an empty string ("") - [Get all cash raises for an account](https://docs.moment.com/reference/getcashraises.md): Retrieve all cash raises associated with the specified account, including historical records. - [Create a new cash raise](https://docs.moment.com/reference/createcashraise.md): Submit a cash raise request for a particular account. - [Update a cash raise](https://docs.moment.com/reference/updatecashraise.md): Update a cash raise. Completed, canceled, and liquidation cash raises cannot be modified. - [Cancel a cash raise](https://docs.moment.com/reference/cancelcashraise.md): Cancel an existing cash raise. Cash raises that have already been completed or canceled cannot be canceled again. - [Mark a cash raise as complete](https://docs.moment.com/reference/completecashraise.md): Mark a cash raise as successfully completed. Only pending cash raises can be completed. - [Mark a completed cash raise as pending](https://docs.moment.com/reference/revertcashraise.md): Mark a previously completed cash raise as pending again. Cash raises can only be reverted on the same day they are marked as complete. - [Get a cash raise by ID](https://docs.moment.com/reference/getcashraisebyid.md): Retrieve a single cash raise by its ID, scoped to the specified account. - [Get advisor codes for a user](https://docs.moment.com/reference/getadvisorcodes.md): Get advisor codes for a user - [Get account counts for a list of users](https://docs.moment.com/reference/getaccountcounts.md): Get account counts for a list of users - [Get accounts for a user](https://docs.moment.com/reference/getaccountsforuser.md): Get accounts for a user - [Get manual account overrides for a user](https://docs.moment.com/reference/getmanualaccountoverrides.md): Get manual account overrides for a user - [Get advisor codes for a list of users](https://docs.moment.com/reference/getadvisorcodesbatch.md): Get advisor codes for a list of users - [Create a manual account override](https://docs.moment.com/reference/createmanualaccountoverride.md): Create a manual account override - [Get organization account statuses for a user](https://docs.moment.com/reference/getorganizationaccountstatusesforuser.md): Get organization account statuses for a user - [Get user organization account access](https://docs.moment.com/reference/getuserorgaccountaccess.md): Check if a user has organization-wide access - [Get advisor codes for an organization](https://docs.moment.com/reference/getorganizationadvisorcodes.md): Retrieves advisor codes within an organization with account counts and pagination - [Get users associated with an advisor](https://docs.moment.com/reference/getadvisorusers.md): Lists users associated with an advisor, paginated - [Get accounts associated with an advisor](https://docs.moment.com/reference/getadvisoraccounts.md): Lists accounts associated with an advisor, paginated - [Generate a PDF report for an account's proposal](https://docs.moment.com/reference/generateproposalpdf.md): Creates and returns a PDF report containing account details, statistics, compliance information, and holdings for a proposal - [List all Filter Lists](https://docs.moment.com/reference/listlists.md) - [Create a Filter List](https://docs.moment.com/reference/createlist.md) - [Create a new version of a Filter List](https://docs.moment.com/reference/createversion.md) - [Delete a Filter List](https://docs.moment.com/reference/deletelist.md) - [Get version history of a Filter List](https://docs.moment.com/reference/listversions.md) - [Get a specific version of a Filter List](https://docs.moment.com/reference/getversion.md) - [List historical transactions.](https://docs.moment.com/reference/gettransactions.md) - [Retrieve daily summary statistics for a given instrument.](https://docs.moment.com/reference/getdailytransactionsummaries.md) - [Health Check](https://docs.moment.com/reference/gethealth-3.md): Returns the health status of the service - [Get Equity by identifier](https://docs.moment.com/reference/getequitybyid.md): Returns a single equity record by ISIN. If the identifier is not an ISIN, the service attempts to auto-detect the symbol type and resolve it to the underlying ISIN. - [Get Equity Snapshot](https://docs.moment.com/reference/getequitysnapshot.md): Returns equity records as newline-delimited JSON (NDJSON). Use the filter parameter to narrow results and the fields parameter to select which fields are returned. When the filter targets the cache key field (isin) with an "in" operator, the server performs direct cache lookups instead of scanning all records. Additional filters in the same request are applied to the narrowed set. - [Get Equity by identifier](https://docs.moment.com/reference/getequitybyid-1.md): Returns a single equity record by ISIN. If the identifier is not an ISIN, the service attempts to auto-detect the symbol type and resolve it to the underlying ISIN. - [Get Equity Snapshot](https://docs.moment.com/reference/getequitysnapshot-1.md): Returns equity records as newline-delimited JSON (NDJSON). Use the filter parameter to narrow results and the fields parameter to select which fields are returned. When the filter targets the cache key field (isin) with an "in" operator, the server performs direct cache lookups instead of scanning all records. Additional filters in the same request are applied to the narrowed set. - [Health Check](https://docs.moment.com/reference/gethealth.md): Returns the health status of the service - [Get FixedIncome by identifier](https://docs.moment.com/reference/getfixedincomebyid.md): Returns a single fixed-income record by ISIN. If the identifier is not an ISIN, the service attempts to auto-detect the symbol type and resolve it to the underlying ISIN. - [Get FixedIncome Snapshot](https://docs.moment.com/reference/getfixedincomesnapshot.md): Returns fixed-income records as newline-delimited JSON (NDJSON). Use the filter parameter to narrow results and the fields parameter to select which fields are returned. When the filter targets the cache key field (isin) with an "in" operator, the server performs direct cache lookups instead of scanning all records. Additional filters in the same request are applied to the narrowed set. - [Compute Fixed-Income Analytics](https://docs.moment.com/reference/postfixedincomeanalytics.md): Accepts a matrix of symbols and analytic fields, computes the requested analytics for each symbol using in-memory reference data. - [Get FixedIncome by identifier](https://docs.moment.com/reference/getfixedincomebyid-1.md): Returns a single fixed-income record by ISIN. If the identifier is not an ISIN, the service attempts to auto-detect the symbol type and resolve it to the underlying ISIN. - [Get FixedIncome Snapshot](https://docs.moment.com/reference/getfixedincomesnapshot-1.md): Returns fixed-income records as newline-delimited JSON (NDJSON). Use the filter parameter to narrow results and the fields parameter to select which fields are returned. When the filter targets the cache key field (isin) with an "in" operator, the server performs direct cache lookups instead of scanning all records. Additional filters in the same request are applied to the narrowed set. - [Compute Fixed-Income Analytics](https://docs.moment.com/reference/postfixedincomeanalytics-1.md): Accepts a matrix of symbols and analytic fields, computes the requested analytics for each symbol using in-memory reference data. - [Get Fund by identifier](https://docs.moment.com/reference/getfundbyid.md): Returns a single fund record by ISIN. If the identifier is not an ISIN, the service attempts to auto-detect the symbol type and resolve it to the underlying ISIN. - [Get Fund Snapshot](https://docs.moment.com/reference/getfundsnapshot.md): Returns fund records as newline-delimited JSON (NDJSON). Use the filter parameter to narrow results and the fields parameter to select which fields are returned. When the filter targets the cache key field (isin) with an "in" operator, the server performs direct cache lookups instead of scanning all records. Additional filters in the same request are applied to the narrowed set. - [Get Fund by identifier](https://docs.moment.com/reference/getfundbyid-1.md): Returns a single fund record by ISIN. If the identifier is not an ISIN, the service attempts to auto-detect the symbol type and resolve it to the underlying ISIN. - [Get Fund Snapshot](https://docs.moment.com/reference/getfundsnapshot-1.md): Returns fund records as newline-delimited JSON (NDJSON). Use the filter parameter to narrow results and the fields parameter to select which fields are returned. When the filter targets the cache key field (isin) with an "in" operator, the server performs direct cache lookups instead of scanning all records. Additional filters in the same request are applied to the narrowed set. - [Get Fund Holdings](https://docs.moment.com/reference/getfundholdings.md): Returns holdings for a single fund by ISIN. If the identifier is not an ISIN, the service attempts to auto-detect the symbol type and resolve it to the underlying ISIN. - [Get Fund Holdings Snapshot](https://docs.moment.com/reference/getfundholdingssnapshot.md): Returns all fund holdings across all funds as NDJSON. Use the filter parameter to narrow results and the fields parameter to select which fields are returned. When the filter targets the cache key field with an "in" operator, the server performs direct cache lookups instead of scanning all records. Additional filters in the same request are applied to the narrowed set. - [Get Fund Holdings](https://docs.moment.com/reference/getfundholdings-1.md): Returns holdings for a single fund by ISIN. If the identifier is not an ISIN, the service attempts to auto-detect the symbol type and resolve it to the underlying ISIN. - [Get Fund Holdings Snapshot](https://docs.moment.com/reference/getfundholdingssnapshot-1.md): Returns all fund holdings across all funds as NDJSON. Use the filter parameter to narrow results and the fields parameter to select which fields are returned. When the filter targets the cache key field with an "in" operator, the server performs direct cache lookups instead of scanning all records. Additional filters in the same request are applied to the narrowed set. - [Get Security by identifier](https://docs.moment.com/reference/getsecuritybyid.md): Returns a single security record by ISIN across all asset classes. If the identifier is not an ISIN, the service attempts to auto-detect the symbol type and resolve it to the underlying ISIN. - [Get Security Snapshot](https://docs.moment.com/reference/getsecuritysnapshot.md): Returns security records across all asset classes as NDJSON. Use the filter parameter to narrow results and the fields parameter to select which fields are returned. When the filter targets the cache key field (isin) with an "in" operator, the server performs direct cache lookups instead of scanning all records. Additional filters in the same request are applied to the narrowed set. - [Get Security by identifier](https://docs.moment.com/reference/getsecuritybyid-1.md): Returns a single security record by ISIN across all asset classes. If the identifier is not an ISIN, the service attempts to auto-detect the symbol type and resolve it to the underlying ISIN. Asset-type caches are consulted in the order given by the resolution_order query parameter (or the default order when omitted). Asset types not listed in resolution_order are not searched. - [Get Security Snapshot](https://docs.moment.com/reference/getsecuritysnapshot-1.md): Returns security records across all asset classes as NDJSON. Use the filter parameter to narrow results and the fields parameter to select which fields are returned. When the filter targets the cache key field (isin) with an "in" operator, the server performs direct cache lookups instead of scanning all records. Additional filters in the same request are applied to the narrowed set. Records are emitted in the order given by the resolution_order query parameter (or the default order when omitted), and ISINs that appear in more than one cache are deduped with the higher-priority asset type winning. Asset types not listed in resolution_order are not searched. ## Recipes - [Optimize a portfolio with Moment](https://docs.moment.com/recipes/optimize-a-portfolio-with-moment.md) - [Place your first order with Moment](https://docs.moment.com/recipes/place-your-first-order-with-moment.md)