| POST, PUT | /documents/download | 
|---|
export class DocumentRequestBase
{
    /** @description ExternalID */
    // @ApiMember(Description="ExternalID", ExcludeInSchema=true, IsRequired=true, ParameterType="path")
    public ExternalId: string;
    public constructor(init?: Partial<DocumentRequestBase>) { (Object as any).assign(this, init); }
}
export class ClientDownloadRequest extends DocumentRequestBase
{
    public FileName: string;
    /** @description Month */
    // @ApiMember(Description="Month", ExcludeInSchema=true, IsRequired=true, ParameterType="path")
    public Month: number;
    /** @description Day */
    // @ApiMember(Description="Day", ExcludeInSchema=true, IsRequired=true, ParameterType="path")
    public Day: number;
    public constructor(init?: Partial<ClientDownloadRequest>) { super(init); (Object as any).assign(this, init); }
}
export class ResponseBase
{
    public Message: string;
    public IsSuccess: boolean;
    public constructor(init?: Partial<ResponseBase>) { (Object as any).assign(this, init); }
}
export class ClientDownloadResponse extends ResponseBase
{
    public FileName: string;
    public Stream: string;
    public constructor(init?: Partial<ClientDownloadResponse>) { super(init); (Object as any).assign(this, init); }
}
TypeScript ClientDownloadRequest DTOs
To override the Content-type in your clients, use the HTTP Accept Header, append the .jsv suffix or ?format=jsv
The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.
POST /documents/download HTTP/1.1 
Host: initiation-pen.sirva.com 
Accept: text/jsv
Content-Type: text/jsv
Content-Length: length
{
	FileName: String,
	Month: 0,
	Day: 0,
	ExternalId: String
}
HTTP/1.1 200 OK
Content-Type: text/jsv
Content-Length: length
{
	FileName: String,
	Message: String,
	IsSuccess: False
}