ArthurAI Datasets API
The Datasets API from ArthurAI — 9 operation(s) for datasets.
The Datasets API from ArthurAI — 9 operation(s) for datasets.
openapi: 3.1.0
info:
title: Arthur GenAI Engine Agent Discovery Datasets API
version: 2.1.688
tags:
- name: Datasets
paths:
/api/v2/tasks/{task_id}/datasets:
post:
tags:
- Datasets
summary: Create Dataset
description: Register a new dataset.
operationId: create_dataset_api_v2_tasks__task_id__datasets_post
security:
- API Key: []
parameters:
- name: task_id
in: path
required: true
schema:
type: string
format: uuid
title: Task Id
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/NewDatasetRequest'
responses:
'200':
description: Successful Response
content:
application/json:
schema:
$ref: '#/components/schemas/DatasetResponse'
'422':
description: Validation Error
content:
application/json:
schema:
$ref: '#/components/schemas/HTTPValidationError'
/api/v2/datasets/{dataset_id}:
patch:
tags:
- Datasets
summary: Update Dataset
description: Update a dataset.
operationId: update_dataset_api_v2_datasets__dataset_id__patch
security:
- API Key: []
parameters:
- name: dataset_id
in: path
required: true
schema:
type: string
format: uuid
description: ID of the dataset to update.
title: Dataset Id
description: ID of the dataset to update.
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/DatasetUpdateRequest'
responses:
'200':
description: Successful Response
content:
application/json:
schema:
$ref: '#/components/schemas/DatasetResponse'
'422':
description: Validation Error
content:
application/json:
schema:
$ref: '#/components/schemas/HTTPValidationError'
delete:
tags:
- Datasets
summary: Delete Dataset
description: Delete a dataset.
operationId: delete_dataset_api_v2_datasets__dataset_id__delete
security:
- API Key: []
parameters:
- name: dataset_id
in: path
required: true
schema:
type: string
format: uuid
description: ID of the dataset to delete.
title: Dataset Id
description: ID of the dataset to delete.
responses:
'204':
description: Successful Response
'422':
description: Validation Error
content:
application/json:
schema:
$ref: '#/components/schemas/HTTPValidationError'
get:
tags:
- Datasets
summary: Get Dataset
description: Get a dataset.
operationId: get_dataset_api_v2_datasets__dataset_id__get
security:
- API Key: []
parameters:
- name: dataset_id
in: path
required: true
schema:
type: string
format: uuid
description: ID of the dataset to fetch.
title: Dataset Id
description: ID of the dataset to fetch.
responses:
'200':
description: Successful Response
content:
application/json:
schema:
$ref: '#/components/schemas/DatasetResponse'
'422':
description: Validation Error
content:
application/json:
schema:
$ref: '#/components/schemas/HTTPValidationError'
/api/v2/tasks/{task_id}/datasets/search:
get:
tags:
- Datasets
summary: Get Datasets
description: Search datasets. Optionally can filter by dataset IDs and dataset name.
operationId: get_datasets_api_v2_tasks__task_id__datasets_search_get
security:
- API Key: []
parameters:
- name: task_id
in: path
required: true
schema:
type: string
format: uuid
title: Task Id
- name: dataset_ids
in: query
required: false
schema:
anyOf:
- type: array
items:
type: string
format: uuid
- type: 'null'
description: List of dataset ids to query for.
title: Dataset Ids
description: List of dataset ids to query for.
- name: dataset_name
in: query
required: false
schema:
anyOf:
- type: string
- type: 'null'
description: Dataset name substring to search for.
title: Dataset Name
description: Dataset name substring to search for.
- name: sort
in: query
required: false
schema:
$ref: '#/components/schemas/PaginationSortMethod'
description: Sort the results (asc/desc)
default: desc
description: Sort the results (asc/desc)
- name: page_size
in: query
required: false
schema:
type: integer
description: Page size. Default is 10. Must be greater than 0 and less than 5000.
default: 10
title: Page Size
description: Page size. Default is 10. Must be greater than 0 and less than 5000.
- name: page
in: query
required: false
schema:
type: integer
description: Page number
default: 0
title: Page
description: Page number
responses:
'200':
description: Successful Response
content:
application/json:
schema:
$ref: '#/components/schemas/SearchDatasetsResponse'
'422':
description: Validation Error
content:
application/json:
schema:
$ref: '#/components/schemas/HTTPValidationError'
/api/v2/datasets/{dataset_id}/versions:
post:
tags:
- Datasets
summary: Create Dataset Version
description: Create a new dataset version.
operationId: create_dataset_version_api_v2_datasets__dataset_id__versions_post
security:
- API Key: []
parameters:
- name: dataset_id
in: path
required: true
schema:
type: string
format: uuid
description: ID of the dataset to create a new version for.
title: Dataset Id
description: ID of the dataset to create a new version for.
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/NewDatasetVersionRequest'
responses:
'200':
description: Successful Response
content:
application/json:
schema:
$ref: '#/components/schemas/DatasetVersionResponse'
'422':
description: Validation Error
content:
application/json:
schema:
$ref: '#/components/schemas/HTTPValidationError'
get:
tags:
- Datasets
summary: Get Dataset Versions
description: List dataset versions.
operationId: get_dataset_versions_api_v2_datasets__dataset_id__versions_get
security:
- API Key: []
parameters:
- name: dataset_id
in: path
required: true
schema:
type: string
format: uuid
description: ID of the dataset to fetch versions for.
title: Dataset Id
description: ID of the dataset to fetch versions for.
- name: latest_version_only
in: query
required: false
schema:
type: boolean
description: Whether to only include the latest version for the dataset in the response. Defaults to False.
default: false
title: Latest Version Only
description: Whether to only include the latest version for the dataset in the response. Defaults to False.
- name: sort
in: query
required: false
schema:
$ref: '#/components/schemas/PaginationSortMethod'
description: Sort the results (asc/desc)
default: desc
description: Sort the results (asc/desc)
- name: page_size
in: query
required: false
schema:
type: integer
description: Page size. Default is 10. Must be greater than 0 and less than 5000.
default: 10
title: Page Size
description: Page size. Default is 10. Must be greater than 0 and less than 5000.
- name: page
in: query
required: false
schema:
type: integer
description: Page number
default: 0
title: Page
description: Page number
responses:
'200':
description: Successful Response
content:
application/json:
schema:
$ref: '#/components/schemas/ListDatasetVersionsResponse'
'422':
description: Validation Error
content:
application/json:
schema:
$ref: '#/components/schemas/HTTPValidationError'
/api/v2/datasets/{dataset_id}/versions/{version_number}:
get:
tags:
- Datasets
summary: Get Dataset Version
description: Fetch a dataset version.
operationId: get_dataset_version_api_v2_datasets__dataset_id__versions__version_number__get
security:
- API Key: []
parameters:
- name: dataset_id
in: path
required: true
schema:
type: string
format: uuid
description: ID of the dataset to fetch the version for.
title: Dataset Id
description: ID of the dataset to fetch the version for.
- name: version_number
in: path
required: true
schema:
type: integer
description: Version number to fetch.
title: Version Number
description: Version number to fetch.
- name: search
in: query
required: false
schema:
anyOf:
- type: string
- type: 'null'
description: Search query to filter rows. Performs case-insensitive search across all column values.
title: Search
description: Search query to filter rows. Performs case-insensitive search across all column values.
- name: sort
in: query
required: false
schema:
$ref: '#/components/schemas/PaginationSortMethod'
description: Sort the results (asc/desc)
default: desc
description: Sort the results (asc/desc)
- name: page_size
in: query
required: false
schema:
type: integer
description: Page size. Default is 10. Must be greater than 0 and less than 5000.
default: 10
title: Page Size
description: Page size. Default is 10. Must be greater than 0 and less than 5000.
- name: page
in: query
required: false
schema:
type: integer
description: Page number
default: 0
title: Page
description: Page number
responses:
'200':
description: Successful Response
content:
application/json:
schema:
$ref: '#/components/schemas/DatasetVersionResponse'
'422':
description: Validation Error
content:
application/json:
schema:
$ref: '#/components/schemas/HTTPValidationError'
/api/v2/datasets/{dataset_id}/versions/{version_number}/rows/{row_id}:
get:
tags:
- Datasets
summary: Get Dataset Version Row
description: Fetch a specific row from a dataset version by row ID.
operationId: get_dataset_version_row_api_v2_datasets__dataset_id__versions__version_number__rows__row_id__get
security:
- API Key: []
parameters:
- name: dataset_id
in: path
required: true
schema:
type: string
format: uuid
description: ID of the dataset.
title: Dataset Id
description: ID of the dataset.
- name: version_number
in: path
required: true
schema:
type: integer
description: Version number of the dataset.
title: Version Number
description: Version number of the dataset.
- name: row_id
in: path
required: true
schema:
type: string
format: uuid
description: ID of the row to fetch.
title: Row Id
description: ID of the row to fetch.
responses:
'200':
description: Successful Response
content:
application/json:
schema:
$ref: '#/components/schemas/DatasetVersionRowResponse'
'422':
description: Validation Error
content:
application/json:
schema:
$ref: '#/components/schemas/HTTPValidationError'
/api/v2/datasets/synthetic-data/prompt-status:
get:
tags:
- Datasets
summary: Get the model configuration stored in the SDG system prompt.
operationId: get_synthetic_data_prompt_status_api_v2_datasets_synthetic_data_prompt_status_get
responses:
'200':
description: Successful Response
content:
application/json:
schema:
$ref: '#/components/schemas/SyntheticDataPromptStatus'
security:
- API Key: []
/api/v2/datasets/{dataset_id}/versions/{version_number}/generate-synthetic:
post:
tags:
- Datasets
summary: Generate Synthetic Data
description: Generate synthetic data rows based on existing dataset patterns.
operationId: generate_synthetic_data_api_v2_datasets__dataset_id__versions__version_number__generate_synthetic_post
security:
- API Key: []
parameters:
- name: dataset_id
in: path
required: true
schema:
type: string
format: uuid
description: ID of the dataset.
title: Dataset Id
description: ID of the dataset.
- name: version_number
in: path
required: true
schema:
type: integer
description: Version number of the dataset.
title: Version Number
description: Version number of the dataset.
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/SyntheticDataGenerationRequest'
responses:
'200':
description: Successful Response
content:
application/json:
schema:
$ref: '#/components/schemas/SyntheticDataGenerationResponse'
'422':
description: Validation Error
content:
application/json:
schema:
$ref: '#/components/schemas/HTTPValidationError'
/api/v2/datasets/{dataset_id}/versions/{version_number}/generate-synthetic/message:
post:
tags:
- Datasets
summary: Send Synthetic Data Message
description: Send a message to refine synthetic data generation.
operationId: send_synthetic_data_message_api_v2_datasets__dataset_id__versions__version_number__generate_synthetic_message_post
security:
- API Key: []
parameters:
- name: dataset_id
in: path
required: true
schema:
type: string
format: uuid
description: ID of the dataset.
title: Dataset Id
description: ID of the dataset.
- name: version_number
in: path
required: true
schema:
type: integer
description: Version number of the dataset.
title: Version Number
description: Version number of the dataset.
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/SyntheticDataConversationRequest'
responses:
'200':
description: Successful Response
content:
application/json:
schema:
$ref: '#/components/schemas/SyntheticDataGenerationResponse'
'422':
description: Validation Error
content:
application/json:
schema:
$ref: '#/components/schemas/HTTPValidationError'
components:
schemas:
ValidationError:
properties:
loc:
items:
anyOf:
- type: string
- type: integer
type: array
title: Location
msg:
type: string
title: Message
type:
type: string
title: Error Type
input:
title: Input
ctx:
type: object
title: Context
type: object
required:
- loc
- msg
- type
title: ValidationError
SearchDatasetsResponse:
properties:
count:
type: integer
title: Count
description: The total number of datasets matching the parameters.
datasets:
items:
$ref: '#/components/schemas/DatasetResponse'
type: array
title: Datasets
description: List of datasets matching the search filters. Length is less than or equal to page_size parameter
type: object
required:
- count
- datasets
title: SearchDatasetsResponse
ListDatasetVersionsResponse:
properties:
versions:
items:
$ref: '#/components/schemas/DatasetVersionMetadataResponse'
type: array
title: Versions
description: List of existing versions for the dataset.
page:
type: integer
title: Page
description: The current page number for the included rows.
page_size:
type: integer
title: Page Size
description: The number of rows per page.
total_pages:
type: integer
title: Total Pages
description: The total number of pages.
total_count:
type: integer
title: Total Count
description: The total number of rows in the dataset version.
type: object
required:
- versions
- page
- page_size
- total_pages
- total_count
title: ListDatasetVersionsResponse
DatasetVersionResponse:
properties:
version_number:
type: integer
title: Version Number
description: Version number of the dataset version.
created_at:
type: integer
title: Created At
description: Timestamp representing the time of dataset version creation in unix milliseconds.
dataset_id:
type: string
format: uuid
title: Dataset Id
description: ID of the dataset.
column_names:
items:
type: string
type: array
title: Column Names
description: Names of all columns in the dataset version.
rows:
items:
$ref: '#/components/schemas/DatasetVersionRowResponse'
type: array
title: Rows
description: list of rows in the dataset version.
page:
type: integer
title: Page
description: The current page number for the included rows.
page_size:
type: integer
title: Page Size
description: The number of rows per page.
total_pages:
type: integer
title: Total Pages
description: The total number of pages.
total_count:
type: integer
title: Total Count
description: The total number of rows in the dataset version.
type: object
required:
- version_number
- created_at
- dataset_id
- column_names
- rows
- page
- page_size
- total_pages
- total_count
title: DatasetVersionResponse
NewDatasetRequest:
properties:
name:
type: string
title: Name
description: Name of the dataset.
description:
anyOf:
- type: string
- type: 'null'
title: Description
description: Description of the dataset.
metadata:
anyOf:
- additionalProperties: true
type: object
- type: 'null'
title: Metadata
description: Any metadata to include that describes additional information about the dataset.
type: object
required:
- name
title: NewDatasetRequest
DatasetVersionRowColumnItemResponse:
properties:
column_name:
type: string
title: Column Name
description: Name of the column.
column_value:
type: string
title: Column Value
description: Value of the column.
type: object
required:
- column_name
- column_value
title: DatasetVersionRowColumnItemResponse
SyntheticDataConversationRequest:
properties:
message:
type: string
title: Message
description: User's message/instruction for refining the generated data.
current_rows:
items:
$ref: '#/components/schemas/NewDatasetVersionRowRequest'
type: array
title: Current Rows
description: Current state of generated rows (including any manual edits).
conversation_history:
items:
$ref: '#/components/schemas/OpenAIMessage-Input'
type: array
title: Conversation History
description: Previous conversation messages for context.
dataset_purpose:
type: string
title: Dataset Purpose
description: Original dataset purpose for context.
column_descriptions:
items:
$ref: '#/components/schemas/SyntheticDataColumnDescription'
type: array
title: Column Descriptions
description: Original column descriptions for context.
model_provider:
$ref: '#/components/schemas/ModelProvider'
description: Provider of the LLM model to use for generation.
model_name:
type: string
title: Model Name
description: Name of the LLM model to use for generation.
config:
anyOf:
- $ref: '#/components/schemas/LLMRequestConfigSettings'
- type: 'null'
description: Optional LLM configuration settings (temperature, max_tokens, etc.).
type: object
required:
- message
- current_rows
- conversation_history
- dataset_purpose
- column_descriptions
- model_provider
- model_name
title: SyntheticDataConversationRequest
description: Request for continuing a synthetic data generation conversation.
HTTPValidationError:
properties:
detail:
items:
$ref: '#/components/schemas/ValidationError'
type: array
title: Detail
type: object
title: HTTPValidationError
ToolCallFunction:
properties:
name:
type: string
title: Name
description: Name of the function to call
arguments:
type: string
title: Arguments
description: JSON string of function arguments
type: object
required:
- name
- arguments
title: ToolCallFunction
NewDatasetVersionRowRequest:
properties:
id:
anyOf:
- type: string
- type: 'null'
title: Id
description: Optional ID for the row (used for synthetic data generation).
data:
items:
$ref: '#/components/schemas/NewDatasetVersionRowColumnItemRequest'
type: array
title: Data
description: List of column-value pairs in the new dataset row.
type: object
required:
- data
title: NewDatasetVersionRowRequest
description: Represents a row to be added to a dataset version.
DatasetVersionRowResponse:
properties:
id:
type: string
format: uuid
title: Id
description: ID of the version field.
data:
items:
$ref: '#/components/schemas/DatasetVersionRowColumnItemResponse'
type: array
title: Data
description: List of column names and values in the row.
created_at:
type: integer
title: Created At
description: Timestamp representing the time of dataset row creation in unix milliseconds. May differ within a version if a row already existed in a past version of the dataset.
type: object
required:
- id
- data
- created_at
title: DatasetVersionRowResponse
NewDatasetVersionUpdateRowRequest:
properties:
id:
type: string
format: uuid
title: Id
description: UUID of row to be updated.
data:
items:
$ref: '#/components/schemas/NewDatasetVersionRowColumnItemRequest'
type: array
title: Data
description: List of column-value pairs in the updated row.
type: object
required:
- id
- data
title: NewDatasetVersionUpdateRowRequest
description: Represents a row to be updated in a dataset version.
DatasetResponse:
properties:
id:
type: string
format: uuid
title: Id
description: ID of the dataset.
task_id:
type: string
title: Task Id
description: ID of the task the dataset belongs to.
name:
type: string
title: Name
description: Name of the dataset.
description:
anyOf:
- type: string
- type: 'null'
title: Description
description: Description of the dataset.
metadata:
anyOf:
- additionalProperties: true
type: object
- type: 'null'
title: Metadata
description: Any metadata to include that describes additional information about the dataset.
created_at:
type: integer
title: Created At
description: Timestamp representing the time of dataset creation in unix milliseconds.
updated_at:
type: integer
title: Updated At
description: Timestamp representing the time of the last dataset update in unix milliseconds.
latest_version_number:
anyOf:
- type: integer
- type: 'null'
title: Latest Version Number
description: Version number representing the latest version of the dataset. If unset, no versions exist for the dataset yet.
type: object
required:
- id
- task_id
- name
- created_at
- updated_at
title: DatasetResponse
ModelProvider:
type: string
enum:
- anthropic
- openai
- gemini
- bedrock
- vertex_ai
- hosted_vllm
- azure
title: ModelProvider
ImageURL:
properties:
url:
type: string
title: Url
description: URL of the image
type: object
required:
- url
title: ImageURL
InputAudio:
properties:
data:
type: string
title: Data
description: Base64 encoded audio data
format:
type: string
title: Format
description: audio format (e.g. 'mp3', 'wav', 'flac', etc.)
type: object
required:
- data
- format
title: InputAudio
SyntheticDataRowResponse:
properties:
id:
type: string
title: Id
description: Temporary client-side ID for tracking this row during the session.
data:
items:
$ref: '#/components/schemas/DatasetVersionRowColumnItemResponse'
type: array
title: Data
description: List of column names and values in the generated row.
type: object
required:
- id
- data
title: SyntheticDataRowResponse
description: A single generated row with a temporary client-side ID for tracking.
ReasoningEffortEnum:
type: string
enum:
- none
- minimal
- low
- medium
- high
- default
title: ReasoningEffortEnum
OpenAIMessageItem:
properties:
type:
$ref: '#/components/schemas/OpenAIMessageType'
description: Type of the message (either 'text', 'image_url', or 'input_audio')
text:
anyOf:
- type: string
- type: 'null'
title: Text
description: Text content of the message if type is 'text'
image_url:
anyOf:
- $ref: '#/components/schemas/ImageURL'
- type: 'null'
description: Image URL content of the message if type is 'image_url'
input_audio:
anyOf:
- $ref: '#/components/schemas/InputAudio'
- type: 'null'
description: Input audio content of the message if type is 'input_audio'
type: object
required:
- type
title: OpenAIMessageItem
SyntheticDataPromptStatus:
properties:
model_provider:
anyOf:
- $ref: '#/components/schemas/ModelProvider'
- type: string
const: empty
title: Model Provider
description: Model provider stored in the SDG system prompt. The sentinel 'empty' indicates the prompt has not yet been configured.
model_name:
type: string
title: Model Name
description: Model name stored in the SDG system prompt
is_placeholder:
type: boolean
title: Is Placeholder
description: True when the prompt uses the empty placeholder model
type: object
required:
- model_provider
- model_name
- is_placeholder
title: SyntheticDataPromptStatus
LogitBiasItem:
properties:
token_id:
type: integer
title: Token Id
description: Token ID to bias
bias:
type: number
maximum: 100.0
minimum: -100.0
title: Bias
description: Bias value between -100 and 100
type: object
required:
- token_id
- bias
title: LogitBiasItem
OpenAIMessage-Input:
properties:
role:
$ref: '#/components/schemas/MessageRole'
description: Role of the message
name:
anyOf:
- type: string
- type: 'null'
title: Name
description: An optional name for the participant. Provides the model information to differentiate between participants of the same role.
content:
anyOf:
- type: string
- items:
$ref: '#/components/schemas/OpenAIMessageItem'
type: array
- type: 'null'
title: Content
description: Content of the message
tool_calls:
anyOf:
- items:
$ref: '#/components/schemas/ToolCall'
type: array
- type: 'null'
title: Tool Calls
description: Tool calls made by assistant
tool_call_id:
anyOf:
- type: string
- type: 'null'
title: Tool Call Id
description: ID of the tool call this message is responding to
type: object
required:
- role
title: OpenAIMessage
description: 'The message schema class for the prompts playground.
This class adheres to OpenAI''s message schema.'
DatasetUpdateRequest:
properties:
# --- truncated at 32 KB (44 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/arthurai/refs/heads/main/openapi/arthurai-datasets-api-openapi.yml