Booklinker.API

<back to all web services

GetLinksRequest

Requires Authentication
The following routes are available for this service:
GET/v1/links/list
namespace Booklinker.API.ServiceModel.DTOs.Shortlinks

open System
open System.IO
open System.Collections
open System.Collections.Generic
open System.Runtime.Serialization
open ServiceStack
open ServiceStack.DataAnnotations

    [<DataContract>]
    [<AllowNullLiteral>]
    type LinkResult() = 
        [<DataMember(Name="baseCode")>]
        member val BaseCode:String = null with get,set

        [<DataMember(Name="url")>]
        member val Url:String = null with get,set

        [<DataMember(Name="originalUrl")>]
        member val OriginalUrl:String = null with get,set

        [<DataMember(Name="imageUrl")>]
        member val ImageUrl:String = null with get,set

        [<DataMember(Name="retailer")>]
        member val Retailer:String = null with get,set

        [<DataMember(Name="title")>]
        member val Title:String = null with get,set

        [<DataMember(Name="author")>]
        member val Author:String = null with get,set

    [<DataContract>]
    [<AllowNullLiteral>]
    type GetLinksResponse() = 
        [<DataMember(Name="allLinksLoaded")>]
        member val AllLinksLoaded:Boolean = new Boolean() with get,set

        [<DataMember(Name="results")>]
        member val Results:ResizeArray<LinkResult> = null with get,set

        [<DataMember(Name="responseStatus")>]
        member val ResponseStatus:ResponseStatus = null with get,set

    [<DataContract>]
    [<AllowNullLiteral>]
    type PaginatedBaseRequest() = 
        [<DataMember(Name="skip")>]
        member val Skip:Int32 = new Int32() with get,set

        [<DataMember(Name="take")>]
        member val Take:Int32 = new Int32() with get,set

    [<DataContract>]
    [<AllowNullLiteral>]
    type GetLinksRequest() = 
        inherit PaginatedBaseRequest()
        [<DataMember(Name="ids")>]
        member val Ids:ResizeArray<String> = null with get,set

F# GetLinksRequest 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 /v1/links/list HTTP/1.1 
Host: api.booklinker.com 
Accept: application/xml
HTTP/1.1 200 OK
Content-Type: application/xml
Content-Length: length

<GetLinksResponse xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/Booklinker.API.ServiceModel.V1.Responses">
  <allLinksLoaded>false</allLinksLoaded>
  <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>
  <results xmlns:d2p1="http://schemas.datacontract.org/2004/07/Booklinker.API.ServiceModel.DTOs.Shortlinks">
    <d2p1:LinkResult>
      <d2p1:author>String</d2p1:author>
      <d2p1:baseCode>String</d2p1:baseCode>
      <d2p1:imageUrl>String</d2p1:imageUrl>
      <d2p1:originalUrl>String</d2p1:originalUrl>
      <d2p1:retailer>String</d2p1:retailer>
      <d2p1:title>String</d2p1:title>
      <d2p1:url>String</d2p1:url>
    </d2p1:LinkResult>
  </results>
</GetLinksResponse>