product.get
Show the connected productThe product AskBase browses for a help centre: its address, when it was last explored, whether it's working, and the latest run's progress. The login itself is never returned.
Read only keyread-only
Input schema and example
curl -X POST https://askbase.com/api/v1/ops/product.get \
-H "Authorization: Bearer $ASKBASE_API_KEY" \
-H "Content-Type: application/json" \
-d '{"kbId":"…"}'{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"type": "object",
"properties": {
"kbId": {
"type": "string",
"format": "uuid",
"pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"
}
},
"required": [
"kbId"
]
}product.connect
Connect a product for AskBase to browseGive AskBase a login to the product so it can sign in, walk the screens read-only, and screenshot them for the help centre. Use a dedicated demo account. The password is sealed so only the browser service can read it. Replaces any existing connection.
Not available to keys
Input schema
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"type": "object",
"properties": {
"kbId": {
"type": "string",
"format": "uuid",
"pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"
},
"appUrl": {
"type": "string",
"minLength": 4,
"description": "Where the app lives, e.g. https://app.acme.com"
},
"loginUrl": {
"description": "The sign-in page, if different",
"type": "string"
},
"username": {
"type": "string",
"minLength": 1
},
"password": {
"type": "string",
"minLength": 1
},
"notes": {
"type": "string",
"maxLength": 1000
},
"excludePatterns": {
"description": "Parts of addresses never to visit, e.g. /admin",
"maxItems": 20,
"type": "array",
"items": {
"type": "string"
}
},
"allowChanges": {
"description": "Let AskBase save changes while recording tasks (use a test account)",
"type": "boolean"
}
},
"required": [
"kbId",
"appUrl",
"username",
"password"
]
}product.browse
Capture the product nowSign in to the connected product and capture it: map its screens (screenshots update in place, changed screens are described again), then work out the tasks customers most need to see done, from the screens, the confirmed facts and the existing articles, and do each step by step with a screenshot of every step. Each task becomes a suggested change, and its steps are offered to other articles that show them. Set screensOnly to just refresh the screens, as the weekly run does.
Propose changes key
Input schema and example
curl -X POST https://askbase.com/api/v1/ops/product.browse \
-H "Authorization: Bearer $ASKBASE_API_KEY" \
-H "Content-Type: application/json" \
-d '{"kbId":"…"}'{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"type": "object",
"properties": {
"kbId": {
"type": "string",
"format": "uuid",
"pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"
},
"screensOnly": {
"type": "boolean"
}
},
"required": [
"kbId"
]
}product.screens
List the product's screensEvery screen AskBase found in the product: its name and purpose, the controls on it, how to reach it, when it last changed, whether the team hid it, and a screenshot address that stays current. Its capture key (screen:<id>) is what capture.hide and capture.addToArticle take.
Read only keyread-only
Input schema and example
curl -X POST https://askbase.com/api/v1/ops/product.screens \
-H "Authorization: Bearer $ASKBASE_API_KEY" \
-H "Content-Type: application/json" \
-d '{"kbId":"…"}'{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"type": "object",
"properties": {
"kbId": {
"type": "string",
"format": "uuid",
"pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"
}
},
"required": [
"kbId"
]
}product.remove
Disconnect the productDelete the stored login, every screen and every screenshot. Articles keep their text.
Not available to keysdestructive
Input schema
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"type": "object",
"properties": {
"kbId": {
"type": "string",
"format": "uuid",
"pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"
}
},
"required": [
"kbId"
]
}walkthrough.start
Record a walkthrough of one taskDo one named task in the product step by step, with screenshots, and write it up as a suggested change.
Propose changes key
Input schema and example
curl -X POST https://askbase.com/api/v1/ops/walkthrough.start \
-H "Authorization: Bearer $ASKBASE_API_KEY" \
-H "Content-Type: application/json" \
-d '{"kbId":"…","goal":"…"}'{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"type": "object",
"properties": {
"kbId": {
"type": "string",
"format": "uuid",
"pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"
},
"goal": {
"type": "string",
"minLength": 8,
"maxLength": 200
},
"articleId": {
"type": "string",
"format": "uuid",
"pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"
}
},
"required": [
"kbId",
"goal"
]
}walkthrough.list
Walkthroughs recordedRecent walkthroughs: the task, how far each got, how it ended, and the suggested change it became.
Read only keyread-only
Input schema and example
curl -X POST https://askbase.com/api/v1/ops/walkthrough.list \
-H "Authorization: Bearer $ASKBASE_API_KEY" \
-H "Content-Type: application/json" \
-d '{"kbId":"…"}'{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"type": "object",
"properties": {
"kbId": {
"type": "string",
"format": "uuid",
"pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"
}
},
"required": [
"kbId"
]
}walkthrough.get
Show a recorded task, step by stepOne walkthrough: the task, how it ended, the suggested change it became, and every step with what was done and its screenshot (focused on the control used). Each step's capture key (step:<walkthrough>:<n>) is what capture.hide and capture.addToArticle take.
Read only keyread-only
Input schema and example
curl -X POST https://askbase.com/api/v1/ops/walkthrough.get \
-H "Authorization: Bearer $ASKBASE_API_KEY" \
-H "Content-Type: application/json" \
-d '{"id":"…"}'{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"type": "object",
"properties": {
"id": {
"type": "string",
"format": "uuid",
"pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"
}
},
"required": [
"id"
]
}walkthrough.redo
Record a task again, with a noteRecord a walkthrough's task again, telling AskBase what to do differently ("Videos are under Library", "Stop after choosing the file"). The note guides the plan and every step. The new one replaces the old.
Propose changes key
Input schema and example
curl -X POST https://askbase.com/api/v1/ops/walkthrough.redo \
-H "Authorization: Bearer $ASKBASE_API_KEY" \
-H "Content-Type: application/json" \
-d '{"id":"…","note":"…"}'{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"type": "object",
"properties": {
"id": {
"type": "string",
"format": "uuid",
"pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"
},
"note": {
"type": "string",
"minLength": 3,
"maxLength": 1000
}
},
"required": [
"id",
"note"
]
}walkthrough.writeUp
Write a recorded task up from the steps keptWrite a walkthrough up as a suggested change from its steps that aren't hidden, even if the run stopped short or was judged not to have done the task. Replaces its write-up still waiting for review.
Propose changes keyslow
Input schema and example
curl -X POST https://askbase.com/api/v1/ops/walkthrough.writeUp \
-H "Authorization: Bearer $ASKBASE_API_KEY" \
-H "Content-Type: application/json" \
-d '{"id":"…"}'{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"type": "object",
"properties": {
"id": {
"type": "string",
"format": "uuid",
"pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"
}
},
"required": [
"id"
]
}walkthrough.delete
Delete a recorded taskDelete a walkthrough and its screenshots. Its write-up, if still waiting for review, is closed, and its pictures come out of other suggested changes still waiting. Published articles keep what they show.
Propose changes keydestructive
Input schema and example
curl -X POST https://askbase.com/api/v1/ops/walkthrough.delete \
-H "Authorization: Bearer $ASKBASE_API_KEY" \
-H "Content-Type: application/json" \
-d '{"id":"…"}'{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"type": "object",
"properties": {
"id": {
"type": "string",
"format": "uuid",
"pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"
}
},
"required": [
"id"
]
}product.setNotes
Set notes on using the productNotes for every capture, one per line: how the product is used, what to ignore ("Ignore the Getting started panel", "New things are made from the + button"). Read when planning tasks and at every step.
Propose changes key
Input schema and example
curl -X POST https://askbase.com/api/v1/ops/product.setNotes \
-H "Authorization: Bearer $ASKBASE_API_KEY" \
-H "Content-Type: application/json" \
-d '{"kbId":"…","notes":"…"}'{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"type": "object",
"properties": {
"kbId": {
"type": "string",
"format": "uuid",
"pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"
},
"notes": {
"type": "string",
"maxLength": 2000
}
},
"required": [
"kbId",
"notes"
]
}product.hideInScreenshots
Keep parts of the product out of screenshotsSections to hide before every screenshot, one per entry: the text a section shows (its heading, e.g. "Get started with Acme"), whose panel is hidden, or a CSS selector. For banners and onboarding panels the built-in tidying doesn't recognise. Applies from the next capture.
Propose changes key
Input schema and example
curl -X POST https://askbase.com/api/v1/ops/product.hideInScreenshots \
-H "Authorization: Bearer $ASKBASE_API_KEY" \
-H "Content-Type: application/json" \
-d '{"kbId":"…","entries":[]}'{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"type": "object",
"properties": {
"kbId": {
"type": "string",
"format": "uuid",
"pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"
},
"entries": {
"maxItems": 20,
"type": "array",
"items": {
"type": "string",
"maxLength": 200
}
}
},
"required": [
"kbId",
"entries"
]
}product.allowChanges
Let AskBase save changes while recordingWhether AskBase may save changes in the connected account while recording walkthroughs (best with a test account): with it, tasks are done all the way through; without, each stops at the first save. It never deletes, cancels, pays or signs out either way.
Not available to keys
Input schema
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"type": "object",
"properties": {
"kbId": {
"type": "string",
"format": "uuid",
"pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"
},
"allow": {
"type": "boolean"
}
},
"required": [
"kbId",
"allow"
]
}capture.list
List everything captured of the productEvery picture AskBase has of the product, whichever way it was taken: the screens it mapped and each step of the tasks it recorded, with what each shows. Hidden ones only when asked for.
Read only keyread-only
Input schema and example
curl -X POST https://askbase.com/api/v1/ops/capture.list \
-H "Authorization: Bearer $ASKBASE_API_KEY" \
-H "Content-Type: application/json" \
-d '{"kbId":"…"}'{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"type": "object",
"properties": {
"kbId": {
"type": "string",
"format": "uuid",
"pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"
},
"hidden": {
"type": "boolean"
}
},
"required": [
"kbId"
]
}capture.hide
Hide a screenshot of the product, or bring it backHide a screen or a walkthrough step that isn't worth showing: it's no longer offered for articles or used in drafts, and it comes out of suggested changes still waiting for review. Published articles keep what they show. A hidden screen stays hidden when captured again. hidden: false brings it back.
Propose changes key
Input schema and example
curl -X POST https://askbase.com/api/v1/ops/capture.hide \
-H "Authorization: Bearer $ASKBASE_API_KEY" \
-H "Content-Type: application/json" \
-d '{"kbId":"…","key":"…","hidden":true}'{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"type": "object",
"properties": {
"kbId": {
"type": "string",
"format": "uuid",
"pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"
},
"key": {
"type": "string",
"maxLength": 100
},
"hidden": {
"type": "boolean"
}
},
"required": [
"kbId",
"key",
"hidden"
]
}capture.addToArticle
Add screenshots of the product to an articlePut chosen screenshots (screens or walkthrough steps, by capture key) into an existing article, each after the step it shows and focused on that step's control, without changing the words. The result is a suggested change to review; suggestionId is null when none of them shows a step the article has.
Propose changes keyslow
Input schema and example
curl -X POST https://askbase.com/api/v1/ops/capture.addToArticle \
-H "Authorization: Bearer $ASKBASE_API_KEY" \
-H "Content-Type: application/json" \
-d '{"kbId":"…","articleId":"…","keys":[]}'{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"type": "object",
"properties": {
"kbId": {
"type": "string",
"format": "uuid",
"pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"
},
"articleId": {
"type": "string",
"format": "uuid",
"pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"
},
"keys": {
"minItems": 1,
"maxItems": 8,
"type": "array",
"items": {
"type": "string",
"maxLength": 100
}
}
},
"required": [
"kbId",
"articleId",
"keys"
]
}