Skip to main content
Glama

twist_threads_getone

Retrieve a specific thread from Twist workspaces by providing its unique ID to access conversation details and manage communication.

Instructions

Gets a thread object by id.

Args: id: The id of the thread

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
idYes

Implementation Reference

  • The main handler function for the 'twist_threads_getone' tool. It takes a context and thread ID, constructs parameters, and makes a request to the Twist API endpoint 'threads/getone' via twist_request to retrieve the thread data.
    def twist_threads_getone( ctx: Context, id: int ) -> Union[str, Dict[str, Any]]: """Gets a thread object by id. Args: id: The id of the thread """ all_params = locals() token = ctx.request_context.lifespan_context.twist_token params = {k: v for k, v in all_params.items() if k != 'ctx' and v is not None} try: logger.info(f"Getting thread with ID: {id}") thread_data = twist_request("threads/getone", params=params, token=token) logger.info(f"Retrieved thread with ID: {id}") return thread_data except Exception as error: logger.error(f"Error getting thread: {error}") return f"Error getting thread: {str(error)}"
  • The helper function used by the handler to make HTTP requests to the Twist API. It is called with endpoint='threads/getone' in the handler.
    def twist_request(endpoint, params=None, token=None, method="GET"): """ Make an API request to Twist. Args: endpoint (str): API endpoint to call (without the base URL) params (dict, optional): Dictionary of parameters to include in the request token (str, optional): Authentication token (if None, uses the one from get_api_client) method (str, optional): HTTP method to use (default: "GET") Returns: dict: Response data as a dictionary Raises: Exception: If the API request fails """ if token is None: token = get_api_client() base_url = "https://api.twist.com/api/v3/" headers = {"Authorization": f"Bearer {token}"} url = f"{base_url}{endpoint}" try: if method == "GET": response = requests.get(url, params=params, headers=headers) elif method == "POST": response = requests.post(url, data=params, headers=headers) else: raise ValueError(f"Unsupported HTTP method: {method}") response.raise_for_status() # Raise an exception for 4XX/5XX responses return response.json() except requests.exceptions.RequestException as e: logger.error(f"Twist API request failed: {e}") raise

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/mikemc/twist-mcp-server'

If you have feedback or need assistance with the MCP directory API, please join our Discord server