' Options:
'Date: 2025-03-15 21:32:37
'Version: 8.30
'Tip: To override a DTO option, remove "''" prefix before updating
'BaseUrl: https://api.sanctionssearch.com/v2
'
'''GlobalNamespace: 
'''MakePartial: True
'''MakeVirtual: True
'''MakeDataContractsExtensible: False
'''AddReturnMarker: True
'''AddDescriptionAsComments: True
'''AddDataContractAttributes: False
'''AddIndexesToDataMembers: False
'''AddGeneratedCodeAttributes: False
'''AddResponseStatus: False
'''AddImplicitVersion: 
'''InitializeCollections: True
'''ExportValueTypes: False
'IncludeTypes: GetBulkSearchHistory.*
'''ExcludeTypes: 
'''AddNamespaces: 
'''AddDefaultXmlNamespace: http://schemas.servicestack.net/types

Imports System
Imports System.Collections
Imports System.Collections.Generic
Imports System.Runtime.Serialization
Imports ServiceStack
Imports ServiceStack.DataAnnotations
Imports SanctionsSearch.Api2.ServiceModel.Types
Imports SanctionsSearch.Api2.ServiceModel.Operations.Base
Imports SanctionsSearch.Api2.ServiceModel.Operations.BulkSearches

Namespace Global

    Namespace SanctionsSearch.Api2.ServiceModel.Operations.Base

        Public Partial Class ArrayOfResponseError
            Inherits List(Of ResponseError)
        End Class

        <DataContract>
        Public Partial Class BaseRequest
            Implements IBaseRequest
            '''<Summary>
            '''The authentication credentials
            '''</Summary>
            <DataMember>
            <ApiMember(Description:="The authentication credentials", IsRequired:=true, ParameterType:="header, body")>
            Public Overridable Property Authentication As Authentication
        End Class

        Public Partial Class BaseResponse
            Implements IBaseDataResponse
            Implements IHasResponseStatus
            '''<Summary>
            '''The status of the response
            '''</Summary>
            <ApiMember(Description:="The status of the response")>
            Public Overridable Property ResponseStatus As ResponseStatus
        End Class

        Public Interface IBaseDataResponse
            Property ResponseStatus As ResponseStatus
        End Interface

        Public Interface IBaseRequest
            Property Authentication As Authentication
        End Interface

        Public Interface IHasResponseStatus
            Property ResponseStatus As ResponseStatus
        End Interface

        <DataContract>
        Public Partial Class ResponseError
            Public Sub New()
                Meta = New Dictionary(Of String, String)
            End Sub

            <DataMember(Order:=1)>
            Public Overridable Property ErrorCode As String

            <DataMember(Order:=2)>
            Public Overridable Property FieldName As String

            <DataMember(Order:=3)>
            Public Overridable Property Message As String

            <DataMember(Order:=4)>
            Public Overridable Property Meta As Dictionary(Of String, String)
        End Class

        <DataContract>
        Public Partial Class ResponseStatus
            Public Sub New()
                Meta = New Dictionary(Of String, String)
            End Sub

            <DataMember(Order:=1)>
            Public Overridable Property ErrorCode As String

            <DataMember(Order:=2)>
            Public Overridable Property Message As String

            <DataMember(Order:=3)>
            Public Overridable Property StackTrace As String

            <DataMember(Order:=4)>
            Public Overridable Property Errors As ArrayOfResponseError

            <DataMember(Order:=5)>
            Public Overridable Property Meta As Dictionary(Of String, String)
        End Class
    End Namespace

    Namespace SanctionsSearch.Api2.ServiceModel.Operations.BulkSearches

        <Route("/bulksearches/list", "POST")>
        <DataContract>
        Public Partial Class GetBulkSearchHistory
            Inherits BaseRequest
            Implements IReturn(Of GetBulkSearchHistoryResponse)
            <DataMember>
            Public Overridable Property Request As GetBulkSearchHistoryRequest
        End Class

        Public Partial Class GetBulkSearchHistoryData
            Inherits BaseResponse
            Public Overridable Property BulkSearchList As ArrayOfBulkSearchStatus
            Public Overridable Property CurrentPageNum As Integer
            Public Overridable Property MaxPageNum As Integer
            Public Overridable Property TotalBulkSearches As Integer
            Public Overridable Property PageSize As Integer
        End Class

        Public Partial Class GetBulkSearchHistoryRequest
            Public Overridable Property SubUserName As String
            Public Overridable Property Page As Integer
            Public Overridable Property SortOrder As String
            '''<Summary>
            '''The user id to filter on, in string format (GUID)
            '''</Summary>
            <ApiMember(Description:="The user id to filter on, in string format (GUID)")>
            Public Overridable Property WhereUserId As String

            Public Overridable Property WhereDateFrom As Nullable(Of Date)
            Public Overridable Property WhereDateTo As Nullable(Of Date)
            Public Overridable Property WhereId As Nullable(Of Integer)
            Public Overridable Property PageSize As Integer
        End Class

        <DataContract>
        Public Partial Class GetBulkSearchHistoryResponse
            <DataMember>
            Public Overridable Property Data As GetBulkSearchHistoryData
        End Class
    End Namespace

    Namespace SanctionsSearch.Api2.ServiceModel.Types

        Public Partial Class ArrayOfBulkSearchStatus
            Inherits List(Of BulkSearchStatus)
        End Class

        <DataContract>
        Public Partial Class Authentication
            '''<Summary>
            '''The API User ID provided by us when you signed up to use our API
            '''</Summary>
            <DataMember>
            <ApiMember(Description:="The API User ID provided by us when you signed up to use our API", IsRequired:=true, ParameterType:="header, body")>
            Public Overridable Property ApiUserId As String

            '''<Summary>
            '''The API User Key provided by us when you signed up to use our API
            '''</Summary>
            <DataMember>
            <ApiMember(Description:="The API User Key provided by us when you signed up to use our API", IsRequired:=true, ParameterType:="header, body")>
            Public Overridable Property ApiUserKey As String
        End Class

        Public Partial Class BulkSearchStatus
            Public Overridable Property BulkSearchId As Integer
            Public Overridable Property Success As Boolean
            Public Overridable Property Status As String
            Public Overridable Property Total As Integer
            Public Overridable Property Message As String
            Public Overridable Property Processed As Integer
            Public Overridable Property IsPepSearch As Boolean
            Public Overridable Property IsSanctionsSearch As Boolean
            Public Overridable Property TotalPep As Integer
            Public Overridable Property ProcessedPep As Integer
            Public Overridable Property TotalSanctions As Integer
            Public Overridable Property ProcessedSanctions As Integer
        End Class
    End Namespace
End Namespace