268 lines
20 KiB
JSON
268 lines
20 KiB
JSON
{
|
|
"name": "SearchAccounts",
|
|
"fully_qualified_name": "PylonApi.SearchAccounts@0.1.0",
|
|
"description": "Search and filter accounts using various criteria.\n\nThis tool allows searching and filtering of accounts with specific criteria such as domains, tags, name, external IDs, and custom fields. It supports operators like 'contains', 'equals', 'in', 'not_in', and others, enabling detailed account queries.",
|
|
"toolkit": {
|
|
"name": "PylonApi",
|
|
"description": null,
|
|
"version": "0.1.0"
|
|
},
|
|
"input": {
|
|
"parameters": [
|
|
{
|
|
"name": "account_search_criteria",
|
|
"required": false,
|
|
"description": "JSON object specifying pagination, filters, and limit. Includes cursor, filter details like field, operator, value(s), and limit for number of accounts.",
|
|
"value_schema": {
|
|
"val_type": "json",
|
|
"inner_val_type": null,
|
|
"enum": null,
|
|
"properties": {
|
|
"cursor": {
|
|
"val_type": "string",
|
|
"inner_val_type": null,
|
|
"enum": null,
|
|
"properties": null,
|
|
"inner_properties": null,
|
|
"description": "The cursor to use for pagination."
|
|
},
|
|
"filter": {
|
|
"val_type": "json",
|
|
"inner_val_type": null,
|
|
"enum": null,
|
|
"properties": {
|
|
"field": {
|
|
"val_type": "string",
|
|
"inner_val_type": null,
|
|
"enum": null,
|
|
"properties": null,
|
|
"inner_properties": null,
|
|
"description": "The field for this filter. For allowed fields, see the documentation for\n\nthe specific endpoint you are using.\n\nFor non-compound filters (any operators other than \"and\" or \"or\"),\n\nField must be set, along with either Value or Values, depending on the operator."
|
|
},
|
|
"operator": {
|
|
"val_type": "string",
|
|
"inner_val_type": null,
|
|
"enum": [
|
|
"equals",
|
|
"not_equals",
|
|
"contains",
|
|
"does_not_contain",
|
|
"in",
|
|
"not_in",
|
|
"and",
|
|
"or",
|
|
"time_is_after",
|
|
"time_is_before",
|
|
"time_range",
|
|
"string_contains",
|
|
"string_does_not_contain",
|
|
"is_set",
|
|
"is_unset"
|
|
],
|
|
"properties": null,
|
|
"inner_properties": null,
|
|
"description": "The operator for this filter.\n\n* equals FilterOperatorEquals Matches objects that are exactly equal to the value in the field.\n\n* not_equals FilterOperatorNotEquals Matches objects that are not exactly equal to the value in the field.\n\n* contains FilterOperatorContains For a multi-valued field, such as tags, this operator will match objects that contain any of the values in the field.\n\n* does_not_contain FilterOperatorDoesNotContain For a multi-valued field, such as tags, this operator will match objects that do not contain any of the values in the field.\n\n* in FilterOperatorIn Matches objects if the field is one of several possible values, as specified in the values array.\n\n* not_in FilterOperatorNotIn Matches objects if the field is none of several possible values, as specified in the values array.\n\n* and FilterOperatorAnd Matches objects only if all subfilters match.\n\n* or FilterOperatorOr Matches objects if any subfilter matches.\n\n* time_is_after FilterOperatorTimeIsAfter Matches objects if the field is after the given time.\n\n* time_is_before FilterOperatorTimeIsBefore Matches objects if the field is before the given time.\n\n* time_range FilterOperatorTimeRange Matches objects if the field is between the given times.\n\n* string_contains FilterOperatorStringContains Matches objects if the field contains the given string.\n\n* string_does_not_contain FilterOperatorStringDoesNotContain Matches objects if the field does not contain the given string.\n\n* is_set FilterOperatorIsSet FilterOperatorIsSet matches objects if the field is set.\n\n* is_unset FilterOperatorIsUnset FilterOperatorIsUnset matches objects if the field is unset."
|
|
},
|
|
"subfilters": {
|
|
"val_type": "array",
|
|
"inner_val_type": "json",
|
|
"enum": null,
|
|
"properties": null,
|
|
"inner_properties": {},
|
|
"description": "Sub-filters for this filter. Valid only when operator is \"and\" or \"or\".\n\nThe maximum allowed depth for a tree of filters is 3."
|
|
},
|
|
"value": {
|
|
"val_type": "string",
|
|
"inner_val_type": null,
|
|
"enum": null,
|
|
"properties": null,
|
|
"inner_properties": null,
|
|
"description": "The value for this filter. Only used for single-valued operators\n\n(\"equals\", \"not_equals\", \"contains\", \"does_not_contain\")"
|
|
},
|
|
"values": {
|
|
"val_type": "array",
|
|
"inner_val_type": "string",
|
|
"enum": null,
|
|
"properties": null,
|
|
"inner_properties": null,
|
|
"description": "The values for this filter. Only used for multi-valued operators (\"in\", \"not_in\")."
|
|
}
|
|
},
|
|
"inner_properties": null,
|
|
"description": null
|
|
},
|
|
"limit": {
|
|
"val_type": "integer",
|
|
"inner_val_type": null,
|
|
"enum": null,
|
|
"properties": null,
|
|
"inner_properties": null,
|
|
"description": "The number of accounts to fetch. Defaults to 100. Must be greater than 0 and less than 1000."
|
|
}
|
|
},
|
|
"inner_properties": null,
|
|
"description": ""
|
|
},
|
|
"inferrable": true,
|
|
"http_endpoint_parameter_name": "requestBody"
|
|
}
|
|
]
|
|
},
|
|
"output": {
|
|
"description": "Response from the API endpoint 'SearchAccounts'.",
|
|
"available_modes": [
|
|
"value",
|
|
"error",
|
|
"null"
|
|
],
|
|
"value_schema": {
|
|
"val_type": "json",
|
|
"inner_val_type": null,
|
|
"enum": null,
|
|
"properties": null,
|
|
"inner_properties": null,
|
|
"description": null
|
|
}
|
|
},
|
|
"requirements": {
|
|
"authorization": null,
|
|
"secrets": [
|
|
{
|
|
"key": "PYLON_SECRET_TOKEN"
|
|
}
|
|
],
|
|
"metadata": null
|
|
},
|
|
"deprecation_message": null,
|
|
"metadata": {
|
|
"object_type": "api_wrapper_tool",
|
|
"version": "1.1.0",
|
|
"description": "Tools that enable LLMs to interact directly with the pylon API."
|
|
},
|
|
"http_endpoint": {
|
|
"metadata": {
|
|
"object_type": "http_endpoint",
|
|
"version": "1.2.0",
|
|
"description": ""
|
|
},
|
|
"url": "https://api.usepylon.com/accounts/search",
|
|
"http_method": "POST",
|
|
"headers": {},
|
|
"parameters": [
|
|
{
|
|
"name": "requestBody",
|
|
"tool_parameter_name": "account_search_criteria",
|
|
"description": "",
|
|
"value_schema": {
|
|
"val_type": "json",
|
|
"inner_val_type": null,
|
|
"enum": null,
|
|
"properties": {
|
|
"cursor": {
|
|
"val_type": "string",
|
|
"inner_val_type": null,
|
|
"enum": null,
|
|
"properties": null,
|
|
"inner_properties": null,
|
|
"description": "The cursor to use for pagination."
|
|
},
|
|
"filter": {
|
|
"val_type": "json",
|
|
"inner_val_type": null,
|
|
"enum": null,
|
|
"properties": {
|
|
"field": {
|
|
"val_type": "string",
|
|
"inner_val_type": null,
|
|
"enum": null,
|
|
"properties": null,
|
|
"inner_properties": null,
|
|
"description": "The field for this filter. For allowed fields, see the documentation for\n\nthe specific endpoint you are using.\n\nFor non-compound filters (any operators other than \"and\" or \"or\"),\n\nField must be set, along with either Value or Values, depending on the operator."
|
|
},
|
|
"operator": {
|
|
"val_type": "string",
|
|
"inner_val_type": null,
|
|
"enum": [
|
|
"equals",
|
|
"not_equals",
|
|
"contains",
|
|
"does_not_contain",
|
|
"in",
|
|
"not_in",
|
|
"and",
|
|
"or",
|
|
"time_is_after",
|
|
"time_is_before",
|
|
"time_range",
|
|
"string_contains",
|
|
"string_does_not_contain",
|
|
"is_set",
|
|
"is_unset"
|
|
],
|
|
"properties": null,
|
|
"inner_properties": null,
|
|
"description": "The operator for this filter.\n\n* equals FilterOperatorEquals Matches objects that are exactly equal to the value in the field.\n\n* not_equals FilterOperatorNotEquals Matches objects that are not exactly equal to the value in the field.\n\n* contains FilterOperatorContains For a multi-valued field, such as tags, this operator will match objects that contain any of the values in the field.\n\n* does_not_contain FilterOperatorDoesNotContain For a multi-valued field, such as tags, this operator will match objects that do not contain any of the values in the field.\n\n* in FilterOperatorIn Matches objects if the field is one of several possible values, as specified in the values array.\n\n* not_in FilterOperatorNotIn Matches objects if the field is none of several possible values, as specified in the values array.\n\n* and FilterOperatorAnd Matches objects only if all subfilters match.\n\n* or FilterOperatorOr Matches objects if any subfilter matches.\n\n* time_is_after FilterOperatorTimeIsAfter Matches objects if the field is after the given time.\n\n* time_is_before FilterOperatorTimeIsBefore Matches objects if the field is before the given time.\n\n* time_range FilterOperatorTimeRange Matches objects if the field is between the given times.\n\n* string_contains FilterOperatorStringContains Matches objects if the field contains the given string.\n\n* string_does_not_contain FilterOperatorStringDoesNotContain Matches objects if the field does not contain the given string.\n\n* is_set FilterOperatorIsSet FilterOperatorIsSet matches objects if the field is set.\n\n* is_unset FilterOperatorIsUnset FilterOperatorIsUnset matches objects if the field is unset."
|
|
},
|
|
"subfilters": {
|
|
"val_type": "array",
|
|
"inner_val_type": "json",
|
|
"enum": null,
|
|
"properties": null,
|
|
"inner_properties": {},
|
|
"description": "Sub-filters for this filter. Valid only when operator is \"and\" or \"or\".\n\nThe maximum allowed depth for a tree of filters is 3."
|
|
},
|
|
"value": {
|
|
"val_type": "string",
|
|
"inner_val_type": null,
|
|
"enum": null,
|
|
"properties": null,
|
|
"inner_properties": null,
|
|
"description": "The value for this filter. Only used for single-valued operators\n\n(\"equals\", \"not_equals\", \"contains\", \"does_not_contain\")"
|
|
},
|
|
"values": {
|
|
"val_type": "array",
|
|
"inner_val_type": "string",
|
|
"enum": null,
|
|
"properties": null,
|
|
"inner_properties": null,
|
|
"description": "The values for this filter. Only used for multi-valued operators (\"in\", \"not_in\")."
|
|
}
|
|
},
|
|
"inner_properties": null,
|
|
"description": null
|
|
},
|
|
"limit": {
|
|
"val_type": "integer",
|
|
"inner_val_type": null,
|
|
"enum": null,
|
|
"properties": null,
|
|
"inner_properties": null,
|
|
"description": "The number of accounts to fetch. Defaults to 100. Must be greater than 0 and less than 1000."
|
|
}
|
|
},
|
|
"inner_properties": null,
|
|
"description": ""
|
|
},
|
|
"accepted_as": "body",
|
|
"required": false,
|
|
"deprecated": false,
|
|
"default": null,
|
|
"documentation_urls": []
|
|
}
|
|
],
|
|
"documentation_urls": [],
|
|
"secrets": [
|
|
{
|
|
"arcade_key": "PYLON_SECRET_TOKEN",
|
|
"parameter_name": "Authorization",
|
|
"accepted_as": "header",
|
|
"formatted_value": "Bearer {authorization}",
|
|
"description": "",
|
|
"is_auth_token": false
|
|
}
|
|
],
|
|
"request_body_spec": "{\n \"content\": {\n \"application/json\": {\n \"schema\": {\n \"properties\": {\n \"cursor\": {\n \"description\": \"The cursor to use for pagination.\",\n \"type\": \"string\",\n \"x-go-name\": \"Cursor\"\n },\n \"filter\": {\n \"properties\": {\n \"field\": {\n \"description\": \"The field for this filter. For allowed fields, see the documentation for\\n\\nthe specific endpoint you are using.\\n\\nFor non-compound filters (any operators other than \\\"and\\\" or \\\"or\\\"),\\n\\nField must be set, along with either Value or Values, depending on the operator.\",\n \"type\": \"string\",\n \"x-go-name\": \"Field\"\n },\n \"operator\": {\n \"description\": \"The operator for this filter.\\n\\n* equals FilterOperatorEquals Matches objects that are exactly equal to the value in the field.\\n\\n* not_equals FilterOperatorNotEquals Matches objects that are not exactly equal to the value in the field.\\n\\n* contains FilterOperatorContains For a multi-valued field, such as tags, this operator will match objects that contain any of the values in the field.\\n\\n* does_not_contain FilterOperatorDoesNotContain For a multi-valued field, such as tags, this operator will match objects that do not contain any of the values in the field.\\n\\n* in FilterOperatorIn Matches objects if the field is one of several possible values, as specified in the values array.\\n\\n* not_in FilterOperatorNotIn Matches objects if the field is none of several possible values, as specified in the values array.\\n\\n* and FilterOperatorAnd Matches objects only if all subfilters match.\\n\\n* or FilterOperatorOr Matches objects if any subfilter matches.\\n\\n* time_is_after FilterOperatorTimeIsAfter Matches objects if the field is after the given time.\\n\\n* time_is_before FilterOperatorTimeIsBefore Matches objects if the field is before the given time.\\n\\n* time_range FilterOperatorTimeRange Matches objects if the field is between the given times.\\n\\n* string_contains FilterOperatorStringContains Matches objects if the field contains the given string.\\n\\n* string_does_not_contain FilterOperatorStringDoesNotContain Matches objects if the field does not contain the given string.\\n\\n* is_set FilterOperatorIsSet FilterOperatorIsSet matches objects if the field is set.\\n\\n* is_unset FilterOperatorIsUnset FilterOperatorIsUnset matches objects if the field is unset.\",\n \"enum\": [\n \"equals\",\n \"not_equals\",\n \"contains\",\n \"does_not_contain\",\n \"in\",\n \"not_in\",\n \"and\",\n \"or\",\n \"time_is_after\",\n \"time_is_before\",\n \"time_range\",\n \"string_contains\",\n \"string_does_not_contain\",\n \"is_set\",\n \"is_unset\"\n ],\n \"type\": \"string\",\n \"x-go-enum-desc\": \"equals FilterOperatorEquals Matches objects that are exactly equal to the value in the field.\\nnot_equals FilterOperatorNotEquals Matches objects that are not exactly equal to the value in the field.\\ncontains FilterOperatorContains For a multi-valued field, such as tags, this operator will match objects that contain any of the values in the field.\\ndoes_not_contain FilterOperatorDoesNotContain For a multi-valued field, such as tags, this operator will match objects that do not contain any of the values in the field.\\nin FilterOperatorIn Matches objects if the field is one of several possible values, as specified in the values array.\\nnot_in FilterOperatorNotIn Matches objects if the field is none of several possible values, as specified in the values array.\\nand FilterOperatorAnd Matches objects only if all subfilters match.\\nor FilterOperatorOr Matches objects if any subfilter matches.\\ntime_is_after FilterOperatorTimeIsAfter Matches objects if the field is after the given time.\\ntime_is_before FilterOperatorTimeIsBefore Matches objects if the field is before the given time.\\ntime_range FilterOperatorTimeRange Matches objects if the field is between the given times.\\nstring_contains FilterOperatorStringContains Matches objects if the field contains the given string.\\nstring_does_not_contain FilterOperatorStringDoesNotContain Matches objects if the field does not contain the given string.\\nis_set FilterOperatorIsSet FilterOperatorIsSet matches objects if the field is set.\\nis_unset FilterOperatorIsUnset FilterOperatorIsUnset matches objects if the field is unset.\",\n \"x-go-name\": \"Operator\"\n },\n \"subfilters\": {\n \"description\": \"Sub-filters for this filter. Valid only when operator is \\\"and\\\" or \\\"or\\\".\\n\\nThe maximum allowed depth for a tree of filters is 3.\",\n \"items\": {\n \"$ref\": \"#/components/schemas/Filter\",\n \"has_circular_reference\": true\n },\n \"type\": \"array\",\n \"x-go-name\": \"Subfilters\"\n },\n \"value\": {\n \"description\": \"The value for this filter. Only used for single-valued operators\\n\\n(\\\"equals\\\", \\\"not_equals\\\", \\\"contains\\\", \\\"does_not_contain\\\")\",\n \"type\": \"string\",\n \"x-go-name\": \"Value\"\n },\n \"values\": {\n \"description\": \"The values for this filter. Only used for multi-valued operators (\\\"in\\\", \\\"not_in\\\").\",\n \"items\": {\n \"type\": \"string\"\n },\n \"type\": \"array\",\n \"x-go-name\": \"Values\"\n }\n },\n \"required\": [\n \"field\",\n \"operator\"\n ],\n \"type\": \"object\",\n \"x-go-package\": \"pylon/api/apiserver/apitypes\"\n },\n \"limit\": {\n \"description\": \"The number of accounts to fetch. Defaults to 100. Must be greater than 0 and less than 1000.\",\n \"format\": \"int64\",\n \"type\": \"integer\",\n \"x-go-name\": \"Limit\"\n }\n },\n \"required\": [\n \"filter\"\n ],\n \"type\": \"object\",\n \"x-go-package\": \"pylon/api/apiserver/endpoints\"\n }\n }\n },\n \"required\": false\n}",
|
|
"use_request_body_schema_mode": true,
|
|
"validate_request_body_schema": false
|
|
}
|
|
}
|