| POST, PUT | /cmd/ads |
|---|
# frozen_string_literal: true
# encoding: utf-8
require 'json'
require 'servicestack'
class Localization
include ServiceStack::DTO
# @return [String]
attr_accessor :ln
# @return [String]
attr_accessor :value
def self.properties
{
ln: { name: 'ln' },
value: { name: 'value' },
}
end
end
class Message
include ServiceStack::DTO
# @return [String]
attr_accessor :id
# @return [Dictionary]
attr_accessor :localizations
def self.properties
{
id: { name: 'id' },
localizations: { name: 'localizations', type: { String => Localization } },
}
end
end
class Advertisement
include ServiceStack::DTO
# @return [String]
attr_accessor :id
# @return [Dictionary]
attr_accessor :messages
def self.properties
{
id: { name: 'id' },
messages: { name: 'messages', type: { String => Message } },
}
end
end
class StoreAds
include ServiceStack::DTO
# @return [Advertisement]
attr_accessor :advertisement
def self.properties
{
advertisement: { name: 'advertisement', type: Advertisement },
}
end
def response_type() = ServiceStack::ResponseStatus
def get_type_name() = 'StoreAds'
end
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
The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.
POST /cmd/ads HTTP/1.1
Host: api.bettor.webhop.biz
Accept: application/json
Content-Type: application/json
Content-Length: length
{"advertisement":{"id":"String","messages":{"String":{"id":"String","localizations":{"String":{"ln":"String","value":"String"}}}}}}
HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: length
{"errorCode":"String","message":"String","stackTrace":"String","errors":[{"errorCode":"String","fieldName":"String","message":"String","meta":{"String":"String"}}],"meta":{"String":"String"}}