DigiOffice API Services Services

<back to all web services

GetQuickRegistrationOptions

Requires Authentication
<?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};


class RegistrationprofileInformation implements JsonSerializable
{
    public function __construct(
        /** @var string|null */
        public ?string $ID=null,
        /** @var string|null */
        public ?string $Name=null,
        /** @var bool|null */
        public ?bool $WizardAutomatischDoorlopen=null
    ) {
    }

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

enum DragDropAction : string
{
    case CopyEmailIncludingAttachments = 'CopyEmailIncludingAttachments';
    case CopyEmailIncludingAndSeparateAttachments = 'CopyEmailIncludingAndSeparateAttachments';
    case CopyEmailExcludingAndSeparateAttachments = 'CopyEmailExcludingAndSeparateAttachments';
    case CopyEmailExcludingAttachments = 'CopyEmailExcludingAttachments';
    case CopyOnlyAttachments = 'CopyOnlyAttachments';
    case MoveEmailIncludingAttachments = 'MoveEmailIncludingAttachments';
    case MoveEmailIncludingAndSeparateAttachments = 'MoveEmailIncludingAndSeparateAttachments';
    case MoveEmailExcludingAndSeparateAttachments = 'MoveEmailExcludingAndSeparateAttachments';
    case MoveEmailExcludingAttachments = 'MoveEmailExcludingAttachments';
    case MoveOnlyAttachments = 'MoveOnlyAttachments';
    case Files = 'Files';
    case FileStream = 'FileStream';
}

class QuickRegistrationOptions implements JsonSerializable
{
    public function __construct(
        /** @var string|null */
        public ?string $ProgCode=null,
        /** @var string|null */
        public ?string $RegistrationProfileID=null,
        /** @var array<RegistrationprofileInformation>|null */
        public ?array $RegistrationProfiles=null,
        /** @var string|null */
        public ?string $AttachmentRegistrationProfileID=null,
        /** @var array<RegistrationprofileInformation>|null */
        public ?array $AttachmentProfiles=null,
        /** @var string|null */
        public ?string $RegistrationProfileNewEmailID=null,
        /** @var string|null */
        public ?string $EMailActie=null,
        /** @var string|null */
        public ?string $EMailActieNieuw=null,
        /** @var string|null */
        public ?string $EMailActieBeantwoorden=null,
        /** @var string|null */
        public ?string $EMailActieDoorsturen=null,
        /** @var DragDropAction|null */
        public ?DragDropAction $DefaultDragDropAction=null,
        /** @var string|null */
        public ?string $RegistratieWizard365URL=null,
        /** @var string|null */
        public ?string $ApplicationName=null,
        /** @var string|null */
        public ?string $Extension=null,
        /** @var bool|null */
        public ?bool $MenuTonenBijSlepen=null,
        /** @var bool|null */
        public ?bool $AllowMultipleRegistrations=null,
        /** @var int */
        public int $MinimumAttachmentSize=0,
        /** @var bool|null */
        public ?bool $AllowEmptyEmailInRegistrationprofileWizard=null,
        /** @var bool|null */
        public ?bool $UpdateRefNrInSentItems=null,
        /** @var bool|null */
        public ?bool $VersturenViaBCC=null,
        /** @var string|null */
        public ?string $BCCEmailAdres=null
    ) {
    }

    /** @throws Exception */
    public function fromMap($o): void {
        if (isset($o['ProgCode'])) $this->ProgCode = $o['ProgCode'];
        if (isset($o['RegistrationProfileID'])) $this->RegistrationProfileID = $o['RegistrationProfileID'];
        if (isset($o['RegistrationProfiles'])) $this->RegistrationProfiles = JsonConverters::fromArray('RegistrationprofileInformation', $o['RegistrationProfiles']);
        if (isset($o['AttachmentRegistrationProfileID'])) $this->AttachmentRegistrationProfileID = $o['AttachmentRegistrationProfileID'];
        if (isset($o['AttachmentProfiles'])) $this->AttachmentProfiles = JsonConverters::fromArray('RegistrationprofileInformation', $o['AttachmentProfiles']);
        if (isset($o['RegistrationProfileNewEmailID'])) $this->RegistrationProfileNewEmailID = $o['RegistrationProfileNewEmailID'];
        if (isset($o['EMailActie'])) $this->EMailActie = $o['EMailActie'];
        if (isset($o['EMailActieNieuw'])) $this->EMailActieNieuw = $o['EMailActieNieuw'];
        if (isset($o['EMailActieBeantwoorden'])) $this->EMailActieBeantwoorden = $o['EMailActieBeantwoorden'];
        if (isset($o['EMailActieDoorsturen'])) $this->EMailActieDoorsturen = $o['EMailActieDoorsturen'];
        if (isset($o['DefaultDragDropAction'])) $this->DefaultDragDropAction = JsonConverters::from('DragDropAction', $o['DefaultDragDropAction']);
        if (isset($o['RegistratieWizard365URL'])) $this->RegistratieWizard365URL = $o['RegistratieWizard365URL'];
        if (isset($o['ApplicationName'])) $this->ApplicationName = $o['ApplicationName'];
        if (isset($o['Extension'])) $this->Extension = $o['Extension'];
        if (isset($o['MenuTonenBijSlepen'])) $this->MenuTonenBijSlepen = $o['MenuTonenBijSlepen'];
        if (isset($o['AllowMultipleRegistrations'])) $this->AllowMultipleRegistrations = $o['AllowMultipleRegistrations'];
        if (isset($o['MinimumAttachmentSize'])) $this->MinimumAttachmentSize = $o['MinimumAttachmentSize'];
        if (isset($o['AllowEmptyEmailInRegistrationprofileWizard'])) $this->AllowEmptyEmailInRegistrationprofileWizard = $o['AllowEmptyEmailInRegistrationprofileWizard'];
        if (isset($o['UpdateRefNrInSentItems'])) $this->UpdateRefNrInSentItems = $o['UpdateRefNrInSentItems'];
        if (isset($o['VersturenViaBCC'])) $this->VersturenViaBCC = $o['VersturenViaBCC'];
        if (isset($o['BCCEmailAdres'])) $this->BCCEmailAdres = $o['BCCEmailAdres'];
    }
    
    /** @throws Exception */
    public function jsonSerialize(): mixed
    {
        $o = [];
        if (isset($this->ProgCode)) $o['ProgCode'] = $this->ProgCode;
        if (isset($this->RegistrationProfileID)) $o['RegistrationProfileID'] = $this->RegistrationProfileID;
        if (isset($this->RegistrationProfiles)) $o['RegistrationProfiles'] = JsonConverters::toArray('RegistrationprofileInformation', $this->RegistrationProfiles);
        if (isset($this->AttachmentRegistrationProfileID)) $o['AttachmentRegistrationProfileID'] = $this->AttachmentRegistrationProfileID;
        if (isset($this->AttachmentProfiles)) $o['AttachmentProfiles'] = JsonConverters::toArray('RegistrationprofileInformation', $this->AttachmentProfiles);
        if (isset($this->RegistrationProfileNewEmailID)) $o['RegistrationProfileNewEmailID'] = $this->RegistrationProfileNewEmailID;
        if (isset($this->EMailActie)) $o['EMailActie'] = $this->EMailActie;
        if (isset($this->EMailActieNieuw)) $o['EMailActieNieuw'] = $this->EMailActieNieuw;
        if (isset($this->EMailActieBeantwoorden)) $o['EMailActieBeantwoorden'] = $this->EMailActieBeantwoorden;
        if (isset($this->EMailActieDoorsturen)) $o['EMailActieDoorsturen'] = $this->EMailActieDoorsturen;
        if (isset($this->DefaultDragDropAction)) $o['DefaultDragDropAction'] = JsonConverters::to('DragDropAction', $this->DefaultDragDropAction);
        if (isset($this->RegistratieWizard365URL)) $o['RegistratieWizard365URL'] = $this->RegistratieWizard365URL;
        if (isset($this->ApplicationName)) $o['ApplicationName'] = $this->ApplicationName;
        if (isset($this->Extension)) $o['Extension'] = $this->Extension;
        if (isset($this->MenuTonenBijSlepen)) $o['MenuTonenBijSlepen'] = $this->MenuTonenBijSlepen;
        if (isset($this->AllowMultipleRegistrations)) $o['AllowMultipleRegistrations'] = $this->AllowMultipleRegistrations;
        if (isset($this->MinimumAttachmentSize)) $o['MinimumAttachmentSize'] = $this->MinimumAttachmentSize;
        if (isset($this->AllowEmptyEmailInRegistrationprofileWizard)) $o['AllowEmptyEmailInRegistrationprofileWizard'] = $this->AllowEmptyEmailInRegistrationprofileWizard;
        if (isset($this->UpdateRefNrInSentItems)) $o['UpdateRefNrInSentItems'] = $this->UpdateRefNrInSentItems;
        if (isset($this->VersturenViaBCC)) $o['VersturenViaBCC'] = $this->VersturenViaBCC;
        if (isset($this->BCCEmailAdres)) $o['BCCEmailAdres'] = $this->BCCEmailAdres;
        return empty($o) ? new class(){} : $o;
    }
}

class GetQuickRegistrationOptions implements JsonSerializable
{
    public function __construct(
        /** @var string|null */
        public ?string $ProgCode=null,
        /** @var string|null */
        public ?string $ApplicationName=null,
        /** @var string|null */
        public ?string $Extension=null
    ) {
    }

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

PHP GetQuickRegistrationOptions 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.

POST /jsonl/reply/GetQuickRegistrationOptions HTTP/1.1 
Host: test-do-services.klokgroep.nl 
Accept: text/jsonl
Content-Type: text/jsonl
Content-Length: length

{"ProgCode":"String","ApplicationName":"String","Extension":"String"}
HTTP/1.1 200 OK
Content-Type: text/jsonl
Content-Length: length

{"ProgCode":"String","RegistrationProfileID":"00000000-0000-0000-0000-000000000000","RegistrationProfiles":[{"ID":"00000000-0000-0000-0000-000000000000","Name":"String","WizardAutomatischDoorlopen":false}],"AttachmentRegistrationProfileID":"00000000-0000-0000-0000-000000000000","AttachmentProfiles":[{"ID":"00000000-0000-0000-0000-000000000000","Name":"String","WizardAutomatischDoorlopen":false}],"RegistrationProfileNewEmailID":"00000000-0000-0000-0000-000000000000","EMailActie":"String","EMailActieNieuw":"String","EMailActieBeantwoorden":"String","EMailActieDoorsturen":"String","DefaultDragDropAction":"CopyEmailIncludingAttachments","RegistratieWizard365URL":"String","ApplicationName":"String","Extension":"String","MenuTonenBijSlepen":false,"AllowMultipleRegistrations":false,"MinimumAttachmentSize":0,"AllowEmptyEmailInRegistrationprofileWizard":false,"UpdateRefNrInSentItems":false,"VersturenViaBCC":false,"BCCEmailAdres":"String"}