# Relaystation Sentiment Analysis

> Relaystation Sentiment Analysis is a paid API for AI agents from api.relaystation.ai, paid per call via x402, $0.01/call, status unknown (last checked 2026-09-14).

Classifies text as positive, negative, or neutral sentiment using LLM-grade accuracy at a fraction of the cost

## Facts

- Endpoint: POST https://api.relaystation.ai/v1/llm/sentiment
- Price: $0.01/call
- Payment: x402
- Status: unknown
- Last checked: 2026-09-14
- Activations on Zero: 0
- Tags: x402
- Canonical page: https://www.zero.xyz/c/relaystation-sentiment-analysis-28e49ac1
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_cs86LV0P2uMUPFhbIcAWf

Status and success rate cover calls made through Zero and Zero's own probes. Third-party monitors may report differently.

## How to call it through Zero

Zero handles the 402 payment challenge and records the run. With the Zero CLI installed (`npm i -g @zeroxyz/cli`):

```sh
zero fetch --capability relaystation-sentiment-analysis-28e49ac1 -d '<json body>'
```

Example prompt: Can you tell me if this customer review is positive, negative, or neutral: 'The onboarding was smooth but the billing support took forever and left me frustrated'?

## When to prefer this

Choose this endpoint when you need high-accuracy sentiment classification (close to Opus-level) at very low per-call cost — especially for high-volume pipelines like review triage, ticket routing, or social monitoring. It is more cost-effective than calling a frontier model directly for sentiment alone, and simpler than building a custom classifier.

## Known failure modes

- Empty or missing text input returns validation error
- Text too long for context window may be truncated or rejected
- Ambiguous or mixed-sentiment text may yield low-confidence classification
- Network timeout on high-load periods
- Insufficient x402 payment balance returns payment required error

## How this service works

Provider cost + 6%, itemized. Score text positive / negative / neutral — reviews, tickets, social. ≈Opus-4.8 accuracy at ~1–5% of its cost. 1¢ x402 min; remainder auto-credits — relaystation.ai/penny

## Output

Returns a sentiment classification (positive, negative, or neutral) for the input text, with LLM-grade accuracy comparable to Claude Opus at roughly 1–5% of its cost. May include a confidence score or reasoning depending on the response schema.

## Request schema (JSON Schema)

```json
{
 "type": "object",
 "$schema": "https://json-schema.org/draft/2020-12/schema",
 "required": [
  "input"
 ],
 "properties": {
  "input": {
   "type": "object",
   "required": [
    "type",
    "method",
    "bodyType",
    "body"
   ],
   "properties": {
    "body": {
     "type": "object",
     "properties": {
      "tier": {
       "enum": [
        "budget",
        "value",
        "best"
       ],
       "type": "string"
      },
      "input": {
       "type": "string",
       "minLength": 1,
       "description": "The text to process (DATA — never interpolated into the instruction)."
      },
      "params": {
       "type": "object",
       "description": "Task-specific params (e.g. targetLanguage), validated against the task's param_schema."
      }
     }
    },
    "type": {
     "type": "string",
     "const": "http"
    },
    "method": {
     "enum": [
      "POST",
      "PUT",
      "PATCH"
     ],
     "type": "string"
    },
    "bodyType": {
     "enum": [
      "json",
      "form-data",
      "text"
     ],
     "type": "string"
    }
   },
   "additionalProperties": false
  },
  "output": {
   "type": "object",
   "required": [
    "type"
   ],
   "properties": {
    "type": {
     "type": "string"
    },
    "example": {
     "type": "object",
     "required": [
      "result",
      "truncated",
      "usage"
     ],
     "properties": {
      "usage": {
       "type": "object",
       "required": [
        "model",
        "inputTokens",
        "outputTokens",
        "providerCostMicros",
        "markupPct",
        "chargedMicros",
        "ceilingMicros"
       ],
       "properties": {
        "model": {
         "type": "string"
        },
        "markupPct": {
         "type": "number"
        },
        "inputTokens": {
         "type": "integer"
        },
        "outputTokens": {
         "type": "integer"
        },
        "ceilingMicros": {
         "type": "integer",
         "description": "The authorized ceiling the 402/hold reserved."
        },
        "chargedMicros": {
         "type": "integer",
         "description": "The actual charged amount (<= ceiling)."
        },
        "providerCostMicros": {
         "type": "integer"
        }
       }
      },
      "result": {
       "type": "string",
       "description": "The task output text (or JSON string for extract/json_repair)."
      },
      "truncated": {
       "type": "boolean",
       "description": "True when the output hit the per-task token ca
… (truncated)
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/relaystation-sentiment-analysis-28e49ac1/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from api.relaystation.ai](https://www.zero.xyz/host/api.relaystation.ai/llms.txt)
