A parts dealer has maintained an FAQ page and a helpdesk with text snippets for years. They contain the right answers — and some that have been wrong since the last change in shipping. Pouring everything into the agent at once would be fast and dangerous.
The import is therefore deliberately two-stage: everything is read in as a draft, and the approved selection does not change in the process. An answer becomes effective only when someone approves it — an import can never silently change what the agent says.
| Surface | Roles |
|---|---|
| Sales agent | Parts trading, Vehicle trading, Workshop |
What this case requires
- A created profile. The knowledge base belongs to a profile; without a
profileIdthere is nowhere for the entries to go. - The answers as question-answer pairs. Running text from a page has to be split into pairs beforehand.
- A person who approves. Approval is the actual work step, not the import.
- The willingness to trim. The instruction has an upper bound; not every old answer fits.
The sequence
The table names the responsible call per stage and what exists afterwards. The reasoning for why a stage cannot be skipped follows below it.
| Stage | Call | What exists afterwards |
|---|---|---|
| Read the current set | GET /agent/profiles/{profileId}/faq | entryCount, approvedCount and faqCompiledChars |
| Import | POST /agent/profiles/{profileId}/faq/import | up to 200 entries, always as drafts — imported and skipped reported separately |
| Approve | PUT /agent/profiles/{profileId}/faq/{entryId} | status approved; faqDropped names what no longer fits the instruction |
| Delete what is outdated | DELETE /agent/profiles/{profileId}/faq/{entryId} | deleted and the new instruction length in faqCompiledChars |
| Update the profile | PUT /agent/setup/profiles/{profileId} | changed questionnaire answers without recreating the profile |
Why each stage is needed
- Read the current set.
GET /agent/profiles/{profileId}/faqreturns the entries with theirstatus, plusentryCount,approvedCountandfaqCompiledChars. Knowing before the import how much is already approved and how much room the instruction has left makes the import more targeted. - Import.
POST /agent/profiles/{profileId}/faq/importtakes up to 200 entries withquestion,answerandlanguage— always as drafts. The response reportsimportedandskippedseparately and lists anything notable inwarnings. - Approve.
PUT /agent/profiles/{profileId}/faq/{entryId}setsstatustoapproved,rejectedor back todraft, and allows correcting question and answer first. The response namesfaqDropped: if an entry no longer fits the instruction, you are told instead of guessing. - Delete what is outdated.
DELETE /agent/profiles/{profileId}/faq/{entryId}removes an entry and reports the new instruction length infaqCompiledChars. Deleting is maintenance here, not loss: every wrong answer removed is one the agent can no longer give. - Update the profile.
PUT /agent/setup/profiles/{profileId}updates the profile from changed questionnaire answers without recreating it. When the knowledge base shows that tone, shipping rules or permissions have changed, that belongs in the profile and not just in an FAQ entry.
curl -X POST \
-H 'X-Api-Key: <API_KEY>' \
-H 'Content-Type: application/json' \
-d '{"entries":[{"question":"Versenden Sie auch nach Österreich?","answer":"Ja, innerhalb von zwei Werktagen nach Zahlungseingang.","language":"de","status":"draft"}]}' \
'https://api.tapinomahub.com/hub/index.php/agent/profiles/<profileId>/faq/import'What you end up with
What remains is a knowledge base in which every answer the agent gives was explicitly approved once, and a profile that matches it. The import was fast; approval was the work — and it is the reason the result can be trusted.
Where to find this in the documentation
The binding field lists, error codes and sample responses live in this surface’s OpenAPI contract at docs.tapinomahub.com (tapinoma-agent). All use cases arranged by surface and role: overview of the use cases.
Sources and legal references
Frequently asked
Does the agent use imported answers immediately?
No. An import always creates drafts, and the approved selection stays unchanged. An entry takes effect only on approval.
How many entries can I import at once?
Up to 200 per import. Larger sets are read in over several imports.
What does faqDropped mean?
That approved entries no longer fit the instruction. Instead of truncating them silently, the response names the number — then you decide what matters more.
