DigiOffice Gateway Web Services

<back to all web services

GetAttachmentsFromTempLink

The following routes are available for this service:
GET/api/attachmentsfromtemplink/{GeneratedZipKey}
<?php namespace dtos;

use DateTime;
use Exception;
use DateInterval;
use JsonSerializable;
use ServiceStack\{IReturn,IReturnVoid,IGet,IPost,IPut,IDelete,IPatch,IMeta,IHasSessionId,IHasBearerToken,IHasVersion};
use ServiceStack\{ICrud,ICreateDb,IUpdateDb,IPatchDb,IDeleteDb,ISaveDb,AuditBase,QueryDb,QueryDb2,QueryData,QueryData2,QueryResponse};
use ServiceStack\{ResponseStatus,ResponseError,EmptyResponse,IdResponse,ArrayList,KeyValuePair2,StringResponse,StringsResponse,Tuple2,Tuple3,ByteArray};
use ServiceStack\{JsonConverters,Returns,TypeContext};


interface IContentTypeWriter
{
}

/**
 * @property Object|null $OriginalResponse
 * @property IRequest|null $Request
 * @property int $StatusCode
 * @property string|null $StatusDescription
 * @property string|null $ContentType
 * @property ByteArray|null $OutputStream
 * @property Object|null $Dto
 * @property bool $UseBufferedStream
 * @property bool $IsClosed
 * @property bool $KeepAlive
 * @property bool $HasStarted
 * @property array<string,Object>|null $Items
 */
interface IResponse
{
}

// @Flags()
enum RequestAttributes : int
{
    case None = 0;
    case Localhost = 1;
    case LocalSubnet = 2;
    case External = 4;
    case Secure = 8;
    case InSecure = 16;
    case AnySecurityMode = 24;
    case HttpHead = 32;
    case HttpGet = 64;
    case HttpPost = 128;
    case HttpPut = 256;
    case HttpDelete = 512;
    case HttpPatch = 1024;
    case HttpOptions = 2048;
    case HttpOther = 4096;
    case AnyHttpMethod = 8160;
    case OneWay = 8192;
    case Reply = 16384;
    case AnyCallStyle = 24576;
    case Soap11 = 32768;
    case Soap12 = 65536;
    case Xml = 131072;
    case Json = 262144;
    case Jsv = 524288;
    case ProtoBuf = 1048576;
    case Csv = 2097152;
    case Html = 4194304;
    case Jsonl = 8388608;
    case MsgPack = 16777216;
    case FormatOther = 33554432;
    case AnyFormat = 67076096;
    case Http = 67108864;
    case MessageQueue = 134217728;
    case Tcp = 268435456;
    case Grpc = 536870912;
    case EndpointOther = 1073741824;
    case AnyEndpoint = 2080374784;
    case InProcess = -2147483648;
    case InternalNetworkAccess = -2147483645;
    case AnyNetworkAccessType = -2147483641;
    case Any = -1;
}

/**
 * @property bool $AcceptsBrotli
 * @property bool $AcceptsDeflate
 * @property bool $AcceptsGzip
 */
interface IRequestPreferences
{
}

/**
 * @property string|null $Name
 * @property string|null $FileName
 * @property int $ContentLength
 * @property string|null $ContentType
 * @property ByteArray|null $InputStream
 */
interface IHttpFile
{
}

/**
 * @property Object|null $OriginalRequest
 * @property IResponse|null $Response
 * @property string|null $OperationName
 * @property string|null $Verb
 * @property RequestAttributes $RequestAttributes
 * @property IRequestPreferences|null $RequestPreferences
 * @property Object|null $Dto
 * @property string|null $ContentType
 * @property bool $IsLocal
 * @property string|null $UserAgent
 * @property array<string,Cookie>|null $Cookies
 * @property string|null $ResponseContentType
 * @property bool $HasExplicitResponseContentType
 * @property array<string,Object>|null $Items
 * @property NameValueCollection|null $Headers
 * @property NameValueCollection|null $QueryString
 * @property NameValueCollection|null $FormData
 * @property bool $UseBufferedStream
 * @property string|null $RawUrl
 * @property string|null $AbsoluteUri
 * @property string|null $UserHostAddress
 * @property string|null $RemoteIp
 * @property string|null $Authorization
 * @property bool $IsSecureConnection
 * @property string[]|null $AcceptTypes
 * @property string|null $PathInfo
 * @property string|null $OriginalPathInfo
 * @property ByteArray|null $InputStream
 * @property int $ContentLength
 * @property IHttpFile[]|null $Files
 * @property string|null $UrlReferrer
 */
interface IRequest
{
}

/**
 * @property int $Status
 * @property HttpStatusCode $StatusCode
 * @property string|null $StatusDescription
 * @property string|null $ContentType
 * @property array<string,string>|null $Headers
 * @property array<Cookie>|null $Cookies
 * @property Object|null $Response
 * @property IContentTypeWriter|null $ResponseFilter
 * @property IRequest|null $RequestContext
 * @property int $PaddingLength
 * @property Func<IDisposable>|null $ResultScope
 */
interface IHttpResult
{
}

class GetAttachmentsFromTempLink implements JsonSerializable
{
    public function __construct(
        /** @var string|null */
        public ?string $GeneratedZipKey=null
    ) {
    }

    /** @throws Exception */
    public function fromMap($o): void {
        if (isset($o['GeneratedZipKey'])) $this->GeneratedZipKey = $o['GeneratedZipKey'];
    }
    
    /** @throws Exception */
    public function jsonSerialize(): mixed
    {
        $o = [];
        if (isset($this->GeneratedZipKey)) $o['GeneratedZipKey'] = $this->GeneratedZipKey;
        return empty($o) ? new class(){} : $o;
    }
}

PHP GetAttachmentsFromTempLink 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 /api/attachmentsfromtemplink/{GeneratedZipKey} HTTP/1.1 
Host: dogw.klokgroep.nl 
Accept: text/jsonl
HTTP/1.1 200 OK
Content-Type: text/jsonl
Content-Length: length

{Unable to show example output for type 'IHttpResult' using the custom 'other' filter}Cannot create an instance of an interface.