Platform API

<back to all web services

LinkTagForObject

Link existing tag to an object. Returns the list of tags assigned to the object.

Requires Authentication
The following routes are available for this service:
POST/api/tags/link/{ObjectId}
import java.math.*;
import java.util.*;
import java.io.InputStream;
import net.servicestack.client.*;

public class dtos
{

    /**
    * Link existing tag to an object. Returns the list of tags assigned to the object.
    */
    @Api(Description="Link existing tag to an object. Returns the list of tags assigned to the object.")
    public static class LinkTagForObject
    {
        /**
        * Object Id to link the tag to.
        */
        @ApiMember(Description="Object Id to link the tag to.", ParameterType="query")
        public UUID ObjectId = null;

        /**
        * Licensee Id owner of the object.
        */
        @ApiMember(Description="Licensee Id owner of the object.", ParameterType="query")
        public UUID LicenseeId = null;

        /**
        * Id of the tag
        */
        @ApiMember(Description="Id of the tag", ParameterType="query")
        public UUID Id = null;

        /**
        * Associated tag colour, if this is passed we will update the existing tags colour.
        */
        @ApiMember(Description="Associated tag colour, if this is passed we will update the existing tags colour.", ParameterType="query")
        public String Colour = null;
        
        public UUID getObjectId() { return ObjectId; }
        public LinkTagForObject setObjectId(UUID value) { this.ObjectId = value; return this; }
        public UUID getLicenseeId() { return LicenseeId; }
        public LinkTagForObject setLicenseeId(UUID value) { this.LicenseeId = value; return this; }
        public UUID getId() { return Id; }
        public LinkTagForObject setId(UUID value) { this.Id = value; return this; }
        public String getColour() { return Colour; }
        public LinkTagForObject setColour(String value) { this.Colour = value; return this; }
    }

    @ApiResponse(Description="A list of tags")
    public static class GetTagsListResponse
    {
        /**
        * List of tags.
        */
        @ApiMember(Description="List of tags.", ParameterType="query")
        public ArrayList<TagModel> Tags = null;

        public ResponseStatus ResponseStatus = null;
        
        public ArrayList<TagModel> getTags() { return Tags; }
        public GetTagsListResponse setTags(ArrayList<TagModel> value) { this.Tags = value; return this; }
        public ResponseStatus getResponseStatus() { return ResponseStatus; }
        public GetTagsListResponse setResponseStatus(ResponseStatus value) { this.ResponseStatus = value; return this; }
    }

    public static class TagModel
    {
        /**
        * Id of the tag
        */
        @ApiMember(Description="Id of the tag", ParameterType="query")
        public UUID Id = null;

        /**
        * Tag name
        */
        @ApiMember(Description="Tag name", ParameterType="query")
        public String Name = null;

        /**
        * RmsTableCtx Id that represents the type of object the tag an be linked to
        */
        @ApiMember(Description="RmsTableCtx Id that represents the type of object the tag an be linked to", ParameterType="query")
        public UUID RmsTableCtxId = null;

        /**
        * Owner Id to use to retrieve tags for a particular licensee
        */
        @ApiMember(Description="Owner Id to use to retrieve tags for a particular licensee", ParameterType="query")
        public UUID ContactOwnerId = null;

        /**
        * Associated tag colour
        */
        @ApiMember(Description="Associated tag colour", ParameterType="query")
        public String Colour = null;

        /**
        * Object Connection Id linking an object to the tag
        */
        @ApiMember(Description="Object Connection Id linking an object to the tag", ParameterType="query")
        public UUID ObjectConnectionId = null;
        
        public UUID getId() { return Id; }
        public TagModel setId(UUID value) { this.Id = value; return this; }
        public String getName() { return Name; }
        public TagModel setName(String value) { this.Name = value; return this; }
        public UUID getRmsTableCtxId() { return RmsTableCtxId; }
        public TagModel setRmsTableCtxId(UUID value) { this.RmsTableCtxId = value; return this; }
        public UUID getContactOwnerId() { return ContactOwnerId; }
        public TagModel setContactOwnerId(UUID value) { this.ContactOwnerId = value; return this; }
        public String getColour() { return Colour; }
        public TagModel setColour(String value) { this.Colour = value; return this; }
        public UUID getObjectConnectionId() { return ObjectConnectionId; }
        public TagModel setObjectConnectionId(UUID value) { this.ObjectConnectionId = value; return this; }
    }

}

Java LinkTagForObject 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/tags/link/{ObjectId} HTTP/1.1 
Host: pfapi.pstpf.com.au 
Accept: application/xml
Content-Type: application/xml
Content-Length: length

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

<GetTagsListResponse xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/Eros.Subtle.Canvara.WebAPIModel.ServiceModel">
  <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>
  <Tags xmlns:d2p1="http://schemas.datacontract.org/2004/07/Eros.Saguna.Common.WebAPIModel.Models">
    <d2p1:TagModel>
      <d2p1:Colour>String</d2p1:Colour>
      <d2p1:ContactOwnerId>00000000-0000-0000-0000-000000000000</d2p1:ContactOwnerId>
      <d2p1:Id>00000000-0000-0000-0000-000000000000</d2p1:Id>
      <d2p1:Name>String</d2p1:Name>
      <d2p1:ObjectConnectionId>00000000-0000-0000-0000-000000000000</d2p1:ObjectConnectionId>
      <d2p1:RmsTableCtxId>00000000-0000-0000-0000-000000000000</d2p1:RmsTableCtxId>
    </d2p1:TagModel>
  </Tags>
</GetTagsListResponse>