# String Switch

> Run String Switch by infsh online or via API. Pay per run, no setup.

**URL:** https://inference.sh/apps/infsh/string-switch
**Last updated:** 2025-08-28

---

Compares strings to decide which of two inputs to use.

- app: `infsh/string-switch`
- maker: [infsh](https://inference.sh/apps/infsh.md)
- category: [other](https://inference.sh/apps/category/other.md)
- runs via: api, javascript and python sdk, belt cli, mcp

## string-switch API Guide

### About
compares strings to decide which of two inputs to use.

### 1. Calling the API

#### Install the Client

```bash
pip install inferencesh
```

#### Setup Your API Key
Set `INFERENCE_API_KEY` as an environment variable. Get your key from settings → api keys.

```bash
export INFERENCE_API_KEY="inf_your_key"
```

#### Run and Get Result

```python
import os
from inferencesh import inference

client = inference(api_key=os.environ["INFERENCE_API_KEY"])


result = client.run({
        "app": "infsh/string-switch@05szrbmp",
        "input": {
            "left_operand": "left_operand",
            "operator": "==",
            "right_operand": "right_operand",
            "true_value": "true_value",
            "false_value": "false_value"
        }
    })

print(result["output"])
```

#### Stream Live Updates

```python
import os
from inferencesh import inference

client = inference(api_key=os.environ["INFERENCE_API_KEY"])


## stream=True yields updates as they arrive
for update in client.run({
        "app": "infsh/string-switch@05szrbmp",
        "input": {
            "left_operand": "left_operand",
            "operator": "==",
            "right_operand": "right_operand",
            "true_value": "true_value",
            "false_value": "false_value"
        }
    }, stream=True):
    if update.get("progress"):
        print(f"progress: {update['progress']}%")
    if update.get("output"):
        print(f"output: {update['output']}")
```

### 2. Authentication
The API uses API keys for authentication. See the authentication docs for detailed setup instructions.

### 3. Files

#### Automatic Upload

```python
## local file paths are automatically uploaded
result = client.run({
    "app": "infsh/string-switch@05szrbmp",
    "input": {
        "image": "/path/to/local/image.png",  # detected & uploaded
        "audio": "https://example.com/audio.mp3",  # url passed through
    }
})
```

#### Manual Upload

```python
## upload and get a hosted URL
file = client.files.upload("/path/to/file.png")
print(file.uri)  # https://cloud.inference.sh/...
```

### 4. Schema

#### Input
- **left_operand** (string) *required*: The left side string of the comparison (condition value)
- **operator** (string) *required*: The string comparison operator to use
- **right_operand** (string) *required*: The right side string of the comparison (value to check against)
- **true_value** (any) *required*: The value to return if the condition is true
- **false_value** (any) *required*: The value to return if the condition is false

#### Output
- **result** (any): The selected value based on the string condition evaluation

## other other apps

- [Google Analytics](https://inference.sh/apps/google/analytics.md): from $0.00000277/sec
- [Google Search Console](https://inference.sh/apps/google/search-console.md): from $0.00000277/sec
- [HTTP Request](https://inference.sh/apps/infsh/http.md): from $0.00000277/sec
- [FID Score](https://inference.sh/apps/eval/fid-score.md): from $0.00055833/sec
- [CLIPScore](https://inference.sh/apps/eval/clipscore.md): from $0.00055833/sec

## faq

### how much does String Switch cost?

you pay per run from your inference shell credits, and the app shows its cost before each run. no subscription is required.

### how do I run String Switch via api?

call infsh/string-switch with the javascript or python sdk, the rest api, or `belt app run infsh/string-switch` from a terminal. the api reference on this page lists every input.

### who makes String Switch?

String Switch is made by infsh and runs on inference shell. every infsh app is listed at https://inference.sh/apps/infsh.

### can my agent use String Switch?

yes. agents call it as a tool through the inference shell mcp server (https://api.inference.sh/mcp), the belt cli or the sdk, and pay per run like you do.

### what are the alternatives to String Switch?

other other apps on inference shell include Google Analytics, Google Search Console, HTTP Request, FID Score. they run through the same api, so switching is a one-line change.
