Pecuario.Backend

<back to all web services

GetVideoFeed

The following routes are available for this service:
GET/api/v1/videos
namespace Pecuario.Backend.Application.DTOs

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

    [<AllowNullLiteral>]
    type Status() = 
        member val Message:String = null with get,set
        member val StatusCode:Int32 = new Int32() with get,set

    [<AllowNullLiteral>]
    type BaseResponse() = 
        member val Status:Status = null with get,set

    [<AllowNullLiteral>]
    type VideoFeedItem() = 
        member val AnimalId:String = null with get,set
        member val VideoUrl:String = null with get,set
        member val ThumbnailUrl:String = null with get,set
        member val Description:String = null with get,set
        member val Title:String = null with get,set

    [<AllowNullLiteral>]
    type GetVideoFeedResponse() = 
        inherit BaseResponse()
        member val Videos:ResizeArray<VideoFeedItem> = new ResizeArray<VideoFeedItem>() with get,set
        member val Offset:String = null with get,set

    [<AllowNullLiteral>]
    type GetVideoFeed() = 
        interface IGet
        member val PageSize:Nullable<Int32> = new Nullable<Int32>() with get,set
        member val Offset:String = null with get,set

F# GetVideoFeed 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 /api/v1/videos HTTP/1.1 
Host: pecuario-backend.develsystems.com 
Accept: text/jsv
HTTP/1.1 200 OK
Content-Type: text/jsv
Content-Length: length

{
	videos: 
	[
		{
			animalId: String,
			videoUrl: String,
			thumbnailUrl: String,
			description: String,
			title: String
		}
	],
	offset: String
}