import java.math.*;
import java.util.*;
import java.io.InputStream;
import net.servicestack.client.*;
public class dtos
{
public static class CreateApiProvider implements ICreateDb<ApiProvider>
{
@Validate(Validator="GreaterThan(0)")
public Integer apiTypeId = null;
public String apiBaseUrl = null;
@Validate(Validator="NotEmpty")
public String name = null;
public String apiKeyVar = null;
public String apiKey = null;
public String apiKeyHeader = null;
public String heartbeatUrl = null;
public HashMap<TaskType,String> taskPaths = null;
public Integer concurrency = null;
public Integer priority = null;
public Boolean enabled = null;
public ArrayList<ApiProviderModel> models = null;
public ArrayList<String> selectedModels = null;
public Integer getApiTypeId() { return apiTypeId; }
public CreateApiProvider setApiTypeId(Integer value) { this.apiTypeId = value; return this; }
public String getApiBaseUrl() { return apiBaseUrl; }
public CreateApiProvider setApiBaseUrl(String value) { this.apiBaseUrl = value; return this; }
public String getName() { return name; }
public CreateApiProvider setName(String value) { this.name = value; return this; }
public String getApiKeyVar() { return apiKeyVar; }
public CreateApiProvider setApiKeyVar(String value) { this.apiKeyVar = value; return this; }
public String getApiKey() { return apiKey; }
public CreateApiProvider setApiKey(String value) { this.apiKey = value; return this; }
public String getApiKeyHeader() { return apiKeyHeader; }
public CreateApiProvider setApiKeyHeader(String value) { this.apiKeyHeader = value; return this; }
public String getHeartbeatUrl() { return heartbeatUrl; }
public CreateApiProvider setHeartbeatUrl(String value) { this.heartbeatUrl = value; return this; }
public HashMap<TaskType,String> getTaskPaths() { return taskPaths; }
public CreateApiProvider setTaskPaths(HashMap<TaskType,String> value) { this.taskPaths = value; return this; }
public Integer getConcurrency() { return concurrency; }
public CreateApiProvider setConcurrency(Integer value) { this.concurrency = value; return this; }
public Integer getPriority() { return priority; }
public CreateApiProvider setPriority(Integer value) { this.priority = value; return this; }
public Boolean isEnabled() { return enabled; }
public CreateApiProvider setEnabled(Boolean value) { this.enabled = value; return this; }
public ArrayList<ApiProviderModel> getModels() { return models; }
public CreateApiProvider setModels(ArrayList<ApiProviderModel> value) { this.models = value; return this; }
public ArrayList<String> getSelectedModels() { return selectedModels; }
public CreateApiProvider setSelectedModels(ArrayList<String> value) { this.selectedModels = value; return this; }
}
public static enum TaskType
{
OpenAiChat(1),
Comfy(2);
private final int value;
TaskType(final int intValue) { value = intValue; }
public int getValue() { return value; }
}
public static class ApiProviderModel
{
public String model = null;
public String apiModel = null;
public String getModel() { return model; }
public ApiProviderModel setModel(String value) { this.model = value; return this; }
public String getApiModel() { return apiModel; }
public ApiProviderModel setApiModel(String value) { this.apiModel = value; return this; }
}
@DataContract
public static class IdResponse
{
@DataMember(Order=1)
public String id = null;
@DataMember(Order=2)
public ResponseStatus responseStatus = null;
public String getId() { return id; }
public IdResponse setId(String value) { this.id = value; return this; }
public ResponseStatus getResponseStatus() { return responseStatus; }
public IdResponse setResponseStatus(ResponseStatus value) { this.responseStatus = value; return this; }
}
}
To override the Content-type in your clients, use the HTTP Accept Header, append the .xml suffix or ?format=xml
The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.
POST /xml/reply/CreateApiProvider HTTP/1.1
Host: blazordiffusion.com
Accept: application/xml
Content-Type: application/xml
Content-Length: length
<CreateApiProvider xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/AiServer.ServiceModel">
<ApiBaseUrl>String</ApiBaseUrl>
<ApiKey>String</ApiKey>
<ApiKeyHeader>String</ApiKeyHeader>
<ApiKeyVar>String</ApiKeyVar>
<ApiTypeId>0</ApiTypeId>
<Concurrency>0</Concurrency>
<Enabled>false</Enabled>
<HeartbeatUrl>String</HeartbeatUrl>
<Models>
<ApiProviderModel>
<ApiModel>String</ApiModel>
<Model>String</Model>
</ApiProviderModel>
</Models>
<Name>String</Name>
<Priority>0</Priority>
<SelectedModels xmlns:d2p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
<d2p1:string>String</d2p1:string>
</SelectedModels>
<TaskPaths xmlns:d2p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
<d2p1:KeyValueOfTaskTypestringPIRW_SSGy>
<d2p1:Key>OpenAiChat</d2p1:Key>
<d2p1:Value>String</d2p1:Value>
</d2p1:KeyValueOfTaskTypestringPIRW_SSGy>
</TaskPaths>
</CreateApiProvider>
HTTP/1.1 200 OK Content-Type: application/xml Content-Length: length <IdResponse xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.servicestack.net/types"> <Id>String</Id> <ResponseStatus> <ErrorCode>String</ErrorCode> <Message>String</Message> <StackTrace>String</StackTrace> <Errors> <ResponseError> <ErrorCode>String</ErrorCode> <FieldName>String</FieldName> <Message>String</Message> <Meta xmlns:d5p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays"> <d5p1:KeyValueOfstringstring> <d5p1:Key>String</d5p1:Key> <d5p1:Value>String</d5p1:Value> </d5p1:KeyValueOfstringstring> </Meta> </ResponseError> </Errors> <Meta xmlns:d3p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays"> <d3p1:KeyValueOfstringstring> <d3p1:Key>String</d3p1:Key> <d3p1:Value>String</d3p1:Value> </d3p1:KeyValueOfstringstring> </Meta> </ResponseStatus> </IdResponse>