Nephila RiskStore

<back to all web services

FindEventSetRequest

General
Requires Authentication
The following routes are available for this service:
GET/api/riskstore/eventset/searchSearch for event sets

// @DataContract
export class QueryBase
{
    // @DataMember(Order=1)
    public skip?: number;

    // @DataMember(Order=2)
    public take?: number;

    // @DataMember(Order=3)
    public orderBy: string;

    // @DataMember(Order=4)
    public orderByDesc: string;

    // @DataMember(Order=5)
    public include: string;

    // @DataMember(Order=6)
    public fields: string;

    // @DataMember(Order=7)
    public meta: { [index:string]: string; };

    public constructor(init?: Partial<QueryBase>) { (Object as any).assign(this, init); }
}

export class QueryDb<T> extends QueryBase
{

    public constructor(init?: Partial<QueryDb<T>>) { super(init); (Object as any).assign(this, init); }
}

export enum ProcessingStatus
{
    New = 0,
    Processing = 1,
    Failed = 10,
    Successful = 20,
}

export class EventSetTelemetry
{
    public eventSetId: number;
    public startedDateTimeUtc?: string;
    public endedDateTimeUct?: string;
    public eventLossCount: number;

    public constructor(init?: Partial<EventSetTelemetry>) { (Object as any).assign(this, init); }
}

export class EventSet
{
    public eventSetId: number;
    public processingStatus: ProcessingStatus;
    public sourceModelSystem: string;
    public sourceEventSetId: string;
    public modelId: string;
    public perspectiveId: number;
    public simulationCount: number;
    public programCalculationId: string;
    public description: string;
    public limit: number;
    public reinstatements: number;
    public eventSourceType: string;
    public eventSetOriginId: string;
    public eventSetOriginName: string;
    public eventSetOriginType: string;
    public sourceEventSetLossContainer: string;
    public sourceEventSetLossPath: string;
    public resolution: string;
    public resultsHash: string;
    public expectedLossAggregate: number;
    public expectedLossOccurrence: number;
    public probabilityOfAttachment: number;
    public probabilityOfExhaustion: number;
    public approvedDateTimeUtc: string;
    public approvedBy: string;
    public eventSourceId: number;
    public validFromUtc: string;
    public validToUtc: string;
    public container: string;
    public blobName: string;
    public updatedDateUtc: string;
    public isArchived: boolean;
    public archivedLossDataBlobPath: string;
    public archivedLossDataHash: string;
    public eventSetTelemetry: EventSetTelemetry;

    public constructor(init?: Partial<EventSet>) { (Object as any).assign(this, init); }
}

export class FindEventSetRequest extends QueryDb<EventSet>
{
    /** @description Source Model System */
    // @ApiMember(DataType="string", Description="Source Model System")
    public sourceModelSystem: string;

    /** @description Model Id */
    // @ApiMember(DataType="string", Description="Model Id")
    public modelId: string;

    /** @description The perspective id for the event set */
    // @ApiMember(DataType="integer", Description="The perspective id for the event set", Format="int32")
    public perspectiveId?: number;

    /** @description Source Event Set Id */
    // @ApiMember(DataType="string", Description="Source Event Set Id", Format="uuid")
    public sourceEventSetId?: string;

    public constructor(init?: Partial<FindEventSetRequest>) { super(init); (Object as any).assign(this, init); }
}

export enum ResultOutputLevel
{
    NotSet = 'NotSet',
    PortfolioMetrics = 'PortfolioMetrics',
    Curve = 'Curve',
    YLT = 'YLT',
    TailIntensity = 'TailIntensity',
    DealYlt = 'DealYlt',
    DealElt = 'DealElt',
    DealEltWithIndustryLoss = 'DealEltWithIndustryLoss',
    PortfolioElt = 'PortfolioElt',
    PortfolioEltWithIndustryLoss = 'PortfolioEltWithIndustryLoss',
    EventSetGeneration = 'EventSetGeneration',
    PortfolioRaps = 'PortfolioRaps',
    DealRaps = 'DealRaps',
    PortfolioSepyIndustryLoss = 'PortfolioSepyIndustryLoss',
    DealSepyIndustryLoss = 'DealSepyIndustryLoss',
}

export class AnalysisPortfolioEventSetConfiguration implements IObjectWithId, IHasAnalysisId
{
    // @DataMember(Order=1)
    public id: number;

    // @DataMember(Order=2)
    public analysisId: number;

    // @DataMember(Order=3)
    public analysisConfigurationId: number;

    // @DataMember(Order=4)
    public portfolioName: string;

    // @DataMember(Order=5)
    public modelId: string;

    // @DataMember(Order=6)
    public rowIdentifier: string;

    public constructor(init?: Partial<AnalysisPortfolioEventSetConfiguration>) { (Object as any).assign(this, init); }
}

// @DataContract
export class AnalysisConfiguration implements IObjectWithId, IHasAnalysisId
{
    // @DataMember(Order=1)
    public id: number;

    // @DataMember(Order=2)
    public analysisId: number;

    // @DataMember(Order=3)
    public windowStartDate?: string;

    // @DataMember(Order=4)
    public windowEndDate?: string;

    // @DataMember(Order=5)
    public standardEnabled: boolean;

    // @DataMember(Order=6)
    public runOffEnabled: boolean;

    // @DataMember(Order=7)
    public aggregateEnabled: boolean;

    // @DataMember(Order=8)
    public occurrenceEnabled: boolean;

    // @DataMember(Order=9)
    public nettEnabled: boolean;

    // @DataMember(Order=10)
    public grossEnabled: boolean;

    // @DataMember(Order=11)
    public tailIntensityPercentageStart?: number;

    // @DataMember(Order=12)
    public tailIntensityPercentageEnd?: number;

    // @DataMember(Order=13)
    public metaRiskId: number;

    // @DataMember(Order=14)
    public outputLevel: ResultOutputLevel;

    // @DataMember(Order=15)
    public processingStatus: ProcessingStatus;

    // @DataMember(Order=16)
    public eventLossFloorStartRange?: number;

    // @DataMember(Order=17)
    public eventLossFloorEndRange?: number;

    // @DataMember(Order=18)
    public analysisPortfolioEventSetConfigurations: AnalysisPortfolioEventSetConfiguration[];

    // @DataMember(Order=19)
    public rowIdentifier: string;

    public constructor(init?: Partial<AnalysisConfiguration>) { (Object as any).assign(this, init); }
}

export enum TransactionType
{
    NotSet = 'NotSet',
    S = 'S',
    B = 'B',
}

// @DataContract
export class AnalysisPortfolioAllocation implements IObjectWithId
{
    // @DataMember(Order=1)
    public id: number;

    // @DataMember(Order=2)
    public analysisDealId: number;

    // @DataMember(Order=3)
    // @Validate(Validator="NotEmpty", Message="PortfolioName is mandatory")
    public portfolioName: string;

    // @DataMember(Order=4)
    public allocationPercentage: number;

    // @DataMember(Order=5)
    public rowIdentifier: string;

    public constructor(init?: Partial<AnalysisPortfolioAllocation>) { (Object as any).assign(this, init); }
}

// @DataContract
export class AnalysisDeal implements IObjectWithId, IHasAnalysisId
{
    // @DataMember(Order=1)
    public id: number;

    // @DataMember(Order=2)
    public analysisId: number;

    // @DataMember(Order=3)
    public sourceDealId: string;

    // @DataMember(Order=4)
    public dealRef: string;

    // @DataMember(Order=5)
    public sourceDealSystem: string;

    // @DataMember(Order=6)
    public eventSetId: number;

    // @DataMember(Order=7)
    public rol: number;

    // @DataMember(Order=8)
    public limit: number;

    // @DataMember(Order=9)
    public inceptionDate: string;

    // @DataMember(Order=10)
    public expiryDate: string;

    // @DataMember(Order=11)
    public transactionType: TransactionType;

    // @DataMember(Order=12)
    public allocations: AnalysisPortfolioAllocation[];

    // @DataMember(Order=13)
    public perspectiveIdOverride?: number;

    // @DataMember(Order=14)
    public eventSetIdOverride?: number;

    // @DataMember(Order=15)
    public modelAsOfDateOverride?: string;

    // @DataMember(Order=16)
    public sourceModelSystemOverride: string;

    // @DataMember(Order=17)
    public sourceModelIdOverride: string;

    // @DataMember(Order=18)
    public sourceEventSetIdOverride: string;

    // @DataMember(Order=19)
    public eventSourceSystemOverride: string;

    // @DataMember(Order=20)
    public rowIdentifier: string;

    public constructor(init?: Partial<AnalysisDeal>) { (Object as any).assign(this, init); }
}

// @DataContract
export class AnalysisEventIdFilter implements IObjectWithId, IHasAnalysisId
{
    // @DataMember(Order=1)
    public id: number;

    // @DataMember(Order=2)
    public analysisId: number;

    // @DataMember(Order=3)
    public eventSourceId: number;

    // @DataMember(Order=4)
    public eventId: number;

    // @DataMember(Order=5)
    public rowIdentifier: string;

    public constructor(init?: Partial<AnalysisEventIdFilter>) { (Object as any).assign(this, init); }
}

export enum MessageType
{
    NotSet = 'NotSet',
    Persistence = 'Persistence',
    Archival = 'Archival',
}

// @DataContract
export class MessageTracking
{
    // @DataMember(Order=1)
    public id: string;

    // @DataMember(Order=2)
    public analysisId?: number;

    // @DataMember(Order=3)
    public processingStatus: ProcessingStatus;

    // @DataMember(Order=4)
    public messageType: MessageType;

    // @DataMember(Order=5)
    public createdDateUtc: string;

    // @DataMember(Order=6)
    public updatedDateUtc: string;

    public constructor(init?: Partial<MessageTracking>) { (Object as any).assign(this, init); }
}

// @DataContract
export class Analysis implements IObjectWithId
{
    // @DataMember(Order=1)
    public id: number;

    // @DataMember(Order=2)
    public name: string;

    // @DataMember(Order=3)
    public modelAsOfDate?: string;

    // @DataMember(Order=4)
    public perspectiveId: number;

    // @DataMember(Order=5)
    public configurations: AnalysisConfiguration[];

    // @DataMember(Order=6)
    public deals: AnalysisDeal[];

    // @DataMember(Order=7)
    public eventIdFilters: AnalysisEventIdFilter[];

    // @DataMember(Order=8)
    public createdBy: string;

    // @DataMember(Order=9)
    public createdDateUtc: string;

    // @DataMember(Order=10)
    public completedDateUtc?: string;

    // @DataMember(Order=11)
    public legacyAnalysisId?: number;

    // @DataMember(Order=12)
    public resultPersistenceTracking: MessageTracking[];

    // @DataMember(Order=13)
    public processingStatus: ProcessingStatus;

    // @DataMember(Order=14)
    public saveResults: boolean;

    // @DataMember(Order=15)
    public eventSourceSystem: string;

    // @DataMember(Order=16)
    public updatedDateUtc: string;

    // @DataMember(Order=17)
    public isExpired: boolean;

    // @DataMember(Order=18)
    public rowIdentifier: string;

    // @DataMember(Order=19)
    public errorMessage: string;

    /** @description Take the minimum simulation count when we have different simulations between event sets */
    // @DataMember(Order=20)
    // @ApiMember(DataType="boolean", Description="Take the minimum simulation count when we have different simulations between event sets")
    public ignoreSimulationCountMismatch: boolean;

    // @DataMember(Order=21)
    // @Ignore()
    public finalStatus: ProcessingStatus;

    public constructor(init?: Partial<Analysis>) { (Object as any).assign(this, init); }
}

// @DataContract
export class QueryResponse<T>
{
    // @DataMember(Order=1)
    public offset: number;

    // @DataMember(Order=2)
    public total: number;

    // @DataMember(Order=3)
    public results: Analysis[];

    // @DataMember(Order=4)
    public meta: { [index:string]: string; };

    // @DataMember(Order=5)
    public responseStatus: ResponseStatus;

    public constructor(init?: Partial<QueryResponse<T>>) { (Object as any).assign(this, init); }
}

TypeScript FindEventSetRequest DTOs

To override the Content-type in your clients, use the HTTP Accept Header, append the .xml suffix or ?format=xml

HTTP + XML

The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.

GET /api/riskstore/eventset/search HTTP/1.1 
Host: riskstoreng-dev.nephila.com 
Accept: application/xml
HTTP/1.1 200 OK
Content-Type: application/xml
Content-Length: length

<QueryResponseOfEventSete3Twhsvh xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.servicestack.net/types">
  <Offset>0</Offset>
  <Total>0</Total>
  <Results xmlns:d2p1="http://schemas.datacontract.org/2004/07/Nephila.RiskStore.ServiceModel.Types">
    <d2p1:EventSet>
      <d2p1:ApprovedBy>String</d2p1:ApprovedBy>
      <d2p1:ApprovedDateTimeUtc>0001-01-01T00:00:00</d2p1:ApprovedDateTimeUtc>
      <d2p1:ArchivedLossDataBlobPath>String</d2p1:ArchivedLossDataBlobPath>
      <d2p1:ArchivedLossDataHash>String</d2p1:ArchivedLossDataHash>
      <d2p1:BlobName>String</d2p1:BlobName>
      <d2p1:Container>String</d2p1:Container>
      <d2p1:Description>String</d2p1:Description>
      <d2p1:EventSetId>0</d2p1:EventSetId>
      <d2p1:EventSetOriginId>String</d2p1:EventSetOriginId>
      <d2p1:EventSetOriginName>String</d2p1:EventSetOriginName>
      <d2p1:EventSetOriginType>String</d2p1:EventSetOriginType>
      <d2p1:EventSetTelemetry>
        <d2p1:EndedDateTimeUct>0001-01-01T00:00:00</d2p1:EndedDateTimeUct>
        <d2p1:EventLossCount>0</d2p1:EventLossCount>
        <d2p1:EventSetId>0</d2p1:EventSetId>
        <d2p1:StartedDateTimeUtc>0001-01-01T00:00:00</d2p1:StartedDateTimeUtc>
      </d2p1:EventSetTelemetry>
      <d2p1:EventSourceId>0</d2p1:EventSourceId>
      <d2p1:EventSourceType>String</d2p1:EventSourceType>
      <d2p1:ExpectedLossAggregate>0</d2p1:ExpectedLossAggregate>
      <d2p1:ExpectedLossOccurrence>0</d2p1:ExpectedLossOccurrence>
      <d2p1:IsArchived>false</d2p1:IsArchived>
      <d2p1:Limit>0</d2p1:Limit>
      <d2p1:ModelId>String</d2p1:ModelId>
      <d2p1:PerspectiveId>0</d2p1:PerspectiveId>
      <d2p1:ProbabilityOfAttachment>0</d2p1:ProbabilityOfAttachment>
      <d2p1:ProbabilityOfExhaustion>0</d2p1:ProbabilityOfExhaustion>
      <d2p1:ProcessingStatus>New</d2p1:ProcessingStatus>
      <d2p1:ProgramCalculationId>String</d2p1:ProgramCalculationId>
      <d2p1:Reinstatements>0</d2p1:Reinstatements>
      <d2p1:Resolution>String</d2p1:Resolution>
      <d2p1:ResultsHash>String</d2p1:ResultsHash>
      <d2p1:SimulationCount>0</d2p1:SimulationCount>
      <d2p1:SourceEventSetId>String</d2p1:SourceEventSetId>
      <d2p1:SourceEventSetLossContainer>String</d2p1:SourceEventSetLossContainer>
      <d2p1:SourceEventSetLossPath>String</d2p1:SourceEventSetLossPath>
      <d2p1:SourceModelSystem>String</d2p1:SourceModelSystem>
      <d2p1:UpdatedDateUtc>0001-01-01T00:00:00</d2p1:UpdatedDateUtc>
      <d2p1:ValidFromUtc>0001-01-01T00:00:00</d2p1:ValidFromUtc>
      <d2p1:ValidToUtc>0001-01-01T00:00:00</d2p1:ValidToUtc>
    </d2p1:EventSet>
  </Results>
  <Meta xmlns:d2p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
    <d2p1:KeyValueOfstringstring>
      <d2p1:Key>String</d2p1:Key>
      <d2p1:Value>String</d2p1:Value>
    </d2p1:KeyValueOfstringstring>
  </Meta>
  <ResponseStatus>
    <ErrorCode>String</ErrorCode>
    <Message>String</Message>
    <StackTrace>String</StackTrace>
    <Errors>
      <ResponseError>
        <ErrorCode>String</ErrorCode>
        <FieldName>String</FieldName>
        <Message>String</Message>
        <Meta xmlns:d5p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
          <d5p1:KeyValueOfstringstring>
            <d5p1:Key>String</d5p1:Key>
            <d5p1:Value>String</d5p1:Value>
          </d5p1:KeyValueOfstringstring>
        </Meta>
      </ResponseError>
    </Errors>
    <Meta xmlns:d3p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
      <d3p1:KeyValueOfstringstring>
        <d3p1:Key>String</d3p1:Key>
        <d3p1:Value>String</d3p1:Value>
      </d3p1:KeyValueOfstringstring>
    </Meta>
  </ResponseStatus>
</QueryResponseOfEventSete3Twhsvh>