How AI is applied across API Evangelist and APIs.io. Read my AI disclosure →
API Evangelist API Evangelist
Discovery
Learnings
Guidance
Toolbox
Alignment
API Evangelist LLC

Factset Mpo API

The Mpo API from Factset — 1 operation(s) for mpo.

Factset Mpo API is one of 460 APIs that Factset publishes on the APIs.io network, described by a machine-readable OpenAPI specification.

This API exposes 1 JSON Schema definition.

Tagged areas include Mpo. The published artifact set on APIs.io includes an OpenAPI specification, API documentation, code examples, a changelog, and 1 JSON Schema.

This API exposes 1 operation across 1 path, and defines 129 schemas. It is described by OpenAPI 3.0.3, at version 1.0.0.

Requests are made against 2 base URLs: https://api.factset.com, https://api-sandbox.factset.com.

1 operations 1 paths 129 schemas 1 POST

Metadata

The identity and technical contract details declared by the specification.

Specification
OpenAPI 3.0.3
API Version
1.0.0
Base URL
https://api.factset.com
Authentication
HTTP Basic
Resource Areas
1

Authentication & Security 1

Factset Mpo API declares 1 security scheme for authenticating requests. It accepts HTTP basic authentication (basicAuth). By default, every request must be authenticated.

Paths & Operations 1

Across 1 path, the API surfaces 1 operation — 1 POST. Each is listed below with its method, path, parameters, and response codes.

Mpo 1
POST
/mpo/v1/optimizeFPO
1 param → 200

Schemas 129

The contract defines 129 schemas that model the data the API accepts and returns. The most detailed are optimizer.inputs.MultiPeriodConstraints (18 properties), optimizer.inputs.HoldingsWeightConstraint (14 properties), optimizer.inputs.ExpectedReturnConstraint (12 properties), optimizer.inputs.GeneralLinearConstraint (11 properties). Each schema is shown below with its type and property counts.

optimizer.inputs.Asset
object
2 properties
optimizer.inputs.FactorExposureTerm
object
6 properties
optimizer.inputs.MPLimitTailRiskConstraint
object
4 properties
optimizer.inputs.MPRoundlotsConstraint
object
2 properties
optimizer.inputs.MPTradeThresholdConstraint
object
2 properties
optimizer.inputs.MultiPeriodConstraints
object
18 properties
optimizer.inputs.TurnoverConstraint
object
15
10 properties
optimizer.inputs.EObjectiveRiskType.Enum
number
0 - eETL 1 - eStandardDeviation 2 - eVariance
optimizer.inputs.EObjectiveTermDirection.Enum
number
0 - eMinimize 1 - eMaximize
optimizer.inputs.MultiPeriodOptions
object
4 properties
optimizer.inputs.SparseMatrix
object
Represents a sparse matrix in the CSR format
5 properties
optimizer.inputs.MPSensitivityTerm
object
3 properties
optimizer.inputs.LeverageConstraint
object
6
6 properties
optimizer.inputs.ExpectedReturn
object
2 properties
optimizer.inputs.MPGeneralLinearConstraint
object
3 properties
optimizer.inputs.FactorExposureAttributes
object
2 properties
optimizer.inputs.GroupDefinition
object
Contains the subset of assets associated with a constraint group. (excluding Factor groups, as the optimizer will be respondible for fetching the risk model an…
1 property
optimizer.inputs.Labels
object
Labeling and index information to be able to reconstruct the calculated data results to the provided inputs from the request.
2 properties
optimizer.inputs.QuantRiskModel
object
2 properties
optimizer.inputs.ETransactionCostUnitType.Enum
number
0 - ePercent 1 - eCostPerShare
optimizer.inputs.MPVolatilityTerm
object
4 properties
optimizer.inputs.MPExpectedReturnConstraint
object
5 properties
optimizer.inputs.EFPOConstraintAssetType.Enum
number
0 - eAll 1 - eCustom 2 - eBuyList
optimizer.inputs.MPRiskContributionConstraint
object
2 properties
optimizer.inputs.ValueReference
object
Contains the results of an asset-level formula from FPO, mapping the TotalUniverse asset index to resulting value. The list of ValueReferences in the LookupTab…
1 property
optimizer.inputs.ExpectedReturnConstraint
object
1
12 properties
VAR.StatusIndicator
number
0 - eSuccess 1 - eFailure
optimizer.inputs.AcrossPeriods.RollingPeriods
object
2 properties
optimizer.inputs.TailRiskTerm
object
8 properties
optimizer.inputs.AssetPrice.EPriceSource
number
0 - eTotalUniverse 1 - eOverride
optimizer.inputs.DiversificationRatioTerm
object
3 properties
optimizer.inputs.Portfolios
object
4 properties
optimizer.inputs.MPGeneralLinearTerm
object
3 properties
optimizer.inputs.MPDiversificationConstraint
object
2 properties
optimizer.inputs.MPLeverageConstraint
object
2 properties
optimizer.inputs.VolatilityTerm
object
7 properties
optimizer.inputs.RiskModel
object
3 properties
optimizer.inputs.MPNumberOfBuysConstraint
object
2 properties
optimizer.inputs.BuyListItem
object
2 properties
optimizer.inputs.STARRTerm
object
8 properties
optimizer.inputs.MPHoldingsWeightConstraint
object
2 properties
optimizer.inputs.Derivative.Future.EComputationMethod.Enum
number
0 - eCost 1 - eTotalCost 2 - eMarkToMarket
optimizer.inputs.CompositeConstituent
object
3 properties
optimizer.inputs.SimulatedRiskModel
object
2 properties
optimizer.inputs.TotalUniverse
object
3 properties
optimizer.inputs.RollingMethod.Enum
number
0 - eValuePerPath 1 - eAllValues 2 - eMinPerStep 3 - eMaxPerStep
optimizer.inputs.AcrossPeriods
object
3 properties
optimizer.inputs.TargetProbabilityConstraint
object
6 properties
optimizer.inputs.EConstraintLevel.Enum
number
0 - ePortfolio 1 - eGroup 2 - eAsset
optimizer.inputs.GeneralLinearConstraint
object
4
11 properties
optimizer.inputs.TargetProbabilityTerm
object
5 properties
optimizer.inputs.MPSensitivityConstraint
object
3 properties
optimizer.inputs.Derivative.Future
object
3 properties
optimizer.inputs.HoldingsThresholdConstraint
object
5
8 properties
optimizer.inputs.RawRiskModel.Simulations
object
2 properties
optimizer.inputs.SharpeRatioTerm
object
6 properties
optimizer.inputs.OnPeriods
object
1 property
optimizer.inputs.MPFactorExposureConstraint
object
3 properties
optimizer.inputs.MultiPeriodStrategy
object
5 properties
optimizer.inputs.TransactionCost
object
3 properties
optimizer.inputs.DiversificationConstraint
object
2
8 properties
optimizer.inputs.EConstraintTurnoverType.Enum
number
0 - eTotal 1 - eBuy 2 - eSell
optimizer.inputs.QuantRiskModelRawData
object
5 properties
optimizer.inputs.ELeverageValueType.Enum
number
0 - eFixedValue 1 - eMaximumValue
optimizer.inputs.ExpectedReturnTerm
object
7 properties
optimizer.inputs.NumberofAssetsConstraint
object
7
6 properties
optimizer.inputs.MPFactorExposureTerm
object
3 properties
optimizer.inputs.EValueType.Enum
number
0 - eNA 1 - eRaw 2 - eReference 3 - eExpandRaw
google.protobuf.ListValue
object
1 property
VAR.DistributionDataMessage
object
3 properties
optimizer.inputs.MPTailRiskTerm
object
4 properties
optimizer.inputs.NumberOfSellsConstraint
object
11
5 properties
optimizer.inputs.HoldingsWeightConstraint
object
9
14 properties
optimizer.outputs.MultiPeriodOutput
object
2 properties
optimizer.inputs.RiskModelForPeriods
object
Must have one model for each period
2 properties
optimizer.inputs.MPTargetProbabilityTerm
object
4 properties
optimizer.inputs.TradeThresholdConstraint
object
13
8 properties
VAR.DistributionDescription
object
8 properties
optimizer.inputs.BoundSource.Enum
number
0 - ePortfolioReturn 1 - ePortfolioValue 2 - eFundingRatio 3 - eSurplusReturn 4 - eDrawdownPercent 5 - eDrawdownValue
optimizer.inputs.MPObjectiveRatioTerm
object
5 properties
VAR.SimulatedReturns
object
2 properties
optimizer.inputs.Options
object
6 properties
optimizer.inputs.RiskVolatilityConstraint
object
18
9 properties
optimizer.inputs.Derivative
object
3 properties
optimizer.inputs.Portfolio
object
1 property
optimizer.inputs.TailRiskMeasure.Enum
number
0 - ETL 1 - VaR
optimizer.inputs.SimulatedRiskRequestInfo
object
2 properties
optimizer.inputs.MultiPeriodObjective
object
8 properties
optimizer.inputs.PortfolioItem
object
3 properties
optimizer.inputs.SensitivityTerm
object
6 properties
optimizer.inputs.MPTargetProbabilityConstraint
object
4 properties
optimizer.inputs.SensitivityConstraint
object
8
11 properties
optimizer.inputs.DenseMatrix
object
Represents a dense matrix
1 property
optimizer.inputs.Factor
object
Labels relevant to calculation-levels with 'Factor' in the name
2 properties
optimizer.inputs.EAggregationMethod.Enum
number
0 - eWeights 1 - eQuantity
optimizer.inputs.MultiPeriodRiskModels
object
1 property
optimizer.inputs.FactorExposureConstraint
object
3
7 properties
optimizer.inputs.MPNumberofAssetsConstraint
object
2 properties
optimizer.inputs.MPNumberOfSellsConstraint
object
2 properties
optimizer.inputs.Security
object
Labels relevant to calculation-levels with 'Security' in the name
1 property
optimizer.inputs.MPExpectedReturnTerm
object
5 properties
optimizer.inputs.MPTurnoverConstraint
object
3 properties
optimizer.inputs.RawRiskModel
object
1 property
optimizer.inputs.EFPOConstraintWeightType.Enum
number
0 - ePercentOfPortfolioValue 1 - ePercentOfExposure
optimizer.inputs.MultiPeriodInput
object
6 properties
optimizer.inputs.AssetPrice
object
2 properties
optimizer.inputs.MPHoldingsThresholdConstraint
object
2 properties
optimizer.inputs.EConstraintPenaltyType.Enum
number
0 - eLinear 1 - eQuadratic 2 - eScaledQuadratic
optimizer.inputs.QuantRiskRequestInfo
object
4 properties
optimizer.inputs.EAlphaUnitType.Enum
number
0 - ePercent 1 - eAbsolute
optimizer.inputs.Value
object
3 properties
optimizer.outputs.Periods
object
1 property
optimizer.inputs.NumberOfBuysConstraint
object
10
5 properties
VAR.DistributionStatus
object
2 properties
optimizer.inputs.EConstraintRiskType.Enum
number
0 - eStandardDevition 1 - eVariance
optimizer.inputs.EConstraintUnitType.Enum
number
0 - eCurrency 1 - ePercentage 2 - eNumber
optimizer.inputs.RoundlotsConstraint
object
12
8 properties
optimizer.inputs.GeneralLinearTerm
object
7 properties
optimizer.inputs.EConstraintValueType.Enum
number
0 - eMarketValue 1 - eExposureValue
VAR.DistributionType
number
0 - eMonteCarlo 1 - eExtremeEventSimulation 2 - eHistorical 3 - eFactorStressTest 4 - eExtremeEventStressTest 5 - eStressTestPerSe 6 - eFactorExposure
optimizer.inputs.MPRiskVolatilityConstraint
object
4 properties
optimizer.inputs.CompositeAsset
object
1 property
optimizer.inputs.Penalty
object
4 properties
optimizer.inputs.RiskContributionConstraint
object
17
8 properties
optimizer.inputs.EWeightingMethodType.Enum
number
0 - eWeights 1 - eShares
optimizer.inputs.ConstraintGroup
object
5 properties
optimizer.inputs.LimitTailRiskConstraint
object
8 properties
optimizer.inputs.EConstraintReturnType.Enum
number
0 - eTarget 1 - eMaximizeProbability
optimizer.inputs.LookupTables
object
2 properties

Specification

The full machine-readable OpenAPI contract behind this narrative.

Source

factset-mpo-api-openapi.yml Raw ↑

Other APIs Factset publishes across the network.

FactSet Recommendation List API for Digital Portals
FactSet Bonds API for Digital Portals
FactSet Virtual Portfolio API for Digital Portals
FactSet Stocks API for Digital Portals
FactSet Securitized Derivatives API for Digital Portals
FactSet Watchlist API for Digital Portals
FactSet Funds API for Digital Portals
FactSet Data Monitor API
FactSet Mergers and Acquisitions API
FactSet News API
News API for Digital Portals
FactSet Real-Time Options API
Where this information came from

This is an independent, third-party profile of Factset Mpo API, published by API Evangelist. We do not operate, host, resell, or support these APIs, and we are not affiliated with or endorsed by the company unless stated above. Everything here is built from publicly available information — the company's own site, developer portal, documentation, public repositories, and the specifications it publishes for public use. Nothing is obtained by breaching a system, defeating an access control, or using credentials.

The Kin Score and Agent Readiness rating are independently calculated assessments of a company's public API artifacts, scored against a published rubric. They are not certifications, endorsements, security assessments, or audits.

Corrections, re-scores, and removal are free — no partnership or purchase required, and you do not need to justify the request. A removed company is recorded as unrated, never scored zero for having asked. Acknowledgement within one business day; removal within two.

info@apievangelist.com · Read the full data-sourcing policy →
On a security or compliance team? Put security in the subject line and you will get a person, not a form — we will tell you exactly which public URLs this profile was built from.