SerenAI

Pay Per Call Agentic Commerce

UpdatePricingRequest

Request to update pricing config

Properties

PropertyTypeRequiredDescription
asset_id string Yes Asset ID for this pricing config (required)
base_price_per_1000_rows string,null No
grace_period_minutes integer,null No
hourly_rate string,null No
low_balance_threshold string,null No
markup_multiplier string,null No
max_queries_per_minute integer,null No
min_charge string,null No
min_display_price string,null No Minimum price to display in UI for passthrough publishers (informational only)
minimum_balance string,null No
onchain_enabled boolean,null No
payment_expiry_minutes integer,null No
prepaid_enabled boolean,null No
price_per_call string,null No
price_per_delete string,null No
price_per_execution string,null No Price per execution for agent templates or usage-based billing
price_per_get string,null No
price_per_patch string,null No
price_per_post string,null No
price_per_put string,null No
pricing_display_text string,null No Text to display for variable pricing (e.g., "Varies by model")
pricing_model any No
reserve_max_charge string,null No
token_cache_ttl_seconds integer,null No TTL for cached exchanged tokens in seconds (60-86400)
token_exchange_method string,null No HTTP method for exchange endpoint (POST or GET)
token_exchange_mode string,null No How to send Seren token: header, body, or query
token_exchange_url string,null No URL to call for exchanging Seren API keys for publisher auth tokens
token_response_field string,null No JSON field in exchange response containing the token
unresolved_fallback_charge string,null No
View JSON Schema
{
  "type": "object",
  "description": "Request to update pricing config",
  "required": [
    "asset_id"
  ],
  "properties": {
    "asset_id": {
      "type": "string",
      "format": "uuid",
      "description": "Asset ID for this pricing config (required)"
    },
    "base_price_per_1000_rows": {
      "type": [
        "string",
        "null"
      ]
    },
    "grace_period_minutes": {
      "type": [
        "integer",
        "null"
      ],
      "format": "int32"
    },
    "hourly_rate": {
      "type": [
        "string",
        "null"
      ]
    },
    "low_balance_threshold": {
      "type": [
        "string",
        "null"
      ]
    },
    "markup_multiplier": {
      "type": [
        "string",
        "null"
      ]
    },
    "max_queries_per_minute": {
      "type": [
        "integer",
        "null"
      ],
      "format": "int32"
    },
    "min_charge": {
      "type": [
        "string",
        "null"
      ]
    },
    "min_display_price": {
      "type": [
        "string",
        "null"
      ],
      "description": "Minimum price to display in UI for passthrough publishers (informational only)"
    },
    "minimum_balance": {
      "type": [
        "string",
        "null"
      ]
    },
    "onchain_enabled": {
      "type": [
        "boolean",
        "null"
      ]
    },
    "payment_expiry_minutes": {
      "type": [
        "integer",
        "null"
      ],
      "format": "int32"
    },
    "prepaid_enabled": {
      "type": [
        "boolean",
        "null"
      ]
    },
    "price_per_call": {
      "type": [
        "string",
        "null"
      ]
    },
    "price_per_delete": {
      "type": [
        "string",
        "null"
      ]
    },
    "price_per_execution": {
      "type": [
        "string",
        "null"
      ],
      "description": "Price per execution for agent templates or usage-based billing"
    },
    "price_per_get": {
      "type": [
        "string",
        "null"
      ]
    },
    "price_per_patch": {
      "type": [
        "string",
        "null"
      ]
    },
    "price_per_post": {
      "type": [
        "string",
        "null"
      ]
    },
    "price_per_put": {
      "type": [
        "string",
        "null"
      ]
    },
    "pricing_display_text": {
      "type": [
        "string",
        "null"
      ],
      "description": "Text to display for variable pricing (e.g., \"Varies by model\")"
    },
    "pricing_model": {
      "oneOf": [
        {
          "type": "null"
        },
        {
          "$ref": "#/components/schemas/PricingModel"
        }
      ]
    },
    "reserve_max_charge": {
      "type": [
        "string",
        "null"
      ]
    },
    "token_cache_ttl_seconds": {
      "type": [
        "integer",
        "null"
      ],
      "format": "int32",
      "description": "TTL for cached exchanged tokens in seconds (60-86400)"
    },
    "token_exchange_method": {
      "type": [
        "string",
        "null"
      ],
      "description": "HTTP method for exchange endpoint (POST or GET)"
    },
    "token_exchange_mode": {
      "type": [
        "string",
        "null"
      ],
      "description": "How to send Seren token: header, body, or query"
    },
    "token_exchange_url": {
      "type": [
        "string",
        "null"
      ],
      "description": "URL to call for exchanging Seren API keys for publisher auth tokens"
    },
    "token_response_field": {
      "type": [
        "string",
        "null"
      ],
      "description": "JSON field in exchange response containing the token"
    },
    "unresolved_fallback_charge": {
      "type": [
        "string",
        "null"
      ]
    }
  }
}