Platform API

<back to all web services

UpdateObjectSubscrptionStatus

Updates an object subscription status

Requires Authentication
The following routes are available for this service:
All Verbs/api/updateobjectsubscriptionstatus
<?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 ListItemFilter implements JsonSerializable
{
    public function __construct(
        /** @var string */
        public string $ListItemFilterId='',
        /** @var string|null */
        public ?string $FilterName=null,
        /** @var string */
        public string $ListId='',
        /** @var string */
        public string $ListItemId='',
        /** @var bool|null */
        public ?bool $ListItemIsInFilter=null
    ) {
    }

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

class ListDataItem implements JsonSerializable
{
    public function __construct(
        /** @var string */
        public string $Id='',
        /** @var string|null */
        public ?string $Name=null,
        /** @var string|null */
        public ?string $Description=null,
        /** @var string|null */
        public ?string $ShortName=null,
        /** @var string|null */
        public ?string $DefaultName=null,
        /** @var bool|null */
        public ?bool $IsDefault=null,
        /** @var int */
        public int $Order=0,
        /** @var string */
        public string $ListItemTrafficLightId='',
        /** @var string */
        public string $PrimaryListItemImageId='',
        /** @var string|null */
        public ?string $PrimaryListItemImageUrl=null,
        /** @var string|null */
        public ?string $PrimaryImageThumbnailUrl=null,
        /** @var string */
        public string $OwnerContactId='',
        /** @var string|null */
        public ?string $RecordStatus=null,
        /** @var string|null */
        public ?string $Tags=null,
        /** @var string */
        public string $ListId='',
        /** @var bool|null */
        public ?bool $MarkAsChecked=null,
        /** @var string */
        public string $RelatedObjectId='',
        /** @var bool|null */
        public ?bool $CanEdit=null,
        /** @var bool|null */
        public ?bool $IsOwner=null,
        /** @var array<Object>|null */
        public ?array $ExtraValues=null,
        /** @var array<ListItemFilter>|null */
        public ?array $ListItemFilters=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['Description'])) $this->Description = $o['Description'];
        if (isset($o['ShortName'])) $this->ShortName = $o['ShortName'];
        if (isset($o['DefaultName'])) $this->DefaultName = $o['DefaultName'];
        if (isset($o['IsDefault'])) $this->IsDefault = $o['IsDefault'];
        if (isset($o['Order'])) $this->Order = $o['Order'];
        if (isset($o['ListItemTrafficLightId'])) $this->ListItemTrafficLightId = $o['ListItemTrafficLightId'];
        if (isset($o['PrimaryListItemImageId'])) $this->PrimaryListItemImageId = $o['PrimaryListItemImageId'];
        if (isset($o['PrimaryListItemImageUrl'])) $this->PrimaryListItemImageUrl = $o['PrimaryListItemImageUrl'];
        if (isset($o['PrimaryImageThumbnailUrl'])) $this->PrimaryImageThumbnailUrl = $o['PrimaryImageThumbnailUrl'];
        if (isset($o['OwnerContactId'])) $this->OwnerContactId = $o['OwnerContactId'];
        if (isset($o['RecordStatus'])) $this->RecordStatus = $o['RecordStatus'];
        if (isset($o['Tags'])) $this->Tags = $o['Tags'];
        if (isset($o['ListId'])) $this->ListId = $o['ListId'];
        if (isset($o['MarkAsChecked'])) $this->MarkAsChecked = $o['MarkAsChecked'];
        if (isset($o['RelatedObjectId'])) $this->RelatedObjectId = $o['RelatedObjectId'];
        if (isset($o['CanEdit'])) $this->CanEdit = $o['CanEdit'];
        if (isset($o['IsOwner'])) $this->IsOwner = $o['IsOwner'];
        if (isset($o['ExtraValues'])) $this->ExtraValues = JsonConverters::fromArray('Object', $o['ExtraValues']);
        if (isset($o['ListItemFilters'])) $this->ListItemFilters = JsonConverters::fromArray('ListItemFilter', $o['ListItemFilters']);
    }
    
    /** @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->Description)) $o['Description'] = $this->Description;
        if (isset($this->ShortName)) $o['ShortName'] = $this->ShortName;
        if (isset($this->DefaultName)) $o['DefaultName'] = $this->DefaultName;
        if (isset($this->IsDefault)) $o['IsDefault'] = $this->IsDefault;
        if (isset($this->Order)) $o['Order'] = $this->Order;
        if (isset($this->ListItemTrafficLightId)) $o['ListItemTrafficLightId'] = $this->ListItemTrafficLightId;
        if (isset($this->PrimaryListItemImageId)) $o['PrimaryListItemImageId'] = $this->PrimaryListItemImageId;
        if (isset($this->PrimaryListItemImageUrl)) $o['PrimaryListItemImageUrl'] = $this->PrimaryListItemImageUrl;
        if (isset($this->PrimaryImageThumbnailUrl)) $o['PrimaryImageThumbnailUrl'] = $this->PrimaryImageThumbnailUrl;
        if (isset($this->OwnerContactId)) $o['OwnerContactId'] = $this->OwnerContactId;
        if (isset($this->RecordStatus)) $o['RecordStatus'] = $this->RecordStatus;
        if (isset($this->Tags)) $o['Tags'] = $this->Tags;
        if (isset($this->ListId)) $o['ListId'] = $this->ListId;
        if (isset($this->MarkAsChecked)) $o['MarkAsChecked'] = $this->MarkAsChecked;
        if (isset($this->RelatedObjectId)) $o['RelatedObjectId'] = $this->RelatedObjectId;
        if (isset($this->CanEdit)) $o['CanEdit'] = $this->CanEdit;
        if (isset($this->IsOwner)) $o['IsOwner'] = $this->IsOwner;
        if (isset($this->ExtraValues)) $o['ExtraValues'] = JsonConverters::toArray('Object', $this->ExtraValues);
        if (isset($this->ListItemFilters)) $o['ListItemFilters'] = JsonConverters::toArray('ListItemFilter', $this->ListItemFilters);
        return empty($o) ? new class(){} : $o;
    }
}

class GetDataSourcesResponse implements JsonSerializable
{
    public function __construct(
        /** @var array<ListDataItem>|null */
        public ?array $DataSources=null,
        /** @var ResponseStatus|null */
        public ?ResponseStatus $ResponseStatus=null
    ) {
    }

    /** @throws Exception */
    public function fromMap($o): void {
        if (isset($o['DataSources'])) $this->DataSources = JsonConverters::fromArray('ListDataItem', $o['DataSources']);
        if (isset($o['ResponseStatus'])) $this->ResponseStatus = JsonConverters::from('ResponseStatus', $o['ResponseStatus']);
    }
    
    /** @throws Exception */
    public function jsonSerialize(): mixed
    {
        $o = [];
        if (isset($this->DataSources)) $o['DataSources'] = JsonConverters::toArray('ListDataItem', $this->DataSources);
        if (isset($this->ResponseStatus)) $o['ResponseStatus'] = JsonConverters::to('ResponseStatus', $this->ResponseStatus);
        return empty($o) ? new class(){} : $o;
    }
}

/** @description Updates an object subscription status */
// @Api(Description="Updates an object subscription status")
class UpdateObjectSubscrptionStatus implements JsonSerializable
{
    public function __construct(
        /** @var string */
        public string $ObjectSubscriptionId='',
        /** @var string */
        public string $RecordStatus='',
        /** @var string|null */
        public ?string $SubscriptionKey=null
    ) {
    }

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

PHP UpdateObjectSubscrptionStatus 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 /api/updateobjectsubscriptionstatus HTTP/1.1 
Host: pfapi.pstpf.com.au 
Accept: application/xml
Content-Type: application/xml
Content-Length: length

<UpdateObjectSubscrptionStatus xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/Eros.Subtle.Canvara.WebAPIModel.ServiceModel">
  <ObjectSubscriptionId>00000000-0000-0000-0000-000000000000</ObjectSubscriptionId>
  <RecordStatus>0</RecordStatus>
  <SubscriptionKey>String</SubscriptionKey>
</UpdateObjectSubscrptionStatus>
HTTP/1.1 200 OK
Content-Type: application/xml
Content-Length: length

<GetDataSourcesResponse xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/Eros.Subtle.Canvara.WebAPIModel.ServiceModel">
  <DataSources xmlns:d2p1="http://schemas.datacontract.org/2004/07/Eros.Causal.Common.Entity">
    <d2p1:ListDataItem>
      <d2p1:_x003C_CanEdit_x003E_k__BackingField>false</d2p1:_x003C_CanEdit_x003E_k__BackingField>
      <d2p1:_x003C_DefaultName_x003E_k__BackingField>String</d2p1:_x003C_DefaultName_x003E_k__BackingField>
      <d2p1:_x003C_Description_x003E_k__BackingField>String</d2p1:_x003C_Description_x003E_k__BackingField>
      <d2p1:_x003C_ExtraValues_x003E_k__BackingField xmlns:d4p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
        <d4p1:anyType />
      </d2p1:_x003C_ExtraValues_x003E_k__BackingField>
      <d2p1:_x003C_Id_x003E_k__BackingField>00000000-0000-0000-0000-000000000000</d2p1:_x003C_Id_x003E_k__BackingField>
      <d2p1:_x003C_IsDefault_x003E_k__BackingField>false</d2p1:_x003C_IsDefault_x003E_k__BackingField>
      <d2p1:_x003C_IsOwner_x003E_k__BackingField>false</d2p1:_x003C_IsOwner_x003E_k__BackingField>
      <d2p1:_x003C_ListId_x003E_k__BackingField>00000000-0000-0000-0000-000000000000</d2p1:_x003C_ListId_x003E_k__BackingField>
      <d2p1:_x003C_ListItemFilters_x003E_k__BackingField>
        <d2p1:ListItemFilter>
          <d2p1:_x003C_FilterName_x003E_k__BackingField>String</d2p1:_x003C_FilterName_x003E_k__BackingField>
          <d2p1:_x003C_ListId_x003E_k__BackingField>00000000-0000-0000-0000-000000000000</d2p1:_x003C_ListId_x003E_k__BackingField>
          <d2p1:_x003C_ListItemFilterId_x003E_k__BackingField>00000000-0000-0000-0000-000000000000</d2p1:_x003C_ListItemFilterId_x003E_k__BackingField>
          <d2p1:_x003C_ListItemId_x003E_k__BackingField>00000000-0000-0000-0000-000000000000</d2p1:_x003C_ListItemId_x003E_k__BackingField>
          <d2p1:_x003C_ListItemIsInFilter_x003E_k__BackingField>false</d2p1:_x003C_ListItemIsInFilter_x003E_k__BackingField>
        </d2p1:ListItemFilter>
      </d2p1:_x003C_ListItemFilters_x003E_k__BackingField>
      <d2p1:_x003C_ListItemTrafficLightId_x003E_k__BackingField>00000000-0000-0000-0000-000000000000</d2p1:_x003C_ListItemTrafficLightId_x003E_k__BackingField>
      <d2p1:_x003C_MarkAsChecked_x003E_k__BackingField>false</d2p1:_x003C_MarkAsChecked_x003E_k__BackingField>
      <d2p1:_x003C_Name_x003E_k__BackingField>String</d2p1:_x003C_Name_x003E_k__BackingField>
      <d2p1:_x003C_Order_x003E_k__BackingField>0</d2p1:_x003C_Order_x003E_k__BackingField>
      <d2p1:_x003C_OwnerContactId_x003E_k__BackingField>00000000-0000-0000-0000-000000000000</d2p1:_x003C_OwnerContactId_x003E_k__BackingField>
      <d2p1:_x003C_PrimaryImageThumbnailUrl_x003E_k__BackingField>String</d2p1:_x003C_PrimaryImageThumbnailUrl_x003E_k__BackingField>
      <d2p1:_x003C_PrimaryListItemImageId_x003E_k__BackingField>00000000-0000-0000-0000-000000000000</d2p1:_x003C_PrimaryListItemImageId_x003E_k__BackingField>
      <d2p1:_x003C_PrimaryListItemImageUrl_x003E_k__BackingField>String</d2p1:_x003C_PrimaryListItemImageUrl_x003E_k__BackingField>
      <d2p1:_x003C_RecordStatus_x003E_k__BackingField>String</d2p1:_x003C_RecordStatus_x003E_k__BackingField>
      <d2p1:_x003C_RelatedObjectId_x003E_k__BackingField>00000000-0000-0000-0000-000000000000</d2p1:_x003C_RelatedObjectId_x003E_k__BackingField>
      <d2p1:_x003C_ShortName_x003E_k__BackingField>String</d2p1:_x003C_ShortName_x003E_k__BackingField>
      <d2p1:_x003C_Tags_x003E_k__BackingField>String</d2p1:_x003C_Tags_x003E_k__BackingField>
    </d2p1:ListDataItem>
  </DataSources>
  <ResponseStatus xmlns:d2p1="http://schemas.servicestack.net/types">
    <d2p1:ErrorCode>String</d2p1:ErrorCode>
    <d2p1:Message>String</d2p1:Message>
    <d2p1:StackTrace>String</d2p1:StackTrace>
    <d2p1:Errors>
      <d2p1:ResponseError>
        <d2p1:ErrorCode>String</d2p1:ErrorCode>
        <d2p1:FieldName>String</d2p1:FieldName>
        <d2p1:Message>String</d2p1:Message>
        <d2p1:Meta xmlns:d5p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
          <d5p1:KeyValueOfstringstring>
            <d5p1:Key>String</d5p1:Key>
            <d5p1:Value>String</d5p1:Value>
          </d5p1:KeyValueOfstringstring>
        </d2p1:Meta>
      </d2p1:ResponseError>
    </d2p1:Errors>
    <d2p1:Meta xmlns:d3p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
      <d3p1:KeyValueOfstringstring>
        <d3p1:Key>String</d3p1:Key>
        <d3p1:Value>String</d3p1:Value>
      </d3p1:KeyValueOfstringstring>
    </d2p1:Meta>
  </ResponseStatus>
</GetDataSourcesResponse>