| PUT | /api/invoice/{InvoiceId}/processed | Update invoice as customer processed, will also acknowledge invoice if not yet set. |
|---|
using System;
using System.IO;
using System.Collections;
using System.Collections.Generic;
using System.Runtime.Serialization;
using ServiceStack;
using ServiceStack.DataAnnotations;
using DX.STF.Application.ClientApi.Messages.Invoice;
using DX.Framework.Core.Commands.Dto;
namespace DX.Framework.Core.Commands.Dto
{
public partial class TokenDto
: ICommandResponse
{
public virtual Guid Token { get; set; }
}
}
namespace DX.STF.Application.ClientApi.Messages.Invoice
{
///<summary>
///Invoice
///</summary>
[Api(Description="Invoice")]
[ApiResponse(Description="Command received", IsDefaultResponse=true, ResponseType=typeof(DX.Framework.Core.Commands.Dto.TokenDto), StatusCode=202)]
public partial class UpdateInvoiceClientProcessed
{
///<summary>
///Invoice ID or Token
///</summary>
[ApiMember(Description="Invoice ID or Token", ExcludeInSchema=true, ParameterType="path")]
public virtual Guid InvoiceId { get; set; }
///<summary>
///Customer invoice reference in destination system
///</summary>
[ApiMember(Description="Customer invoice reference in destination system")]
public virtual string CustomerReference { get; set; }
///<summary>
///Date and Time invoice was processed in destination system
///</summary>
[ApiMember(Description="Date and Time invoice was processed in destination system")]
public virtual DateTime CustomerProcessedDate { get; set; }
}
}
C# UpdateInvoiceClientProcessed DTOs
To override the Content-type in your clients, use the HTTP Accept Header, append the .json suffix or ?format=json
To embed the response in a jsonp callback, append ?callback=myCallback
The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.
PUT /api/invoice/{InvoiceId}/processed HTTP/1.1
Host: stf-api-uat.data-xchange.co.za
Accept: application/json
Content-Type: application/json
Content-Length: length
{"customerReference":"String"}
HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: length
{}