> For the complete documentation index, see [llms.txt](https://codeset.gitbook.io/codeset-documentation/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://codeset.gitbook.io/codeset-documentation/api-reference/models.md).

# Models

## The AgentJobCompletionRequest object

```json
{"openapi":"3.1.0","info":{"title":"Codeset API","version":"1.0.0"},"components":{"schemas":{"AgentJobCompletionRequest":{"properties":{"secret":{"type":"string","title":"Secret","description":"Must match the job's completion_secret."},"outcome":{"type":"string","enum":["completed","error"],"title":"Outcome"},"error_message":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Error Message","description":"When outcome is error, stored on the job."}},"type":"object","required":["secret","outcome"],"title":"AgentJobCompletionRequest"}}}}
```

## The AgentJobRequest object

```json
{"openapi":"3.1.0","info":{"title":"Codeset API","version":"1.0.0"},"components":{"schemas":{"AgentJobRequest":{"properties":{"repo":{"type":"string","title":"Repo","description":"Repository identifier as owner/repo."},"ref":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Ref","description":"Optional ref or branch."},"agent_id":{"type":"string","title":"Agent Id","description":"Agent type (e.g. cursor)."}},"type":"object","required":["repo","agent_id"],"title":"AgentJobRequest"}}}}
```

## The ApiKey object

```json
{"openapi":"3.1.0","info":{"title":"Codeset API","version":"1.0.0"},"components":{"schemas":{"ApiKey":{"properties":{"key_id":{"type":"string","title":"Key Id","description":"Unique identifier for the API key."},"key":{"type":"string","title":"Key","description":"The actual API key value."},"name":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Name","description":"Optional name for the API key."},"created_at":{"type":"string","format":"date-time","title":"Created At","description":"Timestamp when the API key was created (UTC)."},"expires_at":{"anyOf":[{"type":"string","format":"date-time"},{"type":"null"}],"title":"Expires At","description":"Timestamp when the API key expires (UTC). None means no expiration."},"is_active":{"type":"boolean","title":"Is Active","description":"Whether the API key is active.","default":true},"last_used_at":{"anyOf":[{"type":"string","format":"date-time"},{"type":"null"}],"title":"Last Used At","description":"Timestamp when the API key was last used (UTC)."}},"type":"object","required":["key_id","key","created_at"],"title":"ApiKey","description":"Represents an API key for a user."}}}}
```

## The ApiKeyCreateRequest object

```json
{"openapi":"3.1.0","info":{"title":"Codeset API","version":"1.0.0"},"components":{"schemas":{"ApiKeyCreateRequest":{"properties":{"name":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Name","description":"Optional name for the API key."}},"type":"object","title":"ApiKeyCreateRequest","description":"Request to create a new API key for a user."}}}}
```

## The ApiKeyCreateResponse object

```json
{"openapi":"3.1.0","info":{"title":"Codeset API","version":"1.0.0"},"components":{"schemas":{"ApiKeyCreateResponse":{"properties":{"api_key":{"$ref":"#/components/schemas/ApiKey","description":"The newly created API key object."}},"type":"object","required":["api_key"],"title":"ApiKeyCreateResponse","description":"Response for creating an API key."},"ApiKey":{"properties":{"key_id":{"type":"string","title":"Key Id","description":"Unique identifier for the API key."},"key":{"type":"string","title":"Key","description":"The actual API key value."},"name":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Name","description":"Optional name for the API key."},"created_at":{"type":"string","format":"date-time","title":"Created At","description":"Timestamp when the API key was created (UTC)."},"expires_at":{"anyOf":[{"type":"string","format":"date-time"},{"type":"null"}],"title":"Expires At","description":"Timestamp when the API key expires (UTC). None means no expiration."},"is_active":{"type":"boolean","title":"Is Active","description":"Whether the API key is active.","default":true},"last_used_at":{"anyOf":[{"type":"string","format":"date-time"},{"type":"null"}],"title":"Last Used At","description":"Timestamp when the API key was last used (UTC)."}},"type":"object","required":["key_id","key","created_at"],"title":"ApiKey","description":"Represents an API key for a user."}}}}
```

## The ApiKeyRevokeRequest object

```json
{"openapi":"3.1.0","info":{"title":"Codeset API","version":"1.0.0"},"components":{"schemas":{"ApiKeyRevokeRequest":{"properties":{"key_id":{"type":"string","title":"Key Id","description":"The ID of the API key to revoke."}},"type":"object","required":["key_id"],"title":"ApiKeyRevokeRequest","description":"Request to revoke an API key."}}}}
```

## The ApiKeyRevokeResponse object

```json
{"openapi":"3.1.0","info":{"title":"Codeset API","version":"1.0.0"},"components":{"schemas":{"ApiKeyRevokeResponse":{"properties":{"message":{"type":"string","title":"Message","description":"Success message."},"revoked_key_id":{"type":"string","title":"Revoked Key Id","description":"The ID of the revoked API key."}},"type":"object","required":["message","revoked_key_id"],"title":"ApiKeyRevokeResponse","description":"Response for revoking an API key."}}}}
```

## The ContainerInfo object

```json
{"openapi":"3.1.0","info":{"title":"Codeset API","version":"1.0.0"},"components":{"schemas":{"ContainerInfo":{"properties":{"container_name":{"type":"string","title":"Container Name","description":"Name of the Cloud Run service."},"service_url":{"type":"string","maxLength":2083,"minLength":1,"format":"uri","title":"Service Url","description":"URL of the Cloud Run service."},"sample_id":{"type":"string","title":"Sample Id","description":"Sample ID of the container."},"status":{"type":"string","title":"Status","description":"Status of the container."},"created_at":{"type":"string","format":"date-time","title":"Created At","description":"Timestamp when the container was created (UTC)."},"expires_at":{"type":"string","format":"date-time","title":"Expires At","description":"Timestamp when the container will expire (UTC)."},"location":{"type":"string","title":"Location","description":"Cloud Run region where the container is deployed (e.g., 'europe-west1')."}},"type":"object","required":["container_name","service_url","sample_id","status","created_at","expires_at","location"],"title":"ContainerInfo","description":"Information about a container."}}}}
```

## The Dataset object

```json
{"openapi":"3.1.0","info":{"title":"Codeset API","version":"1.0.0"},"components":{"schemas":{"Dataset":{"properties":{"name":{"type":"string","title":"Name","description":"Unique name of the dataset."},"description":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Description","description":"A brief description of the dataset."},"sample_count":{"type":"integer","title":"Sample Count","description":"Number of samples in the dataset."},"created_at":{"anyOf":[{"type":"string","format":"date-time"},{"type":"null"}],"title":"Created At","description":"Timestamp when the dataset was first created (UTC)."}},"type":"object","required":["name","sample_count"],"title":"Dataset","description":"Information about a dataset."}}}}
```

## The ErrorInfo object

```json
{"openapi":"3.1.0","info":{"title":"Codeset API","version":"1.0.0"},"components":{"schemas":{"ErrorInfo":{"properties":{"code":{"type":"string","title":"Code","description":"A unique error code for programmatic handling."},"message":{"type":"string","title":"Message","description":"A human-readable error message."}},"type":"object","required":["code","message"],"title":"ErrorInfo","description":"Details about an error that occurred during job processing."}}}}
```

## The ExecCommandInteraction object

```json
{"openapi":"3.1.0","info":{"title":"Codeset API","version":"1.0.0"},"components":{"schemas":{"ExecCommandInteraction":{"properties":{"interaction_id":{"type":"string","title":"Interaction Id","description":"Unique identifier for the interaction."},"session_id":{"type":"string","title":"Session Id","description":"Session identifier for this interaction."},"interaction_type":{"type":"string","const":"exec_command","title":"Interaction Type","default":"exec_command"},"created_at":{"type":"string","format":"date-time","title":"Created At","description":"Timestamp when the interaction was created (UTC)."},"exit_code":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Exit Code","description":"Exit code of the interaction."},"stdout":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Stdout","description":"Standard output from the interaction."},"stderr":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Stderr","description":"Standard error from the interaction."},"execution_time_seconds":{"anyOf":[{"type":"number"},{"type":"null"}],"title":"Execution Time Seconds","description":"Execution time in seconds."},"success":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Success","description":"Whether the interaction was successful."},"message":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Message","description":"Additional message about the interaction result."},"command":{"type":"string","title":"Command","description":"Command that was executed."},"command_timeout":{"type":"integer","title":"Command Timeout","description":"Timeout for command execution in seconds.","default":300}},"type":"object","required":["interaction_id","session_id","created_at","command"],"title":"ExecCommandInteraction","description":"Interaction for executing a command in the environment."}}}}
```

## The ExecRequest object

```json
{"openapi":"3.1.0","info":{"title":"Codeset API","version":"1.0.0"},"components":{"schemas":{"ExecRequest":{"properties":{"command":{"type":"string","title":"Command","description":"The bash command to execute."},"command_timeout":{"type":"integer","title":"Command Timeout","description":"Timeout for command execution in seconds (default: 300).","default":300}},"type":"object","required":["command"],"title":"ExecRequest","description":"Request to execute a bash command in a session."}}}}
```

## The ExecStartResponse object

```json
{"openapi":"3.1.0","info":{"title":"Codeset API","version":"1.0.0"},"components":{"schemas":{"ExecStartResponse":{"properties":{"interaction_id":{"type":"string","title":"Interaction Id","description":"Unique identifier for the interaction."},"status":{"type":"string","title":"Status","description":"Status of the interaction: 'pending', 'processing', 'completed', or 'failed'."}},"type":"object","required":["interaction_id","status"],"title":"ExecStartResponse","description":"Response for starting command execution (async)."}}}}
```

## The FileUploadInteraction object

```json
{"openapi":"3.1.0","info":{"title":"Codeset API","version":"1.0.0"},"components":{"schemas":{"FileUploadInteraction":{"properties":{"interaction_id":{"type":"string","title":"Interaction Id","description":"Unique identifier for the interaction."},"session_id":{"type":"string","title":"Session Id","description":"Session identifier for this interaction."},"interaction_type":{"type":"string","const":"file_upload","title":"Interaction Type","default":"file_upload"},"created_at":{"type":"string","format":"date-time","title":"Created At","description":"Timestamp when the interaction was created (UTC)."},"exit_code":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Exit Code","description":"Exit code of the interaction."},"stdout":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Stdout","description":"Standard output from the interaction."},"stderr":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Stderr","description":"Standard error from the interaction."},"execution_time_seconds":{"anyOf":[{"type":"number"},{"type":"null"}],"title":"Execution Time Seconds","description":"Execution time in seconds."},"success":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Success","description":"Whether the interaction was successful."},"message":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Message","description":"Additional message about the interaction result."},"file_path":{"type":"string","title":"File Path","description":"Destination path for the uploaded file."},"size_bytes":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Size Bytes","description":"Size of the uploaded file in bytes."},"make_executable":{"type":"boolean","title":"Make Executable","description":"Whether the file was made executable.","default":false}},"type":"object","required":["interaction_id","session_id","created_at","file_path"],"title":"FileUploadInteraction","description":"Interaction for uploading a file to the environment."}}}}
```

## The FileUploadRequest object

```json
{"openapi":"3.1.0","info":{"title":"Codeset API","version":"1.0.0"},"components":{"schemas":{"FileUploadRequest":{"properties":{"file_path":{"type":"string","title":"File Path","description":"Destination path for the file inside the container."},"content_base64":{"type":"string","title":"Content Base64","description":"Base64-encoded file content."},"make_executable":{"type":"boolean","title":"Make Executable","description":"Whether to make the file executable (chmod +x).","default":false}},"type":"object","required":["file_path","content_base64"],"title":"FileUploadRequest","description":"Request to upload a file to the session environment."}}}}
```

## The FileUploadResponse object

```json
{"openapi":"3.1.0","info":{"title":"Codeset API","version":"1.0.0"},"components":{"schemas":{"FileUploadResponse":{"properties":{"success":{"type":"boolean","title":"Success","description":"Whether the file upload was successful."},"message":{"type":"string","title":"Message","description":"Details about the file upload operation."},"file_path":{"type":"string","title":"File Path","description":"Destination path where the file was written."},"size_bytes":{"type":"integer","title":"Size Bytes","description":"Size of the uploaded file in bytes."}},"type":"object","required":["success","message","file_path","size_bytes"],"title":"FileUploadResponse","description":"Response for file upload operation."}}}}
```

## The GitHubOAuthRequest object

```json
{"openapi":"3.1.0","info":{"title":"Codeset API","version":"1.0.0"},"components":{"schemas":{"GitHubOAuthRequest":{"properties":{"code":{"type":"string","title":"Code","description":"Authorization code from GitHub OAuth."},"state":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"State","description":"State parameter for CSRF protection."},"redirect_uri":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Redirect Uri","description":"Callback URL used in the authorize step; must match app settings."}},"type":"object","required":["code"],"title":"GitHubOAuthRequest","description":"Request for GitHub OAuth authentication."}}}}
```

## The GitHubOAuthResponse object

```json
{"openapi":"3.1.0","info":{"title":"Codeset API","version":"1.0.0"},"components":{"schemas":{"GitHubOAuthResponse":{"properties":{"user_id":{"type":"string","title":"User Id","description":"Unique identifier for the user."},"access_token":{"type":"string","title":"Access Token","description":"JWT access token for the user."},"refresh_token":{"type":"string","title":"Refresh Token","description":"JWT refresh token for the user."},"token_type":{"type":"string","title":"Token Type","description":"Token type.","default":"Bearer"},"expires_in":{"type":"integer","title":"Expires In","description":"Access token expiration time in seconds."},"is_new_user":{"type":"boolean","title":"Is New User","description":"Whether this is a new user or existing user."}},"type":"object","required":["user_id","access_token","refresh_token","expires_in","is_new_user"],"title":"GitHubOAuthResponse","description":"Response for GitHub OAuth authentication."}}}}
```

## The GitHubRepoItem object

```json
{"openapi":"3.1.0","info":{"title":"Codeset API","version":"1.0.0"},"components":{"schemas":{"GitHubRepoItem":{"properties":{"full_name":{"type":"string","title":"Full Name","description":"Repository full name (owner/repo)."},"private":{"type":"boolean","title":"Private","description":"Whether the repository is private."},"html_url":{"type":"string","title":"Html Url","description":"Repository URL."}},"type":"object","required":["full_name","private","html_url"],"title":"GitHubRepoItem"}}}}
```

## The GitHubReposResponse object

```json
{"openapi":"3.1.0","info":{"title":"Codeset API","version":"1.0.0"},"components":{"schemas":{"GitHubReposResponse":{"properties":{"repos":{"items":{"$ref":"#/components/schemas/GitHubRepoItem"},"type":"array","title":"Repos","description":"List of repositories."}},"type":"object","required":["repos"],"title":"GitHubReposResponse"},"GitHubRepoItem":{"properties":{"full_name":{"type":"string","title":"Full Name","description":"Repository full name (owner/repo)."},"private":{"type":"boolean","title":"Private","description":"Whether the repository is private."},"html_url":{"type":"string","title":"Html Url","description":"Repository URL."}},"type":"object","required":["full_name","private","html_url"],"title":"GitHubRepoItem"}}}}
```

## The HTTPValidationError object

```json
{"openapi":"3.1.0","info":{"title":"Codeset API","version":"1.0.0"},"components":{"schemas":{"HTTPValidationError":{"properties":{"detail":{"items":{"$ref":"#/components/schemas/ValidationError"},"type":"array","title":"Detail"}},"type":"object","title":"HTTPValidationError"},"ValidationError":{"properties":{"loc":{"items":{"anyOf":[{"type":"string"},{"type":"integer"}]},"type":"array","title":"Location"},"msg":{"type":"string","title":"Message"},"type":{"type":"string","title":"Error Type"}},"type":"object","required":["loc","msg","type"],"title":"ValidationError"}}}}
```

## The HealthCheckResponse object

```json
{"openapi":"3.1.0","info":{"title":"Codeset API","version":"1.0.0"},"components":{"schemas":{"HealthCheckResponse":{"properties":{"status":{"type":"string","title":"Status","description":"Health status of the service"},"service":{"type":"string","title":"Service","description":"Name of the service"},"version":{"type":"string","title":"Version","description":"Version of the service"},"timestamp":{"type":"string","title":"Timestamp","description":"Timestamp when the health check was performed (ISO format)"}},"type":"object","required":["status","service","version","timestamp"],"title":"HealthCheckResponse","description":"Response model for health check endpoint."}}}}
```

## The JobStatus object

```json
{"openapi":"3.1.0","info":{"title":"Codeset API","version":"1.0.0"},"components":{"schemas":{"JobStatus":{"type":"string","enum":["pending","starting","running","completed","error","cancelled"],"title":"JobStatus","description":"Status of a verification job."}}}}
```

## The MoneyDepositRequest object

```json
{"openapi":"3.1.0","info":{"title":"Codeset API","version":"1.0.0"},"components":{"schemas":{"MoneyDepositRequest":{"properties":{"amount_cents":{"type":"integer","minimum":100,"title":"Amount Cents","description":"Amount to deposit in cents"},"currency":{"type":"string","title":"Currency","description":"Currency for payment","default":"usd"}},"type":"object","required":["amount_cents"],"title":"MoneyDepositRequest","description":"Request to deposit money"}}}}
```

## The MoneyDepositResponse object

```json
{"openapi":"3.1.0","info":{"title":"Codeset API","version":"1.0.0"},"components":{"schemas":{"MoneyDepositResponse":{"properties":{"checkout_url":{"type":"string","title":"Checkout Url","description":"Stripe checkout URL for payment"},"amount_cents":{"type":"integer","title":"Amount Cents","description":"Amount being deposited in cents"},"currency":{"type":"string","title":"Currency","description":"Currency"}},"type":"object","required":["checkout_url","amount_cents","currency"],"title":"MoneyDepositResponse","description":"Response for money deposit"}}}}
```

## The Sample object

```json
{"openapi":"3.1.0","info":{"title":"Codeset API","version":"1.0.0"},"components":{"schemas":{"Sample":{"properties":{"sample_id":{"type":"string","title":"Sample Id","description":"Unique identifier for the sample (e.g., 'traccar-1')."},"description":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Description","description":"A brief description of the sample."},"language":{"type":"string","title":"Language","description":"Primary programming language of the sample."},"verifier":{"$ref":"#/components/schemas/VerificationTool","description":"The type of verifier used for this sample."},"dataset":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Dataset","description":"Dataset name for the sample."},"version":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Version","description":"Version number of the sample."},"version_description":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Version Description","description":"Description of this version."},"latest":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Latest","description":"Whether this is the latest version."},"created_at":{"anyOf":[{"type":"string","format":"date-time"},{"type":"null"}],"title":"Created At","description":"Timestamp when the sample was created (UTC)."},"instance_id":{"type":"string","title":"Instance Id","description":"Instance identifier for the sample (e.g., 'psf__requests-1234')."},"repo":{"type":"string","title":"Repo","description":"Repository full name for the sample (e.g., 'psf/requests')."},"base_commit":{"type":"string","title":"Base Commit","description":"Base commit hash for the sample."},"patch":{"type":"string","title":"Patch","description":"Code patch (diff) that fixes the bug for the sample."},"non_code_patch":{"type":"string","title":"Non Code Patch","description":"Non-code patch for the sample."},"test_patch":{"type":"string","title":"Test Patch","description":"Test patch (diff) for the sample."},"problem_statement":{"type":"string","title":"Problem Statement","description":"Problem statement for the sample (issue title + body)."},"hints_text":{"type":"string","title":"Hints Text","description":"Hints text for the sample (concatenated issue comments)."},"environment_setup_commit":{"type":"string","title":"Environment Setup Commit","description":"Environment setup commit hash for the sample."},"fail_to_pass":{"items":{"type":"string"},"type":"array","title":"Fail To Pass","description":"List of test names that changed from FAIL to PASS."},"pass_to_pass":{"items":{"type":"string"},"type":"array","title":"Pass To Pass","description":"List of test names that remained PASS to PASS."},"fail_to_fail":{"items":{"type":"string"},"type":"array","title":"Fail To Fail","description":"List of test names that remained FAIL to FAIL."}},"type":"object","required":["sample_id","language","verifier","instance_id","repo","base_commit","patch","non_code_patch","test_patch","problem_statement","hints_text","environment_setup_commit","fail_to_pass","pass_to_pass","fail_to_fail"],"title":"Sample","description":"Information about a software engineering task sample."},"VerificationTool":{"type":"string","enum":["test_suite","static_analysis","linter","custom"],"title":"VerificationTool","description":"Type of verification tool used."}}}}
```

## The SampleListResponse object

```json
{"openapi":"3.1.0","info":{"title":"Codeset API","version":"1.0.0"},"components":{"schemas":{"SampleListResponse":{"properties":{"samples":{"items":{"$ref":"#/components/schemas/Sample"},"type":"array","title":"Samples","description":"List of samples for the current page."},"total_count":{"type":"integer","title":"Total Count","description":"Total number of samples available."},"page":{"type":"integer","title":"Page","description":"Current page number (1-based)."},"page_size":{"type":"integer","title":"Page Size","description":"Number of samples per page."},"has_more":{"type":"boolean","title":"Has More","description":"Indicates if more pages of results are available."}},"type":"object","required":["samples","total_count","page","page_size","has_more"],"title":"SampleListResponse","description":"Response for listing samples with pagination."},"Sample":{"properties":{"sample_id":{"type":"string","title":"Sample Id","description":"Unique identifier for the sample (e.g., 'traccar-1')."},"description":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Description","description":"A brief description of the sample."},"language":{"type":"string","title":"Language","description":"Primary programming language of the sample."},"verifier":{"$ref":"#/components/schemas/VerificationTool","description":"The type of verifier used for this sample."},"dataset":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Dataset","description":"Dataset name for the sample."},"version":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Version","description":"Version number of the sample."},"version_description":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Version Description","description":"Description of this version."},"latest":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Latest","description":"Whether this is the latest version."},"created_at":{"anyOf":[{"type":"string","format":"date-time"},{"type":"null"}],"title":"Created At","description":"Timestamp when the sample was created (UTC)."},"instance_id":{"type":"string","title":"Instance Id","description":"Instance identifier for the sample (e.g., 'psf__requests-1234')."},"repo":{"type":"string","title":"Repo","description":"Repository full name for the sample (e.g., 'psf/requests')."},"base_commit":{"type":"string","title":"Base Commit","description":"Base commit hash for the sample."},"patch":{"type":"string","title":"Patch","description":"Code patch (diff) that fixes the bug for the sample."},"non_code_patch":{"type":"string","title":"Non Code Patch","description":"Non-code patch for the sample."},"test_patch":{"type":"string","title":"Test Patch","description":"Test patch (diff) for the sample."},"problem_statement":{"type":"string","title":"Problem Statement","description":"Problem statement for the sample (issue title + body)."},"hints_text":{"type":"string","title":"Hints Text","description":"Hints text for the sample (concatenated issue comments)."},"environment_setup_commit":{"type":"string","title":"Environment Setup Commit","description":"Environment setup commit hash for the sample."},"fail_to_pass":{"items":{"type":"string"},"type":"array","title":"Fail To Pass","description":"List of test names that changed from FAIL to PASS."},"pass_to_pass":{"items":{"type":"string"},"type":"array","title":"Pass To Pass","description":"List of test names that remained PASS to PASS."},"fail_to_fail":{"items":{"type":"string"},"type":"array","title":"Fail To Fail","description":"List of test names that remained FAIL to FAIL."}},"type":"object","required":["sample_id","language","verifier","instance_id","repo","base_commit","patch","non_code_patch","test_patch","problem_statement","hints_text","environment_setup_commit","fail_to_pass","pass_to_pass","fail_to_fail"],"title":"Sample","description":"Information about a software engineering task sample."},"VerificationTool":{"type":"string","enum":["test_suite","static_analysis","linter","custom"],"title":"VerificationTool","description":"Type of verification tool used."}}}}
```

## The Session object

```json
{"openapi":"3.1.0","info":{"title":"Codeset API","version":"1.0.0"},"components":{"schemas":{"Session":{"properties":{"session_id":{"type":"string","title":"Session Id","description":"Unique identifier for the session."},"user_id":{"type":"string","title":"User Id","description":"User ID who owns this session."},"dataset":{"type":"string","title":"Dataset","description":"Dataset name for the sample."},"sample_id":{"type":"string","title":"Sample Id","description":"Identifier of the sample being used for the session."},"status":{"$ref":"#/components/schemas/SessionStatus","description":"Current status of the session."},"requested_at":{"type":"string","format":"date-time","title":"Requested At","description":"Timestamp when the session was requested (UTC)."},"created_at":{"anyOf":[{"type":"string","format":"date-time"},{"type":"null"}],"title":"Created At","description":"Timestamp when the container became ready and billing started (UTC)."},"expires_at":{"type":"string","format":"date-time","title":"Expires At","description":"Timestamp when the session will expire (UTC)."},"duration_seconds":{"anyOf":[{"type":"number"},{"type":"null"}],"title":"Duration Seconds","description":"Duration of the session in seconds."},"container_info":{"anyOf":[{"$ref":"#/components/schemas/ContainerInfo"},{"type":"null"}],"description":"Container information for this session."},"error":{"anyOf":[{"$ref":"#/components/schemas/ErrorInfo"},{"type":"null"}],"description":"Error details if the session failed."}},"type":"object","required":["session_id","user_id","dataset","sample_id","status","requested_at","expires_at"],"title":"Session","description":"Represents a session for multi-turn interactions."},"SessionStatus":{"type":"string","enum":["creating","ready","error","closed","terminated"],"title":"SessionStatus","description":"Status of a session."},"ContainerInfo":{"properties":{"container_name":{"type":"string","title":"Container Name","description":"Name of the Cloud Run service."},"service_url":{"type":"string","maxLength":2083,"minLength":1,"format":"uri","title":"Service Url","description":"URL of the Cloud Run service."},"sample_id":{"type":"string","title":"Sample Id","description":"Sample ID of the container."},"status":{"type":"string","title":"Status","description":"Status of the container."},"created_at":{"type":"string","format":"date-time","title":"Created At","description":"Timestamp when the container was created (UTC)."},"expires_at":{"type":"string","format":"date-time","title":"Expires At","description":"Timestamp when the container will expire (UTC)."},"location":{"type":"string","title":"Location","description":"Cloud Run region where the container is deployed (e.g., 'europe-west1')."}},"type":"object","required":["container_name","service_url","sample_id","status","created_at","expires_at","location"],"title":"ContainerInfo","description":"Information about a container."},"ErrorInfo":{"properties":{"code":{"type":"string","title":"Code","description":"A unique error code for programmatic handling."},"message":{"type":"string","title":"Message","description":"A human-readable error message."}},"type":"object","required":["code","message"],"title":"ErrorInfo","description":"Details about an error that occurred during job processing."}}}}
```

## The SessionCreateRequest object

```json
{"openapi":"3.1.0","info":{"title":"Codeset API","version":"1.0.0"},"components":{"schemas":{"SessionCreateRequest":{"properties":{"dataset":{"type":"string","title":"Dataset","description":"Dataset name for the sample."},"sample_id":{"type":"string","title":"Sample Id","description":"Identifier of the sample to use for this session."},"ttl_minutes":{"type":"integer","title":"Ttl Minutes","description":"Time to live for the session in minutes (default: 30).","default":30}},"type":"object","required":["dataset","sample_id"],"title":"SessionCreateRequest","description":"Request to create a new session."}}}}
```

## The SessionCreateResponse object

```json
{"openapi":"3.1.0","info":{"title":"Codeset API","version":"1.0.0"},"components":{"schemas":{"SessionCreateResponse":{"properties":{"session_id":{"type":"string","title":"Session Id","description":"Unique identifier for the created session."},"status":{"$ref":"#/components/schemas/SessionStatus","description":"Initial status of the session."},"expires_at":{"type":"string","format":"date-time","title":"Expires At","description":"Timestamp when the session will expire (UTC)."}},"type":"object","required":["session_id","status","expires_at"],"title":"SessionCreateResponse","description":"Response for creating a session."},"SessionStatus":{"type":"string","enum":["creating","ready","error","closed","terminated"],"title":"SessionStatus","description":"Status of a session."}}}}
```

## The SessionDeleteResponse object

```json
{"openapi":"3.1.0","info":{"title":"Codeset API","version":"1.0.0"},"components":{"schemas":{"SessionDeleteResponse":{"properties":{"message":{"type":"string","title":"Message","description":"Success message confirming session deletion"},"duration_seconds":{"type":"number","title":"Duration Seconds","description":"Duration of the session in seconds."}},"type":"object","required":["message","duration_seconds"],"title":"SessionDeleteResponse","description":"Response model for session deletion."}}}}
```

## The SessionListResponse object

```json
{"openapi":"3.1.0","info":{"title":"Codeset API","version":"1.0.0"},"components":{"schemas":{"SessionListResponse":{"properties":{"sessions":{"items":{"$ref":"#/components/schemas/Session"},"type":"array","title":"Sessions"},"total_count":{"type":"integer","title":"Total Count","description":"Total number of sessions returned."},"has_more":{"type":"boolean","title":"Has More","description":"Indicates if more pages of results are available."}},"type":"object","required":["sessions","total_count","has_more"],"title":"SessionListResponse","description":"Response for listing sessions."},"Session":{"properties":{"session_id":{"type":"string","title":"Session Id","description":"Unique identifier for the session."},"user_id":{"type":"string","title":"User Id","description":"User ID who owns this session."},"dataset":{"type":"string","title":"Dataset","description":"Dataset name for the sample."},"sample_id":{"type":"string","title":"Sample Id","description":"Identifier of the sample being used for the session."},"status":{"$ref":"#/components/schemas/SessionStatus","description":"Current status of the session."},"requested_at":{"type":"string","format":"date-time","title":"Requested At","description":"Timestamp when the session was requested (UTC)."},"created_at":{"anyOf":[{"type":"string","format":"date-time"},{"type":"null"}],"title":"Created At","description":"Timestamp when the container became ready and billing started (UTC)."},"expires_at":{"type":"string","format":"date-time","title":"Expires At","description":"Timestamp when the session will expire (UTC)."},"duration_seconds":{"anyOf":[{"type":"number"},{"type":"null"}],"title":"Duration Seconds","description":"Duration of the session in seconds."},"container_info":{"anyOf":[{"$ref":"#/components/schemas/ContainerInfo"},{"type":"null"}],"description":"Container information for this session."},"error":{"anyOf":[{"$ref":"#/components/schemas/ErrorInfo"},{"type":"null"}],"description":"Error details if the session failed."}},"type":"object","required":["session_id","user_id","dataset","sample_id","status","requested_at","expires_at"],"title":"Session","description":"Represents a session for multi-turn interactions."},"SessionStatus":{"type":"string","enum":["creating","ready","error","closed","terminated"],"title":"SessionStatus","description":"Status of a session."},"ContainerInfo":{"properties":{"container_name":{"type":"string","title":"Container Name","description":"Name of the Cloud Run service."},"service_url":{"type":"string","maxLength":2083,"minLength":1,"format":"uri","title":"Service Url","description":"URL of the Cloud Run service."},"sample_id":{"type":"string","title":"Sample Id","description":"Sample ID of the container."},"status":{"type":"string","title":"Status","description":"Status of the container."},"created_at":{"type":"string","format":"date-time","title":"Created At","description":"Timestamp when the container was created (UTC)."},"expires_at":{"type":"string","format":"date-time","title":"Expires At","description":"Timestamp when the container will expire (UTC)."},"location":{"type":"string","title":"Location","description":"Cloud Run region where the container is deployed (e.g., 'europe-west1')."}},"type":"object","required":["container_name","service_url","sample_id","status","created_at","expires_at","location"],"title":"ContainerInfo","description":"Information about a container."},"ErrorInfo":{"properties":{"code":{"type":"string","title":"Code","description":"A unique error code for programmatic handling."},"message":{"type":"string","title":"Message","description":"A human-readable error message."}},"type":"object","required":["code","message"],"title":"ErrorInfo","description":"Details about an error that occurred during job processing."}}}}
```

## The SessionStatus object

```json
{"openapi":"3.1.0","info":{"title":"Codeset API","version":"1.0.0"},"components":{"schemas":{"SessionStatus":{"type":"string","enum":["creating","ready","error","closed","terminated"],"title":"SessionStatus","description":"Status of a session."}}}}
```

## The StringReplaceInteraction object

```json
{"openapi":"3.1.0","info":{"title":"Codeset API","version":"1.0.0"},"components":{"schemas":{"StringReplaceInteraction":{"properties":{"interaction_id":{"type":"string","title":"Interaction Id","description":"Unique identifier for the interaction."},"session_id":{"type":"string","title":"Session Id","description":"Session identifier for this interaction."},"interaction_type":{"type":"string","const":"string_replace","title":"Interaction Type","default":"string_replace"},"created_at":{"type":"string","format":"date-time","title":"Created At","description":"Timestamp when the interaction was created (UTC)."},"exit_code":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Exit Code","description":"Exit code of the interaction."},"stdout":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Stdout","description":"Standard output from the interaction."},"stderr":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Stderr","description":"Standard error from the interaction."},"execution_time_seconds":{"anyOf":[{"type":"number"},{"type":"null"}],"title":"Execution Time Seconds","description":"Execution time in seconds."},"success":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Success","description":"Whether the interaction was successful."},"message":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Message","description":"Additional message about the interaction result."},"file_path":{"type":"string","title":"File Path","description":"Path to the file where replacement was performed."},"str_to_replace":{"type":"string","title":"Str To Replace","description":"String that was replaced."},"str_to_insert":{"type":"string","title":"Str To Insert","description":"String that was inserted as replacement."}},"type":"object","required":["interaction_id","session_id","created_at","file_path","str_to_replace","str_to_insert"],"title":"StringReplaceInteraction","description":"Interaction for replacing a string in a file."}}}}
```

## The StringReplaceRequest object

```json
{"openapi":"3.1.0","info":{"title":"Codeset API","version":"1.0.0"},"components":{"schemas":{"StringReplaceRequest":{"properties":{"file_path":{"type":"string","title":"File Path","description":"Path to the file where replacement should be performed."},"str_to_replace":{"type":"string","title":"Str To Replace","description":"String to be replaced."},"str_to_insert":{"type":"string","title":"Str To Insert","description":"String to insert as replacement."}},"type":"object","required":["file_path","str_to_replace","str_to_insert"],"title":"StringReplaceRequest","description":"Request to perform string replacement in a file."}}}}
```

## The StringReplaceResponse object

```json
{"openapi":"3.1.0","info":{"title":"Codeset API","version":"1.0.0"},"components":{"schemas":{"StringReplaceResponse":{"properties":{"success":{"type":"boolean","title":"Success","description":"Whether the string replacement was successful."},"message":{"type":"string","title":"Message","description":"Details about the string replacement operation."}},"type":"object","required":["success","message"],"title":"StringReplaceResponse","description":"Response for string replacement operation."}}}}
```

## The TestSuiteResult object

```json
{"openapi":"3.1.0","info":{"title":"Codeset API","version":"1.0.0"},"components":{"schemas":{"TestSuiteResult":{"properties":{"tool":{"type":"string","const":"test_suite","title":"Tool","default":"test_suite"},"is_success":{"type":"boolean","title":"Is Success","description":"Overall success status of the verification."},"execution_duration_seconds":{"type":"number","title":"Execution Duration Seconds","description":"Total execution time for the verification step."},"total":{"type":"integer","title":"Total","description":"Total number of tests executed."},"passed":{"type":"integer","title":"Passed","description":"Number of tests that passed."},"failed":{"type":"integer","title":"Failed","description":"Number of tests that failed."},"skipped":{"type":"integer","title":"Skipped","description":"Number of tests that were skipped."},"passes":{"items":{},"type":"array","title":"Passes","description":"A list of passing tests with their details.","default":[]},"failures":{"items":{},"type":"array","title":"Failures","description":"A list of failed tests with their details.","default":[]},"skips":{"items":{},"type":"array","title":"Skips","description":"A list of skipped/ignored tests with their details.","default":[]},"stdout":{"type":"string","title":"Stdout","description":"Standard output from the verifier.","default":"PLACE_HOLDER"},"stderr":{"type":"string","title":"Stderr","description":"Standard error from the verifier.","default":"PLACE_HOLDER"}},"type":"object","required":["is_success","execution_duration_seconds","total","passed","failed","skipped"],"title":"TestSuiteResult","description":"Result from a test suite verifier."}}}}
```

## The TokenRefreshRequest object

```json
{"openapi":"3.1.0","info":{"title":"Codeset API","version":"1.0.0"},"components":{"schemas":{"TokenRefreshRequest":{"properties":{"refresh_token":{"type":"string","title":"Refresh Token","description":"The refresh token."}},"type":"object","required":["refresh_token"],"title":"TokenRefreshRequest","description":"Request to refresh an access token."}}}}
```

## The TokenRefreshResponse object

```json
{"openapi":"3.1.0","info":{"title":"Codeset API","version":"1.0.0"},"components":{"schemas":{"TokenRefreshResponse":{"properties":{"access_token":{"type":"string","title":"Access Token","description":"New JWT access token."},"token_type":{"type":"string","title":"Token Type","description":"Token type.","default":"Bearer"},"expires_in":{"type":"integer","title":"Expires In","description":"Access token expiration time in seconds."}},"type":"object","required":["access_token","expires_in"],"title":"TokenRefreshResponse","description":"Response for token refresh."}}}}
```

## The UsageHistory object

```json
{"openapi":"3.1.0","info":{"title":"Codeset API","version":"1.0.0"},"components":{"schemas":{"UsageHistory":{"properties":{"current_balance_cents":{"type":"integer","title":"Current Balance Cents","description":"Current balance in cents"},"total_deposits_cents":{"type":"integer","title":"Total Deposits Cents","description":"Total amount deposited"},"total_usage_cents":{"type":"integer","title":"Total Usage Cents","description":"Total amount used"},"transactions":{"items":{"$ref":"#/components/schemas/UsageTransaction"},"type":"array","title":"Transactions","description":"List of transactions for current page"},"summary":{"additionalProperties":true,"type":"object","title":"Summary","description":"Usage summary statistics"},"pagination":{"additionalProperties":true,"type":"object","title":"Pagination","description":"Pagination information"}},"type":"object","required":["current_balance_cents","total_deposits_cents","total_usage_cents","transactions","summary","pagination"],"title":"UsageHistory","description":"Complete usage history for a user"},"UsageTransaction":{"properties":{"id":{"type":"string","title":"Id","description":"Unique transaction identifier"},"type":{"type":"string","enum":["deposit","refund","session_usage","agent_job_usage","agent_job_refund"],"title":"Type","description":"Type of transaction"},"amount_cents":{"type":"integer","title":"Amount Cents","description":"Amount in cents (positive for deposits/refunds, negative for usage)"},"description":{"type":"string","title":"Description","description":"Description of the transaction"},"created_at":{"type":"string","format":"date-time","title":"Created At","description":"When the transaction occurred"},"session_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Session Id","description":"Session ID if this is session usage"},"duration_minutes":{"anyOf":[{"type":"number"},{"type":"null"}],"title":"Duration Minutes","description":"Session duration if applicable"},"job_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Job Id","description":"Agent job ID if this is agent job usage or refund"}},"type":"object","required":["id","type","amount_cents","description","created_at"],"title":"UsageTransaction","description":"Represents a usage transaction (deposit, refund, or spending)"}}}}
```

## The UsageTransaction object

```json
{"openapi":"3.1.0","info":{"title":"Codeset API","version":"1.0.0"},"components":{"schemas":{"UsageTransaction":{"properties":{"id":{"type":"string","title":"Id","description":"Unique transaction identifier"},"type":{"type":"string","enum":["deposit","refund","session_usage","agent_job_usage","agent_job_refund"],"title":"Type","description":"Type of transaction"},"amount_cents":{"type":"integer","title":"Amount Cents","description":"Amount in cents (positive for deposits/refunds, negative for usage)"},"description":{"type":"string","title":"Description","description":"Description of the transaction"},"created_at":{"type":"string","format":"date-time","title":"Created At","description":"When the transaction occurred"},"session_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Session Id","description":"Session ID if this is session usage"},"duration_minutes":{"anyOf":[{"type":"number"},{"type":"null"}],"title":"Duration Minutes","description":"Session duration if applicable"},"job_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Job Id","description":"Agent job ID if this is agent job usage or refund"}},"type":"object","required":["id","type","amount_cents","description","created_at"],"title":"UsageTransaction","description":"Represents a usage transaction (deposit, refund, or spending)"}}}}
```

## The User object

```json
{"openapi":"3.1.0","info":{"title":"Codeset API","version":"1.0.0"},"components":{"schemas":{"User":{"properties":{"user_id":{"type":"string","title":"User Id","description":"Unique identifier for the user."},"name":{"type":"string","title":"Name","description":"Display name of the user."},"email":{"type":"string","title":"Email","description":"Email address of the user."},"github_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Github Id","description":"GitHub user ID for OAuth authentication."},"github_login":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Github Login","description":"GitHub username (login) for matching app installations."},"api_keys":{"items":{"$ref":"#/components/schemas/ApiKey"},"type":"array","title":"Api Keys","description":"List of API keys associated with this user."},"created_at":{"type":"string","format":"date-time","title":"Created At","description":"Timestamp when the user was created (UTC)."},"last_login_at":{"anyOf":[{"type":"string","format":"date-time"},{"type":"null"}],"title":"Last Login At","description":"Timestamp of the user's last login (UTC)."},"is_active":{"type":"boolean","title":"Is Active","description":"Whether the user account is active.","default":true},"terms_accepted_at":{"anyOf":[{"type":"string","format":"date-time"},{"type":"null"}],"title":"Terms Accepted At","description":"When the user last accepted the terms of service (UTC). None if not accepted."}},"type":"object","required":["user_id","name","email","created_at"],"title":"User","description":"Represents a user in the system."},"ApiKey":{"properties":{"key_id":{"type":"string","title":"Key Id","description":"Unique identifier for the API key."},"key":{"type":"string","title":"Key","description":"The actual API key value."},"name":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Name","description":"Optional name for the API key."},"created_at":{"type":"string","format":"date-time","title":"Created At","description":"Timestamp when the API key was created (UTC)."},"expires_at":{"anyOf":[{"type":"string","format":"date-time"},{"type":"null"}],"title":"Expires At","description":"Timestamp when the API key expires (UTC). None means no expiration."},"is_active":{"type":"boolean","title":"Is Active","description":"Whether the API key is active.","default":true},"last_used_at":{"anyOf":[{"type":"string","format":"date-time"},{"type":"null"}],"title":"Last Used At","description":"Timestamp when the API key was last used (UTC)."}},"type":"object","required":["key_id","key","created_at"],"title":"ApiKey","description":"Represents an API key for a user."}}}}
```

## The UserCredits object

```json
{"openapi":"3.1.0","info":{"title":"Codeset API","version":"1.0.0"},"components":{"schemas":{"UserCredits":{"properties":{"user_id":{"type":"string","title":"User Id","description":"User ID"},"balance":{"type":"integer","title":"Balance","description":"Current balance in cents","default":0},"total_deposited":{"type":"integer","title":"Total Deposited","description":"Total money ever deposited in cents","default":0},"total_spent":{"type":"integer","title":"Total Spent","description":"Total money ever spent in cents","default":0},"stripe_customer_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Stripe Customer Id","description":"Stripe customer ID"},"last_updated":{"type":"string","format":"date-time","title":"Last Updated","description":"Last time balance was updated"}},"type":"object","required":["user_id","last_updated"],"title":"UserCredits","description":"User's money balance and billing information"}}}}
```

## The ValidationError object

```json
{"openapi":"3.1.0","info":{"title":"Codeset API","version":"1.0.0"},"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"}},"type":"object","required":["loc","msg","type"],"title":"ValidationError"}}}}
```

## The VerificationJob object

```json
{"openapi":"3.1.0","info":{"title":"Codeset API","version":"1.0.0"},"components":{"schemas":{"VerificationJob":{"properties":{"job_id":{"type":"string","title":"Job Id","description":"Unique identifier for the job."},"sample_id":{"type":"string","title":"Sample Id","description":"Identifier of the sample being used for verification."},"session_id":{"type":"string","title":"Session Id","description":"Session identifier for this job."},"status":{"$ref":"#/components/schemas/JobStatus","description":"Current status of the job."},"created_at":{"type":"string","format":"date-time","title":"Created At","description":"Timestamp when the job was created (UTC)."},"started_at":{"anyOf":[{"type":"string","format":"date-time"},{"type":"null"}],"title":"Started At","description":"Timestamp when the job processing started (UTC)."},"completed_at":{"anyOf":[{"type":"string","format":"date-time"},{"type":"null"}],"title":"Completed At","description":"Timestamp when the job completed (UTC)."},"result":{"anyOf":[{"oneOf":[{"$ref":"#/components/schemas/TestSuiteResult"}],"discriminator":{"propertyName":"tool","mapping":{"test_suite":"#/components/schemas/TestSuiteResult"}}},{"type":"null"}],"title":"Result","description":"The result of the verification. Available when status is 'completed'."},"error":{"anyOf":[{"$ref":"#/components/schemas/ErrorInfo"},{"type":"null"}],"description":"Error details if the job failed with an 'error' status."},"container_info":{"anyOf":[{"$ref":"#/components/schemas/ContainerInfo"},{"type":"null"}],"description":"Container information for this job."}},"type":"object","required":["job_id","sample_id","session_id","status","created_at"],"title":"VerificationJob","description":"Represents a single verification job, the core resource of the API."},"JobStatus":{"type":"string","enum":["pending","starting","running","completed","error","cancelled"],"title":"JobStatus","description":"Status of a verification job."},"TestSuiteResult":{"properties":{"tool":{"type":"string","const":"test_suite","title":"Tool","default":"test_suite"},"is_success":{"type":"boolean","title":"Is Success","description":"Overall success status of the verification."},"execution_duration_seconds":{"type":"number","title":"Execution Duration Seconds","description":"Total execution time for the verification step."},"total":{"type":"integer","title":"Total","description":"Total number of tests executed."},"passed":{"type":"integer","title":"Passed","description":"Number of tests that passed."},"failed":{"type":"integer","title":"Failed","description":"Number of tests that failed."},"skipped":{"type":"integer","title":"Skipped","description":"Number of tests that were skipped."},"passes":{"items":{},"type":"array","title":"Passes","description":"A list of passing tests with their details.","default":[]},"failures":{"items":{},"type":"array","title":"Failures","description":"A list of failed tests with their details.","default":[]},"skips":{"items":{},"type":"array","title":"Skips","description":"A list of skipped/ignored tests with their details.","default":[]},"stdout":{"type":"string","title":"Stdout","description":"Standard output from the verifier.","default":"PLACE_HOLDER"},"stderr":{"type":"string","title":"Stderr","description":"Standard error from the verifier.","default":"PLACE_HOLDER"}},"type":"object","required":["is_success","execution_duration_seconds","total","passed","failed","skipped"],"title":"TestSuiteResult","description":"Result from a test suite verifier."},"ErrorInfo":{"properties":{"code":{"type":"string","title":"Code","description":"A unique error code for programmatic handling."},"message":{"type":"string","title":"Message","description":"A human-readable error message."}},"type":"object","required":["code","message"],"title":"ErrorInfo","description":"Details about an error that occurred during job processing."},"ContainerInfo":{"properties":{"container_name":{"type":"string","title":"Container Name","description":"Name of the Cloud Run service."},"service_url":{"type":"string","maxLength":2083,"minLength":1,"format":"uri","title":"Service Url","description":"URL of the Cloud Run service."},"sample_id":{"type":"string","title":"Sample Id","description":"Sample ID of the container."},"status":{"type":"string","title":"Status","description":"Status of the container."},"created_at":{"type":"string","format":"date-time","title":"Created At","description":"Timestamp when the container was created (UTC)."},"expires_at":{"type":"string","format":"date-time","title":"Expires At","description":"Timestamp when the container will expire (UTC)."},"location":{"type":"string","title":"Location","description":"Cloud Run region where the container is deployed (e.g., 'europe-west1')."}},"type":"object","required":["container_name","service_url","sample_id","status","created_at","expires_at","location"],"title":"ContainerInfo","description":"Information about a container."}}}}
```

## The VerificationTool object

```json
{"openapi":"3.1.0","info":{"title":"Codeset API","version":"1.0.0"},"components":{"schemas":{"VerificationTool":{"type":"string","enum":["test_suite","static_analysis","linter","custom"],"title":"VerificationTool","description":"Type of verification tool used."}}}}
```

## The VerifyStartResponse object

```json
{"openapi":"3.1.0","info":{"title":"Codeset API","version":"1.0.0"},"components":{"schemas":{"VerifyStartResponse":{"properties":{"job_id":{"type":"string","title":"Job Id","description":"Unique identifier for the verification job."},"status":{"$ref":"#/components/schemas/JobStatus","description":"Initial status of the verification job."},"started_at":{"type":"string","format":"date-time","title":"Started At","description":"Timestamp when verification started (UTC)."}},"type":"object","required":["job_id","status","started_at"],"title":"VerifyStartResponse","description":"Response for starting verification (async)."},"JobStatus":{"type":"string","enum":["pending","starting","running","completed","error","cancelled"],"title":"JobStatus","description":"Status of a verification job."}}}}
```
