BokaMera.API.Host

<back to all web services

QuerySummarizedInvoices

Requires Authentication
The following routes are available for this service:
GET/eaccounting/summarizedinvoicesList summarized invoices with optional filtersQuery summarized invoices by company, customer, date range, and status.
namespace BokaMera.API.ServiceModel.Dtos

open System
open System.IO
open System.Collections
open System.Collections.Generic
open System.Runtime.Serialization
open ServiceStack
open ServiceStack.DataAnnotations

    [<AllowNullLiteral>]
    type SummarizedInvoiceDetailResponse() = 
        member val Id:Guid = new Guid() with get,set
        member val CompanyId:Guid = new Guid() with get,set
        member val CustomerId:Guid = new Guid() with get,set
        member val CustomerName:String = null with get,set
        member val EAccountingInvoiceId:String = null with get,set
        member val Draft:Boolean = new Boolean() with get,set
        member val DateFrom:DateTime = new DateTime() with get,set
        member val DateTo:DateTime = new DateTime() with get,set
        member val ServiceId:Nullable<Int32> = new Nullable<Int32>() with get,set
        member val Status:Int32 = new Int32() with get,set
        member val StatusName:String = null with get,set
        member val ErrorMessage:String = null with get,set
        member val BookingIds:ResizeArray<Int32> = null with get,set
        member val CreatedDate:DateTime = new DateTime() with get,set
        member val UpdatedDate:DateTime = new DateTime() with get,set

    [<AllowNullLiteral>]
    type QuerySummarizedInvoicesResponse() = 
        member val Results:ResizeArray<SummarizedInvoiceDetailResponse> = null with get,set
        member val ResponseStatus:ResponseStatus = null with get,set

    type SummarizedInvoiceStatus =
        | Pending = 0
        | Processing = 1
        | Completed = 2
        | Failed = 3

    [<ValidateRequest(Validator="IsAuthenticated")>]
    [<AllowNullLiteral>]
    type QuerySummarizedInvoices() = 
        ///<summary>
        ///The company id, if empty will use the company id for the user you are logged in with.
        ///</summary>
        [<ApiMember(Description="The company id, if empty will use the company id for the user you are logged in with.")>]
        member val CompanyId:Nullable<Guid> = new Nullable<Guid>() with get,set

        ///<summary>
        ///Filter by customer id.
        ///</summary>
        [<ApiMember(Description="Filter by customer id.")>]
        member val CustomerId:Nullable<Guid> = new Nullable<Guid>() with get,set

        ///<summary>
        ///Filter by date from.
        ///</summary>
        [<ApiMember(Description="Filter by date from.")>]
        member val DateFrom:Nullable<DateTime> = new Nullable<DateTime>() with get,set

        ///<summary>
        ///Filter by date to.
        ///</summary>
        [<ApiMember(Description="Filter by date to.")>]
        member val DateTo:Nullable<DateTime> = new Nullable<DateTime>() with get,set

        ///<summary>
        ///Filter by status (0=Pending, 1=Processing, 2=Completed, 3=Failed).
        ///</summary>
        [<ApiMember(Description="Filter by status (0=Pending, 1=Processing, 2=Completed, 3=Failed).")>]
        member val Status:Nullable<SummarizedInvoiceStatus> = new Nullable<SummarizedInvoiceStatus>() with get,set

F# QuerySummarizedInvoices DTOs

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

HTTP + OTHER

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

GET /eaccounting/summarizedinvoices HTTP/1.1 
Host: api.bokamera.se 
Accept: text/jsonl
HTTP/1.1 200 OK
Content-Type: text/jsonl
Content-Length: length

{"Results":[{"CustomerName":"String","EAccountingInvoiceId":"String","Draft":false,"ServiceId":0,"Status":0,"StatusName":"String","ErrorMessage":"String","BookingIds":[0]}],"ResponseStatus":{"ErrorCode":"String","Message":"String","StackTrace":"String","Errors":[{"ErrorCode":"String","FieldName":"String","Message":"String","Meta":{"String":"String"}}],"Meta":{"String":"String"}}}