| POST | /cmd/products/instances |
|---|
const std = @import("std");
pub const Ref = struct {
id: ?[]const u8 = null,
val: ?[]const u8 = null,
};
pub const ProductReference = struct {
id: ?[]const u8 = null,
value: ?[]const u8 = null,
category: ?[]const u8 = null,
productProvider: ?Ref = null,
};
pub const PayinConstraintType = enum(i32) {
SingleBet = 0,
MultiBet = 1,
SystemBet = 2,
};
pub const Money = struct {
amount: f64 = 0,
currency: ?[]const u8 = null,
};
pub const PayinConstraint = struct {
type: ?PayinConstraintType = null,
min: ?Money = null,
default: ?Money = null,
warningThreshold: ?Money = null,
max: ?Money = null,
};
pub const WinningsCapType = enum(i32) {
SingleBet = 0,
MultiBet = 1,
SystemBet = 2,
};
pub const WinningsCap = struct {
type: ?WinningsCapType = null,
cap: ?Money = null,
};
pub const BettingPolicies = struct {
payinConstraints: ?RecordList = null,
payinTaxationPolicyId: ?[]const u8 = null,
winningsCaps: ?RecordList = null,
winningsTaxationPolicyId: ?[]const u8 = null,
};
pub const InstallProductInstance = struct {
id: ?[]const u8 = null,
name: ?[]const u8 = null,
title: ?[]const u8 = null,
product: ?ProductReference = null,
currency: ?Ref = null,
bettingPolicies: ?BettingPolicies = null,
apiUrl: ?[]const u8 = null,
backOfficeUrl: ?[]const u8 = null,
instanceUrl: ?[]const u8 = null,
feedPlayerUrl: ?[]const u8 = null,
};
pub fn RecordList(comptime T: type) type {
_ = T;
return struct {
pub const ss_collection = "items";
items: []T = &.{},
};
Zig InstallProductInstance DTOs
To override the Content-type in your clients, use the HTTP Accept Header, append the .other suffix or ?format=other
The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.
POST /cmd/products/instances HTTP/1.1
Host: api.bettor.webhop.biz
Accept: text/jsonl
Content-Type: text/jsonl
Content-Length: length
{"id":"String","name":"String","title":"String","product":{"id":"String","value":"String","category":"String","productProvider":{"id":"String","val":"String"}},"currency":{"id":"String","val":"String"},"bettingPolicies":{"payinConstraints":[{"type":0,"min":{"amount":0,"currency":"String"},"default":{"amount":0,"currency":"String"},"warningThreshold":{"amount":0,"currency":"String"},"max":{"amount":0,"currency":"String"}}],"payinTaxationPolicyId":"String","winningsCaps":[{"type":0,"cap":{"amount":0,"currency":"String"}}],"winningsTaxationPolicyId":"String"},"apiUrl":"String","backOfficeUrl":"String","instanceUrl":"String","feedPlayerUrl":"String"}
HTTP/1.1 200 OK
Content-Type: text/jsonl
Content-Length: length
{"errorCode":"String","message":"String","stackTrace":"String","errors":[{"errorCode":"String","fieldName":"String","message":"String","meta":{"String":"String"}}],"meta":{"String":"String"}}