Booklinker.API

<back to all web services

GetAccountRequest

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

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

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

    [<AllowNullLiteral>]
    type IImageData = 
        abstract Id:String with get,set
        abstract Provider:String with get,set
        abstract ProviderImageId:String with get,set
        abstract Url:String with get,set
        abstract Attributes:Dictionary<String, String> with get,set

    type SignatureAppearance =
        | None = 0
        | Text = 1
        | Upload = 2

    [<DataContract>]
    [<AllowNullLiteral>]
    type AccountData() = 
        [<DataMember(Name="id")>]
        member val Id:String = null with get,set

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

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

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

        [<DataMember(Name="profileImage")>]
        member val ProfileImage:IImageData = null with get,set

        [<DataMember(Name="signatureImage")>]
        member val SignatureImage:IImageData = null with get,set

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

        [<DataMember(Name="signatureAppearance")>]
        member val SignatureAppearance:SignatureAppearance = new SignatureAppearance() with get,set

    [<DataContract>]
    [<AllowNullLiteral>]
    type GetAccountResponse() = 
        inherit V2BaseResponse()
        [<DataMember(Name="data")>]
        member val Data:AccountData = null with get,set

    [<DataContract>]
    [<AllowNullLiteral>]
    type GetAccountRequest() = 
        class end

F# GetAccountRequest DTOs

To override the Content-type in your clients, use the HTTP Accept Header, append the .jsv suffix or ?format=jsv

HTTP + JSV

The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.

GET /v1/account HTTP/1.1 
Host: api.booklinker.com 
Accept: text/jsv
HTTP/1.1 200 OK
Content-Type: text/jsv
Content-Length: length

{
	userAccount: 
	{
		email: String,
		settings: 
		{
			id: String,
			profileImageId: String,
			signatureImageId: String,
			signatureText: String,
			signatureFont: String,
			signatureAppearance: none
		}
	},
	responseStatus: 
	{
		errorCode: String,
		message: String,
		stackTrace: String,
		errors: 
		[
			{
				errorCode: String,
				fieldName: String,
				message: String,
				meta: 
				{
					String: String
				}
			}
		],
		meta: 
		{
			String: String
		}
	}
}