New

The playground: play against Orion Compass and try four business cases with real API calls, no key needed.Read more

Serenity Edge

Examples

Real responses, route by route

Six requests to the Serenity Edge API with their responses as they arrived: a summary, an invoice read, a ticket triaged, sentences compared, results ranked and personal data masked.

Real API responses, generated on 14 October 2026. This page makes no live calls.

When you create a Serenity Star account you get a welcome credit to try the chat models.

The decision, embeddings, rerank and redaction routes need a Serenity Edge API key.How to get one

Chat: summarising an email

Orion Plus summarises a customer email in three points, with a system message that sets the language and tone.

Route
POST /v1/chat/completions
Model
orion-plus
Tokens
81 input and 66 output

Request

{
  "model": "orion-plus",
  "messages": [
    {
      "role": "system",
      "content": "Reply in English, briefly and professionally."
    },
    {
      "role": "user",
      "content": "Summarise this email in three bullet points: 'Hi, order 8812 arrived with two damaged boxes. I need replacements before Friday because we have a trade fair on Saturday. If that is not possible, I would rather have a refund for those two boxes.'"
    }
  ],
  "max_tokens": 200,
  "temperature": 0.3
}

Response

  • Issue: Order 8812 arrived with two damaged boxes.
  • Request: Urgent replacement of the damaged items is required before Friday to meet a Saturday trade fair deadline.
  • Alternative: If replacements cannot be delivered by Friday, a refund for the two boxes is requested.

OCR: reading an invoice

PaddleOCR-VL 1.6 receives the image of an invoice with the task prompt “OCR:” and returns its text, keeping the layout of the table.

Route
POST /v1/chat/completions
Model
paddleocr-vl-1.6
Tokens
1,243 input and 178 output

Request

Sample invoice no. 2026-0418 to Talleres Ribera, S.L., with three line items, subtotal, VAT and total.
Image sent
{
  "model": "paddleocr-vl-1.6",
  "messages": [
    {
      "role": "user",
      "content": [
        {
          "type": "image_url",
          "image_url": {
            "url": "data:image/png;base64,…"
          }
        },
        {
          "type": "text",
          "text": "OCR:"
        }
      ]
    }
  ],
  "max_tokens": 1024
}

The base64 image is omitted from the request.

Response

INVOICE No. 2026-0418
Date: 14/10/2026  Due: 13/11/2026
Customer: Talleres Ribera, S.L. VAT ID ESB12345678

Description                          Qty          Price          Amount
Preventive maintenance                2          180.00      360.00
Filter replacement                 6          24.50      147.00
Call-out fee                       1          45.00      45.00

Subtotal                            552.00
VAT 21 %                            115.92
TOTAL (EUR) 667.92

Decisions: triaging a ticket

Preview

Orion Compass answers three questions about a support ticket in a single call: whether it asks for a refund, which team should handle it and how urgent it is. Every answer comes with its probability.

Route
POST /v1/decisions
Model
orion-compass
Tokens
348 input

Request

{
  "model": "orion-compass",
  "input": "Ticket 4821. Customer: You charged me twice for the same order last week. Refund the duplicate charge today or I will dispute it with my bank.",
  "questions": [
    {
      "type": "predicate",
      "name": "refund",
      "instructions": "Is the customer asking for a refund?"
    },
    {
      "type": "choice",
      "name": "team",
      "instructions": "Which team should handle the ticket?",
      "choices": [
        {
          "value": "billing",
          "description": "Payments, charges and refunds"
        },
        {
          "value": "logistics",
          "description": "Shipping and deliveries"
        },
        {
          "value": "technical",
          "description": "Problems with the app"
        }
      ]
    },
    {
      "type": "score",
      "name": "urgency",
      "instructions": "How urgent is the ticket?",
      "levels": [
        {
          "value": 1,
          "label": "low"
        },
        {
          "value": 2,
          "label": "normal"
        },
        {
          "value": 3,
          "label": "high"
        },
        {
          "value": 4,
          "label": "critical"
        }
      ]
    }
  ]
}

Response

Ticket 4821. Customer: You charged me twice for the same order last week. Refund the duplicate charge today or I will dispute it with my bank.

refundYes or no

Is the customer asking for a refund?

  • Yes (most likely)99.9%
  • No0.1%

teamOne choice

Which team should handle the ticket?

  • billing (most likely)99.9%
  • logistics< 0.1%
  • technical< 0.1%

urgencyScale

How urgent is the ticket?

  • low0.6%
  • normal9.9%
  • high (most likely)61.8%
  • critical27.8%

Embeddings: sentence similarity

Qwen3 Embedding 0.6B turns three customer questions into vectors. The first two ask the same thing in different words and sit much closer to each other than to the third.

Route
POST /v1/embeddings
Model
qwen3-embedding-0.6b
Tokens
33 input

Request

{
  "model": "qwen3-embedding-0.6b",
  "input": [
    "How do I change the delivery address?",
    "I want to change where my order is delivered.",
    "What are your customer service hours?"
  ]
}

Response

Texts

  1. 1How do I change the delivery address?
  2. 2I want to change where my order is delivered.
  3. 3What are your customer service hours?

1,024 dimensions per vector

Cosine similarity, computed from the returned vectors

  • Texts 1 and 20.846
  • Texts 1 and 30.388

Rerank: the best answer to a question

Qwen3 Reranker 0.6B orders four help texts by their relevance to a customer question and returns the best three.

Route
POST /v1/rerank
Model
qwen3-reranker-0.6b
Tokens
89 input, estimated from characters

Request

{
  "model": "qwen3-reranker-0.6b",
  "query": "How do I return an order?",
  "documents": [
    "The return period is 30 days from delivery.",
    "Our customer service hours are 9:00 to 18:00.",
    "To return an order, request the label from your account and drop the parcel off at any collection point.",
    "Deliveries to the Canary Islands take 3 to 5 working days."
  ],
  "top_n": 3
}

Response

Query: How do I return an order?

The most relevant, in order

  1. 1

    To return an order, request the label from your account and drop the parcel off at any collection point.

    relevance 0.9995
  2. 2

    The return period is 30 days from delivery.

    relevance 0.0102
  3. 3

    Our customer service hours are 9:00 to 18:00.

    relevance 0.0031

Left out of the results

  • Deliveries to the Canary Islands take 3 to 5 working days.

Redaction: personal data masked

Privacy Filter finds the name, email address, phone number and IBAN in a message and replaces them with labels, so the text can be processed without that data.

Route
POST /v1/redact
Model
privacy-filter(default)
Tokens
34 input, estimated from characters

Request

{
  "inputs": "Hi, I'm Emma Clarke. You can email me at [email protected] or call me on +44 7700 900123. My IBAN is GB29 NWBK 6016 1331 9268 19."
}

Response

Text sent, with the data found

Hi, I'm Emma ClarkePerson. You can email me at [email protected]Email or call me on +44 7700 900123Phone. My IBAN is GB29 NWBK 6016 1331 9268 19Account number.

Text returned

Hi, I'm [PERSON]. You can email me at [EMAIL] or call me on [PHONE]. My IBAN is [ACCOUNT_NUMBER].

Try it with your own code

Change the base URL and send these same requests from your application.