HubSpot Automation & CMS Starter tools (#669)

This commit is contained in:
Renato Byrro 2025-10-31 20:13:18 -03:00 committed by GitHub
parent a979c4d6ee
commit 5f89497198
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
205 changed files with 1043216 additions and 0 deletions

View file

@ -11,6 +11,8 @@ arcade-exa-api
arcade-figma-api
arcade-freshservice-api
arcade-github-api
arcade-hubspot-automation-api
arcade-hubspot-cms-api
arcade-hubspot-crm-api
arcade-hubspot-marketing-api
arcade-linkedin

View file

@ -0,0 +1,18 @@
files: ^.*/hubspot_automation_api/.*
repos:
- repo: https://github.com/pre-commit/pre-commit-hooks
rev: "v4.4.0"
hooks:
- id: check-case-conflict
- id: check-merge-conflict
- id: check-toml
- id: check-yaml
- id: end-of-file-fixer
- id: trailing-whitespace
- repo: https://github.com/astral-sh/ruff-pre-commit
rev: v0.6.7
hooks:
- id: ruff
args: [--fix]
- id: ruff-format

View file

@ -0,0 +1,44 @@
target-version = "py310"
line-length = 100
fix = true
[lint]
select = [
# flake8-2020
"YTT",
# flake8-bandit
"S",
# flake8-bugbear
"B",
# flake8-builtins
"A",
# flake8-comprehensions
"C4",
# flake8-debugger
"T10",
# flake8-simplify
"SIM",
# isort
"I",
# mccabe
"C90",
# pycodestyle
"E", "W",
# pyflakes
"F",
# pygrep-hooks
"PGH",
# pyupgrade
"UP",
# ruff
"RUF",
# tryceratops
"TRY",
]
[lint.per-file-ignores]
"**/tests/*" = ["S101"]
[format]
preview = true
skip-magic-trailing-comma = false

View file

@ -0,0 +1,21 @@
MIT License
Copyright (c) 2025, Arcade AI
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.

View file

@ -0,0 +1,54 @@
.PHONY: help
help:
@echo "🛠️ github Commands:\n"
@grep -E '^[a-zA-Z_-]+:.*?## .*$$' $(MAKEFILE_LIST) | sort | awk 'BEGIN {FS = ":.*?## "}; {printf "\033[36m%-30s\033[0m %s\n", $$1, $$2}'
.PHONY: install
install: ## Install the uv environment and install all packages with dependencies
@echo "🚀 Creating virtual environment and installing all packages using uv"
@uv sync --active --all-extras --no-sources
@if [ -f .pre-commit-config.yaml ]; then uv run --no-sources pre-commit install; fi
@echo "✅ All packages and dependencies installed via uv"
.PHONY: install-local
install-local: ## Install the uv environment and install all packages with dependencies with local Arcade sources
@echo "🚀 Creating virtual environment and installing all packages using uv"
@uv sync --active --all-extras
@if [ -f .pre-commit-config.yaml ]; then uv run pre-commit install; fi
@echo "✅ All packages and dependencies installed via uv"
.PHONY: build
build: clean-build ## Build wheel file using poetry
@echo "🚀 Creating wheel file"
uv build
.PHONY: clean-build
clean-build: ## clean build artifacts
@echo "🗑️ Cleaning dist directory"
rm -rf dist
.PHONY: test
test: ## Test the code with pytest
@echo "🚀 Testing code: Running pytest"
@uv run --no-sources pytest -W ignore -v --cov --cov-config=pyproject.toml --cov-report=xml
.PHONY: coverage
coverage: ## Generate coverage report
@echo "coverage report"
@uv run --no-sources coverage report
@echo "Generating coverage report"
@uv run --no-sources coverage html
.PHONY: bump-version
bump-version: ## Bump the version in the pyproject.toml file by a patch version
@echo "🚀 Bumping version in pyproject.toml"
uv version --no-sources --bump patch
.PHONY: check
check: ## Run code quality tools.
@if [ -f .pre-commit-config.yaml ]; then\
echo "🚀 Linting code: Running pre-commit";\
uv run --no-sources pre-commit run -a;\
fi
@echo "🚀 Static type checking: Running mypy"
@uv run --no-sources mypy --config-file=pyproject.toml

File diff suppressed because it is too large Load diff

View file

@ -0,0 +1,816 @@
"""Arcade Starter Tools for hubspot_automation
DO NOT EDIT THIS MODULE DIRECTLY.
THIS MODULE WAS AUTO-GENERATED BY TRANSPILING THE API STARTER TOOL JSON DEFINITIONS
IN THE ../wrapper_tools DIRECTORY INTO PYTHON CODE. ANY CHANGES TO THIS MODULE WILL
BE OVERWRITTEN BY THE TRANSPILER.
"""
import asyncio
import json
from enum import Enum
from typing import Annotated, Any
import httpx
import jsonschema
from arcade_tdk import ToolContext, tool
from arcade_tdk.auth import OAuth2
from arcade_tdk.errors import RetryableToolError
from .request_body_schemas import REQUEST_BODY_SCHEMAS
# Retry configuration
INITIAL_RETRY_DELAY = 0.5 # seconds
HTTP_CLIENT = httpx.AsyncClient(
timeout=httpx.Timeout(60.0, connect=10.0),
limits=httpx.Limits(max_keepalive_connections=20, max_connections=100),
transport=httpx.AsyncHTTPTransport(retries=3),
http2=True,
follow_redirects=True,
)
class ToolMode(str, Enum):
"""Mode for tools with complex request bodies."""
GET_REQUEST_SCHEMA = "get_request_schema"
EXECUTE = "execute"
def remove_none_values(data: dict[str, Any]) -> dict[str, Any]:
return {k: v for k, v in data.items() if v is not None}
async def make_request(
url: str,
method: str,
params: dict[str, Any] | None = None,
headers: dict[str, Any] | None = None,
content: str | None = None,
data: dict[str, Any] | None = None,
auth: tuple[str, str] | None = None,
max_retries: int = 3,
) -> httpx.Response:
"""Make an HTTP request with retry logic for 5xx server errors."""
for attempt in range(max_retries):
try:
response = await HTTP_CLIENT.request(
url=url,
auth=auth,
method=method,
params=params,
headers=headers,
content=content,
)
response.raise_for_status()
except httpx.HTTPStatusError as e:
# Only retry on 5xx server errors
if e.response.status_code >= 500 and attempt < max_retries - 1:
# Exponential backoff: 0.5s, 1s, 2s
await asyncio.sleep(INITIAL_RETRY_DELAY * (2**attempt))
continue
# Re-raise for 4xx errors or if max retries reached
raise
except httpx.RequestError:
# Don't retry request errors (network issues are handled by transport)
raise
else:
return response
# This should never be reached, but satisfies type checker
raise httpx.RequestError("Max retries exceeded") # noqa: TRY003
async def make_request_with_schema_validation(
url: str,
method: str,
request_data: dict[str, Any],
schema: dict[str, Any] | str,
auth: tuple[str, str] | None = None,
params: dict[str, Any] | None = None,
headers: dict[str, Any] | None = None,
max_retries: int = 3,
) -> httpx.Response:
"""Make an HTTP request with schema validation on format errors."""
# Parse schema if it's a string, skip validation if parsing fails
parsed_schema = None
if isinstance(schema, str):
try:
parsed_schema = json.loads(schema)
except Exception:
# If schema parsing fails, just skip validation
parsed_schema = None
else:
parsed_schema = schema
try:
response = await make_request(
url=url,
auth=auth,
method=method,
params=params,
headers=headers,
content=json.dumps(request_data),
max_retries=max_retries,
)
except httpx.HTTPStatusError as e:
# Only provide schema validation for format-related errors
if e.response.status_code in (400, 422):
api_error_details = f"API returned {e.response.status_code}: {e.response.text}"
# Only run validation if we have a valid parsed schema
if parsed_schema is not None:
# Run validation to provide additional context
is_valid, validation_error = validate_json_against_schema(
request_data, parsed_schema
)
if not is_valid:
# Schema validation found issues - additional context
additional_context = (
f"{api_error_details}\n\n"
f"Schema validation found the following issues:\n"
f"{validation_error}"
)
else:
# Schema validation passed - just show API error
additional_context = api_error_details
else:
# No valid schema - just show API error
additional_context = api_error_details
raise RetryableToolError(
message=(f"API request failed with validation error: {e.response.status_code}"),
developer_message=api_error_details,
additional_prompt_content=additional_context,
) from e
else:
# For non-validation errors, re-raise as-is
raise
else:
return response
def validate_json_against_schema(
json_data: dict[str, Any], schema: dict[str, Any]
) -> tuple[bool, str | None]:
"""Validate JSON data against an OpenAPI/JSON Schema.
This provides full JSON Schema Draft 7 validation including:
- Required fields, types, enums
- Pattern validation (regex)
- Format validation (email, uuid, date-time, etc.)
- Min/max length and values
- oneOf, anyOf, allOf
- And all other JSON Schema features
Args:
json_data: The JSON data to validate
schema: The JSON Schema to validate against
Returns:
Tuple of (is_valid, error_messages). If valid, error_messages is None.
If invalid, error_messages contains all validation errors.
"""
try:
validator = jsonschema.Draft7Validator(
schema, format_checker=jsonschema.Draft7Validator.FORMAT_CHECKER
)
# Collect ALL validation errors
errors = list(validator.iter_errors(json_data))
if errors:
# Format all errors with their paths
error_messages = []
for error in errors:
error_path = ".".join(str(p) for p in error.path) if error.path else "root"
error_messages.append(f"{error.message} at {error_path}")
# Join all errors with newlines
return False, "\n".join(error_messages)
else:
return True, None
except jsonschema.SchemaError as e:
return False, f"Invalid schema: {e.message}"
except Exception as e:
return False, f"Validation error: {e!s}"
@tool(requires_auth=OAuth2(id="arcade-hubspot", scopes=["automation"]))
async def complete_action_execution(
context: ToolContext,
mode: Annotated[
ToolMode,
"Operation mode: 'get_request_schema' returns the OpenAPI spec "
"for the request body, 'execute' performs the actual operation",
],
action_execution_id: Annotated[
str | None,
"The unique identifier of the action execution to be completed. Required when mode is 'execute', ignored when mode is 'get_request_schema'.", # noqa: E501
] = None,
request_body: Annotated[
str | None,
"Stringified JSON representing the request body. Required when "
"mode is 'execute', ignored when mode is 'get_request_schema'",
] = None,
) -> Annotated[
dict[str, Any],
"Response from the API endpoint 'post-/automation/v4/actions/callbacks/{callbackId}/complete_complete'.", # noqa: E501
]:
"""Complete a specific blocked action execution by ID.
Call this tool to complete an action in an automation workflow that is currently blocked by its ID.
Note: Understanding the request schema is necessary to properly create
the stringified JSON input object for execution.\n\nThis operation also requires path parameters.
Modes:
- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't
already have it. Do NOT call repeatedly if you already received
the schema.
- EXECUTE: Performs the operation with the provided request body
JSON.\n Note: You must also provide the required path parameters when executing.
If you need the schema, call with mode='get_request_schema' ONCE, then execute.
""" # noqa: E501
if mode == ToolMode.GET_REQUEST_SCHEMA:
return {
"request_body_schema": REQUEST_BODY_SCHEMAS["COMPLETEACTIONEXECUTION"],
"instructions": (
"Use the request_body_schema to construct a valid JSON object. "
"Once you have populated the object following the schema "
"structure and requirements, call this tool again with "
"mode='execute' and the stringified JSON as the "
"request_body parameter along with the required path parameters. "
"Do NOT call the schema mode again - you already have "
"the schema now."
),
}
# Mode is EXECUTE - validate parameters
# Validate required parameters
missing_params = []
if not action_execution_id:
missing_params.append(("action_execution_id", "path"))
if missing_params:
param_names = [p[0] for p in missing_params]
param_details = ", ".join([f"{p[0]} ({p[1]})" for p in missing_params])
raise RetryableToolError(
message=f"Missing required parameters: {param_names}",
developer_message=(f"Required parameters validation failed: {param_details}"),
additional_prompt_content=(
f"The following required parameters are missing: "
f"{param_details}. Please call this tool again with all "
"required parameters."
),
)
# Validate request body is provided (not None or empty string)
# Note: Empty objects like {} are allowed - schema validation will check if valid
if request_body is None or request_body.strip() == "":
raise RetryableToolError(
message="Request body is required when mode is 'execute'",
developer_message="The request_body parameter was null or empty string",
additional_prompt_content=(
"The request body is required to perform this operation. "
"Use the schema below to construct a valid JSON object, "
"then call this tool again in execute mode with the "
"stringified JSON as the request_body parameter.\n\n"
"Schema:\n\n```json\n" + REQUEST_BODY_SCHEMAS["COMPLETEACTIONEXECUTION"] + "\n```"
),
)
# Parse JSON
try:
request_data = json.loads(request_body)
except json.JSONDecodeError as e:
raise RetryableToolError(
message=f"Invalid JSON in request body: {e!s}",
developer_message=f"JSON parsing failed: {e!s}",
additional_prompt_content=(
f"The request body contains invalid JSON. Error: {e!s}\n\n"
"Please provide a valid JSON string that matches the schema "
"below, then call this tool again in execute mode.\n\n"
"Schema:\n\n```json\n" + REQUEST_BODY_SCHEMAS["COMPLETEACTIONEXECUTION"] + "\n```"
),
) from e
response = await make_request_with_schema_validation(
url="https://api.hubapi.com/automation/v4/actions/callbacks/{callbackId}/complete".format( # noqa: UP032
callbackId=action_execution_id
),
method="POST",
request_data=request_data,
schema=REQUEST_BODY_SCHEMAS["COMPLETEACTIONEXECUTION"],
params=remove_none_values({}),
headers=remove_none_values({
"Content-Type": "application/json",
"Authorization": "Bearer {authorization}".format( # noqa: UP032
authorization=context.get_auth_token_or_empty()
),
}),
)
try:
return {"response_json": response.json()}
except Exception:
return {"response_text": response.text}
@tool(requires_auth=OAuth2(id="arcade-hubspot", scopes=["automation"]))
async def complete_batch_action_executions(
context: ToolContext,
mode: Annotated[
ToolMode,
"Operation mode: 'get_request_schema' returns the OpenAPI spec "
"for the request body, 'execute' performs the actual operation",
],
request_body: Annotated[
str | None,
"Stringified JSON representing the request body. Required when "
"mode is 'execute', ignored when mode is 'get_request_schema'",
] = None,
) -> Annotated[
dict[str, Any],
"Response from the API endpoint 'post-/automation/v4/actions/callbacks/complete_completeBatch'.", # noqa: E501
]:
"""Complete a batch of blocked action executions.
Use this tool to mark a batch of previously blocked action executions as complete. Ideal for situations where action executions need to be finalized as part of an automated workflow.
Note: Understanding the request schema is necessary to properly create
the stringified JSON input object for execution.
Modes:
- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't
already have it. Do NOT call repeatedly if you already received
the schema.
- EXECUTE: Performs the operation with the provided request body
JSON.
If you need the schema, call with mode='get_request_schema' ONCE, then execute.
""" # noqa: E501
if mode == ToolMode.GET_REQUEST_SCHEMA:
return {
"request_body_schema": REQUEST_BODY_SCHEMAS["COMPLETEBATCHACTIONEXECUTIONS"],
"instructions": (
"Use the request_body_schema to construct a valid JSON object. "
"Once you have populated the object following the schema "
"structure and requirements, call this tool again with "
"mode='execute' and the stringified JSON as the "
"request_body parameter. "
"Do NOT call the schema mode again - you already have "
"the schema now."
),
}
# Mode is EXECUTE - validate parameters
# Validate request body is provided (not None or empty string)
# Note: Empty objects like {} are allowed - schema validation will check if valid
if request_body is None or request_body.strip() == "":
raise RetryableToolError(
message="Request body is required when mode is 'execute'",
developer_message="The request_body parameter was null or empty string",
additional_prompt_content=(
"The request body is required to perform this operation. "
"Use the schema below to construct a valid JSON object, "
"then call this tool again in execute mode with the "
"stringified JSON as the request_body parameter.\n\n"
"Schema:\n\n```json\n"
+ REQUEST_BODY_SCHEMAS["COMPLETEBATCHACTIONEXECUTIONS"]
+ "\n```"
),
)
# Parse JSON
try:
request_data = json.loads(request_body)
except json.JSONDecodeError as e:
raise RetryableToolError(
message=f"Invalid JSON in request body: {e!s}",
developer_message=f"JSON parsing failed: {e!s}",
additional_prompt_content=(
f"The request body contains invalid JSON. Error: {e!s}\n\n"
"Please provide a valid JSON string that matches the schema "
"below, then call this tool again in execute mode.\n\n"
"Schema:\n\n```json\n"
+ REQUEST_BODY_SCHEMAS["COMPLETEBATCHACTIONEXECUTIONS"]
+ "\n```"
),
) from e
response = await make_request_with_schema_validation(
url="https://api.hubapi.com/automation/v4/actions/callbacks/complete",
method="POST",
request_data=request_data,
schema=REQUEST_BODY_SCHEMAS["COMPLETEBATCHACTIONEXECUTIONS"],
params=remove_none_values({}),
headers=remove_none_values({
"Content-Type": "application/json",
"Authorization": "Bearer {authorization}".format( # noqa: UP032
authorization=context.get_auth_token_or_empty()
),
}),
)
try:
return {"response_json": response.json()}
except Exception:
return {"response_text": response.text}
@tool(requires_auth=OAuth2(id="arcade-hubspot", scopes=["automation"]))
async def fetch_email_campaigns(
context: ToolContext,
email_campaign_flow_ids: Annotated[
list[str] | None,
"An array of flow IDs to specify which email campaigns to retrieve. Each ID should be a string.", # noqa: E501
] = None,
end_date_filter: Annotated[
str | None,
"A timestamp filter to get campaigns before a specific date (in YYYY-MM-DD format).",
] = None,
max_results: Annotated[
int | None,
"Specifies the maximum number of email campaign entries to retrieve. Should be an integer value.", # noqa: E501
] = None,
start_date: Annotated[
str | None,
"Specify the start date for fetching email campaigns. This should be in the format YYYY-MM-DD to filter results starting after this date.", # noqa: E501
] = None,
) -> Annotated[
dict[str, Any], "Response from the API endpoint 'get-/automation/v4/flows/email-campaigns'."
]:
"""Fetch email campaigns from HubSpot Automation.
Use this tool to retrieve information about email campaigns managed within HubSpot's automation platform. It can be called to get an overview of current or past email marketing activities.""" # noqa: E501
request_data: Any = {}
if isinstance(request_data, dict):
request_data = remove_none_values(request_data)
content = json.dumps(request_data) if request_data else None
response = await make_request(
url="https://api.hubapi.com/automation/v4/flows/email-campaigns",
method="GET",
params=remove_none_values({
"after": start_date,
"before": end_date_filter,
"limit": max_results,
"flowId": email_campaign_flow_ids,
}),
headers=remove_none_values({
"Authorization": "Bearer {authorization}".format( # noqa: UP032
authorization=context.get_auth_token_or_empty()
)
}),
content=content,
)
try:
return {"response_json": response.json()}
except Exception:
return {"response_text": response.text}
@tool(requires_auth=OAuth2(id="arcade-hubspot", scopes=["automation"]))
async def get_workflows(
context: ToolContext,
mode: Annotated[
ToolMode,
"Operation mode: 'get_request_schema' returns the OpenAPI spec "
"for the request body, 'execute' performs the actual operation",
],
request_body: Annotated[
str | None,
"Stringified JSON representing the request body. Required when "
"mode is 'execute', ignored when mode is 'get_request_schema'",
] = None,
) -> Annotated[
dict[str, Any], "Response from the API endpoint 'post-/automation/v4/flows/batch/read'."
]:
"""Retrieve details of HubSpot workflows.
This tool allows you to fetch information about workflows in HubSpot. Use it when you need to access or manage workflow details for automation purposes.
Note: Understanding the request schema is necessary to properly create
the stringified JSON input object for execution.
Modes:
- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't
already have it. Do NOT call repeatedly if you already received
the schema.
- EXECUTE: Performs the operation with the provided request body
JSON.
If you need the schema, call with mode='get_request_schema' ONCE, then execute.
""" # noqa: E501
if mode == ToolMode.GET_REQUEST_SCHEMA:
return {
"request_body_schema": REQUEST_BODY_SCHEMAS["GETWORKFLOWS"],
"instructions": (
"Use the request_body_schema to construct a valid JSON object. "
"Once you have populated the object following the schema "
"structure and requirements, call this tool again with "
"mode='execute' and the stringified JSON as the "
"request_body parameter. "
"Do NOT call the schema mode again - you already have "
"the schema now."
),
}
# Mode is EXECUTE - validate parameters
# Validate request body is provided (not None or empty string)
# Note: Empty objects like {} are allowed - schema validation will check if valid
if request_body is None or request_body.strip() == "":
raise RetryableToolError(
message="Request body is required when mode is 'execute'",
developer_message="The request_body parameter was null or empty string",
additional_prompt_content=(
"The request body is required to perform this operation. "
"Use the schema below to construct a valid JSON object, "
"then call this tool again in execute mode with the "
"stringified JSON as the request_body parameter.\n\n"
"Schema:\n\n```json\n" + REQUEST_BODY_SCHEMAS["GETWORKFLOWS"] + "\n```"
),
)
# Parse JSON
try:
request_data = json.loads(request_body)
except json.JSONDecodeError as e:
raise RetryableToolError(
message=f"Invalid JSON in request body: {e!s}",
developer_message=f"JSON parsing failed: {e!s}",
additional_prompt_content=(
f"The request body contains invalid JSON. Error: {e!s}\n\n"
"Please provide a valid JSON string that matches the schema "
"below, then call this tool again in execute mode.\n\n"
"Schema:\n\n```json\n" + REQUEST_BODY_SCHEMAS["GETWORKFLOWS"] + "\n```"
),
) from e
response = await make_request_with_schema_validation(
url="https://api.hubapi.com/automation/v4/flows/batch/read",
method="POST",
request_data=request_data,
schema=REQUEST_BODY_SCHEMAS["GETWORKFLOWS"],
params=remove_none_values({}),
headers=remove_none_values({
"Content-Type": "application/json",
"Authorization": "Bearer {authorization}".format( # noqa: UP032
authorization=context.get_auth_token_or_empty()
),
}),
)
try:
return {"response_json": response.json()}
except Exception:
return {"response_text": response.text}
@tool(requires_auth=OAuth2(id="arcade-hubspot", scopes=["automation"]))
async def get_workflow_id_mappings(
context: ToolContext,
mode: Annotated[
ToolMode,
"Operation mode: 'get_request_schema' returns the OpenAPI spec "
"for the request body, 'execute' performs the actual operation",
],
request_body: Annotated[
str | None,
"Stringified JSON representing the request body. Required when "
"mode is 'execute', ignored when mode is 'get_request_schema'",
] = None,
) -> Annotated[
dict[str, Any],
"Response from the API endpoint 'post-/automation/v4/workflow-id-mappings/batch/read'.",
]:
"""Retrieve HubSpot workflow ID mappings in batch.
Call this tool to obtain mappings for HubSpot workflow IDs in batch. Useful for integrating workflows and managing automation processes.
Note: Understanding the request schema is necessary to properly create
the stringified JSON input object for execution.
Modes:
- GET_REQUEST_SCHEMA: Returns the schema. Only call if you don't
already have it. Do NOT call repeatedly if you already received
the schema.
- EXECUTE: Performs the operation with the provided request body
JSON.
If you need the schema, call with mode='get_request_schema' ONCE, then execute.
""" # noqa: E501
if mode == ToolMode.GET_REQUEST_SCHEMA:
return {
"request_body_schema": REQUEST_BODY_SCHEMAS["GETWORKFLOWIDMAPPINGS"],
"instructions": (
"Use the request_body_schema to construct a valid JSON object. "
"Once you have populated the object following the schema "
"structure and requirements, call this tool again with "
"mode='execute' and the stringified JSON as the "
"request_body parameter. "
"Do NOT call the schema mode again - you already have "
"the schema now."
),
}
# Mode is EXECUTE - validate parameters
# Validate request body is provided (not None or empty string)
# Note: Empty objects like {} are allowed - schema validation will check if valid
if request_body is None or request_body.strip() == "":
raise RetryableToolError(
message="Request body is required when mode is 'execute'",
developer_message="The request_body parameter was null or empty string",
additional_prompt_content=(
"The request body is required to perform this operation. "
"Use the schema below to construct a valid JSON object, "
"then call this tool again in execute mode with the "
"stringified JSON as the request_body parameter.\n\n"
"Schema:\n\n```json\n" + REQUEST_BODY_SCHEMAS["GETWORKFLOWIDMAPPINGS"] + "\n```"
),
)
# Parse JSON
try:
request_data = json.loads(request_body)
except json.JSONDecodeError as e:
raise RetryableToolError(
message=f"Invalid JSON in request body: {e!s}",
developer_message=f"JSON parsing failed: {e!s}",
additional_prompt_content=(
f"The request body contains invalid JSON. Error: {e!s}\n\n"
"Please provide a valid JSON string that matches the schema "
"below, then call this tool again in execute mode.\n\n"
"Schema:\n\n```json\n" + REQUEST_BODY_SCHEMAS["GETWORKFLOWIDMAPPINGS"] + "\n```"
),
) from e
response = await make_request_with_schema_validation(
url="https://api.hubapi.com/automation/v4/workflow-id-mappings/batch/read",
method="POST",
request_data=request_data,
schema=REQUEST_BODY_SCHEMAS["GETWORKFLOWIDMAPPINGS"],
params=remove_none_values({}),
headers=remove_none_values({
"Content-Type": "application/json",
"Authorization": "Bearer {authorization}".format( # noqa: UP032
authorization=context.get_auth_token_or_empty()
),
}),
)
try:
return {"response_json": response.json()}
except Exception:
return {"response_text": response.text}
@tool(requires_auth=OAuth2(id="arcade-hubspot", scopes=["automation.sequences.read"]))
async def check_contact_enrollment_status(
context: ToolContext,
contact_id: Annotated[
str, "The unique ID of the contact to check their sequence enrollment status."
],
) -> Annotated[
dict[str, Any],
"Response from the API endpoint 'get-/automation/v4/sequences/enrollments/contact/{contactId}'.", # noqa: E501
]:
"""Retrieve the sequence enrollment status of a contact by ID.
Use this tool to find out if a contact is enrolled in any sequences, using their contact ID to get the status information.""" # noqa: E501
request_data: Any = {}
if isinstance(request_data, dict):
request_data = remove_none_values(request_data)
content = json.dumps(request_data) if request_data else None
response = await make_request(
url="https://api.hubapi.com/automation/v4/sequences/enrollments/contact/{contactId}".format( # noqa: UP032
contactId=contact_id
),
method="GET",
params=remove_none_values({}),
headers=remove_none_values({
"Authorization": "Bearer {authorization}".format( # noqa: UP032
authorization=context.get_auth_token_or_empty()
)
}),
content=content,
)
try:
return {"response_json": response.json()}
except Exception:
return {"response_text": response.text}
@tool(requires_auth=OAuth2(id="arcade-hubspot", scopes=["automation.sequences.read"]))
async def get_user_sequences(
context: ToolContext,
) -> Annotated[dict[str, Any], "Response from the API endpoint 'get-/automation/v4/sequences/'."]:
"""Retrieve a list of sequences for a specific user.
Use this tool to get sequences associated with a user in HubSpot. Useful for tracking user-specific automated processes.""" # noqa: E501
request_data: Any = {}
if isinstance(request_data, dict):
request_data = remove_none_values(request_data)
content = json.dumps(request_data) if request_data else None
response = await make_request(
url="https://api.hubapi.com/automation/v4/sequences/",
method="GET",
params=remove_none_values({}),
headers=remove_none_values({
"Authorization": "Bearer {authorization}".format( # noqa: UP032
authorization=context.get_auth_token_or_empty()
)
}),
content=content,
)
try:
return {"response_json": response.json()}
except Exception:
return {"response_text": response.text}
@tool(requires_auth=OAuth2(id="arcade-hubspot", scopes=["automation.sequences.enrollments.write"]))
async def enroll_contact_in_sequence(
context: ToolContext,
contact_id: Annotated[
str, "The unique identifier of the contact to be enrolled in the sequence."
],
sender_email: Annotated[
str,
"The email address of the sender enrolling the contact. This should be a valid email associated with the sender's HubSpot user account.", # noqa: E501
],
sequence_identifier: Annotated[
str,
"The unique identifier of the sequence to enroll the contact into. It should be a valid string matching the sequence available in the system.", # noqa: E501
],
sender_alias_address: Annotated[
str | None,
"Email alias for the sender addressing the sequence. This is used instead of the default email address.", # noqa: E501
] = None,
) -> Annotated[
dict[str, Any], "Response from the API endpoint 'post-/automation/v4/sequences/enrollments'."
]:
"""Enroll a contact into a sequence with user ID and details.
This tool enrolls a specified contact into an automation sequence using the provided user ID and sequence details, facilitating automated follow-up actions.""" # noqa: E501
request_data: Any = {
"contactId": contact_id,
"senderEmail": sender_email,
"sequenceId": sequence_identifier,
"senderAliasAddress": sender_alias_address,
}
if isinstance(request_data, dict):
request_data = remove_none_values(request_data)
content = json.dumps(request_data) if request_data else None
response = await make_request(
url="https://api.hubapi.com/automation/v4/sequences/enrollments",
method="POST",
params=remove_none_values({}),
headers=remove_none_values({
"Content-Type": "application/json",
"Authorization": "Bearer {authorization}".format( # noqa: UP032
authorization=context.get_auth_token_or_empty()
),
}),
content=content,
)
try:
return {"response_json": response.json()}
except Exception:
return {"response_text": response.text}
@tool(requires_auth=OAuth2(id="arcade-hubspot", scopes=["automation.sequences.read"]))
async def get_sequence_details(
context: ToolContext,
sequence_id: Annotated[
str,
"The unique ID of the sequence to retrieve details for. This ID identifies which sequence's information will be returned.", # noqa: E501
],
) -> Annotated[
dict[str, Any], "Response from the API endpoint 'get-/automation/v4/sequences/{sequenceId}'."
]:
"""Retrieve details of a specific sequence by its ID.
This tool retrieves information about a specific sequence using its ID. It should be called when you need details about a sequence within HubSpot Automation.""" # noqa: E501
request_data: Any = {}
if isinstance(request_data, dict):
request_data = remove_none_values(request_data)
content = json.dumps(request_data) if request_data else None
response = await make_request(
url="https://api.hubapi.com/automation/v4/sequences/{sequenceId}".format( # noqa: UP032
sequenceId=sequence_id
),
method="GET",
params=remove_none_values({}),
headers=remove_none_values({
"Authorization": "Bearer {authorization}".format( # noqa: UP032
authorization=context.get_auth_token_or_empty()
)
}),
content=content,
)
try:
return {"response_json": response.json()}
except Exception:
return {"response_text": response.text}

View file

@ -0,0 +1,17 @@
"""Request Body Schemas for API Tools
DO NOT EDIT THIS MODULE DIRECTLY.
THIS MODULE WAS AUTO-GENERATED AND CONTAINS OpenAPI REQUEST BODY SCHEMAS
FOR TOOLS WITH COMPLEX REQUEST BODIES. ANY CHANGES TO THIS MODULE WILL
BE OVERWRITTEN BY THE TRANSPILER.
"""
from typing import Any
REQUEST_BODY_SCHEMAS: dict[str, Any] = {
"COMPLETEACTIONEXECUTION": '{"required": ["outputFields"], "type": "object", "properties": {"outputFields": {"type": "object", "additionalProperties": {"type": "string"}}}}', # noqa: E501
"COMPLETEBATCHACTIONEXECUTIONS": '{"required": ["inputs"], "type": "object", "properties": {"inputs": {"type": "array", "items": {"required": ["callbackId", "outputFields"], "type": "object", "properties": {"outputFields": {"type": "object", "additionalProperties": {"type": "string"}}, "callbackId": {"type": "string"}}}}}}', # noqa: E501
"GETWORKFLOWS": '{"required": ["inputs"], "type": "object", "properties": {"inputs": {"type": "array", "items": {"oneOf": [{"title": "FLOW_ID", "required": ["flowId", "type"], "type": "object", "properties": {"type": {"type": "string", "default": "FLOW_ID", "enum": ["FLOW_ID"]}, "flowId": {"type": "string"}}}]}}}}', # noqa: E501
"GETWORKFLOWIDMAPPINGS": '{"required": ["inputs"], "type": "object", "properties": {"inputs": {"type": "array", "items": {"oneOf": [{"title": "FLOW_ID", "required": ["flowMigrationStatuses", "type"], "type": "object", "properties": {"flowMigrationStatuses": {"type": "string"}, "type": {"type": "string", "default": "FLOW_ID", "enum": ["FLOW_ID"]}}}, {"title": "WORKFLOW_ID", "required": ["flowMigrationStatusForClassicWorkflows", "type"], "type": "object", "properties": {"flowMigrationStatusForClassicWorkflows": {"type": "string"}, "type": {"type": "string", "default": "WORKFLOW_ID", "enum": ["WORKFLOW_ID"]}}}]}}}}', # noqa: E501
}

View file

@ -0,0 +1,109 @@
{
"name": "CheckContactEnrollmentStatus",
"fully_qualified_name": "HubspotAutomationApi.CheckContactEnrollmentStatus@0.1.0",
"description": "Retrieve the sequence enrollment status of a contact by ID.\n\nUse this tool to find out if a contact is enrolled in any sequences, using their contact ID to get the status information.",
"toolkit": {
"name": "ArcadeHubspotAutomationApi",
"description": null,
"version": "0.1.0"
},
"input": {
"parameters": [
{
"name": "contact_id",
"required": true,
"description": "The unique ID of the contact to check their sequence enrollment status.",
"value_schema": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": ""
},
"inferrable": true,
"http_endpoint_parameter_name": "contactId"
}
]
},
"output": {
"description": "Response from the API endpoint 'get-/automation/v4/sequences/enrollments/contact/{contactId}'.",
"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": {
"provider_id": "arcade-hubspot",
"provider_type": "oauth2",
"id": null,
"oauth2": {
"scopes": [
"automation.sequences.read"
]
}
},
"secrets": null,
"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 hubspot_automation API."
},
"http_endpoint": {
"metadata": {
"object_type": "http_endpoint",
"version": "1.2.0",
"description": ""
},
"url": "https://api.hubapi.com/automation/v4/sequences/enrollments/contact/{contactId}",
"http_method": "GET",
"headers": {},
"parameters": [
{
"name": "contactId",
"tool_parameter_name": "contact_id",
"description": "",
"value_schema": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": ""
},
"accepted_as": "path",
"required": true,
"deprecated": false,
"default": null,
"documentation_urls": []
}
],
"documentation_urls": [],
"secrets": [
{
"arcade_key": "auth_token",
"parameter_name": "Authorization",
"accepted_as": "header",
"formatted_value": "Bearer {authorization}",
"description": "The OAuth token to use for authentication.",
"is_auth_token": true
}
],
"request_body_spec": null,
"use_request_body_schema_mode": false,
"validate_request_body_schema": false
}
}

View file

@ -0,0 +1,160 @@
{
"name": "CompleteActionExecution",
"fully_qualified_name": "HubspotAutomationApi.CompleteActionExecution@0.1.0",
"description": "Complete a specific blocked action execution by ID.\n\nCall this tool to complete an action in an automation workflow that is currently blocked by its ID.",
"toolkit": {
"name": "ArcadeHubspotAutomationApi",
"description": null,
"version": "0.1.0"
},
"input": {
"parameters": [
{
"name": "action_execution_id",
"required": true,
"description": "The unique identifier of the action execution to be completed.",
"value_schema": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "The ID of the action execution."
},
"inferrable": true,
"http_endpoint_parameter_name": "callbackId"
},
{
"name": "action_output_fields",
"required": true,
"description": "JSON object with output fields for the action. Structure according to the action requirements.",
"value_schema": {
"val_type": "json",
"inner_val_type": null,
"enum": null,
"properties": {
"outputFields": {
"val_type": "json",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": null
}
},
"inner_properties": null,
"description": ""
},
"inferrable": true,
"http_endpoint_parameter_name": "requestBody"
}
]
},
"output": {
"description": "Response from the API endpoint 'post-/automation/v4/actions/callbacks/{callbackId}/complete_complete'.",
"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": {
"provider_id": "arcade-hubspot",
"provider_type": "oauth2",
"id": null,
"oauth2": {
"scopes": [
"automation"
]
}
},
"secrets": null,
"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 hubspot_automation API."
},
"http_endpoint": {
"metadata": {
"object_type": "http_endpoint",
"version": "1.2.0",
"description": ""
},
"url": "https://api.hubapi.com/automation/v4/actions/callbacks/{callbackId}/complete",
"http_method": "POST",
"headers": {},
"parameters": [
{
"name": "callbackId",
"tool_parameter_name": "action_execution_id",
"description": "The ID of the action execution.",
"value_schema": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "The ID of the action execution."
},
"accepted_as": "path",
"required": true,
"deprecated": false,
"default": null,
"documentation_urls": []
},
{
"name": "requestBody",
"tool_parameter_name": "action_output_fields",
"description": "",
"value_schema": {
"val_type": "json",
"inner_val_type": null,
"enum": null,
"properties": {
"outputFields": {
"val_type": "json",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": null
}
},
"inner_properties": null,
"description": ""
},
"accepted_as": "body",
"required": true,
"deprecated": false,
"default": null,
"documentation_urls": []
}
],
"documentation_urls": [],
"secrets": [
{
"arcade_key": "auth_token",
"parameter_name": "Authorization",
"accepted_as": "header",
"formatted_value": "Bearer {authorization}",
"description": "The OAuth token to use for authentication.",
"is_auth_token": true
}
],
"request_body_spec": "{\n \"content\": {\n \"application/json\": {\n \"schema\": {\n \"required\": [\n \"outputFields\"\n ],\n \"type\": \"object\",\n \"properties\": {\n \"outputFields\": {\n \"type\": \"object\",\n \"additionalProperties\": {\n \"type\": \"string\"\n }\n }\n }\n }\n }\n },\n \"required\": true\n}",
"use_request_body_schema_mode": true,
"validate_request_body_schema": true
}
}

View file

@ -0,0 +1,161 @@
{
"name": "CompleteBatchActionExecutions",
"fully_qualified_name": "HubspotAutomationApi.CompleteBatchActionExecutions@0.1.0",
"description": "Complete a batch of blocked action executions.\n\nUse this tool to mark a batch of previously blocked action executions as complete. Ideal for situations where action executions need to be finalized as part of an automated workflow.",
"toolkit": {
"name": "ArcadeHubspotAutomationApi",
"description": null,
"version": "0.1.0"
},
"input": {
"parameters": [
{
"name": "batch_actions_to_complete",
"required": true,
"description": "JSON array containing objects with 'callbackId' and 'outputFields' to specify which action executions to complete.",
"value_schema": {
"val_type": "json",
"inner_val_type": null,
"enum": null,
"properties": {
"inputs": {
"val_type": "array",
"inner_val_type": "json",
"enum": null,
"properties": null,
"inner_properties": {
"outputFields": {
"val_type": "json",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": null
},
"callbackId": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": null
}
},
"description": null
}
},
"inner_properties": null,
"description": ""
},
"inferrable": true,
"http_endpoint_parameter_name": "requestBody"
}
]
},
"output": {
"description": "Response from the API endpoint 'post-/automation/v4/actions/callbacks/complete_completeBatch'.",
"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": {
"provider_id": "arcade-hubspot",
"provider_type": "oauth2",
"id": null,
"oauth2": {
"scopes": [
"automation"
]
}
},
"secrets": null,
"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 hubspot_automation API."
},
"http_endpoint": {
"metadata": {
"object_type": "http_endpoint",
"version": "1.2.0",
"description": ""
},
"url": "https://api.hubapi.com/automation/v4/actions/callbacks/complete",
"http_method": "POST",
"headers": {},
"parameters": [
{
"name": "requestBody",
"tool_parameter_name": "batch_actions_to_complete",
"description": "",
"value_schema": {
"val_type": "json",
"inner_val_type": null,
"enum": null,
"properties": {
"inputs": {
"val_type": "array",
"inner_val_type": "json",
"enum": null,
"properties": null,
"inner_properties": {
"outputFields": {
"val_type": "json",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": null
},
"callbackId": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": null
}
},
"description": null
}
},
"inner_properties": null,
"description": ""
},
"accepted_as": "body",
"required": true,
"deprecated": false,
"default": null,
"documentation_urls": []
}
],
"documentation_urls": [],
"secrets": [
{
"arcade_key": "auth_token",
"parameter_name": "Authorization",
"accepted_as": "header",
"formatted_value": "Bearer {authorization}",
"description": "The OAuth token to use for authentication.",
"is_auth_token": true
}
],
"request_body_spec": "{\n \"content\": {\n \"application/json\": {\n \"schema\": {\n \"required\": [\n \"inputs\"\n ],\n \"type\": \"object\",\n \"properties\": {\n \"inputs\": {\n \"type\": \"array\",\n \"items\": {\n \"required\": [\n \"callbackId\",\n \"outputFields\"\n ],\n \"type\": \"object\",\n \"properties\": {\n \"outputFields\": {\n \"type\": \"object\",\n \"additionalProperties\": {\n \"type\": \"string\"\n }\n },\n \"callbackId\": {\n \"type\": \"string\"\n }\n }\n }\n }\n }\n }\n }\n },\n \"required\": true\n}",
"use_request_body_schema_mode": true,
"validate_request_body_schema": true
}
}

View file

@ -0,0 +1,208 @@
{
"name": "EnrollContactInSequence",
"fully_qualified_name": "HubspotAutomationApi.EnrollContactInSequence@0.1.0",
"description": "Enroll a contact into a sequence with user ID and details.\n\nThis tool enrolls a specified contact into an automation sequence using the provided user ID and sequence details, facilitating automated follow-up actions.",
"toolkit": {
"name": "ArcadeHubspotAutomationApi",
"description": null,
"version": "0.1.0"
},
"input": {
"parameters": [
{
"name": "contact_id",
"required": true,
"description": "The unique identifier of the contact to be enrolled in the sequence.",
"value_schema": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": ""
},
"inferrable": true,
"http_endpoint_parameter_name": "contactId"
},
{
"name": "sender_email",
"required": true,
"description": "The email address of the sender enrolling the contact. This should be a valid email associated with the sender's HubSpot user account.",
"value_schema": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": ""
},
"inferrable": true,
"http_endpoint_parameter_name": "senderEmail"
},
{
"name": "sequence_identifier",
"required": true,
"description": "The unique identifier of the sequence to enroll the contact into. It should be a valid string matching the sequence available in the system.",
"value_schema": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": ""
},
"inferrable": true,
"http_endpoint_parameter_name": "sequenceId"
},
{
"name": "sender_alias_address",
"required": false,
"description": "Email alias for the sender addressing the sequence. This is used instead of the default email address.",
"value_schema": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": ""
},
"inferrable": true,
"http_endpoint_parameter_name": "senderAliasAddress"
}
]
},
"output": {
"description": "Response from the API endpoint 'post-/automation/v4/sequences/enrollments'.",
"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": {
"provider_id": "arcade-hubspot",
"provider_type": "oauth2",
"id": null,
"oauth2": {
"scopes": [
"automation.sequences.enrollments.write"
]
}
},
"secrets": null,
"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 hubspot_automation API."
},
"http_endpoint": {
"metadata": {
"object_type": "http_endpoint",
"version": "1.2.0",
"description": ""
},
"url": "https://api.hubapi.com/automation/v4/sequences/enrollments",
"http_method": "POST",
"headers": {},
"parameters": [
{
"name": "contactId",
"tool_parameter_name": "contact_id",
"description": "",
"value_schema": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": ""
},
"accepted_as": "body",
"required": true,
"deprecated": false,
"default": null,
"documentation_urls": []
},
{
"name": "senderEmail",
"tool_parameter_name": "sender_email",
"description": "",
"value_schema": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": ""
},
"accepted_as": "body",
"required": true,
"deprecated": false,
"default": null,
"documentation_urls": []
},
{
"name": "sequenceId",
"tool_parameter_name": "sequence_identifier",
"description": "",
"value_schema": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": ""
},
"accepted_as": "body",
"required": true,
"deprecated": false,
"default": null,
"documentation_urls": []
},
{
"name": "senderAliasAddress",
"tool_parameter_name": "sender_alias_address",
"description": "",
"value_schema": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": ""
},
"accepted_as": "body",
"required": false,
"deprecated": false,
"default": null,
"documentation_urls": []
}
],
"documentation_urls": [],
"secrets": [
{
"arcade_key": "auth_token",
"parameter_name": "Authorization",
"accepted_as": "header",
"formatted_value": "Bearer {authorization}",
"description": "The OAuth token to use for authentication.",
"is_auth_token": true
}
],
"request_body_spec": "{\n \"content\": {\n \"application/json\": {\n \"schema\": {\n \"required\": [\n \"contactId\",\n \"senderEmail\",\n \"sequenceId\"\n ],\n \"type\": \"object\",\n \"properties\": {\n \"contactId\": {\n \"type\": \"string\"\n },\n \"senderEmail\": {\n \"type\": \"string\"\n },\n \"sequenceId\": {\n \"type\": \"string\"\n },\n \"senderAliasAddress\": {\n \"type\": \"string\"\n }\n }\n }\n }\n },\n \"required\": true\n}",
"use_request_body_schema_mode": false,
"validate_request_body_schema": false
}
}

View file

@ -0,0 +1,208 @@
{
"name": "FetchEmailCampaigns",
"fully_qualified_name": "HubspotAutomationApi.FetchEmailCampaigns@0.1.0",
"description": "Fetch email campaigns from HubSpot Automation.\n\nUse this tool to retrieve information about email campaigns managed within HubSpot's automation platform. It can be called to get an overview of current or past email marketing activities.",
"toolkit": {
"name": "ArcadeHubspotAutomationApi",
"description": null,
"version": "0.1.0"
},
"input": {
"parameters": [
{
"name": "start_date",
"required": false,
"description": "Specify the start date for fetching email campaigns. This should be in the format YYYY-MM-DD to filter results starting after this date.",
"value_schema": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": ""
},
"inferrable": true,
"http_endpoint_parameter_name": "after"
},
{
"name": "end_date_filter",
"required": false,
"description": "A timestamp filter to get campaigns before a specific date (in YYYY-MM-DD format).",
"value_schema": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": ""
},
"inferrable": true,
"http_endpoint_parameter_name": "before"
},
{
"name": "max_results",
"required": false,
"description": "Specifies the maximum number of email campaign entries to retrieve. Should be an integer value.",
"value_schema": {
"val_type": "integer",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": ""
},
"inferrable": true,
"http_endpoint_parameter_name": "limit"
},
{
"name": "email_campaign_flow_ids",
"required": false,
"description": "An array of flow IDs to specify which email campaigns to retrieve. Each ID should be a string.",
"value_schema": {
"val_type": "array",
"inner_val_type": "string",
"enum": null,
"properties": null,
"inner_properties": null,
"description": ""
},
"inferrable": true,
"http_endpoint_parameter_name": "flowId"
}
]
},
"output": {
"description": "Response from the API endpoint 'get-/automation/v4/flows/email-campaigns'.",
"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": {
"provider_id": "arcade-hubspot",
"provider_type": "oauth2",
"id": null,
"oauth2": {
"scopes": [
"automation"
]
}
},
"secrets": null,
"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 hubspot_automation API."
},
"http_endpoint": {
"metadata": {
"object_type": "http_endpoint",
"version": "1.2.0",
"description": ""
},
"url": "https://api.hubapi.com/automation/v4/flows/email-campaigns",
"http_method": "GET",
"headers": {},
"parameters": [
{
"name": "after",
"tool_parameter_name": "start_date",
"description": "",
"value_schema": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": ""
},
"accepted_as": "query",
"required": false,
"deprecated": false,
"default": null,
"documentation_urls": []
},
{
"name": "before",
"tool_parameter_name": "end_date_filter",
"description": "",
"value_schema": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": ""
},
"accepted_as": "query",
"required": false,
"deprecated": false,
"default": null,
"documentation_urls": []
},
{
"name": "limit",
"tool_parameter_name": "max_results",
"description": "",
"value_schema": {
"val_type": "integer",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": ""
},
"accepted_as": "query",
"required": false,
"deprecated": false,
"default": null,
"documentation_urls": []
},
{
"name": "flowId",
"tool_parameter_name": "email_campaign_flow_ids",
"description": "",
"value_schema": {
"val_type": "array",
"inner_val_type": "string",
"enum": null,
"properties": null,
"inner_properties": null,
"description": ""
},
"accepted_as": "query",
"required": false,
"deprecated": false,
"default": null,
"documentation_urls": []
}
],
"documentation_urls": [],
"secrets": [
{
"arcade_key": "auth_token",
"parameter_name": "Authorization",
"accepted_as": "header",
"formatted_value": "Bearer {authorization}",
"description": "The OAuth token to use for authentication.",
"is_auth_token": true
}
],
"request_body_spec": null,
"use_request_body_schema_mode": false,
"validate_request_body_schema": false
}
}

View file

@ -0,0 +1,109 @@
{
"name": "GetSequenceDetails",
"fully_qualified_name": "HubspotAutomationApi.GetSequenceDetails@0.1.0",
"description": "Retrieve details of a specific sequence by its ID.\n\nThis tool retrieves information about a specific sequence using its ID. It should be called when you need details about a sequence within HubSpot Automation.",
"toolkit": {
"name": "ArcadeHubspotAutomationApi",
"description": null,
"version": "0.1.0"
},
"input": {
"parameters": [
{
"name": "sequence_id",
"required": true,
"description": "The unique ID of the sequence to retrieve details for. This ID identifies which sequence's information will be returned.",
"value_schema": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": ""
},
"inferrable": true,
"http_endpoint_parameter_name": "sequenceId"
}
]
},
"output": {
"description": "Response from the API endpoint 'get-/automation/v4/sequences/{sequenceId}'.",
"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": {
"provider_id": "arcade-hubspot",
"provider_type": "oauth2",
"id": null,
"oauth2": {
"scopes": [
"automation.sequences.read"
]
}
},
"secrets": null,
"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 hubspot_automation API."
},
"http_endpoint": {
"metadata": {
"object_type": "http_endpoint",
"version": "1.2.0",
"description": ""
},
"url": "https://api.hubapi.com/automation/v4/sequences/{sequenceId}",
"http_method": "GET",
"headers": {},
"parameters": [
{
"name": "sequenceId",
"tool_parameter_name": "sequence_id",
"description": "",
"value_schema": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": ""
},
"accepted_as": "path",
"required": true,
"deprecated": false,
"default": null,
"documentation_urls": []
}
],
"documentation_urls": [],
"secrets": [
{
"arcade_key": "auth_token",
"parameter_name": "Authorization",
"accepted_as": "header",
"formatted_value": "Bearer {authorization}",
"description": "The OAuth token to use for authentication.",
"is_auth_token": true
}
],
"request_body_spec": null,
"use_request_body_schema_mode": false,
"validate_request_body_schema": false
}
}

View file

@ -0,0 +1,74 @@
{
"name": "GetUserSequences",
"fully_qualified_name": "HubspotAutomationApi.GetUserSequences@0.1.0",
"description": "Retrieve a list of sequences for a specific user.\n\nUse this tool to get sequences associated with a user in HubSpot. Useful for tracking user-specific automated processes.",
"toolkit": {
"name": "ArcadeHubspotAutomationApi",
"description": null,
"version": "0.1.0"
},
"input": {
"parameters": []
},
"output": {
"description": "Response from the API endpoint 'get-/automation/v4/sequences/'.",
"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": {
"provider_id": "arcade-hubspot",
"provider_type": "oauth2",
"id": null,
"oauth2": {
"scopes": [
"automation.sequences.read"
]
}
},
"secrets": null,
"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 hubspot_automation API."
},
"http_endpoint": {
"metadata": {
"object_type": "http_endpoint",
"version": "1.2.0",
"description": ""
},
"url": "https://api.hubapi.com/automation/v4/sequences/",
"http_method": "GET",
"headers": {},
"parameters": [],
"documentation_urls": [],
"secrets": [
{
"arcade_key": "auth_token",
"parameter_name": "Authorization",
"accepted_as": "header",
"formatted_value": "Bearer {authorization}",
"description": "The OAuth token to use for authentication.",
"is_auth_token": true
}
],
"request_body_spec": null,
"use_request_body_schema_mode": false,
"validate_request_body_schema": false
}
}

View file

@ -0,0 +1,127 @@
{
"name": "GetWorkflowIdMappings",
"fully_qualified_name": "HubspotAutomationApi.GetWorkflowIdMappings@0.1.0",
"description": "Retrieve HubSpot workflow ID mappings in batch.\n\nCall this tool to obtain mappings for HubSpot workflow IDs in batch. Useful for integrating workflows and managing automation processes.",
"toolkit": {
"name": "ArcadeHubspotAutomationApi",
"description": null,
"version": "0.1.0"
},
"input": {
"parameters": [
{
"name": "workflow_mappings_inputs",
"required": true,
"description": "A JSON array containing workflow mapping input objects for batch processing.",
"value_schema": {
"val_type": "json",
"inner_val_type": null,
"enum": null,
"properties": {
"inputs": {
"val_type": "array",
"inner_val_type": "json",
"enum": null,
"properties": null,
"inner_properties": {},
"description": null
}
},
"inner_properties": null,
"description": ""
},
"inferrable": true,
"http_endpoint_parameter_name": "requestBody"
}
]
},
"output": {
"description": "Response from the API endpoint 'post-/automation/v4/workflow-id-mappings/batch/read'.",
"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": {
"provider_id": "arcade-hubspot",
"provider_type": "oauth2",
"id": null,
"oauth2": {
"scopes": [
"automation"
]
}
},
"secrets": null,
"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 hubspot_automation API."
},
"http_endpoint": {
"metadata": {
"object_type": "http_endpoint",
"version": "1.2.0",
"description": ""
},
"url": "https://api.hubapi.com/automation/v4/workflow-id-mappings/batch/read",
"http_method": "POST",
"headers": {},
"parameters": [
{
"name": "requestBody",
"tool_parameter_name": "workflow_mappings_inputs",
"description": "",
"value_schema": {
"val_type": "json",
"inner_val_type": null,
"enum": null,
"properties": {
"inputs": {
"val_type": "array",
"inner_val_type": "json",
"enum": null,
"properties": null,
"inner_properties": {},
"description": null
}
},
"inner_properties": null,
"description": ""
},
"accepted_as": "body",
"required": true,
"deprecated": false,
"default": null,
"documentation_urls": []
}
],
"documentation_urls": [],
"secrets": [
{
"arcade_key": "auth_token",
"parameter_name": "Authorization",
"accepted_as": "header",
"formatted_value": "Bearer {authorization}",
"description": "The OAuth token to use for authentication.",
"is_auth_token": true
}
],
"request_body_spec": "{\n \"content\": {\n \"application/json\": {\n \"schema\": {\n \"required\": [\n \"inputs\"\n ],\n \"type\": \"object\",\n \"properties\": {\n \"inputs\": {\n \"type\": \"array\",\n \"items\": {\n \"oneOf\": [\n {\n \"title\": \"FLOW_ID\",\n \"required\": [\n \"flowMigrationStatuses\",\n \"type\"\n ],\n \"type\": \"object\",\n \"properties\": {\n \"flowMigrationStatuses\": {\n \"type\": \"string\"\n },\n \"type\": {\n \"type\": \"string\",\n \"default\": \"FLOW_ID\",\n \"enum\": [\n \"FLOW_ID\"\n ]\n }\n }\n },\n {\n \"title\": \"WORKFLOW_ID\",\n \"required\": [\n \"flowMigrationStatusForClassicWorkflows\",\n \"type\"\n ],\n \"type\": \"object\",\n \"properties\": {\n \"flowMigrationStatusForClassicWorkflows\": {\n \"type\": \"string\"\n },\n \"type\": {\n \"type\": \"string\",\n \"default\": \"WORKFLOW_ID\",\n \"enum\": [\n \"WORKFLOW_ID\"\n ]\n }\n }\n }\n ]\n }\n }\n }\n }\n }\n },\n \"required\": true\n}",
"use_request_body_schema_mode": true,
"validate_request_body_schema": true
}
}

View file

@ -0,0 +1,127 @@
{
"name": "GetWorkflows",
"fully_qualified_name": "HubspotAutomationApi.GetWorkflows@0.1.0",
"description": "Retrieve details of HubSpot workflows.\n\nThis tool allows you to fetch information about workflows in HubSpot. Use it when you need to access or manage workflow details for automation purposes.",
"toolkit": {
"name": "ArcadeHubspotAutomationApi",
"description": null,
"version": "0.1.0"
},
"input": {
"parameters": [
{
"name": "workflow_inputs",
"required": true,
"description": "A JSON array containing details of workflows to be retrieved. Each element must be a JSON object with necessary attributes required for HubSpot workflows.",
"value_schema": {
"val_type": "json",
"inner_val_type": null,
"enum": null,
"properties": {
"inputs": {
"val_type": "array",
"inner_val_type": "json",
"enum": null,
"properties": null,
"inner_properties": {},
"description": null
}
},
"inner_properties": null,
"description": ""
},
"inferrable": true,
"http_endpoint_parameter_name": "requestBody"
}
]
},
"output": {
"description": "Response from the API endpoint 'post-/automation/v4/flows/batch/read'.",
"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": {
"provider_id": "arcade-hubspot",
"provider_type": "oauth2",
"id": null,
"oauth2": {
"scopes": [
"automation"
]
}
},
"secrets": null,
"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 hubspot_automation API."
},
"http_endpoint": {
"metadata": {
"object_type": "http_endpoint",
"version": "1.2.0",
"description": ""
},
"url": "https://api.hubapi.com/automation/v4/flows/batch/read",
"http_method": "POST",
"headers": {},
"parameters": [
{
"name": "requestBody",
"tool_parameter_name": "workflow_inputs",
"description": "",
"value_schema": {
"val_type": "json",
"inner_val_type": null,
"enum": null,
"properties": {
"inputs": {
"val_type": "array",
"inner_val_type": "json",
"enum": null,
"properties": null,
"inner_properties": {},
"description": null
}
},
"inner_properties": null,
"description": ""
},
"accepted_as": "body",
"required": true,
"deprecated": false,
"default": null,
"documentation_urls": []
}
],
"documentation_urls": [],
"secrets": [
{
"arcade_key": "auth_token",
"parameter_name": "Authorization",
"accepted_as": "header",
"formatted_value": "Bearer {authorization}",
"description": "The OAuth token to use for authentication.",
"is_auth_token": true
}
],
"request_body_spec": "{\n \"content\": {\n \"application/json\": {\n \"schema\": {\n \"required\": [\n \"inputs\"\n ],\n \"type\": \"object\",\n \"properties\": {\n \"inputs\": {\n \"type\": \"array\",\n \"items\": {\n \"oneOf\": [\n {\n \"title\": \"FLOW_ID\",\n \"required\": [\n \"flowId\",\n \"type\"\n ],\n \"type\": \"object\",\n \"properties\": {\n \"type\": {\n \"type\": \"string\",\n \"default\": \"FLOW_ID\",\n \"enum\": [\n \"FLOW_ID\"\n ]\n },\n \"flowId\": {\n \"type\": \"string\"\n }\n }\n }\n ]\n }\n }\n }\n }\n }\n },\n \"required\": true\n}",
"use_request_body_schema_mode": true,
"validate_request_body_schema": true
}
}

View file

@ -0,0 +1,61 @@
[build-system]
requires = [ "hatchling",]
build-backend = "hatchling.build"
[project]
name = "arcade_hubspot_automation_api"
version = "0.1.0"
description = "Tools that enable LLMs to interact directly with the HubSpot Automation API."
requires-python = ">=3.10"
dependencies = [
"arcade-tdk>=3.0.0,<4.0.0",
"httpx[http2]>=0.27.2,<1.0.0",
"jsonschema>=4.0.0,<5.0.0",
]
[[project.authors]]
email = "support@arcade.dev"
[project.optional-dependencies]
dev = [
"arcade-mcp[all]>=1.2.0,<2.0.0",
"arcade-serve>=3.0.0,<4.0.0",
"pytest>=8.3.0,<8.4.0",
"pytest-cov>=4.0.0,<4.1.0",
"pytest-mock>=3.11.1,<3.12.0",
"pytest-asyncio>=0.24.0,<0.25.0",
"mypy>=1.5.1,<1.6.0",
"pre-commit>=3.4.0,<3.5.0",
"tox>=4.11.1,<4.12.0",
"ruff>=0.7.4,<0.8.0",
]
# Tell Arcade.dev that this package is a toolkit
[project.entry-points.arcade_toolkits]
toolkit_name = "arcade_hubspot_automation_api"
# Use local path sources for arcade libs when working locally
[tool.uv.sources]
arcade-mcp = { path = "../../", editable = true }
arcade-serve = { path = "../../libs/arcade-serve/", editable = true }
arcade-tdk = { path = "../../libs/arcade-tdk/", editable = true }
[tool.mypy]
files = [ "arcade_hubspot_automation_api/**/*.py",]
python_version = "3.10"
disallow_untyped_defs = "True"
disallow_any_unimported = "True"
no_implicit_optional = "True"
check_untyped_defs = "True"
warn_return_any = "True"
warn_unused_ignores = "True"
show_error_codes = "True"
ignore_missing_imports = "True"
[tool.pytest.ini_options]
testpaths = [ "tests",]
[tool.coverage.report]
skip_empty = true
[tool.hatch.build.targets.wheel]
packages = [ "arcade_hubspot_automation_api",]

View file

@ -0,0 +1,18 @@
files: ^.*/hubspot_cms_api/.*
repos:
- repo: https://github.com/pre-commit/pre-commit-hooks
rev: "v4.4.0"
hooks:
- id: check-case-conflict
- id: check-merge-conflict
- id: check-toml
- id: check-yaml
- id: end-of-file-fixer
- id: trailing-whitespace
- repo: https://github.com/astral-sh/ruff-pre-commit
rev: v0.6.7
hooks:
- id: ruff
args: [--fix]
- id: ruff-format

View file

@ -0,0 +1,44 @@
target-version = "py310"
line-length = 100
fix = true
[lint]
select = [
# flake8-2020
"YTT",
# flake8-bandit
"S",
# flake8-bugbear
"B",
# flake8-builtins
"A",
# flake8-comprehensions
"C4",
# flake8-debugger
"T10",
# flake8-simplify
"SIM",
# isort
"I",
# mccabe
"C90",
# pycodestyle
"E", "W",
# pyflakes
"F",
# pygrep-hooks
"PGH",
# pyupgrade
"UP",
# ruff
"RUF",
# tryceratops
"TRY",
]
[lint.per-file-ignores]
"**/tests/*" = ["S101"]
[format]
preview = true
skip-magic-trailing-comma = false

View file

@ -0,0 +1,21 @@
MIT License
Copyright (c) 2025, Arcade AI
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.

View file

@ -0,0 +1,54 @@
.PHONY: help
help:
@echo "🛠️ github Commands:\n"
@grep -E '^[a-zA-Z_-]+:.*?## .*$$' $(MAKEFILE_LIST) | sort | awk 'BEGIN {FS = ":.*?## "}; {printf "\033[36m%-30s\033[0m %s\n", $$1, $$2}'
.PHONY: install
install: ## Install the uv environment and install all packages with dependencies
@echo "🚀 Creating virtual environment and installing all packages using uv"
@uv sync --active --all-extras --no-sources
@if [ -f .pre-commit-config.yaml ]; then uv run --no-sources pre-commit install; fi
@echo "✅ All packages and dependencies installed via uv"
.PHONY: install-local
install-local: ## Install the uv environment and install all packages with dependencies with local Arcade sources
@echo "🚀 Creating virtual environment and installing all packages using uv"
@uv sync --active --all-extras
@if [ -f .pre-commit-config.yaml ]; then uv run pre-commit install; fi
@echo "✅ All packages and dependencies installed via uv"
.PHONY: build
build: clean-build ## Build wheel file using poetry
@echo "🚀 Creating wheel file"
uv build
.PHONY: clean-build
clean-build: ## clean build artifacts
@echo "🗑️ Cleaning dist directory"
rm -rf dist
.PHONY: test
test: ## Test the code with pytest
@echo "🚀 Testing code: Running pytest"
@uv run --no-sources pytest -W ignore -v --cov --cov-config=pyproject.toml --cov-report=xml
.PHONY: coverage
coverage: ## Generate coverage report
@echo "coverage report"
@uv run --no-sources coverage report
@echo "Generating coverage report"
@uv run --no-sources coverage html
.PHONY: bump-version
bump-version: ## Bump the version in the pyproject.toml file by a patch version
@echo "🚀 Bumping version in pyproject.toml"
uv version --no-sources --bump patch
.PHONY: check
check: ## Run code quality tools.
@if [ -f .pre-commit-config.yaml ]; then\
echo "🚀 Linting code: Running pre-commit";\
uv run --no-sources pre-commit run -a;\
fi
@echo "🚀 Static type checking: Running mypy"
@uv run --no-sources mypy --config-file=pyproject.toml

File diff suppressed because one or more lines are too long

File diff suppressed because it is too large Load diff

File diff suppressed because it is too large Load diff

File diff suppressed because one or more lines are too long

View file

@ -0,0 +1,224 @@
{
"name": "AddHubdbTableRow",
"fully_qualified_name": "HubspotCmsApi.AddHubdbTableRow@0.1.0",
"description": "Add a new row to a HubDB draft table.\n\nUse this tool to add a new row to the draft version of a HubDB table. To make these changes live, publish the table afterwards.",
"toolkit": {
"name": "ArcadeHubspotCmsApi",
"description": null,
"version": "0.1.0"
},
"input": {
"parameters": [
{
"name": "target_table_id_or_name",
"required": true,
"description": "The ID or name of the target HubDB table to add the row to.",
"value_schema": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "The ID or name of the target table."
},
"inferrable": true,
"http_endpoint_parameter_name": "tableIdOrName"
},
{
"name": "hubdb_table_row_data",
"required": true,
"description": "JSON object containing key-value pairs representing the column names and values for the new row to be added. Includes optional fields like path, childTableId, values, name, and displayIndex.",
"value_schema": {
"val_type": "json",
"inner_val_type": null,
"enum": null,
"properties": {
"path": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "Specifies the value for `hs_path` column, which will be used as slug in the dynamic pages"
},
"childTableId": {
"val_type": "integer",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "Specifies the value for the column child table id"
},
"values": {
"val_type": "json",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "List of key value pairs with the column name and column value"
},
"name": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "Specifies the value for `hs_name` column, which will be used as title in the dynamic pages"
},
"displayIndex": {
"val_type": "integer",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": null
}
},
"inner_properties": null,
"description": ""
},
"inferrable": true,
"http_endpoint_parameter_name": "requestBody"
}
]
},
"output": {
"description": "Response from the API endpoint 'post-/cms/v3/hubdb/tables/{tableIdOrName}/rows_createTableRow'.",
"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": {
"provider_id": "arcade-hubspot",
"provider_type": "oauth2",
"id": null,
"oauth2": {
"scopes": [
"hubdb"
]
}
},
"secrets": null,
"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 hubspot_cms API."
},
"http_endpoint": {
"metadata": {
"object_type": "http_endpoint",
"version": "1.2.0",
"description": ""
},
"url": "https://api.hubapi.com/cms/v3/hubdb/tables/{tableIdOrName}/rows",
"http_method": "POST",
"headers": {},
"parameters": [
{
"name": "tableIdOrName",
"tool_parameter_name": "target_table_id_or_name",
"description": "The ID or name of the target table.",
"value_schema": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "The ID or name of the target table."
},
"accepted_as": "path",
"required": true,
"deprecated": false,
"default": null,
"documentation_urls": []
},
{
"name": "requestBody",
"tool_parameter_name": "hubdb_table_row_data",
"description": "",
"value_schema": {
"val_type": "json",
"inner_val_type": null,
"enum": null,
"properties": {
"path": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "Specifies the value for `hs_path` column, which will be used as slug in the dynamic pages"
},
"childTableId": {
"val_type": "integer",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "Specifies the value for the column child table id"
},
"values": {
"val_type": "json",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "List of key value pairs with the column name and column value"
},
"name": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "Specifies the value for `hs_name` column, which will be used as title in the dynamic pages"
},
"displayIndex": {
"val_type": "integer",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": null
}
},
"inner_properties": null,
"description": ""
},
"accepted_as": "body",
"required": true,
"deprecated": false,
"default": null,
"documentation_urls": []
}
],
"documentation_urls": [],
"secrets": [
{
"arcade_key": "auth_token",
"parameter_name": "Authorization",
"accepted_as": "header",
"formatted_value": "Bearer {authorization}",
"description": "The OAuth token to use for authentication.",
"is_auth_token": true
}
],
"request_body_spec": "{\n \"content\": {\n \"application/json\": {\n \"schema\": {\n \"required\": [\n \"values\"\n ],\n \"type\": \"object\",\n \"properties\": {\n \"path\": {\n \"type\": \"string\",\n \"description\": \"Specifies the value for `hs_path` column, which will be used as slug in the dynamic pages\"\n },\n \"childTableId\": {\n \"type\": \"integer\",\n \"description\": \"Specifies the value for the column child table id\",\n \"format\": \"int64\"\n },\n \"values\": {\n \"type\": \"object\",\n \"additionalProperties\": {\n \"type\": \"object\",\n \"description\": \"Schema reference broken: #/components/schemas/Variant\",\n \"additionalProperties\": true,\n \"x-moar-broken-reference\": \"#/components/schemas/Variant\"\n },\n \"description\": \"List of key value pairs with the column name and column value\"\n },\n \"name\": {\n \"type\": \"string\",\n \"description\": \"Specifies the value for `hs_name` column, which will be used as title in the dynamic pages\"\n },\n \"displayIndex\": {\n \"type\": \"integer\",\n \"format\": \"int32\"\n }\n }\n }\n }\n },\n \"required\": true\n}",
"use_request_body_schema_mode": true,
"validate_request_body_schema": true
}
}

View file

@ -0,0 +1,109 @@
{
"name": "ArchiveBlogTags",
"fully_qualified_name": "HubspotCmsApi.ArchiveBlogTags@0.1.0",
"description": "Archive multiple blog tags in HubSpot CMS.\n\nUse this tool to delete multiple blog tag objects in HubSpot CMS by providing their identifiers. Suitable for cleaning up unused or obsolete tags in batches.",
"toolkit": {
"name": "ArcadeHubspotCmsApi",
"description": null,
"version": "0.1.0"
},
"input": {
"parameters": [
{
"name": "blog_tag_identifiers",
"required": true,
"description": "An array of strings representing the blog tag identifiers to be archived.",
"value_schema": {
"val_type": "array",
"inner_val_type": "string",
"enum": null,
"properties": null,
"inner_properties": null,
"description": "Strings to input."
},
"inferrable": true,
"http_endpoint_parameter_name": "inputs"
}
]
},
"output": {
"description": "Response from the API endpoint 'post-/cms/v3/blogs/tags/batch/archive_archiveBatch'.",
"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": {
"provider_id": "arcade-hubspot",
"provider_type": "oauth2",
"id": null,
"oauth2": {
"scopes": [
"content"
]
}
},
"secrets": null,
"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 hubspot_cms API."
},
"http_endpoint": {
"metadata": {
"object_type": "http_endpoint",
"version": "1.2.0",
"description": ""
},
"url": "https://api.hubapi.com/cms/v3/blogs/tags/batch/archive",
"http_method": "POST",
"headers": {},
"parameters": [
{
"name": "inputs",
"tool_parameter_name": "blog_tag_identifiers",
"description": "Strings to input.",
"value_schema": {
"val_type": "array",
"inner_val_type": "string",
"enum": null,
"properties": null,
"inner_properties": null,
"description": "Strings to input."
},
"accepted_as": "body",
"required": true,
"deprecated": false,
"default": null,
"documentation_urls": []
}
],
"documentation_urls": [],
"secrets": [
{
"arcade_key": "auth_token",
"parameter_name": "Authorization",
"accepted_as": "header",
"formatted_value": "Bearer {authorization}",
"description": "The OAuth token to use for authentication.",
"is_auth_token": true
}
],
"request_body_spec": "{\n \"description\": \"The JSON array of Blog Tag ids.\",\n \"content\": {\n \"application/json\": {\n \"schema\": {\n \"required\": [\n \"inputs\"\n ],\n \"type\": \"object\",\n \"properties\": {\n \"inputs\": {\n \"type\": \"array\",\n \"description\": \"Strings to input.\",\n \"items\": {\n \"type\": \"string\"\n }\n }\n },\n \"description\": \"Wrapper for providing an array of strings as inputs.\"\n }\n }\n },\n \"required\": true\n}",
"use_request_body_schema_mode": false,
"validate_request_body_schema": false
}
}

View file

@ -0,0 +1,109 @@
{
"name": "ArchiveHubdbTable",
"fully_qualified_name": "HubspotCmsApi.ArchiveHubdbTable@0.1.0",
"description": "Archive a HubDB table in HubSpot CMS.\n\nUse this tool to archive (soft delete) an existing HubDB table in HubSpot CMS, affecting both published and draft versions.",
"toolkit": {
"name": "ArcadeHubspotCmsApi",
"description": null,
"version": "0.1.0"
},
"input": {
"parameters": [
{
"name": "hubdb_table_identifier",
"required": true,
"description": "The ID or name of the HubDB table to archive. Provides the reference needed to identify the table within the system.",
"value_schema": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "The ID or name of the table to archive."
},
"inferrable": true,
"http_endpoint_parameter_name": "tableIdOrName"
}
]
},
"output": {
"description": "Response from the API endpoint 'delete-/cms/v3/hubdb/tables/{tableIdOrName}_archiveTable'.",
"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": {
"provider_id": "arcade-hubspot",
"provider_type": "oauth2",
"id": null,
"oauth2": {
"scopes": [
"hubdb"
]
}
},
"secrets": null,
"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 hubspot_cms API."
},
"http_endpoint": {
"metadata": {
"object_type": "http_endpoint",
"version": "1.2.0",
"description": ""
},
"url": "https://api.hubapi.com/cms/v3/hubdb/tables/{tableIdOrName}",
"http_method": "DELETE",
"headers": {},
"parameters": [
{
"name": "tableIdOrName",
"tool_parameter_name": "hubdb_table_identifier",
"description": "The ID or name of the table to archive.",
"value_schema": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "The ID or name of the table to archive."
},
"accepted_as": "path",
"required": true,
"deprecated": false,
"default": null,
"documentation_urls": []
}
],
"documentation_urls": [],
"secrets": [
{
"arcade_key": "auth_token",
"parameter_name": "Authorization",
"accepted_as": "header",
"formatted_value": "Bearer {authorization}",
"description": "The OAuth token to use for authentication.",
"is_auth_token": true
}
],
"request_body_spec": null,
"use_request_body_schema_mode": false,
"validate_request_body_schema": false
}
}

View file

@ -0,0 +1,208 @@
{
"name": "AttachAuthorToMultilangGroup",
"fully_qualified_name": "HubspotCmsApi.AttachAuthorToMultilangGroup@0.1.0",
"description": "Attach a Blog Author to a multi-language group.\n\nUse this tool to link a specific blog author with a multi-language group in HubSpot CMS. This action helps manage authors across different language variations of your blog.",
"toolkit": {
"name": "ArcadeHubspotCmsApi",
"description": null,
"version": "0.1.0"
},
"input": {
"parameters": [
{
"name": "designated_language",
"required": true,
"description": "The language code of the blog author to be added to a multi-language group, e.g., 'en' for English.",
"value_schema": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "Designated language of the object to add to a multi-language group."
},
"inferrable": true,
"http_endpoint_parameter_name": "language"
},
{
"name": "author_object_id",
"required": true,
"description": "ID of the blog author to add to a multi-language group in HubSpot CMS.",
"value_schema": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "ID of the object to add to a multi-language group."
},
"inferrable": true,
"http_endpoint_parameter_name": "id"
},
{
"name": "primary_language_object_id",
"required": true,
"description": "ID of the primary language object in the multi-language group.",
"value_schema": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "ID of primary language object in multi-language group."
},
"inferrable": true,
"http_endpoint_parameter_name": "primaryId"
},
{
"name": "primary_language",
"required": false,
"description": "Specify the primary language of the multi-language group to which the author will be attached.",
"value_schema": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "Primary language of the multi-language group."
},
"inferrable": true,
"http_endpoint_parameter_name": "primaryLanguage"
}
]
},
"output": {
"description": "Response from the API endpoint 'post-/cms/v3/blogs/authors/multi-language/attach-to-lang-group_attachToLangGroup'.",
"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": {
"provider_id": "arcade-hubspot",
"provider_type": "oauth2",
"id": null,
"oauth2": {
"scopes": [
"content"
]
}
},
"secrets": null,
"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 hubspot_cms API."
},
"http_endpoint": {
"metadata": {
"object_type": "http_endpoint",
"version": "1.2.0",
"description": ""
},
"url": "https://api.hubapi.com/cms/v3/blogs/authors/multi-language/attach-to-lang-group",
"http_method": "POST",
"headers": {},
"parameters": [
{
"name": "language",
"tool_parameter_name": "designated_language",
"description": "Designated language of the object to add to a multi-language group.",
"value_schema": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "Designated language of the object to add to a multi-language group."
},
"accepted_as": "body",
"required": true,
"deprecated": false,
"default": null,
"documentation_urls": []
},
{
"name": "id",
"tool_parameter_name": "author_object_id",
"description": "ID of the object to add to a multi-language group.",
"value_schema": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "ID of the object to add to a multi-language group."
},
"accepted_as": "body",
"required": true,
"deprecated": false,
"default": null,
"documentation_urls": []
},
{
"name": "primaryId",
"tool_parameter_name": "primary_language_object_id",
"description": "ID of primary language object in multi-language group.",
"value_schema": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "ID of primary language object in multi-language group."
},
"accepted_as": "body",
"required": true,
"deprecated": false,
"default": null,
"documentation_urls": []
},
{
"name": "primaryLanguage",
"tool_parameter_name": "primary_language",
"description": "Primary language of the multi-language group.",
"value_schema": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "Primary language of the multi-language group."
},
"accepted_as": "body",
"required": false,
"deprecated": false,
"default": null,
"documentation_urls": []
}
],
"documentation_urls": [],
"secrets": [
{
"arcade_key": "auth_token",
"parameter_name": "Authorization",
"accepted_as": "header",
"formatted_value": "Bearer {authorization}",
"description": "The OAuth token to use for authentication.",
"is_auth_token": true
}
],
"request_body_spec": "{\n \"description\": \"The JSON representation of the AttachToLangPrimaryRequest object.\",\n \"content\": {\n \"application/json\": {\n \"schema\": {\n \"required\": [\n \"id\",\n \"language\",\n \"primaryId\"\n ],\n \"type\": \"object\",\n \"properties\": {\n \"language\": {\n \"type\": \"string\",\n \"description\": \"Designated language of the object to add to a multi-language group.\"\n },\n \"id\": {\n \"type\": \"string\",\n \"description\": \"ID of the object to add to a multi-language group.\"\n },\n \"primaryId\": {\n \"type\": \"string\",\n \"description\": \"ID of primary language object in multi-language group.\"\n },\n \"primaryLanguage\": {\n \"type\": \"string\",\n \"description\": \"Primary language of the multi-language group.\"\n }\n },\n \"description\": \"Request body object for attaching objects to multi-language groups.\"\n }\n }\n },\n \"required\": true\n}",
"use_request_body_schema_mode": false,
"validate_request_body_schema": false
}
}

File diff suppressed because one or more lines are too long

View file

@ -0,0 +1,208 @@
{
"name": "AttachBlogToLanguageGroup",
"fully_qualified_name": "HubspotCmsApi.AttachBlogToLanguageGroup@0.1.0",
"description": "Attach a blog to a multi-language group in HubSpot CMS.\n\nUse this tool to attach a blog to a specified multi-language group within HubSpot CMS. It is helpful when managing blogs in different languages and ensuring they are correctly grouped.",
"toolkit": {
"name": "ArcadeHubspotCmsApi",
"description": null,
"version": "0.1.0"
},
"input": {
"parameters": [
{
"name": "designated_language",
"required": true,
"description": "The language code of the blog to add to a multi-language group. Use standard language codes like 'en', 'fr', etc.",
"value_schema": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "Designated language of the object to add to a multi-language group."
},
"inferrable": true,
"http_endpoint_parameter_name": "language"
},
{
"name": "object_id_to_add",
"required": true,
"description": "ID of the blog object to be added to a multi-language group in HubSpot CMS.",
"value_schema": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "ID of the object to add to a multi-language group."
},
"inferrable": true,
"http_endpoint_parameter_name": "id"
},
{
"name": "primary_language_object_id",
"required": true,
"description": "ID of the primary language object in the multi-language group to which the blog will be attached.",
"value_schema": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "ID of primary language object in multi-language group."
},
"inferrable": true,
"http_endpoint_parameter_name": "primaryId"
},
{
"name": "primary_language",
"required": false,
"description": "Primary language code for the multi-language group to which the blog should be attached (e.g., 'en', 'fr').",
"value_schema": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "Primary language of the multi-language group."
},
"inferrable": true,
"http_endpoint_parameter_name": "primaryLanguage"
}
]
},
"output": {
"description": "Response from the API endpoint 'post-/cms/v3/blog-settings/settings/multi-language/attach-to-lang-group'.",
"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": {
"provider_id": "arcade-hubspot",
"provider_type": "oauth2",
"id": null,
"oauth2": {
"scopes": [
"content"
]
}
},
"secrets": null,
"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 hubspot_cms API."
},
"http_endpoint": {
"metadata": {
"object_type": "http_endpoint",
"version": "1.2.0",
"description": ""
},
"url": "https://api.hubapi.com/cms/v3/blog-settings/settings/multi-language/attach-to-lang-group",
"http_method": "POST",
"headers": {},
"parameters": [
{
"name": "language",
"tool_parameter_name": "designated_language",
"description": "Designated language of the object to add to a multi-language group.",
"value_schema": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "Designated language of the object to add to a multi-language group."
},
"accepted_as": "body",
"required": true,
"deprecated": false,
"default": null,
"documentation_urls": []
},
{
"name": "id",
"tool_parameter_name": "object_id_to_add",
"description": "ID of the object to add to a multi-language group.",
"value_schema": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "ID of the object to add to a multi-language group."
},
"accepted_as": "body",
"required": true,
"deprecated": false,
"default": null,
"documentation_urls": []
},
{
"name": "primaryId",
"tool_parameter_name": "primary_language_object_id",
"description": "ID of primary language object in multi-language group.",
"value_schema": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "ID of primary language object in multi-language group."
},
"accepted_as": "body",
"required": true,
"deprecated": false,
"default": null,
"documentation_urls": []
},
{
"name": "primaryLanguage",
"tool_parameter_name": "primary_language",
"description": "Primary language of the multi-language group.",
"value_schema": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "Primary language of the multi-language group."
},
"accepted_as": "body",
"required": false,
"deprecated": false,
"default": null,
"documentation_urls": []
}
],
"documentation_urls": [],
"secrets": [
{
"arcade_key": "auth_token",
"parameter_name": "Authorization",
"accepted_as": "header",
"formatted_value": "Bearer {authorization}",
"description": "The OAuth token to use for authentication.",
"is_auth_token": true
}
],
"request_body_spec": "{\n \"description\": \"The JSON representation of the AttachToLangPrimaryRequest object.\",\n \"content\": {\n \"application/json\": {\n \"schema\": {\n \"required\": [\n \"id\",\n \"language\",\n \"primaryId\"\n ],\n \"type\": \"object\",\n \"properties\": {\n \"language\": {\n \"type\": \"string\",\n \"description\": \"Designated language of the object to add to a multi-language group.\"\n },\n \"id\": {\n \"type\": \"string\",\n \"description\": \"ID of the object to add to a multi-language group.\"\n },\n \"primaryId\": {\n \"type\": \"string\",\n \"description\": \"ID of primary language object in multi-language group.\"\n },\n \"primaryLanguage\": {\n \"type\": \"string\",\n \"description\": \"Primary language of the multi-language group.\"\n }\n },\n \"description\": \"Request body object for attaching objects to multi-language groups.\"\n }\n }\n },\n \"required\": true\n}",
"use_request_body_schema_mode": false,
"validate_request_body_schema": false
}
}

View file

@ -0,0 +1,208 @@
{
"name": "AttachLandingPageToLanguageGroup",
"fully_qualified_name": "HubspotCmsApi.AttachLandingPageToLanguageGroup@0.1.0",
"description": "Attach a landing page to a multi-language group.\n\nUse this tool to associate a landing page with an existing multi-language group, enabling better management of language variations within HubSpot CMS.",
"toolkit": {
"name": "ArcadeHubspotCmsApi",
"description": null,
"version": "0.1.0"
},
"input": {
"parameters": [
{
"name": "designated_language_to_add",
"required": true,
"description": "The language of the landing page to add to a multi-language group. Expect a language code.",
"value_schema": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "Designated language of the object to add to a multi-language group."
},
"inferrable": true,
"http_endpoint_parameter_name": "language"
},
{
"name": "object_id_for_language_group",
"required": true,
"description": "ID of the landing page to add to the multi-language group.",
"value_schema": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "ID of the object to add to a multi-language group."
},
"inferrable": true,
"http_endpoint_parameter_name": "id"
},
{
"name": "primary_language_object_id",
"required": true,
"description": "Provide the ID of the primary language object in the multi-language group to which the landing page will be attached.",
"value_schema": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "ID of primary language object in multi-language group."
},
"inferrable": true,
"http_endpoint_parameter_name": "primaryId"
},
{
"name": "primary_language",
"required": false,
"description": "Specifies the primary language of the multi-language group to which the landing page will be attached.",
"value_schema": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "Primary language of the multi-language group."
},
"inferrable": true,
"http_endpoint_parameter_name": "primaryLanguage"
}
]
},
"output": {
"description": "Response from the API endpoint 'post-/cms/v3/pages/landing-pages/multi-language/attach-to-lang-group_attachToLangGroup'.",
"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": {
"provider_id": "arcade-hubspot",
"provider_type": "oauth2",
"id": null,
"oauth2": {
"scopes": [
"content"
]
}
},
"secrets": null,
"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 hubspot_cms API."
},
"http_endpoint": {
"metadata": {
"object_type": "http_endpoint",
"version": "1.2.0",
"description": ""
},
"url": "https://api.hubapi.com/cms/v3/pages/landing-pages/multi-language/attach-to-lang-group",
"http_method": "POST",
"headers": {},
"parameters": [
{
"name": "language",
"tool_parameter_name": "designated_language_to_add",
"description": "Designated language of the object to add to a multi-language group.",
"value_schema": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "Designated language of the object to add to a multi-language group."
},
"accepted_as": "body",
"required": true,
"deprecated": false,
"default": null,
"documentation_urls": []
},
{
"name": "id",
"tool_parameter_name": "object_id_for_language_group",
"description": "ID of the object to add to a multi-language group.",
"value_schema": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "ID of the object to add to a multi-language group."
},
"accepted_as": "body",
"required": true,
"deprecated": false,
"default": null,
"documentation_urls": []
},
{
"name": "primaryId",
"tool_parameter_name": "primary_language_object_id",
"description": "ID of primary language object in multi-language group.",
"value_schema": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "ID of primary language object in multi-language group."
},
"accepted_as": "body",
"required": true,
"deprecated": false,
"default": null,
"documentation_urls": []
},
{
"name": "primaryLanguage",
"tool_parameter_name": "primary_language",
"description": "Primary language of the multi-language group.",
"value_schema": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "Primary language of the multi-language group."
},
"accepted_as": "body",
"required": false,
"deprecated": false,
"default": null,
"documentation_urls": []
}
],
"documentation_urls": [],
"secrets": [
{
"arcade_key": "auth_token",
"parameter_name": "Authorization",
"accepted_as": "header",
"formatted_value": "Bearer {authorization}",
"description": "The OAuth token to use for authentication.",
"is_auth_token": true
}
],
"request_body_spec": "{\n \"description\": \"The JSON representation of the AttachToLangPrimaryRequest object.\",\n \"content\": {\n \"application/json\": {\n \"schema\": {\n \"required\": [\n \"id\",\n \"language\",\n \"primaryId\"\n ],\n \"type\": \"object\",\n \"properties\": {\n \"language\": {\n \"type\": \"string\",\n \"description\": \"Designated language of the object to add to a multi-language group.\"\n },\n \"id\": {\n \"type\": \"string\",\n \"description\": \"ID of the object to add to a multi-language group.\"\n },\n \"primaryId\": {\n \"type\": \"string\",\n \"description\": \"ID of primary language object in multi-language group.\"\n },\n \"primaryLanguage\": {\n \"type\": \"string\",\n \"description\": \"Primary language of the multi-language group.\"\n }\n },\n \"description\": \"Request body object fro attaching objects to multi-language groups.\"\n }\n }\n },\n \"required\": true\n}",
"use_request_body_schema_mode": false,
"validate_request_body_schema": false
}
}

View file

@ -0,0 +1,208 @@
{
"name": "AttachPageToLanguageGroup",
"fully_qualified_name": "HubspotCmsApi.AttachPageToLanguageGroup@0.1.0",
"description": "Attach a site page to a multi-language group.\n\nUse this tool to attach a specific site page to an existing multi-language group, enabling multi-language support for that page.",
"toolkit": {
"name": "ArcadeHubspotCmsApi",
"description": null,
"version": "0.1.0"
},
"input": {
"parameters": [
{
"name": "page_language",
"required": true,
"description": "Designated language code (e.g., 'en', 'fr') of the page to add to a multi-language group.",
"value_schema": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "Designated language of the object to add to a multi-language group."
},
"inferrable": true,
"http_endpoint_parameter_name": "language"
},
{
"name": "object_id_to_add_to_language_group",
"required": true,
"description": "ID of the site page object to add to a multi-language group.",
"value_schema": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "ID of the object to add to a multi-language group."
},
"inferrable": true,
"http_endpoint_parameter_name": "id"
},
{
"name": "primary_language_object_id",
"required": true,
"description": "ID of the primary language object in the multi-language group to which the page will be attached.",
"value_schema": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "ID of primary language object in multi-language group."
},
"inferrable": true,
"http_endpoint_parameter_name": "primaryId"
},
{
"name": "primary_language_of_group",
"required": false,
"description": "Specify the primary language for the multi-language group.",
"value_schema": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "Primary language of the multi-language group."
},
"inferrable": true,
"http_endpoint_parameter_name": "primaryLanguage"
}
]
},
"output": {
"description": "Response from the API endpoint 'post-/cms/v3/pages/site-pages/multi-language/attach-to-lang-group_attachToLangGroup'.",
"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": {
"provider_id": "arcade-hubspot",
"provider_type": "oauth2",
"id": null,
"oauth2": {
"scopes": [
"content"
]
}
},
"secrets": null,
"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 hubspot_cms API."
},
"http_endpoint": {
"metadata": {
"object_type": "http_endpoint",
"version": "1.2.0",
"description": ""
},
"url": "https://api.hubapi.com/cms/v3/pages/site-pages/multi-language/attach-to-lang-group",
"http_method": "POST",
"headers": {},
"parameters": [
{
"name": "language",
"tool_parameter_name": "page_language",
"description": "Designated language of the object to add to a multi-language group.",
"value_schema": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "Designated language of the object to add to a multi-language group."
},
"accepted_as": "body",
"required": true,
"deprecated": false,
"default": null,
"documentation_urls": []
},
{
"name": "id",
"tool_parameter_name": "object_id_to_add_to_language_group",
"description": "ID of the object to add to a multi-language group.",
"value_schema": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "ID of the object to add to a multi-language group."
},
"accepted_as": "body",
"required": true,
"deprecated": false,
"default": null,
"documentation_urls": []
},
{
"name": "primaryId",
"tool_parameter_name": "primary_language_object_id",
"description": "ID of primary language object in multi-language group.",
"value_schema": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "ID of primary language object in multi-language group."
},
"accepted_as": "body",
"required": true,
"deprecated": false,
"default": null,
"documentation_urls": []
},
{
"name": "primaryLanguage",
"tool_parameter_name": "primary_language_of_group",
"description": "Primary language of the multi-language group.",
"value_schema": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "Primary language of the multi-language group."
},
"accepted_as": "body",
"required": false,
"deprecated": false,
"default": null,
"documentation_urls": []
}
],
"documentation_urls": [],
"secrets": [
{
"arcade_key": "auth_token",
"parameter_name": "Authorization",
"accepted_as": "header",
"formatted_value": "Bearer {authorization}",
"description": "The OAuth token to use for authentication.",
"is_auth_token": true
}
],
"request_body_spec": "{\n \"description\": \"The JSON representation of the AttachToLangPrimaryRequest object.\",\n \"content\": {\n \"application/json\": {\n \"schema\": {\n \"required\": [\n \"id\",\n \"language\",\n \"primaryId\"\n ],\n \"type\": \"object\",\n \"properties\": {\n \"language\": {\n \"type\": \"string\",\n \"description\": \"Designated language of the object to add to a multi-language group.\"\n },\n \"id\": {\n \"type\": \"string\",\n \"description\": \"ID of the object to add to a multi-language group.\"\n },\n \"primaryId\": {\n \"type\": \"string\",\n \"description\": \"ID of primary language object in multi-language group.\"\n },\n \"primaryLanguage\": {\n \"type\": \"string\",\n \"description\": \"Primary language of the multi-language group.\"\n }\n },\n \"description\": \"Request body object fro attaching objects to multi-language groups.\"\n }\n }\n },\n \"required\": true\n}",
"use_request_body_schema_mode": false,
"validate_request_body_schema": false
}
}

View file

@ -0,0 +1,208 @@
{
"name": "AttachTagToLanguageGroup",
"fully_qualified_name": "HubspotCmsApi.AttachTagToLanguageGroup@0.1.0",
"description": "Attach a blog tag to a multi-language group.\n\nUse this tool to connect a specific blog tag to a designated multi-language group within HubSpot CMS. This is useful for managing tags across different language versions of a blog.",
"toolkit": {
"name": "ArcadeHubspotCmsApi",
"description": null,
"version": "0.1.0"
},
"input": {
"parameters": [
{
"name": "designated_language",
"required": true,
"description": "Specify the language of the blog tag to add to a multi-language group. Use a language code like 'en' for English.",
"value_schema": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "Designated language of the object to add to a multi-language group."
},
"inferrable": true,
"http_endpoint_parameter_name": "language"
},
{
"name": "object_id_for_multilanguage_group",
"required": true,
"description": "ID of the blog tag to add to the multi-language group.",
"value_schema": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "ID of the object to add to a multi-language group."
},
"inferrable": true,
"http_endpoint_parameter_name": "id"
},
{
"name": "primary_language_object_id",
"required": true,
"description": "ID of the primary language object in the multi-language group.",
"value_schema": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "ID of primary language object in multi-language group."
},
"inferrable": true,
"http_endpoint_parameter_name": "primaryId"
},
{
"name": "primary_language",
"required": false,
"description": "Specifies the primary language of the multi-language group.",
"value_schema": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "Primary language of the multi-language group."
},
"inferrable": true,
"http_endpoint_parameter_name": "primaryLanguage"
}
]
},
"output": {
"description": "Response from the API endpoint 'post-/cms/v3/blogs/tags/multi-language/attach-to-lang-group_attachToLangGroup'.",
"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": {
"provider_id": "arcade-hubspot",
"provider_type": "oauth2",
"id": null,
"oauth2": {
"scopes": [
"content"
]
}
},
"secrets": null,
"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 hubspot_cms API."
},
"http_endpoint": {
"metadata": {
"object_type": "http_endpoint",
"version": "1.2.0",
"description": ""
},
"url": "https://api.hubapi.com/cms/v3/blogs/tags/multi-language/attach-to-lang-group",
"http_method": "POST",
"headers": {},
"parameters": [
{
"name": "language",
"tool_parameter_name": "designated_language",
"description": "Designated language of the object to add to a multi-language group.",
"value_schema": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "Designated language of the object to add to a multi-language group."
},
"accepted_as": "body",
"required": true,
"deprecated": false,
"default": null,
"documentation_urls": []
},
{
"name": "id",
"tool_parameter_name": "object_id_for_multilanguage_group",
"description": "ID of the object to add to a multi-language group.",
"value_schema": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "ID of the object to add to a multi-language group."
},
"accepted_as": "body",
"required": true,
"deprecated": false,
"default": null,
"documentation_urls": []
},
{
"name": "primaryId",
"tool_parameter_name": "primary_language_object_id",
"description": "ID of primary language object in multi-language group.",
"value_schema": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "ID of primary language object in multi-language group."
},
"accepted_as": "body",
"required": true,
"deprecated": false,
"default": null,
"documentation_urls": []
},
{
"name": "primaryLanguage",
"tool_parameter_name": "primary_language",
"description": "Primary language of the multi-language group.",
"value_schema": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "Primary language of the multi-language group."
},
"accepted_as": "body",
"required": false,
"deprecated": false,
"default": null,
"documentation_urls": []
}
],
"documentation_urls": [],
"secrets": [
{
"arcade_key": "auth_token",
"parameter_name": "Authorization",
"accepted_as": "header",
"formatted_value": "Bearer {authorization}",
"description": "The OAuth token to use for authentication.",
"is_auth_token": true
}
],
"request_body_spec": "{\n \"description\": \"The JSON representation of the AttachToLangPrimaryRequest object.\",\n \"content\": {\n \"application/json\": {\n \"schema\": {\n \"required\": [\n \"id\",\n \"language\",\n \"primaryId\"\n ],\n \"type\": \"object\",\n \"properties\": {\n \"language\": {\n \"type\": \"string\",\n \"description\": \"Designated language of the object to add to a multi-language group.\"\n },\n \"id\": {\n \"type\": \"string\",\n \"description\": \"ID of the object to add to a multi-language group.\"\n },\n \"primaryId\": {\n \"type\": \"string\",\n \"description\": \"ID of primary language object in multi-language group.\"\n },\n \"primaryLanguage\": {\n \"type\": \"string\",\n \"description\": \"Primary language of the multi-language group.\"\n }\n },\n \"description\": \"Request body object for attaching objects to multi-language groups.\"\n }\n }\n },\n \"required\": true\n}",
"use_request_body_schema_mode": false,
"validate_request_body_schema": false
}
}

View file

@ -0,0 +1,258 @@
{
"name": "BatchUpdateTableRowsHubspot",
"fully_qualified_name": "HubspotCmsApi.BatchUpdateTableRowsHubspot@0.1.0",
"description": "Update multiple draft table rows in HubSpot CMS.\n\nThis tool updates up to 100 rows in the draft version of a specified HubSpot CMS table. Use it when you need to apply changes to several rows at once in a draft table.",
"toolkit": {
"name": "ArcadeHubspotCmsApi",
"description": null,
"version": "0.1.0"
},
"input": {
"parameters": [
{
"name": "table_id_or_name",
"required": true,
"description": "The ID or name of the table to update rows in the draft version.",
"value_schema": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "The ID or name of the table"
},
"inferrable": true,
"http_endpoint_parameter_name": "tableIdOrName"
},
{
"name": "row_updates",
"required": true,
"description": "JSON array containing data for each row update, including 'id', 'path', 'childTableId', 'values', 'name', and 'displayIndex'.",
"value_schema": {
"val_type": "json",
"inner_val_type": null,
"enum": null,
"properties": {
"inputs": {
"val_type": "array",
"inner_val_type": "json",
"enum": null,
"properties": null,
"inner_properties": {
"path": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "Specifies the value for `hs_path` column, which will be used as slug in the dynamic pages"
},
"childTableId": {
"val_type": "integer",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "Specifies the value for the column child table id"
},
"values": {
"val_type": "json",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "List of key value pairs with the column name and column value"
},
"name": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "Specifies the value for `hs_name` column, which will be used as title in the dynamic pages"
},
"id": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "The id of the table row"
},
"displayIndex": {
"val_type": "integer",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": null
}
},
"description": null
}
},
"inner_properties": null,
"description": ""
},
"inferrable": true,
"http_endpoint_parameter_name": "requestBody"
}
]
},
"output": {
"description": "Response from the API endpoint 'post-/cms/v3/hubdb/tables/{tableIdOrName}/rows/draft/batch/update_updateDraftTableRows'.",
"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": {
"provider_id": "arcade-hubspot",
"provider_type": "oauth2",
"id": null,
"oauth2": {
"scopes": [
"hubdb"
]
}
},
"secrets": null,
"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 hubspot_cms API."
},
"http_endpoint": {
"metadata": {
"object_type": "http_endpoint",
"version": "1.2.0",
"description": ""
},
"url": "https://api.hubapi.com/cms/v3/hubdb/tables/{tableIdOrName}/rows/draft/batch/update",
"http_method": "POST",
"headers": {},
"parameters": [
{
"name": "tableIdOrName",
"tool_parameter_name": "table_id_or_name",
"description": "The ID or name of the table",
"value_schema": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "The ID or name of the table"
},
"accepted_as": "path",
"required": true,
"deprecated": false,
"default": null,
"documentation_urls": []
},
{
"name": "requestBody",
"tool_parameter_name": "row_updates",
"description": "",
"value_schema": {
"val_type": "json",
"inner_val_type": null,
"enum": null,
"properties": {
"inputs": {
"val_type": "array",
"inner_val_type": "json",
"enum": null,
"properties": null,
"inner_properties": {
"path": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "Specifies the value for `hs_path` column, which will be used as slug in the dynamic pages"
},
"childTableId": {
"val_type": "integer",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "Specifies the value for the column child table id"
},
"values": {
"val_type": "json",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "List of key value pairs with the column name and column value"
},
"name": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "Specifies the value for `hs_name` column, which will be used as title in the dynamic pages"
},
"id": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "The id of the table row"
},
"displayIndex": {
"val_type": "integer",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": null
}
},
"description": null
}
},
"inner_properties": null,
"description": ""
},
"accepted_as": "body",
"required": true,
"deprecated": false,
"default": null,
"documentation_urls": []
}
],
"documentation_urls": [],
"secrets": [
{
"arcade_key": "auth_token",
"parameter_name": "Authorization",
"accepted_as": "header",
"formatted_value": "Bearer {authorization}",
"description": "The OAuth token to use for authentication.",
"is_auth_token": true
}
],
"request_body_spec": "{\n \"content\": {\n \"application/json\": {\n \"schema\": {\n \"required\": [\n \"inputs\"\n ],\n \"type\": \"object\",\n \"properties\": {\n \"inputs\": {\n \"type\": \"array\",\n \"items\": {\n \"required\": [\n \"id\",\n \"values\"\n ],\n \"type\": \"object\",\n \"properties\": {\n \"path\": {\n \"type\": \"string\",\n \"description\": \"Specifies the value for `hs_path` column, which will be used as slug in the dynamic pages\"\n },\n \"childTableId\": {\n \"type\": \"integer\",\n \"description\": \"Specifies the value for the column child table id\",\n \"format\": \"int32\"\n },\n \"values\": {\n \"type\": \"object\",\n \"additionalProperties\": {\n \"type\": \"object\",\n \"description\": \"Schema reference broken: #/components/schemas/Variant\",\n \"additionalProperties\": true,\n \"x-moar-broken-reference\": \"#/components/schemas/Variant\"\n },\n \"description\": \"List of key value pairs with the column name and column value\"\n },\n \"name\": {\n \"type\": \"string\",\n \"description\": \"Specifies the value for `hs_name` column, which will be used as title in the dynamic pages\"\n },\n \"id\": {\n \"type\": \"string\",\n \"description\": \"The id of the table row\"\n },\n \"displayIndex\": {\n \"type\": \"integer\",\n \"format\": \"int32\"\n }\n }\n }\n }\n }\n }\n }\n },\n \"required\": true\n}",
"use_request_body_schema_mode": true,
"validate_request_body_schema": true
}
}

View file

@ -0,0 +1,109 @@
{
"name": "CheckExtractionStatus",
"fully_qualified_name": "HubspotCmsApi.CheckExtractionStatus@0.1.0",
"description": "Retrieve the current status of a source-code extraction task.\n\nUse this tool to check the status of a specific source-code extraction by providing the `taskId`. It's useful for tracking the progress of an extraction after initiating it with the `extract/async` request.",
"toolkit": {
"name": "ArcadeHubspotCmsApi",
"description": null,
"version": "0.1.0"
},
"input": {
"parameters": [
{
"name": "extraction_task_id",
"required": true,
"description": "The unique ID of the extraction task, obtained from the initial `extract/async` request. This ID is required to check the status of the extraction.",
"value_schema": {
"val_type": "integer",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "The extraction task ID returned by the initial `extract/async` request."
},
"inferrable": true,
"http_endpoint_parameter_name": "taskId"
}
]
},
"output": {
"description": "Response from the API endpoint 'get-/cms/v3/source-code/extract/async/tasks/{taskId}/status_getAsyncStatus'.",
"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": {
"provider_id": "arcade-hubspot",
"provider_type": "oauth2",
"id": null,
"oauth2": {
"scopes": [
"content"
]
}
},
"secrets": null,
"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 hubspot_cms API."
},
"http_endpoint": {
"metadata": {
"object_type": "http_endpoint",
"version": "1.2.0",
"description": ""
},
"url": "https://api.hubapi.com/cms/v3/source-code/extract/async/tasks/{taskId}/status",
"http_method": "GET",
"headers": {},
"parameters": [
{
"name": "taskId",
"tool_parameter_name": "extraction_task_id",
"description": "The extraction task ID returned by the initial `extract/async` request.",
"value_schema": {
"val_type": "integer",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "The extraction task ID returned by the initial `extract/async` request."
},
"accepted_as": "path",
"required": true,
"deprecated": false,
"default": null,
"documentation_urls": []
}
],
"documentation_urls": [],
"secrets": [
{
"arcade_key": "auth_token",
"parameter_name": "Authorization",
"accepted_as": "header",
"formatted_value": "Bearer {authorization}",
"description": "The OAuth token to use for authentication.",
"is_auth_token": true
}
],
"request_body_spec": null,
"use_request_body_schema_mode": false,
"validate_request_body_schema": false
}
}

View file

@ -0,0 +1,142 @@
{
"name": "CloneBlogPost",
"fully_qualified_name": "HubspotCmsApi.CloneBlogPost@0.1.0",
"description": "Creates a copy of an existing blog post.\n\nThis tool clones an existing blog post, creating a new copy with the same content. It should be used when you want to duplicate a post for editing or reuse.",
"toolkit": {
"name": "ArcadeHubspotCmsApi",
"description": null,
"version": "0.1.0"
},
"input": {
"parameters": [
{
"name": "blog_post_id",
"required": true,
"description": "ID of the blog post to be cloned. This identifies the specific blog post you want to duplicate.",
"value_schema": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "ID of the object to be cloned."
},
"inferrable": true,
"http_endpoint_parameter_name": "id"
},
{
"name": "cloned_blog_post_name",
"required": false,
"description": "The name for the newly cloned blog post. This is how the cloned post will be titled or identified.",
"value_schema": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "Name of the cloned object."
},
"inferrable": true,
"http_endpoint_parameter_name": "cloneName"
}
]
},
"output": {
"description": "Response from the API endpoint 'post-/cms/v3/blogs/posts/clone_clone'.",
"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": {
"provider_id": "arcade-hubspot",
"provider_type": "oauth2",
"id": null,
"oauth2": {
"scopes": [
"content"
]
}
},
"secrets": null,
"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 hubspot_cms API."
},
"http_endpoint": {
"metadata": {
"object_type": "http_endpoint",
"version": "1.2.0",
"description": ""
},
"url": "https://api.hubapi.com/cms/v3/blogs/posts/clone",
"http_method": "POST",
"headers": {},
"parameters": [
{
"name": "cloneName",
"tool_parameter_name": "cloned_blog_post_name",
"description": "Name of the cloned object.",
"value_schema": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "Name of the cloned object."
},
"accepted_as": "body",
"required": false,
"deprecated": false,
"default": null,
"documentation_urls": []
},
{
"name": "id",
"tool_parameter_name": "blog_post_id",
"description": "ID of the object to be cloned.",
"value_schema": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "ID of the object to be cloned."
},
"accepted_as": "body",
"required": true,
"deprecated": false,
"default": null,
"documentation_urls": []
}
],
"documentation_urls": [],
"secrets": [
{
"arcade_key": "auth_token",
"parameter_name": "Authorization",
"accepted_as": "header",
"formatted_value": "Bearer {authorization}",
"description": "The OAuth token to use for authentication.",
"is_auth_token": true
}
],
"request_body_spec": "{\n \"description\": \"The JSON representation of the ContentCloneRequest object.\",\n \"content\": {\n \"application/json\": {\n \"schema\": {\n \"required\": [\n \"id\"\n ],\n \"type\": \"object\",\n \"properties\": {\n \"cloneName\": {\n \"type\": \"string\",\n \"description\": \"Name of the cloned object.\"\n },\n \"id\": {\n \"type\": \"string\",\n \"description\": \"ID of the object to be cloned.\"\n }\n },\n \"description\": \"Request body object for cloning content.\"\n }\n }\n },\n \"required\": true\n}",
"use_request_body_schema_mode": false,
"validate_request_body_schema": false
}
}

View file

@ -0,0 +1,194 @@
{
"name": "CloneDraftTableRowsHubspot",
"fully_qualified_name": "HubspotCmsApi.CloneDraftTableRowsHubspot@0.1.0",
"description": "Clone rows in a draft HubDB table by row IDs.\n\nUse this tool to clone specific rows in the draft version of a HubDB table by providing up to 100 row IDs. Useful for duplicating data entries during content management in HubSpot's CMS.",
"toolkit": {
"name": "ArcadeHubspotCmsApi",
"description": null,
"version": "0.1.0"
},
"input": {
"parameters": [
{
"name": "hubdb_table_id_or_name",
"required": true,
"description": "The ID or name of the HubDB table to clone rows from. Specify either the unique table ID or its name.",
"value_schema": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "The ID or name of the table"
},
"inferrable": true,
"http_endpoint_parameter_name": "tableIdOrName"
},
{
"name": "row_ids_to_clone",
"required": true,
"description": "A JSON array of objects, each containing the 'id' and 'name' for up to 100 rows to clone in the draft table. Example: [{'id': '123', 'name': 'RowName'}].",
"value_schema": {
"val_type": "json",
"inner_val_type": null,
"enum": null,
"properties": {
"inputs": {
"val_type": "array",
"inner_val_type": "json",
"enum": null,
"properties": null,
"inner_properties": {
"name": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": null
},
"id": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": null
}
},
"description": null
}
},
"inner_properties": null,
"description": ""
},
"inferrable": true,
"http_endpoint_parameter_name": "requestBody"
}
]
},
"output": {
"description": "Response from the API endpoint 'post-/cms/v3/hubdb/tables/{tableIdOrName}/rows/draft/batch/clone_cloneDraftTableRows'.",
"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": {
"provider_id": "arcade-hubspot",
"provider_type": "oauth2",
"id": null,
"oauth2": {
"scopes": [
"hubdb"
]
}
},
"secrets": null,
"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 hubspot_cms API."
},
"http_endpoint": {
"metadata": {
"object_type": "http_endpoint",
"version": "1.2.0",
"description": ""
},
"url": "https://api.hubapi.com/cms/v3/hubdb/tables/{tableIdOrName}/rows/draft/batch/clone",
"http_method": "POST",
"headers": {},
"parameters": [
{
"name": "tableIdOrName",
"tool_parameter_name": "hubdb_table_id_or_name",
"description": "The ID or name of the table",
"value_schema": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "The ID or name of the table"
},
"accepted_as": "path",
"required": true,
"deprecated": false,
"default": null,
"documentation_urls": []
},
{
"name": "requestBody",
"tool_parameter_name": "row_ids_to_clone",
"description": "",
"value_schema": {
"val_type": "json",
"inner_val_type": null,
"enum": null,
"properties": {
"inputs": {
"val_type": "array",
"inner_val_type": "json",
"enum": null,
"properties": null,
"inner_properties": {
"name": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": null
},
"id": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": null
}
},
"description": null
}
},
"inner_properties": null,
"description": ""
},
"accepted_as": "body",
"required": true,
"deprecated": false,
"default": null,
"documentation_urls": []
}
],
"documentation_urls": [],
"secrets": [
{
"arcade_key": "auth_token",
"parameter_name": "Authorization",
"accepted_as": "header",
"formatted_value": "Bearer {authorization}",
"description": "The OAuth token to use for authentication.",
"is_auth_token": true
}
],
"request_body_spec": "{\n \"content\": {\n \"application/json\": {\n \"schema\": {\n \"required\": [\n \"inputs\"\n ],\n \"type\": \"object\",\n \"properties\": {\n \"inputs\": {\n \"type\": \"array\",\n \"items\": {\n \"required\": [\n \"id\"\n ],\n \"type\": \"object\",\n \"properties\": {\n \"name\": {\n \"type\": \"string\"\n },\n \"id\": {\n \"type\": \"string\"\n }\n }\n }\n }\n }\n }\n }\n },\n \"required\": true\n}",
"use_request_body_schema_mode": true,
"validate_request_body_schema": true
}
}

View file

@ -0,0 +1,175 @@
{
"name": "CloneHubdbDraftRow",
"fully_qualified_name": "HubspotCmsApi.CloneHubdbDraftRow@0.1.0",
"description": "Clone a single row in a HubDB draft table.\n\nUse this tool to clone a specific row in the draft version of a HubDB table within HubSpot CMS. This is helpful for duplicating draft content before finalizing changes.",
"toolkit": {
"name": "ArcadeHubspotCmsApi",
"description": null,
"version": "0.1.0"
},
"input": {
"parameters": [
{
"name": "table_id_or_name",
"required": true,
"description": "The ID or name of the table to be cloned.",
"value_schema": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "The ID or name of the table"
},
"inferrable": true,
"http_endpoint_parameter_name": "tableIdOrName"
},
{
"name": "row_id_to_clone",
"required": true,
"description": "The ID of the row to be cloned in the draft table.",
"value_schema": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "The ID of the row"
},
"inferrable": true,
"http_endpoint_parameter_name": "rowId"
},
{
"name": "new_row_name",
"required": false,
"description": "The name for the cloned row. Specify a new name if required.",
"value_schema": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": ""
},
"inferrable": true,
"http_endpoint_parameter_name": "name"
}
]
},
"output": {
"description": "Response from the API endpoint 'post-/cms/v3/hubdb/tables/{tableIdOrName}/rows/{rowId}/draft/clone_cloneDraftTableRow'.",
"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": {
"provider_id": "arcade-hubspot",
"provider_type": "oauth2",
"id": null,
"oauth2": {
"scopes": [
"hubdb"
]
}
},
"secrets": null,
"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 hubspot_cms API."
},
"http_endpoint": {
"metadata": {
"object_type": "http_endpoint",
"version": "1.2.0",
"description": ""
},
"url": "https://api.hubapi.com/cms/v3/hubdb/tables/{tableIdOrName}/rows/{rowId}/draft/clone",
"http_method": "POST",
"headers": {},
"parameters": [
{
"name": "name",
"tool_parameter_name": "new_row_name",
"description": "",
"value_schema": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": ""
},
"accepted_as": "query",
"required": false,
"deprecated": false,
"default": null,
"documentation_urls": []
},
{
"name": "tableIdOrName",
"tool_parameter_name": "table_id_or_name",
"description": "The ID or name of the table",
"value_schema": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "The ID or name of the table"
},
"accepted_as": "path",
"required": true,
"deprecated": false,
"default": null,
"documentation_urls": []
},
{
"name": "rowId",
"tool_parameter_name": "row_id_to_clone",
"description": "The ID of the row",
"value_schema": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "The ID of the row"
},
"accepted_as": "path",
"required": true,
"deprecated": false,
"default": null,
"documentation_urls": []
}
],
"documentation_urls": [],
"secrets": [
{
"arcade_key": "auth_token",
"parameter_name": "Authorization",
"accepted_as": "header",
"formatted_value": "Bearer {authorization}",
"description": "The OAuth token to use for authentication.",
"is_auth_token": true
}
],
"request_body_spec": null,
"use_request_body_schema_mode": false,
"validate_request_body_schema": false
}
}

View file

@ -0,0 +1,241 @@
{
"name": "CloneHubdbTable",
"fully_qualified_name": "HubspotCmsApi.CloneHubdbTable@0.1.0",
"description": "Clone an existing HubDB table as a draft.\n\nUse this tool to create a draft clone of an existing HubDB table. The new table's name and label can be specified.",
"toolkit": {
"name": "ArcadeHubspotCmsApi",
"description": null,
"version": "0.1.0"
},
"input": {
"parameters": [
{
"name": "source_table_id_or_name",
"required": true,
"description": "The ID or name of the HubDB table to clone.",
"value_schema": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "The ID or name of the table to clone."
},
"inferrable": true,
"http_endpoint_parameter_name": "tableIdOrName"
},
{
"name": "is_hubspot_defined",
"required": true,
"description": "Indicate if the table is defined by HubSpot. This is a boolean value where true means the table is HubSpot-defined.",
"value_schema": {
"val_type": "boolean",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": ""
},
"inferrable": true,
"http_endpoint_parameter_name": "isHubspotDefined"
},
{
"name": "copy_rows",
"required": true,
"description": "Boolean indicating whether to copy the rows during the cloning process.",
"value_schema": {
"val_type": "boolean",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "Specifies whether to copy the rows during clone"
},
"inferrable": true,
"http_endpoint_parameter_name": "copyRows"
},
{
"name": "new_table_name",
"required": false,
"description": "The desired new name for the cloned HubDB table draft.",
"value_schema": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "The new name for the cloned table"
},
"inferrable": true,
"http_endpoint_parameter_name": "newName"
},
{
"name": "new_table_label",
"required": false,
"description": "The label for the new cloned table. Specify a descriptive label for identification.",
"value_schema": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "The new label for the cloned table"
},
"inferrable": true,
"http_endpoint_parameter_name": "newLabel"
}
]
},
"output": {
"description": "Response from the API endpoint 'post-/cms/v3/hubdb/tables/{tableIdOrName}/draft/clone_cloneDraftTable'.",
"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": {
"provider_id": "arcade-hubspot",
"provider_type": "oauth2",
"id": null,
"oauth2": {
"scopes": [
"hubdb"
]
}
},
"secrets": null,
"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 hubspot_cms API."
},
"http_endpoint": {
"metadata": {
"object_type": "http_endpoint",
"version": "1.2.0",
"description": ""
},
"url": "https://api.hubapi.com/cms/v3/hubdb/tables/{tableIdOrName}/draft/clone",
"http_method": "POST",
"headers": {},
"parameters": [
{
"name": "tableIdOrName",
"tool_parameter_name": "source_table_id_or_name",
"description": "The ID or name of the table to clone.",
"value_schema": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "The ID or name of the table to clone."
},
"accepted_as": "path",
"required": true,
"deprecated": false,
"default": null,
"documentation_urls": []
},
{
"name": "newName",
"tool_parameter_name": "new_table_name",
"description": "The new name for the cloned table",
"value_schema": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "The new name for the cloned table"
},
"accepted_as": "body",
"required": false,
"deprecated": false,
"default": null,
"documentation_urls": []
},
{
"name": "isHubspotDefined",
"tool_parameter_name": "is_hubspot_defined",
"description": "",
"value_schema": {
"val_type": "boolean",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": ""
},
"accepted_as": "body",
"required": true,
"deprecated": false,
"default": null,
"documentation_urls": []
},
{
"name": "newLabel",
"tool_parameter_name": "new_table_label",
"description": "The new label for the cloned table",
"value_schema": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "The new label for the cloned table"
},
"accepted_as": "body",
"required": false,
"deprecated": false,
"default": null,
"documentation_urls": []
},
{
"name": "copyRows",
"tool_parameter_name": "copy_rows",
"description": "Specifies whether to copy the rows during clone",
"value_schema": {
"val_type": "boolean",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "Specifies whether to copy the rows during clone"
},
"accepted_as": "body",
"required": true,
"deprecated": false,
"default": null,
"documentation_urls": []
}
],
"documentation_urls": [],
"secrets": [
{
"arcade_key": "auth_token",
"parameter_name": "Authorization",
"accepted_as": "header",
"formatted_value": "Bearer {authorization}",
"description": "The OAuth token to use for authentication.",
"is_auth_token": true
}
],
"request_body_spec": "{\n \"content\": {\n \"application/json\": {\n \"schema\": {\n \"required\": [\n \"copyRows\",\n \"isHubspotDefined\"\n ],\n \"type\": \"object\",\n \"properties\": {\n \"newName\": {\n \"type\": \"string\",\n \"description\": \"The new name for the cloned table\"\n },\n \"isHubspotDefined\": {\n \"type\": \"boolean\"\n },\n \"newLabel\": {\n \"type\": \"string\",\n \"description\": \"The new label for the cloned table\"\n },\n \"copyRows\": {\n \"type\": \"boolean\",\n \"description\": \"Specifies whether to copy the rows during clone\"\n }\n }\n }\n }\n },\n \"required\": true\n}",
"use_request_body_schema_mode": false,
"validate_request_body_schema": false
}
}

View file

@ -0,0 +1,142 @@
{
"name": "CloneLandingPageHubspot",
"fully_qualified_name": "HubspotCmsApi.CloneLandingPageHubspot@0.1.0",
"description": "Clone a landing page in HubSpot CMS.\n\nThis tool duplicates an existing landing page within HubSpot's CMS. It should be used when you need an exact replica of a landing page for further customization or testing.",
"toolkit": {
"name": "ArcadeHubspotCmsApi",
"description": null,
"version": "0.1.0"
},
"input": {
"parameters": [
{
"name": "landing_page_id",
"required": true,
"description": "ID of the landing page to be cloned. Required for identifying the source page.",
"value_schema": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "ID of the object to be cloned."
},
"inferrable": true,
"http_endpoint_parameter_name": "id"
},
{
"name": "cloned_landing_page_name",
"required": false,
"description": "The name to assign to the newly cloned landing page in HubSpot CMS.",
"value_schema": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "Name of the cloned object."
},
"inferrable": true,
"http_endpoint_parameter_name": "cloneName"
}
]
},
"output": {
"description": "Response from the API endpoint 'post-/cms/v3/pages/landing-pages/clone_clone'.",
"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": {
"provider_id": "arcade-hubspot",
"provider_type": "oauth2",
"id": null,
"oauth2": {
"scopes": [
"content"
]
}
},
"secrets": null,
"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 hubspot_cms API."
},
"http_endpoint": {
"metadata": {
"object_type": "http_endpoint",
"version": "1.2.0",
"description": ""
},
"url": "https://api.hubapi.com/cms/v3/pages/landing-pages/clone",
"http_method": "POST",
"headers": {},
"parameters": [
{
"name": "cloneName",
"tool_parameter_name": "cloned_landing_page_name",
"description": "Name of the cloned object.",
"value_schema": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "Name of the cloned object."
},
"accepted_as": "body",
"required": false,
"deprecated": false,
"default": null,
"documentation_urls": []
},
{
"name": "id",
"tool_parameter_name": "landing_page_id",
"description": "ID of the object to be cloned.",
"value_schema": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "ID of the object to be cloned."
},
"accepted_as": "body",
"required": true,
"deprecated": false,
"default": null,
"documentation_urls": []
}
],
"documentation_urls": [],
"secrets": [
{
"arcade_key": "auth_token",
"parameter_name": "Authorization",
"accepted_as": "header",
"formatted_value": "Bearer {authorization}",
"description": "The OAuth token to use for authentication.",
"is_auth_token": true
}
],
"request_body_spec": "{\n \"description\": \"The JSON representation of the ContentCloneRequest object.\",\n \"content\": {\n \"application/json\": {\n \"schema\": {\n \"required\": [\n \"id\"\n ],\n \"type\": \"object\",\n \"properties\": {\n \"cloneName\": {\n \"type\": \"string\",\n \"description\": \"Name of the cloned object.\"\n },\n \"id\": {\n \"type\": \"string\",\n \"description\": \"ID of the object to be cloned.\"\n }\n },\n \"description\": \"Request body object for cloning content.\"\n }\n }\n },\n \"required\": true\n}",
"use_request_body_schema_mode": false,
"validate_request_body_schema": false
}
}

View file

@ -0,0 +1,142 @@
{
"name": "CloneSitePage",
"fully_qualified_name": "HubspotCmsApi.CloneSitePage@0.1.0",
"description": "Clone an existing site page in HubSpot CMS.\n\nThis tool is used to clone an existing site page within the HubSpot CMS. It is useful when duplicating pages for updates or creating similar content quickly.",
"toolkit": {
"name": "ArcadeHubspotCmsApi",
"description": null,
"version": "0.1.0"
},
"input": {
"parameters": [
{
"name": "object_id_to_clone",
"required": true,
"description": "ID of the site page to be cloned in HubSpot CMS.",
"value_schema": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "ID of the object to be cloned."
},
"inferrable": true,
"http_endpoint_parameter_name": "id"
},
{
"name": "clone_name",
"required": false,
"description": "The desired name for the cloned site page object.",
"value_schema": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "Name of the cloned object."
},
"inferrable": true,
"http_endpoint_parameter_name": "cloneName"
}
]
},
"output": {
"description": "Response from the API endpoint 'post-/cms/v3/pages/site-pages/clone_clone'.",
"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": {
"provider_id": "arcade-hubspot",
"provider_type": "oauth2",
"id": null,
"oauth2": {
"scopes": [
"content"
]
}
},
"secrets": null,
"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 hubspot_cms API."
},
"http_endpoint": {
"metadata": {
"object_type": "http_endpoint",
"version": "1.2.0",
"description": ""
},
"url": "https://api.hubapi.com/cms/v3/pages/site-pages/clone",
"http_method": "POST",
"headers": {},
"parameters": [
{
"name": "cloneName",
"tool_parameter_name": "clone_name",
"description": "Name of the cloned object.",
"value_schema": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "Name of the cloned object."
},
"accepted_as": "body",
"required": false,
"deprecated": false,
"default": null,
"documentation_urls": []
},
{
"name": "id",
"tool_parameter_name": "object_id_to_clone",
"description": "ID of the object to be cloned.",
"value_schema": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "ID of the object to be cloned."
},
"accepted_as": "body",
"required": true,
"deprecated": false,
"default": null,
"documentation_urls": []
}
],
"documentation_urls": [],
"secrets": [
{
"arcade_key": "auth_token",
"parameter_name": "Authorization",
"accepted_as": "header",
"formatted_value": "Bearer {authorization}",
"description": "The OAuth token to use for authentication.",
"is_auth_token": true
}
],
"request_body_spec": "{\n \"description\": \"The JSON representation of the ContentCloneRequest object.\",\n \"content\": {\n \"application/json\": {\n \"schema\": {\n \"required\": [\n \"id\"\n ],\n \"type\": \"object\",\n \"properties\": {\n \"cloneName\": {\n \"type\": \"string\",\n \"description\": \"Name of the cloned object.\"\n },\n \"id\": {\n \"type\": \"string\",\n \"description\": \"ID of the object to be cloned.\"\n }\n },\n \"description\": \"Request body object for cloning content.\"\n }\n }\n },\n \"required\": true\n}",
"use_request_body_schema_mode": false,
"validate_request_body_schema": false
}
}

View file

@ -0,0 +1,142 @@
{
"name": "CreateAbTestVariation",
"fully_qualified_name": "HubspotCmsApi.CreateAbTestVariation@0.1.0",
"description": "Create a new A/B test variation in HubSpot CMS.\n\nThis tool allows you to create a new A/B test variation for a landing page using HubSpot CMS. It should be called when you need to perform A/B testing by generating different page variations to assess their performance.",
"toolkit": {
"name": "ArcadeHubspotCmsApi",
"description": null,
"version": "0.1.0"
},
"input": {
"parameters": [
{
"name": "ab_test_variation_name",
"required": true,
"description": "The name of the A/B test variation to be created.",
"value_schema": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "Name of A/B test variation."
},
"inferrable": true,
"http_endpoint_parameter_name": "variationName"
},
{
"name": "object_test_id",
"required": true,
"description": "The ID of the object to be tested in the A/B test variation.",
"value_schema": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "ID of the object to test."
},
"inferrable": true,
"http_endpoint_parameter_name": "contentId"
}
]
},
"output": {
"description": "Response from the API endpoint 'post-/cms/v3/pages/landing-pages/ab-test/create-variation_createABTestVariation'.",
"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": {
"provider_id": "arcade-hubspot",
"provider_type": "oauth2",
"id": null,
"oauth2": {
"scopes": [
"content"
]
}
},
"secrets": null,
"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 hubspot_cms API."
},
"http_endpoint": {
"metadata": {
"object_type": "http_endpoint",
"version": "1.2.0",
"description": ""
},
"url": "https://api.hubapi.com/cms/v3/pages/landing-pages/ab-test/create-variation",
"http_method": "POST",
"headers": {},
"parameters": [
{
"name": "variationName",
"tool_parameter_name": "ab_test_variation_name",
"description": "Name of A/B test variation.",
"value_schema": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "Name of A/B test variation."
},
"accepted_as": "body",
"required": true,
"deprecated": false,
"default": null,
"documentation_urls": []
},
{
"name": "contentId",
"tool_parameter_name": "object_test_id",
"description": "ID of the object to test.",
"value_schema": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "ID of the object to test."
},
"accepted_as": "body",
"required": true,
"deprecated": false,
"default": null,
"documentation_urls": []
}
],
"documentation_urls": [],
"secrets": [
{
"arcade_key": "auth_token",
"parameter_name": "Authorization",
"accepted_as": "header",
"formatted_value": "Bearer {authorization}",
"description": "The OAuth token to use for authentication.",
"is_auth_token": true
}
],
"request_body_spec": "{\n \"description\": \"The JSON representation of the AbTestCreateRequest object.\",\n \"content\": {\n \"application/json\": {\n \"schema\": {\n \"required\": [\n \"contentId\",\n \"variationName\"\n ],\n \"type\": \"object\",\n \"properties\": {\n \"variationName\": {\n \"type\": \"string\",\n \"description\": \"Name of A/B test variation.\"\n },\n \"contentId\": {\n \"type\": \"string\",\n \"description\": \"ID of the object to test.\"\n }\n },\n \"description\": \"Request body object for creating A/B tests.\"\n }\n }\n },\n \"required\": true\n}",
"use_request_body_schema_mode": false,
"validate_request_body_schema": false
}
}

View file

@ -0,0 +1,413 @@
{
"name": "CreateAttentionSpanEvent",
"fully_qualified_name": "HubspotCmsApi.CreateAttentionSpanEvent@0.1.0",
"description": "Log viewer's attention span details for media events.\n\nThis tool creates an event recording viewer attention span details for media, which helps in tracking engagement and interaction levels.",
"toolkit": {
"name": "ArcadeHubspotCmsApi",
"description": null,
"version": "0.1.0"
},
"input": {
"parameters": [
{
"name": "attention_span_event_data",
"required": true,
"description": "JSON object containing media URL, contact ID, raw data, derived values, external ID, media type, session details, page details, occurrence timestamp, contact UTK, encoding, media bridge ID, and media name.",
"value_schema": {
"val_type": "json",
"inner_val_type": null,
"enum": null,
"properties": {
"mediaUrl": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": null
},
"contactId": {
"val_type": "integer",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": null
},
"rawDataString": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": null
},
"rawDataMap": {
"val_type": "json",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": null
},
"derivedValues": {
"val_type": "json",
"inner_val_type": null,
"enum": null,
"properties": {
"totalSecondsPlayed": {
"val_type": "integer",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": null
},
"totalPercentPlayed": {
"val_type": "number",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": null
}
},
"inner_properties": null,
"description": null
},
"externalId": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": null
},
"mediaType": {
"val_type": "string",
"inner_val_type": null,
"enum": [
"VIDEO",
"AUDIO",
"DOCUMENT",
"OTHER",
"IMAGE"
],
"properties": null,
"inner_properties": null,
"description": null
},
"sessionId": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": null
},
"pageId": {
"val_type": "integer",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": null
},
"pageName": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": null
},
"occurredTimestamp": {
"val_type": "integer",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": null
},
"contactUtk": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": null
},
"pageUrl": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": null
},
"_hsenc": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": null
},
"mediaBridgeId": {
"val_type": "integer",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": null
},
"mediaName": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": null
}
},
"inner_properties": null,
"description": ""
},
"inferrable": true,
"http_endpoint_parameter_name": "requestBody"
}
]
},
"output": {
"description": "Response from the API endpoint 'post-/media-bridge/v1/events/attention-span'.",
"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": {
"provider_id": "arcade-hubspot",
"provider_type": "oauth2",
"id": null,
"oauth2": {
"scopes": [
"media_bridge.write"
]
}
},
"secrets": null,
"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 hubspot_cms API."
},
"http_endpoint": {
"metadata": {
"object_type": "http_endpoint",
"version": "1.2.0",
"description": ""
},
"url": "https://api.hubapi.com/media-bridge/v1/events/attention-span",
"http_method": "POST",
"headers": {},
"parameters": [
{
"name": "requestBody",
"tool_parameter_name": "attention_span_event_data",
"description": "",
"value_schema": {
"val_type": "json",
"inner_val_type": null,
"enum": null,
"properties": {
"mediaUrl": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": null
},
"contactId": {
"val_type": "integer",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": null
},
"rawDataString": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": null
},
"rawDataMap": {
"val_type": "json",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": null
},
"derivedValues": {
"val_type": "json",
"inner_val_type": null,
"enum": null,
"properties": {
"totalSecondsPlayed": {
"val_type": "integer",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": null
},
"totalPercentPlayed": {
"val_type": "number",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": null
}
},
"inner_properties": null,
"description": null
},
"externalId": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": null
},
"mediaType": {
"val_type": "string",
"inner_val_type": null,
"enum": [
"VIDEO",
"AUDIO",
"DOCUMENT",
"OTHER",
"IMAGE"
],
"properties": null,
"inner_properties": null,
"description": null
},
"sessionId": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": null
},
"pageId": {
"val_type": "integer",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": null
},
"pageName": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": null
},
"occurredTimestamp": {
"val_type": "integer",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": null
},
"contactUtk": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": null
},
"pageUrl": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": null
},
"_hsenc": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": null
},
"mediaBridgeId": {
"val_type": "integer",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": null
},
"mediaName": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": null
}
},
"inner_properties": null,
"description": ""
},
"accepted_as": "body",
"required": true,
"deprecated": false,
"default": null,
"documentation_urls": []
}
],
"documentation_urls": [],
"secrets": [
{
"arcade_key": "auth_token",
"parameter_name": "Authorization",
"accepted_as": "header",
"formatted_value": "Bearer {authorization}",
"description": "The OAuth token to use for authentication.",
"is_auth_token": true
}
],
"request_body_spec": "{\n \"content\": {\n \"application/json\": {\n \"schema\": {\n \"required\": [\n \"mediaType\",\n \"occurredTimestamp\",\n \"rawDataMap\",\n \"sessionId\"\n ],\n \"type\": \"object\",\n \"properties\": {\n \"mediaUrl\": {\n \"type\": \"string\"\n },\n \"contactId\": {\n \"type\": \"integer\",\n \"format\": \"int64\"\n },\n \"rawDataString\": {\n \"type\": \"string\"\n },\n \"rawDataMap\": {\n \"type\": \"object\",\n \"additionalProperties\": {\n \"type\": \"integer\",\n \"format\": \"int32\"\n }\n },\n \"derivedValues\": {\n \"required\": [\n \"totalPercentPlayed\",\n \"totalSecondsPlayed\"\n ],\n \"type\": \"object\",\n \"properties\": {\n \"totalSecondsPlayed\": {\n \"type\": \"integer\",\n \"format\": \"int32\"\n },\n \"totalPercentPlayed\": {\n \"type\": \"number\"\n }\n }\n },\n \"externalId\": {\n \"type\": \"string\"\n },\n \"mediaType\": {\n \"type\": \"string\",\n \"enum\": [\n \"VIDEO\",\n \"AUDIO\",\n \"DOCUMENT\",\n \"OTHER\",\n \"IMAGE\"\n ]\n },\n \"sessionId\": {\n \"type\": \"string\"\n },\n \"pageId\": {\n \"type\": \"integer\",\n \"format\": \"int64\"\n },\n \"pageName\": {\n \"type\": \"string\"\n },\n \"occurredTimestamp\": {\n \"type\": \"integer\",\n \"format\": \"int64\"\n },\n \"contactUtk\": {\n \"type\": \"string\"\n },\n \"pageUrl\": {\n \"type\": \"string\"\n },\n \"_hsenc\": {\n \"type\": \"string\"\n },\n \"mediaBridgeId\": {\n \"type\": \"integer\",\n \"format\": \"int64\"\n },\n \"mediaName\": {\n \"type\": \"string\"\n }\n }\n }\n }\n },\n \"required\": true\n}",
"use_request_body_schema_mode": true,
"validate_request_body_schema": true
}
}

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View file

@ -0,0 +1,208 @@
{
"name": "CreateBlogLanguageVariation",
"fully_qualified_name": "HubspotCmsApi.CreateBlogLanguageVariation@0.1.0",
"description": "Create a language variation for a blog in HubSpot CMS.\n\nThis tool allows you to create a new language variation for an existing blog using HubSpot CMS's multi-language settings. Use it when you need to support multiple languages for a blog.",
"toolkit": {
"name": "ArcadeHubspotCmsApi",
"description": null,
"version": "0.1.0"
},
"input": {
"parameters": [
{
"name": "blog_id",
"required": true,
"description": "ID of the blog to clone for creating a language variation.",
"value_schema": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "ID of blog to clone."
},
"inferrable": true,
"http_endpoint_parameter_name": "id"
},
{
"name": "target_language_for_blog_variant",
"required": false,
"description": "The language code for the new blog variant, specifying the target language for translation.",
"value_schema": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "Target language of new variant."
},
"inferrable": true,
"http_endpoint_parameter_name": "language"
},
{
"name": "primary_language",
"required": false,
"description": "Specify the language of the primary blog to clone. This determines the source content for the new language variation.",
"value_schema": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "Language of primary blog to clone."
},
"inferrable": true,
"http_endpoint_parameter_name": "primaryLanguage"
},
{
"name": "blog_slug",
"required": false,
"description": "Path to the blog. Used to specify the location of the language variation within the CMS.",
"value_schema": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "Path to this blog."
},
"inferrable": true,
"http_endpoint_parameter_name": "slug"
}
]
},
"output": {
"description": "Response from the API endpoint 'post-/cms/v3/blog-settings/settings/multi-language/create-language-variation'.",
"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": {
"provider_id": "arcade-hubspot",
"provider_type": "oauth2",
"id": null,
"oauth2": {
"scopes": [
"content"
]
}
},
"secrets": null,
"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 hubspot_cms API."
},
"http_endpoint": {
"metadata": {
"object_type": "http_endpoint",
"version": "1.2.0",
"description": ""
},
"url": "https://api.hubapi.com/cms/v3/blog-settings/settings/multi-language/create-language-variation",
"http_method": "POST",
"headers": {},
"parameters": [
{
"name": "language",
"tool_parameter_name": "target_language_for_blog_variant",
"description": "Target language of new variant.",
"value_schema": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "Target language of new variant."
},
"accepted_as": "body",
"required": false,
"deprecated": false,
"default": null,
"documentation_urls": []
},
{
"name": "id",
"tool_parameter_name": "blog_id",
"description": "ID of blog to clone.",
"value_schema": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "ID of blog to clone."
},
"accepted_as": "body",
"required": true,
"deprecated": false,
"default": null,
"documentation_urls": []
},
{
"name": "primaryLanguage",
"tool_parameter_name": "primary_language",
"description": "Language of primary blog to clone.",
"value_schema": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "Language of primary blog to clone."
},
"accepted_as": "body",
"required": false,
"deprecated": false,
"default": null,
"documentation_urls": []
},
{
"name": "slug",
"tool_parameter_name": "blog_slug",
"description": "Path to this blog.",
"value_schema": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "Path to this blog."
},
"accepted_as": "body",
"required": false,
"deprecated": false,
"default": null,
"documentation_urls": []
}
],
"documentation_urls": [],
"secrets": [
{
"arcade_key": "auth_token",
"parameter_name": "Authorization",
"accepted_as": "header",
"formatted_value": "Bearer {authorization}",
"description": "The OAuth token to use for authentication.",
"is_auth_token": true
}
],
"request_body_spec": "{\n \"description\": \"The JSON representation of the ContentLanguageCloneRequest object.\",\n \"content\": {\n \"application/json\": {\n \"schema\": {\n \"required\": [\n \"id\"\n ],\n \"type\": \"object\",\n \"properties\": {\n \"language\": {\n \"type\": \"string\",\n \"description\": \"Target language of new variant.\"\n },\n \"id\": {\n \"type\": \"string\",\n \"description\": \"ID of blog to clone.\"\n },\n \"primaryLanguage\": {\n \"type\": \"string\",\n \"description\": \"Language of primary blog to clone.\"\n },\n \"slug\": {\n \"type\": \"string\",\n \"description\": \"Path to this blog.\"\n }\n },\n \"description\": \"Request body object for creating new language variant blog.\"\n }\n }\n },\n \"required\": true\n}",
"use_request_body_schema_mode": false,
"validate_request_body_schema": false
}
}

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View file

@ -0,0 +1,208 @@
{
"name": "CreateBlogTagLanguageVariation",
"fully_qualified_name": "HubspotCmsApi.CreateBlogTagLanguageVariation@0.1.0",
"description": "Create a new language variation from an existing blog tag.\n\nUse this tool to create a language variation for an existing blog tag on HubSpot CMS. Call this tool when you need to support multiple languages for blog tags.",
"toolkit": {
"name": "ArcadeHubspotCmsApi",
"description": null,
"version": "0.1.0"
},
"input": {
"parameters": [
{
"name": "new_blog_tag_name",
"required": true,
"description": "The name for the newly cloned blog tag language variation.",
"value_schema": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "Name of newly cloned blog tag."
},
"inferrable": true,
"http_endpoint_parameter_name": "name"
},
{
"name": "blog_tag_id",
"required": true,
"description": "ID of the existing blog tag to be cloned for creating a language variation.",
"value_schema": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "ID of the object to be cloned."
},
"inferrable": true,
"http_endpoint_parameter_name": "id"
},
{
"name": "target_language_for_blog_tag_variation",
"required": false,
"description": "Specifies the target language for the new blog tag variant.",
"value_schema": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "Target language of new variant."
},
"inferrable": true,
"http_endpoint_parameter_name": "language"
},
{
"name": "primary_blog_tag_language",
"required": false,
"description": "Specify the language code of the primary blog tag to be cloned, such as 'en', 'fr', etc.",
"value_schema": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "Language of primary blog tag to clone."
},
"inferrable": true,
"http_endpoint_parameter_name": "primaryLanguage"
}
]
},
"output": {
"description": "Response from the API endpoint 'post-/cms/v3/blogs/tags/multi-language/create-language-variation_createLangVariation'.",
"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": {
"provider_id": "arcade-hubspot",
"provider_type": "oauth2",
"id": null,
"oauth2": {
"scopes": [
"content"
]
}
},
"secrets": null,
"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 hubspot_cms API."
},
"http_endpoint": {
"metadata": {
"object_type": "http_endpoint",
"version": "1.2.0",
"description": ""
},
"url": "https://api.hubapi.com/cms/v3/blogs/tags/multi-language/create-language-variation",
"http_method": "POST",
"headers": {},
"parameters": [
{
"name": "name",
"tool_parameter_name": "new_blog_tag_name",
"description": "Name of newly cloned blog tag.",
"value_schema": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "Name of newly cloned blog tag."
},
"accepted_as": "body",
"required": true,
"deprecated": false,
"default": null,
"documentation_urls": []
},
{
"name": "language",
"tool_parameter_name": "target_language_for_blog_tag_variation",
"description": "Target language of new variant.",
"value_schema": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "Target language of new variant."
},
"accepted_as": "body",
"required": false,
"deprecated": false,
"default": null,
"documentation_urls": []
},
{
"name": "id",
"tool_parameter_name": "blog_tag_id",
"description": "ID of the object to be cloned.",
"value_schema": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "ID of the object to be cloned."
},
"accepted_as": "body",
"required": true,
"deprecated": false,
"default": null,
"documentation_urls": []
},
{
"name": "primaryLanguage",
"tool_parameter_name": "primary_blog_tag_language",
"description": "Language of primary blog tag to clone.",
"value_schema": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "Language of primary blog tag to clone."
},
"accepted_as": "body",
"required": false,
"deprecated": false,
"default": null,
"documentation_urls": []
}
],
"documentation_urls": [],
"secrets": [
{
"arcade_key": "auth_token",
"parameter_name": "Authorization",
"accepted_as": "header",
"formatted_value": "Bearer {authorization}",
"description": "The OAuth token to use for authentication.",
"is_auth_token": true
}
],
"request_body_spec": "{\n \"description\": \"The JSON representation of the ContentLanguageCloneRequest object.\",\n \"content\": {\n \"application/json\": {\n \"schema\": {\n \"required\": [\n \"id\",\n \"name\"\n ],\n \"type\": \"object\",\n \"properties\": {\n \"name\": {\n \"type\": \"string\",\n \"description\": \"Name of newly cloned blog tag.\"\n },\n \"language\": {\n \"type\": \"string\",\n \"description\": \"Target language of new variant.\"\n },\n \"id\": {\n \"type\": \"string\",\n \"description\": \"ID of the object to be cloned.\"\n },\n \"primaryLanguage\": {\n \"type\": \"string\",\n \"description\": \"Language of primary blog tag to clone.\"\n }\n },\n \"description\": \"Request body object for cloning blog tags.\"\n }\n }\n },\n \"required\": true\n}",
"use_request_body_schema_mode": false,
"validate_request_body_schema": false
}
}

File diff suppressed because one or more lines are too long

View file

@ -0,0 +1,242 @@
{
"name": "CreateDraftTableRows",
"fully_qualified_name": "HubspotCmsApi.CreateDraftTableRows@0.1.0",
"description": "Create draft rows in a specified HubSpot table.\n\nThis tool is used to add multiple rows to the draft version of a specified HubSpot CMS table. It allows for up to 100 rows to be created in one call. Useful for updating content drafts before publication.",
"toolkit": {
"name": "ArcadeHubspotCmsApi",
"description": null,
"version": "0.1.0"
},
"input": {
"parameters": [
{
"name": "table_id_or_name",
"required": true,
"description": "The ID or name of the HubSpot table to which the draft rows are being added. This is required to specify which table you want to update.",
"value_schema": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "The ID or name of the table"
},
"inferrable": true,
"http_endpoint_parameter_name": "tableIdOrName"
},
{
"name": "draft_table_rows_data",
"required": true,
"description": "A JSON array of row objects to add to the draft table. Each object can include keys like 'path', 'childTableId', 'values', 'name', and 'displayIndex'. Maximum 100 rows per call.",
"value_schema": {
"val_type": "json",
"inner_val_type": null,
"enum": null,
"properties": {
"inputs": {
"val_type": "array",
"inner_val_type": "json",
"enum": null,
"properties": null,
"inner_properties": {
"path": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "Specifies the value for `hs_path` column, which will be used as slug in the dynamic pages"
},
"childTableId": {
"val_type": "integer",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "Specifies the value for the column child table id"
},
"values": {
"val_type": "json",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "List of key value pairs with the column name and column value"
},
"name": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "Specifies the value for `hs_name` column, which will be used as title in the dynamic pages"
},
"displayIndex": {
"val_type": "integer",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": null
}
},
"description": null
}
},
"inner_properties": null,
"description": ""
},
"inferrable": true,
"http_endpoint_parameter_name": "requestBody"
}
]
},
"output": {
"description": "Response from the API endpoint 'post-/cms/v3/hubdb/tables/{tableIdOrName}/rows/draft/batch/create_createDraftTableRows'.",
"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": {
"provider_id": "arcade-hubspot",
"provider_type": "oauth2",
"id": null,
"oauth2": {
"scopes": [
"hubdb"
]
}
},
"secrets": null,
"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 hubspot_cms API."
},
"http_endpoint": {
"metadata": {
"object_type": "http_endpoint",
"version": "1.2.0",
"description": ""
},
"url": "https://api.hubapi.com/cms/v3/hubdb/tables/{tableIdOrName}/rows/draft/batch/create",
"http_method": "POST",
"headers": {},
"parameters": [
{
"name": "tableIdOrName",
"tool_parameter_name": "table_id_or_name",
"description": "The ID or name of the table",
"value_schema": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "The ID or name of the table"
},
"accepted_as": "path",
"required": true,
"deprecated": false,
"default": null,
"documentation_urls": []
},
{
"name": "requestBody",
"tool_parameter_name": "draft_table_rows_data",
"description": "",
"value_schema": {
"val_type": "json",
"inner_val_type": null,
"enum": null,
"properties": {
"inputs": {
"val_type": "array",
"inner_val_type": "json",
"enum": null,
"properties": null,
"inner_properties": {
"path": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "Specifies the value for `hs_path` column, which will be used as slug in the dynamic pages"
},
"childTableId": {
"val_type": "integer",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "Specifies the value for the column child table id"
},
"values": {
"val_type": "json",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "List of key value pairs with the column name and column value"
},
"name": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "Specifies the value for `hs_name` column, which will be used as title in the dynamic pages"
},
"displayIndex": {
"val_type": "integer",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": null
}
},
"description": null
}
},
"inner_properties": null,
"description": ""
},
"accepted_as": "body",
"required": true,
"deprecated": false,
"default": null,
"documentation_urls": []
}
],
"documentation_urls": [],
"secrets": [
{
"arcade_key": "auth_token",
"parameter_name": "Authorization",
"accepted_as": "header",
"formatted_value": "Bearer {authorization}",
"description": "The OAuth token to use for authentication.",
"is_auth_token": true
}
],
"request_body_spec": "{\n \"content\": {\n \"application/json\": {\n \"schema\": {\n \"required\": [\n \"inputs\"\n ],\n \"type\": \"object\",\n \"properties\": {\n \"inputs\": {\n \"type\": \"array\",\n \"items\": {\n \"required\": [\n \"values\"\n ],\n \"type\": \"object\",\n \"properties\": {\n \"path\": {\n \"type\": \"string\",\n \"description\": \"Specifies the value for `hs_path` column, which will be used as slug in the dynamic pages\"\n },\n \"childTableId\": {\n \"type\": \"integer\",\n \"description\": \"Specifies the value for the column child table id\",\n \"format\": \"int64\"\n },\n \"values\": {\n \"type\": \"object\",\n \"additionalProperties\": {\n \"type\": \"object\",\n \"description\": \"Schema reference broken: #/components/schemas/Variant\",\n \"additionalProperties\": true,\n \"x-moar-broken-reference\": \"#/components/schemas/Variant\"\n },\n \"description\": \"List of key value pairs with the column name and column value\"\n },\n \"name\": {\n \"type\": \"string\",\n \"description\": \"Specifies the value for `hs_name` column, which will be used as title in the dynamic pages\"\n },\n \"displayIndex\": {\n \"type\": \"integer\",\n \"format\": \"int32\"\n }\n }\n }\n }\n }\n }\n }\n },\n \"required\": true\n}",
"use_request_body_schema_mode": true,
"validate_request_body_schema": true
}
}

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View file

@ -0,0 +1,307 @@
{
"name": "CreateLandingPageFolder",
"fully_qualified_name": "HubspotCmsApi.CreateLandingPageFolder@0.1.0",
"description": "Create a new folder in HubSpot CMS for landing pages.\n\nThis tool is used to create a new folder within the landing pages section of HubSpot CMS. Call this tool when you need to organize landing pages into a new folder structure.",
"toolkit": {
"name": "ArcadeHubspotCmsApi",
"description": null,
"version": "0.1.0"
},
"input": {
"parameters": [
{
"name": "deletion_timestamp",
"required": true,
"description": "The ISO8601 timestamp indicating when the folder was deleted. Leave this empty if the folder is active.",
"value_schema": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "The timestamp (ISO8601 format) when this content folder was deleted."
},
"inferrable": true,
"http_endpoint_parameter_name": "deletedAt"
},
{
"name": "parent_folder_id",
"required": true,
"description": "The ID of the parent content folder under which the new folder will be nested.",
"value_schema": {
"val_type": "integer",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "The ID of the content folder this folder is nested under"
},
"inferrable": true,
"http_endpoint_parameter_name": "parentFolderId"
},
{
"name": "folder_creation_date",
"required": true,
"description": "The ISO8601 timestamp when this folder was created.",
"value_schema": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": ""
},
"inferrable": true,
"http_endpoint_parameter_name": "created"
},
{
"name": "folder_name",
"required": true,
"description": "The name of the folder to display in the app dashboard.",
"value_schema": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "The name of the folder which will show up in the app dashboard"
},
"inferrable": true,
"http_endpoint_parameter_name": "name"
},
{
"name": "folder_unique_id",
"required": true,
"description": "The unique identifier for the content folder. This is a string that serves as the primary key for the folder.",
"value_schema": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "The unique ID of the content folder."
},
"inferrable": true,
"http_endpoint_parameter_name": "id"
},
{
"name": "folder_category",
"required": true,
"description": "The type of object this folder applies to. Must be set to LANDING_PAGE.",
"value_schema": {
"val_type": "integer",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "The type of object this folder applies to. Should always be LANDING_PAGE."
},
"inferrable": true,
"http_endpoint_parameter_name": "category"
},
{
"name": "updated_timestamp",
"required": true,
"description": "The timestamp in ISO8601 format indicating when the folder was last updated.",
"value_schema": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": ""
},
"inferrable": true,
"http_endpoint_parameter_name": "updated"
}
]
},
"output": {
"description": "Response from the API endpoint 'post-/cms/v3/pages/landing-pages/folders_createFolder'.",
"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": {
"provider_id": "arcade-hubspot",
"provider_type": "oauth2",
"id": null,
"oauth2": {
"scopes": [
"content"
]
}
},
"secrets": null,
"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 hubspot_cms API."
},
"http_endpoint": {
"metadata": {
"object_type": "http_endpoint",
"version": "1.2.0",
"description": ""
},
"url": "https://api.hubapi.com/cms/v3/pages/landing-pages/folders",
"http_method": "POST",
"headers": {},
"parameters": [
{
"name": "deletedAt",
"tool_parameter_name": "deletion_timestamp",
"description": "The timestamp (ISO8601 format) when this content folder was deleted.",
"value_schema": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "The timestamp (ISO8601 format) when this content folder was deleted."
},
"accepted_as": "body",
"required": true,
"deprecated": false,
"default": null,
"documentation_urls": []
},
{
"name": "parentFolderId",
"tool_parameter_name": "parent_folder_id",
"description": "The ID of the content folder this folder is nested under",
"value_schema": {
"val_type": "integer",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "The ID of the content folder this folder is nested under"
},
"accepted_as": "body",
"required": true,
"deprecated": false,
"default": null,
"documentation_urls": []
},
{
"name": "created",
"tool_parameter_name": "folder_creation_date",
"description": "",
"value_schema": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": ""
},
"accepted_as": "body",
"required": true,
"deprecated": false,
"default": null,
"documentation_urls": []
},
{
"name": "name",
"tool_parameter_name": "folder_name",
"description": "The name of the folder which will show up in the app dashboard",
"value_schema": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "The name of the folder which will show up in the app dashboard"
},
"accepted_as": "body",
"required": true,
"deprecated": false,
"default": null,
"documentation_urls": []
},
{
"name": "id",
"tool_parameter_name": "folder_unique_id",
"description": "The unique ID of the content folder.",
"value_schema": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "The unique ID of the content folder."
},
"accepted_as": "body",
"required": true,
"deprecated": false,
"default": null,
"documentation_urls": []
},
{
"name": "category",
"tool_parameter_name": "folder_category",
"description": "The type of object this folder applies to. Should always be LANDING_PAGE.",
"value_schema": {
"val_type": "integer",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "The type of object this folder applies to. Should always be LANDING_PAGE."
},
"accepted_as": "body",
"required": true,
"deprecated": false,
"default": null,
"documentation_urls": []
},
{
"name": "updated",
"tool_parameter_name": "updated_timestamp",
"description": "",
"value_schema": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": ""
},
"accepted_as": "body",
"required": true,
"deprecated": false,
"default": null,
"documentation_urls": []
}
],
"documentation_urls": [],
"secrets": [
{
"arcade_key": "auth_token",
"parameter_name": "Authorization",
"accepted_as": "header",
"formatted_value": "Bearer {authorization}",
"description": "The OAuth token to use for authentication.",
"is_auth_token": true
}
],
"request_body_spec": "{\n \"description\": \"The JSON representation of a new Folder.\",\n \"content\": {\n \"application/json\": {\n \"schema\": {\n \"required\": [\n \"category\",\n \"created\",\n \"deletedAt\",\n \"id\",\n \"name\",\n \"parentFolderId\",\n \"updated\"\n ],\n \"type\": \"object\",\n \"properties\": {\n \"deletedAt\": {\n \"type\": \"string\",\n \"description\": \"The timestamp (ISO8601 format) when this content folder was deleted.\",\n \"format\": \"date-time\"\n },\n \"parentFolderId\": {\n \"type\": \"integer\",\n \"description\": \"The ID of the content folder this folder is nested under\",\n \"format\": \"int64\"\n },\n \"created\": {\n \"type\": \"string\",\n \"format\": \"date-time\"\n },\n \"name\": {\n \"type\": \"string\",\n \"description\": \"The name of the folder which will show up in the app dashboard\"\n },\n \"id\": {\n \"type\": \"string\",\n \"description\": \"The unique ID of the content folder.\"\n },\n \"category\": {\n \"type\": \"integer\",\n \"description\": \"The type of object this folder applies to. Should always be LANDING_PAGE.\",\n \"format\": \"int32\"\n },\n \"updated\": {\n \"type\": \"string\",\n \"format\": \"date-time\"\n }\n },\n \"description\": \"Model definition for a content folder.\"\n }\n }\n },\n \"required\": true\n}",
"use_request_body_schema_mode": false,
"validate_request_body_schema": false
}
}

View file

@ -0,0 +1,241 @@
{
"name": "CreateLandingPageFolders",
"fully_qualified_name": "HubspotCmsApi.CreateLandingPageFolders@0.1.0",
"description": "Create multiple landing page folders in HubSpot CMS.\n\nUse this tool to create multiple folder objects for landing pages in HubSpot CMS as specified in the request details.",
"toolkit": {
"name": "ArcadeHubspotCmsApi",
"description": null,
"version": "0.1.0"
},
"input": {
"parameters": [
{
"name": "folders_to_create",
"required": true,
"description": "A JSON array detailing the new folders to create, including their names, parent folder IDs, and other metadata.",
"value_schema": {
"val_type": "json",
"inner_val_type": null,
"enum": null,
"properties": {
"inputs": {
"val_type": "array",
"inner_val_type": "json",
"enum": null,
"properties": null,
"inner_properties": {
"deletedAt": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "The timestamp (ISO8601 format) when this content folder was deleted."
},
"parentFolderId": {
"val_type": "integer",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "The ID of the content folder this folder is nested under"
},
"created": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": null
},
"name": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "The name of the folder which will show up in the app dashboard"
},
"id": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "The unique ID of the content folder."
},
"category": {
"val_type": "integer",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "The type of object this folder applies to. Should always be LANDING_PAGE."
},
"updated": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": null
}
},
"description": "Content folders to input."
}
},
"inner_properties": null,
"description": "The JSON array of new Folders to create."
},
"inferrable": true,
"http_endpoint_parameter_name": "requestBody"
}
]
},
"output": {
"description": "Response from the API endpoint 'post-/cms/v3/pages/landing-pages/folders/batch/create_createFolders'.",
"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": {
"provider_id": "arcade-hubspot",
"provider_type": "oauth2",
"id": null,
"oauth2": {
"scopes": [
"content"
]
}
},
"secrets": null,
"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 hubspot_cms API."
},
"http_endpoint": {
"metadata": {
"object_type": "http_endpoint",
"version": "1.2.0",
"description": ""
},
"url": "https://api.hubapi.com/cms/v3/pages/landing-pages/folders/batch/create",
"http_method": "POST",
"headers": {},
"parameters": [
{
"name": "requestBody",
"tool_parameter_name": "folders_to_create",
"description": "The JSON array of new Folders to create.",
"value_schema": {
"val_type": "json",
"inner_val_type": null,
"enum": null,
"properties": {
"inputs": {
"val_type": "array",
"inner_val_type": "json",
"enum": null,
"properties": null,
"inner_properties": {
"deletedAt": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "The timestamp (ISO8601 format) when this content folder was deleted."
},
"parentFolderId": {
"val_type": "integer",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "The ID of the content folder this folder is nested under"
},
"created": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": null
},
"name": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "The name of the folder which will show up in the app dashboard"
},
"id": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "The unique ID of the content folder."
},
"category": {
"val_type": "integer",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "The type of object this folder applies to. Should always be LANDING_PAGE."
},
"updated": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": null
}
},
"description": "Content folders to input."
}
},
"inner_properties": null,
"description": "The JSON array of new Folders to create."
},
"accepted_as": "body",
"required": true,
"deprecated": false,
"default": null,
"documentation_urls": []
}
],
"documentation_urls": [],
"secrets": [
{
"arcade_key": "auth_token",
"parameter_name": "Authorization",
"accepted_as": "header",
"formatted_value": "Bearer {authorization}",
"description": "The OAuth token to use for authentication.",
"is_auth_token": true
}
],
"request_body_spec": "{\n \"description\": \"The JSON array of new Folders to create.\",\n \"content\": {\n \"application/json\": {\n \"schema\": {\n \"required\": [\n \"inputs\"\n ],\n \"type\": \"object\",\n \"properties\": {\n \"inputs\": {\n \"type\": \"array\",\n \"description\": \"Content folders to input.\",\n \"items\": {\n \"required\": [\n \"category\",\n \"created\",\n \"deletedAt\",\n \"id\",\n \"name\",\n \"parentFolderId\",\n \"updated\"\n ],\n \"type\": \"object\",\n \"properties\": {\n \"deletedAt\": {\n \"type\": \"string\",\n \"description\": \"The timestamp (ISO8601 format) when this content folder was deleted.\",\n \"format\": \"date-time\"\n },\n \"parentFolderId\": {\n \"type\": \"integer\",\n \"description\": \"The ID of the content folder this folder is nested under\",\n \"format\": \"int64\"\n },\n \"created\": {\n \"type\": \"string\",\n \"format\": \"date-time\"\n },\n \"name\": {\n \"type\": \"string\",\n \"description\": \"The name of the folder which will show up in the app dashboard\"\n },\n \"id\": {\n \"type\": \"string\",\n \"description\": \"The unique ID of the content folder.\"\n },\n \"category\": {\n \"type\": \"integer\",\n \"description\": \"The type of object this folder applies to. Should always be LANDING_PAGE.\",\n \"format\": \"int32\"\n },\n \"updated\": {\n \"type\": \"string\",\n \"format\": \"date-time\"\n }\n },\n \"description\": \"Model definition for a content folder.\"\n }\n }\n },\n \"description\": \"Wrapper for providing an array of content folders as inputs.\"\n }\n }\n },\n \"required\": true\n}",
"use_request_body_schema_mode": true,
"validate_request_body_schema": true
}
}

File diff suppressed because one or more lines are too long

View file

@ -0,0 +1,175 @@
{
"name": "CreateLanguageVariation",
"fully_qualified_name": "HubspotCmsApi.CreateLanguageVariation@0.1.0",
"description": "Create a new language variation for a site page.\n\nUse this tool to create a new language variation from an existing site page in HubSpot CMS. It helps in managing multilingual content efficiently by generating a language-specific page version.",
"toolkit": {
"name": "ArcadeHubspotCmsApi",
"description": null,
"version": "0.1.0"
},
"input": {
"parameters": [
{
"name": "content_id_to_clone",
"required": true,
"description": "ID of the site page content to clone for creating a language variation.",
"value_schema": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "ID of content to clone."
},
"inferrable": true,
"http_endpoint_parameter_name": "id"
},
{
"name": "target_language",
"required": false,
"description": "Target language code for the new site page variant, e.g., 'fr' for French.",
"value_schema": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "Target language of new variant."
},
"inferrable": true,
"http_endpoint_parameter_name": "language"
},
{
"name": "primary_content_language",
"required": false,
"description": "Specify the language of the primary content to clone for creating the variation.",
"value_schema": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "Language of primary content to clone."
},
"inferrable": true,
"http_endpoint_parameter_name": "primaryLanguage"
}
]
},
"output": {
"description": "Response from the API endpoint 'post-/cms/v3/pages/site-pages/multi-language/create-language-variation_createLangVariation'.",
"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": {
"provider_id": "arcade-hubspot",
"provider_type": "oauth2",
"id": null,
"oauth2": {
"scopes": [
"content"
]
}
},
"secrets": null,
"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 hubspot_cms API."
},
"http_endpoint": {
"metadata": {
"object_type": "http_endpoint",
"version": "1.2.0",
"description": ""
},
"url": "https://api.hubapi.com/cms/v3/pages/site-pages/multi-language/create-language-variation",
"http_method": "POST",
"headers": {},
"parameters": [
{
"name": "language",
"tool_parameter_name": "target_language",
"description": "Target language of new variant.",
"value_schema": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "Target language of new variant."
},
"accepted_as": "body",
"required": false,
"deprecated": false,
"default": null,
"documentation_urls": []
},
{
"name": "id",
"tool_parameter_name": "content_id_to_clone",
"description": "ID of content to clone.",
"value_schema": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "ID of content to clone."
},
"accepted_as": "body",
"required": true,
"deprecated": false,
"default": null,
"documentation_urls": []
},
{
"name": "primaryLanguage",
"tool_parameter_name": "primary_content_language",
"description": "Language of primary content to clone.",
"value_schema": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "Language of primary content to clone."
},
"accepted_as": "body",
"required": false,
"deprecated": false,
"default": null,
"documentation_urls": []
}
],
"documentation_urls": [],
"secrets": [
{
"arcade_key": "auth_token",
"parameter_name": "Authorization",
"accepted_as": "header",
"formatted_value": "Bearer {authorization}",
"description": "The OAuth token to use for authentication.",
"is_auth_token": true
}
],
"request_body_spec": "{\n \"description\": \"The JSON representation of the ContentLanguageCloneRequest object.\",\n \"content\": {\n \"application/json\": {\n \"schema\": {\n \"required\": [\n \"id\"\n ],\n \"type\": \"object\",\n \"properties\": {\n \"language\": {\n \"type\": \"string\",\n \"description\": \"Target language of new variant.\"\n },\n \"id\": {\n \"type\": \"string\",\n \"description\": \"ID of content to clone.\"\n },\n \"primaryLanguage\": {\n \"type\": \"string\",\n \"description\": \"Language of primary content to clone.\"\n }\n },\n \"description\": \"Request body object for creating new language variant content.\"\n }\n }\n },\n \"required\": true\n}",
"use_request_body_schema_mode": false,
"validate_request_body_schema": false
}
}

View file

@ -0,0 +1,369 @@
{
"name": "CreateMediaPlayedEvent",
"fully_qualified_name": "HubspotCmsApi.CreateMediaPlayedEvent@0.1.0",
"description": "Log an event when media playback starts.\n\nCall this tool when you need to create an event for when a user begins playing a piece of media. It helps track media interactions.",
"toolkit": {
"name": "ArcadeHubspotCmsApi",
"description": null,
"version": "0.1.0"
},
"input": {
"parameters": [
{
"name": "media_play_event_data",
"required": true,
"description": "JSON containing details of the media play event, including media URL, contact ID, media type, session ID, page details, and timestamp.",
"value_schema": {
"val_type": "json",
"inner_val_type": null,
"enum": null,
"properties": {
"mediaUrl": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": null
},
"contactId": {
"val_type": "integer",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": null
},
"externalId": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": null
},
"mediaType": {
"val_type": "string",
"inner_val_type": null,
"enum": [
"VIDEO",
"AUDIO",
"DOCUMENT",
"OTHER",
"IMAGE"
],
"properties": null,
"inner_properties": null,
"description": null
},
"sessionId": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": null
},
"pageId": {
"val_type": "integer",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": null
},
"pageName": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": null
},
"iframeUrl": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": null
},
"occurredTimestamp": {
"val_type": "integer",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": null
},
"contactUtk": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": null
},
"pageUrl": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": null
},
"state": {
"val_type": "string",
"inner_val_type": null,
"enum": [
"STARTED",
"VIEWED"
],
"properties": null,
"inner_properties": null,
"description": null
},
"_hsenc": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": null
},
"mediaBridgeId": {
"val_type": "integer",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": null
},
"mediaName": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": null
}
},
"inner_properties": null,
"description": ""
},
"inferrable": true,
"http_endpoint_parameter_name": "requestBody"
}
]
},
"output": {
"description": "Response from the API endpoint 'post-/media-bridge/v1/events/media-played'.",
"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": {
"provider_id": "arcade-hubspot",
"provider_type": "oauth2",
"id": null,
"oauth2": {
"scopes": [
"media_bridge.write"
]
}
},
"secrets": null,
"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 hubspot_cms API."
},
"http_endpoint": {
"metadata": {
"object_type": "http_endpoint",
"version": "1.2.0",
"description": ""
},
"url": "https://api.hubapi.com/media-bridge/v1/events/media-played",
"http_method": "POST",
"headers": {},
"parameters": [
{
"name": "requestBody",
"tool_parameter_name": "media_play_event_data",
"description": "",
"value_schema": {
"val_type": "json",
"inner_val_type": null,
"enum": null,
"properties": {
"mediaUrl": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": null
},
"contactId": {
"val_type": "integer",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": null
},
"externalId": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": null
},
"mediaType": {
"val_type": "string",
"inner_val_type": null,
"enum": [
"VIDEO",
"AUDIO",
"DOCUMENT",
"OTHER",
"IMAGE"
],
"properties": null,
"inner_properties": null,
"description": null
},
"sessionId": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": null
},
"pageId": {
"val_type": "integer",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": null
},
"pageName": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": null
},
"iframeUrl": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": null
},
"occurredTimestamp": {
"val_type": "integer",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": null
},
"contactUtk": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": null
},
"pageUrl": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": null
},
"state": {
"val_type": "string",
"inner_val_type": null,
"enum": [
"STARTED",
"VIEWED"
],
"properties": null,
"inner_properties": null,
"description": null
},
"_hsenc": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": null
},
"mediaBridgeId": {
"val_type": "integer",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": null
},
"mediaName": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": null
}
},
"inner_properties": null,
"description": ""
},
"accepted_as": "body",
"required": true,
"deprecated": false,
"default": null,
"documentation_urls": []
}
],
"documentation_urls": [],
"secrets": [
{
"arcade_key": "auth_token",
"parameter_name": "Authorization",
"accepted_as": "header",
"formatted_value": "Bearer {authorization}",
"description": "The OAuth token to use for authentication.",
"is_auth_token": true
}
],
"request_body_spec": "{\n \"content\": {\n \"application/json\": {\n \"schema\": {\n \"required\": [\n \"mediaType\",\n \"occurredTimestamp\",\n \"sessionId\",\n \"state\"\n ],\n \"type\": \"object\",\n \"properties\": {\n \"mediaUrl\": {\n \"type\": \"string\"\n },\n \"contactId\": {\n \"type\": \"integer\",\n \"format\": \"int64\"\n },\n \"externalId\": {\n \"type\": \"string\"\n },\n \"mediaType\": {\n \"type\": \"string\",\n \"enum\": [\n \"VIDEO\",\n \"AUDIO\",\n \"DOCUMENT\",\n \"OTHER\",\n \"IMAGE\"\n ]\n },\n \"sessionId\": {\n \"type\": \"string\"\n },\n \"pageId\": {\n \"type\": \"integer\",\n \"format\": \"int64\"\n },\n \"pageName\": {\n \"type\": \"string\"\n },\n \"iframeUrl\": {\n \"type\": \"string\"\n },\n \"occurredTimestamp\": {\n \"type\": \"integer\",\n \"format\": \"int64\"\n },\n \"contactUtk\": {\n \"type\": \"string\"\n },\n \"pageUrl\": {\n \"type\": \"string\"\n },\n \"state\": {\n \"type\": \"string\",\n \"enum\": [\n \"STARTED\",\n \"VIEWED\"\n ]\n },\n \"_hsenc\": {\n \"type\": \"string\"\n },\n \"mediaBridgeId\": {\n \"type\": \"integer\",\n \"format\": \"int64\"\n },\n \"mediaName\": {\n \"type\": \"string\"\n }\n }\n }\n }\n },\n \"required\": true\n}",
"use_request_body_schema_mode": true,
"validate_request_body_schema": true
}
}

View file

@ -0,0 +1,175 @@
{
"name": "CreateMultilanguageLandingPage",
"fully_qualified_name": "HubspotCmsApi.CreateMultilanguageLandingPage@0.1.0",
"description": "Create a new language variation for a landing page.\n\nThis tool creates a new language variation from an existing landing page in HubSpot CMS. Use it to generate multilingual versions of your landing pages.",
"toolkit": {
"name": "ArcadeHubspotCmsApi",
"description": null,
"version": "0.1.0"
},
"input": {
"parameters": [
{
"name": "content_id_to_clone",
"required": true,
"description": "The ID of the landing page content to be cloned for creating a new language variation.",
"value_schema": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "ID of content to clone."
},
"inferrable": true,
"http_endpoint_parameter_name": "id"
},
{
"name": "target_language",
"required": false,
"description": "Specify the target language for the new landing page variant.",
"value_schema": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "Target language of new variant."
},
"inferrable": true,
"http_endpoint_parameter_name": "language"
},
{
"name": "primary_language_of_content",
"required": false,
"description": "Language code of the primary content to be cloned for creating the new language variation.",
"value_schema": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "Language of primary content to clone."
},
"inferrable": true,
"http_endpoint_parameter_name": "primaryLanguage"
}
]
},
"output": {
"description": "Response from the API endpoint 'post-/cms/v3/pages/landing-pages/multi-language/create-language-variation_createLangVariation'.",
"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": {
"provider_id": "arcade-hubspot",
"provider_type": "oauth2",
"id": null,
"oauth2": {
"scopes": [
"content"
]
}
},
"secrets": null,
"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 hubspot_cms API."
},
"http_endpoint": {
"metadata": {
"object_type": "http_endpoint",
"version": "1.2.0",
"description": ""
},
"url": "https://api.hubapi.com/cms/v3/pages/landing-pages/multi-language/create-language-variation",
"http_method": "POST",
"headers": {},
"parameters": [
{
"name": "language",
"tool_parameter_name": "target_language",
"description": "Target language of new variant.",
"value_schema": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "Target language of new variant."
},
"accepted_as": "body",
"required": false,
"deprecated": false,
"default": null,
"documentation_urls": []
},
{
"name": "id",
"tool_parameter_name": "content_id_to_clone",
"description": "ID of content to clone.",
"value_schema": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "ID of content to clone."
},
"accepted_as": "body",
"required": true,
"deprecated": false,
"default": null,
"documentation_urls": []
},
{
"name": "primaryLanguage",
"tool_parameter_name": "primary_language_of_content",
"description": "Language of primary content to clone.",
"value_schema": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "Language of primary content to clone."
},
"accepted_as": "body",
"required": false,
"deprecated": false,
"default": null,
"documentation_urls": []
}
],
"documentation_urls": [],
"secrets": [
{
"arcade_key": "auth_token",
"parameter_name": "Authorization",
"accepted_as": "header",
"formatted_value": "Bearer {authorization}",
"description": "The OAuth token to use for authentication.",
"is_auth_token": true
}
],
"request_body_spec": "{\n \"description\": \"The JSON representation of the ContentLanguageCloneRequest object.\",\n \"content\": {\n \"application/json\": {\n \"schema\": {\n \"required\": [\n \"id\"\n ],\n \"type\": \"object\",\n \"properties\": {\n \"language\": {\n \"type\": \"string\",\n \"description\": \"Target language of new variant.\"\n },\n \"id\": {\n \"type\": \"string\",\n \"description\": \"ID of content to clone.\"\n },\n \"primaryLanguage\": {\n \"type\": \"string\",\n \"description\": \"Language of primary content to clone.\"\n }\n },\n \"description\": \"Request body object for creating new language variant content.\"\n }\n }\n },\n \"required\": true\n}",
"use_request_body_schema_mode": false,
"validate_request_body_schema": false
}
}

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View file

@ -0,0 +1,406 @@
{
"name": "CreateUrlRedirect",
"fully_qualified_name": "HubspotCmsApi.CreateUrlRedirect@0.1.0",
"description": "Creates and configures a new URL redirect in HubSpot CMS.\n\nUse this tool to create and set up a new URL redirect within the HubSpot CMS. Ideal for managing website redirects effectively.",
"toolkit": {
"name": "ArcadeHubspotCmsApi",
"description": null,
"version": "0.1.0"
},
"input": {
"parameters": [
{
"name": "redirect_style",
"required": true,
"description": "Integer indicating the style of the redirect. Defines the behavior and type of the redirect, such as permanent (301) or temporary (302).",
"value_schema": {
"val_type": "integer",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": ""
},
"inferrable": true,
"http_endpoint_parameter_name": "redirectStyle"
},
{
"name": "route_prefix",
"required": true,
"description": "Defines the prefix for the URL route to be redirected. Provide the specific path without the domain, e.g., '/example-path'.",
"value_schema": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": ""
},
"inferrable": true,
"http_endpoint_parameter_name": "routePrefix"
},
{
"name": "redirect_destination_url",
"required": true,
"description": "The target URL to which the redirect will point. This should be a valid and complete URL.",
"value_schema": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": ""
},
"inferrable": true,
"http_endpoint_parameter_name": "destination"
},
{
"name": "redirect_precedence",
"required": false,
"description": "An integer indicating the priority of the redirect if multiple rules match. Higher numbers take precedence.",
"value_schema": {
"val_type": "integer",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": ""
},
"inferrable": true,
"http_endpoint_parameter_name": "precedence"
},
{
"name": "ignore_trailing_slash",
"required": false,
"description": "Set to true to ignore trailing slashes, allowing flexibility in URL matches.",
"value_schema": {
"val_type": "boolean",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": ""
},
"inferrable": true,
"http_endpoint_parameter_name": "isTrailingSlashOptional"
},
{
"name": "match_query_string",
"required": false,
"description": "Indicates whether the redirect should match the query string. Set to true to match, false to ignore.",
"value_schema": {
"val_type": "boolean",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": ""
},
"inferrable": true,
"http_endpoint_parameter_name": "isMatchQueryString"
},
{
"name": "match_full_url",
"required": false,
"description": "Set to true to match the entire URL exactly. False applies partial matching.",
"value_schema": {
"val_type": "boolean",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": ""
},
"inferrable": true,
"http_endpoint_parameter_name": "isMatchFullUrl"
},
{
"name": "enable_protocol_agnostic",
"required": false,
"description": "Set to true to ignore the protocol (HTTP/HTTPS) when matching URLs. Enables protocol-agnostic redirects.",
"value_schema": {
"val_type": "boolean",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": ""
},
"inferrable": true,
"http_endpoint_parameter_name": "isProtocolAgnostic"
},
{
"name": "apply_only_after_not_found",
"required": false,
"description": "Applies the redirect only after a 404 Not Found response if true.",
"value_schema": {
"val_type": "boolean",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": ""
},
"inferrable": true,
"http_endpoint_parameter_name": "isOnlyAfterNotFound"
},
{
"name": "enable_pattern_matching",
"required": false,
"description": "Set to true to enable URL pattern matching for the redirect. False matches exact URLs only.",
"value_schema": {
"val_type": "boolean",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": ""
},
"inferrable": true,
"http_endpoint_parameter_name": "isPattern"
}
]
},
"output": {
"description": "Response from the API endpoint 'post-/cms/v3/url-redirects/_create'.",
"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": {
"provider_id": "arcade-hubspot",
"provider_type": "oauth2",
"id": null,
"oauth2": {
"scopes": [
"content"
]
}
},
"secrets": null,
"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 hubspot_cms API."
},
"http_endpoint": {
"metadata": {
"object_type": "http_endpoint",
"version": "1.2.0",
"description": ""
},
"url": "https://api.hubapi.com/cms/v3/url-redirects/",
"http_method": "POST",
"headers": {},
"parameters": [
{
"name": "isTrailingSlashOptional",
"tool_parameter_name": "ignore_trailing_slash",
"description": "",
"value_schema": {
"val_type": "boolean",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": ""
},
"accepted_as": "body",
"required": false,
"deprecated": false,
"default": null,
"documentation_urls": []
},
{
"name": "isMatchQueryString",
"tool_parameter_name": "match_query_string",
"description": "",
"value_schema": {
"val_type": "boolean",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": ""
},
"accepted_as": "body",
"required": false,
"deprecated": false,
"default": null,
"documentation_urls": []
},
{
"name": "redirectStyle",
"tool_parameter_name": "redirect_style",
"description": "",
"value_schema": {
"val_type": "integer",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": ""
},
"accepted_as": "body",
"required": true,
"deprecated": false,
"default": null,
"documentation_urls": []
},
{
"name": "routePrefix",
"tool_parameter_name": "route_prefix",
"description": "",
"value_schema": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": ""
},
"accepted_as": "body",
"required": true,
"deprecated": false,
"default": null,
"documentation_urls": []
},
{
"name": "isMatchFullUrl",
"tool_parameter_name": "match_full_url",
"description": "",
"value_schema": {
"val_type": "boolean",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": ""
},
"accepted_as": "body",
"required": false,
"deprecated": false,
"default": null,
"documentation_urls": []
},
{
"name": "isProtocolAgnostic",
"tool_parameter_name": "enable_protocol_agnostic",
"description": "",
"value_schema": {
"val_type": "boolean",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": ""
},
"accepted_as": "body",
"required": false,
"deprecated": false,
"default": null,
"documentation_urls": []
},
{
"name": "destination",
"tool_parameter_name": "redirect_destination_url",
"description": "",
"value_schema": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": ""
},
"accepted_as": "body",
"required": true,
"deprecated": false,
"default": null,
"documentation_urls": []
},
{
"name": "isOnlyAfterNotFound",
"tool_parameter_name": "apply_only_after_not_found",
"description": "",
"value_schema": {
"val_type": "boolean",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": ""
},
"accepted_as": "body",
"required": false,
"deprecated": false,
"default": null,
"documentation_urls": []
},
{
"name": "isPattern",
"tool_parameter_name": "enable_pattern_matching",
"description": "",
"value_schema": {
"val_type": "boolean",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": ""
},
"accepted_as": "body",
"required": false,
"deprecated": false,
"default": null,
"documentation_urls": []
},
{
"name": "precedence",
"tool_parameter_name": "redirect_precedence",
"description": "",
"value_schema": {
"val_type": "integer",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": ""
},
"accepted_as": "body",
"required": false,
"deprecated": false,
"default": null,
"documentation_urls": []
}
],
"documentation_urls": [],
"secrets": [
{
"arcade_key": "auth_token",
"parameter_name": "Authorization",
"accepted_as": "header",
"formatted_value": "Bearer {authorization}",
"description": "The OAuth token to use for authentication.",
"is_auth_token": true
}
],
"request_body_spec": "{\n \"content\": {\n \"application/json\": {\n \"schema\": {\n \"required\": [\n \"destination\",\n \"redirectStyle\",\n \"routePrefix\"\n ],\n \"type\": \"object\",\n \"properties\": {\n \"isTrailingSlashOptional\": {\n \"type\": \"boolean\"\n },\n \"isMatchQueryString\": {\n \"type\": \"boolean\"\n },\n \"redirectStyle\": {\n \"type\": \"integer\",\n \"format\": \"int32\"\n },\n \"routePrefix\": {\n \"type\": \"string\"\n },\n \"isMatchFullUrl\": {\n \"type\": \"boolean\"\n },\n \"isProtocolAgnostic\": {\n \"type\": \"boolean\"\n },\n \"destination\": {\n \"type\": \"string\"\n },\n \"isOnlyAfterNotFound\": {\n \"type\": \"boolean\"\n },\n \"isPattern\": {\n \"type\": \"boolean\"\n },\n \"precedence\": {\n \"type\": \"integer\",\n \"format\": \"int32\"\n }\n }\n }\n }\n },\n \"required\": true\n}",
"use_request_body_schema_mode": false,
"validate_request_body_schema": false
}
}

View file

@ -0,0 +1,142 @@
{
"name": "DeleteBlogAuthor",
"fully_qualified_name": "HubspotCmsApi.DeleteBlogAuthor@0.1.0",
"description": "Delete a specific blog author by ID.\n\nUse this tool to delete a blog author from the HubSpot CMS by providing their ID. It should be called when you need to remove an author from the system.",
"toolkit": {
"name": "ArcadeHubspotCmsApi",
"description": null,
"version": "0.1.0"
},
"input": {
"parameters": [
{
"name": "blog_author_id",
"required": true,
"description": "The unique identifier of the Blog Author to be deleted.",
"value_schema": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "The Blog Author id."
},
"inferrable": true,
"http_endpoint_parameter_name": "objectId"
},
{
"name": "return_archived_only",
"required": false,
"description": "Set to true to return only archived blog authors. Use for fetching deleted or inactive authors.",
"value_schema": {
"val_type": "boolean",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "Whether to return only results that have been archived."
},
"inferrable": true,
"http_endpoint_parameter_name": "archived"
}
]
},
"output": {
"description": "Response from the API endpoint 'delete-/cms/v3/blogs/authors/{objectId}_archive'.",
"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": {
"provider_id": "arcade-hubspot",
"provider_type": "oauth2",
"id": null,
"oauth2": {
"scopes": [
"content"
]
}
},
"secrets": null,
"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 hubspot_cms API."
},
"http_endpoint": {
"metadata": {
"object_type": "http_endpoint",
"version": "1.2.0",
"description": ""
},
"url": "https://api.hubapi.com/cms/v3/blogs/authors/{objectId}",
"http_method": "DELETE",
"headers": {},
"parameters": [
{
"name": "archived",
"tool_parameter_name": "return_archived_only",
"description": "Whether to return only results that have been archived.",
"value_schema": {
"val_type": "boolean",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "Whether to return only results that have been archived."
},
"accepted_as": "query",
"required": false,
"deprecated": false,
"default": null,
"documentation_urls": []
},
{
"name": "objectId",
"tool_parameter_name": "blog_author_id",
"description": "The Blog Author id.",
"value_schema": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "The Blog Author id."
},
"accepted_as": "path",
"required": true,
"deprecated": false,
"default": null,
"documentation_urls": []
}
],
"documentation_urls": [],
"secrets": [
{
"arcade_key": "auth_token",
"parameter_name": "Authorization",
"accepted_as": "header",
"formatted_value": "Bearer {authorization}",
"description": "The OAuth token to use for authentication.",
"is_auth_token": true
}
],
"request_body_spec": null,
"use_request_body_schema_mode": false,
"validate_request_body_schema": false
}
}

View file

@ -0,0 +1,109 @@
{
"name": "DeleteBlogAuthors",
"fully_qualified_name": "HubspotCmsApi.DeleteBlogAuthors@0.1.0",
"description": "Delete specified blog authors in HubSpot CMS.\n\nUse this tool to delete the Blog Author objects identified in the request body from HubSpot CMS.",
"toolkit": {
"name": "ArcadeHubspotCmsApi",
"description": null,
"version": "0.1.0"
},
"input": {
"parameters": [
{
"name": "blog_author_ids",
"required": true,
"description": "List of blog author IDs to delete from HubSpot CMS.",
"value_schema": {
"val_type": "array",
"inner_val_type": "string",
"enum": null,
"properties": null,
"inner_properties": null,
"description": "Strings to input."
},
"inferrable": true,
"http_endpoint_parameter_name": "inputs"
}
]
},
"output": {
"description": "Response from the API endpoint 'post-/cms/v3/blogs/authors/batch/archive_archiveBatch'.",
"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": {
"provider_id": "arcade-hubspot",
"provider_type": "oauth2",
"id": null,
"oauth2": {
"scopes": [
"content"
]
}
},
"secrets": null,
"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 hubspot_cms API."
},
"http_endpoint": {
"metadata": {
"object_type": "http_endpoint",
"version": "1.2.0",
"description": ""
},
"url": "https://api.hubapi.com/cms/v3/blogs/authors/batch/archive",
"http_method": "POST",
"headers": {},
"parameters": [
{
"name": "inputs",
"tool_parameter_name": "blog_author_ids",
"description": "Strings to input.",
"value_schema": {
"val_type": "array",
"inner_val_type": "string",
"enum": null,
"properties": null,
"inner_properties": null,
"description": "Strings to input."
},
"accepted_as": "body",
"required": true,
"deprecated": false,
"default": null,
"documentation_urls": []
}
],
"documentation_urls": [],
"secrets": [
{
"arcade_key": "auth_token",
"parameter_name": "Authorization",
"accepted_as": "header",
"formatted_value": "Bearer {authorization}",
"description": "The OAuth token to use for authentication.",
"is_auth_token": true
}
],
"request_body_spec": "{\n \"description\": \"The JSON array of Blog Author ids.\",\n \"content\": {\n \"application/json\": {\n \"schema\": {\n \"required\": [\n \"inputs\"\n ],\n \"type\": \"object\",\n \"properties\": {\n \"inputs\": {\n \"type\": \"array\",\n \"description\": \"Strings to input.\",\n \"items\": {\n \"type\": \"string\"\n }\n }\n },\n \"description\": \"Wrapper for providing an array of strings as inputs.\"\n }\n }\n },\n \"required\": true\n}",
"use_request_body_schema_mode": false,
"validate_request_body_schema": false
}
}

View file

@ -0,0 +1,109 @@
{
"name": "DeleteBlogPost",
"fully_qualified_name": "HubspotCmsApi.DeleteBlogPost@0.1.0",
"description": "Delete a blog post by its unique ID.\n\nUse this tool to delete a blog post using its ID. Note that this action permanently removes the post, unlike the in-app archive function. For dashboard archiving, use an update with `archivedInDashboard` set to `true`.",
"toolkit": {
"name": "ArcadeHubspotCmsApi",
"description": null,
"version": "0.1.0"
},
"input": {
"parameters": [
{
"name": "blog_post_ids_to_delete",
"required": true,
"description": "An array of blog post IDs to delete. Each ID should be a string representing a unique blog post.",
"value_schema": {
"val_type": "array",
"inner_val_type": "string",
"enum": null,
"properties": null,
"inner_properties": null,
"description": "Strings to input."
},
"inferrable": true,
"http_endpoint_parameter_name": "inputs"
}
]
},
"output": {
"description": "Response from the API endpoint 'post-/cms/v3/blogs/posts/batch/archive_archive'.",
"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": {
"provider_id": "arcade-hubspot",
"provider_type": "oauth2",
"id": null,
"oauth2": {
"scopes": [
"content"
]
}
},
"secrets": null,
"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 hubspot_cms API."
},
"http_endpoint": {
"metadata": {
"object_type": "http_endpoint",
"version": "1.2.0",
"description": ""
},
"url": "https://api.hubapi.com/cms/v3/blogs/posts/batch/archive",
"http_method": "POST",
"headers": {},
"parameters": [
{
"name": "inputs",
"tool_parameter_name": "blog_post_ids_to_delete",
"description": "Strings to input.",
"value_schema": {
"val_type": "array",
"inner_val_type": "string",
"enum": null,
"properties": null,
"inner_properties": null,
"description": "Strings to input."
},
"accepted_as": "body",
"required": true,
"deprecated": false,
"default": null,
"documentation_urls": []
}
],
"documentation_urls": [],
"secrets": [
{
"arcade_key": "auth_token",
"parameter_name": "Authorization",
"accepted_as": "header",
"formatted_value": "Bearer {authorization}",
"description": "The OAuth token to use for authentication.",
"is_auth_token": true
}
],
"request_body_spec": "{\n \"description\": \"The JSON array of Blog Post ids.\",\n \"content\": {\n \"application/json\": {\n \"schema\": {\n \"required\": [\n \"inputs\"\n ],\n \"type\": \"object\",\n \"properties\": {\n \"inputs\": {\n \"type\": \"array\",\n \"description\": \"Strings to input.\",\n \"items\": {\n \"type\": \"string\"\n }\n }\n },\n \"description\": \"Wrapper for providing an array of strings as inputs.\"\n }\n }\n },\n \"required\": true\n}",
"use_request_body_schema_mode": false,
"validate_request_body_schema": false
}
}

View file

@ -0,0 +1,142 @@
{
"name": "DeleteBlogTag",
"fully_qualified_name": "HubspotCmsApi.DeleteBlogTag@0.1.0",
"description": "Delete a specified Blog Tag in HubSpot CMS.\n\nUse this tool to delete a specific Blog Tag in the HubSpot CMS by providing the object's ID. This is useful for managing and organizing blog content within the CMS.",
"toolkit": {
"name": "ArcadeHubspotCmsApi",
"description": null,
"version": "0.1.0"
},
"input": {
"parameters": [
{
"name": "blog_tag_id",
"required": true,
"description": "The unique identifier for the Blog Tag to be deleted.",
"value_schema": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "The Blog Tag id."
},
"inferrable": true,
"http_endpoint_parameter_name": "objectId"
},
{
"name": "return_only_archived_results",
"required": false,
"description": "Set to true to return only blog tags that have been archived.",
"value_schema": {
"val_type": "boolean",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "Whether to return only results that have been archived."
},
"inferrable": true,
"http_endpoint_parameter_name": "archived"
}
]
},
"output": {
"description": "Response from the API endpoint 'delete-/cms/v3/blogs/tags/{objectId}_archive'.",
"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": {
"provider_id": "arcade-hubspot",
"provider_type": "oauth2",
"id": null,
"oauth2": {
"scopes": [
"content"
]
}
},
"secrets": null,
"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 hubspot_cms API."
},
"http_endpoint": {
"metadata": {
"object_type": "http_endpoint",
"version": "1.2.0",
"description": ""
},
"url": "https://api.hubapi.com/cms/v3/blogs/tags/{objectId}",
"http_method": "DELETE",
"headers": {},
"parameters": [
{
"name": "archived",
"tool_parameter_name": "return_only_archived_results",
"description": "Whether to return only results that have been archived.",
"value_schema": {
"val_type": "boolean",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "Whether to return only results that have been archived."
},
"accepted_as": "query",
"required": false,
"deprecated": false,
"default": null,
"documentation_urls": []
},
{
"name": "objectId",
"tool_parameter_name": "blog_tag_id",
"description": "The Blog Tag id.",
"value_schema": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "The Blog Tag id."
},
"accepted_as": "path",
"required": true,
"deprecated": false,
"default": null,
"documentation_urls": []
}
],
"documentation_urls": [],
"secrets": [
{
"arcade_key": "auth_token",
"parameter_name": "Authorization",
"accepted_as": "header",
"formatted_value": "Bearer {authorization}",
"description": "The OAuth token to use for authentication.",
"is_auth_token": true
}
],
"request_body_spec": null,
"use_request_body_schema_mode": false,
"validate_request_body_schema": false
}
}

View file

@ -0,0 +1,109 @@
{
"name": "DeleteCmsSitePages",
"fully_qualified_name": "HubspotCmsApi.DeleteCmsSitePages@0.1.0",
"description": "Delete specified Site Page objects in the CMS.\n\nThis tool deletes the Site Page objects specified in the request body on the HubSpot CMS. It is used when you need to remove multiple site pages at once. This operation is different from archiving in the dashboard.",
"toolkit": {
"name": "ArcadeHubspotCmsApi",
"description": null,
"version": "0.1.0"
},
"input": {
"parameters": [
{
"name": "page_ids_to_delete",
"required": true,
"description": "An array of strings representing the IDs of the Site Page objects to delete.",
"value_schema": {
"val_type": "array",
"inner_val_type": "string",
"enum": null,
"properties": null,
"inner_properties": null,
"description": "Strings to input."
},
"inferrable": true,
"http_endpoint_parameter_name": "inputs"
}
]
},
"output": {
"description": "Response from the API endpoint 'post-/cms/v3/pages/site-pages/batch/archive_archiveBatch'.",
"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": {
"provider_id": "arcade-hubspot",
"provider_type": "oauth2",
"id": null,
"oauth2": {
"scopes": [
"content"
]
}
},
"secrets": null,
"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 hubspot_cms API."
},
"http_endpoint": {
"metadata": {
"object_type": "http_endpoint",
"version": "1.2.0",
"description": ""
},
"url": "https://api.hubapi.com/cms/v3/pages/site-pages/batch/archive",
"http_method": "POST",
"headers": {},
"parameters": [
{
"name": "inputs",
"tool_parameter_name": "page_ids_to_delete",
"description": "Strings to input.",
"value_schema": {
"val_type": "array",
"inner_val_type": "string",
"enum": null,
"properties": null,
"inner_properties": null,
"description": "Strings to input."
},
"accepted_as": "body",
"required": true,
"deprecated": false,
"default": null,
"documentation_urls": []
}
],
"documentation_urls": [],
"secrets": [
{
"arcade_key": "auth_token",
"parameter_name": "Authorization",
"accepted_as": "header",
"formatted_value": "Bearer {authorization}",
"description": "The OAuth token to use for authentication.",
"is_auth_token": true
}
],
"request_body_spec": "{\n \"description\": \"The JSON array of Site Page ids.\",\n \"content\": {\n \"application/json\": {\n \"schema\": {\n \"required\": [\n \"inputs\"\n ],\n \"type\": \"object\",\n \"properties\": {\n \"inputs\": {\n \"type\": \"array\",\n \"description\": \"Strings to input.\",\n \"items\": {\n \"type\": \"string\"\n }\n }\n },\n \"description\": \"Wrapper for providing an array of strings as inputs.\"\n }\n }\n },\n \"required\": true\n}",
"use_request_body_schema_mode": false,
"validate_request_body_schema": false
}
}

View file

@ -0,0 +1,142 @@
{
"name": "DeleteDraftTableRowHubspot",
"fully_qualified_name": "HubspotCmsApi.DeleteDraftTableRowHubspot@0.1.0",
"description": "Permanently delete a row from a HubDB draft table.\n\nUse this tool to permanently delete a specified row from the draft version of a HubDB table in HubSpot CMS. Call this tool when you need to remove a row that is no longer needed in the draft.",
"toolkit": {
"name": "ArcadeHubspotCmsApi",
"description": null,
"version": "0.1.0"
},
"input": {
"parameters": [
{
"name": "table_id_or_name",
"required": true,
"description": "The ID or name of the HubDB table from which the draft row will be deleted.",
"value_schema": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "The ID or name of the table"
},
"inferrable": true,
"http_endpoint_parameter_name": "tableIdOrName"
},
{
"name": "row_id",
"required": true,
"description": "The unique ID of the row to be permanently deleted from the draft version of the HubDB table.",
"value_schema": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "The ID of the row"
},
"inferrable": true,
"http_endpoint_parameter_name": "rowId"
}
]
},
"output": {
"description": "Response from the API endpoint 'delete-/cms/v3/hubdb/tables/{tableIdOrName}/rows/{rowId}/draft_purgeDraftTableRow'.",
"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": {
"provider_id": "arcade-hubspot",
"provider_type": "oauth2",
"id": null,
"oauth2": {
"scopes": [
"hubdb"
]
}
},
"secrets": null,
"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 hubspot_cms API."
},
"http_endpoint": {
"metadata": {
"object_type": "http_endpoint",
"version": "1.2.0",
"description": ""
},
"url": "https://api.hubapi.com/cms/v3/hubdb/tables/{tableIdOrName}/rows/{rowId}/draft",
"http_method": "DELETE",
"headers": {},
"parameters": [
{
"name": "tableIdOrName",
"tool_parameter_name": "table_id_or_name",
"description": "The ID or name of the table",
"value_schema": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "The ID or name of the table"
},
"accepted_as": "path",
"required": true,
"deprecated": false,
"default": null,
"documentation_urls": []
},
{
"name": "rowId",
"tool_parameter_name": "row_id",
"description": "The ID of the row",
"value_schema": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "The ID of the row"
},
"accepted_as": "path",
"required": true,
"deprecated": false,
"default": null,
"documentation_urls": []
}
],
"documentation_urls": [],
"secrets": [
{
"arcade_key": "auth_token",
"parameter_name": "Authorization",
"accepted_as": "header",
"formatted_value": "Bearer {authorization}",
"description": "The OAuth token to use for authentication.",
"is_auth_token": true
}
],
"request_body_spec": null,
"use_request_body_schema_mode": false,
"validate_request_body_schema": false
}
}

View file

@ -0,0 +1,142 @@
{
"name": "DeleteFileInCmsEnvironment",
"fully_qualified_name": "HubspotCmsApi.DeleteFileInCmsEnvironment@0.1.0",
"description": "Deletes a file in a specified CMS environment.\n\nUse this tool to delete a file located at a specific path within a designated CMS environment. It's useful for managing and organizing source code by removing unnecessary or outdated files.",
"toolkit": {
"name": "ArcadeHubspotCmsApi",
"description": null,
"version": "0.1.0"
},
"input": {
"parameters": [
{
"name": "file_environment",
"required": true,
"description": "Specify the environment of the file to delete. Valid values are \"draft\" or \"published\".",
"value_schema": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "The environment of the file (\"draft\" or \"published\")."
},
"inferrable": true,
"http_endpoint_parameter_name": "environment"
},
{
"name": "file_system_location",
"required": true,
"description": "The file system location of the file to be deleted.",
"value_schema": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "The file system location of the file."
},
"inferrable": true,
"http_endpoint_parameter_name": "path"
}
]
},
"output": {
"description": "Response from the API endpoint 'delete-/cms/v3/source-code/{environment}/content/{path}_archive'.",
"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": {
"provider_id": "arcade-hubspot",
"provider_type": "oauth2",
"id": null,
"oauth2": {
"scopes": [
"content"
]
}
},
"secrets": null,
"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 hubspot_cms API."
},
"http_endpoint": {
"metadata": {
"object_type": "http_endpoint",
"version": "1.2.0",
"description": ""
},
"url": "https://api.hubapi.com/cms/v3/source-code/{environment}/content/{path}",
"http_method": "DELETE",
"headers": {},
"parameters": [
{
"name": "environment",
"tool_parameter_name": "file_environment",
"description": "The environment of the file (\"draft\" or \"published\").",
"value_schema": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "The environment of the file (\"draft\" or \"published\")."
},
"accepted_as": "path",
"required": true,
"deprecated": false,
"default": null,
"documentation_urls": []
},
{
"name": "path",
"tool_parameter_name": "file_system_location",
"description": "The file system location of the file.",
"value_schema": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "The file system location of the file."
},
"accepted_as": "path",
"required": true,
"deprecated": false,
"default": null,
"documentation_urls": []
}
],
"documentation_urls": [],
"secrets": [
{
"arcade_key": "auth_token",
"parameter_name": "Authorization",
"accepted_as": "header",
"formatted_value": "Bearer {authorization}",
"description": "The OAuth token to use for authentication.",
"is_auth_token": true
}
],
"request_body_spec": null,
"use_request_body_schema_mode": false,
"validate_request_body_schema": false
}
}

View file

@ -0,0 +1,142 @@
{
"name": "DeleteLandingPage",
"fully_qualified_name": "HubspotCmsApi.DeleteLandingPage@0.1.0",
"description": "Delete a specified landing page by its ID.\n\nUse this tool to delete a landing page in HubSpot CMS by providing the landing page's ID.",
"toolkit": {
"name": "ArcadeHubspotCmsApi",
"description": null,
"version": "0.1.0"
},
"input": {
"parameters": [
{
"name": "landing_page_id",
"required": true,
"description": "The unique identifier of the landing page to delete in HubSpot CMS.",
"value_schema": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "The Landing Page id."
},
"inferrable": true,
"http_endpoint_parameter_name": "objectId"
},
{
"name": "return_archived_results_only",
"required": false,
"description": "Set to true to only return results that have been archived.",
"value_schema": {
"val_type": "boolean",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "Whether to return only results that have been archived."
},
"inferrable": true,
"http_endpoint_parameter_name": "archived"
}
]
},
"output": {
"description": "Response from the API endpoint 'delete-/cms/v3/pages/landing-pages/{objectId}_archive'.",
"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": {
"provider_id": "arcade-hubspot",
"provider_type": "oauth2",
"id": null,
"oauth2": {
"scopes": [
"content"
]
}
},
"secrets": null,
"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 hubspot_cms API."
},
"http_endpoint": {
"metadata": {
"object_type": "http_endpoint",
"version": "1.2.0",
"description": ""
},
"url": "https://api.hubapi.com/cms/v3/pages/landing-pages/{objectId}",
"http_method": "DELETE",
"headers": {},
"parameters": [
{
"name": "archived",
"tool_parameter_name": "return_archived_results_only",
"description": "Whether to return only results that have been archived.",
"value_schema": {
"val_type": "boolean",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "Whether to return only results that have been archived."
},
"accepted_as": "query",
"required": false,
"deprecated": false,
"default": null,
"documentation_urls": []
},
{
"name": "objectId",
"tool_parameter_name": "landing_page_id",
"description": "The Landing Page id.",
"value_schema": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "The Landing Page id."
},
"accepted_as": "path",
"required": true,
"deprecated": false,
"default": null,
"documentation_urls": []
}
],
"documentation_urls": [],
"secrets": [
{
"arcade_key": "auth_token",
"parameter_name": "Authorization",
"accepted_as": "header",
"formatted_value": "Bearer {authorization}",
"description": "The OAuth token to use for authentication.",
"is_auth_token": true
}
],
"request_body_spec": null,
"use_request_body_schema_mode": false,
"validate_request_body_schema": false
}
}

View file

@ -0,0 +1,142 @@
{
"name": "DeleteLandingPageFolder",
"fully_qualified_name": "HubspotCmsApi.DeleteLandingPageFolder@0.1.0",
"description": "Deletes a CMS landing page folder by ID.\n\nUse this tool to delete a specific CMS landing page folder by providing its object ID. The tool sends a DELETE request to remove the folder.",
"toolkit": {
"name": "ArcadeHubspotCmsApi",
"description": null,
"version": "0.1.0"
},
"input": {
"parameters": [
{
"name": "folder_id",
"required": true,
"description": "The ID of the folder to be deleted. Provide the specific ID of the CMS landing page folder you wish to delete.",
"value_schema": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "The Folder id."
},
"inferrable": true,
"http_endpoint_parameter_name": "objectId"
},
{
"name": "return_only_archived_results",
"required": false,
"description": "Set to true to return only archived results.",
"value_schema": {
"val_type": "boolean",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "Whether to return only results that have been archived."
},
"inferrable": true,
"http_endpoint_parameter_name": "archived"
}
]
},
"output": {
"description": "Response from the API endpoint 'delete-/cms/v3/pages/landing-pages/folders/{objectId}_archiveFolder'.",
"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": {
"provider_id": "arcade-hubspot",
"provider_type": "oauth2",
"id": null,
"oauth2": {
"scopes": [
"content"
]
}
},
"secrets": null,
"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 hubspot_cms API."
},
"http_endpoint": {
"metadata": {
"object_type": "http_endpoint",
"version": "1.2.0",
"description": ""
},
"url": "https://api.hubapi.com/cms/v3/pages/landing-pages/folders/{objectId}",
"http_method": "DELETE",
"headers": {},
"parameters": [
{
"name": "archived",
"tool_parameter_name": "return_only_archived_results",
"description": "Whether to return only results that have been archived.",
"value_schema": {
"val_type": "boolean",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "Whether to return only results that have been archived."
},
"accepted_as": "query",
"required": false,
"deprecated": false,
"default": null,
"documentation_urls": []
},
{
"name": "objectId",
"tool_parameter_name": "folder_id",
"description": "The Folder id.",
"value_schema": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "The Folder id."
},
"accepted_as": "path",
"required": true,
"deprecated": false,
"default": null,
"documentation_urls": []
}
],
"documentation_urls": [],
"secrets": [
{
"arcade_key": "auth_token",
"parameter_name": "Authorization",
"accepted_as": "header",
"formatted_value": "Bearer {authorization}",
"description": "The OAuth token to use for authentication.",
"is_auth_token": true
}
],
"request_body_spec": null,
"use_request_body_schema_mode": false,
"validate_request_body_schema": false
}
}

View file

@ -0,0 +1,109 @@
{
"name": "DeleteLandingPageFolders",
"fully_qualified_name": "HubspotCmsApi.DeleteLandingPageFolders@0.1.0",
"description": "Delete specified landing page folders in HubSpot CMS.\n\nUse this tool to delete landing page folders in the HubSpot CMS as specified in the request. It should be called when you need to remove these folders from the CMS.",
"toolkit": {
"name": "ArcadeHubspotCmsApi",
"description": null,
"version": "0.1.0"
},
"input": {
"parameters": [
{
"name": "folder_identifiers",
"required": true,
"description": "An array of strings representing the identifiers of the folders to be deleted.",
"value_schema": {
"val_type": "array",
"inner_val_type": "string",
"enum": null,
"properties": null,
"inner_properties": null,
"description": "Strings to input."
},
"inferrable": true,
"http_endpoint_parameter_name": "inputs"
}
]
},
"output": {
"description": "Response from the API endpoint 'post-/cms/v3/pages/landing-pages/folders/batch/archive_archiveFolders'.",
"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": {
"provider_id": "arcade-hubspot",
"provider_type": "oauth2",
"id": null,
"oauth2": {
"scopes": [
"content"
]
}
},
"secrets": null,
"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 hubspot_cms API."
},
"http_endpoint": {
"metadata": {
"object_type": "http_endpoint",
"version": "1.2.0",
"description": ""
},
"url": "https://api.hubapi.com/cms/v3/pages/landing-pages/folders/batch/archive",
"http_method": "POST",
"headers": {},
"parameters": [
{
"name": "inputs",
"tool_parameter_name": "folder_identifiers",
"description": "Strings to input.",
"value_schema": {
"val_type": "array",
"inner_val_type": "string",
"enum": null,
"properties": null,
"inner_properties": null,
"description": "Strings to input."
},
"accepted_as": "body",
"required": true,
"deprecated": false,
"default": null,
"documentation_urls": []
}
],
"documentation_urls": [],
"secrets": [
{
"arcade_key": "auth_token",
"parameter_name": "Authorization",
"accepted_as": "header",
"formatted_value": "Bearer {authorization}",
"description": "The OAuth token to use for authentication.",
"is_auth_token": true
}
],
"request_body_spec": "{\n \"description\": \"The JSON array of Folder ids.\",\n \"content\": {\n \"application/json\": {\n \"schema\": {\n \"required\": [\n \"inputs\"\n ],\n \"type\": \"object\",\n \"properties\": {\n \"inputs\": {\n \"type\": \"array\",\n \"description\": \"Strings to input.\",\n \"items\": {\n \"type\": \"string\"\n }\n }\n },\n \"description\": \"Wrapper for providing an array of strings as inputs.\"\n }\n }\n },\n \"required\": true\n}",
"use_request_body_schema_mode": false,
"validate_request_body_schema": false
}
}

View file

@ -0,0 +1,109 @@
{
"name": "DeleteLandingPages",
"fully_qualified_name": "HubspotCmsApi.DeleteLandingPages@0.1.0",
"description": "Deletes specified HubSpot landing pages permanently.\n\nUse this tool to permanently delete landing page objects in HubSpot CMS. It's different from archiving pages via the dashboard. Ensure you provide the specific page identifiers in the request body.",
"toolkit": {
"name": "ArcadeHubspotCmsApi",
"description": null,
"version": "0.1.0"
},
"input": {
"parameters": [
{
"name": "landing_page_ids",
"required": true,
"description": "An array of strings representing the IDs of landing pages to delete permanently.",
"value_schema": {
"val_type": "array",
"inner_val_type": "string",
"enum": null,
"properties": null,
"inner_properties": null,
"description": "Strings to input."
},
"inferrable": true,
"http_endpoint_parameter_name": "inputs"
}
]
},
"output": {
"description": "Response from the API endpoint 'post-/cms/v3/pages/landing-pages/batch/archive_archiveBatch'.",
"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": {
"provider_id": "arcade-hubspot",
"provider_type": "oauth2",
"id": null,
"oauth2": {
"scopes": [
"content"
]
}
},
"secrets": null,
"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 hubspot_cms API."
},
"http_endpoint": {
"metadata": {
"object_type": "http_endpoint",
"version": "1.2.0",
"description": ""
},
"url": "https://api.hubapi.com/cms/v3/pages/landing-pages/batch/archive",
"http_method": "POST",
"headers": {},
"parameters": [
{
"name": "inputs",
"tool_parameter_name": "landing_page_ids",
"description": "Strings to input.",
"value_schema": {
"val_type": "array",
"inner_val_type": "string",
"enum": null,
"properties": null,
"inner_properties": null,
"description": "Strings to input."
},
"accepted_as": "body",
"required": true,
"deprecated": false,
"default": null,
"documentation_urls": []
}
],
"documentation_urls": [],
"secrets": [
{
"arcade_key": "auth_token",
"parameter_name": "Authorization",
"accepted_as": "header",
"formatted_value": "Bearer {authorization}",
"description": "The OAuth token to use for authentication.",
"is_auth_token": true
}
],
"request_body_spec": "{\n \"description\": \"The JSON array of Landing Page ids.\",\n \"content\": {\n \"application/json\": {\n \"schema\": {\n \"required\": [\n \"inputs\"\n ],\n \"type\": \"object\",\n \"properties\": {\n \"inputs\": {\n \"type\": \"array\",\n \"description\": \"Strings to input.\",\n \"items\": {\n \"type\": \"string\"\n }\n }\n },\n \"description\": \"Wrapper for providing an array of strings as inputs.\"\n }\n }\n },\n \"required\": true\n}",
"use_request_body_schema_mode": false,
"validate_request_body_schema": false
}
}

View file

@ -0,0 +1,142 @@
{
"name": "DeleteSitePage",
"fully_qualified_name": "HubspotCmsApi.DeleteSitePage@0.1.0",
"description": "Delete a specified site page in HubSpot CMS.\n\nUse this tool to delete a specific site page in HubSpot CMS by providing the page's object ID. This should be called when a page needs to be archived or removed permanently.",
"toolkit": {
"name": "ArcadeHubspotCmsApi",
"description": null,
"version": "0.1.0"
},
"input": {
"parameters": [
{
"name": "site_page_id",
"required": true,
"description": "The unique identifier for the site page to be deleted in HubSpot CMS.",
"value_schema": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "The Site Page id."
},
"inferrable": true,
"http_endpoint_parameter_name": "objectId"
},
{
"name": "return_only_archived_results",
"required": false,
"description": "Set to true to return only the pages that have been archived.",
"value_schema": {
"val_type": "boolean",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "Whether to return only results that have been archived."
},
"inferrable": true,
"http_endpoint_parameter_name": "archived"
}
]
},
"output": {
"description": "Response from the API endpoint 'delete-/cms/v3/pages/site-pages/{objectId}_archive'.",
"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": {
"provider_id": "arcade-hubspot",
"provider_type": "oauth2",
"id": null,
"oauth2": {
"scopes": [
"content"
]
}
},
"secrets": null,
"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 hubspot_cms API."
},
"http_endpoint": {
"metadata": {
"object_type": "http_endpoint",
"version": "1.2.0",
"description": ""
},
"url": "https://api.hubapi.com/cms/v3/pages/site-pages/{objectId}",
"http_method": "DELETE",
"headers": {},
"parameters": [
{
"name": "archived",
"tool_parameter_name": "return_only_archived_results",
"description": "Whether to return only results that have been archived.",
"value_schema": {
"val_type": "boolean",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "Whether to return only results that have been archived."
},
"accepted_as": "query",
"required": false,
"deprecated": false,
"default": null,
"documentation_urls": []
},
{
"name": "objectId",
"tool_parameter_name": "site_page_id",
"description": "The Site Page id.",
"value_schema": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "The Site Page id."
},
"accepted_as": "path",
"required": true,
"deprecated": false,
"default": null,
"documentation_urls": []
}
],
"documentation_urls": [],
"secrets": [
{
"arcade_key": "auth_token",
"parameter_name": "Authorization",
"accepted_as": "header",
"formatted_value": "Bearer {authorization}",
"description": "The OAuth token to use for authentication.",
"is_auth_token": true
}
],
"request_body_spec": null,
"use_request_body_schema_mode": false,
"validate_request_body_schema": false
}
}

View file

@ -0,0 +1,142 @@
{
"name": "DeleteTableVersion",
"fully_qualified_name": "HubspotCmsApi.DeleteTableVersion@0.1.0",
"description": "Delete a specific version of a HubDB table.\n\nThis tool deletes a specified version of a table in HubSpot CMS HubDB. It should be called when you need to remove an obsolete or incorrect version of a table. Make sure to specify the correct table and version identifiers.",
"toolkit": {
"name": "ArcadeHubspotCmsApi",
"description": null,
"version": "0.1.0"
},
"input": {
"parameters": [
{
"name": "table_identifier",
"required": true,
"description": "The unique ID or name of the HubDB table whose version you want to delete.",
"value_schema": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": ""
},
"inferrable": true,
"http_endpoint_parameter_name": "tableIdOrName"
},
{
"name": "table_version_id",
"required": true,
"description": "Specify the ID of the table version to delete. This should be an integer value that identifies a specific version in HubDB.",
"value_schema": {
"val_type": "integer",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": ""
},
"inferrable": true,
"http_endpoint_parameter_name": "versionId"
}
]
},
"output": {
"description": "Response from the API endpoint 'delete-/cms/v3/hubdb/tables/{tableIdOrName}/versions/{versionId}_removeTableVersion'.",
"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": {
"provider_id": "arcade-hubspot",
"provider_type": "oauth2",
"id": null,
"oauth2": {
"scopes": [
"hubdb"
]
}
},
"secrets": null,
"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 hubspot_cms API."
},
"http_endpoint": {
"metadata": {
"object_type": "http_endpoint",
"version": "1.2.0",
"description": ""
},
"url": "https://api.hubapi.com/cms/v3/hubdb/tables/{tableIdOrName}/versions/{versionId}",
"http_method": "DELETE",
"headers": {},
"parameters": [
{
"name": "tableIdOrName",
"tool_parameter_name": "table_identifier",
"description": "",
"value_schema": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": ""
},
"accepted_as": "path",
"required": true,
"deprecated": false,
"default": null,
"documentation_urls": []
},
{
"name": "versionId",
"tool_parameter_name": "table_version_id",
"description": "",
"value_schema": {
"val_type": "integer",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": ""
},
"accepted_as": "path",
"required": true,
"deprecated": false,
"default": null,
"documentation_urls": []
}
],
"documentation_urls": [],
"secrets": [
{
"arcade_key": "auth_token",
"parameter_name": "Authorization",
"accepted_as": "header",
"formatted_value": "Bearer {authorization}",
"description": "The OAuth token to use for authentication.",
"is_auth_token": true
}
],
"request_body_spec": null,
"use_request_body_schema_mode": false,
"validate_request_body_schema": false
}
}

View file

@ -0,0 +1,109 @@
{
"name": "DeleteUrlRedirect",
"fully_qualified_name": "HubspotCmsApi.DeleteUrlRedirect@0.1.0",
"description": "Deletes an existing URL redirect in HubSpot CMS.\n\nUtilize this tool to delete a specific URL redirect within the HubSpot CMS system. This should be called when you need to remove a redirect mapping from the system.",
"toolkit": {
"name": "ArcadeHubspotCmsApi",
"description": null,
"version": "0.1.0"
},
"input": {
"parameters": [
{
"name": "url_redirect_id",
"required": true,
"description": "The unique identifier of the URL redirect to be deleted within the HubSpot CMS.",
"value_schema": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "The ID of the target redirect."
},
"inferrable": true,
"http_endpoint_parameter_name": "urlRedirectId"
}
]
},
"output": {
"description": "Response from the API endpoint 'delete-/cms/v3/url-redirects/{urlRedirectId}_archive'.",
"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": {
"provider_id": "arcade-hubspot",
"provider_type": "oauth2",
"id": null,
"oauth2": {
"scopes": [
"content"
]
}
},
"secrets": null,
"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 hubspot_cms API."
},
"http_endpoint": {
"metadata": {
"object_type": "http_endpoint",
"version": "1.2.0",
"description": ""
},
"url": "https://api.hubapi.com/cms/v3/url-redirects/{urlRedirectId}",
"http_method": "DELETE",
"headers": {},
"parameters": [
{
"name": "urlRedirectId",
"tool_parameter_name": "url_redirect_id",
"description": "The ID of the target redirect.",
"value_schema": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "The ID of the target redirect."
},
"accepted_as": "path",
"required": true,
"deprecated": false,
"default": null,
"documentation_urls": []
}
],
"documentation_urls": [],
"secrets": [
{
"arcade_key": "auth_token",
"parameter_name": "Authorization",
"accepted_as": "header",
"formatted_value": "Bearer {authorization}",
"description": "The OAuth token to use for authentication.",
"is_auth_token": true
}
],
"request_body_spec": null,
"use_request_body_schema_mode": false,
"validate_request_body_schema": false
}
}

View file

@ -0,0 +1,109 @@
{
"name": "DetachBlogAuthorFromLangGroup",
"fully_qualified_name": "HubspotCmsApi.DetachBlogAuthorFromLangGroup@0.1.0",
"description": "Detach a Blog Author from a multi-language group.\n\nUse this tool to remove a blog author from an existing multi-language group in HubSpot CMS. Call this when authors need to be unlinked from specific language variations.",
"toolkit": {
"name": "ArcadeHubspotCmsApi",
"description": null,
"version": "0.1.0"
},
"input": {
"parameters": [
{
"name": "author_id_to_detach",
"required": true,
"description": "ID of the blog author to remove from a multi-language group in HubSpot CMS.",
"value_schema": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "ID of the object to remove from a multi-language group."
},
"inferrable": true,
"http_endpoint_parameter_name": "id"
}
]
},
"output": {
"description": "Response from the API endpoint 'post-/cms/v3/blogs/authors/multi-language/detach-from-lang-group_detachFromLangGroup'.",
"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": {
"provider_id": "arcade-hubspot",
"provider_type": "oauth2",
"id": null,
"oauth2": {
"scopes": [
"content"
]
}
},
"secrets": null,
"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 hubspot_cms API."
},
"http_endpoint": {
"metadata": {
"object_type": "http_endpoint",
"version": "1.2.0",
"description": ""
},
"url": "https://api.hubapi.com/cms/v3/blogs/authors/multi-language/detach-from-lang-group",
"http_method": "POST",
"headers": {},
"parameters": [
{
"name": "id",
"tool_parameter_name": "author_id_to_detach",
"description": "ID of the object to remove from a multi-language group.",
"value_schema": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "ID of the object to remove from a multi-language group."
},
"accepted_as": "body",
"required": true,
"deprecated": false,
"default": null,
"documentation_urls": []
}
],
"documentation_urls": [],
"secrets": [
{
"arcade_key": "auth_token",
"parameter_name": "Authorization",
"accepted_as": "header",
"formatted_value": "Bearer {authorization}",
"description": "The OAuth token to use for authentication.",
"is_auth_token": true
}
],
"request_body_spec": "{\n \"description\": \"The JSON representation of the DetachFromLangGroupRequest object.\",\n \"content\": {\n \"application/json\": {\n \"schema\": {\n \"required\": [\n \"id\"\n ],\n \"type\": \"object\",\n \"properties\": {\n \"id\": {\n \"type\": \"string\",\n \"description\": \"ID of the object to remove from a multi-language group.\"\n }\n },\n \"description\": \"Request body object for detaching objects from multi-language groups.\"\n }\n }\n },\n \"required\": true\n}",
"use_request_body_schema_mode": false,
"validate_request_body_schema": false
}
}

View file

@ -0,0 +1,109 @@
{
"name": "DetachBlogFromLanguageGroup",
"fully_qualified_name": "HubspotCmsApi.DetachBlogFromLanguageGroup@0.1.0",
"description": "Detach a blog from its multi-language group.\n\nUse this tool to separate a blog from its associated multi-language group settings in HubSpot CMS.",
"toolkit": {
"name": "ArcadeHubspotCmsApi",
"description": null,
"version": "0.1.0"
},
"input": {
"parameters": [
{
"name": "object_id_to_detach",
"required": true,
"description": "ID of the blog to remove from its multi-language group in HubSpot CMS.",
"value_schema": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "ID of the object to remove from a multi-language group."
},
"inferrable": true,
"http_endpoint_parameter_name": "id"
}
]
},
"output": {
"description": "Response from the API endpoint 'post-/cms/v3/blog-settings/settings/multi-language/detach-from-lang-group'.",
"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": {
"provider_id": "arcade-hubspot",
"provider_type": "oauth2",
"id": null,
"oauth2": {
"scopes": [
"content"
]
}
},
"secrets": null,
"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 hubspot_cms API."
},
"http_endpoint": {
"metadata": {
"object_type": "http_endpoint",
"version": "1.2.0",
"description": ""
},
"url": "https://api.hubapi.com/cms/v3/blog-settings/settings/multi-language/detach-from-lang-group",
"http_method": "POST",
"headers": {},
"parameters": [
{
"name": "id",
"tool_parameter_name": "object_id_to_detach",
"description": "ID of the object to remove from a multi-language group.",
"value_schema": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "ID of the object to remove from a multi-language group."
},
"accepted_as": "body",
"required": true,
"deprecated": false,
"default": null,
"documentation_urls": []
}
],
"documentation_urls": [],
"secrets": [
{
"arcade_key": "auth_token",
"parameter_name": "Authorization",
"accepted_as": "header",
"formatted_value": "Bearer {authorization}",
"description": "The OAuth token to use for authentication.",
"is_auth_token": true
}
],
"request_body_spec": "{\n \"description\": \"The JSON representation of the DetachFromLangGroupRequest object.\",\n \"content\": {\n \"application/json\": {\n \"schema\": {\n \"required\": [\n \"id\"\n ],\n \"type\": \"object\",\n \"properties\": {\n \"id\": {\n \"type\": \"string\",\n \"description\": \"ID of the object to remove from a multi-language group.\"\n }\n },\n \"description\": \"Request body object for detaching objects from multi-language groups.\"\n }\n }\n },\n \"required\": true\n}",
"use_request_body_schema_mode": false,
"validate_request_body_schema": false
}
}

View file

@ -0,0 +1,109 @@
{
"name": "DetachBlogPostLanguageGroup",
"fully_qualified_name": "HubspotCmsApi.DetachBlogPostLanguageGroup@0.1.0",
"description": "Detach a blog post from a multi-language group.\n\nUse this tool to detach a specific blog post from its associated multi-language group in HubSpot CMS. Useful when you need to separately manage or remove language-specific versions of a post.",
"toolkit": {
"name": "ArcadeHubspotCmsApi",
"description": null,
"version": "0.1.0"
},
"input": {
"parameters": [
{
"name": "object_id_to_detach_from_language_group",
"required": true,
"description": "ID of the blog post to be removed from the multi-language group.",
"value_schema": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "ID of the object to remove from a multi-language group."
},
"inferrable": true,
"http_endpoint_parameter_name": "id"
}
]
},
"output": {
"description": "Response from the API endpoint 'post-/cms/v3/blogs/posts/multi-language/detach-from-lang-group_detachFromLangGroup'.",
"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": {
"provider_id": "arcade-hubspot",
"provider_type": "oauth2",
"id": null,
"oauth2": {
"scopes": [
"content"
]
}
},
"secrets": null,
"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 hubspot_cms API."
},
"http_endpoint": {
"metadata": {
"object_type": "http_endpoint",
"version": "1.2.0",
"description": ""
},
"url": "https://api.hubapi.com/cms/v3/blogs/posts/multi-language/detach-from-lang-group",
"http_method": "POST",
"headers": {},
"parameters": [
{
"name": "id",
"tool_parameter_name": "object_id_to_detach_from_language_group",
"description": "ID of the object to remove from a multi-language group.",
"value_schema": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "ID of the object to remove from a multi-language group."
},
"accepted_as": "body",
"required": true,
"deprecated": false,
"default": null,
"documentation_urls": []
}
],
"documentation_urls": [],
"secrets": [
{
"arcade_key": "auth_token",
"parameter_name": "Authorization",
"accepted_as": "header",
"formatted_value": "Bearer {authorization}",
"description": "The OAuth token to use for authentication.",
"is_auth_token": true
}
],
"request_body_spec": "{\n \"description\": \"The JSON representation of the DetachFromLangGroupRequest object.\",\n \"content\": {\n \"application/json\": {\n \"schema\": {\n \"required\": [\n \"id\"\n ],\n \"type\": \"object\",\n \"properties\": {\n \"id\": {\n \"type\": \"string\",\n \"description\": \"ID of the object to remove from a multi-language group.\"\n }\n },\n \"description\": \"Request body object for detaching objects from multi-language groups.\"\n }\n }\n },\n \"required\": true\n}",
"use_request_body_schema_mode": false,
"validate_request_body_schema": false
}
}

View file

@ -0,0 +1,109 @@
{
"name": "DetachBlogTagFromLanguageGroup",
"fully_qualified_name": "HubspotCmsApi.DetachBlogTagFromLanguageGroup@0.1.0",
"description": "Detach a Blog Tag from a multi-language group.\n\nUse this tool to remove a blog tag from its association with a multi-language group in HubSpot CMS. This can be useful when restructuring tags or changing their multi-language settings.",
"toolkit": {
"name": "ArcadeHubspotCmsApi",
"description": null,
"version": "0.1.0"
},
"input": {
"parameters": [
{
"name": "blog_tag_id",
"required": true,
"description": "ID of the blog tag to remove from a multi-language group in HubSpot CMS.",
"value_schema": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "ID of the object to remove from a multi-language group."
},
"inferrable": true,
"http_endpoint_parameter_name": "id"
}
]
},
"output": {
"description": "Response from the API endpoint 'post-/cms/v3/blogs/tags/multi-language/detach-from-lang-group_detachFromLangGroup'.",
"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": {
"provider_id": "arcade-hubspot",
"provider_type": "oauth2",
"id": null,
"oauth2": {
"scopes": [
"content"
]
}
},
"secrets": null,
"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 hubspot_cms API."
},
"http_endpoint": {
"metadata": {
"object_type": "http_endpoint",
"version": "1.2.0",
"description": ""
},
"url": "https://api.hubapi.com/cms/v3/blogs/tags/multi-language/detach-from-lang-group",
"http_method": "POST",
"headers": {},
"parameters": [
{
"name": "id",
"tool_parameter_name": "blog_tag_id",
"description": "ID of the object to remove from a multi-language group.",
"value_schema": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "ID of the object to remove from a multi-language group."
},
"accepted_as": "body",
"required": true,
"deprecated": false,
"default": null,
"documentation_urls": []
}
],
"documentation_urls": [],
"secrets": [
{
"arcade_key": "auth_token",
"parameter_name": "Authorization",
"accepted_as": "header",
"formatted_value": "Bearer {authorization}",
"description": "The OAuth token to use for authentication.",
"is_auth_token": true
}
],
"request_body_spec": "{\n \"description\": \"The JSON representation of the DetachFromLangGroupRequest object.\",\n \"content\": {\n \"application/json\": {\n \"schema\": {\n \"required\": [\n \"id\"\n ],\n \"type\": \"object\",\n \"properties\": {\n \"id\": {\n \"type\": \"string\",\n \"description\": \"ID of the object to remove from a multi-language group.\"\n }\n },\n \"description\": \"Request body object for detaching objects from multi-language groups.\"\n }\n }\n },\n \"required\": true\n}",
"use_request_body_schema_mode": false,
"validate_request_body_schema": false
}
}

View file

@ -0,0 +1,109 @@
{
"name": "DetachLandingPageFromLanguageGroup",
"fully_qualified_name": "HubspotCmsApi.DetachLandingPageFromLanguageGroup@0.1.0",
"description": "Detach a landing page from a multi-language group.\n\nCall this tool to detach a specific landing page from its multi-language group in HubSpot CMS. Useful for managing language-specific versions of pages individually.",
"toolkit": {
"name": "ArcadeHubspotCmsApi",
"description": null,
"version": "0.1.0"
},
"input": {
"parameters": [
{
"name": "landing_page_id",
"required": true,
"description": "The ID of the landing page to detach from the multi-language group in HubSpot CMS.",
"value_schema": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "ID of the object to remove from a multi-language group."
},
"inferrable": true,
"http_endpoint_parameter_name": "id"
}
]
},
"output": {
"description": "Response from the API endpoint 'post-/cms/v3/pages/landing-pages/multi-language/detach-from-lang-group_detachFromLangGroup'.",
"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": {
"provider_id": "arcade-hubspot",
"provider_type": "oauth2",
"id": null,
"oauth2": {
"scopes": [
"content"
]
}
},
"secrets": null,
"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 hubspot_cms API."
},
"http_endpoint": {
"metadata": {
"object_type": "http_endpoint",
"version": "1.2.0",
"description": ""
},
"url": "https://api.hubapi.com/cms/v3/pages/landing-pages/multi-language/detach-from-lang-group",
"http_method": "POST",
"headers": {},
"parameters": [
{
"name": "id",
"tool_parameter_name": "landing_page_id",
"description": "ID of the object to remove from a multi-language group.",
"value_schema": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "ID of the object to remove from a multi-language group."
},
"accepted_as": "body",
"required": true,
"deprecated": false,
"default": null,
"documentation_urls": []
}
],
"documentation_urls": [],
"secrets": [
{
"arcade_key": "auth_token",
"parameter_name": "Authorization",
"accepted_as": "header",
"formatted_value": "Bearer {authorization}",
"description": "The OAuth token to use for authentication.",
"is_auth_token": true
}
],
"request_body_spec": "{\n \"description\": \"The JSON representation of the DetachFromLangGroupRequest object.\",\n \"content\": {\n \"application/json\": {\n \"schema\": {\n \"required\": [\n \"id\"\n ],\n \"type\": \"object\",\n \"properties\": {\n \"id\": {\n \"type\": \"string\",\n \"description\": \"ID of the object to remove from a multi-language group.\"\n }\n },\n \"description\": \"Request body object for detaching objects from multi-language groups.\"\n }\n }\n },\n \"required\": true\n}",
"use_request_body_schema_mode": false,
"validate_request_body_schema": false
}
}

View file

@ -0,0 +1,109 @@
{
"name": "DetachSitePageFromLanguageGroup",
"fully_qualified_name": "HubspotCmsApi.DetachSitePageFromLanguageGroup@0.1.0",
"description": "Detach a site page from a multi-language group.\n\nUse this tool to detach a site page from its current multi-language group when language-specific customization is needed.",
"toolkit": {
"name": "ArcadeHubspotCmsApi",
"description": null,
"version": "0.1.0"
},
"input": {
"parameters": [
{
"name": "object_id_to_detach",
"required": true,
"description": "The ID of the site page to detach from the multi-language group.",
"value_schema": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "ID of the object to remove from a multi-language group."
},
"inferrable": true,
"http_endpoint_parameter_name": "id"
}
]
},
"output": {
"description": "Response from the API endpoint 'post-/cms/v3/pages/site-pages/multi-language/detach-from-lang-group_detachFromLangGroup'.",
"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": {
"provider_id": "arcade-hubspot",
"provider_type": "oauth2",
"id": null,
"oauth2": {
"scopes": [
"content"
]
}
},
"secrets": null,
"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 hubspot_cms API."
},
"http_endpoint": {
"metadata": {
"object_type": "http_endpoint",
"version": "1.2.0",
"description": ""
},
"url": "https://api.hubapi.com/cms/v3/pages/site-pages/multi-language/detach-from-lang-group",
"http_method": "POST",
"headers": {},
"parameters": [
{
"name": "id",
"tool_parameter_name": "object_id_to_detach",
"description": "ID of the object to remove from a multi-language group.",
"value_schema": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "ID of the object to remove from a multi-language group."
},
"accepted_as": "body",
"required": true,
"deprecated": false,
"default": null,
"documentation_urls": []
}
],
"documentation_urls": [],
"secrets": [
{
"arcade_key": "auth_token",
"parameter_name": "Authorization",
"accepted_as": "header",
"formatted_value": "Bearer {authorization}",
"description": "The OAuth token to use for authentication.",
"is_auth_token": true
}
],
"request_body_spec": "{\n \"description\": \"The JSON representation of the DetachFromLangGroupRequest object.\",\n \"content\": {\n \"application/json\": {\n \"schema\": {\n \"required\": [\n \"id\"\n ],\n \"type\": \"object\",\n \"properties\": {\n \"id\": {\n \"type\": \"string\",\n \"description\": \"ID of the object to remove from a multi-language group.\"\n }\n },\n \"description\": \"Request body object for detaching objects from multi-language groups.\"\n }\n }\n },\n \"required\": true\n}",
"use_request_body_schema_mode": false,
"validate_request_body_schema": false
}
}

View file

@ -0,0 +1,142 @@
{
"name": "DownloadFileFromHubspotCms",
"fully_qualified_name": "HubspotCmsApi.DownloadFileFromHubspotCms@0.1.0",
"description": "Download file content from HubSpot CMS by path and environment.\n\nUse this tool to download the byte contents of a file stored in HubSpot CMS. Specify the environment and path to retrieve the desired file content.",
"toolkit": {
"name": "ArcadeHubspotCmsApi",
"description": null,
"version": "0.1.0"
},
"input": {
"parameters": [
{
"name": "file_environment",
"required": true,
"description": "Specify the environment of the file. Options are 'draft' or 'published'.",
"value_schema": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "The environment of the file (\"draft\" or \"published\")."
},
"inferrable": true,
"http_endpoint_parameter_name": "environment"
},
{
"name": "file_system_path",
"required": true,
"description": "The file system path to the file within HubSpot CMS to be downloaded.",
"value_schema": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "The file system location of the file."
},
"inferrable": true,
"http_endpoint_parameter_name": "path"
}
]
},
"output": {
"description": "Response from the API endpoint 'get-/cms/v3/source-code/{environment}/content/{path}_download'.",
"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": {
"provider_id": "arcade-hubspot",
"provider_type": "oauth2",
"id": null,
"oauth2": {
"scopes": [
"content"
]
}
},
"secrets": null,
"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 hubspot_cms API."
},
"http_endpoint": {
"metadata": {
"object_type": "http_endpoint",
"version": "1.2.0",
"description": ""
},
"url": "https://api.hubapi.com/cms/v3/source-code/{environment}/content/{path}",
"http_method": "GET",
"headers": {},
"parameters": [
{
"name": "environment",
"tool_parameter_name": "file_environment",
"description": "The environment of the file (\"draft\" or \"published\").",
"value_schema": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "The environment of the file (\"draft\" or \"published\")."
},
"accepted_as": "path",
"required": true,
"deprecated": false,
"default": null,
"documentation_urls": []
},
{
"name": "path",
"tool_parameter_name": "file_system_path",
"description": "The file system location of the file.",
"value_schema": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "The file system location of the file."
},
"accepted_as": "path",
"required": true,
"deprecated": false,
"default": null,
"documentation_urls": []
}
],
"documentation_urls": [],
"secrets": [
{
"arcade_key": "auth_token",
"parameter_name": "Authorization",
"accepted_as": "header",
"formatted_value": "Bearer {authorization}",
"description": "The OAuth token to use for authentication.",
"is_auth_token": true
}
],
"request_body_spec": null,
"use_request_body_schema_mode": false,
"validate_request_body_schema": false
}
}

View file

@ -0,0 +1,142 @@
{
"name": "EndAbTestSelectWinner",
"fully_qualified_name": "HubspotCmsApi.EndAbTestSelectWinner@0.1.0",
"description": "End an active A/B test and designate a winner.\n\nUse this tool to end an ongoing A/B test for landing pages and select the winning variant. Ideal for finalizing tests and applying successful strategies.",
"toolkit": {
"name": "ArcadeHubspotCmsApi",
"description": null,
"version": "0.1.0"
},
"input": {
"parameters": [
{
"name": "winner_object_id",
"required": true,
"description": "ID of the landing page variant to designate as the winner of the A/B test.",
"value_schema": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "ID of the object to designate as the test winner."
},
"inferrable": true,
"http_endpoint_parameter_name": "winnerId"
},
{
"name": "test_id_to_end",
"required": true,
"description": "ID of the A/B test to be ended.",
"value_schema": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "ID of the test to end."
},
"inferrable": true,
"http_endpoint_parameter_name": "abTestId"
}
]
},
"output": {
"description": "Response from the API endpoint 'post-/cms/v3/pages/landing-pages/ab-test/end_endActiveABTest'.",
"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": {
"provider_id": "arcade-hubspot",
"provider_type": "oauth2",
"id": null,
"oauth2": {
"scopes": [
"content"
]
}
},
"secrets": null,
"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 hubspot_cms API."
},
"http_endpoint": {
"metadata": {
"object_type": "http_endpoint",
"version": "1.2.0",
"description": ""
},
"url": "https://api.hubapi.com/cms/v3/pages/landing-pages/ab-test/end",
"http_method": "POST",
"headers": {},
"parameters": [
{
"name": "winnerId",
"tool_parameter_name": "winner_object_id",
"description": "ID of the object to designate as the test winner.",
"value_schema": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "ID of the object to designate as the test winner."
},
"accepted_as": "body",
"required": true,
"deprecated": false,
"default": null,
"documentation_urls": []
},
{
"name": "abTestId",
"tool_parameter_name": "test_id_to_end",
"description": "ID of the test to end.",
"value_schema": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "ID of the test to end."
},
"accepted_as": "body",
"required": true,
"deprecated": false,
"default": null,
"documentation_urls": []
}
],
"documentation_urls": [],
"secrets": [
{
"arcade_key": "auth_token",
"parameter_name": "Authorization",
"accepted_as": "header",
"formatted_value": "Bearer {authorization}",
"description": "The OAuth token to use for authentication.",
"is_auth_token": true
}
],
"request_body_spec": "{\n \"description\": \"The JSON representation of the AbTestEndRequest object.\",\n \"content\": {\n \"application/json\": {\n \"schema\": {\n \"required\": [\n \"abTestId\",\n \"winnerId\"\n ],\n \"type\": \"object\",\n \"properties\": {\n \"winnerId\": {\n \"type\": \"string\",\n \"description\": \"ID of the object to designate as the test winner.\"\n },\n \"abTestId\": {\n \"type\": \"string\",\n \"description\": \"ID of the test to end.\"\n }\n },\n \"description\": \"Request body object for ending A/B tests.\"\n }\n }\n },\n \"required\": true\n}",
"use_request_body_schema_mode": false,
"validate_request_body_schema": false
}
}

View file

@ -0,0 +1,142 @@
{
"name": "EndActiveAbTest",
"fully_qualified_name": "HubspotCmsApi.EndActiveAbTest@0.1.0",
"description": "End an active A/B test and designate a winner.\n\nUse this tool to conclude an ongoing A/B test and specify the winning variant on the HubSpot CMS.",
"toolkit": {
"name": "ArcadeHubspotCmsApi",
"description": null,
"version": "0.1.0"
},
"input": {
"parameters": [
{
"name": "winner_id",
"required": true,
"description": "The ID of the object to designate as the winner of the A/B test. This should match the ID used in the CMS to identify the specific variant.",
"value_schema": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "ID of the object to designate as the test winner."
},
"inferrable": true,
"http_endpoint_parameter_name": "winnerId"
},
{
"name": "test_id_to_end",
"required": true,
"description": "The unique identifier of the A/B test that you want to conclude in the HubSpot CMS.",
"value_schema": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "ID of the test to end."
},
"inferrable": true,
"http_endpoint_parameter_name": "abTestId"
}
]
},
"output": {
"description": "Response from the API endpoint 'post-/cms/v3/pages/site-pages/ab-test/end_endActiveABTest'.",
"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": {
"provider_id": "arcade-hubspot",
"provider_type": "oauth2",
"id": null,
"oauth2": {
"scopes": [
"content"
]
}
},
"secrets": null,
"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 hubspot_cms API."
},
"http_endpoint": {
"metadata": {
"object_type": "http_endpoint",
"version": "1.2.0",
"description": ""
},
"url": "https://api.hubapi.com/cms/v3/pages/site-pages/ab-test/end",
"http_method": "POST",
"headers": {},
"parameters": [
{
"name": "winnerId",
"tool_parameter_name": "winner_id",
"description": "ID of the object to designate as the test winner.",
"value_schema": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "ID of the object to designate as the test winner."
},
"accepted_as": "body",
"required": true,
"deprecated": false,
"default": null,
"documentation_urls": []
},
{
"name": "abTestId",
"tool_parameter_name": "test_id_to_end",
"description": "ID of the test to end.",
"value_schema": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "ID of the test to end."
},
"accepted_as": "body",
"required": true,
"deprecated": false,
"default": null,
"documentation_urls": []
}
],
"documentation_urls": [],
"secrets": [
{
"arcade_key": "auth_token",
"parameter_name": "Authorization",
"accepted_as": "header",
"formatted_value": "Bearer {authorization}",
"description": "The OAuth token to use for authentication.",
"is_auth_token": true
}
],
"request_body_spec": "{\n \"description\": \"The JSON representation of the AbTestEndRequest object.\",\n \"content\": {\n \"application/json\": {\n \"schema\": {\n \"required\": [\n \"abTestId\",\n \"winnerId\"\n ],\n \"type\": \"object\",\n \"properties\": {\n \"winnerId\": {\n \"type\": \"string\",\n \"description\": \"ID of the object to designate as the test winner.\"\n },\n \"abTestId\": {\n \"type\": \"string\",\n \"description\": \"ID of the test to end.\"\n }\n },\n \"description\": \"Request body object for ending A/B tests.\"\n }\n }\n },\n \"required\": true\n}",
"use_request_body_schema_mode": false,
"validate_request_body_schema": false
}
}

View file

@ -0,0 +1,142 @@
{
"name": "ExportHubdbDraftTable",
"fully_qualified_name": "HubspotCmsApi.ExportHubdbDraftTable@0.1.0",
"description": "Export HubDB draft table to CSV or Excel format.\n\nUse this tool to export the draft version of a HubDB table in HubSpot CMS to a CSV or Excel file. Call this tool when you need to download table data for review or offline use.",
"toolkit": {
"name": "ArcadeHubspotCmsApi",
"description": null,
"version": "0.1.0"
},
"input": {
"parameters": [
{
"name": "table_id_or_name",
"required": true,
"description": "The ID or name of the table to export. Use this to specify the exact table you want to download.",
"value_schema": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "The ID or name of the table to export."
},
"inferrable": true,
"http_endpoint_parameter_name": "tableIdOrName"
},
{
"name": "export_file_format",
"required": false,
"description": "The file format for exporting the draft table. Choose from `CSV`, `XLSX`, or `XLS`.",
"value_schema": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "The file format to export. Possible values include `CSV`, `XLSX`, and `XLS`."
},
"inferrable": true,
"http_endpoint_parameter_name": "format"
}
]
},
"output": {
"description": "Response from the API endpoint 'get-/cms/v3/hubdb/tables/{tableIdOrName}/draft/export_exportDraftTable'.",
"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": {
"provider_id": "arcade-hubspot",
"provider_type": "oauth2",
"id": null,
"oauth2": {
"scopes": [
"hubdb"
]
}
},
"secrets": null,
"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 hubspot_cms API."
},
"http_endpoint": {
"metadata": {
"object_type": "http_endpoint",
"version": "1.2.0",
"description": ""
},
"url": "https://api.hubapi.com/cms/v3/hubdb/tables/{tableIdOrName}/draft/export",
"http_method": "GET",
"headers": {},
"parameters": [
{
"name": "format",
"tool_parameter_name": "export_file_format",
"description": "The file format to export. Possible values include `CSV`, `XLSX`, and `XLS`.",
"value_schema": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "The file format to export. Possible values include `CSV`, `XLSX`, and `XLS`."
},
"accepted_as": "query",
"required": false,
"deprecated": false,
"default": null,
"documentation_urls": []
},
{
"name": "tableIdOrName",
"tool_parameter_name": "table_id_or_name",
"description": "The ID or name of the table to export.",
"value_schema": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "The ID or name of the table to export."
},
"accepted_as": "path",
"required": true,
"deprecated": false,
"default": null,
"documentation_urls": []
}
],
"documentation_urls": [],
"secrets": [
{
"arcade_key": "auth_token",
"parameter_name": "Authorization",
"accepted_as": "header",
"formatted_value": "Bearer {authorization}",
"description": "The OAuth token to use for authentication.",
"is_auth_token": true
}
],
"request_body_spec": null,
"use_request_body_schema_mode": false,
"validate_request_body_schema": false
}
}

View file

@ -0,0 +1,142 @@
{
"name": "ExportTableFromHubdb",
"fully_qualified_name": "HubspotCmsApi.ExportTableFromHubdb@0.1.0",
"description": "Exports a HubDB table in the desired format.\n\nUse this tool to export the published version of a HubDB table by specifying the table ID or name. It allows exporting in various formats.",
"toolkit": {
"name": "ArcadeHubspotCmsApi",
"description": null,
"version": "0.1.0"
},
"input": {
"parameters": [
{
"name": "hubdb_table_id_or_name",
"required": true,
"description": "The ID or name of the HubDB table to export.",
"value_schema": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "The ID or name of the table to export."
},
"inferrable": true,
"http_endpoint_parameter_name": "tableIdOrName"
},
{
"name": "file_format_to_export",
"required": false,
"description": "The file format for exporting the table. Options are `CSV`, `XLSX`, and `XLS`.",
"value_schema": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "The file format to export. Possible values include `CSV`, `XLSX`, and `XLS`."
},
"inferrable": true,
"http_endpoint_parameter_name": "format"
}
]
},
"output": {
"description": "Response from the API endpoint 'get-/cms/v3/hubdb/tables/{tableIdOrName}/export_exportTable'.",
"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": {
"provider_id": "arcade-hubspot",
"provider_type": "oauth2",
"id": null,
"oauth2": {
"scopes": [
"hubdb"
]
}
},
"secrets": null,
"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 hubspot_cms API."
},
"http_endpoint": {
"metadata": {
"object_type": "http_endpoint",
"version": "1.2.0",
"description": ""
},
"url": "https://api.hubapi.com/cms/v3/hubdb/tables/{tableIdOrName}/export",
"http_method": "GET",
"headers": {},
"parameters": [
{
"name": "format",
"tool_parameter_name": "file_format_to_export",
"description": "The file format to export. Possible values include `CSV`, `XLSX`, and `XLS`.",
"value_schema": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "The file format to export. Possible values include `CSV`, `XLSX`, and `XLS`."
},
"accepted_as": "query",
"required": false,
"deprecated": false,
"default": null,
"documentation_urls": []
},
{
"name": "tableIdOrName",
"tool_parameter_name": "hubdb_table_id_or_name",
"description": "The ID or name of the table to export.",
"value_schema": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "The ID or name of the table to export."
},
"accepted_as": "path",
"required": true,
"deprecated": false,
"default": null,
"documentation_urls": []
}
],
"documentation_urls": [],
"secrets": [
{
"arcade_key": "auth_token",
"parameter_name": "Authorization",
"accepted_as": "header",
"formatted_value": "Bearer {authorization}",
"description": "The OAuth token to use for authentication.",
"is_auth_token": true
}
],
"request_body_spec": null,
"use_request_body_schema_mode": false,
"validate_request_body_schema": false
}
}

View file

@ -0,0 +1,109 @@
{
"name": "ExtractZipFileAsync",
"fully_qualified_name": "HubspotCmsApi.ExtractZipFileAsync@0.1.0",
"description": "Initiate asynchronous extraction of a zip file on HubSpot CMS.\n\nThis tool initiates the extraction of a zip file in the developer file system asynchronously. This is useful for handling large files or files that need processing without blocking operations. Use this tool when you need to start a zip file extraction and check its status later through the appropriate status endpoint.",
"toolkit": {
"name": "ArcadeHubspotCmsApi",
"description": null,
"version": "0.1.0"
},
"input": {
"parameters": [
{
"name": "zip_file_path",
"required": true,
"description": "The path to the zip file in the developer file system that needs extraction.",
"value_schema": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": ""
},
"inferrable": true,
"http_endpoint_parameter_name": "path"
}
]
},
"output": {
"description": "Response from the API endpoint 'post-/cms/v3/source-code/extract/async_doAsync'.",
"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": {
"provider_id": "arcade-hubspot",
"provider_type": "oauth2",
"id": null,
"oauth2": {
"scopes": [
"content"
]
}
},
"secrets": null,
"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 hubspot_cms API."
},
"http_endpoint": {
"metadata": {
"object_type": "http_endpoint",
"version": "1.2.0",
"description": ""
},
"url": "https://api.hubapi.com/cms/v3/source-code/extract/async",
"http_method": "POST",
"headers": {},
"parameters": [
{
"name": "path",
"tool_parameter_name": "zip_file_path",
"description": "",
"value_schema": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": ""
},
"accepted_as": "body",
"required": true,
"deprecated": false,
"default": null,
"documentation_urls": []
}
],
"documentation_urls": [],
"secrets": [
{
"arcade_key": "auth_token",
"parameter_name": "Authorization",
"accepted_as": "header",
"formatted_value": "Bearer {authorization}",
"description": "The OAuth token to use for authentication.",
"is_auth_token": true
}
],
"request_body_spec": "{\n \"content\": {\n \"application/json\": {\n \"schema\": {\n \"required\": [\n \"path\"\n ],\n \"type\": \"object\",\n \"properties\": {\n \"path\": {\n \"type\": \"string\"\n }\n }\n }\n }\n },\n \"required\": true\n}",
"use_request_body_schema_mode": false,
"validate_request_body_schema": false
}
}

View file

@ -0,0 +1,307 @@
{
"name": "FetchHubdbTableRows",
"fully_qualified_name": "HubspotCmsApi.FetchHubdbTableRows@0.1.0",
"description": "Fetch rows from a HubDB table using filters and sorting.\n\nUse this tool to fetch rows from a specific HubDB table. You can apply filters and sorting by using query parameters, allowing retrieval of customized data sets. No authentication is needed if the table allows public access.",
"toolkit": {
"name": "ArcadeHubspotCmsApi",
"description": null,
"version": "0.1.0"
},
"input": {
"parameters": [
{
"name": "table_identifier",
"required": true,
"description": "The ID or name of the HubDB table to query for fetching row data.",
"value_schema": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "The ID or name of the table to query."
},
"inferrable": true,
"http_endpoint_parameter_name": "tableIdOrName"
},
{
"name": "sort_columns",
"required": false,
"description": "List of column names to sort the results by. Each entry is a string representing a column. Prefix with '-' for descending order.",
"value_schema": {
"val_type": "array",
"inner_val_type": "string",
"enum": null,
"properties": null,
"inner_properties": null,
"description": "Specifies the column names to sort the results by. See the above description for more details."
},
"inferrable": true,
"http_endpoint_parameter_name": "sort"
},
{
"name": "pagination_cursor_token",
"required": false,
"description": "Cursor token to fetch the next set of results. Obtainable from the `paging.next.after` of a paged response.",
"value_schema": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "The cursor token value to get the next set of results. You can get this from the `paging.next.after` JSON property of a paged response containing more results."
},
"inferrable": true,
"http_endpoint_parameter_name": "after"
},
{
"name": "maximum_results_limit",
"required": false,
"description": "Specifies the maximum number of results to return. The default value is 1000, which can be adjusted to retrieve fewer entries.",
"value_schema": {
"val_type": "integer",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "The maximum number of results to return. Default is `1000`."
},
"inferrable": true,
"http_endpoint_parameter_name": "limit"
},
{
"name": "requested_columns",
"required": false,
"description": "Specify column names to retrieve only the required columns' data, excluding others.",
"value_schema": {
"val_type": "array",
"inner_val_type": "string",
"enum": null,
"properties": null,
"inner_properties": null,
"description": "Specify the column names to get results containing only the required columns instead of all column details."
},
"inferrable": true,
"http_endpoint_parameter_name": "properties"
},
{
"name": "row_offset",
"required": false,
"description": "The starting point for fetching a subset of rows, useful for pagination. It's similar to specifying which row to start fetching from.",
"value_schema": {
"val_type": "integer",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": ""
},
"inferrable": true,
"http_endpoint_parameter_name": "offset"
},
{
"name": "include_archived_rows",
"required": false,
"description": "Set to true to include archived rows in the results; false to exclude them.",
"value_schema": {
"val_type": "boolean",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": ""
},
"inferrable": true,
"http_endpoint_parameter_name": "archived"
}
]
},
"output": {
"description": "Response from the API endpoint 'get-/cms/v3/hubdb/tables/{tableIdOrName}/rows_getTableRows'.",
"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": {
"provider_id": "arcade-hubspot",
"provider_type": "oauth2",
"id": null,
"oauth2": {
"scopes": [
"hubdb"
]
}
},
"secrets": null,
"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 hubspot_cms API."
},
"http_endpoint": {
"metadata": {
"object_type": "http_endpoint",
"version": "1.2.0",
"description": ""
},
"url": "https://api.hubapi.com/cms/v3/hubdb/tables/{tableIdOrName}/rows",
"http_method": "GET",
"headers": {},
"parameters": [
{
"name": "sort",
"tool_parameter_name": "sort_columns",
"description": "Specifies the column names to sort the results by. See the above description for more details.",
"value_schema": {
"val_type": "array",
"inner_val_type": "string",
"enum": null,
"properties": null,
"inner_properties": null,
"description": "Specifies the column names to sort the results by. See the above description for more details."
},
"accepted_as": "query",
"required": false,
"deprecated": false,
"default": null,
"documentation_urls": []
},
{
"name": "after",
"tool_parameter_name": "pagination_cursor_token",
"description": "The cursor token value to get the next set of results. You can get this from the `paging.next.after` JSON property of a paged response containing more results.",
"value_schema": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "The cursor token value to get the next set of results. You can get this from the `paging.next.after` JSON property of a paged response containing more results."
},
"accepted_as": "query",
"required": false,
"deprecated": false,
"default": null,
"documentation_urls": []
},
{
"name": "limit",
"tool_parameter_name": "maximum_results_limit",
"description": "The maximum number of results to return. Default is `1000`.",
"value_schema": {
"val_type": "integer",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "The maximum number of results to return. Default is `1000`."
},
"accepted_as": "query",
"required": false,
"deprecated": false,
"default": null,
"documentation_urls": []
},
{
"name": "properties",
"tool_parameter_name": "requested_columns",
"description": "Specify the column names to get results containing only the required columns instead of all column details.",
"value_schema": {
"val_type": "array",
"inner_val_type": "string",
"enum": null,
"properties": null,
"inner_properties": null,
"description": "Specify the column names to get results containing only the required columns instead of all column details."
},
"accepted_as": "query",
"required": false,
"deprecated": false,
"default": null,
"documentation_urls": []
},
{
"name": "offset",
"tool_parameter_name": "row_offset",
"description": "",
"value_schema": {
"val_type": "integer",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": ""
},
"accepted_as": "query",
"required": false,
"deprecated": false,
"default": null,
"documentation_urls": []
},
{
"name": "archived",
"tool_parameter_name": "include_archived_rows",
"description": "",
"value_schema": {
"val_type": "boolean",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": ""
},
"accepted_as": "query",
"required": false,
"deprecated": false,
"default": null,
"documentation_urls": []
},
{
"name": "tableIdOrName",
"tool_parameter_name": "table_identifier",
"description": "The ID or name of the table to query.",
"value_schema": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "The ID or name of the table to query."
},
"accepted_as": "path",
"required": true,
"deprecated": false,
"default": null,
"documentation_urls": []
}
],
"documentation_urls": [],
"secrets": [
{
"arcade_key": "auth_token",
"parameter_name": "Authorization",
"accepted_as": "header",
"formatted_value": "Bearer {authorization}",
"description": "The OAuth token to use for authentication.",
"is_auth_token": true
}
],
"request_body_spec": null,
"use_request_body_schema_mode": false,
"validate_request_body_schema": false
}
}

View file

@ -0,0 +1,406 @@
{
"name": "FetchUrlRedirects",
"fully_qualified_name": "HubspotCmsApi.FetchUrlRedirects@0.1.0",
"description": "Retrieve all URL redirects with optional filters.\n\nUse this tool to access a list of all existing URL redirects in the HubSpot CMS. You can apply filters based on creation or updated date to narrow down the results.",
"toolkit": {
"name": "ArcadeHubspotCmsApi",
"description": null,
"version": "0.1.0"
},
"input": {
"parameters": [
{
"name": "created_at",
"required": false,
"description": "Return redirects created exactly on this date. Format: YYYY-MM-DD.",
"value_schema": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "Only return redirects created on exactly this date."
},
"inferrable": true,
"http_endpoint_parameter_name": "createdAt"
},
{
"name": "created_after_date",
"required": false,
"description": "Return redirects created after this date (format: YYYY-MM-DD).",
"value_schema": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "Only return redirects created after this date."
},
"inferrable": true,
"http_endpoint_parameter_name": "createdAfter"
},
{
"name": "filter_created_before_date",
"required": false,
"description": "Return redirects created before this date. Expected format: YYYY-MM-DD.",
"value_schema": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "Only return redirects created before this date."
},
"inferrable": true,
"http_endpoint_parameter_name": "createdBefore"
},
{
"name": "filter_by_exact_update_date",
"required": false,
"description": "Return redirects last updated on this exact date. Use a valid date format (e.g., YYYY-MM-DD).",
"value_schema": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "Only return redirects last updated on exactly this date."
},
"inferrable": true,
"http_endpoint_parameter_name": "updatedAt"
},
{
"name": "filter_updated_after",
"required": false,
"description": "Only include redirects updated after this specified date (ISO 8601 format).",
"value_schema": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "Only return redirects last updated after this date."
},
"inferrable": true,
"http_endpoint_parameter_name": "updatedAfter"
},
{
"name": "updated_before_date",
"required": false,
"description": "Only return redirects last updated before this date (in YYYY-MM-DD format).",
"value_schema": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "Only return redirects last updated before this date."
},
"inferrable": true,
"http_endpoint_parameter_name": "updatedBefore"
},
{
"name": "sort_criteria",
"required": false,
"description": "Specify fields to sort the URL redirects by. Can include multiple fields such as 'createdAt' or 'updatedAt'.",
"value_schema": {
"val_type": "array",
"inner_val_type": "string",
"enum": null,
"properties": null,
"inner_properties": null,
"description": ""
},
"inferrable": true,
"http_endpoint_parameter_name": "sort"
},
{
"name": "paging_cursor_token",
"required": false,
"description": "Token for the last read resource to fetch additional results.",
"value_schema": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "The paging cursor token of the last successfully read resource will be returned as the `paging.next.after` JSON property of a paged response containing more results."
},
"inferrable": true,
"http_endpoint_parameter_name": "after"
},
{
"name": "results_per_page_limit",
"required": false,
"description": "Maximum number of URL redirects to return per page. Use to control pagination.",
"value_schema": {
"val_type": "integer",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "Maximum number of result per page"
},
"inferrable": true,
"http_endpoint_parameter_name": "limit"
},
{
"name": "return_archived_only",
"required": false,
"description": "Set to true to return only archived URL redirects, false to exclude them.",
"value_schema": {
"val_type": "boolean",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "Whether to return only results that have been archived."
},
"inferrable": true,
"http_endpoint_parameter_name": "archived"
}
]
},
"output": {
"description": "Response from the API endpoint 'get-/cms/v3/url-redirects/_getPage'.",
"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": {
"provider_id": "arcade-hubspot",
"provider_type": "oauth2",
"id": null,
"oauth2": {
"scopes": [
"content"
]
}
},
"secrets": null,
"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 hubspot_cms API."
},
"http_endpoint": {
"metadata": {
"object_type": "http_endpoint",
"version": "1.2.0",
"description": ""
},
"url": "https://api.hubapi.com/cms/v3/url-redirects/",
"http_method": "GET",
"headers": {},
"parameters": [
{
"name": "createdAt",
"tool_parameter_name": "created_at",
"description": "Only return redirects created on exactly this date.",
"value_schema": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "Only return redirects created on exactly this date."
},
"accepted_as": "query",
"required": false,
"deprecated": false,
"default": null,
"documentation_urls": []
},
{
"name": "createdAfter",
"tool_parameter_name": "created_after_date",
"description": "Only return redirects created after this date.",
"value_schema": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "Only return redirects created after this date."
},
"accepted_as": "query",
"required": false,
"deprecated": false,
"default": null,
"documentation_urls": []
},
{
"name": "createdBefore",
"tool_parameter_name": "filter_created_before_date",
"description": "Only return redirects created before this date.",
"value_schema": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "Only return redirects created before this date."
},
"accepted_as": "query",
"required": false,
"deprecated": false,
"default": null,
"documentation_urls": []
},
{
"name": "updatedAt",
"tool_parameter_name": "filter_by_exact_update_date",
"description": "Only return redirects last updated on exactly this date.",
"value_schema": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "Only return redirects last updated on exactly this date."
},
"accepted_as": "query",
"required": false,
"deprecated": false,
"default": null,
"documentation_urls": []
},
{
"name": "updatedAfter",
"tool_parameter_name": "filter_updated_after",
"description": "Only return redirects last updated after this date.",
"value_schema": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "Only return redirects last updated after this date."
},
"accepted_as": "query",
"required": false,
"deprecated": false,
"default": null,
"documentation_urls": []
},
{
"name": "updatedBefore",
"tool_parameter_name": "updated_before_date",
"description": "Only return redirects last updated before this date.",
"value_schema": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "Only return redirects last updated before this date."
},
"accepted_as": "query",
"required": false,
"deprecated": false,
"default": null,
"documentation_urls": []
},
{
"name": "sort",
"tool_parameter_name": "sort_criteria",
"description": "",
"value_schema": {
"val_type": "array",
"inner_val_type": "string",
"enum": null,
"properties": null,
"inner_properties": null,
"description": ""
},
"accepted_as": "query",
"required": false,
"deprecated": false,
"default": null,
"documentation_urls": []
},
{
"name": "after",
"tool_parameter_name": "paging_cursor_token",
"description": "The paging cursor token of the last successfully read resource will be returned as the `paging.next.after` JSON property of a paged response containing more results.",
"value_schema": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "The paging cursor token of the last successfully read resource will be returned as the `paging.next.after` JSON property of a paged response containing more results."
},
"accepted_as": "query",
"required": false,
"deprecated": false,
"default": null,
"documentation_urls": []
},
{
"name": "limit",
"tool_parameter_name": "results_per_page_limit",
"description": "Maximum number of result per page",
"value_schema": {
"val_type": "integer",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "Maximum number of result per page"
},
"accepted_as": "query",
"required": false,
"deprecated": false,
"default": null,
"documentation_urls": []
},
{
"name": "archived",
"tool_parameter_name": "return_archived_only",
"description": "Whether to return only results that have been archived.",
"value_schema": {
"val_type": "boolean",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "Whether to return only results that have been archived."
},
"accepted_as": "query",
"required": false,
"deprecated": false,
"default": null,
"documentation_urls": []
}
],
"documentation_urls": [],
"secrets": [
{
"arcade_key": "auth_token",
"parameter_name": "Authorization",
"accepted_as": "header",
"formatted_value": "Bearer {authorization}",
"description": "The OAuth token to use for authentication.",
"is_auth_token": true
}
],
"request_body_spec": null,
"use_request_body_schema_mode": false,
"validate_request_body_schema": false
}
}

View file

@ -0,0 +1,472 @@
{
"name": "GetAllDraftTablesDetails",
"fully_qualified_name": "HubspotCmsApi.GetAllDraftTablesDetails@0.1.0",
"description": "Retrieve details of all draft HubDB tables.\n\nReturns information on all draft tables in a specified HubSpot account, including column definitions.",
"toolkit": {
"name": "ArcadeHubspotCmsApi",
"description": null,
"version": "0.1.0"
},
"input": {
"parameters": [
{
"name": "sort_fields_for_results",
"required": false,
"description": "Fields to sort the results by. Valid fields are `name`, `createdAt`, `updatedAt`, `createdBy`, `updatedBy`. Defaults to `createdAt`.",
"value_schema": {
"val_type": "array",
"inner_val_type": "string",
"enum": null,
"properties": null,
"inner_properties": null,
"description": "Specifies which fields to use for sorting results. Valid fields are `name`, `createdAt`, `updatedAt`, `createdBy`, `updatedBy`. `createdAt` will be used by default."
},
"inferrable": true,
"http_endpoint_parameter_name": "sort"
},
{
"name": "pagination_cursor_token",
"required": false,
"description": "Cursor token to fetch the next set of results from a paginated response.",
"value_schema": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "The cursor token value to get the next set of results. You can get this from the `paging.next.after` JSON property of a paged response containing more results."
},
"inferrable": true,
"http_endpoint_parameter_name": "after"
},
{
"name": "maximum_results_limit",
"required": false,
"description": "Specifies the maximum number of draft table results to return, with a default of 1000.",
"value_schema": {
"val_type": "integer",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "The maximum number of results to return. Default is 1000."
},
"inferrable": true,
"http_endpoint_parameter_name": "limit"
},
{
"name": "created_at_exact_time",
"required": false,
"description": "Return tables created at the specified exact time (ISO 8601 format).",
"value_schema": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "Only return tables created at exactly the specified time."
},
"inferrable": true,
"http_endpoint_parameter_name": "createdAt"
},
{
"name": "created_after_date",
"required": false,
"description": "Return tables created after the specified date and time. Format: YYYY-MM-DDTHH:MM:SSZ.",
"value_schema": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "Only return tables created after the specified time."
},
"inferrable": true,
"http_endpoint_parameter_name": "createdAfter"
},
{
"name": "created_before_date",
"required": false,
"description": "Return tables created before this specified time.",
"value_schema": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "Only return tables created before the specified time."
},
"inferrable": true,
"http_endpoint_parameter_name": "createdBefore"
},
{
"name": "updated_at_specific_time",
"required": false,
"description": "Return tables last updated at the specified exact time.",
"value_schema": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "Only return tables last updated at exactly the specified time."
},
"inferrable": true,
"http_endpoint_parameter_name": "updatedAt"
},
{
"name": "return_tables_updated_after",
"required": false,
"description": "Only return tables that were last updated after the specified timestamp (ISO 8601 format).",
"value_schema": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "Only return tables last updated after the specified time."
},
"inferrable": true,
"http_endpoint_parameter_name": "updatedAfter"
},
{
"name": "filter_by_updated_before_date",
"required": false,
"description": "Return tables last updated before this specified time in ISO 8601 format.",
"value_schema": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "Only return tables last updated before the specified time."
},
"inferrable": true,
"http_endpoint_parameter_name": "updatedBefore"
},
{
"name": "content_type",
"required": false,
"description": "Specify the content type filter for retrieving draft tables. Leave empty for no filter.",
"value_schema": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": ""
},
"inferrable": true,
"http_endpoint_parameter_name": "contentType"
},
{
"name": "include_archived_tables",
"required": false,
"description": "Set to true to include archived tables in the results, false by default.",
"value_schema": {
"val_type": "boolean",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "Specifies whether to return archived tables. Defaults to `false`."
},
"inferrable": true,
"http_endpoint_parameter_name": "archived"
},
{
"name": "include_localized_schema",
"required": false,
"description": "Indicates whether to include localized schema information for draft tables. Accepts a boolean value.",
"value_schema": {
"val_type": "boolean",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": ""
},
"inferrable": true,
"http_endpoint_parameter_name": "isGetLocalizedSchema"
}
]
},
"output": {
"description": "Response from the API endpoint 'get-/cms/v3/hubdb/tables/draft_getAllDraftTables'.",
"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": {
"provider_id": "arcade-hubspot",
"provider_type": "oauth2",
"id": null,
"oauth2": {
"scopes": [
"hubdb"
]
}
},
"secrets": null,
"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 hubspot_cms API."
},
"http_endpoint": {
"metadata": {
"object_type": "http_endpoint",
"version": "1.2.0",
"description": ""
},
"url": "https://api.hubapi.com/cms/v3/hubdb/tables/draft",
"http_method": "GET",
"headers": {},
"parameters": [
{
"name": "sort",
"tool_parameter_name": "sort_fields_for_results",
"description": "Specifies which fields to use for sorting results. Valid fields are `name`, `createdAt`, `updatedAt`, `createdBy`, `updatedBy`. `createdAt` will be used by default.",
"value_schema": {
"val_type": "array",
"inner_val_type": "string",
"enum": null,
"properties": null,
"inner_properties": null,
"description": "Specifies which fields to use for sorting results. Valid fields are `name`, `createdAt`, `updatedAt`, `createdBy`, `updatedBy`. `createdAt` will be used by default."
},
"accepted_as": "query",
"required": false,
"deprecated": false,
"default": null,
"documentation_urls": []
},
{
"name": "after",
"tool_parameter_name": "pagination_cursor_token",
"description": "The cursor token value to get the next set of results. You can get this from the `paging.next.after` JSON property of a paged response containing more results.",
"value_schema": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "The cursor token value to get the next set of results. You can get this from the `paging.next.after` JSON property of a paged response containing more results."
},
"accepted_as": "query",
"required": false,
"deprecated": false,
"default": null,
"documentation_urls": []
},
{
"name": "limit",
"tool_parameter_name": "maximum_results_limit",
"description": "The maximum number of results to return. Default is 1000.",
"value_schema": {
"val_type": "integer",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "The maximum number of results to return. Default is 1000."
},
"accepted_as": "query",
"required": false,
"deprecated": false,
"default": null,
"documentation_urls": []
},
{
"name": "createdAt",
"tool_parameter_name": "created_at_exact_time",
"description": "Only return tables created at exactly the specified time.",
"value_schema": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "Only return tables created at exactly the specified time."
},
"accepted_as": "query",
"required": false,
"deprecated": false,
"default": null,
"documentation_urls": []
},
{
"name": "createdAfter",
"tool_parameter_name": "created_after_date",
"description": "Only return tables created after the specified time.",
"value_schema": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "Only return tables created after the specified time."
},
"accepted_as": "query",
"required": false,
"deprecated": false,
"default": null,
"documentation_urls": []
},
{
"name": "createdBefore",
"tool_parameter_name": "created_before_date",
"description": "Only return tables created before the specified time.",
"value_schema": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "Only return tables created before the specified time."
},
"accepted_as": "query",
"required": false,
"deprecated": false,
"default": null,
"documentation_urls": []
},
{
"name": "updatedAt",
"tool_parameter_name": "updated_at_specific_time",
"description": "Only return tables last updated at exactly the specified time.",
"value_schema": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "Only return tables last updated at exactly the specified time."
},
"accepted_as": "query",
"required": false,
"deprecated": false,
"default": null,
"documentation_urls": []
},
{
"name": "updatedAfter",
"tool_parameter_name": "return_tables_updated_after",
"description": "Only return tables last updated after the specified time.",
"value_schema": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "Only return tables last updated after the specified time."
},
"accepted_as": "query",
"required": false,
"deprecated": false,
"default": null,
"documentation_urls": []
},
{
"name": "updatedBefore",
"tool_parameter_name": "filter_by_updated_before_date",
"description": "Only return tables last updated before the specified time.",
"value_schema": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "Only return tables last updated before the specified time."
},
"accepted_as": "query",
"required": false,
"deprecated": false,
"default": null,
"documentation_urls": []
},
{
"name": "contentType",
"tool_parameter_name": "content_type",
"description": "",
"value_schema": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": ""
},
"accepted_as": "query",
"required": false,
"deprecated": false,
"default": null,
"documentation_urls": []
},
{
"name": "archived",
"tool_parameter_name": "include_archived_tables",
"description": "Specifies whether to return archived tables. Defaults to `false`.",
"value_schema": {
"val_type": "boolean",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "Specifies whether to return archived tables. Defaults to `false`."
},
"accepted_as": "query",
"required": false,
"deprecated": false,
"default": null,
"documentation_urls": []
},
{
"name": "isGetLocalizedSchema",
"tool_parameter_name": "include_localized_schema",
"description": "",
"value_schema": {
"val_type": "boolean",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": ""
},
"accepted_as": "query",
"required": false,
"deprecated": false,
"default": null,
"documentation_urls": []
}
],
"documentation_urls": [],
"secrets": [
{
"arcade_key": "auth_token",
"parameter_name": "Authorization",
"accepted_as": "header",
"formatted_value": "Bearer {authorization}",
"description": "The OAuth token to use for authentication.",
"is_auth_token": true
}
],
"request_body_spec": null,
"use_request_body_schema_mode": false,
"validate_request_body_schema": false
}
}

View file

@ -0,0 +1,472 @@
{
"name": "GetAllHubdbTables",
"fully_qualified_name": "HubspotCmsApi.GetAllHubdbTables@0.1.0",
"description": "Retrieve details of all published HubDB tables.\n\nThis tool returns the details and column definitions for all published HubDB tables in a HubSpot account. It is useful when you need an overview of the schema and data of all tables within your CMS environment.",
"toolkit": {
"name": "ArcadeHubspotCmsApi",
"description": null,
"version": "0.1.0"
},
"input": {
"parameters": [
{
"name": "sort_fields",
"required": false,
"description": "Specify fields for sorting results: `name`, `createdAt`, `updatedAt`, `createdBy`, `updatedBy`. Defaults to `createdAt`.",
"value_schema": {
"val_type": "array",
"inner_val_type": "string",
"enum": null,
"properties": null,
"inner_properties": null,
"description": "Specifies which fields to use for sorting results. Valid fields are `name`, `createdAt`, `updatedAt`, `createdBy`, `updatedBy`. `createdAt` will be used by default."
},
"inferrable": true,
"http_endpoint_parameter_name": "sort"
},
{
"name": "cursor_token_for_next_results",
"required": false,
"description": "The cursor token to retrieve the next set of results. Obtain this from the `paging.next.after` in a paged response.",
"value_schema": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "The cursor token value to get the next set of results. You can get this from the `paging.next.after` JSON property of a paged response containing more results."
},
"inferrable": true,
"http_endpoint_parameter_name": "after"
},
{
"name": "max_table_results",
"required": false,
"description": "Maximum number of HubDB table results to return. Default is 1000.",
"value_schema": {
"val_type": "integer",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "The maximum number of results to return. Default is 1000."
},
"inferrable": true,
"http_endpoint_parameter_name": "limit"
},
{
"name": "filter_by_creation_time",
"required": false,
"description": "Return tables created at the specified time. Format: ISO 8601.",
"value_schema": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "Only return tables created at exactly the specified time."
},
"inferrable": true,
"http_endpoint_parameter_name": "createdAt"
},
{
"name": "created_after",
"required": false,
"description": "Return tables created after the specified time in ISO 8601 format.",
"value_schema": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "Only return tables created after the specified time."
},
"inferrable": true,
"http_endpoint_parameter_name": "createdAfter"
},
{
"name": "created_before_timestamp",
"required": false,
"description": "Return tables created before this timestamp. Format should be in ISO 8601.",
"value_schema": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "Only return tables created before the specified time."
},
"inferrable": true,
"http_endpoint_parameter_name": "createdBefore"
},
{
"name": "last_updated_exact_time",
"required": false,
"description": "Only return tables last updated at exactly the specified time, formatted as a string.",
"value_schema": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "Only return tables last updated at exactly the specified time."
},
"inferrable": true,
"http_endpoint_parameter_name": "updatedAt"
},
{
"name": "updated_after_timestamp",
"required": false,
"description": "Return tables last updated after this timestamp. Format: 'YYYY-MM-DDTHH:MM:SSZ'.",
"value_schema": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "Only return tables last updated after the specified time."
},
"inferrable": true,
"http_endpoint_parameter_name": "updatedAfter"
},
{
"name": "updated_before_time",
"required": false,
"description": "Return tables updated before this specific time.",
"value_schema": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "Only return tables last updated before the specified time."
},
"inferrable": true,
"http_endpoint_parameter_name": "updatedBefore"
},
{
"name": "content_type_filter",
"required": false,
"description": "Filter tables by the specified content type to return only those matching it.",
"value_schema": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": ""
},
"inferrable": true,
"http_endpoint_parameter_name": "contentType"
},
{
"name": "include_archived_tables",
"required": false,
"description": "Specifies whether to include archived tables in the results. Defaults to `false`.",
"value_schema": {
"val_type": "boolean",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "Specifies whether to return archived tables. Defaults to `false`."
},
"inferrable": true,
"http_endpoint_parameter_name": "archived"
},
{
"name": "include_localized_schema",
"required": false,
"description": "Include localized schema details in the response if true.",
"value_schema": {
"val_type": "boolean",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": ""
},
"inferrable": true,
"http_endpoint_parameter_name": "isGetLocalizedSchema"
}
]
},
"output": {
"description": "Response from the API endpoint 'get-/cms/v3/hubdb/tables_getAllTables'.",
"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": {
"provider_id": "arcade-hubspot",
"provider_type": "oauth2",
"id": null,
"oauth2": {
"scopes": [
"hubdb"
]
}
},
"secrets": null,
"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 hubspot_cms API."
},
"http_endpoint": {
"metadata": {
"object_type": "http_endpoint",
"version": "1.2.0",
"description": ""
},
"url": "https://api.hubapi.com/cms/v3/hubdb/tables",
"http_method": "GET",
"headers": {},
"parameters": [
{
"name": "sort",
"tool_parameter_name": "sort_fields",
"description": "Specifies which fields to use for sorting results. Valid fields are `name`, `createdAt`, `updatedAt`, `createdBy`, `updatedBy`. `createdAt` will be used by default.",
"value_schema": {
"val_type": "array",
"inner_val_type": "string",
"enum": null,
"properties": null,
"inner_properties": null,
"description": "Specifies which fields to use for sorting results. Valid fields are `name`, `createdAt`, `updatedAt`, `createdBy`, `updatedBy`. `createdAt` will be used by default."
},
"accepted_as": "query",
"required": false,
"deprecated": false,
"default": null,
"documentation_urls": []
},
{
"name": "after",
"tool_parameter_name": "cursor_token_for_next_results",
"description": "The cursor token value to get the next set of results. You can get this from the `paging.next.after` JSON property of a paged response containing more results.",
"value_schema": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "The cursor token value to get the next set of results. You can get this from the `paging.next.after` JSON property of a paged response containing more results."
},
"accepted_as": "query",
"required": false,
"deprecated": false,
"default": null,
"documentation_urls": []
},
{
"name": "limit",
"tool_parameter_name": "max_table_results",
"description": "The maximum number of results to return. Default is 1000.",
"value_schema": {
"val_type": "integer",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "The maximum number of results to return. Default is 1000."
},
"accepted_as": "query",
"required": false,
"deprecated": false,
"default": null,
"documentation_urls": []
},
{
"name": "createdAt",
"tool_parameter_name": "filter_by_creation_time",
"description": "Only return tables created at exactly the specified time.",
"value_schema": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "Only return tables created at exactly the specified time."
},
"accepted_as": "query",
"required": false,
"deprecated": false,
"default": null,
"documentation_urls": []
},
{
"name": "createdAfter",
"tool_parameter_name": "created_after",
"description": "Only return tables created after the specified time.",
"value_schema": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "Only return tables created after the specified time."
},
"accepted_as": "query",
"required": false,
"deprecated": false,
"default": null,
"documentation_urls": []
},
{
"name": "createdBefore",
"tool_parameter_name": "created_before_timestamp",
"description": "Only return tables created before the specified time.",
"value_schema": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "Only return tables created before the specified time."
},
"accepted_as": "query",
"required": false,
"deprecated": false,
"default": null,
"documentation_urls": []
},
{
"name": "updatedAt",
"tool_parameter_name": "last_updated_exact_time",
"description": "Only return tables last updated at exactly the specified time.",
"value_schema": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "Only return tables last updated at exactly the specified time."
},
"accepted_as": "query",
"required": false,
"deprecated": false,
"default": null,
"documentation_urls": []
},
{
"name": "updatedAfter",
"tool_parameter_name": "updated_after_timestamp",
"description": "Only return tables last updated after the specified time.",
"value_schema": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "Only return tables last updated after the specified time."
},
"accepted_as": "query",
"required": false,
"deprecated": false,
"default": null,
"documentation_urls": []
},
{
"name": "updatedBefore",
"tool_parameter_name": "updated_before_time",
"description": "Only return tables last updated before the specified time.",
"value_schema": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "Only return tables last updated before the specified time."
},
"accepted_as": "query",
"required": false,
"deprecated": false,
"default": null,
"documentation_urls": []
},
{
"name": "contentType",
"tool_parameter_name": "content_type_filter",
"description": "",
"value_schema": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": ""
},
"accepted_as": "query",
"required": false,
"deprecated": false,
"default": null,
"documentation_urls": []
},
{
"name": "archived",
"tool_parameter_name": "include_archived_tables",
"description": "Specifies whether to return archived tables. Defaults to `false`.",
"value_schema": {
"val_type": "boolean",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "Specifies whether to return archived tables. Defaults to `false`."
},
"accepted_as": "query",
"required": false,
"deprecated": false,
"default": null,
"documentation_urls": []
},
{
"name": "isGetLocalizedSchema",
"tool_parameter_name": "include_localized_schema",
"description": "",
"value_schema": {
"val_type": "boolean",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": ""
},
"accepted_as": "query",
"required": false,
"deprecated": false,
"default": null,
"documentation_urls": []
}
],
"documentation_urls": [],
"secrets": [
{
"arcade_key": "auth_token",
"parameter_name": "Authorization",
"accepted_as": "header",
"formatted_value": "Bearer {authorization}",
"description": "The OAuth token to use for authentication.",
"is_auth_token": true
}
],
"request_body_spec": null,
"use_request_body_schema_mode": false,
"validate_request_body_schema": false
}
}

View file

@ -0,0 +1,175 @@
{
"name": "GetBlogAuthorById",
"fully_qualified_name": "HubspotCmsApi.GetBlogAuthorById@0.1.0",
"description": "Retrieve blog author details using an object ID.\n\nThis tool fetches details of a blog author from HubSpot CMS using the specified object ID. It should be called when specific information about a blog author is needed.",
"toolkit": {
"name": "ArcadeHubspotCmsApi",
"description": null,
"version": "0.1.0"
},
"input": {
"parameters": [
{
"name": "blog_author_id",
"required": true,
"description": "The unique identifier for the blog author to retrieve their details.",
"value_schema": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "The Blog Author id."
},
"inferrable": true,
"http_endpoint_parameter_name": "objectId"
},
{
"name": "specific_author_property",
"required": false,
"description": "Specify a property to retrieve specific details about the blog author, such as a specific attribute or field.",
"value_schema": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": ""
},
"inferrable": true,
"http_endpoint_parameter_name": "property"
},
{
"name": "include_deleted_blog_authors",
"required": false,
"description": "Set to true to include deleted blog authors in the results. Defaults to false.",
"value_schema": {
"val_type": "boolean",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "Specifies whether to return deleted Blog Authors. Defaults to `false`."
},
"inferrable": true,
"http_endpoint_parameter_name": "archived"
}
]
},
"output": {
"description": "Response from the API endpoint 'get-/cms/v3/blogs/authors/{objectId}_getById'.",
"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": {
"provider_id": "arcade-hubspot",
"provider_type": "oauth2",
"id": null,
"oauth2": {
"scopes": [
"content"
]
}
},
"secrets": null,
"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 hubspot_cms API."
},
"http_endpoint": {
"metadata": {
"object_type": "http_endpoint",
"version": "1.2.0",
"description": ""
},
"url": "https://api.hubapi.com/cms/v3/blogs/authors/{objectId}",
"http_method": "GET",
"headers": {},
"parameters": [
{
"name": "archived",
"tool_parameter_name": "include_deleted_blog_authors",
"description": "Specifies whether to return deleted Blog Authors. Defaults to `false`.",
"value_schema": {
"val_type": "boolean",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "Specifies whether to return deleted Blog Authors. Defaults to `false`."
},
"accepted_as": "query",
"required": false,
"deprecated": false,
"default": null,
"documentation_urls": []
},
{
"name": "property",
"tool_parameter_name": "specific_author_property",
"description": "",
"value_schema": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": ""
},
"accepted_as": "query",
"required": false,
"deprecated": false,
"default": null,
"documentation_urls": []
},
{
"name": "objectId",
"tool_parameter_name": "blog_author_id",
"description": "The Blog Author id.",
"value_schema": {
"val_type": "string",
"inner_val_type": null,
"enum": null,
"properties": null,
"inner_properties": null,
"description": "The Blog Author id."
},
"accepted_as": "path",
"required": true,
"deprecated": false,
"default": null,
"documentation_urls": []
}
],
"documentation_urls": [],
"secrets": [
{
"arcade_key": "auth_token",
"parameter_name": "Authorization",
"accepted_as": "header",
"formatted_value": "Bearer {authorization}",
"description": "The OAuth token to use for authentication.",
"is_auth_token": true
}
],
"request_body_spec": null,
"use_request_body_schema_mode": false,
"validate_request_body_schema": false
}
}

Some files were not shown because too many files have changed in this diff Show more