FruxonDocs
IntegrationsAssets

Creates an asset from a configuration dictionary.

The accepted config keys and their requirements are defined by the source type descriptor returned from the `source-types` endpoint.

POST
/v1/tenants/{tenant}/assets
AuthorizationBearer <token>

JWT Authorization header using the Bearer scheme. Enter 'Bearer' [space] and then your token.

In: header

Path Parameters

tenant*string

The tenant identifier

The source type and configuration parameters.

config*

Represents a generalized configuration for an asset, serving as a transport model for storage and cross-system communication.

name?string|null
description?string|null

Optional note describing what the asset contains and when an agent should use it. Injected into the step system prompt alongside the asset link.

auth?

Auth credentials for an integration — the chosen auth method plus its filled-in parameters (API keys, tokens, …).

embedding?
budget?

Token budget limits for a RAG asset ingestion.

currencyBudget?

Currency-based budget in USD. Mutually exclusive with Fruxon.Model.Assets.CreateAssetRequest.Budget. Requires an embedding model to be configured for price lookup.

autoUpdate?

Describes how an asset should be kept up-to-date. Stored as a nullable JSONB column on the asset entity. When null, auto-update is disabled.

embeddingLLMConfigId?string|null

Optional reference to a tenant-level LLM config for embedding credentials. When set, the published revision's credentials are used instead of Fruxon.Rag.RagEmbeddingConfig.Credentials.

Formatuuid
integrationConfigId?string|null

When set, the asset inherits its source credential from this tenant integration config instead of Fruxon.Model.Assets.CreateAssetRequest.Auth (which is ignored). The config's provider must match the source's IntegrationId.

Formatuuid
[key: string]?never

Response Body

curl -X POST "https://api.fruxon.com/v1/tenants/string/assets" \  -H "Content-Type: application/json" \  -d '{    "config": {}  }'
{
  "asset": {
    "id": "string",
    "displayName": "string",
    "description": "string",
    "type": "string",
    "vectorized": false,
    "config": {
      "sourceType": "string",
      "parameters": {}
    },
    "integrationId": "string",
    "assetLink": "string",
    "createdAt": 0,
    "modifiedAt": 0,
    "autoUpdate": false,
    "autoUpdateConfig": {
      "strategy": "WEBHOOK",
      "provider": "string",
      "externalContext": "string",
      "filter": "string",
      "pollFrequency": "DAILY",
      "pollDay": "string",
      "pollDayOfMonth": 0,
      "pollHour": "string",
      "pollMinute": "string",
      "timezone": "string"
    },
    "lastPolledAt": 0,
    "embeddingLlmConfigId": "string",
    "integrationConfigId": "string",
    "supportsAutoUpdate": false,
    "supportsWebhookRegistration": false,
    "supportsPollSchedule": false,
    "embedding": {
      "provider": "string",
      "model": "string",
      "chunkSize": 0,
      "chunkOverlap": 0
    },
    "budget": {
      "tokenBudget": 0,
      "monthlyTokenBudget": 0,
      "dailyTokenBudget": 0,
      "totalTokenCount": 0,
      "lifetimeTokensUsed": 0,
      "monthlyTokensUsed": 0,
      "dailyTokensUsed": 0,
      "costBudget": 0,
      "monthlyCostBudget": 0,
      "dailyCostBudget": 0,
      "totalCost": 0,
      "monthlyCostUsed": 0,
      "dailyCostUsed": 0,
      "pricePerMillionTokens": 0
    },
    "embeddingStatus": "PENDING",
    "errorCategory": "CREDENTIALS"
  },
  "longOperation": {
    "name": "string",
    "status": "PENDING",
    "resourceName": "string",
    "resourceType": "string",
    "startedAt": 0,
    "completedAt": 0,
    "error": "string",
    "metadata": {}
  },
  "webhook": {
    "id": "string",
    "provider": "string",
    "authMode": "API_KEY",
    "status": "ACTIVE",
    "expiresAt": 0,
    "createdAt": 0,
    "modifiedAt": 0,
    "webhookUrl": "string",
    "signingSecret": "string"
  }
}
{
  "type": "string",
  "title": "string",
  "status": 0,
  "detail": "string",
  "instance": "string",
  "property1": null,
  "property2": null
}
Empty
Empty