Articles: Search Tool
Usage
All Portia tools using API endpoints that require OAuth are built with plug and play authentication support. They use Portia client credentials including client ID, client name and redirect URL. Such tools will raise a Action Clarification
with an OAuth link as the action URL. The portia.wait_for_ready()
method must be used in this scenario: Portia's OAuth server will listen for the authentication result and resolve the concerned clarification, allowing your plan run to resume again.
For more on this, please visit to the section on running Portia tools (↗).
Configure your Zendesk tools with Portia AI
You will need to provide the subdomain of your Zendesk account to use with Portia AI. This is because Zendesk creates a unique subdomain for each account.
Configure access in Portia AI
- Log into your Portia dashboard ↗
- Navigate to the Manage Org tab.
- Enter the subdomain of your Zendesk account. Your subdomain is the part of your Zendesk URL before the
.zendesk.com
domain. For example, if your Zendesk URL ishttps://portialabs.zendesk.com
, your subdomain isportialabs
.
You are now ready to call Zendesk tools on our cloud!
Tool details
Tool ID: portia:zendesk:help_center:search_articles
Tool description: Returns up to 25 articles relevant to the search query, which must be provided.
Args schema:
{
"description": "Input schema for ZendeskArticleSearchTool.",
"properties": {
"query": {
"description": "The search text to be matched or a search string. Examples: \"carrot potato\", \"'carrot potato'\".",
"title": "Query",
"type": "string"
},
"category": {
"anyOf": [
{
"type": "integer"
},
{
"type": "null"
}
],
"default": null,
"description": "Limit the search to this category id.",
"title": "Category"
},
"section": {
"anyOf": [
{
"type": "integer"
},
{
"type": "null"
}
],
"default": null,
"description": "Limit the search to this section id.",
"title": "Section"
},
"label_names": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"description": "A comma-separated list of label names.",
"title": "Label Names"
},
"locale": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"description": "Search for articles in the specified locale (e.g. en-us). ",
"title": "Locale"
},
"multibrand": {
"anyOf": [
{
"type": "boolean"
},
{
"type": "null"
}
],
"default": null,
"description": "Enable search across all brands if true. Defaults to false if omitted.",
"title": "Multibrand"
},
"brand_id": {
"anyOf": [
{
"type": "integer"
},
{
"type": "null"
}
],
"default": null,
"description": "Search for articles in the specified brand.",
"title": "Brand Id"
},
"created_before": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"description": "Limit the search to articles created before a given date (format YYYY-MM-DD).",
"title": "Created Before"
},
"created_after": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"description": "Limit the search to articles created after a given date (format YYYY-MM-DD).",
"title": "Created After"
},
"created_at": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"description": "Limit the search to articles created on a given date (format YYYY-MM-DD).",
"title": "Created At"
},
"updated_before": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"description": "Limit the search to articles updated before a given date (format YYYY-MM-DD). ",
"title": "Updated Before"
},
"updated_after": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"description": "Limit the search to articles updated after a given date (format YYYY-MM-DD). ",
"title": "Updated After"
},
"updated_at": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"description": "Limit the search to articles updated on a given date (format YYYY-MM-DD). ",
"title": "Updated At"
},
"sort_by": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"description": "One of created_at or updated_at. Defaults to sorting by relevance",
"title": "Sort By"
},
"sort_order": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"description": "One of asc or desc. Defaults to desc",
"title": "Sort Order"
}
},
"required": [
"query"
],
"title": "ZendeskArticleSearchToolSchema",
"type": "object"
}
Output schema:
('application/json', 'application/json: Payload from API')