> **Building with AI coding agents?** Install the authstack plugin with one command. This equips your agent with accurate Scalekit implementation patterns.
>
> **Recommended** (the `-y` flags skip prompts, so the command runs without an interactive terminal):
> ```bash
> npx -y @scalekit-inc/cli setup -y
> ```
>
> Global:
> ```bash
> npm install -g @scalekit-inc/cli
> scalekit setup -y
> ```
>
> Supports Claude Code, Cursor, GitHub Copilot, Codex + skills for other Agent Skills-compatible agents in `~/.agents/skills`.
> Skills: integrate-agentkit, implement-saaskit, add-mcp-oauth, implement-sso, implement-scim.
> [Full setup guide](https://docs.scalekit.com/dev-kit/build-with-ai/)

---

# Connect AI agents to Replicate

The Replicate connector lets your AI agent act in each user's Replicate account. Each user connects their own Replicate access token once, and Scalekit sends it with every call, so your agent never handles credentials. It comes with 33 tools.

**Authentication:** Bearer Token
**Categories:** AI
**Tools:** 33: 19 read, 10 write, 4 destructive
**Users sign in with:** Access token
**Built by:** Scalekit connector
**Try it:** [Playground in the Scalekit dashboard](https://app.scalekit.com/ws/signup?sk_intent=playground&provider=REPLICATE)

## Setup

1. ### Install the SDK

   **Node.js**

   ```bash
   npm install @scalekit-sdk/node dotenv
   ```

   **Python**

   ```bash
   pip install scalekit-sdk-python python-dotenv
   ```

2. ### Set your credentials

   Add your Scalekit credentials to your `.env` file. Find values in **[app.scalekit.com](https://app.scalekit.com)** > **Developers** > **API Credentials**.

   ```sh title=".env"
   SCALEKIT_ENVIRONMENT_URL=<your-environment-url>
   SCALEKIT_CLIENT_ID=<your-client-id>
   SCALEKIT_CLIENT_SECRET=<your-client-secret>
   ```

3. ### Create the Replicate connection

   In **AgentKit > Connections**, create a Replicate connection. The name you give it is the `connection_name` your code passes. See [Configure connections](/agentkit/connections/).

4. ### Authorize a user and make your first call

   **Node.js** (`quickstart.mts`)

   ```typescript
   import { ScalekitClient } from '@scalekit-sdk/node'
   import 'dotenv/config'
   import { createInterface } from 'node:readline/promises'

   const scalekit = new ScalekitClient(
     process.env.SCALEKIT_ENVIRONMENT_URL,
     process.env.SCALEKIT_CLIENT_ID,
     process.env.SCALEKIT_CLIENT_SECRET,
   )
   const actions = scalekit.actions

   const connector = 'replicate'
   const identifier = 'user_123'

   // Generate an authorization link for the user
   const { link } = await actions.getAuthorizationLink({ connectionName: connector, identifier })
   console.log('Authorize Replicate:', link)
   const rl = createInterface({ input: process.stdin, output: process.stdout })
   await rl.question('Press Enter after authorizing...')
   rl.close()

   // Make your first call
   const result = await actions.executeTool({
     connector,
     identifier,
     toolName: 'replicate_get_account',
     toolInput: {},
   })
   console.log(result)
   ```

   ```bash
   npx tsx quickstart.mts
   ```

   **Python** (`quickstart.py`)

   ```python
   import os
   from scalekit import ScalekitClient
   from dotenv import load_dotenv
   load_dotenv()

   scalekit_client = ScalekitClient(
       env_url=os.getenv("SCALEKIT_ENVIRONMENT_URL"),
       client_id=os.getenv("SCALEKIT_CLIENT_ID"),
       client_secret=os.getenv("SCALEKIT_CLIENT_SECRET"),
   )
   actions = scalekit_client.actions

   connection_name = "replicate"
   identifier = "user_123"

   # Generate an authorization link for the user
   link_response = actions.get_authorization_link(
       connection_name=connection_name,
       identifier=identifier,
   )
   print("Authorize Replicate:", link_response.link)
   input("Press Enter after authorizing...")

   # Make your first call
   result = actions.execute_tool(
       tool_input={},
       tool_name="replicate_get_account",
       connection_name=connection_name,
       identifier=identifier,
   )
   print(result)
   ```

   ```bash
   python quickstart.py
   ```

   Each user opens the link once and enters their Replicate credentials there. See [Authorize a user](/agentkit/tools/authorize/) for the full flow and statuses.

## Tools

Pass the exact name to `execute_tool`, with an input like each tool's example. To ask for a tool that's missing, use the [request form](https://scalekitsupport.portal.usepylon.com/forms/request-a-connector-tool).

**Node.js**

```typescript
const result = await actions.executeTool({
  toolName: 'replicate_get_account',
  toolInput: {},
  connector: 'replicate',
  identifier: 'user_123',
})
```

**Python**

```python
result = actions.execute_tool(
    tool_name="replicate_get_account",
    tool_input={},
    connection_name="replicate",
    identifier="user_123",
)
```

`result.data` is the app's response as JSON, and `result.execution_id` (`executionId` in Node.js) is the ID of the call.

### `replicate_get_account`

Get Account · Read-only

Get the user or organization that owns the API token in use.
Returns the account type (user or organization), username, display name, GitHub URL and avatar URL.
Use it to confirm which account the connection is authenticated as; the username is the owner value for models and deployments you create.

Read only: yes. Destructive: no. Idempotent (safe to retry): yes.

Inputs: none.

Example input: `{}`

### `replicate_get_collection`

Get Collection · Read-only

Get one collection of models by slug.
Returns the collection's name, slug, description, full_description and its models array.
Use replicate_list_collections to find collection slugs.

Read only: yes. Destructive: no. Idempotent (safe to retry): yes.

Inputs:

- `collection_slug` (`string`, required): Slug of the collection, such as 'super-resolution' or 'image-restoration'. Get slugs from replicate_list_collections.

Example input: `{"collection_slug":"<collection_slug>"}`

### `replicate_get_deployment`

Get Deployment · Read-only

Get one deployment by owner and name.
Returns the deployment's owner, name and current_release (release number, model, version, creator and configuration with hardware, min_instances and max_instances).
Use replicate_list_deployments to find deployments.

Read only: yes. Destructive: no. Idempotent (safe to retry): yes.

Inputs:

- `deployment_name` (`string`, required): Name of the deployment.
- `deployment_owner` (`string`, required): Username or organization that owns the deployment.

Example input: `{"deployment_name":"<deployment_name>","deployment_owner":"<deployment_owner>"}`

### `replicate_get_file`

Get File · Read-only

Get the details of one uploaded file by ID.
Returns the file's id, content_type, size, checksums, metadata, created_at, expires_at and urls.
Use replicate_list_files to find file IDs.

Read only: yes. Destructive: no. Idempotent (safe to retry): yes.

Inputs:

- `file_id` (`string`, required): ID of the file, returned in the 'id' field when it was uploaded.

Example input: `{"file_id":"<file_id>"}`

### `replicate_get_model`

Get Model · Read-only

Get one model by owner and name.
Returns the model's url, owner, name, description, visibility, run_count, GitHub, paper and license URLs, cover image, default_example and latest_version.
Use replicate_list_model_versions for all versions, replicate_get_model_readme for the README, and replicate_search to find a model first.

Read only: yes. Destructive: no. Idempotent (safe to retry): yes.

Inputs:

- `model_name` (`string`, required): Name of the model within the owner's account, such as 'flux-schnell' or 'hello-world'.
- `model_owner` (`string`, required): Username or organization that owns the model, such as 'black-forest-labs' or 'replicate'.

Example input: `{"model_name":"<model_name>","model_owner":"<model_owner>"}`

### `replicate_get_model_readme`

Get Model README · Read-only

Get the README of a model as Markdown text.
Returns the README content as plain text.
Use replicate_get_model for structured metadata such as description, visibility and latest_version.

Read only: yes. Destructive: no. Idempotent (safe to retry): yes.

Inputs:

- `model_name` (`string`, required): Name of the model within the owner's account, such as 'flux-schnell' or 'hello-world'.
- `model_owner` (`string`, required): Username or organization that owns the model, such as 'black-forest-labs' or 'replicate'.

Example input: `{"model_name":"<model_name>","model_owner":"<model_owner>"}`

### `replicate_get_model_version`

Get Model Version · Read-only

Get one version of a model by version ID.
Returns the version's id, created_at, cog_version and openapi_schema, whose Input and Output schemas list the fields to pass to a prediction.
Use replicate_list_model_versions to find version IDs.

Read only: yes. Destructive: no. Idempotent (safe to retry): yes.

Inputs:

- `model_name` (`string`, required): Name of the model within the owner's account, such as 'flux-schnell' or 'hello-world'.
- `model_owner` (`string`, required): Username or organization that owns the model, such as 'black-forest-labs' or 'replicate'.
- `version_id` (`string`, required): 64-character ID of the model version. Get it from replicate_list_model_versions.

Example input: `{"model_name":"<model_name>","model_owner":"<model_owner>","version_id":"<version_id>"}`

### `replicate_get_prediction`

Get Prediction · Read-only

Get the current state of a prediction by ID.
Returns status (starting, processing, succeeded, failed, canceled or aborted), input, output, logs, error, metrics, timestamps and urls.
Use it to poll a prediction started with a create-prediction tool. Use replicate_list_predictions to browse recent predictions.

Read only: yes. Destructive: no. Idempotent (safe to retry): yes.

Inputs:

- `prediction_id` (`string`, required): ID of the prediction, returned in the 'id' field when it was created.

Example input: `{"prediction_id":"<prediction_id>"}`

### `replicate_get_training`

Get Training · Read-only

Get the current state of a training by ID.
Returns status (starting, processing, succeeded, failed or canceled), input, output (version and weights once finished), logs, error, metrics, timestamps and urls.
Use it to poll a training started with replicate_create_training.

Read only: yes. Destructive: no. Idempotent (safe to retry): yes.

Inputs:

- `training_id` (`string`, required): ID of the training, returned in the 'id' field when it was created.

Example input: `{"training_id":"<training_id>"}`

### `replicate_list_collections`

List Collections · Read-only

List curated collections of models, such as super-resolution or text-to-image.
Returns a paginated object with next, previous and a results array of collections (name, slug, description).
Use replicate_get_collection to see the models in one collection.

Read only: yes. Destructive: no. Idempotent (safe to retry): yes.

Inputs:

- `cursor` (`string`, optional): Pagination cursor for the next or previous page. Copy the value of the 'cursor' query parameter from the 'next' or 'previous' URL in a previous response; leave empty for the first page.

Example input: `{}`

### `replicate_list_deployments`

List Deployments · Read-only

List the deployments in the account, each with its current release configuration.
Returns a paginated object with next, previous and a results array of deployments (owner, name, current_release with model, version and hardware settings).
Use replicate_get_deployment for one deployment.

Read only: yes. Destructive: no. Idempotent (safe to retry): yes.

Inputs:

- `cursor` (`string`, optional): Pagination cursor for the next or previous page. Copy the value of the 'cursor' query parameter from the 'next' or 'previous' URL in a previous response; leave empty for the first page.

Example input: `{}`

### `replicate_list_files`

List Files · Read-only

List files uploaded to the account, newest first.
Returns a paginated object with next, previous and a results array of file objects (id, content_type, size, created_at, expires_at, urls).
Use replicate_get_file for one file.

Read only: yes. Destructive: no. Idempotent (safe to retry): yes.

Inputs:

- `cursor` (`string`, optional): Pagination cursor for the next or previous page. Copy the value of the 'cursor' query parameter from the 'next' or 'previous' URL in a previous response; leave empty for the first page.

Example input: `{}`

### `replicate_list_hardware`

List Hardware · Read-only

List the hardware options available for running models and deployments.
Returns an array of objects with the hardware name and sku, for example CPU / cpu and Nvidia T4 GPU / gpu-t4.
Use it to find the sku value to pass when creating a model or deployment.

Read only: yes. Destructive: no. Idempotent (safe to retry): yes.

Inputs: none.

Example input: `{}`

### `replicate_list_model_examples`

List Model Examples · Read-only

List the example predictions the model's author saved to illustrate what it can do.
Returns a paginated object with next, previous and a results array of prediction objects (input and output).
Use replicate_get_model for just the default example.

Read only: yes. Destructive: no. Idempotent (safe to retry): yes.

Inputs:

- `model_name` (`string`, required): Name of the model within the owner's account, such as 'flux-schnell' or 'hello-world'.
- `model_owner` (`string`, required): Username or organization that owns the model, such as 'black-forest-labs' or 'replicate'.
- `cursor` (`string`, optional): Pagination cursor for the next or previous page. Copy the value of the 'cursor' query parameter from the 'next' or 'previous' URL in a previous response; leave empty for the first page.

Example input: `{"model_name":"<model_name>","model_owner":"<model_owner>"}`

### `replicate_list_model_versions`

List Model Versions · Read-only

List the versions of a model, newest first.
Returns a paginated object with next, previous and a results array of version objects (id, created_at, cog_version, openapi_schema).
Use replicate_get_model_version for one version, whose openapi_schema describes the input and output fields.

Read only: yes. Destructive: no. Idempotent (safe to retry): yes.

Inputs:

- `model_name` (`string`, required): Name of the model within the owner's account, such as 'flux-schnell' or 'hello-world'.
- `model_owner` (`string`, required): Username or organization that owns the model, such as 'black-forest-labs' or 'replicate'.
- `cursor` (`string`, optional): Pagination cursor for the next or previous page. Copy the value of the 'cursor' query parameter from the 'next' or 'previous' URL in a previous response; leave empty for the first page.

Example input: `{"model_name":"<model_name>","model_owner":"<model_owner>"}`

### `replicate_list_models`

List Models · Read-only

List public models, sorted by creation date or latest version date.
Returns a paginated object with next, previous and a results array of model objects (owner, name, description, visibility, run_count, latest_version).
Use replicate_search to find models by text, and replicate_get_model for one model.

Read only: yes. Destructive: no. Idempotent (safe to retry): yes.

Inputs:

- `cursor` (`string`, optional): Pagination cursor for the next or previous page. Copy the value of the 'cursor' query parameter from the 'next' or 'previous' URL in a previous response; leave empty for the first page.
- `sort_by` (`string`, optional): Field to sort by: 'model_created_at' or 'latest_version_created_at'. Defaults to latest_version_created_at. One of: `model_created_at`, `latest_version_created_at`.
- `sort_direction` (`string`, optional): Sort direction: 'asc' or 'desc'. Defaults to desc (newest first). One of: `asc`, `desc`.

Example input: `{}`

### `replicate_list_predictions`

List Predictions · Read-only

List predictions created by the account that owns the API token, newest first, 100 per page.
Returns a paginated object with next, previous and a results array of prediction objects (id, status, model, version, timestamps, urls).
Use replicate_get_prediction for the full detail of one prediction.

Read only: yes. Destructive: no. Idempotent (safe to retry): yes.

Inputs:

- `created_after` (`string`, optional): Only include predictions created at or after this ISO 8601 date-time, such as 2025-01-01T00:00:00Z.
- `created_before` (`string`, optional): Only include predictions created before this ISO 8601 date-time, such as 2025-02-01T00:00:00Z.
- `cursor` (`string`, optional): Pagination cursor for the next or previous page. Copy the value of the 'cursor' query parameter from the 'next' or 'previous' URL in a previous response; leave empty for the first page.
- `source` (`string`, optional): Filter by how the prediction was created. The only supported value is 'web'; leave empty for predictions from every source. One of: `web`.

Example input: `{}`

### `replicate_list_trainings`

List Trainings · Read-only

List trainings (fine-tunes) created by the account that owns the API token, newest first, 100 per page.
Returns a paginated object with next, previous and a results array of training objects (id, status, model, version, timestamps, urls).
Use replicate_get_training for the full detail of one training.

Read only: yes. Destructive: no. Idempotent (safe to retry): yes.

Inputs:

- `cursor` (`string`, optional): Pagination cursor for the next or previous page. Copy the value of the 'cursor' query parameter from the 'next' or 'previous' URL in a previous response; leave empty for the first page.

Example input: `{}`

### `replicate_search`

Search · Read-only

Search public models, collections and docs with a text query (beta).
Returns query, models (each with model data plus metadata such as generated_description, tags and score), collections and pages (docs).
Use it to discover a model by what it does. Use replicate_list_models to browse all models without a query.

Read only: yes. Destructive: no. Idempotent (safe to retry): yes.

Inputs:

- `query` (`string`, required): Text to search for, such as 'nano banana' or 'image upscaling'.
- `limit` (`integer`, optional): Maximum number of model results to return, from 1 to 50. Defaults to 20. Default: `20`.

Example input: `{"query":"<query>"}`

### `replicate_cancel_prediction`

Cancel Prediction · Write

Cancel a prediction that is still starting or processing.
Returns the prediction object with its updated status.
Use it to stop a run you no longer need. It has no effect on a prediction that already finished.
Prerequisite: the prediction ID from a create-prediction tool or replicate_list_predictions.

Read only: no. Destructive: no. Idempotent (safe to retry): no.

Inputs:

- `prediction_id` (`string`, required): ID of the prediction to cancel.

Example input: `{"prediction_id":"<prediction_id>"}`

### `replicate_cancel_training`

Cancel Training · Write

Cancel a training that is still starting or processing.
Returns the training object with its updated status.
Use it to stop a fine-tune you no longer need.
Prerequisite: the training ID from replicate_create_training or replicate_list_trainings.

Read only: no. Destructive: no. Idempotent (safe to retry): no.

Inputs:

- `training_id` (`string`, required): ID of the training to cancel.

Example input: `{"training_id":"<training_id>"}`

### `replicate_create_deployment`

Create Deployment · Write

Create a deployment that runs a model version on dedicated hardware with scaling limits.
Returns the deployment object with owner, name and current_release (model, version and configuration).
Use replicate_create_deployment_prediction to run it and replicate_update_deployment to change it.
Prerequisite: replicate_list_hardware gives the hardware sku and replicate_list_model_versions the version ID.

Read only: no. Destructive: no. Idempotent (safe to retry): no.

Inputs:

- `hardware` (`string`, required): SKU of the hardware used to run the model, such as 'cpu' or 'gpu-t4'. Use replicate_list_hardware to see the valid SKUs.
- `max_instances` (`integer`, required): Maximum number of instances to scale up to.
- `min_instances` (`integer`, required): Minimum number of instances to keep running. Use 0 to scale to zero when idle.
- `model` (`string`, required): Full name of the model to deploy, such as 'stability-ai/sdxl'.
- `name` (`string`, required): Name of the deployment.
- `version` (`string`, required): 64-character ID of the model version to deploy.

Example input: `{"hardware":"<hardware>","max_instances":1,"min_instances":1,"model":"<model>","name":"<name>","version":"<version>"}`

### `replicate_create_deployment_prediction`

Create Deployment Prediction · Write

Run a prediction against one of your deployments, which uses the deployment's configured model version and hardware.
Returns the prediction object with id, status, input, output (once available), logs, error, metrics and urls.
Use replicate_create_prediction to run a model version directly. Poll with replicate_get_prediction when the result is not final.
Prerequisite: replicate_list_deployments gives the deployment owner and name.

Read only: no. Destructive: no. Idempotent (safe to retry): no.

Inputs:

- `deployment_name` (`string`, required): Name of the deployment.
- `deployment_owner` (`string`, required): Username or organization that owns the deployment.
- `input` (`object`, required): The model's input as a JSON object. The fields depend on the model; read them from the model's version via replicate_get_model_version (openapi_schema.components.schemas.Input). Example: {"prompt": "An astronaut riding a rainbow unicorn"}.
- `wait_seconds` (`integer`, optional): How many seconds (1-60) Replicate keeps the request open waiting for the prediction to finish before returning the in-progress prediction. If it does not finish in time, poll with replicate_get_prediction. Defaults to 10. Default: `10`.
- `webhook` (`string`, optional): HTTPS URL that Replicate calls with a POST request containing the prediction object when it has new output or finishes. Leave empty to poll instead.
- `webhook_events_filter` (`array`, optional): Which events trigger the webhook: any of 'start', 'output', 'logs', 'completed'. Leave empty to receive output and completion events.

Example input: `{"deployment_name":"<deployment_name>","deployment_owner":"<deployment_owner>","input":{"prompt":"An astronaut riding a rainbow unicorn"}}`

### `replicate_create_model`

Create Model · Write

Create a new model under your account or organization.
Returns the new model object with url, owner, name, description, visibility and links.
Use it before pushing a version or as the destination of replicate_create_training.
Prerequisite: replicate_list_hardware gives the hardware sku; owner must be the account making the request (see replicate_get_account).

Read only: no. Destructive: no. Idempotent (safe to retry): no.

Inputs:

- `hardware` (`string`, required): SKU of the hardware used to run the model, such as 'cpu' or 'gpu-t4'. Use replicate_list_hardware to see the valid SKUs.
- `name` (`string`, required): Name of the model. It must be unique among the models owned by this account.
- `owner` (`string`, required): Username or organization that will own the model. It must be the account that owns the API token.
- `visibility` (`string`, required): Whether the model is 'public' (anyone can view and run it) or 'private' (only the owner can). One of: `public`, `private`.
- `cover_image_url` (`string`, optional): URL of an image file to use as the model's cover image.
- `description` (`string`, optional): Short description of the model.
- `github_url` (`string`, optional): URL of the model's source code on GitHub.
- `license_url` (`string`, optional): URL of the model's license.
- `paper_url` (`string`, optional): URL of the paper describing the model.

Example input: `{"hardware":"<hardware>","name":"<name>","owner":"<owner>","visibility":"public"}`

### `replicate_create_model_prediction`

Create Model Prediction · Write

Run an official model by its owner and name, using the model's latest version.
Returns the prediction object with id, status, input, output (once available), logs, error, metrics and urls.
Use replicate_create_prediction to run a specific version, and replicate_create_deployment_prediction for a deployment. Poll with replicate_get_prediction when the result is not final.
Prerequisite: the model must be an official model; replicate_get_model shows its input schema.

Read only: no. Destructive: no. Idempotent (safe to retry): no.

Inputs:

- `input` (`object`, required): The model's input as a JSON object. The fields depend on the model; read them from the model's version via replicate_get_model_version (openapi_schema.components.schemas.Input). Example: {"prompt": "An astronaut riding a rainbow unicorn"}.
- `model_name` (`string`, required): Name of the model within the owner's account, such as 'flux-schnell' or 'hello-world'.
- `model_owner` (`string`, required): Username or organization that owns the model, such as 'black-forest-labs' or 'replicate'.
- `wait_seconds` (`integer`, optional): How many seconds (1-60) Replicate keeps the request open waiting for the prediction to finish before returning the in-progress prediction. If it does not finish in time, poll with replicate_get_prediction. Defaults to 10. Default: `10`.
- `webhook` (`string`, optional): HTTPS URL that Replicate calls with a POST request containing the prediction object when it has new output or finishes. Leave empty to poll instead.
- `webhook_events_filter` (`array`, optional): Which events trigger the webhook: any of 'start', 'output', 'logs', 'completed'. Leave empty to receive output and completion events.

Example input: `{"input":{"prompt":"An astronaut riding a rainbow unicorn"},"model_name":"<model_name>","model_owner":"<model_owner>"}`

### `replicate_create_prediction`

Create Prediction · Write

Run a model version by creating a prediction from an owner/name:version identifier or a bare version ID.
Returns the prediction object with id, status, input, output (once available), logs, error, metrics and urls; the status is starting or processing if the wait elapsed first.
Use replicate_create_model_prediction for official models addressed by owner/name, and replicate_create_deployment_prediction for deployments. Poll with replicate_get_prediction when the result is not final.
Prerequisite: replicate_get_model_version shows the input fields the version accepts.

Read only: no. Destructive: no. Idempotent (safe to retry): no.

Inputs:

- `input` (`object`, required): The model's input as a JSON object. The fields depend on the model; read them from the model's version via replicate_get_model_version (openapi_schema.components.schemas.Input). Example: {"prompt": "An astronaut riding a rainbow unicorn"}.
- `version` (`string`, required): Identifier of the model or version to run. Accepts a bare 64-character version ID, 'owner/name' for an official model, or 'owner/name:version_id'.
- `wait_seconds` (`integer`, optional): How many seconds (1-60) Replicate keeps the request open waiting for the prediction to finish before returning the in-progress prediction. If it does not finish in time, poll with replicate_get_prediction. Defaults to 10. Default: `10`.
- `webhook` (`string`, optional): HTTPS URL that Replicate calls with a POST request containing the prediction object when it has new output or finishes. Leave empty to poll instead.
- `webhook_events_filter` (`array`, optional): Which events trigger the webhook: any of 'start', 'output', 'logs', 'completed'. Leave empty to receive output and completion events.

Example input: `{"input":{"prompt":"An astronaut riding a rainbow unicorn"},"version":"<version>"}`

### `replicate_create_training`

Create Training · Write

Start a training that fine-tunes a model version and pushes the result to a destination model you own.
Returns the training object with id, status, input, model, version and urls.
Use replicate_get_training to poll it and replicate_cancel_training to stop it.
Prerequisite: the destination model must already exist (replicate_create_model) and the version must support training.

Read only: no. Destructive: no. Idempotent (safe to retry): no.

Inputs:

- `destination` (`string`, required): Model to push the trained version to, in the format 'destination_owner/destination_name'. The model must already exist and belong to the account making the request.
- `input` (`object`, required): Inputs for the trainer's train() function as a JSON object. The fields depend on the trainer; see the Input schema from replicate_get_model_version. Example: {"input_images": "https://example.com/my-input-images.zip"}.
- `model_name` (`string`, required): Name of the model within the owner's account, such as 'flux-schnell' or 'hello-world'.
- `model_owner` (`string`, required): Username or organization that owns the model, such as 'black-forest-labs' or 'replicate'.
- `version_id` (`string`, required): 64-character ID of the model version. Get it from replicate_list_model_versions.
- `webhook` (`string`, optional): HTTPS URL that Replicate calls with a POST request containing the training object when it completes. Leave empty to poll instead.
- `webhook_events_filter` (`array`, optional): Which events trigger the webhook: any of 'start', 'output', 'logs', 'completed'. Leave empty to receive output and completion events.

Example input: `{"destination":"<destination>","input":{"input_images":"https://example.com/my-input-images.zip"},"model_name":"<model_name>","model_owner":"<model_owner>","version_id":"<version_id>"}`

### `replicate_update_deployment`

Update Deployment · Write

Change the hardware, instance limits or model version of an existing deployment.
Returns the updated deployment object with its new current_release.
Use replicate_get_deployment to read the current configuration first. Only the fields you provide are changed.

Read only: no. Destructive: no. Idempotent (safe to retry): yes.

Inputs:

- `deployment_name` (`string`, required): Name of the deployment.
- `deployment_owner` (`string`, required): Username or organization that owns the deployment.
- `hardware` (`string`, optional): SKU of the hardware used to run the model, such as 'cpu' or 'gpu-t4'. Use replicate_list_hardware to see the valid SKUs.
- `max_instances` (`integer`, optional): New maximum number of instances.
- `min_instances` (`integer`, optional): New minimum number of instances.
- `version` (`string`, optional): ID of the model version to deploy.

Example input: `{"deployment_name":"<deployment_name>","deployment_owner":"<deployment_owner>"}`

### `replicate_update_model`

Update Model · Write

Update the description, README or links of a model you own.
Returns the updated model object.
Use replicate_get_model to read the current values first. Only the fields you provide are changed.

Read only: no. Destructive: no. Idempotent (safe to retry): yes.

Inputs:

- `model_name` (`string`, required): Name of the model within the owner's account, such as 'flux-schnell' or 'hello-world'.
- `model_owner` (`string`, required): Username or organization that owns the model, such as 'black-forest-labs' or 'replicate'.
- `description` (`string`, optional): New description of the model.
- `github_url` (`string`, optional): New URL of the model's source code on GitHub.
- `license_url` (`string`, optional): New URL of the model's license.
- `paper_url` (`string`, optional): New URL of the model's paper.
- `readme` (`string`, optional): New README content for the model, in Markdown.
- `weights_url` (`string`, optional): New URL of the model's weights.

Example input: `{"model_name":"<model_name>","model_owner":"<model_owner>"}`

### `replicate_delete_deployment`

Delete Deployment · Destructive

Permanently delete a deployment.
Returns an empty response (HTTP 204) on success.
Use it only for deployments that have been offline and unused for at least 15 minutes, which Replicate requires before deleting.

Read only: no. Destructive: yes. Idempotent (safe to retry): yes.

Inputs:

- `deployment_name` (`string`, required): Name of the deployment.
- `deployment_owner` (`string`, required): Username or organization that owns the deployment.

Example input: `{"deployment_name":"<deployment_name>","deployment_owner":"<deployment_owner>"}`

### `replicate_delete_file`

Delete File · Destructive

Delete an uploaded file by ID.
Returns an empty response (HTTP 204) on success.
Use it to remove files you no longer need; the file can no longer be used as model input afterwards.

Read only: no. Destructive: yes. Idempotent (safe to retry): yes.

Inputs:

- `file_id` (`string`, required): ID of the file, returned in the 'id' field when it was uploaded.

Example input: `{"file_id":"<file_id>"}`

### `replicate_delete_model`

Delete Model · Destructive

Permanently delete a private model you own.
Returns an empty response (HTTP 204) on success.
Use it only for models you no longer need; Replicate only deletes private models that have no versions, so remove versions first with replicate_delete_model_version.
Prerequisite: replicate_list_model_versions shows the versions to remove.

Read only: no. Destructive: yes. Idempotent (safe to retry): yes.

Inputs:

- `model_name` (`string`, required): Name of the model within the owner's account, such as 'flux-schnell' or 'hello-world'.
- `model_owner` (`string`, required): Username or organization that owns the model, such as 'black-forest-labs' or 'replicate'.

Example input: `{"model_name":"<model_name>","model_owner":"<model_owner>"}`

### `replicate_delete_model_version`

Delete Model Version · Destructive

Delete one version of a private model you own, together with all its predictions and output files. Replicate processes the deletion asynchronously, which can take a few minutes.
Returns an empty response (HTTP 202) once the request is accepted.
Use it to retire an old version; Replicate refuses if others ran predictions with it, a training uses it as base, or a deployment references it.
Prerequisite: replicate_list_model_versions shows the version IDs.

Read only: no. Destructive: yes. Idempotent (safe to retry): yes.

Inputs:

- `model_name` (`string`, required): Name of the model within the owner's account, such as 'flux-schnell' or 'hello-world'.
- `model_owner` (`string`, required): Username or organization that owns the model, such as 'black-forest-labs' or 'replicate'.
- `version_id` (`string`, required): 64-character ID of the model version. Get it from replicate_list_model_versions.

Example input: `{"model_name":"<model_name>","model_owner":"<model_owner>","version_id":"<version_id>"}`

## Related

Other AI connectors ([all 134](/agentkit/connectors/?category=ai)):

- [Chorus](/agentkit/connectors/chorus/): Scalekit connector, Username and password, 9 tools
- [Gong](/agentkit/connectors/gong/): Scalekit connector, OAuth, 69 tools
- [Jiminny](/agentkit/connectors/jiminny/): Scalekit connector, Access token, 27 tools


---

## More Scalekit documentation

| Resource | What it contains | When to use it |
|----------|-----------------|----------------|
| [/llms.txt](/llms.txt) | Structured index with routing hints per product area | Start here — find which documentation set covers your topic before loading full content |
| [/llms-full.txt](/llms-full.txt) | Complete documentation for all Scalekit products in one file | Use when you need exhaustive context across multiple products or when the topic spans several areas |
| [sitemap-0.xml](https://docs.scalekit.com/sitemap-0.xml) | Full URL list of every documentation page | Use to discover specific page URLs you can fetch for targeted, page-level answers |
