object apiMultiScopeDepsResponse
{
  "type": "object",
  "title": "MultiScopeDepsResponse",
  "properties": {
    "status": {
      "$ref": "#/components/schemas/apistatusStatus"
    },
    "scopeDeps": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/apiScopeDeps"
      },
      "description": "scopes is a list of low-level scopes and their dependencies."
    },
    "endpointDeps": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/apiEndpointDeps"
      },
      "title": "endpoint_scopes is a listof all the publicly available endponts which can be\nused as scopes as well. A call to each of those endpoint depends on a subset\nof the above \"scopes\""
    }
  }
}
object apiMultiScopeResponse
{
  "type": "object",
  "title": "MultiScopeResponse",
  "properties": {
    "app": {
      "$ref": "#/components/schemas/apiApp"
    },
    "scopes": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "description": "This is a list of the scopes that your key has."
    },
    "status": {
      "$ref": "#/components/schemas/apistatusStatus"
    },
    "endpoints": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "description": "This is a list of endpoint permissions that your key has."
    },
    "userFeatureFlags": {
      "type": "string"
    }
  }
}
object apiMultiScopeRootResponse
{
  "type": "object",
  "title": "MultiScopeRootResponse",
  "properties": {
    "scopes": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "description": "This is a list of the scopes that your key has."
    },
    "status": {
      "$ref": "#/components/schemas/apistatusStatus"
    },
    "endpoints": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "description": "This is a list of endpoint permissions that your key has."
    },
    "userFeatureFlags": {
      "type": "string"
    }
  }
}
object apiMultiScopeUserResponse
{
  "type": "object",
  "title": "MultiScopeUserResponse",
  "properties": {
    "scopes": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "description": "This is a list of the scopes that your key has."
    },
    "status": {
      "$ref": "#/components/schemas/apistatusStatus"
    },
    "endpoints": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "description": "This is a list of endpoint permissions that your key has."
    },
    "userFeatureFlags": {
      "type": "string"
    }
  }
}
object apiMultiSearchResponse
{
  "type": "object",
  "title": "MultiSearchResponse",
  "properties": {
    "id": {
      "type": "string",
      "title": "A unique id which uniquely identifies a search"
    },
    "hits": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/apiHit"
      },
      "description": "The list of search result Hits."
    },
    "query": {
      "$ref": "#/components/schemas/apiQuery"
    },
    "status": {
      "$ref": "#/components/schemas/apistatusStatus"
    },
    "searches": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/apiSearch"
      },
      "description": "The original Searches provided in the request."
    },
    "hitCounts": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/apiHitCount"
      },
      "description": "The counts of hits for each search, in the same order as searches.\nOnly returned if the request set only_count."
    }
  }
}
object apiMultiStatValueAggregateResponse
{
  "type": "object",
  "title": "MultiStatValueAggregateResponse",
  "properties": {
    "status": {
      "$ref": "#/components/schemas/apistatusStatus"
    },
    "statValueAggregateResults": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/apiStatValueAggregateResult"
      },
      "description": "The aggregate results for each query passedin."
    }
  }
}
object apiMultiStatValueResponse
{
  "type": "object",
  "title": "MultiStatValueResponse",
  "properties": {
    "status": {
      "$ref": "#/components/schemas/apistatusStatus"
    },
    "statValues": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/apiStatValue"
      },
      "description": "The returned stats values."
    }
  }
}
object apiMultiStatusCodeResponse
{
  "type": "object",
  "title": "MultiStatusCodeResponse",
  "properties": {
    "status": {
      "$ref": "#/components/schemas/apistatusStatus"
    },
    "statuses": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/apistatusStatus"
      }
    }
  }
}
object apiMultiTaskAssignmentResponse
{
  "type": "object",
  "properties": {
    "status": {
      "$ref": "#/components/schemas/apistatusStatus"
    },
    "taskAssignments": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/apiTaskAssignment"
      }
    }
  }
}
object apiMultiTaskResponse
{
  "type": "object",
  "properties": {
    "tasks": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/apiTask"
      }
    },
    "status": {
      "$ref": "#/components/schemas/apistatusStatus"
    }
  },
  "description": "Response with multiple Tasks."
}
object apiMultiTrainingTimeEstimateResponse
{
  "type": "object",
  "title": "Estimated training time in seconds",
  "properties": {
    "status": {
      "$ref": "#/components/schemas/apistatusStatus"
    },
    "trainingTimeEstimates": {
      "type": "array",
      "items": {
        "type": "string"
      }
    }
  }
}
object apiMultiTrendingMetricsViewResponse
{
  "type": "object",
  "title": "MultiTrendingMetricsViewResponse",
  "properties": {
    "status": {
      "$ref": "#/components/schemas/apistatusStatus"
    },
    "metrics": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/apiTrendingMetric"
      }
    }
  }
}
object apiMultiUploadResponse
{
  "type": "object",
  "properties": {
    "status": {
      "$ref": "#/components/schemas/apistatusStatus"
    },
    "uploads": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/apiUpload"
      }
    }
  }
}
object apiMultiWorkerResponse
{
  "type": "object",
  "title": "MultiWorkerResponse",
  "properties": {
    "status": {
      "$ref": "#/components/schemas/apistatusStatus"
    },
    "workers": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/apiWorker"
      }
    }
  }
}
object apiMultiWorkflowResponse
{
  "type": "object",
  "title": "MultiWorkflowResponse",
  "properties": {
    "status": {
      "$ref": "#/components/schemas/apistatusStatus"
    },
    "workflows": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/apiWorkflow"
      }
    }
  }
}
object apiMultiWorkflowVersionResponse
{
  "type": "object",
  "title": "MultiWorkflowVersionResponse",
  "properties": {
    "status": {
      "$ref": "#/components/schemas/apistatusStatus"
    },
    "workflowVersions": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/apiWorkflowVersion"
      }
    }
  }
}
object apiNodeInput
{
  "type": "object",
  "properties": {
    "nodeId": {
      "type": "string",
      "description": "The id to a connected WorkflowNode which will be used as an input for current WorkflowNode."
    }
  },
  "description": "NodeInput represents inputs to a node of the graph."
}
object apiNodepool
{
  "type": "object",
  "properties": {
    "id": {
      "type": "string",
      "description": "The user defined ID of the nodepool."
    },
    "userId": {
      "type": "string",
      "description": "The user/org that this nodepool belongs to."
    },
    "cloudRegion": {
      "$ref": "#/components/schemas/apiCloudRegion"
    },
    "maxInstances": {
      "type": "integer",
      "format": "int64",
      "description": "An upper limit on the number of instances in this nodepool. This allows the nodepool to scale\nup to this amount."
    },
    "minInstances": {
      "type": "integer",
      "format": "int64",
      "description": "Minimum number of instances in this nodepool. This allows the nodeool to scale down to this\namount. A nodepool needs a minimum of 1 instance."
    },
    "capacityTypes": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/NodepoolCapacityType"
      }
    },
    "instanceTypes": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "description": "////////////////////////////////////\nThe instance types that will be available in this pool of nodes.\nClarifai offers multiple different choices that combine cpu cores, memory and accelerator.\n\n////////////////////////////////////"
    }
  },
  "description": "A nodepool is a set of nodes dedicated for a given user's compute needs.\nThis compute will typically be consumed by runners and in the future other objects\nlike UI modules may be assigned to node pools."
}
object apiOperation
{
  "type": "object",
  "properties": {
    "deleteGeo": {
      "$ref": "#/components/schemas/apiDeleteGeo"
    },
    "addConcepts": {
      "$ref": "#/components/schemas/apiAddConcepts"
    },
    "addMetadata": {
      "$ref": "#/components/schemas/apiAddMetadata"
    },
    "addToDataset": {
      "$ref": "#/components/schemas/apiAddToDataset"
    },
    "overwriteGeo": {
      "$ref": "#/components/schemas/apiOverwriteGeo"
    },
    "deleteConcepts": {
      "$ref": "#/components/schemas/apiDeleteConcepts"
    },
    "deleteMetadata": {
      "$ref": "#/components/schemas/apiDeleteMetadata"
    },
    "deleteFromDataset": {
      "$ref": "#/components/schemas/apiDeleteFromDataset"
    },
    "splitIntoDatasets": {
      "$ref": "#/components/schemas/apiSplitIntoDatasets"
    }
  }
}
object apiOutput
{
  "type": "object",
  "title": "Output",
  "properties": {
    "id": {
      "type": "string",
      "title": "One of these outputs per Input"
    },
    "data": {
      "$ref": "#/components/schemas/apiData"
    },
    "input": {
      "$ref": "#/components/schemas/apiInput"
    },
    "model": {
      "$ref": "#/components/schemas/apiModel"
    },
    "status": {
      "$ref": "#/components/schemas/apistatusStatus"
    },
    "createdAt": {
      "type": "string",
      "title": "When the object was created. We follow the XXXX timestamp\nformat. We use https://www.ietf.org/rfc/rfc3339.txt format:\n\"2006-01-02T15:04:05.999999Z\" so you can expect results like\nthe following from the API:\n\"2017-04-11T21:50:50.223962Z\"",
      "format": "date-time"
    }
  }
}
object apiOutputConfig
{
  "type": "object",
  "properties": {
    "language": {
      "type": "string",
      "description": "For concept model predictions: Overrides the default_language for the app in a predict call."
    },
    "minValue": {
      "type": "number",
      "format": "float",
      "description": "For concept model predictions: Minimum value of concept's probability score in result.\nDefaults to 0.0 which means we won't do any thresholding as all probabilities will\nlikely be > 0.0."
    },
    "sampleMs": {
      "type": "integer",
      "title": "For model predictions on video: Sample delay for video predicting (1 frame per N milliseconds)",
      "format": "int64"
    },
    "hyperParams": {
      "type": "object",
      "title": "For custom model training: Hyperparameters for custom training"
    },
    "maxConcepts": {
      "type": "integer",
      "format": "int64",
      "description": "For concept model predictions:  Maximum number of concepts in result. Defaults to 0 which under\nthe hood will return default of 20. We do a server side default in order to control this\nfeature in the future."
    },
    "modelMetadata": {
      "type": "object",
      "description": "For custom model training: This is any additional metadata as a JSON object that we want\nwant to persist in the model's output config. This is a useful quick way to set fields for\nintroducing fields for new model types so we don't have to add a new proto field and DB field\neach time. Please refer to the documentation or model implementation internally for more\ndetails on what fields are supported for which models.\nTODO(zeiler): remove this field after Portal is updated."
    },
    "selectConcepts": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/apiConcept"
      },
      "title": "For concept model predictions: Select concepts in result by name or by id"
    },
    "existingModelId": {
      "type": "string",
      "description": "DEPRECATED: For custom models, this is the base model to use for image embeddings.\nDefault is general model."
    },
    "hyperParameters": {
      "type": "string",
      "description": "DEPRECATED: Hyper-parameters for custom training.\nUse new hyper_params field instead."
    },
    "trainingTimeout": {
      "type": "integer",
      "title": "For custom concept model training: Training timeout of the model (in seconds)",
      "format": "int64"
    },
    "embedModelVersionId": {
      "type": "string",
      "description": "For custom model training: this is the base model version to use for image embeddings.\nThis has to be one of the embed models in the app workflow.\n\nUse input_info.base_embed_model instead."
    },
    "conceptsMutuallyExclusive": {
      "type": "boolean",
      "description": "For custom concept model training: whether the concept predictions must sum to 1."
    },
    "failOnMissingPositiveExamples": {
      "type": "boolean",
      "title": "For custom model training: Use this flag to fail on missing positive examples\nBy default we fill in the missing with random examples"
    }
  },
  "description": "OutputConfig is a collection of parameters controlling either inference or training settings for\nthe given Model. This message will be deprecated over time in favor or infer_params and\ntrain_params in OutputInfo which are cleaner and more extensible for many ModelTypes."
}
object apiOutputInfo
{
  "type": "object",
  "properties": {
    "data": {
      "$ref": "#/components/schemas/apiData"
    },
    "params": {
      "type": "object",
      "description": "For predicting with the various ModelType's we accept a Struct (JSON object) worth of args\nthat the ModelTypeField defines. During inference, the settings contained within are sent\nto the model predictor to alter predictions from this Model."
    },
    "message": {
      "type": "string",
      "description": "For returning where to look for the Output info if not returning it."
    },
    "fieldsMap": {
      "type": "object",
      "description": "Map from the api.Data field names to the underlying model graph's outputs. When using a\nPretrainedModelConfig the values in this map need to match the Triton config.pbtxt output names."
    },
    "paramsSpecs": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/apiModelTypeField"
      }
    },
    "outputConfig": {
      "$ref": "#/components/schemas/apiOutputConfig"
    }
  },
  "description": "OutputInfo defines some of the settings for each model version that PatchModels can effect. These\nparameters control some of the training or inference operations that this model can do.\nAs the number of parameters continued to grow when we launched more ModelTypes we decided to move\nto using the OutputInfo.params field which is a Struct (or JSON object if you're using\nour JSON REST APIs). This allows each ModelType to define the set of fields, their default values\nand description of each field so that we can display those in Portal and make the creation of\nModel's very extensible. The OutputConfig object will eventually go away in favor of\ninfer_params struct."
}
object apiOverwriteGeo
{
  "type": "object",
  "properties": {
    "geo": {
      "$ref": "#/components/schemas/apiGeo"
    }
  }
}
object apiPagination
{
  "type": "object",
  "properties": {
    "page": {
      "type": "integer",
      "format": "int64",
      "description": "(optional URL parameter) The page number. Pagination is used to split the results into chunks. Defaults to 1."
    },
    "perPage": {
      "type": "integer",
      "format": "int64",
      "description": "(optional URL parameter) The number of results that will be contained in each page. Defaults to 128."
    }
  },
  "description": "Split the results into pages."
}
object apiPassword
{
  "type": "object",
  "title": "Password",
  "properties": {
    "plaintext": {
      "type": "string",
      "title": "unencrypted password string"
    }
  }
}
object apiPasswordViolations
{
  "type": "object",
  "title": "PasswordViolations",
  "properties": {
    "excludeEmail": {
      "type": "boolean",
      "title": "when first part of user's email (exact string or after removing special characters) is used in the new password"
    },
    "excludeNames": {
      "type": "boolean",
      "title": "when either user's first, middle or last name is used in the new password"
    },
    "maximumLength": {
      "type": "boolean",
      "title": "when new password length is longer than maximum length set"
    },
    "minimumLength": {
      "type": "boolean",
      "title": "when new password length is shorter than minimum length set"
    },
    "numericNeeded": {
      "type": "boolean",
      "title": "there is no numerics in the new password when there should be at least one"
    },
    "passwordReuse": {
      "type": "boolean",
      "title": "when one of the N most recent old password is reused, N is specified by password_reuse_epoch in db.password_policies"
    },
    "noCommonVocabs": {
      "type": "boolean",
      "title": "when there are common vocabs from the common vocab list used"
    },
    "lowerCaseNeeded": {
      "type": "boolean",
      "title": "there is no lower case letter in the new password when there should be at least one"
    },
    "upperCaseNeeded": {
      "type": "boolean",
      "title": "there is no upper case letter in the new password when there should be at least one"
    },
    "noOverlapWithOld": {
      "type": "boolean",
      "title": "when the current password is contained in the new password or vice versa"
    },
    "passwordLifespan": {
      "type": "boolean",
      "title": "when password has to be changed becauase it's too old"
    },
    "noSimplePasswords": {
      "type": "boolean",
      "title": "when there are simple password patterns used, such as 12345678 or aaaaaaa1"
    },
    "noConfusingLetters": {
      "type": "boolean",
      "title": "when there are confusing letters in the new password, such as o (first character of 'omega') vs 0 (zero)"
    },
    "nonAlphanumericNeeded": {
      "type": "boolean",
      "title": "there is no special character in the new password when there should be at least one"
    }
  }
}
object apiPatchAction
{
  "type": "object",
  "title": "PatchAction",
  "properties": {
    "op": {
      "type": "string",
      "title": "The operation to perform on the patched metadata given a path\nFor now only operations 'overwrite', 'delete, and 'merge' is supported"
    },
    "path": {
      "type": "string",
      "description": "Path for the change. For example 'tag[1].data' is a valid path in above example.\nDefault path is root level i.e. ''."
    },
    "mergeConflictResolution": {
      "type": "string",
      "title": "If the action is 'merge' and there is a conflict, how to resolve it.\nThe options are\n'overwrite_by_id', 'remove_by_id', 'merge_by_id','overwrite', 'append' and 'do_nothing'\nNote that for conflict resolutions '*_by_id' to work on a list, the list should contain\nobjects with an 'id' field which will be used to uniquely identify each field. For example\nPatching existing json\n{\n  \"tag\": [\n    {\n      \"id\": \"1\",\n      \"data\": 1\n    },\n    {\n      \"id\": \"2\",\n      \"data\": 2\n    }\n  ]\n}\nwith op 'merge' and merge_conflict_resolution 'overwrite_by_id'\n{\n  \"tag\": [\n    {\n      \"id\": \"2\",\n      \"data\": 3\n    }\n  ]\n}\nwould produce\n{\n  \"tag\": [\n    {\n      \"id\": \"1\",\n      \"data\": 1\n    },\n    {\n      \"id\": \"2\",\n      \"data\": 3\n    }\n  ]\n}\nwhile with merge_conflict_resolution 'remove_by_id' it would produce\n{\n  \"tag\": [\n    {\n      \"id\": \"1\",\n      \"data\": 1\n    }\n  ]\n}",
      "description": "Option 'append' will simply create a list on conflicts. For example in above example\nthe final result would be\n{\n  \"tag\": [\n    {\n      \"id\": \"1\",\n      \"data\": 1\n    },\n    {\n      \"id\": \"2\",\n      \"data\": [2, 3]\n    }\n  ]\n}"
    }
  }
}
object apiPatchAnnotationFiltersRequest
{
  "type": "object",
  "properties": {
    "action": {
      "type": "string",
      "title": "The action to perform on the patched objects\nFor now, only 'overwrite' action is supported"
    },
    "userAppId": {
      "$ref": "#/components/schemas/apiUserAppIDSet"
    },
    "annotationFilters": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/apiAnnotationFilter"
      },
      "description": "List of annotation filters that are requested to be updated."
    }
  },
  "description": "Request to patch several annotation filters."
}
object apiPatchAnnotationsRequest
{
  "type": "object",
  "title": "PatchAnnotationsRequest",
  "properties": {
    "action": {
      "type": "string",
      "title": "The action to perform on the patched objects\nFor now actions 'merge', 'overwrite', and 'remove' are supported"
    },
    "userAppId": {
      "$ref": "#/components/schemas/apiUserAppIDSet"
    },
    "annotations": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/clarifaiapiAnnotation"
      }
    },
    "deleteIfEmptyData": {
      "type": "boolean",
      "description": "If the request is a \"remove\" action and the annotation is left with empty data,\nthen setting delete_if_empty_data to true will delete the annotation,\nif possible (for example, will not delete an input-level annotation)."
    }
  }
}
object apiPatchAnnotationsSearchesRequest
{
  "type": "object",
  "properties": {
    "action": {
      "type": "string",
      "title": "The action to perform on the patched Search objects\nFor now only action 'overwrite' is supported"
    },
    "searches": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/apiSearch"
      },
      "title": "The searches to be patched"
    },
    "userAppId": {
      "$ref": "#/components/schemas/apiUserAppIDSet"
    }
  }
}
object apiPatchAnnotationsStatusResponse
{
  "type": "object",
  "title": "PatchAnnotationsStatusResponse",
  "properties": {
    "status": {
      "$ref": "#/components/schemas/apistatusStatus"
    },
    "userIds": {
      "type": "array",
      "items": {
        "type": "string"
      }
    },
    "updatedCount": {
      "type": "integer",
      "format": "int64"
    }
  }
}
object apiPatchCollectorsRequest
{
  "type": "object",
  "title": "PatchCollectorsRequest",
  "properties": {
    "action": {
      "type": "string",
      "title": "The action to perform on the patched objects\nOnly 'overwrite' is supported"
    },
    "userAppId": {
      "$ref": "#/components/schemas/apiUserAppIDSet"
    },
    "collectors": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/apiCollector"
      }
    }
  }
}
object apiPatchConceptsRequest
{
  "type": "object",
  "title": "PatchConceptsRequest",
  "properties": {
    "action": {
      "type": "string",
      "title": "The action to perform on the patched objects\nFor now ony action 'overwrite' is supported"
    },
    "concepts": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/apiConcept"
      },
      "description": "The concepts to patch."
    },
    "userAppId": {
      "$ref": "#/components/schemas/apiUserAppIDSet"
    }
  }
}
object apiPatchDatasetsRequest
{
  "type": "object",
  "properties": {
    "action": {
      "type": "string",
      "description": "The action to perform on the patched objects\nSupported values: 'overwrite', 'merge', and 'remove'.\n\nNote that 'remove' can only be used to remove the dataset image by setting\n'image.url' in the request to the current value returned for that dataset."
    },
    "datasets": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/apiDataset"
      },
      "description": "List of datasets that are requested to be updated."
    },
    "userAppId": {
      "$ref": "#/components/schemas/apiUserAppIDSet"
    }
  },
  "description": "Request to patch several datasets."
}
object apiPatchInputsRequest
{
  "type": "object",
  "title": "PatchInputsRequest",
  "properties": {
    "action": {
      "type": "string",
      "title": "The action to perform on the patched objects\nFor now actions 'merge', 'overwrite', and 'remove' are supported"
    },
    "inputs": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/apiInput"
      },
      "title": "List of inputs to patch.\nInputs are identified by id field.\nFor each input, the following fields are patchable:\n* data"
    },
    "userAppId": {
      "$ref": "#/components/schemas/apiUserAppIDSet"
    }
  }
}
object apiPatchInputsSearchesRequest
{
  "type": "object",
  "properties": {
    "action": {
      "type": "string",
      "title": "The action to perform on the patched Search objects\nFor now only action 'overwrite' is supported"
    },
    "searches": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/apiSearch"
      },
      "title": "The searches to be patched"
    },
    "userAppId": {
      "$ref": "#/components/schemas/apiUserAppIDSet"
    }
  }
}
object apiPatchLabelOrdersRequest
{
  "type": "object",
  "properties": {
    "action": {
      "type": "string",
      "title": "The action to perform on the patched objects\nFor now actions 'merge', 'overwrite', and 'remove' are supported"
    },
    "userAppId": {
      "$ref": "#/components/schemas/apiUserAppIDSet"
    },
    "labelOrders": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/apiLabelOrder"
      }
    }
  },
  "description": "Request to patch a list of label orders."
}
object apiPatchModelsRequest
{
  "type": "object",
  "title": "PatchModelsRequest",
  "properties": {
    "action": {
      "type": "string",
      "title": "The action to perform on the patched objects\nFor now actions 'merge', 'overwrite', and 'remove' are supported",
      "description": "Note that 'remove' can be used to remove the model image by setting\n'image.url' in the request to the current value returned for that model.\nThis cannot be used in a request that is patching other fields as well."
    },
    "models": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/apiModel"
      }
    },
    "userAppId": {
      "$ref": "#/components/schemas/apiUserAppIDSet"
    }
  }
}
object apiPatchSearchesRequest
{
  "type": "object",
  "title": "PatchSearchesRequest",
  "properties": {
    "action": {
      "type": "string",
      "title": "The action to perform on the patched Search objects\nFor now only action 'overwrite' is supported"
    },
    "searches": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/apiSearch"
      },
      "title": "The searches to be patched"
    },
    "userAppId": {
      "$ref": "#/components/schemas/apiUserAppIDSet"
    }
  }
}
object apiPatchTasksRequest
{
  "type": "object",
  "properties": {
    "tasks": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/apiTask"
      }
    },
    "action": {
      "type": "string",
      "title": "The action to perform on the patched objects\nFor now actions 'merge', 'overwrite', and 'remove' are supported"
    },
    "userAppId": {
      "$ref": "#/components/schemas/apiUserAppIDSet"
    }
  },
  "description": "Request to patch a list of tasks."
}
object apiPatchWorkflowsRequest
{
  "type": "object",
  "title": "PatchWorkflowsRequest",
  "properties": {
    "action": {
      "type": "string",
      "title": "The action to perform on the patched objects\nFor now actions 'merge', 'overwrite', and 'remove' are supported",
      "description": "Note that 'remove' can be used to remove the workflow image by setting\n'image.url' in the request to the current value returned for that workflow.\nThis cannot be used in a request that is patching other fields as well."
    },
    "userAppId": {
      "$ref": "#/components/schemas/apiUserAppIDSet"
    },
    "workflows": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/apiWorkflow"
      }
    }
  }
}
object apiPoint
{
  "type": "object",
  "title": "Point",
  "properties": {
    "z": {
      "type": "number",
      "format": "float",
      "description": "Depth if applicable for the point."
    },
    "col": {
      "type": "number",
      "format": "float",
      "description": "The column location of the point. This has a [0.0-1.0] range with 0.0 being left col and 1.0\nbeing the right col."
    },
    "row": {
      "type": "number",
      "format": "float",
      "description": "The row location of the point. This has a [0.0-1.0] range with 0.0 being top row and 1.0\nbeing the bottom row."
    },
    "visibility": {
      "$ref": "#/components/schemas/apiPointVisibility"
    }
  }
}
string apiPointVisibility
{
  "enum": [
    "NOT_SET",
    "VISIBLE",
    "NOT_VISIBLE",
    "NOT_PRESENT"
  ],
  "type": "string",
  "title": "Whether this point is visible or occluded",
  "default": "NOT_SET",
  "description": "- NOT_SET: Visibility of the point is not set\n - VISIBLE: Point is visible\n - NOT_VISIBLE: Point is occluded\n - NOT_PRESENT: Point is not in the image"
}
object apiPolygon
{
  "type": "object",
  "title": "Polygon",
  "properties": {
    "points": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/apiPoint"
      },
      "description": "A list of points connected together to form the polygon."
    }
  }
}
object apiPostAnnotationFiltersRequest
{
  "type": "object",
  "properties": {
    "userAppId": {
      "$ref": "#/components/schemas/apiUserAppIDSet"
    },
    "annotationFilters": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/apiAnnotationFilter"
      },
      "description": "List of annotation filters that are requested to be added."
    }
  },
  "description": "Request to add one or more annotation filters."
}
object apiPostAnnotationSearchMetricsRequest
{
  "type": "object",
  "title": "PostAnnotationSearchMetricsRequest",
  "properties": {
    "id": {
      "type": "string",
      "title": "A unique customer facing id to identify this eval request"
    },
    "data": {
      "$ref": "#/components/schemas/apiData"
    },
    "userAppId": {
      "$ref": "#/components/schemas/apiUserAppIDSet"
    },
    "groundTruth": {
      "$ref": "#/components/schemas/apiSearch"
    },
    "searchToEval": {
      "$ref": "#/components/schemas/apiSearch"
    },
    "evaluationType": {
      "$ref": "#/components/schemas/apiEvaluationType"
    }
  }
}
object apiPostAnnotationsRequest
{
  "type": "object",
  "title": "PostAnnotationsRequest",
  "properties": {
    "userAppId": {
      "$ref": "#/components/schemas/apiUserAppIDSet"
    },
    "annotations": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/clarifaiapiAnnotation"
      }
    }
  }
}
object apiPostAnnotationsSearchesRequest
{
  "type": "object",
  "title": "Execute a new annotation search and optionally save it\nannotation search over annotations using rank and filter proto",
  "properties": {
    "searches": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/apiSearch"
      },
      "title": "The searched to be executed or saved"
    },
    "userAppId": {
      "$ref": "#/components/schemas/apiUserAppIDSet"
    },
    "pagination": {
      "$ref": "#/components/schemas/apiPagination"
    }
  }
}
object apiPostBulkOperationsRequest
{
  "type": "object",
  "properties": {
    "userAppId": {
      "$ref": "#/components/schemas/apiUserAppIDSet"
    },
    "bulkOperations": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/apiBulkOperation"
      },
      "description": "List of bulk operation(s) to be performed e.g bulk update metadata or tags or labels etc."
    }
  },
  "description": "Request to perform bulk operations on a list of inputs based on input source."
}
object apiPostCollectorsRequest
{
  "type": "object",
  "properties": {
    "userAppId": {
      "$ref": "#/components/schemas/apiUserAppIDSet"
    },
    "collectors": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/apiCollector"
      }
    }
  },
  "description": "Request to create Collectors."
}
Load more schemas