ShortlinksAPI

<back to all web services

GetUserLinksRequest

Requires Authentication
The following routes are available for this service:
GET/v4/links/list
import java.math.*;
import java.util.*;
import java.io.InputStream;
import net.servicestack.client.*;
import com.google.gson.annotations.*;
import com.google.gson.reflect.*;

public class dtos
{

    @DataContract
    public static class GetUserLinksRequest extends V4PaginatedBaseRequest
    {
        @DataMember(Name="username")
        @SerializedName("username")
        public String username = null;

        @DataMember(Name="groupId")
        @SerializedName("groupId")
        public Long groupId = null;

        @DataMember(Name="linkType")
        @SerializedName("linkType")
        public LinkType linkType = null;
        
        public String getUsername() { return username; }
        public GetUserLinksRequest setUsername(String value) { this.username = value; return this; }
        public Long getGroupId() { return groupId; }
        public GetUserLinksRequest setGroupId(Long value) { this.groupId = value; return this; }
        public LinkType getLinkType() { return linkType; }
        public GetUserLinksRequest setLinkType(LinkType value) { this.linkType = value; return this; }
    }

    @DataContract
    public static class V4PaginatedBaseRequest extends V4BaseRequest
    {
        @DataMember(Name="offset")
        @SerializedName("offset")
        public Integer offset = null;

        @DataMember(Name="limit")
        @SerializedName("limit")
        public Integer limit = null;
        
        public Integer getOffset() { return offset; }
        public V4PaginatedBaseRequest setOffset(Integer value) { this.offset = value; return this; }
        public Integer getLimit() { return limit; }
        public V4PaginatedBaseRequest setLimit(Integer value) { this.limit = value; return this; }
    }

    @DataContract
    public static class V4BaseRequest
    {
        
    }

    public static enum LinkType
    {
        None,
        Simple,
        Split,
        Interstitial,
        Advanced,
        Collection;
    }

    @DataContract
    public static class GetUserLinksResponse extends V4PaginatedBaseResponse implements IGetUserLinksResponse
    {
        @DataMember(Name="data")
        @SerializedName("data")
        public ArrayList<IUserLink> data = null;
        
        public ArrayList<IUserLink> getData() { return data; }
        public GetUserLinksResponse setData(ArrayList<IUserLink> value) { this.data = value; return this; }
    }

    @DataContract
    public static class V4PaginatedBaseResponse extends V4BaseResponse
    {
        @DataMember(Name="page")
        @SerializedName("page")
        public V4PageObject page = null;
        
        public V4PageObject getPage() { return page; }
        public V4PaginatedBaseResponse setPage(V4PageObject value) { this.page = value; return this; }
    }

    @DataContract
    public static class V4BaseResponse
    {
        @DataMember(Name="status")
        @SerializedName("status")
        public ResponseStatus responseStatus = null;
        
        public ResponseStatus getResponseStatus() { return responseStatus; }
        public V4BaseResponse setResponseStatus(ResponseStatus value) { this.responseStatus = value; return this; }
    }

    @DataContract
    public static class V4PageObject
    {
        @DataMember(Name="offset")
        @SerializedName("offset")
        public Integer offset = null;

        @DataMember(Name="limit")
        @SerializedName("limit")
        public Integer limit = null;

        @DataMember(Name="totalRecords")
        @SerializedName("totalRecords")
        public Integer totalRecords = null;
        
        public Integer getOffset() { return offset; }
        public V4PageObject setOffset(Integer value) { this.offset = value; return this; }
        public Integer getLimit() { return limit; }
        public V4PageObject setLimit(Integer value) { this.limit = value; return this; }
        public Integer getTotalRecords() { return totalRecords; }
        public V4PageObject setTotalRecords(Integer value) { this.totalRecords = value; return this; }
    }

    public static interface IUserLink
    {
        public String url = null;
        public String baseCode = null;
        public LinkType linkType = null;
        public String typeDefinitionPublicId = null;
        public VersionedRefreshableMetadata metadata = null;
    }

    public static class VersionedRefreshableMetadata extends RefreshableMetadata
    {
        public Date versionCreatedDate = null;
        
        public Date getVersionCreatedDate() { return versionCreatedDate; }
        public VersionedRefreshableMetadata setVersionCreatedDate(Date value) { this.versionCreatedDate = value; return this; }
    }

    public static class RefreshableMetadata implements IRefreshableMetadata
    {
        public Date createdDate = null;
        public Date updatedDate = null;
        
        public Date getCreatedDate() { return createdDate; }
        public RefreshableMetadata setCreatedDate(Date value) { this.createdDate = value; return this; }
        public Date getUpdatedDate() { return updatedDate; }
        public RefreshableMetadata setUpdatedDate(Date value) { this.updatedDate = value; return this; }
    }

}

Java GetUserLinksRequest 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.

GET /v4/links/list HTTP/1.1 
Host: shortlinks-api.qa.platform.georiot.com 
Accept: application/xml
HTTP/1.1 200 OK
Content-Type: application/xml
Content-Length: length

<GetUserLinksResponse xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/ShortlinksAPI.ServiceModel.V4.Responses">
  <status 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>
  </status>
  <page>
    <limit>0</limit>
    <offset>0</offset>
    <totalRecords>0</totalRecords>
  </page>
  <data xmlns:d2p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays" i:nil="true" />
</GetUserLinksResponse>