Managed knowledge infrastructure
One layer over every system you already have.
Your records and your documentation, joined into context an AI can actually reason over — so it answers the questions that today need a person to open five tabs. No system replaced. Nothing to build.
- free to start
- no card
- your first answer today
The question
Can we turn on SSO for our team?
One record, one document, two different systems. Neither contains the answer.
[1]Billing · recordplan: Team Annual seats: 240 sso_entitlement: false renews: 2027-03-01
account-4471
[2]Help centreSAML SSO is available on Business and Enterprise plans. Team plans use email and password, with optional two-factor.
Single sign-on setup
The fact the graph holds
Team Annualexcludes →SAML SSO
confidence 0.93
- account-4471
- Single sign-on setup
The answer
Not on your current plan — account 4471 is on Team Annual1, and SAML SSO starts at Business2. On Team you can turn on two-factor instead, or move to Business to enable SAML2.
Your CRM does not know how SSO works. Your help centre does not know what this account pays for. The answer needs one fact from each, and it exists in neither.
The problem
Your systems are each right. The gaps between them aren't.
Nobody has a knowledge problem because nobody wrote anything down. They wrote it all down — in six different applications, in two different shapes.
The facts and the explanations live in different apps
Who the customer is, what they bought, what they are entitled to — records, in your CRM and your billing system. How any of it actually works — prose, in your docs, tickets and courses. A real question needs one of each, and no single system holds both.
The same fact lives in five places and nothing says which is right
Pricing is in the billing system, on the pricing page, in a sales deck and in two help articles. Roadmaps ship daily now, so those copies drift apart faster than anyone can reconcile them by hand.
Nothing connects them at the moment someone asks
Distribution is not the problem — each of those systems is purpose-built and correct for its own domain. The problem is that when a customer actually asks, there is no unified view, so a person assembles the answer by hand or gets it wrong.
Where teams put it
Four questions that need more than one of your systems.
If you recognise one of these, you already know whether this is for you. Every one of them is a real question somebody at your company asks out loud, and every one needs two answers joined together.
Product and platform teams
“Can we turn on SSO for our team?”
Your product answers questions instead of returning links.
A question field inside your own application that comes back with prose and footnotes your user can open — knowing both what that user is entitled to and how the thing actually works.
Today: Ten blue links into your own documentation, and a support ticket when they do not help.
Answers in your productSupport and customer success
“Why was this customer charged twice after they changed plan mid-cycle?”
The whole account, the policy and the past cases, in one answer.
An agent asks in their own words and gets the answer with every source attached — the billing record, the policy that governs it, and the three tickets where this came up before.
Today: Open the CRM, open billing, search the help centre, search old tickets, then ask in Slack.
Support that resolvesLearning and enablement teams
“Do I need to finish the security module before the deployment lab?”
A library that answers across itself.
Learners ask one question; the answer lives in a concept from one course, a procedure from another, and what they are actually licensed for. It comes back as one answer citing the specific lessons.
Today: Course-by-course search, which cannot see that one course is a prerequisite for another.
Customer educationRevenue, operations and new hires
“What do we tell a prospect who asks where their data is stored?”
Everyone answers like the person who has been here longest.
One place to ask across the wiki, the deal notes, the tickets and the courses at once — so the answer stops depending on knowing who to ask.
Today: A message to the one person who knows, and a wait until they are out of a meeting.
Internal enablement
What changes
Three things start working.
Nobody assembles the answer by hand
Today someone opens the CRM, then the docs, then a ticket, and stitches the three together. That is the job that disappears — and the answer stops depending on whoever happened to know where to look.
You can put it in front of a customer
Because every claim links to the document behind it, an answer becomes something you can ship rather than something you have to go and double-check. That is the whole difference between an internal experiment and a feature.
You find out what you haven't written
It says when it does not know. Those questions accumulate, in the exact words real people used, and that list is a content roadmap nobody had to commission a survey to get.
Why it works
Trustworthy. In your control. Built to last.
Three claims, each one something you can check rather than something you have to believe.
Trustworthy
Every answer shows its work.
You see the documents behind every claim and how many of them agree — so you can check an answer in seconds rather than going away to verify it. And it tells you plainly when your content does not cover the question.
Read moreIn your control
Your team decides what it understands.
Rename things, merge the six words your teams use for one concept, drop what turned out to be noise. Every change shows its impact before you make it, and nothing is ever deleted — so you can always change your mind.
Read moreBuilt to last
Your content stays yours.
Everything we hold is content you sent us, and the whole system can be rebuilt from it. No proprietary format to escape from, no store whose loss costs you the work of processing it again.
Read more
What it finds
The question almost never uses the same words as the document that answers it.
So a search here is not looking for your phrase. It is looking for the answer, which is usually somewhere your phrase does not appear.
the one people notice first
Documents that never used your words
You ask about renewal; your content says uplift, true-up, escalator. It reaches those anyway, because it has read enough of your content to know they are the same conversation.
the reason it exists
Facts spread over several documents
When the answer is half in one system and half in another, it comes back as one answer with both halves cited — rather than as two results and a job for you.
not just the ones that match
The documents that back a claim up
A passage supporting the point, rather than a passage that happens to resemble the phrase you typed. When several of your documents say the same thing, you see all of them.
And none of it can make your search worse. The plain, literal search always runs at full strength underneath. Everything above only ever adds to it — on a question where it finds nothing to add, you still get an ordinary good result rather than an error or an empty page.
Ask it something hard
Watch the connections light up.
A question no single system can answer, resolved across all of them — and every claim arrives with the source behind it. This is a taste. The real thing runs it on your content.
One question
Does this account's plan include the instructor-led lab?
The answer, with its receipts
The account is on the Professional plan1, which includes the certification track but not the instructor-led lab inside it2 — that lab is a Premium add-on, billed separately3.
- [1]Salesforce — Account record
- [2]Plan Entitlements Matrix
- [3]Course Catalogue 2026
- CRM
- Entitlements
- Catalogue
- Billing
One question, drawn from a real trace. On your own content it does this live — which is the only way to really feel it.
Why you can trust it
Every answer shows its work.
Not one source — all of them, and which system each came from. When a wiki page, a support ticket and a course all say the same thing, you see three, and you can open any of them.
- You can check it in seconds — which is the difference between an answer you act on and an answer you go away and verify.
- You can see when something is thin. One source behind a claim looks different from five, and the interface tells you which you are looking at.
- You can see which system each source came from — the billing record and the help article side by side. We do not quietly pick a winner between them, and we do not yet flag the disagreement for you either: that call is yours, with the evidence in front of you.
Asserted by
- 0.95 confidence
Q3 Retention Review
notion
- 0.88 confidence
Support Themes 2026
zendesk
- 0.81 confidence
Activation Playbook v4
lms_content
The part nobody else does
It tells you when it doesn't know.
Which is the only reason you can believe it when it does.
Most AI search will answer anything you put to it. That is a design choice, and it is the wrong one for a system whose answers you intend to show someone. GRaaS is built to say plainly that your content does not cover a question — and we test for it, using questions we know the content cannot answer, scored so that answering them counts as a failure.
An answer may say only what a source you gave us says. Where those sources run out, so does the answer — and it tells you that is what happened, rather than reaching for what the model happens to know about the world.
Control
Your team decides what the system understands.
Most systems make you name your categories on day one, before you have seen what is actually in your content — and then make changing your mind so expensive that nobody ever does.
It learns as it reads
Every new kind of thing it finds in your content gets recorded. That list is an honest picture of what you actually have, rather than what you assumed when you set it up.always on, never edited
Your team curates a version
Rename things. Merge the six words your teams use for one concept. Drop the ones that turned out to be noise. Nothing you do here touches your content until you say so.a draft, not a live edit
See the cost before you pay it
Before anything changes, you are told exactly how much of your content each change would affect. Not a warning dialog — a number, per change.an impact report, not a confirmation
Change your mind freely
Nothing is ever deleted, so any change can be undone. And when your content moves on past your vocabulary, you are told it has gone stale — before your answers do.the reason people actually curate
What you learn
The questions are worth as much as the answers.
Every question anyone asks is kept. Most teams find this is the part they did not know they needed.
What people actually ask
Every question is kept, in the words it was asked in. The gap between what you thought your users wanted and what they type is usually a surprise.
What your content misses
Questions it could not answer, listed. That is your content roadmap, and it costs nothing to collect.
Why an answer was what it was
Open any past question and see which documents were found, how, and what the answer was built from. Most bad answers turn out to be explainable.
Whether it is getting better
How much of your content is connected up, how well it is holding together, and how much of it bridges more than one of your systems — the number that tells you the join is real.
Connecting it
Two calls. No migration, no crawler, nothing of yours to connect.
You send us content. That is the whole integration — which also makes the security conversation short: we hold nothing you did not hand us, and we cannot reach anything you did not.
Most teams wire this into whatever already fires when their content changes. Sending the same document twice replaces it rather than duplicating it, so retries and backfills are safe by default.
curl -X POST https://api.graas.ai/v1/ingest \
-H "x-api-key: $GRAAS_KEY" \
-H "content-type: application/json" \
-d '{
"sourceSlug": "billing",
"externalId": "account-4471",
"title": "Account 4471 — Team Annual",
"textContent": "Plan: Team Annual. Seats: 240.
SSO entitlement: false. Renews: 2027-03-01."
}'
# 202 Accepted
# { "documentId": "...", "externalId": "account-4471",
# "status": "extracting", "chunksCreated": 1,
# "statusUrl": "/v1/ingest/.../status" }curl -X POST https://api.graas.ai/v1/search \
-H "x-api-key: $GRAAS_KEY" \
-H "content-type: application/json" \
-d '{ "query": "does onboarding reduce churn?" }'What we can show you, and what we can't.
Graph expansion contributes to 201 of 231 question runs on our evaluation corpus. What it demonstrably adds is the connection no single document states, the evidence trail behind every answer, and a vocabulary you can govern — all three checkable on your own content in an afternoon.
What we have not been able to show, on the question sets we can currently score, is that it answers a question ordinary search missed. We are not going to dress that up, and it is why the trial is fourteen days on the graph tier rather than a demo call — the three things above are the ones to go and check.
If your customers will be behind it
Built for putting your customers behind it.
The first thing anyone will ask is how your customers are kept apart. They are kept apart by a wall, not a filter.
A wall, not a filter
Each of your customers gets their own space, and there is no query that reaches across. Not a field everyone has to remember to filter on — an actual boundary.
Keys you control
Issue as many as you need, each limited to reading or writing. Rotate or revoke them yourself, without asking us.
Your identity system
Single sign-on, directory sync, and removing someone ends their access immediately rather than whenever their session happens to expire.
The demo is a taste. Your content is the real thing.
Free to start, no card, no call. Point it at a slice of your own content, ask it the question your current search gets wrong, and see the connections light up in an afternoon.
- no card required
- first workspace is free
- your content stays yours