Enter the code from your authenticator app, or one of your one-time recovery codes.
Set up two-factor authentication. Add KYRA to an authenticator app (Microsoft Authenticator, Google Authenticator, 1Password, Authy…), then enter the 6-digit code it shows.
Or enter this key manually
…
Save your recovery codes. Each works once if you lose your authenticator. They won’t be shown again.
Configure how KYRA connects with your IT service management platforms. Manage integrations, instances, and ticket priority mappings.
Ticket priority (ITIL Impact × Urgency)
When on, KYRA judges Impact and Urgency from the conversation and sets each ticket's priority from this matrix — instead of guessing. Applies across all your customers.
Loading…
Known errors (KEDB)
Record recurring issues that already have a workaround. KYRA checks these first and offers the fix before raising a ticket. Applies across all your customers.
Loading…
Service catalogue & request types
When on, KYRA tags every ticket as an incident (something broken) or a service request (a standard ask). List your standard offerings below so it recognises them. Applies across all your customers.
PSA ticket management, company and contact lookup.
NOT CONNECTED
HaloPSA
Full PSA integration — OAuth2 client credentials.
NOT CONNECTED
Jira Service Management
Atlassian-based ticket management via API token.
COMING SOON
Autotask
Datto Autotask PSA integration.
NOT CONNECTED
NinjaOne
Ticketing — OAuth2 client credentials.
Automation & webhooks
Rewst-ready
Fire KYRA events to any automation platform as they happen — point this at a Rewst trigger URL (or any HTTPS endpoint) and each event starts a workflow. Requests are signed X-Kyra-Signature: sha256=… with your secret. The reverse direction — Rewst calling KYRA as a step — uses the Public API.
Events to send
Connected instances
Manage and monitor your integration instances.
ConnectWise—
Name
Server
Company ID
Actions
Loading...
HaloPSA—
Name
URL
Actions
Loading...
NinjaOne—
Name
Region URL
Actions
Loading...
Jira Service Management—
Name
Site URL
Account
Actions
Loading...
IT Documentation—
Name
Platform
URL
Actions
Loading...
CIPP (M365 posture)—
Name
CIPP URL
Actions
Loading...
Billing
Manage your subscription and payment details.
Loading...
Knowledge Base
Manage KB articles for this customer.
Loading...
Analytics
Usage, tickets, satisfaction, and feature adoption across your customers.
—
Tickets this month
—
Messages this month
—
Active users this month
—
CSAT score
—
AI resolution rate
—
Avg turns / conversation
Tickets per month
Loading…
Messages per month
Loading…
Most common interactions
Loading…
Feature adoption
Loading…
CSAT by customer
Loading…
Tickets by customer
Loading…
Activity Log
A record of all changes made to your account by your admin users.
When
Action
By
Customer
Charges agreed
Loading…
Users & roles
People who can log in to your KYRA portal, and what each of them can do.
Roles:Global admin — full access, incl. billing, MSP settings and user management ·
Customer admin — manage customers, KB, approvers, channels, live support ·
Support agent — live support queue only ·
Read-only viewer — see everything, change nothing
Sign-in security
Password sign-in requires an authenticator app (MFA) — every user sets one up on their first password login. Sign in with Microsoft is covered by your Microsoft MFA instead. If you'd rather everyone used Microsoft only, turn off password sign-in below (only do this once your team can sign in with Microsoft, or you'll lock people out).
Name
Email
Role
Status
Added
Loading…
Your own roles
If the four built-in roles don't fit how your team is organised, define your own — pick what each area allows, and optionally limit it to certain customers.
Loading…
KPI targets
Set a monthly target for any tile. The tile shows a 🎯 chip that turns green when the target is met. Leave a field blank to remove its target.
Custom reports
Build your own scheduled report — pick a customer, the sections you want, a cadence and who receives it. Uses the same figures as the client report.
New report
Sections
New role
What this role can do
Anything left as No access is hidden from them, and blocked server-side even if they know the address. Everyone can always see their own account and raise a KYRA support request.
Area
No access
View only
Can change
Which customers
Leave All customers selected unless this role should only handle certain clients. A limited role can't see the others at all — not in lists, not by address.
Portal branding
Your name and logo in place of KYRA's, for everyone in your MSP.
Portal Branding GROWTH
This brands this KYRA bot portal — your name and logo replace KYRA's in the header for everyone in your MSP. It does not affect ConnectWise, HaloPSA, NinjaOne, Jira or any other third-party portal.
Teams support channel
Route live-support requests into your own engineers' Teams channel.
Engineers' Teams support channel
When a customer needs a person, KYRA posts a claimable card into your own Teams channel so any engineer can pick it up and talk to the customer from Teams — you never have to be in the loop.
Loading…
Add KYRA to your Teams: download the app below, then in Teams go to Apps → Manage your apps → Upload an app → Upload a custom app and add it to your engineers' channel. (One-off; your Teams admin may need to allow custom-app upload.)
Connect the channel: generate a code below and post @KYRA register <code> in that channel.
Marketplace
Switch on the channels, integrations and add-ons you need — the rest stays out of your way.
Integration
API access
Keys for your own dashboards and tools to read KYRA data.
API access
Issue API keys so your own dashboards and tools can read customers, usage and incidents — and trigger announcements — through KYRA's public API (/api/v1). Keys are shown once at creation and are rate-limited to 120 requests/minute. See Help centre → Public API.
Loading…
Connect KYRA as an MCP server
Add KYRA to an AI agent (Claude, or any Model-Context-Protocol client) as a custom MCP server. The agent can then read your customers, usage, KPI metrics and incidents — and trigger announcements — using an API key from above. Same Bearer-key auth and 120 req/min limit as the REST API; no new access is granted.
Requests that require MSP or customer-admin sign-off before an action runs.
Requested
Customer
Type
Summary
Requested by
Status
Decision
Loading…
Channels
Connect KYRA to messaging platforms so your clients can raise IT requests anywhere.
Loading channels...
Scheduled announcements
Send a message to your customers' end users now or on a repeat. If a scheduled send is missed (the app was asleep, or you disabled it for a while) KYRA sends the next one due — it never fires a backlog at your users.
Applies to the customers you tick below. Times are your browser's local time.
Planned maintenance windows
Tell end users about planned work, and KYRA sends the all-clear automatically when it finishes. While a window is open the bot knows about it — it will say the work is expected and give the finish time, rather than troubleshooting it as a fault. This is not the same as pausing a bot: KYRA keeps answering throughout, and unrelated problems are still handled normally.
KYRA Support
Get help from the KYRA team.
KYRA Support access
Let the KYRA support team securely view your account to help with an issue. Access is view-only by default, expires automatically after 72 hours, and you can revoke it at any time. Every support session is recorded in your Activity log.
Loading…
Error detail requests
When something goes wrong, KYRA support sees the error and which of your customers it affected — but never your users' names or their conversations. If they need the full detail to fix it, they'll request time-boxed access here for you to approve.
Help improve KYRA — share failed chats
When KYRA can't resolve a chat (it errors, or can't answer), you can share it with the KYRA team so we can make the bot better. We only receive these once you switch this on. The question and a short transcript are stored encrypted, and end-user names, emails and IDs are stripped. Turn it off any time.
Support tickets
Raise and track support requests with the KYRA team directly from here.
Loading…
Service Desk
Your own service-desk settings — how KYRA represents you to end users, and how it tracks SLAs and incidents across your customers.
Your service desk contact info
KYRA shares this with end users when they ask how to escalate an issue or contact you directly, or ask about out-of-hours support. Applies to every one of your customers.
Ticket logging
Choose how much of KYRA's own activity is logged to your PSA. Applies to every customer. A user who explicitly asks KYRA to raise a ticket is always honoured, whatever you pick here.
Technician Copilot
When KYRA raises a ticket it couldn't resolve, it drafts a suggested resolution for the engineer — grounded in the customer's knowledge base / IT Glue / Hudu docs and similar resolved tickets, never the public web — and posts it as a private note on the ticket (never shown to the end user). Advisory only; KYRA never runs the steps. Off by default; can be overridden per customer on their page.
SLA tracking & breach alerts
KYRA checks every connected customer's PSA every 15 minutes and warns you before open tickets breach their resolution target. Set the target hours per priority — leave a target at 0 to ignore that priority.
At-risk tickets
Open tickets approaching or past their SLA target, per customer — refreshed automatically every 15 minutes.
Loading…
Proactive incident detection
KYRA watches for spikes of similar tickets across your customers. If the same type of issue is raised several times in a short window, it flags a possible incident so you can get ahead of a wider outage.
Detected incidents
Clusters of similar tickets detected recently, per customer.
Loading…
Major-incident comms
Declare a known major incident (an outage you're already aware of). KYRA broadcasts the status to the affected customers' end users in Teams and Slack, and — while it's open — tells anyone who reports the same issue that it's a known incident instead of raising a duplicate ticket.
Loading…
Incidents
Loading…
Customer satisfaction (CSAT)
After KYRA raises a ticket it asks the end user "Was this chat helpful?" (👍 / 👎) in Teams and Slack. Ratings roll up here and into your Analytics & ROI report.
Recent ratings
Loading…
Customer Communications
Reusable message copy for launch, adoption, maintenance and incident comms — edit a template, then use it in a broadcast, announcement or incident notice.
Compose & send
or schedule for
For planned-maintenance windows and major-incident comms (with bot-awareness), use Service Desk → Incidents. Email templates below are copy-and-send from your own mail.
Loading templates…
Variables (fill them in when you send): {customerName}{botName}{mspName}{supportEmail}{date}
Live Handoff
When KYRA is struggling, it offers to bring a human in. Claim a chat here and talk to the user in real time — your replies appear in their Teams/Slack.
Waiting & active
Select a conversation on the left to view it. Waiting chats can be claimed; active ones you can reply to.
✨ KYRA copilot
Chat audit log
Every past live chat — who handled it and how it ended.
Ended
Customer
User
Channel
Handled by
Outcome
Loading…
Business-service links
Useful URLs KYRA shares with users across all your customers (e.g. Payroll, VPN, Office 365). Add customer-specific links on each customer's page.
Loading…
Help & guides
Step-by-step how-tos, feature guides and troubleshooting for KYRA.
Ticket QA
AI quality review across all your customers' closed tickets.
Loading…
New template
Chat transcript
Live chats handled
QA detail
Grant admin consent
Before KYRA can be deployed to this customer's Microsoft Teams, their IT admin must approve the app permissions in their Microsoft tenant.
How it works: Copy the link below and send it to the customer's IT admin. They open it, sign in with a Global Administrator account, and click Accept. Once approved, return here and click Deploy to Teams.
Permissions requested: User.Read.All, Directory.Read.All, AppCatalog.ReadWrite.All — read-only except for Teams app installation.
Add customer
Step 1 of 3 — Company & Plan
Type the customer's domain and we'll look up their Microsoft 365 tenant ID automatically.
Auto-filled from the domain above, or find it in Azure Portal → Entra ID → Overview → Tenant ID.
Plan
White-label branding
#2a6be4
Step 2 of 3 — Messaging Channels
Choose which channels this customer will use to interact with KYRA. You can change this later from the customer settings.
Projects are polled live from Jira — pick one (the value is the project key), or type a key. Issue types are polled too.
Select a board to load its ticket types.
Documentation (IT-docs AI)
Pulls knowledge / how-to articles from IT Glue or Hudu so the bot answers from — and links to — the customer’s own docs. KYRA reads knowledge articles only, never passwords or secret assets.
Which organization/company in the platform maps to this customer.
Advanced
Comma-separated, used for device lookup
Maps email domains to languages (nl = Dutch)
Account-status gate
Checks the customer's account status in the connected PSA. Supported for ConnectWise (company status) and HaloPSA (client active/inactive). If the status can't be read, support is allowed (fails open). Jira has no account-hold concept, so this isn't shown for Jira.
A friendly label — e.g. "EU Instance" or "Main ConnectWise"
Short name used to log into ConnectWise (e.g. "acmecorp").
CW → System → Members → API member → API Keys → Public Key.
Shown only once when the key is created.
✓ API keys are saved. Leave the fields above blank to keep existing credentials, or paste new keys to replace them.
Auto-generated — do not edit
Add HaloPSA instance
Create under HaloPSA → Configuration → Integrations → HaloPSA API → Applications.
Add documentation platform
IT Glue: https://api.itglue.com (US) or https://api.eu.itglue.com (EU).
IT Glue: Account → Settings → API Keys. Hudu: Admin → API. A read-only key is enough.
🔒 KYRA ingests knowledge / how-to articles only — never passwords, secrets or configuration assets — and treats every article as untrusted reference data.
Connect CIPP
Your CIPP front-end/API address (self-hosted Function App or CIPP-hosted).
🔒 Read-only. KYRA reads CIPP’s Best-Practice Analyser and standards to show posture — it never applies standards or changes tenants. M365 changes stay in KYRA’s own approval-gated flow.
Add NinjaOne instance
Create under NinjaOne → Administration → Apps → API.
Add Jira instance
Generate at id.atlassian.com → Security → API tokens.
Add KB article
Comma-separated — helps the AI match user questions
Tip: write like you're talking to a stressed-out employee — plain language, short steps, no jargon.
Copy KB article
Strips names, domains, emails, hostnames and ticket refs so the article is safe to reuse. Review the result below before copying.
Starter KB library
Generic articles maintained by the KYRA team. Copy one into your own KB — it becomes an independent article you can edit freely.
Loading...
Add a link
Invite a user
We'll email them a link to set their own password. Choose what they're allowed to do.
Add approver
They'll be emailed (and Slack-DMed, if their Slack ID is set) whenever an action for this customer needs approval.
Design partner agreement
Confirm
Confirm customer addition
Adding a customer adjusts your subscription immediately. Here's what changes:
Current monthly
—
Due today
—
New monthly
—
⚠
No active subscription. You can add customers, but you'll need to set up billing before they can be billed. Set up billing →
White-label Slack credentials
Enter your Slack App's Bot Token and Signing Secret. You'll find these in your Slack App's settings at api.slack.com/apps.
Set up white-label Slack
Step 1 of 3 — Create your app
api.slack.com/apps — Create an App
How would you like to create your app?
From scratch
Configure manually
From an app manifest
Paste your config JSON
← Pick this
We've pre-built your app's manifest with the correct bot name, scopes, and event URL. Copy it, then paste it into Slack's app creator.
Install your app to your workspace to start using it.
Your workspace
Authorize app for this workspace
After creating the app in Slack, you'll land on the Install App page in the left sidebar. Click Install to Workspace and approve the permissions.
Can't see Install App? Make sure you've already clicked Create on the manifest review screen. The Install App option only appears after the app is created.
OAuth & Permissions
Bot User OAuth Token
xoxb-tokenxoxb-…
← Bot Token
Basic Information
App Credentials
Signing SecretShow ▸
← Signing Secret
Copy each value from your new app's settings and paste them below.
Deploy ARIA to Microsoft Teams
Your Teams app package has downloaded. Follow these steps to install it in your customer's Microsoft 365 tenant.
Installation steps
1
Sign in to the customer's Teams Admin Center
Use a Global Admin or Teams Administrator account for the customer tenant — not your own MSP account.
Navigate to Teams apps → Manage apps, then click Upload new app → Upload and select the zip file you just downloaded.
📁 File to upload: customer-ARIA-teams-app.zip
3
Allow the app for users
Go to Teams apps → Permission policies. In the Global (Org-wide default) policy, set Custom apps to Allow all apps (or allow the specific ARIA app). This lets users find and install it.
Go to Teams apps → Setup policies → Global, click Add apps, search for KYRA and pin it to the Teams sidebar. Users won't need to search for it.
ℹFirst-time consent: When a user first messages ARIA, Microsoft Teams will show a consent screen asking the user to approve ARIA's access to their profile. This is a one-time step per user and is expected behaviour.
🍪 Cookie & Storage Notice
This portal uses essential storage (authentication tokens, session data) required for the service to function.
With your consent we also collect anonymised usage analytics to improve the platform.
See our Privacy Policy for details.