INTRODUCTION

Armatis One Documentation

Everything you need to build, launch and operate intelligent customer conversations from one platform.

ONE OPERATING LAYER

How Armatis One works

Armatis One in 90 seconds

See the complete customer journey
01:30

Armatis One is an operating platform for customer service. It connects voice, messaging, email and tickets with AI agents, human teams and business systems. Every conversation shares the same identity, context and operational history.

AI can resolve routine requests autonomously, collaborate with a human agent or hand over the conversation with a complete summary. Teams keep control through policies, approvals, observability and shared quality workflows.

FOUNDATIONS

Core concepts

01

Conversations

A single timeline for every customer interaction, regardless of channel or whether the responder is human or AI.

02

Agents

Configurable AI workers with instructions, knowledge, tools, voice and clear boundaries for autonomous action.

03

Workflows

Reliable sequences that connect customer intent to your systems, approvals and operational outcomes.

CHOOSE YOUR PATH

Start from where you are

PLATFORM

Browse by capability

FOR DEVELOPERS

Make your first API call

Run a published agent through the REST API. Use the API key from Developer Hub and replace the agent ID with your configured agent.

cURL
curl --request POST \
  --url https://api.armatis.one/v1/agents/$AGENT_ID/runs \
  --header 'Authorization: Bearer $ARMATIS_API_KEY' \
  --header 'Content-Type: application/json' \
  --data '{
    "input": "Where is my order?",
    "mode": "sync",
    "channel_context": { "source": "api", "customer_id": "customer_2048" }
  }'

YOUR UI, ARMATIS RUNTIME

Build a custom web or mobile experience

Use the same text, voice, knowledge, tools, ticketing and human handoff runtime without embedding the Armatis widget. Your trusted backend exchanges a workspace API key with widgets:write scope for a short-lived customer grant.

The app uses that grant for REST turns or SSE streaming. Signed identity fields create or update the tenant's Customer 360 record, so custom applications and the hosted widget share one customer history.

1 · Server grant
# Trusted company backend — never expose the workspace key in an app
curl --request POST \
  --url https://api.armatis.one/v1/client/widgets/$WIDGET_KEY/grants \
  --header 'Authorization: Bearer $ARMATIS_API_KEY' \
  --header 'Content-Type: application/json' \
  --data '{
    "external_user_id":"crm-contact-2048",
    "name":"Anna Kowalska",
    "email":"anna@example.com",
    "phone":"+48123123123",
    "locale":"pl"
  }'
2 · App turn
# Browser or native app — use the short-lived grant returned above
curl --request POST \
  --url https://api.armatis.one/v1/client/widgets/$WIDGET_KEY/chat \
  --header 'Authorization: Bearer $CLIENT_GRANT' \
  --header 'Content-Type: application/json' \
  --data '{
    "input":"Gdzie jest moje zamówienie?",
    "session_id":"8a693a87-59d7-4667-a7f1-199bf12ee4e1",
    "history":[]
  }'

Endpoints: read appearance at /config, send at /chat, stream at /chat/stream, and complete with /sessions/{session_id}/end. Configure production browser origins in CORS; native mobile applications are not subject to browser CORS.

OPERATE IN PRODUCTION

Control Center and operational APIs

Platform Control Center combines service health, automation and SLA rules, channel credentials, CRM sync, evaluation suites, active alerts, audit history and a resumable launch checklist. Secrets are encrypted before persistence; API keys should receive only the scopes required by each integration.

Security: local accounts support revocable browser sessions, TOTP MFA and password reset tokens. Workspace policy can require MFA and enforce a shorter session lifetime.

Enterprise delivery: organizations are provisioned and governed centrally by Armatis, while every tenant keeps isolated customer data, channels and AI configuration.

CUSTOMER DATA

Create a CRM contact

Contacts support organizations, activities, follow-up tasks, CSV import and synchronized external IDs.

cURL
curl --request POST \
  --url https://api.armatis.one/v1/crm/contacts \
  --header 'Authorization: Bearer $ARMATIS_API_KEY' \
  --header 'Content-Type: application/json' \
  --data '{"name":"Anna Kowalska","email":"anna@example.com","metadata":{"lifecycle":"lead"}}'

CHANNELS

Normalize an inbound message

Use the callback URL shown next to a connection. Provider-native Meta, Slack, Teams and SMS payloads are normalized automatically; this canonical shape is useful for custom gateways.

cURL
curl --request POST \
  --url https://api.armatis.one/v1/channels/sms/$CONNECTION_ID/webhook \
  --header 'X-Armatis-Channel-Token: $WEBHOOK_SECRET' \
  --header 'Content-Type: application/json' \
  --data '{"sender_id":"+48123123123","conversation_id":"sms-42","message_id":"msg-1","text":"I need help"}'

SIGNED EVENTS

Verify outbound webhooks

Armatis One posts compact JSON with id, type, resource and data. Compute HMAC-SHA256 over the exact raw body with the one-time signing secret and compare it to X-Armatis-Signature. Failed deliveries are retried with exponential backoff and remain visible in Control Center.

Was this page helpful?Help us improve the documentation.