{"openapi":"3.0.4","info":{"title":"Runs a Check Definition against given dataset.","description":"Runs a Check Definition against given dataset.","version":"0.0.1"},"servers":[{"url":"https://fbn-prd.lusid.com/api"}],"paths":{"/api/dataquality/checkdefinitions/{scope}/{code}/$run":{"post":{"tags":["CheckDefinitions"],"summary":"Runs a Check Definition against given dataset.","description":"Runs a Check Definition against given dataset.","operationId":"RunCheckDefinition","parameters":[{"name":"scope","in":"path","description":"Scope of the CheckDefinition to run.","required":true,"schema":{"maxLength":64,"minLength":1,"pattern":"^[a-zA-Z0-9\\-_]+$","type":"string"}},{"name":"code","in":"path","description":"Code of the CheckDefinition to run.","required":true,"schema":{"maxLength":64,"minLength":1,"pattern":"^[a-zA-Z0-9\\-_]+$","type":"string"}}],"requestBody":{"description":"Run request defining what dataset to run against.","content":{"application/json-patch+json":{"schema":{"$ref":"/docs/api/lusid/schemas.json#/components/schemas/RunCheckRequest"},"example":{"lusidEntityDataset":{"asAt":"2018-03-05T00:00:00.0000000+00:00","effectiveAt":"2018-03-05T00:00:00.0000000+00:00","scope":"InstrumentScope","asAtModifiedSince":"2018-03-05T00:00:00.0000000+00:00","selectorAttribute":"Properties[Instrument/SomeScope/Type]","selectorValue":"Equity","returnIdentifierKey":"Instrument/default/ClientInternal"},"limitIndividualBreachesPerRule":100}},"application/json":{"schema":{"$ref":"/docs/api/lusid/schemas.json#/components/schemas/RunCheckRequest"},"example":{"lusidEntityDataset":{"asAt":"2018-03-05T00:00:00.0000000+00:00","effectiveAt":"2018-03-05T00:00:00.0000000+00:00","scope":"InstrumentScope","asAtModifiedSince":"2018-03-05T00:00:00.0000000+00:00","selectorAttribute":"Properties[Instrument/SomeScope/Type]","selectorValue":"Equity","returnIdentifierKey":"Instrument/default/ClientInternal"},"limitIndividualBreachesPerRule":100}},"text/json":{"schema":{"$ref":"/docs/api/lusid/schemas.json#/components/schemas/RunCheckRequest"},"example":{"lusidEntityDataset":{"asAt":"2018-03-05T00:00:00.0000000+00:00","effectiveAt":"2018-03-05T00:00:00.0000000+00:00","scope":"InstrumentScope","asAtModifiedSince":"2018-03-05T00:00:00.0000000+00:00","selectorAttribute":"Properties[Instrument/SomeScope/Type]","selectorValue":"Equity","returnIdentifierKey":"Instrument/default/ClientInternal"},"limitIndividualBreachesPerRule":100}},"application/*+json":{"schema":{"$ref":"/docs/api/lusid/schemas.json#/components/schemas/RunCheckRequest"},"example":{"lusidEntityDataset":{"asAt":"2018-03-05T00:00:00.0000000+00:00","effectiveAt":"2018-03-05T00:00:00.0000000+00:00","scope":"InstrumentScope","asAtModifiedSince":"2018-03-05T00:00:00.0000000+00:00","selectorAttribute":"Properties[Instrument/SomeScope/Type]","selectorValue":"Equity","returnIdentifierKey":"Instrument/default/ClientInternal"},"limitIndividualBreachesPerRule":100}}}},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"/docs/api/lusid/schemas.json#/components/schemas/RunCheckResponse"},"example":{"dataQualityCheckResults":[{"checkDefinitionScope":"DataQuality","checkDefinitionCode":"PortfolioBalanceCheck","checkDefinitionDisplayName":"Portfolio Balance Validation","checkRunAsAt":"2024-09-08T10:30:00.0000000+00:00","resultType":"RuleBreached","ruleSetKey":"BalanceRuleSet","ruleSetDisplayName":"Portfolio Balance Rules","ruleKey":"PositiveBalanceRule","ruleDisplayName":"Positive Balance Rule","ruleDescription":"Ensures portfolio balances are positive","ruleFormula":"Holdings.Sum(h => h.Units * h.Cost.Amount) > 0","severity":2,"lusidEntity":{"asAt":"2024-09-08T10:30:00.0000000+00:00","effectiveAt":"2024-09-07T10:30:00.0000000+00:00","entityType":"Portfolio","scope":"Trading","identifierKey":"Code","identifierValue":"UK-EQUITY-001","entityUniqueId":"Portfolio-Trading-UK-EQUITY-001","displayName":"UK Equity Portfolio 001"},"countRuleBreaches":1,"resultId":"a1b2c3d4-e5f6-7890-abcd-ef1234567890-RuleBreached-BalanceRuleSet-PositiveBalanceRule-Portfolio-Trading-UK-EQUITY-001"},{"checkDefinitionScope":"DataQuality","checkDefinitionCode":"InstrumentPriceCheck","checkDefinitionDisplayName":"Instrument Price Validation","checkRunAsAt":"2024-09-08T10:30:00.0000000+00:00","resultType":"RuleBreachOverLimit","ruleSetKey":"PriceValidationRuleSet","ruleSetDisplayName":"Price Validation Rules","ruleKey":"PriceRangeRule","ruleDisplayName":"Price Range Validation","ruleDescription":"Ensures instrument prices are within reasonable ranges","ruleFormula":"Price > 0 and Price < MaxExpectedPrice","severity":3,"countRuleBreaches":15,"resultId":"b2c3d4e5-f6g7-8901-bcde-f23456789012-RuleBreachOverLimit-PriceValidationRuleSet-PriceRangeRule"},{"checkDefinitionScope":"DataQuality","checkDefinitionCode":"CustomValidationCheck","checkDefinitionDisplayName":"Custom Data Validation","checkRunAsAt":"2024-09-08T10:30:00.0000000+00:00","resultType":"RuleInvalid","ruleSetKey":"CustomRuleSet","ruleSetDisplayName":"Custom Validation Rules","ruleKey":"ComplexCalculationRule","ruleDisplayName":"Complex Calculation Rule","ruleDescription":"Performs complex validation calculations","ruleFormula":"InvalidFormula.UnknownFunction()","severity":1,"errorDetail":"Invalid formula syntax: UnknownFunction() is not recognized","resultId":"c3d4e5f6-g7h8-9012-cdef-345678901234-RuleInvalid-CustomRuleSet-ComplexCalculationRule-null"}]}},"text/plain":{"schema":{"$ref":"/docs/api/lusid/schemas.json#/components/schemas/RunCheckResponse"},"example":{"dataQualityCheckResults":[{"checkDefinitionScope":"DataQuality","checkDefinitionCode":"PortfolioBalanceCheck","checkDefinitionDisplayName":"Portfolio Balance Validation","checkRunAsAt":"2024-09-08T10:30:00.0000000+00:00","resultType":"RuleBreached","ruleSetKey":"BalanceRuleSet","ruleSetDisplayName":"Portfolio Balance Rules","ruleKey":"PositiveBalanceRule","ruleDisplayName":"Positive Balance Rule","ruleDescription":"Ensures portfolio balances are positive","ruleFormula":"Holdings.Sum(h => h.Units * h.Cost.Amount) > 0","severity":2,"lusidEntity":{"asAt":"2024-09-08T10:30:00.0000000+00:00","effectiveAt":"2024-09-07T10:30:00.0000000+00:00","entityType":"Portfolio","scope":"Trading","identifierKey":"Code","identifierValue":"UK-EQUITY-001","entityUniqueId":"Portfolio-Trading-UK-EQUITY-001","displayName":"UK Equity Portfolio 001"},"countRuleBreaches":1,"resultId":"a1b2c3d4-e5f6-7890-abcd-ef1234567890-RuleBreached-BalanceRuleSet-PositiveBalanceRule-Portfolio-Trading-UK-EQUITY-001"},{"checkDefinitionScope":"DataQuality","checkDefinitionCode":"InstrumentPriceCheck","checkDefinitionDisplayName":"Instrument Price Validation","checkRunAsAt":"2024-09-08T10:30:00.0000000+00:00","resultType":"RuleBreachOverLimit","ruleSetKey":"PriceValidationRuleSet","ruleSetDisplayName":"Price Validation Rules","ruleKey":"PriceRangeRule","ruleDisplayName":"Price Range Validation","ruleDescription":"Ensures instrument prices are within reasonable ranges","ruleFormula":"Price > 0 and Price < MaxExpectedPrice","severity":3,"countRuleBreaches":15,"resultId":"b2c3d4e5-f6g7-8901-bcde-f23456789012-RuleBreachOverLimit-PriceValidationRuleSet-PriceRangeRule"},{"checkDefinitionScope":"DataQuality","checkDefinitionCode":"CustomValidationCheck","checkDefinitionDisplayName":"Custom Data Validation","checkRunAsAt":"2024-09-08T10:30:00.0000000+00:00","resultType":"RuleInvalid","ruleSetKey":"CustomRuleSet","ruleSetDisplayName":"Custom Validation Rules","ruleKey":"ComplexCalculationRule","ruleDisplayName":"Complex Calculation Rule","ruleDescription":"Performs complex validation calculations","ruleFormula":"InvalidFormula.UnknownFunction()","severity":1,"errorDetail":"Invalid formula syntax: UnknownFunction() is not recognized","resultId":"c3d4e5f6-g7h8-9012-cdef-345678901234-RuleInvalid-CustomRuleSet-ComplexCalculationRule-null"}]}},"text/json":{"schema":{"$ref":"/docs/api/lusid/schemas.json#/components/schemas/RunCheckResponse"},"example":{"dataQualityCheckResults":[{"checkDefinitionScope":"DataQuality","checkDefinitionCode":"PortfolioBalanceCheck","checkDefinitionDisplayName":"Portfolio Balance Validation","checkRunAsAt":"2024-09-08T10:30:00.0000000+00:00","resultType":"RuleBreached","ruleSetKey":"BalanceRuleSet","ruleSetDisplayName":"Portfolio Balance Rules","ruleKey":"PositiveBalanceRule","ruleDisplayName":"Positive Balance Rule","ruleDescription":"Ensures portfolio balances are positive","ruleFormula":"Holdings.Sum(h => h.Units * h.Cost.Amount) > 0","severity":2,"lusidEntity":{"asAt":"2024-09-08T10:30:00.0000000+00:00","effectiveAt":"2024-09-07T10:30:00.0000000+00:00","entityType":"Portfolio","scope":"Trading","identifierKey":"Code","identifierValue":"UK-EQUITY-001","entityUniqueId":"Portfolio-Trading-UK-EQUITY-001","displayName":"UK Equity Portfolio 001"},"countRuleBreaches":1,"resultId":"a1b2c3d4-e5f6-7890-abcd-ef1234567890-RuleBreached-BalanceRuleSet-PositiveBalanceRule-Portfolio-Trading-UK-EQUITY-001"},{"checkDefinitionScope":"DataQuality","checkDefinitionCode":"InstrumentPriceCheck","checkDefinitionDisplayName":"Instrument Price Validation","checkRunAsAt":"2024-09-08T10:30:00.0000000+00:00","resultType":"RuleBreachOverLimit","ruleSetKey":"PriceValidationRuleSet","ruleSetDisplayName":"Price Validation Rules","ruleKey":"PriceRangeRule","ruleDisplayName":"Price Range Validation","ruleDescription":"Ensures instrument prices are within reasonable ranges","ruleFormula":"Price > 0 and Price < MaxExpectedPrice","severity":3,"countRuleBreaches":15,"resultId":"b2c3d4e5-f6g7-8901-bcde-f23456789012-RuleBreachOverLimit-PriceValidationRuleSet-PriceRangeRule"},{"checkDefinitionScope":"DataQuality","checkDefinitionCode":"CustomValidationCheck","checkDefinitionDisplayName":"Custom Data Validation","checkRunAsAt":"2024-09-08T10:30:00.0000000+00:00","resultType":"RuleInvalid","ruleSetKey":"CustomRuleSet","ruleSetDisplayName":"Custom Validation Rules","ruleKey":"ComplexCalculationRule","ruleDisplayName":"Complex Calculation Rule","ruleDescription":"Performs complex validation calculations","ruleFormula":"InvalidFormula.UnknownFunction()","severity":1,"errorDetail":"Invalid formula syntax: UnknownFunction() is not recognized","resultId":"c3d4e5f6-g7h8-9012-cdef-345678901234-RuleInvalid-CustomRuleSet-ComplexCalculationRule-null"}]}}}},"400":{"description":"The details of the input related failure","content":{"application/json":{"schema":{"$ref":"/docs/api/lusid/schemas.json#/components/schemas/LusidValidationProblemDetails"}},"text/plain":{"schema":{"$ref":"/docs/api/lusid/schemas.json#/components/schemas/LusidValidationProblemDetails"}},"text/json":{"schema":{"$ref":"/docs/api/lusid/schemas.json#/components/schemas/LusidValidationProblemDetails"}}}},"default":{"description":"Error response","content":{"application/json":{"schema":{"$ref":"/docs/api/lusid/schemas.json#/components/schemas/LusidProblemDetails"}}}}},"security":[{"BearerAuth":[]}],"x-fbn-apistatus":"Experimental"}}},"components":{"securitySchemes":{"BearerAuth":{"type":"http","scheme":"bearer"}}}}