APPENDIX 1 - ERROR CODES

For responses with status codes in the 4xx and 5xx range, the StatPro Revolution Web API may return a reason phrase in the following form:-

<error message> (REVAPI_ERROR=<error code>)

An example is:-

The specified portfolio doesn't exist, or isn't available to the identified user. (REVAPI_ERROR=839)

Using this example, the status line in the HTTP response will look like this:-

HTTP/1.1 404 The specified portfolio doesn't exist, or isn't available to the identified user. (REVAPI_ERROR=839)


Transient errors

For a list of the HTTP status codes of transient errors, and recommendations on how to responsd to them correctly, please see Handling Transient Errors.

All Error codes

The following table lists all the Web API’s error codes and their associated error messages. An identifier for each error code + message is provided for easy identification; note that the identifier is not returned in Web API responses.

Note: as of September 2013, error codes 800, 835 and 836 are no longer used.



Error CodeIdentifierError Message
801PortfoliosFilterStringTooLongThe value of the portfolios $filter query string is too long. (REVAPI_ERROR=801)
802PortfoliosOrderByStringTooLongThe value of the portfolios $orderby query string is too long. (REVAPI_ERROR=802)
803PortfoliosSkipStringTooLongThe value of the portfolios $skip query string is too long. (REVAPI_ERROR=803)
804PortfoliosTopStringTooLongThe value of the portfolios $top query string is too long. (REVAPI_ERROR=804)
805PortfoliosFilterStringInvalidThe value of the portfolios $filter query string is invalid. Consult the public documentation for the correct format, and ensure that spaces within the string are encoded as %20. (REVAPI_ERROR=805)
806PortfoliosOrderByStringInvalidThe value of the portfolios $orderby query string is invalid. Consult the public documentation for the correct format, and ensure that spaces within the string are encoded as %20. (REVAPI_ERROR=806)
807PortfoliosSkipStringInvalidThe value of the portfolios $skip query string is invalid. Ensure that a non-negative integer is specified. (REVAPI_ERROR=807)
808PortfoliosSkipValueNegativeThe portfolios $skip query string value is negative. Ensure that it is a non-negative integer. (REVAPI_ERROR=808)
809PortfoliosTopStringInvalidThe value of the portfolios $top query string is invalid. Ensure that a non-negative integer is specified. (REVAPI_ERROR=809)
810PortfoliosTopValueNegativeThe portfolios $top query string value is negative. Ensure that it is a non-negative integer. (REVAPI_ERROR=810)
811PortfolioIdentifierMissingOrTooLongThe expected portfolio identifier isn't specified, or is too long. (REVAPI_ERROR=811)
812AnalysisIdentifierMissingOrTooLongThe expected analysis identifier isn't specified, or is too long. (REVAPI_ERROR=812)
813SegmentIdentifierMissingOrTooLongThe expected segment identifier isn't specified, or is too long. (REVAPI_ERROR=813)
814ChildrenFilterStringTooLongThe value of the children $filter query string is too long. (REVAPI_ERROR=814)
815ChildrenOrderByStringTooLongThe value of the children $orderby query string is too long. (REVAPI_ERROR=815)
816ChildrenSkipStringTooLongThe value of the children $skip query string is too long. (REVAPI_ERROR=816)
817ChildrenTopStringTooLongThe value of the children $top query string is too long. (REVAPI_ERROR=817)
818ChildrenFilterStringInvalidThe value of the children $filter query string is invalid. Consult the public documentation for the correct format, and ensure that spaces within the string are encoded as %20. (REVAPI_ERROR=818)
819ChildrenOrderByStringInvalidThe value of the children $orderby query string is invalid. Consult the public documentation for the correct format, and ensure that spaces within the string are encoded as %20. (REVAPI_ERROR=819)
820ChildrenSkipStringInvalidThe value of the children $skip query string is invalid. Ensure that a non-negative integer is specified. (REVAPI_ERROR=820)
821ChildrenSkipValueNegativeThe children $skip query string value is negative. Ensure that it is a non-negative integer. (REVAPI_ERROR=821)
822ChildrenTopStringInvalidThe value of the children $top query string is invalid. Ensure that a non-negative integer is specified. (REVAPI_ERROR=822)
823ChildrenTopValueNegativeThe children $top query string value is negative. Ensure that it is a non-negative integer. (REVAPI_ERROR=823)
824PortfolioIdentifierFormatInvalidThe specified portfolio identifier isn't a GUID in an accepted format. (REVAPI_ERROR=824)
825AnalysisIdentifierFormatInvalidThe specified analysis identifier isn't a Guid in an accepted format. (REVAPI_ERROR=825)
826SegmentIdentifierFormatInvalidThe specified segment identifier isn't an integer. (REVAPI_ERROR=826)
827StartDateStringTooLongThe value of the portfolios startDate query string is too long. (REVAPI_ERROR=827)
828EndDateStringTooLongThe value of the portfolios endDate query string is too long. (REVAPI_ERROR=828)
829SeriesTypeStringTooLongThe value of the portfolios seriesType query string is too long. (REVAPI_ERROR=829)
830NoMeasureIdsSpecifiedNo measure identifiers have been specified. (REVAPI_ERROR=830)
831StartDateFormatInvalidThe specified start date isn't in ISO 8601 date format (= YYYY-MM-DD). (REVAPI_ERROR=831)
832EndDateFormatInvalidThe specified end date isn't in ISO 8601 date format (= YYYY-MM-DD). (REVAPI_ERROR=832)
833UnexpectedErrorAn unexpected error occurred on the server. Please re-try. (REVAPI_ERROR=833)
834ValueOutOfRangeA specified value was out of range. (REVAPI_ERROR=834)
837InvalidFilteringThe specified filter string is invalid. If the filter string contains a measure identifier and/or time period, please ensure that they are valid. (REVAPI_ERROR=837)
838InvalidOrderingThe specified order-by string is invalid. If the string contains a measure identifier and/or time period, please ensure that they are valid. (REVAPI_ERROR=838)
839PortfolioNotFoundThe specified portfolio doesn't exist, or isn't available to the identified user. (REVAPI_ERROR=839)
840AnalysisNotFoundThe specified analysis doesn't exist, or belongs to a portfolio that isn't available to the identified user. (REVAPI_ERROR=840)
841SegmentNotFoundThe specified segment doesn't exist. (REVAPI_ERROR=841)
842InvalidTimePeriodThe specified time period is invalid. If a start date and end date are used, ensure that the end date comes after the start date. If a time period code is used, ensure that the time period exists in the analysis results. (REVAPI_ERROR=842)
843InvalidMeasureA measure identifier is empty, invalid, overlong or unknown. (REVAPI_ERROR=843)
844IncludeStringInvalidThe value of the include query string is invalid. (REVAPI_ERROR=844)
845MeasureIdsListTooLongThe total length of the measure identifiers list is too long. (REVAPI_ERROR=845)
846IncludeMeasuresForStringTooLongThe value of the includeMeasuresFor query string is too long. (REVAPI_ERROR=846)
847IncludeMeasuresForStringInvalidThe value of the includeMeasuresFor query string is invalid. (REVAPI_ERROR=847)
848LastSuccessfulStringTooLongThe value of the lastSuccessful query string is too long. (REVAPI_ERROR=848)
849LastSuccessfulStringInvalidThe value of the lastSuccessful query string is invalid. (REVAPI_ERROR=849)
850TimeSeriesTypeStringInvalidThe value of the seriesType query string is invalid. (REVAPI_ERROR=850)
851RequestUriNotHttpsThe request's URI is not HTTPS-based. Use only the entry-point URI, and URIs to resources that are returned by the service. All of these URIs are HTTPS-based. (REVAPI_ERROR=851)
853TimeoutThe server took too long to respond. Please try again later. (REVAPI_ERROR=853)
854TooManyTimeSeries2MeasureIdsRequestedToo many time series measures were requested. (REVAPI_ERROR=854)
856MultipleOcpSeriesRequestDataMissingThe request data for multiple Overall Custom Period time series is missing from the request's entity body. (REVAPI_ERROR=856)
857MultipleOcpSeriesRequestDataNotXmlThe request data for multiple Overall Custom Period time series isn't valid XML. See the entity body of the response for details. (REVAPI_ERROR=857)
858MultipleOcpSeriesRequestDataFailedSchemaValidationThe request data for multiple Overall Custom Period time series fails XML schema validation. See the entity body of the response for details. (REVAPI_ERROR=858)
859MultipleOcpSeriesRequestDataSemanticallyInvalidThe request data for multiple Overall Custom Period time series is semantically invalid. See the entity body of the response for details. (REVAPI_ERROR=859)
860OneOrMoreSegmentsNotFoundOne or more of the requested segments doesn't exist in the analysis results data. See the entity body of the response for a comma-separated list of unknown segment identifiers. (REVAPI_ERROR=860)
861InvalidWholeSegmentsTreeTimePeriodOne or more time period codes are invalid or not available in the analysis's results data. (REVAPI_ERROR=861)
862InvalidWholeSegmentsTreeTimePeriodsListThe list of time period codes is empty, or contains overlong or duplicated codes. (REVAPI_ERROR=862)
863InvalidWholeSegmentsTreeMeasuresListThe list of measure identifiers is empty, or contains overlong, duplicated or invalid identifiers. (REVAPI_ERROR=863)
864IncludePublishedPortfoliosStringTooLongThe value of the includePublishedPortfolios query string is too long. (REVAPI_ERROR=864)
865IncludePublishedPortfoliosStringInvalidThe value of the includePublishedPortfolios query string is invalid. (REVAPI_ERROR=865)
866AnalysisCodeMissingOrTooLongThe expected analysis code isn't specified, or is too long. (REVAPI_ERROR=866)
867InteractiveRiskQueryRequestDataMissingThe request data for Interactive Risk Analysis query is missing from the request's entity body. (REVAPI_ERROR=867)
868InteractiveRiskQueryRequestDataNotXmlThe request data for Interactive Risk Analysis query isn't valid XML. See the entity body of the response for details. (REVAPI_ERROR=868)
869InteractiveRiskQueryRequestFailedSchemaValidationThe request data for Interactive Risk Analysis query fails XML schema validation. See the entity body of the response for details. (REVAPI_ERROR=869)
870ClassifierNotFoundThe specified classifier doesn't exist, or isn't available to the logged-in user. (REVAPI_ERROR=870)
871UnlicensedBenchmarkThe associated benchmark is unlicensed for the portfolio owner. (REVAPI_ERROR=871)
872PortfolioClassifierCodeStringTooLongThe value of the portfolioClassifierCode query string is too long. (REVAPI_ERROR=872)
873PortfolioClassifierNotFoundThe portfolio classifier could not be found. Please check the classifier code, and check that you have permissions to view the portfolio classifier. (REVAPI_ERROR=873)
874BenchmarksFilterStringTooLongThe value of the benchmarks $filter query string is too long. (REVAPI_ERROR=874)
875BenchmarksOrderByStringTooLongThe value of the benchmarks $orderby query string is too long. (REVAPI_ERROR=875)
876BenchmarksSkipStringTooLongThe value of the benchmarks $skip query string is too long. (REVAPI_ERROR=876)
877BenchmarksTopStringTooLongThe value of the benchmarks $top query string is too long. (REVAPI_ERROR=877)
878BenchmarksFilterStringInvalidThe value of the benchmarks $filter query string is invalid. Consult the public documentation for the correct format, and ensure that spaces within the string are encoded as %20. (REVAPI_ERROR=878)
879BenchmarksFilterStringInvalidThe value of the benchmarks $orderby query string is invalid. Consult the public documentation for the correct format, and ensure that spaces within the string are encoded as %20. (REVAPI_ERROR=879)
880BenchmarksSkipStringInvalidThe value of the benchmarks $skip query string is invalid. Ensure that a non-negative integer is specified. (REVAPI_ERROR=880)
881BenchmarksSkipValueNegativeThe benchmarks $skip query string value is negative. Ensure that it is a non-negative integer. (REVAPI_ERROR=881)
882BenchmarksTopStringInvalidThe value of the benchmarks $top query string is invalid. Ensure that a non-negative integer is specified. (REVAPI_ERROR=882)
883BenchmarksTopValueNegativeThe benchmarks $top query string value is negative. Ensure that it is a non-negative integer. (REVAPI_ERROR=883)
884BenchmarksFilterStringNotSpecifiedThe $filter query string must be provided when searching for benchmarks. (REVAPI_ERROR=884)
885RiskFreeRatesFilterStringTooLongThe value of the risk free rates $filter query string is too long. (REVAPI_ERROR=885)
886RiskFreeRatesOrderByStringTooLongThe value of the risk free rates $orderby query string is too long. (REVAPI_ERROR=886)
887RiskFreeRatesSkipStringTooLongThe value of the risk free rates $skip query string is too long. (REVAPI_ERROR=887)
888RiskFreeRatesTopStringTooLongThe value of the risk free rates $top query string is too long. (REVAPI_ERROR=888)
889RiskFreeRatesFilterStringInvalidThe value of the risk free rates $filter query string is invalid. Consult the public documentation for the correct format, and ensure that spaces within the string are encoded as %20. (REVAPI_ERROR=889)
890RiskFreeRatesOrderByStringInvalidThe value of the risk free rates $orderby query string is invalid. Consult the public documentation for the correct format, and ensure that spaces within the string are encoded as %20. (REVAPI_ERROR=890)
891RiskFreeRatesSkipStringInvalidThe value of the risk free rates $skip query string is invalid. Ensure that a non-negative integer is specified. (REVAPI_ERROR=891)
892RiskFreeRatesSkipValueNegativeThe risk free rates $skip query string value is negative. Ensure that it is a non-negative integer. (REVAPI_ERROR=892)
893RiskFreeRatesTopStringInvalidThe value of the risk free rates $top query string is invalid. Ensure that a non-negative integer is specified. (REVAPI_ERROR=893)
894RiskFreeRatesTopValueNegativeThe risk free rates $top query string value is negative. Ensure that it is a non-negative integer. (REVAPI_ERROR=894)
900CustomTimePeriodAnalysisCalcThresholdExceededThe threshold for the number of custom time period analyses triggered has been breached. Please refer to the fair usage details for this resource (REVAPI_ERROR=900)
901CustomTimePeriodAnalysisRequestDataNotXmlThe supplied Xml in the POST body of the request is not valid well-formed Xml (REVAPI_ERROR=901)
902CustomTimePeriodAnalysisRequestDataFailedSchemaValidationThe supplied Xml in the POST body of the request does not conform to the schema. Please refer to the schema in the Portfolio Analysis Controller resource (REVAPI_ERROR=902)
903CustomTimePeriodAnalysisRequestDataSemanticallyInvalidEither the specified start or end date are not in the ISO 8601 date format (= YYYY-MM-DD) or the start date is greater than or equal to the end date. (REVAPI_ERROR=903)
904AnalysisContextNotFoundThe supplied analysis context is an unrecoginized value. Expected one of 'default',' compliance', 'awaitingsignoff' or 'signedoff' (REVAPI_ERROR=904)
905PortfolioCommentTypeStringInvalidThe supplied portfolio comment type is an unrecognized value. Expected one of 'systemmarketevents', 'portfoliomanagement', 'compliancevalidation', 'compliancebacktesting' or 'portfoliosignoff'. (REVAPI_ERROR=905)
906ApplicationDateStringTooLongThe value of the portfolio comment history 'applicationDate' query string is too long. (REVAPI_ERROR=906)
907ApplicationDateFormatInvalidThe specified 'applicationDate' isn't in ISO 8601 date format (= YYYY-MM-DD). (REVAPI_ERROR=907)
908InvalidSkipThe skip value is not provided. (REVAPI_ERROR=908)
909InvalidTopThe top value is not provided. (REVAPI_ERROR=909)
910StartDateTimeInvalidThe start date and time provided is not the correct format. It must match the format 'yyyyMMddTHHmmssZ'. (REVAPI_ERROR=910)
911PortfoliosRequestDataNotXmlThe portfolios request body is not valid well-formed xml. (REVAPI_ERROR=911)
912PortfoliosRequestDataFailedSchemaValidationThe portfolios request body does not conform to the specified schema. Please refer to the link relation documentation for further details of the schema it is expected to conform to. (REVAPI_ERROR=912)
913UnrecognizedDataChangeValueOne or more of the supplied data change type values is not recognized. Please refer to the portfolio impact dates link relation documentation for further details of how to specify this query string. (REVAPI_ERROR=913)
914IncludeLatestResultsDateStringInvalidThe includeLatestResults flag supplied is not a recognized value boolean value. (REVAPI_ERROR=914)
915UnexpectedTransientErrorAn unexpected transient error occurred on the server. Please re-try. (REVAPI_ERROR=915)
916BenchmarkIdentifierFormatInvalidThe specified benchmark identifier isn't a GUID in an accepted format. (REVAPI_ERROR=916)
917InvalidMediaTypeExceptionThe HTTP Request Accept header is set to an unsupported media type for this resource. Please specify one of the supported types. (REVAPI_ERROR=917)
918BenchmarkNotFoundThe specified benchmark doesn't exist, or isn't available to the identified user. (REVAPI_ERROR=918)


Last updated: Dec 2018