Developer release notes Q2 / 2024
Released: June 2024
The 2024 Q2 release includes various GraphQL API improvements. One of them is particularly consequential: custom GraphQL APIs. This powerful tool allows you to build tailor-made APIs to match your needs. In addition to our GraphQL API development, we enhanced business rules with the ability to “chain” business rule requests and instantly react to changes in other objects.
GraphQL API improvements
Saved queries via API
Saved queries are SQL queries that you can create, browse, and interact with in FA Back’s Queries view. These queries allow you to access the vast majority of your data in the FA Platform, in ways that are tailored to your specific needs. What’s new in this version is that you can now list and run these queries via GraphQL API.
Running saved queries via GraphQL endpoints is a very powerful feature that all developers who work with FA APIs should learn about. The query endpoints can be used to address gaps and performance issues in FA’s standard APIs, in ways tailored to your specific needs.
Learn more: Saved queries via API in FA Developer guide.
Liquidity forecasting
We added new endpoint for producing liquidity forecasts for your portfolios. This endpoint allows you to project future cash flows and cash balances for your portfolio based on the data stored in the FA system. A simple liquidity forecast request looks like this:
query{ portfolio(id:1234){ liquidityForecast(includeUnsettledTransactions:true, includeNotCompletedTradeOrders:true, includeNotRunCorporateActions:true){ projectedDailyAccountBalance{ accountNumber, dailyValues{ date, balance } } } } }
The request returns daily projected account balances for your portfolio’s accounts. The projected balances take into account future and unsettled transactions, as well as trade orders and corporate actions. You can also request the projected daily figures per account currency or in total. It is also possible to run liquidity forecasts per contact or per portfolio group.
The 2024 Q2 release doesn’t allow you to view the results of liquidity analysis in FA Back, but you can already use the endpoint, for example, to produce reports.
Improvements in model portfolio management
We released new GraphQL endpoints for working with model portfolios in our 2024 Q1 release. In this release, we produced the following improvements and refinements to those endpoints:
It is now possible to update a model portfolio row based on its date and security, instead of needing the rows database ID.
It is now possible to add/modify multiple securities/shares at once.
Improved validation.
Improved feedback when import is successful.
Support for deleting a record from a model portfolio’s allocation on a specific date, by providing “DELETE” as the row’s “share” value.
Other
Improvements in our APIs for getting positions based on, for example, portfolio’s
PortfolioReport
. We previously didn’t support projecting holdings requests that also include orders with the “Open” status. Now we have that option as well. For backward compatibility, we needed to implement this as a new parameter:includeOrdersWithOpenStatusWhenCalculatingUnsettledAmounts
.We now support security filtering based on the list of IDs in the
securitiesByParameters
endpoint.In the context of a contact, you can now request representatives of a specific type, in addition to all representatives (which we previously had).
Various fixes to specific APIs.
Chained business rules
Rules and decision tables allow you to react to specific changes in the core data types. In the 2024 Q2 release, we made these rules more flexible: we added the option to chain rules together. This means that a business rule run against one object can trigger a rule run on another object. It is also possible for an object to trigger a business rule against itself.
Learn more: Trigger chained rule runs in FA Developer guide.
Other improvements
Starting from this release, you can gain access to the “Archive” directory from the FA Developer application’s Integrations section or from FA Admin Console’s File management section. The Archive directory contains files that have been processed by one of your integrations over 30 days ago, in a compressed .tar file.