| POST | /api/tags/add/{ObjectId} |
|---|
import java.math.*;
import java.util.*;
import java.io.InputStream;
import net.servicestack.client.*;
public class dtos
{
/**
* Add a new tag and link to an object. Returns the list of tags assigned to the object.
*/
@Api(Description="Add a new tag and link to an object. Returns the list of tags assigned to the object.")
public static class SaveNewTagForObject
{
/**
* Object Id to retrieve tags for.
*/
@ApiMember(Description="Object Id to retrieve tags for.", 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;
/**
* Tag name
*/
@ApiMember(Description="Tag name", ParameterType="query")
public String Name = null;
/**
* Associated tag colour
*/
@ApiMember(Description="Associated tag colour", ParameterType="query")
public String Colour = 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;
public UUID getObjectId() { return ObjectId; }
public SaveNewTagForObject setObjectId(UUID value) { this.ObjectId = value; return this; }
public UUID getLicenseeId() { return LicenseeId; }
public SaveNewTagForObject setLicenseeId(UUID value) { this.LicenseeId = value; return this; }
public String getName() { return Name; }
public SaveNewTagForObject setName(String value) { this.Name = value; return this; }
public String getColour() { return Colour; }
public SaveNewTagForObject setColour(String value) { this.Colour = value; return this; }
public UUID getRmsTableCtxId() { return RmsTableCtxId; }
public SaveNewTagForObject setRmsTableCtxId(UUID value) { this.RmsTableCtxId = 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; }
}
}
To override the Content-type in your clients, use the HTTP Accept Header, append the .csv suffix or ?format=csv
The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.
POST /api/tags/add/{ObjectId} HTTP/1.1
Host: pfapi.pstpf.com.au
Accept: text/csv
Content-Type: text/csv
Content-Length: length
{"ObjectId":"00000000-0000-0000-0000-000000000000","LicenseeId":"00000000-0000-0000-0000-000000000000","Name":"String","Colour":"String","RmsTableCtxId":"00000000-0000-0000-0000-000000000000"}
HTTP/1.1 200 OK
Content-Type: text/csv
Content-Length: length
{"Tags":[{"Id":"00000000-0000-0000-0000-000000000000","Name":"String","RmsTableCtxId":"00000000-0000-0000-0000-000000000000","ContactOwnerId":"00000000-0000-0000-0000-000000000000","Colour":"String","ObjectConnectionId":"00000000-0000-0000-0000-000000000000"}],"ResponseStatus":{"ErrorCode":"String","Message":"String","StackTrace":"String","Errors":[{"ErrorCode":"String","FieldName":"String","Message":"String","Meta":{"String":"String"}}],"Meta":{"String":"String"}}}