Billhighway Cloud API

<back to all web services

CancelInvoice

The following routes are available for this service:
POST/invoices/misc/cancel
import 'package:servicestack/servicestack.dart';

class CancelInvoiceReply implements IHaveErrorField, IConvertible
{
    String? ClassName;
    String? UniqueId;
    DateTime? CreatedDateTime;
    int? ClientId;
    int? ErrorCode;
    String? ErrorMessage;
    String? InvoiceNumber;
    bool? IsError;

    CancelInvoiceReply({this.ClassName,this.UniqueId,this.CreatedDateTime,this.ClientId,this.ErrorCode,this.ErrorMessage,this.InvoiceNumber,this.IsError});
    CancelInvoiceReply.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        ClassName = json['ClassName'];
        UniqueId = json['UniqueId'];
        CreatedDateTime = JsonConverters.fromJson(json['CreatedDateTime'],'DateTime',context!);
        ClientId = json['ClientId'];
        ErrorCode = json['ErrorCode'];
        ErrorMessage = json['ErrorMessage'];
        InvoiceNumber = json['InvoiceNumber'];
        IsError = json['IsError'];
        return this;
    }

    Map<String, dynamic> toJson() => {
        'ClassName': ClassName,
        'UniqueId': UniqueId,
        'CreatedDateTime': JsonConverters.toJson(CreatedDateTime,'DateTime',context!),
        'ClientId': ClientId,
        'ErrorCode': ErrorCode,
        'ErrorMessage': ErrorMessage,
        'InvoiceNumber': InvoiceNumber,
        'IsError': IsError
    };

    getTypeName() => "CancelInvoiceReply";
    TypeContext? context = _ctx;
}

class CancelInvoice implements IConvertible
{
    String? ClassName;
    String? UniqueId;
    DateTime? CreatedDateTime;
    int? ClientId;
    String? GroupId;
    String? OpportunityId;
    String? InvoiceNumber;
    String? CancelledBy;
    String? CancelReason;
    String? Notes;

    CancelInvoice({this.ClassName,this.UniqueId,this.CreatedDateTime,this.ClientId,this.GroupId,this.OpportunityId,this.InvoiceNumber,this.CancelledBy,this.CancelReason,this.Notes});
    CancelInvoice.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        ClassName = json['ClassName'];
        UniqueId = json['UniqueId'];
        CreatedDateTime = JsonConverters.fromJson(json['CreatedDateTime'],'DateTime',context!);
        ClientId = json['ClientId'];
        GroupId = json['GroupId'];
        OpportunityId = json['OpportunityId'];
        InvoiceNumber = json['InvoiceNumber'];
        CancelledBy = json['CancelledBy'];
        CancelReason = json['CancelReason'];
        Notes = json['Notes'];
        return this;
    }

    Map<String, dynamic> toJson() => {
        'ClassName': ClassName,
        'UniqueId': UniqueId,
        'CreatedDateTime': JsonConverters.toJson(CreatedDateTime,'DateTime',context!),
        'ClientId': ClientId,
        'GroupId': GroupId,
        'OpportunityId': OpportunityId,
        'InvoiceNumber': InvoiceNumber,
        'CancelledBy': CancelledBy,
        'CancelReason': CancelReason,
        'Notes': Notes
    };

    getTypeName() => "CancelInvoice";
    TypeContext? context = _ctx;
}

TypeContext _ctx = TypeContext(library: 'devapi.billhighway.com', types: <String, TypeInfo> {
    'CancelInvoiceReply': TypeInfo(TypeOf.Class, create:() => CancelInvoiceReply()),
    'CancelInvoice': TypeInfo(TypeOf.Class, create:() => CancelInvoice()),
});

Dart CancelInvoice 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.

POST /invoices/misc/cancel HTTP/1.1 
Host: devapi.billhighway.com 
Accept: application/xml
Content-Type: application/xml
Content-Length: length

<CancelInvoice xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/BH.CloudAPI.Common4.DTO.SalesForce">
  <CancelReason>String</CancelReason>
  <CancelledBy>String</CancelledBy>
  <ClassName>String</ClassName>
  <ClientId>0</ClientId>
  <CreatedDateTime>0001-01-01T00:00:00</CreatedDateTime>
  <GroupId>String</GroupId>
  <InvoiceNumber>String</InvoiceNumber>
  <Notes>String</Notes>
  <OpportunityId>String</OpportunityId>
  <UniqueId>String</UniqueId>
</CancelInvoice>
HTTP/1.1 200 OK
Content-Type: application/xml
Content-Length: length

<CancelInvoiceReply xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/BH.CloudAPI.Common4.DTO.SalesForce">
  <ClassName>String</ClassName>
  <ClientId>0</ClientId>
  <CreatedDateTime>0001-01-01T00:00:00</CreatedDateTime>
  <ErrorCode>0</ErrorCode>
  <ErrorMessage>String</ErrorMessage>
  <InvoiceNumber>String</InvoiceNumber>
  <UniqueId>String</UniqueId>
</CancelInvoiceReply>