Requires any of the roles: | bookingsupplier-administrator-write, superadmin |
GET | /customfields/slots | Find all slots to store custom fields data in | Get all available slots that are avaialble to store data in |
---|
import 'package:servicestack/servicestack.dart';
class CustomFieldSlotsQueryResponse implements IConvertible
{
/**
* Table to which the field belongs
*/
// @ApiMember(Description="Table to which the field belongs")
String? Table;
/**
* Custom field id
*/
// @ApiMember(Description="Custom field id")
int? Id;
/**
* Custom field column name
*/
// @ApiMember(Description="Custom field column name")
String? Name;
/**
* The field datatype
*/
// @ApiMember(Description="The field datatype")
String? Datatype;
/**
* If the slot is free or occupied
*/
// @ApiMember(Description="If the slot is free or occupied")
bool? Occupied;
CustomFieldSlotsQueryResponse({this.Table,this.Id,this.Name,this.Datatype,this.Occupied});
CustomFieldSlotsQueryResponse.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
Table = json['Table'];
Id = json['Id'];
Name = json['Name'];
Datatype = json['Datatype'];
Occupied = json['Occupied'];
return this;
}
Map<String, dynamic> toJson() => {
'Table': Table,
'Id': Id,
'Name': Name,
'Datatype': Datatype,
'Occupied': Occupied
};
getTypeName() => "CustomFieldSlotsQueryResponse";
TypeContext? context = _ctx;
}
// @ApiResponse(Description="You were unauthorized to call this service", StatusCode=401)
// @ApiResponse(Description="You have too low privilegies to call this service", StatusCode=403)
// @ValidateRequest(Validator="IsAuthenticated")
class CustomFieldSlotsQuery implements ICompany, IConvertible
{
/**
* Company id to find custom fields for
*/
// @ApiMember(Description="Company id to find custom fields for", ParameterType="query")
String? CompanyId;
/**
* Table to which the field belongs
*/
// @ApiMember(Description="Table to which the field belongs", IsRequired=true)
String? Table;
/**
* If you want to receive only free slots (not occupied).
*/
// @ApiMember(Description="If you want to receive only free slots (not occupied).")
bool? FreeSlots;
CustomFieldSlotsQuery({this.CompanyId,this.Table,this.FreeSlots});
CustomFieldSlotsQuery.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
CompanyId = json['CompanyId'];
Table = json['Table'];
FreeSlots = json['FreeSlots'];
return this;
}
Map<String, dynamic> toJson() => {
'CompanyId': CompanyId,
'Table': Table,
'FreeSlots': FreeSlots
};
getTypeName() => "CustomFieldSlotsQuery";
TypeContext? context = _ctx;
}
TypeContext _ctx = TypeContext(library: 'api.bokamera.se', types: <String, TypeInfo> {
'CustomFieldSlotsQueryResponse': TypeInfo(TypeOf.Class, create:() => CustomFieldSlotsQueryResponse()),
'CustomFieldSlotsQuery': TypeInfo(TypeOf.Class, create:() => CustomFieldSlotsQuery()),
});
Dart CustomFieldSlotsQuery DTOs
To override the Content-type in your clients, use the HTTP Accept Header, append the .csv suffix or ?format=csv
The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.
GET /customfields/slots HTTP/1.1 Host: api.bokamera.se Accept: text/csv
HTTP/1.1 200 OK Content-Type: text/csv Content-Length: length {"Table":"String","Id":0,"Name":"String","Datatype":"String","Occupied":false}