/**
* @swagger {components.schemas} ResponseSettings {
"description": "Definition of settings.",
"type": "object"
}
*/
/** Definition of settings. */
export interface ShapeDiverResponseSettings {
/**
* @swagger {components.schemas.ResponseSettings.properties} auth {
"$ref": "#/components/schemas/ResponseSettingsAuth"
}
*/
/** */
auth?: ShapeDiverResponseSettingsAuth;
/**
* @swagger {components.schemas.ResponseSettings.properties} compute {
"$ref": "#/components/schemas/ResponseSettingsCompute"
}
*/
/** */
compute?: ShapeDiverResponseSettingsCompute;
/**
* @swagger {components.schemas.ResponseSettings.properties} model {
"$ref": "#/components/schemas/ResponseSettingsModel"
}
*/
/** */
model?: ShapeDiverResponseSettingsModel;
}
/**
* @swagger {components.schemas} ResponseSettingsAuth {
"type": "object"
}
*/
/** Authentication settings of a model. */
export interface ShapeDiverResponseSettingsAuth {
/**
* @swagger {components.schemas.ResponseSettingsAuth.properties} ticket {
"$ref": "#/components/schemas/ResponseSettingsAuthTicket"
}
*/
/** Ticket settings. */
ticket?: ShapeDiverResponseSettingsAuthTicket;
/**
* @swagger {components.schemas.ResponseSettingsAuth.properties} token {
"$ref": "#/components/schemas/ResponseSettingsAuthToken"
}
*/
/** Token settings. */
token?: ShapeDiverResponseSettingsAuthToken;
}
/**
* @swagger {components.schemas} ResponseSettingsAuthTicket {
"type": "object"
}
*/
/** Ticket authentication settings of a model. */
export interface ShapeDiverResponseSettingsAuthTicket {
/**
* @swagger {components.schemas.ResponseSettingsAuthTicket.properties} accessdomains {
"description": "List of domains (origins) this model is limited to (is ignored in case model.pub is true).",
"type": "array",
"items": { "type": "string" }
}
* @swagger {components.schemas.ResponseSettingsAuthTicket} required [ "accessdomains" ]
*/
/** List of domains (origins) this model is limited to (is ignored in case model.pub is true). */
accessdomains: string[];
/**
* @swagger {components.schemas.ResponseSettingsAuthTicket.properties} backendaccess {
"description": "Should backend access to the model be allowed.",
"type": "boolean"
}
* @swagger {components.schemas.ResponseSettingsAuthTicket} required [ "backendaccess" ]
*/
/** Should backend access to the model be allowed. */
backendaccess: boolean;
/**
* @swagger {components.schemas.ResponseSettingsAuthTicket.properties} pub {
"description": "If this model allows public access (ignore model.accessdomains)?",
"type": "boolean"
}
* @swagger {components.schemas.ResponseSettingsAuthTicket} required [ "pub" ]
*/
/** If this model allows public access (ignore model.accessdomains)? */
pub: boolean;
}
/**
* @swagger {components.schemas} ResponseSettingsAuthToken {
"type": "object"
}
*/
/** Token authentication settings of a model. */
export interface ShapeDiverResponseSettingsAuthToken {
/**
* @swagger {components.schemas.ResponseSettingsAuthToken.properties} auth_groups {
"description": "List of allowed auth-groups.",
"type": "array",
"items": { "type": "string" }
}
*/
/** List of allowed auth-groups. */
auth_groups?: string[];
/**
* @swagger {components.schemas.ResponseSettingsAuthToken.properties} require_iframe {
"description": "Enforces iframe embedding instead of direct embedding.",
"type": "boolean"
}
*/
/** Enforces iframe embedding instead of direct embedding. */
require_iframe?: boolean;
/**
* @swagger {components.schemas.ResponseSettingsAuthToken.properties} require_token {
"description": "Enforces token-based authentication for this model.",
"type": "boolean"
}
*/
/** Enforces token-based authentication for this model. */
require_token?: boolean;
}
/**
* @swagger {components.schemas} ResponseSettingsCompute {
"type": "object"
}
*/
/** Computation settings of a model. */
export interface ShapeDiverResponseSettingsCompute {
/**
* @swagger {components.schemas.ResponseSettingsCompute.properties} deny_scripts {
"description": "Allows to control whether the model's Grasshopper file can contain scripts.",
"type": "boolean"
}
* @swagger {components.schemas.ResponseSettingsCompute} required [ "deny_scripts" ]
*/
/** Allows to control whether the model's Grasshopper file can contain scripts. */
deny_scripts: boolean;
/**
* @swagger {components.schemas.ResponseSettingsCompute.properties} ftype {
"description": "File type of the model.",
"type": "string"
}
* @swagger {components.schemas.ResponseSettingsCompute} required [ "ftype" ]
*/
/** File type of the model. */
ftype: string;
/**
* @swagger {components.schemas.ResponseSettingsCompute.properties} initial_warmup {
"description": "Allows to control whether the model should be warmed up immediately after loading by running a computation. This increases the likelihood of following computation requests to be faster.",
"type": "boolean"
}
* @swagger {components.schemas.ResponseSettingsCompute} required [ "initial_warmup" ]
*/
/** Allows to control whether the model should be warmed up immediately after loading by running a computation. This increases the likelihood of following computation requests to be faster. */
initial_warmup: boolean;
/**
* @swagger {components.schemas.ResponseSettingsCompute.properties} max_comp_time {
"description": "Maximum number of milliseconds allowed for computations of this model.",
"type": "number"
}
* @swagger {components.schemas.ResponseSettingsCompute} required [ "max_comp_time" ]
*/
/** Maximum number of milliseconds allowed for computations of this model. */
max_comp_time: number;
/**
* @swagger {components.schemas.ResponseSettingsCompute.properties} max_export_size {
"description": "Maximum number of bytes allowed to be exported from a model for a specific set of parameter values.",
"type": "number"
}
* @swagger {components.schemas.ResponseSettingsCompute} required [ "max_export_size" ]
*/
/** Maximum number of bytes allowed to be exported from a model for a specific set of parameter values. */
max_export_size: number;
/**
* @swagger {components.schemas.ResponseSettingsCompute.properties} max_idle_minutes {
"description": "Maximum amount of minutes a loaded model may be unused before it gets unloaded.
Note: Models may get unloaded earlier than that.",
"type": "number"
}
* @swagger {components.schemas.ResponseSettingsCompute} required [ "max_idle_minutes" ]
*/
/** Maximum amount of minutes a loaded model may be unused before it gets unloaded.
Note: Models may get unloaded earlier than that. */
max_idle_minutes: number;
/**
* @swagger {components.schemas.ResponseSettingsCompute.properties} max_model_size {
"description": "Maximum number of bytes allowed for the model's Grasshopper file size.",
"type": "number"
}
*/
/** Maximum number of bytes allowed for the model's Grasshopper file size. */
max_model_size?: number;
/**
* @swagger {components.schemas.ResponseSettingsCompute.properties} max_output_size {
"description": "Maximum number of bytes allowed for an output of a model for a specific set of parameter values.",
"type": "number"
}
* @swagger {components.schemas.ResponseSettingsCompute} required [ "max_output_size" ]
*/
/** Maximum number of bytes allowed for an output of a model for a specific set of parameter values. */
max_output_size: number;
/**
* @swagger {components.schemas.ResponseSettingsCompute.properties} max_texture_size {
"description": "Maximum number of bytes allowed for a single texture.",
"type": "number"
}
*/
/** Maximum number of bytes allowed for a single texture. */
max_texture_size: number;
/**
* @swagger {components.schemas.ResponseSettingsCompute.properties} max_wait_time {
"description": "Maximum time a computation request may stay waiting before a further worker goes ahead regardless of whether it already has the model loaded, and regardless of num_loaded_max. This allows to configure a soft or a hard upper boundary for the number of loaded models.",
"type": "number"
}
* @swagger {components.schemas.ResponseSettingsCompute} required [ "max_wait_time" ]
*/
/** Maximum time a computation request may stay waiting before a further worker goes ahead regardless of whether it already has the model loaded, and regardless of num_loaded_max. This allows to configure a soft or a hard upper boundary for the number of loaded models. */
max_wait_time: number;
/**
* @swagger {components.schemas.ResponseSettingsCompute.properties} num_loaded_max {
"description": "Maximum number of workers that should have the model loaded at the same time.",
"type": "number"
}
* @swagger {components.schemas.ResponseSettingsCompute} required [ "num_loaded_max" ]
*/
/** Maximum number of workers that should have the model loaded at the same time. */
num_loaded_max: number;
/**
* @swagger {components.schemas.ResponseSettingsCompute.properties} num_loaded_min {
"description": "Minimum number of workers that should load the model and keep it open while there is session activity.",
"type": "number"
}
* @swagger {components.schemas.ResponseSettingsCompute} required [ "num_loaded_min" ]
*/
/** Minimum number of workers that should load the model and keep it open while there is session activity. */
num_loaded_min: number;
/**
* @swagger {components.schemas.ResponseSettingsCompute.properties} num_preloaded_min {
"description": "Minimum number of workers that should always have the model loaded, regardless of session activity. This allows to minimise the likelihood of computation requests being slower due to model loading.",
"type": "number"
}
* @swagger {components.schemas.ResponseSettingsCompute} required [ "num_preloaded_min" ]
*/
/** Minimum number of workers that should always have the model loaded, regardless of session activity. This allows to minimise the likelihood of computation requests being slower due to model loading. */
num_preloaded_min: number;
/**
* @swagger {components.schemas.ResponseSettingsCompute.properties} session_rate_limit {
"description": "Limits the number of sessions that can be created by a specific IP address in one hour.",
"type": "number"
}
*/
/** Limits the number of sessions that can be created by a specific IP address in one hour. */
session_rate_limit?: number;
/**
* @swagger {components.schemas.ResponseSettingsCompute.properties} trust {
"description": "Controls whether failed computations will be retried.",
"type": "string",
"pattern": "^(none|full)?$"
}
* @swagger {components.schemas.ResponseSettingsCompute} required [ "trust" ]
*/
/** Controls whether failed computations will be retried. */
trust: string;
}
/**
* @swagger {components.schemas} ResponseSettingsModel {
"type": "object"
}
*/
/** */
export interface ShapeDiverResponseSettingsModel {
/**
* @swagger {components.schemas.ResponseSettingsModel.properties} use_cdn {
"description": "Allows the usage of the CDN for fast content distribution.",
"type": "boolean"
}
*/
/** Allows the usage of the CDN for fast content distribution. */
use_cdn?: boolean;
/**
* @swagger {components.schemas.ResponseSettingsModel.properties} cdn_supported {
"description": "Indicates if the model supports CDN-based asset URLs.",
"type": "boolean"
}
*/
/** Indicates if the model supports CDN-based asset URLs. */
cdn_supported?: boolean;
}