MyApp

<back to all web services

QueryTracks

Media
The following routes are available for this service:
GET/tracks
GET/tracks/{TrackId}
# frozen_string_literal: true
# encoding: utf-8


require 'json'
require 'servicestack'


class Tracks
    include ServiceStack::DTO

    # @return [Integer]
    attr_accessor :track_id
    # @Required
    # @return [String]
    attr_accessor :name

    # @return [Integer]
    attr_accessor :album_id
    # @return [Integer]
    attr_accessor :media_type_id
    # @return [Integer]
    attr_accessor :genre_id
    # @return [String]
    attr_accessor :composer
    # @return [Integer]
    attr_accessor :milliseconds
    # @return [Integer]
    attr_accessor :bytes
    # @return [BigDecimal]
    attr_accessor :unit_price

    def self.properties
        {
            track_id: { name: 'trackId' },
            name: { name: 'name' },
            album_id: { name: 'albumId' },
            media_type_id: { name: 'mediaTypeId' },
            genre_id: { name: 'genreId' },
            composer: { name: 'composer' },
            milliseconds: { name: 'milliseconds' },
            bytes: { name: 'bytes' },
            unit_price: { name: 'unitPrice' },
        }
    end

end

class QueryTracks < ServiceStack::QueryDb
    # @return [Integer]
    attr_accessor :track_id
    # @return [String]
    attr_accessor :name_contains

    def self.properties
        {
            track_id: { name: 'trackId' },
            name_contains: { name: 'nameContains' },
        }
    end

end

class Todo
    include ServiceStack::DTO

    # @return [Integer]
    attr_accessor :id
    # @return [String]
    attr_accessor :text
    # @return [TrueClass]
    attr_accessor :is_finished

    def self.properties
        {
            id: { name: 'id' },
            text: { name: 'text' },
            is_finished: { name: 'isFinished' },
        }
    end

end

Ruby QueryTracks DTOs

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

To embed the response in a jsonp callback, append ?callback=myCallback

HTTP + JSON

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

GET /tracks HTTP/1.1 
Host: blazor-gallery.servicestack.net 
Accept: application/json
HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: length

{"offset":0,"total":0,"results":[{"trackId":0,"name":"String","albumId":0,"mediaTypeId":0,"genreId":0,"composer":"String","milliseconds":0,"bytes":0,"unitPrice":0}],"meta":{"String":"String"},"responseStatus":{"errorCode":"String","message":"String","stackTrace":"String","errors":[{"errorCode":"String","fieldName":"String","message":"String","meta":{"String":"String"}}],"meta":{"String":"String"}}}